Title :
Handling data streams while compiling C programs onto hardware
Author :
Mukherjee, Rajarshi ; Jones, Alex ; Banerjee, Prith
Author_Institution :
Dept. of Electr. & Comput. Eng., Northwestern Univ., Chicago, IL, USA
Abstract :
Recently, there have been several efforts to develop compilers that synthesize applications written in high-level languages such as C into hardware. Streaming applications form an important class of systems that need to be mapped onto hardware. In this paper we present the modeling of stream and frame based applications in C and extend a behavioral synthesis tool framework to synthesize RTL models from streaming system descriptions in C. Individual C functions get synthesized onto individual IP blocks in the synthesis framework. We describe how the behavioral synthesis tool automatically infers ports and generates the required handshaking signals for interfacing the IP blocks in the system. We describe a system level approach for interfacing synthesized IP blocks. Results of the system level synthesis and simulation are reported for Xilinx VirtexII FPGAs for single IP systems for streaming data and frame-based data, and for multiple IP systems having streaming and frame-based data.
Keywords :
C language; data handling; hardware-software codesign; program compilers; C programs; IP blocks; RTL model synthesis; Xilinx VirtexII FPGAs; behavioral synthesis tool framework; data stream handling; frame-based data; handshaking signals; program compilers; stream modeling; streaming data; streaming system; Communication channels; Control system synthesis; Field programmable gate arrays; Hardware design languages; Mathematical model; Program processors; Signal design; Signal generators; Signal synthesis; Very large scale integration;
Conference_Titel :
VLSI, 2004. Proceedings. IEEE Computer society Annual Symposium on
Print_ISBN :
0-7695-2097-9
DOI :
10.1109/ISVLSI.2004.1339553