By Richard Terrill, Xmos SemiconductorEmbedded.com -- (04/15/08, 10:00:00 AM EDT)
Over the years, embedded systems designers have used different approaches to design systems in ways that optimize and customize hardware to fit the specific requirements of the application they're developing. Broadly speaking, these approaches fall into three categories:
Processors, where the behavior of the device is defined using software programming languages, and the target is a processing engine that interprets and executes the instructions. Examples include microprocessors, microcontrollers, and DSPs.
Configurable hardware, where the behavior of the device is defined using hardware description languages, and the target is a set of general-purpose functional resources that can be functionally configured but not physically changed. Examples include FPGAs and PLDs. The functionality is set at power-up (field-binding).
User-specified hardware, where the engineering team creates custom physical silicon to implement the target device. This ranges from a minimal effort such as a gate array to a fully-customized device with handcrafted features. The functionality is set during manufacturing (fab-binding) and is immutable.
All three of these categories are well suited for different types of designs and all have evolved over time to take advantage of the capabilities available with new semiconductor technology. What hasn't always evolved so gracefully are the design methods and tools.
Among other things, each category has evolved its own unique set of design tools and design flows. Although there have been efforts to smooth the often significant differences between them--for example the development of C-language extensions such as Handel-C and SystemC in FPGAs--these domain-specific tools and methodologies often work at cross purposes in an integrated development environment.
This trend has accelerated as more gates have become available through programmable logic, and embedding processors into ASICs and SOCs has become straightforward. Thus it appears likely that the next generation of hardware will be increasingly programmable, blending processors and configurable hardware. It is also likely that it will become a dominant factor in custom ICs, much as programmable logic became pervasive starting 20 years ago.
Click here to read more ...