Download presentation
Presentation is loading. Please wait.
Published byJoseph Burke Modified over 8 years ago
1
1 Software Thread Integration for Concurrency and ILP in Embedded Systems Alex Dean alex_dean@ncsu.edu Center for Embedded Systems Research Department of Electrical and Computer Engineering North Carolina State University www.cesr.ncsu.edu/agdean
2
2 STI and ASTI Eliminate Context Switches and Interrupts Where They Limit Performance Problem: Embedded systems are inherently multithreaded, but most processors are single-threaded Solution: Create efficient implicitly multithreaded (integrated) functions Use a compiler at design time to create the functions (compile for low-cost concurrency) Build the task/function scheduling decisions into scheduler or ISRs Break down the barrier between task scheduling (scheduler and dispatcher) and instruction scheduling (compiler) Two efficiencies improved –Integrated threads more efficient –Integration process automated Simplifies hardware to software migration Primary (real-time) Thread Secondary Thread Idle Time Integrated Thread Guest Schedule (Execution Time Reqts.) Idle Time Reclaimed (Asynchronous) Software Thread Integration Hardware Function Integration foo.s foo.int.s foo.id Data-flow Analysis Control-flow Analysis Static Timing Analysis Integration Analysis GProf
3
3 Demo Systems: NTSC Generator & Hot Soft CAN Byte Clock Divider Pixel Clock Divider 4-bit Shift Register 64 kByte SRAM Latch Shift Load MCU Clock Sync Clear ATmega128 MCU NTSC Video Out 115 kbps serial port Honeywell HT83C51 Microcontroller Serial Data Link to Controller CAN Bus Honeywell HT6256 32K x 8 SRAM Software CAN Hardware CAN Honeywell HT83C51 Microcontroller Serial Data Link to Controller CAN Bus Honeywell HT6256 32K x 8 SRAM CAN Controller Additional 4 kBytes of code STIGlitz: Sync. Threads w/STI HSCAN: Async. Threads w/ASTI
4
4 Other Activities STI for streaming programs on VLIW processors –Problem: VLIW processors often have many unused issue slots –Software pipelining doesn’t always work (resource bound < recurrence bound, control flow, calls, register pressure) –STI can help in many cases –Target System: StreamIt + TI C6x DSP –StreamIt implicitly guarantees data independence, simplifying analysis –Developing methods to analyze and transform StreamIt program graph to improve performance Energy Efficiency for Low-End Embedded Systems Portable Benchmarking for Embedded Systems
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.