Cosimulation of ITRON-Based Embedded Software with SystemC
|
|
- Hilary Farmer
- 5 years ago
- Views:
Transcription
1 Cosimulation of ITRON-Based Embedded Software with SystemC Shin-ichiro Chikada, Shinya Honda, Hiroyuki Tomiyama, Hiroaki Takada Graduate School of Information Science, Nagoya University Information Technology Center, Nagoya University {chikada, honda, tomiyama, Abstract This paper presents an RTOS-centric timed cosimulation with SystemC for embedded system design. In our cosimulation environment, a SystemC simulator and an RTOS kernel model are communicated and synchronized with each other. Our experiment using a JPEG decoder example demonstrates an improvement in cosimulation speed over traditional HDL-based cosimulation. I. INTRODUCTION The functionality of embedded systems as well as the pressure to time-to-market has been continuously increasing in the past decades. Simulation of the entire system including both hardware and software from early design stages is one of effective approaches to improve the design productivity. A large number of research efforts on hardware/software cosimulation have been made so far. Real-time operating systems (RTOSs) have become one of the important components in embedded systems. Therefore, in order to validate the entire system functionality, RTOS has to be simulated together with application software and hardware. However, few studies on cosimulation in the past pay enough attention to RTOSs. In our past study, we have developed a hardware/software cosimulation platform which fully supports an RTOS [1]. The platform provides a complete simulation model of a standard RTOS, which is executable directly on a host computer. On the hardware side, HDL simulators as well as functional hardware models in C/C++ can be connected to the platform. However, cosimulation with HDL simulators is inevitably slow, while cosimulation with hardware models in C/C++ suffers from the inaccuracy of synchronization between hardware and software. This paper describes a refined cosimulation platform which overcomes these problems. The refined platform enables cosimulation with hardware models written in SystemC. On the cosimulation platform, all of the application software, RTOS, and hardware modules are directly executed on a host computer, which leads to high cosimulation speed. Synchronization between the SystemC simulator and the RTOS simulation model is also realized. This paper is organized as follows. Section 2 surveys related work on hardware/software cosimulation with RTOS supports. Section 3 describes principles and implementation of the cosimulation platform which we have developed. Section 4 describes communication and synchronization mechanisms between hardware and software. A case study using a JPEG decoder application is presented in Section 5. Section 6 concludes this paper with a summary. II. RELATED WORK In the past studies on hardware/software codesign and cosimulation, little attention has been paid to RTOSs regardless of their important role in embedded systems. Many earlier studies assume that codesign starts with system specification written in a software programming language such as C/C++. However, specifying the system functionalities in C/C++ alone is not feasible since C/C++ cannot capture concurrent execution of multiple tasks which communicate with each other. In fact, these early research efforts assume a very simple system model consisting of a single or a few application task(s), and do not take account of RTOSs. Some other studies assume that the system specification is represented as abstract models such as task graphs. Using these models, it is possible to describe concurrency without RTOSs. However, most of the past studies using the abstract models did not provide any practical solution to simulate the specification. In the design of complex embedded systems, however, it is very important to extensively simulate the system specification in order to validate the functional correctness. Recently, some researchers have developed generic RTOS models using system-level description languages (SLDL) such as SystemC and SpecC [2], [3], [4]. The RTOS models are used for native execution of application software including RTOS service calls. After simulation-based validation, the RTOS calls are replaced with the system calls of the actual RTOS which is used in the final implementation to obtain the final software code. In [5], a method which automatically generates RTOS-dependent software from SystemC description is presented. The method replaces SystemC s constructs for concurrency and communication with corresponding RTOS service calls. In this sense, it can be considered that SystemC involves a simple RTOS model in itself. A common weakness of these RTOS models is that they support only a limited set of RTOS services in order to make the models generic and independent of specific RTOSs. For example, the RTOS model in [3] supports only 16 service calls. However, even small kernels of actual RTOSs provide much more services. For example, Standard Profile of µitron [6], [7], i.e., one of the most popular RTOS kernels for small-scale embedded systems, has more than 80 service calls. These services may /05/$ IEEE. 71
2 need to be fully utilized in order to write high-quality software. Therefore, it is easy to image that the quality of software automatically generated by these previous methods is lower than that of handcrafted RTOS-dependent software. In the design and validation methodology proposed in this paper, a designer first selects an RTOS and then describes system specification using service calls of the RTOS. Since the specification depends on a specific RTOS, it is not easy to reuse the specification to different RTOS platforms. To our experience, however, most of design teams in industry do not use a variety of RTOSs in practice. They tend to keep using a very limited set of RTOSs for several years in order to reuse existing software. Our methodology is suitable for such design teams or application fields where one or a very few RTOSs are used for a long period. Actually, we employ a standardized RTOS, i.e., µitron, to develop CAD tools (the cosimulation platform and the RTOS simulation model, etc.) to support our methodology. µitron is one of the most popular RTOSs in Japan for small- to middle-scale embedded systems. µitron is not a specific RTOS product, but is an application programming interface (API) standard. It only defines a set of API functions, and implementation of the function bodies may differ among µitron-basedrtoss.itisreportedin[7]that over 40% of RTOSs used in Japan are based on the µitron standard. Thus, our methodology is effective as long as a designer keeps using RTOSs which conform to the µitron standard. Note that our methodology itself is not limited to µitron-based RTOSs. Other RTOSs can be used if there exists a simulation model for the RTOSs. In [8] and [9], a different approach to embedded software design is presented where an application-specific RTOS and its simulation model are automatically generated. In their approach, application software is analyzed first, and then only the RTOS services used in the application are included in the final RTOS. The work is similar to ours in that a set of services which can be used in application software is pre-defined. The major difference is that their work puts a special focus on customizing an RTOS while our methodology is based on a standard RTOS. III. OUR COSIMULATION PLATFORM This section describes an overview of our cosimulation platform. A. Overview Fig. 1 shows the organization of our cosimulation platform which we have developed. RTOS Kernel Model supports a standardized RTOS specification named µitron. Application tasks are compiled and linked on a host computer so that they can be executed directly on the host in order to realize fast functional verification. Dedicated hardware and buses are described in SystemC and simulated with a SystemC simulation library. plays an important role in communication and synchronization between software and hardware. Application Application Application RTOS Kernel Model Fig. 1. Other Other Other Simulator Simulator Simulators (C++) SystemC Simulator Bus Model (SystemC) Our cosimulation platform Hardware Hardware Hardware Model (SystemC) Model (SystemC) Models (SystemC) Simulation Timer One of the remarkable features of our cosimulation platform is that a system designer can accurately describe hardware models using the SystemC language and also can accurately describe the concurrent behavior of application tasks by means of RTOS system calls. This feature enables very fast hardware/software cosimulation since both hardware and software are executed directly on the host computer. B. RTOS Kernel Model We have developed an RTOS kernel and its simulation model which completely support µitron 4.0 Standard Profile [10], [1]. The kernel model simulates the RTOS service calls such as context switching on an MS-Windows or Linux-based host computer. µitron is a standardized API of RTOSs for small- to middle-scale embedded systems. At present, the µitron specification is applied to a variety of embedded systems such as cellular phones, automotive controllers, and so on. Four profiles are defined in the µitron specification, i.e., Minimum- Set, Standard, Full-Set, andautomotive-control Profiles. Our RTOS and its simulation model conform to Standard Profile which has 81 API functions. µitron employs a priority based scheduling policy with at least 16 priority levels. In order for tasks to communicate and synchronize with each other, µitron provides semaphores, events, data queues, mailboxes, and so on. It also has several functions to handle interrupts for enabling, disabling, and masking them. More details on µitron can be found in [7]. In our cosimulation environment, each task is implemented as a thread on the host computer. The RTOS kernel model controls the threads based on their priorities. The RTOS kernel model is described in C/C++. Application tasks are described in C, linked with the RTOS kernel model, and then executed on the host computer. Unlike the SystemC simulator, the RTOS kernel model does not have a timer to count simulation cycles. Time ticks need to be provided to the 72
3 A. Sending read/write request HAL RTOS- I/F RTOS Kernel Model Hardware Bus Modules SystemC Simulator SystemC- I/F B. Sending interrupt request Hardware Modules Bus SystemC- I/F SystemC Simulator Interrupt Handlers Kernel RTOS- I/F RTOS Kernel Model Fig. 2. Communication mechanisms between hardware and software RTOS kernel model by a cosimulation platform or something else. The duration of time ticks is set to 1 millisecond or longer. Our previous cosimulator in [1] uses a timer on the host computer. However, it is difficult to synchronize the execution timing between software and hardware. On the other hand, the cosimulator presented in this paper obtains time ticks from the SystemC simulator in order to realize hardware/software synchronization. C. SystemC SystemC is a system-level design language standardized at OSCI (Open SystemC Initiative). SystemC is a relatively new language based on C++. Several constructs are introduced in order to easily describe concurrency, clocks, and synchronization with SystemC. In the past years, SystemC has been used mainly for simulation purposes. At present, several commercial tools for synthesizing SystemC are available. Our cosimulation platform uses an open SystemC simulator provided by OSCI. OSCI distributes this simulator in the form of a C++ library. User-designed modules are linked with the simulation library to generate a binary code directly executable on the host computer. D. manages communication between the RTOS kernel model and the SystemC simulator. It is also possible to communicate with functional hardware models in C/C++ and HDL simulators such as ModelSim from Mentor Graphics. Due to the flexibility of, more than one hardware simulator can be connected during cosimulation. For example, we can use two SystemC simulators and three HDL simulators at the same time. IV. MUNICATION AND SYNCHRONIZATION MECHANISMS This section describes mechanisms for communication and synchronization between the RTOS kernel model and the SystemC simulator. A. Communication Mechanism The RTOS kernel model can send read and write requests to hardware. On the other hand, hardware is able to generate interrupts to the RTOS kernel model. As shown in Fig. 1, these communications are passed through. Communication between and each simulator (i.e., the RTOS kernel model and the SystemC simulator) is implemented by means of the (Component Object Model) technology developed by Microsoft Corporation [11]. is an object-oriented interface technology which enables binary software components to interact with other software components in order to realize higher-level services. Communication between software and hardware is based on memory-mapped accesses. maintains a memory-map table. In order for a hardware simulator to take part in cosimulation, the simulator first requests Manger to register its address space into the table. Fig. 2-A describes a procedure that software sends a read/write request to hardware. When an application task needs 73
4 SystemC Simulator Simulation Timer User Defined Modules To RTOS Kernel Model Synchronization BUS SystemC I/F Fig. 3. Synchronization between SystemC and RTOS Kernel Model JPEG File VLD Dequantization IDCT YUV2RGB Decoded Image Display Fig. 4. A flow of the JPEG decoder to read data from or write to the hardware, the task calls a corresponding API function in the hardware abstraction layer (HAL). For example, a function sil reb mem(address) is called to read 1-byte data from a hardware module pointed by the address, and sil wrw mem(address, data) is used to write a word to a corresponding hardware module. The read/write request is stored into the queue. Then, RTOS- I/F retrieves the request from the queue and sends the request to through. When receives the request from RTOS Kernel Model, identifies a hardware simulator to which the given address is allocated by looking up the memorymap table. then dispatches the request to the hardware simulator. It should be noted that more than one hardware simulator can exist even though Fig. 2 assumes only a single SystemC simulator. In the SystemC simulator, a callback function in SystemC- I/F is invoked to put the request into the queue. In the SystemC simulator, there exists a thread named SystemC- I/F inside the (Bus Interface Unit) module. A callback function in the SystemC- I/F thread is invoked to receive the read/write request from and put it to the queue. Then, retrieves the request from the queue and generates a bus transaction according to the bus protocol in order to read data from or write data to the hardware module. In fact, for a write access, data to be written to the hardware is not passed from the RTOS kernel model to. Instead, a pointer to the data is passed. reads the data in the RTOS kernel model using the pointer and writes it to the hardware module. For a read access, similarly, reads the requested data from the hardware module and writes it to the RTOS kernel model using the passed pointer. Fig. 2-B shows mechanism for raising interrupts from hardware to software. This mechanism is similar to the one described above, but requests are transferred in the opposite direction. In RTOS Kernel Model, Kernel retrieves the interrupt request from the queue and invokes a corresponding interrupt handler. Note that not only a SystemC simulator but also some other simulators can be connected to if an interface to is equipped. At present, some commercial HDL simulators including ModelSim by Mentor [12] are connectable where a interface is implemented using FLI/PLI. Our cosimulation platform uses for communication between and simulators. However, other communication mechanisms can be used if RTOS- I/F and SystemC- I/F are replaced. For example, instead of, we can make use of the TCP/IP protocol so that we can easily implement distributed simulation. Our -based communication may impose larger performance overhead than SLDL-based RTOS modeling approaches such as [2], [3], [4]. In their approaches [2], [3], [4], the entire system including an RTOS, application programs and hardware is described in a single language such as SystemC or SpecC, leading to faster cosimulation. On the other hand, our -based cosimulation platform has greater flexibility at the cost of simulation speed. As explained above, various kinds of simulators or simulation models can be connected to our cosimulation platform, which enables multilingual cosimulation at various levels of abstraction. 74
5 RTOS Kernel Model SystemC [sec.] Memory Processor Bus IDCT Module Arbiter VGA Hardware Model (C++) Shared Memory 0 C++ Model SystemC HDL Simulator Fig. 5. The hardware organization of the JPEG decoder Fig. 6. Simulation time (sec.) B. Synchronization Mechanism As described in Section 3.2, the RTOS kernel model does not have a timer to count simulation cycles. We have realized hardware/software synchronization by periodically sending time ticks from the SystemC simulator to the RTOS kernel model. Fig. 3 describes synchronization mechanisms in our cosimulation platform. Synchronization signals also are passed through and. The accuracy of execution timing between software and hardware largely depends on the period of time ticks. Our current implementation of the RTOS kernel model assumes that the minimum period is one millisecond. Therefore, our cosimulation platform does not allow cycle-accurate cosimulation, but still realizes fast cosimulation with a reasonable timing accuracy. V. DESIGN EXAMPLE This section evaluates our cosimulation environment through a case study with a JPEG decoder example. In this experiment, cosimulation is performed on a dual Xeon 2.4GHz processor system each with dual-threaded execution. Fig. 4 shows the flow of the JPEG decoder. A JFIF format file is given to the JPEG decoder as the input, and RGB data is generated. The decoder consists of four processes, i.e., VLD, Dequantization, IDCT, and YUV2RGB. Output data in the RGB format is displayed on a window on the host computer. Fig. 5 describes the hardware organization of the JPEG decoder system. The IDCT process was implemented in hardware and modeled in the SystemC language. In addition, a bus and a shared memory were described as SystemC modules. For comparison, we also developed functional and RTL models of IDCT. The functional model was written in C++ while the RTL model was in VHDL. We performed hardware/software cosimulation with each of the three IDCT models. Fig. 6 compares the cosimulation time among three cases. Cosimulation with SystemC is 38% faster than that with an HDL simulator. On the other hand, cosimulation with a C++ model is faster than that with SystemC by approximately 60%. This is mainly because of the difference in the abstraction level. The IDCT model in SystemC is bus cycle accurate while the C++ model is untimed. A screenshot of cosimulation with the SystemC model is shown in Fig. 7. We can verify both hardware and software at the same time using our cosimulation environment. VI. CONCLUSIONS RTOSs have become one of necessities in the design of complex systems. This paper has presented a cosimulation platform on which an RTOS kernel model, application tasks, and hardware models written in SystemC are simulated. Our cosimulation platform provides an RTOS kernel model which conforms to a standardized RTOS specification named ITRON. Application software which includes RTOS service call can be executed at high speed on a host computer. Hardware written in SystemC can also be executed on the host computer. The platform enables a system designer to efficiently co-validate hardware and software. In future, we plan to apply our cosimulation platform to a variety of applications. Improvement of timing accuracy is also one of our future work. ACKNOWLEDGMENTS This work was partially supported by JSPS Grant-in-Aid for Scientific Research (B) # REFERENCES [1] S. Honda, T. Wakabayashi, H. Tomiyama, and H. Takada, RTOS- Centric Hardware/Software Cosimulator for Embedded System Design, in Proc. of Int l Conf. on Hardware/Software Codesign and System Synthesis (CODES+ISSS), [2] D. Desmet, D. Verkest, and H. D. Man, Operating System Based Software Generation for Systems-on-Chip, in Proc. of Design Automation Conf. (DAC), [3] A. Gerstlauer, H. Yu, and D. Gajski, RTOS Modeling for System Level Design, in Proc. of Design Automation and Test in Europe (DATE), Embedded Software Forum, [4] H. Yu, A. Gerstlauer, and D. Gajski, RTOS Scheduling in Transaction Level Models, in Proc. of Int l Conf. on Hardware/Software Codesign and System Synthesis (CODES+ISSS),
6 RTOS Kernel Model SystemC Simulator VGA Model (C++) Fig. 7. Screenshot of cosimulation [5] F. Herrera, H. Posadas, P. Sanchez, and E. Villar, Systematic Embedded Software Generation from SystemC, in Proc. of Design Automation and Test in Europe (DATE), [6] H. Takada and K. Sakamura, µitron for Small-scale Embedded Systems, IEEE Micro, vol. 15, no. 6, [7] ITRON. [Online]. Available: [8] L. Gauthier, S. Yoo, and A. A. Jerraya, Automatic Generation and Targeting of Application-specific Operating Systems and Embedded Systems Software, in Proc. of Design Automation and Test in Europe (DATE), [9] S. Yoo, G. Nicolescu, L. Gauthier, and A. A. Jerraya, Automatic Generation of Fast Timed Simulation Models for Operating Systems in SoC Design, in Proc. of Design Automation and Test in Europe (DATE), [10] TOPPERS Project. [Online]. Available: [11] Microsoft Corporation. [Online]. Available: [12] Mentor Graphics. [Online]. Available: 76
RTOS-Centric Hardware/Software Cosimulator for Embedded System Design
RTOS-Centric Hardware/Software Cosimulator for Embedded System Design Shinya Honda Takayuki Wakabayashi Hiroyuki Tomiyama Hiroaki Takada Department of Information and Computer Science Toyohashi University
More informationRTK-Spec TRON: A Simulation Model of an ITRON Based RTOS Kernel in SystemC
RTK-Spec TRON: A Simulation Model of an ITRON Based RTOS Kernel in SystemC M. AbdElSalam Hassan Keishi Sakanushi Yoshinori Takeuchi Masaharu Imai Graduate School of Information Science and Technology,
More informationA Generic RTOS Model for Real-time Systems Simulation with SystemC
A Generic RTOS Model for Real-time Systems Simulation with SystemC R. Le Moigne, O. Pasquier, J-P. Calvez Polytech, University of Nantes, France rocco.lemoigne@polytech.univ-nantes.fr Abstract The main
More informationEmbedded Software Generation from System Level Design Languages
Embedded Software Generation from System Level Design Languages Haobo Yu, Rainer Dömer, Daniel Gajski Center for Embedded Computer Systems University of California, Irvine, USA haoboy,doemer,gajski}@cecs.uci.edu
More informationRTOS Modeling for System Level Design
RTOS Modeling for System Level Design Andreas Gerstlauer Haobo Yu Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697, USA E-mail: {gerstl,haoboy,gajski}@cecs.uci.edu
More informationModel Based Synthesis of Embedded Software
Model Based Synthesis of Embedded Software Daniel D. Gajski, Samar Abdi, Ines Viskic Center for Embedded Computer Systems University of California, Irvine, CA 92617 {gajski, sabdi, iviskic}@uci.edu Abstract.
More informationSystem Level Design with IBM PowerPC Models
September 2005 System Level Design with IBM PowerPC Models A view of system level design SLE-m3 The System-Level Challenges Verification escapes cost design success There is a 45% chance of committing
More informationRTOS Scheduling in Transaction Level Models
RTOS Scheduling in Transaction Level Models Haobo Yu, Andreas Gerstlauer, Daniel Gajski Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697, USA {haoboy,gerstl,gajksi}@cecs.uci.edu
More informationAutomatic Generation of Communication Architectures
i Topic: Network and communication system Automatic Generation of Communication Architectures Dongwan Shin, Andreas Gerstlauer, Rainer Dömer and Daniel Gajski Center for Embedded Computer Systems University
More informationSOFTWARE AND DRIVER SYNTHESIS FROM TRANSACTION LEVEL MODELS
SOFTWARE AND DRIVER SYNTHESIS FROM TRANSACTION LEVEL MODELS Haobo Yu, Rainer Dömer, Daniel D. Gajski Center of Embedded Computer Systems University of California, Irvine Abstract This work presents a method
More informationSystem-level Design Method for Control Systems with Hardware-implemented Interrupt Handler
[DOI: 10.2197/ipsjjip.23.532] Regular Paper System-level Design Method for Control Systems with Hardware-implemented Interrupt Handler Yuki Ando 1,a) Shinya Honda 1,b) Hiroaki Takada 1,c) Masato Edahiro
More informationSystem-Level Verification Platform using SystemVerilog Layered Testbench & SystemC OOP
, pp.221-230 http://dx.doi.org/10.14257/ijca.2014.7.2.21 System-Level Verification Platform using SystemVerilog Layered Testbench & SystemC OOP Young-Jin Oh and Gi-Yong Song * Department of Electronics
More informationESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)
ESE Back End 2.0 D. Gajski, S. Abdi (with contributions from H. Cho, D. Shin, A. Gerstlauer) Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu 1 Technology advantages
More informationComputer-Aided Recoding for Multi-Core Systems
Computer-Aided Recoding for Multi-Core Systems Rainer Dömer doemer@uci.edu With contributions by P. Chandraiah Center for Embedded Computer Systems University of California, Irvine Outline Embedded System
More informationCurrent Activities of the ITRON Project. Current Introduction Activities to of the ITRON Project
ITRON Supporters' Meeting Current Introduction Activities to of the ITRON Project Current Activities of the ITRON Project 1 Oct. 1997 ( / University of Tokyo ) hiro@is.s.u-tokyo.ac.jp TRON is an abbreviation
More informationA Hybrid Instruction Set Simulator for System Level Design
Center for Embedded Computer Systems University of California, Irvine A Hybrid Instruction Set Simulator for System Level Design Yitao Guo, Rainer Doemer Technical Report CECS-10-06 June 11, 2010 Center
More informationChapter 2 M3-SCoPE: Performance Modeling of Multi-Processor Embedded Systems for Fast Design Space Exploration
Chapter 2 M3-SCoPE: Performance Modeling of Multi-Processor Embedded Systems for Fast Design Space Exploration Hector Posadas, Sara Real, and Eugenio Villar Abstract Design Space Exploration for complex,
More informationSystem Level Design Technologies and System Level Design Languages
System Level Design Technologies and System Level Design Languages SLD Study Group EDA-TC, JEITA http://eda.ics.es.osaka-u.ac.jp/jeita/eda/english/project/sld/index.html Problems to Be Solved 1. Functional
More informationElements of a SystemC Design Platform
Elements of a SystemC Design Platform GEORGE ECONOMAKOS Department of Electrical and Computer Engineering National Technical University of Athens Zographou Campus, GR-15773 Athens GREECE Abstact: - Modern
More informationHardware, Software and Mechanical Cosimulation for Automotive Applications
Hardware, Software and Mechanical Cosimulation for Automotive Applications P. Le Marrec, C.A. Valderrama, F. Hessel, A.A. Jerraya TIMA Laboratory 46 Avenue Felix Viallet 38031 Grenoble France fphilippe.lemarrec,
More informationAutomatic Generation of Hardware dependent Software f or MPSoCs from Abstract System Specifications
Automatic Generation of Hardware dependent Software f or MPSoCs from Abstract System Specifications Gunar Schirner, Andreas Gerstlauer and Rainer Dömer Center for Embedded Computer Systems University of
More informationSpecC Methodology for High-Level Modeling
EDP 2002 9 th IEEE/DATC Electronic Design Processes Workshop SpecC Methodology for High-Level Modeling Rainer Dömer Daniel D. Gajski Andreas Gerstlauer Center for Embedded Computer Systems Universitiy
More informationRTOS Scheduling in Transaction Level Models
RTOS Scheduling in Transaction Level Models Haobo Yu, Andreas Gerstlauer, Daniel Gajski CECS Technical Report 03-12 March 20, 2003 Center for Embedded Computer Systems Information and Computer Science
More informationIntroducing Preemptive Scheduling in Abstract RTOS Models using Result Oriented Modeling
Introducing Preemptive Scheduling in Abstract RTOS Models using Result Oriented Modeling Gunar Schirner, Rainer Dömer Center of Embedded Computer Systems, University of California Irvine E-mail: {hschirne,
More informationAbstraction Layers for Hardware Design
SYSTEMC Slide -1 - Abstraction Layers for Hardware Design TRANSACTION-LEVEL MODELS (TLM) TLMs have a common feature: they implement communication among processes via function calls! Slide -2 - Abstraction
More informationRTOS Modeling for System Level Design
RTOS Modeling for System Level Design Design, Automation and Test in Europe Conference and Exhibition (DATE 03) Andreas Gerslauer, Haobo Yu, Daniel D. Gajski 2010. 1. 20 Presented by Jinho Choi c KAIST
More informationCycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components
Cycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components Rainer Dömer, Andreas Gerstlauer, Dongwan Shin Technical Report CECS-04-19 July 22, 2004 Center for Embedded Computer Systems University
More informationVirtual Hardware Prototyping through Timed Hardware-Software Co-simulation
Virtual Hardware Prototyping through Timed Hardware-Software Co-simulation Franco Fummi franco.fummi@univr.it Mirko Loghi loghi@sci.univr.it Stefano Martini martini@sci.univr.it Marco Monguzzi # monguzzi@sitek.it
More informationTransaction-Level Modeling Definitions and Approximations. 2. Definitions of Transaction-Level Modeling
Transaction-Level Modeling Definitions and Approximations EE290A Final Report Trevor Meyerowitz May 20, 2005 1. Introduction Over the years the field of electronic design automation has enabled gigantic
More informationSystematic Embedded Software Generation from SystemC
Systematic Embedded Software Generation from F. Herrera, H. Posadas, P. Sánchez & E. Villar TEISA Dept., E.T.S.I. Industriales y Telecom., University of Cantabria Avda. Los Castros s/n, 39005 Santander,
More informationCreating Explicit Communication in SoC Models Using Interactive Re-Coding
Creating Explicit Communication in SoC Models Using Interactive Re-Coding Pramod Chandraiah, Junyu Peng, Rainer Dömer Center for Embedded Computer Systems University of California, Irvine California, USA
More informationHardware Software Co-design and SoC. Neeraj Goel IIT Delhi
Hardware Software Co-design and SoC Neeraj Goel IIT Delhi Introduction What is hardware software co-design Some part of application in hardware and some part in software Mpeg2 decoder example Prediction
More informationSCope: Efficient HdS simulation for MpSoC with NoC
SCope: Efficient HdS simulation for MpSoC with NoC Eugenio Villar Héctor Posadas University of Cantabria Marcos Martínez DS2 Motivation The microprocessor will be the NAND gate of the integrated systems
More informationAn Inter-core Communication Enabled Multi-core Simulator Based on SimpleScalar
An Inter-core Communication Enabled Multi-core Simulator Based on SimpleScalar Rongrong Zhong, Yongxin Zhu, Weiwei Chen, Mingliang Lin Shanghai Jiao Tong University {zhongrongrong, zhuyongxin, chenweiwei,
More informationExploring SW Performance Using Preemptive RTOS Models
Exploring SW Performance Using Preemptive RTOS Models Gunar Schirner Electrical and Computer Engineering Northeastern University, Boston MA E-mail: schirner@ece.neu.edu Abstract With increasing SW content
More informationTop-Down Transaction-Level Design with TL-Verilog
Top-Down Transaction-Level Design with TL-Verilog Steven Hoover Redwood EDA Shrewsbury, MA, USA steve.hoover@redwoodeda.com Ahmed Salman Alexandria, Egypt e.ahmedsalman@gmail.com Abstract Transaction-Level
More informationIntegrating Instruction Set Simulator into a System Level Design Environment
Integrating Instruction Set Simulator into a System Level Design Environment A Thesis Presented by Akash Agarwal to The Department of Electrical and Computer Engineering in partial fulfillment of the requirements
More informationRTOS Real T i Time me Operating System System Concepts Part 2
RTOS Real Time Operating System Concepts Part 2 Real time System Pitfalls - 4: The Ariane 5 satelite launch rocket Rocket self destructed in 4 June -1996. Exactly after 40 second of lift off at an attitude
More informationTIMA Lab. Research Reports
ISSN 1292-862 TIMA Lab. Research Reports TIMA Laboratory, 46 avenue Félix Viallet, 38000 Grenoble France Application-Specific Multiprocessor Systems-on-Chip Ahmed Amine Jerraya, Amer Baghdadi, Wander Cesário,
More informationUsing SystemC to Implement Embedded Software
Using SystemC to Implement Embedded Software Brijesh Sirpatil James M. Baker, Jr. James R. Armstrong Bradley Department of Electrical and Computer Engineering, Virginia Tech, Blacksburg, VA Abstract This
More informationA MDD Methodology for Specification of Embedded Systems and Automatic Generation of Fast Configurable and Executable Performance Models
A MDD Methodology for Specification of Embedded Systems and Automatic Generation of Fast Configurable and Executable Performance Models Int. Conf. on HW/SW codesign and HW synthesis (CODES-ISSS 2012) Embedded
More informationEMERALDS: a small-memory real-time microkernel
EMERALDS: a small-memory real-time microkernel By Khawar M. Zuberi, Padmanabhan Pillai, and Kang G. Shin 4/28/2005 CMSC 691S Real-Time Systems 1 Outline Introduction Requirements EMERALDS Overview CSD
More informationMentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs. Fall 2004
Mentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs Fall 2004 Agenda FPGA design challenges Mentor Graphics comprehensive FPGA design solutions Unique tools address the full range
More informationHigh-Level Synthesis of Programmable Hardware Accelerators Considering Potential Varieties
THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS TECHNICAL REPORT OF IEICE.,, (VDEC) 113 8656 7 3 1 CREST E-mail: hiroaki@cad.t.u-tokyo.ac.jp, fujita@ee.t.u-tokyo.ac.jp SoC Abstract
More informationAppendix SystemC Product Briefs. All product claims contained within are provided by the respective supplying company.
Appendix SystemC Product Briefs All product claims contained within are provided by the respective supplying company. Blue Pacific Computing BlueWave Blue Pacific s BlueWave is a simulation GUI, including
More informationAutomatic Generation of Cycle-Approximate TLMs with Timed RTOS Model Support
Automatic Generation of Cycle-Approximate TLMs with Timed RTOS Model Support Yonghyun Hwang 1, Gunar Schirner 2, and Samar Abdi 3 1 University of California, Irvine, USA, yonghyuh@cecs.uci.edu 2 Northeastern
More informationRTOS-Aware Refinement for TLM2.0-based HW/SW Designs
RTOS-Aware Refinement for TLM2.0-based HW/SW Designs Markus Becker, Giuseppe Di Guglielmo, Franco Fummi, Wolfgang Mueller, Graziano Pravadelli,TaoXie C-LAB, University of Paderborn, Germany Dipartimento
More informationSystem-On-Chip Architecture Modeling Style Guide
Center for Embedded Computer Systems University of California, Irvine System-On-Chip Architecture Modeling Style Guide Junyu Peng Andreas Gerstlauer Rainer Dömer Daniel D. Gajski Technical Report CECS-TR-04-22
More informationEfficient Modeling of Embedded Systems using Designer-controlled Recoding. Rainer Dömer. With contributions by Pramod Chandraiah
Efficient Modeling of Embedded Systems using Rainer Dömer With contributions by Pramod Chandraiah Center for Embedded Computer Systems University of California, Irvine Outline Introduction Designer-controlled
More informationArea/Delay Estimation for Digital Signal Processor Cores
Area/Delay Estimation for Digital Signal Processor Cores Yuichiro Miyaoka Yoshiharu Kataoka, Nozomu Togawa Masao Yanagisawa Tatsuo Ohtsuki Dept. of Electronics, Information and Communication Engineering,
More informationEmbedded System Design and Modeling EE382V, Fall 2008
Embedded System Design and Modeling EE382V, Fall 2008 Lecture Notes 4 System Design Flow and Design Methodology Dates: Sep 16&18, 2008 Scribe: Mahesh Prabhu SpecC: Import Directive: This is different from
More informationSystem-Level Performance Analysis in SystemC¹
System-Level Performance Analysis in SystemC¹ H. Posadas *, F. Herrera *, P. Sánchez *, E. Villar * & F. Blasco ** * TEISA Dept., E.T.S.I. Industriales y Telecom. University of Cantabria Avda. Los Castros
More informationRTOS Modeling in System Level Synthesis
RTOS Modeling in System Level Synthesis Haobo Yu and Daniel Gajski CECS Technical Report 02-25 Aug 14, 2002 Center for Embedded Computer Systems Information and Computer Science University of California,
More informationCycle accurate transaction-driven simulation with multiple processor simulators
Cycle accurate transaction-driven simulation with multiple processor simulators Dohyung Kim 1a) and Rajesh Gupta 2 1 Engineering Center, Google Korea Ltd. 737 Yeoksam-dong, Gangnam-gu, Seoul 135 984, Korea
More informationEquivalence Checking of C Programs by Locally Performing Symbolic Simulation on Dependence Graphs
Equivalence Checking of C Programs by Locally Performing Symbolic Simulation on Dependence Graphs Takeshi Matsumoto, Hiroshi Saito, and Masahiro Fujita Dept. of Electronics Engineering, University of Tokyo
More informationAN OPEN-SOURCE VHDL IP LIBRARY WITH PLUG&PLAY CONFIGURATION
AN OPEN-SOURCE VHDL IP LIBRARY WITH PLUG&PLAY CONFIGURATION Jiri Gaisler Gaisler Research, Första Långgatan 19, 413 27 Göteborg, Sweden Abstract: Key words: An open-source IP library based on the AMBA-2.0
More informationMulti-level Design Methodology using SystemC and VHDL for JPEG Encoder
THE INSTITUTE OF ELECTRONICS, IEICE ICDV 2011 INFORMATION AND COMMUNICATION ENGINEERS Multi-level Design Methodology using SystemC and VHDL for JPEG Encoder Duy-Hieu Bui, Xuan-Tu Tran SIS Laboratory, University
More informationAutomatic Instrumentation Technique of Embedded Software for High Level Hardware/Software Co-Simulation
Automatic Instrumentation Technique of Embedded Software for High Level Hardware/Software Co-Simulation Aimen Bouchhima, Patrice Gerin and Frédéric Pétrot System Level Synthesis Group, TIMA Laboratory
More informationIntro to High Level Design with SystemC
Intro to High Level Design with SystemC Aim To introduce SystemC, and its associated Design Methodology Date 26th March 2001 Presented By Alan Fitch Designer Challenges Design complexity System on Chip
More informationTransaction Level Modeling with SystemC. Thorsten Grötker Engineering Manager Synopsys, Inc.
Transaction Level Modeling with SystemC Thorsten Grötker Engineering Manager Synopsys, Inc. Outline Abstraction Levels SystemC Communication Mechanism Transaction Level Modeling of the AMBA AHB/APB Protocol
More informationAutomatic Generation of Cycle Accurate and Cycle Count Accurate Transaction Level Bus Models from a Formal Model
Automatic Generation of Cycle Accurate and Cycle Count Accurate Transaction Level Bus Models from a Formal Model Chen-Kang Lo, Ren-Song Tsay Department of Computer Science, National Tsing-Hua University,
More informationA Top-down Hardware/Software Co-Simulation Method for Embedded Systems Based Upon a Component Logical Bus Architecture
A Top-down / Co-Simulation Method for Embedded Systems Based Upon a Architecture Mitsuhiro YASUDA Barry SHACKLEFORD Fumio SUZUKI Katsuhiko SEO Hisao KOIZUMI Mitsubishi Electric Corporation, Hewlett-Packard
More informationEFFICIENT AUTOMATED SYNTHESIS, PROGRAMING, AND IMPLEMENTATION OF MULTI-PROCESSOR PLATFORMS ON FPGA CHIPS. Hristo Nikolov Todor Stefanov Ed Deprettere
EFFICIENT AUTOMATED SYNTHESIS, PROGRAMING, AND IMPLEMENTATION OF MULTI-PROCESSOR PLATFORMS ON FPGA CHIPS Hristo Nikolov Todor Stefanov Ed Deprettere Leiden Embedded Research Center Leiden Institute of
More informationSoC Design for the New Millennium Daniel D. Gajski
SoC Design for the New Millennium Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine www.cecs.uci.edu/~gajski Outline System gap Design flow Model algebra System environment
More informationFast and Accurate Source-Level Simulation Considering Target-Specific Compiler Optimizations
FZI Forschungszentrum Informatik at the University of Karlsruhe Fast and Accurate Source-Level Simulation Considering Target-Specific Compiler Optimizations Oliver Bringmann 1 RESEARCH ON YOUR BEHALF Outline
More informationA Smooth Refinement Flow for Co-designing HW and SW Threads
A Smooth Refinement Flow for Co-designing HW and Threads Paolo Destro Franco Fummi Graziano Pravadelli Dipartimento di nformatica - Università di Verona Strada le Grazie 15, 37134 Verona, taly {destro,
More informationVerification of Multiprocessor system using Hardware/Software Co-simulation
Vol. 2, 85 Verification of Multiprocessor system using Hardware/Software Co-simulation Hassan M Raza and Rajendra M Patrikar Abstract--Co-simulation for verification has recently been introduced as an
More informationPOSIX-Compliant Portable Code Synthesis for Embedded Systems
POSIX-Compliant Portable Code Synthesis for Embedded Systems Andre Costi Nacul, Siddharth Choudhuri, and Tony Givargis Department of Computer Science University of California, Irvine Center for Embedded
More informationEnergy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards
Energy Estimation Based on Hierarchical Bus Models for Power-Aware Smart Cards U. Neffe, K. Rothbart, Ch. Steger, R. Weiss Graz University of Technology Inffeldgasse 16/1 8010 Graz, AUSTRIA {neffe, rothbart,
More informationITRON Project Overview
ITRON Project Overview Haruyasu Ito 1 ITRON Project One of the subprojects of the TRON Project A project to standardize RTOS and related spec. for embedded systems ( esp. small-scale embedded systems )
More informationHardware-Software Codesign. 6. System Simulation
Hardware-Software Codesign 6. System Simulation Lothar Thiele 6-1 System Design specification system simulation (this lecture) (worst-case) perf. analysis (lectures 10-11) system synthesis estimation SW-compilation
More informationEmbedded Systems. 6. Real-Time Operating Systems
Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationSystemC Modelling of the Embedded Networks
Saint Petersburg State University of Aerospace Instrumentation, Russia; Nokia Research Center and Nokia Devices, Finland. SystemC Modelling of the Embedded Networks Valentin Olenev, Yuriy Sheynin, Elena
More informationHARDWARE/SOFTWARE cosimulation is the key enabler
2186 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 26, NO. 12, DECEMBER 2007 Fast and Accurate Cosimulation of MPSoC Using Trace-Driven Virtual Synchronization Youngmin
More informationFast and Accurate Processor Models for EfÞcient MPSoC Design
10 Fast and Accurate Processor Models for EfÞcient MPSoC Design GUNAR SCHIRNER Northeastern University ANDREAS GERSTLAUER University of Texas at Austin and RAINER DÖMER University of California, Irvine
More informationSoC Design Environment with Automated Configurable Bus Generation for Rapid Prototyping
SoC esign Environment with utomated Configurable Bus Generation for Rapid Prototyping Sang-Heon Lee, Jae-Gon Lee, Seonpil Kim, Woong Hwangbo, Chong-Min Kyung P PElectrical Engineering epartment, KIST,
More informationAutomatic Communication Refinement for System Level Design
Automatic Communication Refinement for System Level Design Samar Abdi and Daniel Gajski Technical Report CECS-03-08 March 7, 2003 Center for Embedded Computer Systems University of California, Irvine Irvine,
More informationOperating in a Mixed-language Environment Using HDL, C/C++, SystemC and SystemVerilog
Application Note Operating in a Mixed-language Environment Using HDL, C/C++, SystemC and SystemVerilog www.model.com Introduction C and C++ languages have an important role to play in ASIC design, and
More informationGLOSSARY. VisualDSP++ Kernel (VDK) User s Guide B-1
B GLOSSARY Application Programming Interface (API) A library of C/C++ functions and assembly macros that define VDK services. These services are essential for kernel-based application programs. The services
More informationDTNS: a Discrete Time Network Simulator for C/C++ Language Based Digital Hardware Simulations
DTNS: a Discrete Time Network Simulator for C/C++ Language Based Digital Hardware Simulations KIMMO KUUSILINNA, JOUNI RIIHIMÄKI, TIMO HÄMÄLÄINEN, and JUKKA SAARINEN Digital and Computer Systems Laboratory
More informationSystem-level design refinement using SystemC. Robert Dale Walstrom. A thesis submitted to the graduate faculty
System-level design refinement using SystemC by Robert Dale Walstrom A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Major: Computer
More informationFlexible and Executable Hardware/Software Interface Modeling For Multiprocessor SoC Design Using SystemC
Flexible and Executable / Interface Modeling For Multiprocessor SoC Design Using SystemC Patrice Gerin Hao Shen Alexandre Chureau Aimen Bouchhima Ahmed Amine Jerraya System-Level Synthesis Group TIMA Laboratory
More information* There are more than 100 hundred commercial RTOS with memory footprints from few hundred kilobytes to large multiprocessor systems
Presented material is based on ü Laura Carnevali: Formal Methods in the Development Life Cycle of Realtime Systems. PhD-Thesis, Univ. of Florence (IT) 2010. (Ch. 1.1-1.3) ü Doug Abbott: Linux for Embedded
More informationA Generic Wrapper Architecture for Multi-Processor SoC Cosimulation and Design
A Generic Wrapper Architecture for Multi-Processor SoC Cosimulation and Design Sungjoo Yoo Gabriela Nicolescu Damien Lyonnard Amer Baghdadi Ahmed A. Jerraya S Group, TIMA Laboratory 46 Avenue Felix Viallet,
More informationTimed Compiled-Code Functional Simulation of Embedded Software for Performance Analysis of SOC Design
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 22, NO. 1, JANUARY 2003 1 Timed Compiled-Code Functional Simulation of Embedded Software for Performance Analysis of
More informationEMBEDDED OPERATING SYSTEMS
EMBEDDED OPERATING SYSTEMS Embedded Operating Systems Requirements Real-time OSes General requirements Scheduling, task switching, and I/O Require the support of an OS for embedded applications Some very
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 6 Accounting for I/O Latency September 28, 2015 Sam Siewert A Service Release and Response C i WCET Input/Output Latency Interference Time Response Time = Time Actuation
More informationEEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools
EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: wylin@mail.cgu.edu.tw March 2013 Agenda Introduction
More informationHardware/Software Codesign of Schedulers for Real Time Systems
Hardware/Software Codesign of Schedulers for Real Time Systems Jorge Ortiz Committee David Andrews, Chair Douglas Niehaus Perry Alexander Presentation Outline Background Prior work in hybrid co-design
More informationDesign for Verification in System-level Models and RTL
11.2 Abstract Design for Verification in System-level Models and RTL It has long been the practice to create models in C or C++ for architectural studies, software prototyping and RTL verification in the
More informationChapter 10 Objectives
Chapter 10 Topics in Embedded Systems Chapter 10 Objectives Understand the ways in which embedded systems differ from general purpose systems. Be able to describe the processes and practices of embedded
More informationREAL TIME OPERATING SYSTEM PROGRAMMING-I: VxWorks
REAL TIME OPERATING SYSTEM PROGRAMMING-I: I: µc/os-ii and VxWorks Lesson-1: RTOSes 1 1. Kernel of an RTOS 2 Kernel of an RTOS Used for real-time programming features to meet hard and soft real time constraints,
More informationVCore-based Platform for SoC Design
VCore-based Platform for SoC Design Yoichi Onishi, Michiaki Muraoka, Makoto Utsuki, Naoyuki Tsubaki Semiconductor Technology Academic Research Center (STARC) Shin-Yokohama 3-chome, Kohoku-ku, Yokohama,
More informationAUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel. Alexander Züpke, Marc Bommert, Daniel Lohmann
AUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel Alexander Züpke, Marc Bommert, Daniel Lohmann alexander.zuepke@hs-rm.de, marc.bommert@hs-rm.de, lohmann@cs.fau.de Motivation Automotive and Avionic industry
More informationDESIGN OF ON-CHIP BUS OCP PROTOCOL WITH BUS FUNCTIONALITIES
DESIGN OF ON-CHIP BUS OCP PROTOCOL WITH BUS FUNCTIONALITIES G. SHINY 1 & S. HANUMANTH RAO 2 1,2 Department of Electronics and communications Shri Vishnu Engineering College for Women, Bhimavaram, India
More informationAnalysis and Research on Improving Real-time Performance of Linux Kernel
Analysis and Research on Improving Real-time Performance of Linux Kernel BI Chun-yue School of Electronics and Computer/ Zhejiang Wanli University/Ningbo, China ABSTRACT With the widespread application
More informationOS and Java. The Networked Appliance Solution. Haruyasu Ito. Electronic Devices Group FUJITSU LIMITED
µitron OS and Java The Networked Appliance Solution Haruyasu Ito Electronic Devices Group FUJITSU LIMITED RTOS use in Embedded Systems in Japan OS not used Not ITRON specification OS API ITRON-Spec OS
More informationRapid-Prototyping Emulation System using a SystemC Control System Environment and Reconfigurable Multimedia Hardware Development Platform
Rapid-Prototyping Emulation System using a SystemC System Environment and Reconfigurable Multimedia Development Platform DAVE CARROLL, RICHARD GALLERY School of Informatics and Engineering, Institute of
More informationTechnical Report: Communication SW Generation from TL to PCA Level
Technical Report: Communication SW Generation from TL to PCA Level for MPSoC Ines Viskic, Samar Abdi and Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine, CA 92617
More informationDynamic Memory Management for Real-Time Multiprocessor System-on-a-Chip
Dynamic Memory Management for Real-Time Multiprocessor System-on-a-Chip Mohamed A. Shalan Dissertation Advisor Vincent J. Mooney III School of Electrical and Computer Engineering Agenda Introduction &
More information