COHRA: Hardware-software cosynthesis of hierarchical heterogeneous distributed embedded systems

被引:21
作者
Dave, BP
Jha, NK
机构
[1] AT&T Bell Labs, Lucent Technol, Holmdel, NJ 07733 USA
[2] Princeton Univ, Dept Elect Engn, Princeton, NJ 08544 USA
基金
美国国家科学基金会;
关键词
allocation; distributed systems; embedded systems; hardware-software cosynthesis; hierarchy; scheduling; system synthesis;
D O I
10.1109/43.728913
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Hardware-software cosynthesis of an embedded system architecture entails partitioning of its specification into hardware and software modules such that its real-time and other constraints are met. Embedded systems are generally specified in terms of a set of acyclic task graphs. For medium- to large-scale embedded systems, the task graphs are usually hierarchical in nature. The embedded system architecture, which is the output of the cosynthesis system, may itself be nonhierarchical or hierarchical. Traditional nonhierarchical architectures create communication and processing bottlenecks and are impractical for large embedded systems. Such systems require a large number of processing elements and communication links connected in a hierarchical manner, thus forming a hierarchical distributed architecture, to meet performance and cost objectives. In this paper, we address the problem of hard hardware-ware cosynthesis of hierarchical heterogeneous distributed embedded system architectures from hierarchical or nonhierarchical task graphs. Our cosynthesis algorithm has the following features: 1) it supports periodic task graphs with real-time constraints, 2) it supports pipelining of task graphs, 3) it supports a heterogeneous set of processing elements and communication links, 4) it allows both sequential and concurrent modes of communication and computation, 5) it employs a combination of preemptive and nonpreemptive static scheduling, 6) it employs a new task-clustering technique suitable for hierarchical task graphs, and 7) it uses the concept of association arrays to tackle the problem of multirate tasks encountered in multimedia systems. We show how our cosynthesis algorithm can be easily extended to consider fault tolerance or low-power objectives or both. Although hierarchical architectures have been proposed before, to the best of our knowledge, this is the first time the notion of hierarchical task graphs and hierarchical architectures has been supported in a cosynthesis algorithm. Application of the proposed algorithm to several examples from real-life telecom transport systems shows that up to 47% reduction in embedded system cost is possible by exploiting the concept of hierarchical task graphs and architectures.
引用
收藏
页码:900 / 919
页数:20
相关论文
共 35 条
[1]  
Aggarwal K. K., 1993, RELIABILITY ENG
[2]  
[Anonymous], 1979, Computers and Intractablity: A Guide to the Theoryof NP-Completeness
[3]  
[Anonymous], P 27 ANN INT S FAULT
[4]  
BARROS E, 1994, EURO-DAC '94 WITH EURO-VHDL 94, PROCEEDINGS, P220
[5]  
*BELLC, 1992, TRNTW00418 BELLC
[6]   AN EFFICIENT ALGORITHM FOR GRAPH ISOMORPHISM [J].
CORNEIL, DG ;
GOTLIEB, CC .
JOURNAL OF THE ACM, 1970, 17 (01) :51-&
[7]  
D'Ambrosio J. G., 1994, Proceedings of the Third International Workshop on Hardware/Software Codesign (Cat. No.94TH0700-5), P34, DOI 10.1109/HSC.1994.336725
[8]  
Dave BP, 1997, DES AUT CON, P703, DOI 10.1145/266021.266341
[9]   HARDWARE-SOFTWARE COSYNTHESIS FOR MICROCONTROLLERS [J].
ERNST, R ;
HENKEL, J ;
BENNER, T .
IEEE DESIGN & TEST OF COMPUTERS, 1993, 10 (04) :64-75
[10]  
GUPTA RK, 1994, THESIS STANFORD U ST