A SystemC-Based RTOS Model for Multiprocessor Systems-on-Chips
Embedded.com (03/16/09, 03:30:00 PM EDT)
With the increasing complexity of embedded systems and the capacity of modern silicon technology, there is a trend toward heterogeneous architectures consisting of several programmable as well as dedicated processors, implemented on a single chip, known as systems-on-chips (SoCs).
As more applications are implemented in software that in turn is growing larger and more complex, dedicated operating systems will have to be introduced as an interface layer between the application software and the hardware platform.
Global analysis of such heterogeneous systems is a big challenge. Typically, two aspects are of interest when one is considering global analysis: the system functionality, in general, and the system timing and resource sharing, in particular.
As many embedded applications are reactive in nature and have real-time requirements, it is often not possible to analyze them statically at compile time. Furthermore, for single-chip solutions, we may need to use nonstandard real-time operating systems (RTOS) in order to limit the code size and hence the memory requirements, or to introduce special features interacting with the dedicated hardware, such as power management.
When implementing an RTOS, we may wish to experiment with different scheduling strategies in order to tailor the RTOS to the application. For a multiprocessor platform, we may wish to study the system-level effects of selecting a particular RTOS implementation on one of the processors.
To study these effects at the system level, before any implementation has been done, we need a system-level model that is able to capture the behavior of running a number of RTOS on a multiprocessor platform.
We refer to such a system-level model as an abstract model. In this first part on concepts and terminology and followed by succeeding parts on uniprocessors (Part 2) and then multiprocessors (Part 3), we describe an approach to modeling embedded applications represented as multithreaded applications executed on a multiprocessor platform running a number of, possibly different, RTOS.
E-mail This Article | Printer-Friendly Page |
Related Articles
- Methodology for Rapid Development of Loosely Timed and Approximately Timed TLM Peripherals
- Adapter Based Distributed Simulation of Multiprocessor SoCs Using SystemC
- Cycle Accuracy Analysis and Performance Measurements of a SystemC model
- Using an asymmetric multiprocessor model to build hybrid multicore designs
- Interface Synthesis in Multiprocessing Systems-On-Chips
New Articles
- Quantum Readiness Considerations for Suppliers and Manufacturers
- A Rad Hard ASIC Design Approach: Triple Modular Redundancy (TMR)
- Early Interactive Short Isolation for Faster SoC Verification
- The Ideal Crypto Coprocessor with Root of Trust to Support Customer Complete Full Chip Evaluation: PUFcc gained SESIP and PSA Certified™ Level 3 RoT Component Certification
- Advanced Packaging and Chiplets Can Be for Everyone
Most Popular
- System Verilog Assertions Simplified
- System Verilog Macro: A Powerful Feature for Design Verification Projects
- UPF Constraint coding for SoC - A Case Study
- Dynamic Memory Allocation and Fragmentation in C and C++
- Enhancing VLSI Design Efficiency: Tackling Congestion and Shorts with Practical Approaches and PnR Tool (ICC2)