CASTLE: an interactive environment for HW-SW co-design

We introduce CASTLE, a design environment for embedded systems. Starting from an algorithmic specification in C++/ VHDL, CASTLE helps a designer to quickly find a suitable, cost-effective implementation of his system. The designer manually partitions the algorithmic specification into hardware and software components and refines the hardware architecture step by step. CASTLE provides immediate feedback by displaying the feasibility and consequences of each partitioning decision. After partitioning, CASTLE automatically outputs the hardware and software components as VHDL and C++ programs. These can then be simulated to validate the design partitioning. Highlights of the CASTLE design environment include support for product maintenance, arbitrary hardware architectures and full design control by the designer.<<ETX>>

[1]  Giovanni De Micheli,et al.  Synthesis and simulation of digital systems containing interacting hardware and software components , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[2]  Terry A. Welch,et al.  A Technique for High-Performance Data Compression , 1984, Computer.

[3]  James R. Larus,et al.  Rewriting executable files to measure program behavior , 1994, Softw. Pract. Exp..

[4]  W. Rosenstiel,et al.  A method for hardware software partitioning , 1992, CompEuro 1992 Proceedings Computer Systems and Software Engineering.

[5]  Abraham Lempel,et al.  A universal algorithm for sequential data compression , 1977, IEEE Trans. Inf. Theory.

[6]  Mani Srivastava,et al.  Rapid-prototyping of hardware and software in a unified framework , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[7]  Jörg Henkel,et al.  Hardware-software cosynthesis for microcontrollers , 1993, IEEE Design & Test of Computers.