Title :
Combining imperative and declarative hardware descriptions
Author :
Todman, Tim ; Luk, Wayne
Author_Institution :
Dept. of Comput., Imperial Coll., London, UK
Abstract :
This paper describes an approach for hardware development that involves both imperative and declarative descriptions. The imperative descriptions are mainly used for algorithm and application development; they are based on Cobble, a sequential imperative language extended with facilities for parallel computation and arbitrary-sized variables, similar to the Handel-C language. Operators in Cobble can be produced using the declarative language Pebble, which supports efficient bit-level design. We introduce the use of meta-information, such as information about latency and throughput, for Pebble descriptions, to enable Cobble programs to adapt to different implementations of operators in Pebble. The optimisation of designs by transforming the Cobble and Pebble descriptions is presented.
Keywords :
hardware description languages; hardware-software codesign; optimisation; parallel programming; program compilers; Cobble programs; Handel-C language; Pebble descriptions; arbitrary-sized variables; bit-level design; declarative hardware descriptions; declarative language; design optimisation; hardware development; imperative hardware descriptions; metainformation; parallel computation; sequential imperative language; Computer languages; Concurrent computing; Delay; Design optimization; Educational institutions; Hardware; LAN interconnection; Libraries; Program processors; Throughput;
Conference_Titel :
System Sciences, 2003. Proceedings of the 36th Annual Hawaii International Conference on
Print_ISBN :
0-7695-1874-5
DOI :
10.1109/HICSS.2003.1174813