Application Specific Instruction Set Architecture Extensions for DSPs
18.1 The Need for Instruction Set Extensibility in a Signal Processor
In the early 1990s, digital signal processing in wireless terminals mainly covered voice compression as well as channel equalization, coding and decoding techniques (also called “modem” function). Corresponding electronic systems built to optimize these applications tried to make the best trade-off between software and hardware in order to minimize system cost and power consumption. Software was mostly used as an efficient means to allow a quick evolution or on-the-fly correction of signal processing functions. Digital signal processor hardware was tailored to minimize power consumption.
A very classical example of such a trade-off was the implementation of convolutional decoders Viterbi trellis on the TMS320C54x processor, in software, by association of specific instructions and very optimized hardware . On previous implementations, dedicated hardware, sitting outside of the processor, took care of the whole trellis execution. Software brought the flexibility of correcting branch metrics computations without the need for expensive communications to send them to this external hardware and for duplication of storage resources.
Since then, more and more applications have been added around the modem, moving it to a commodity function. With third generation wireless networks, the requirements in terms of system flexibility ...