System-level issues dominate code writing
System-level issues dominate code writing
By Chappell Brown, EE Times
December 9, 2002 (11:42 a.m. EST)
URL: http://www.eetimes.com/story/OEG20021204S0038
DSPs began as a type of special-purpose coprocessor, and writing code for them was only slightly different from developing software for microprocessors. Signal processing required more in-depth treatment of numerical processing and less knowledge of system-level operations than microprocessor development, but the difference was largely a question of emphasis. As circuit density has gone up, though, the two types of processors have increasingly diverged, right along with the applications they are able to tackle. Today, a state-of-the-art DSP application such as an all-digital cellular phone basestation or a portable wireless consumer product are completely defined by the digital signal processor, which may include the type of system-level I/O, user interface components and perhaps an execution unit for Java normally associated with advanced microprocessor-based systems. As result, no one markets DSPs these days without a comprehens ive set of development tools that will include both high-level visual development systems, low-level fine-tuning of code, hardware emulation and system-modeling capability. Integrated project-management systems are also required, since it is becoming rare to have only one or two engineers developing a DSP system. As with any rapidly evolving area of electronics engineering, opinions of what constitutes a complete set of development tools is a debatable topic. In this week's In Focus section, experts at three of the major DSP vendors-Motorola, Texas Instruments and Analog Devices Inc.-offer their prescriptions for what is needed to get a DSP-based application from initial design to manufactured product within a competitive time frame. In his contribution, Motorola's Victor Berrios points out that C compiler technology has been advancing along with the rapid pace of DSP hardware evolution. As a result, basic programming skills will still suffice for much of the design implementation. "C compi lers for DSP processors have become much better at delivering functionally correct and compact code," Berrios explains. "Furthermore, with the availability of hybrid DSP/MCU architectures in the marketplace, efficient compiler technology is reaching new levels and should continue to improve." In his article, Giuseppe Olivadoti at Analog Devices maintains that a tightly integrated and well-designed development system is essential to writing correct, robust code within the tight time budgets of today's competitive market. "All of the components of the development system must be tightly integrated, offering programmers a rapid, seamless transition from development in a simulation environment through target hardware debugging," Olivadoti argues. And designers need to keep in mind the basic rules that result in fast, efficient code, said Rob Oshana at Texas Instruments, in a contributed article that was also presented at the recent Communications Design Conference. Usually, the greatest speedup in a DSP system occurs on relatively small sections of the code. Overall code optimization techniques may not be able to target those critical segments effectively. Thus, in the end, there is no automatic substitute for general processor execution expertise. Oshana offers his view on time-tested techniques-memory access options, low-level code tweaking, pipelining and branch logic management.
Related Semiconductor IP
- AXI to UCIe FDI Interface IP
- 45SPCLO UCIe-Class 1-32Gbps Low Power Receiver IP (NRZ)
- 45SPCLO UCIe-Class 1-32Gbps Low Power Transmitter IP (NRZ)
- Peripheral Sensor Interface (PSI5) Host Controller
- Link Acceleration Unit
Related Articles
- How to build reliable FPGA memory interface controllers without writing your own RTL code!
- EDA focus shifts to system level design
- The Challenges and Benefits of Analog/Mixed-Signal and RF System Verification above the Transistor Level
- VMM based multi-layer framework for system level verification
Latest Articles
- Croc: Training the Next Generation Chip Designers on Domain-Specific End-to-End Open Source Silicon
- Design and Development of a Neuromorphic Silicon Suite: PVT Sensing, Stochastic LIF Inference, On-Chip STDP Learning, and Crossbar Programming
- LLM4RTL: Tool-Assisted LLM for RTL Generation
- Towards Delta Aware Training: Efficient DNN Weight Storage for Resource-Constrained FPGAs
- CHERI-D: Secure and efficient inline object ID for CHERI temporal memory safety