Title :
A scheduling and pipelining algorithm for hardware/software systems
Author :
Bakshi, Smita ; Gajski, Daniel D.
Author_Institution :
Dept. of Electr. & Comput. Eng., California Univ., Davis, CA, USA
Abstract :
Given a hardware/software-partitioned specification and an allocation (number and type) of processors, we present an algorithm to (1) map each of the software behaviors (or tasks) to processors, (2) pipeline the system specification, and (3) schedule the behaviors in each pipe stage amongst selected hardware components and processors, so as to satisfy a throughput constraint at minimal hardware cost. Thus, to achieve high performance, not only are critical tasks implemented as pipelined hardware architectures, but the system is also divided into concurrently executing stages. Furthermore, to offset the cost of this increased concurrency, non-critical sections are implemented on processors or as cheaper hardware blocks. Our experiments demonstrate the feasibility of our approach and the necessity of system pipelining in high-performance design
Keywords :
formal specification; logic partitioning; multiprocessing systems; parallel architectures; pipeline processing; processor scheduling; resource allocation; concurrently executing stages; hardware blocks; hardware/software-partitioned specification; high-performance design; minimal hardware cost; noncritical sections; pipelined hardware architectures; pipelining algorithm; processor allocation; scheduling algorithm; software task mapping; throughput constraint; Concurrent computing; Costs; Hardware; Partitioning algorithms; Pipeline processing; Processor scheduling; Scheduling algorithm; Software algorithms; Software systems; Throughput;
Conference_Titel :
System Synthesis, 1997. Proceedings., Tenth International Symposium on
Conference_Location :
Antwerp
Print_ISBN :
0-8186-7949-2
DOI :
10.1109/ISSS.1997.621683