HOME   PREV   FURTHER NOTES   |ENDOFPACK|

Hardware-Software Codesign

Codesign is the name for an approach to system design where both the hardware and software components are entered in a common language and the selection of target architecture is specified in other ways, including automatically.

New languages for codesign are a research area. Existing languages like C and Java can also be used provided program bounds in terms of recursion depth and dynamic storage allocation can be determined fully at compile time.

A hardware system can be designed using only hardware or hardware with an embedded processor and software in ROM. Perhaps several processors are to be used. A design also must be partitioned into standard components and application specific integrated circuits (ASICs). The choice of which parts of the design are realised in what technology is the design partition problem.