(Back to Session Schedule)

The 12th Asia and South Pacific Design Automation Conference

Session 1B SoC Software Design and Performance Analysis
Time: 10:15 - 12:20 Wednesday, January 24, 2007
Location: Room 413
Chairs: Qiang Zhu (Fujitsu Lab., Japan), Youn-Long Steve Lin (National Tsing-Hua Univ., Taiwan)

1B-1 (Time: 10:15 - 10:40)
TitleControl-Flow Aware Communication and Conflict Analysis of Parallel Processes
AuthorAxel Siebenborn, *Alexander Viehl, Oliver Bringmann (FZI Forschungszentrum Informatik, Germany), Wolfgang Rosenstiel (Universität Tübingen, Germany)
Pagepp. 32 - 37
KeywordArchitectural Exploration, Performance Analysis, Environment Modeling, Bus Allocation, SystemC
AbstractIn this paper, we present an approach for control-flow aware communication and conflict analysis of systems of parallel communicating processes. This approach allows to determine the global timing behavior of such a system and to detect communication that might produce conflicts on shared communication resources. Furthermore, we show the incorporation of temporal environment models in order to analyze their influence on the system behavior. Based on the determined conflicts, an automated allocation and binding approach for shared resources to resolve potential access conflicts is proposed. All analysis steps can be performed starting with a TLM SystemC model of the entire system without any need for user interaction. Finally, a SystemC model of a Viterbi decoder is used as case study to demonstrate the capability of our approach.

1B-2 (Time: 10:40 - 11:05)
TitleSoftware Performance Estimation in MPSoC Design
AuthorMarcio Oyamada, *Flavio Wagner (UFRGS, Brazil), Marius Bonaciu (TIMA Lab., France), Wander Cesario (MnD, France), Ahmed Jerraya (TIMA Lab., France)
Pagepp. 38 - 43
KeywordPerformance Estimation, MPSoC
AbstractEstimation tools are a key component of system-level methodologies, enabling a fast design space exploration. Estimation of software performance is essential in current software-dominated embedded systems. This work proposes an integrated methodology for system design and performance analysis. An analytic approach based on neural networks is used for high-level software performance estimation. At a functional level, this analytic tool enables a fast evaluation of the performance to be obtained with selected processors, which is an essential task for the definition of a “golden” architecture. From this architectural definition, a tool that refines hardware and software interfaces produces a bus-functional model. A virtual prototype is then generated from the bus-functional model, providing a global, cycle-accurate simulation model and offering several features for design validation and detailed performance analysis. Our work thus combines an analytic approach at functional level and a simulation-based approach at bus functional level. This provides an adequate trade-off between estimation time and precision. A multiprocessor platform implementing an MPEG4 encoder is used as case study, and the analytic estimation results in errors only up to 17% compared to the virtual platform simulation. On the other hand, the analytic estimation time takes only 17 seconds, against 10 minutes using the cycle-accurate simulation model.

1B-3 (Time: 11:05 - 11:30)
TitleEffective OpenMP Implementation and Translation for Multiprocessor System-On-Chip without using OS
Author*Woo-Chul Jeun, Soonhoi Ha (Seoul National University, Republic of Korea)
Pagepp. 44 - 49
KeywordOpenMP, MPSoC, parallel programming, shared memory, synchronization
AbstractIt is attractive to use the OpenMP as a parallel programming model on a Multiprocessor System-On-Chip (MPSoC) because it is easy to write a parallel program in the OpenMP and there is no standard method for parallel programming on an MPSoC. In this paper, we propose an effective OpenMP implementation and translation for major OpenMP directives on an MPSoC with physically shared memories, hardware semaphores, and no operating system.

1B-4 (Time: 11:30 - 11:55)
TitleCreating Explicit Communication in SoC Models Using Interactive Re-Coding
Author*Pramod Chandraiah, Junyu Peng, Rainer Doemer (University of California, Irvine, United States)
Pagepp. 50 - 55
KeywordSystem Level Design, SoC Specification, Refinement, Modeling, Design Methodology
AbstractCommunication exploration has become a critical step during SoC design. Researchers in the CAD community have proposed fast and efficient techniques for comprehensive design space exploration to expedite this critical design step. Although these advances have been helpful in reducing the design time significantly, the overall design time of the system is still a bottleneck. All these techniques assume the availability of an initial SoC input model with explicit communication,whose quality significantly impacts the effectiveness of the communication exploration techniques. Today, these initial models need to be manually written by engineers, which is tedious, error-prone and time consuming.In fact, our studies on industrial-size examples have shown that about 50% of the communication exploration time is spent on coding and re-coding of the initial specification model. In this paper,we propose an efficient interactive approach to explicit communication creation by automating some of the common coding tasks in specification models for communication exploration. Our results show significant savings in designer time.

1B-5 (Time: 11:55 - 12:20)
TitleSystem Architecture for Software Peripherals
Author*Siddharth Choudhuri, Tony Givargis (University of California, Irvine, United States)
Pagepp. 56 - 61
Keywordsoftware peripherals
AbstractSoftware Peripherals have been proposed as a design alternative to traditional peripherals. We propose a software architecture, design methodology and scheduling scheme for implementing software peripherals on general purpose processors, with fast context switch and high resolution timers. Our design flow automatically generates code for scheduling software peripherals. We demonstrate the feasibility of our proposed work by experimenting with a set of five software peripherals scheduled to execute on a MIPS processor. Our performance evaluations show that the performance impact of the software peripherals on user-level tasks is minimal (i.e., 10.11% on a 100 MHz processor) -- strongly suggesting that with the right architecture, sofware peripherals can be efficiently accomodated in typical embedded applications.