Home > Programming > C Programming Language



Programming DSPs using C: efficiency and portability trade-offs

Sort Desciption:

... is of less interest, the trend is that control code is written in C and time-critical inner loops are coded in assembly. In the microcontroller market, C gained favour over assembly-level programming ...



Content Inside:

19 Embedded Systems MAY 2000 BY GERARD VINK DSP DEVELOPMENT T oday most DSP software used in hand-held consumer applications      is written in assembly. In other DSP application areas where power consumption and the applications footprint is of less interest, the trend is that control code is written in C and time-critical inner loops are coded in assembly. In the microcontroller market, C gained favour over assembly-level programming          for well-known reasons. It offered reduced development time, portability and reuse of application code and reduced maintenance cost. The trade-offs were a limited penalty on code size and run-time performance. As the complexity and size of DSP applications both continue to increase, the same reasons that motivated the move from assembly to C for microcontroller applications         now apply to DSP. There is, however, one major problem. Standard C, as defined in C9X, is neither designed nor suited to implement DSP applications. DSPs use many hardware architectural features to optimise system performance and cost. Examples in- clude: * Support of multiple on-chip and off-chip address spaces * Special address modification types to implement circular buffers and optimise array indexing for FFT transformations * Fixed-point arithmetic * Accumulators with extended precision     and saturation logic Standard C supports none of the above listed features. DSP C compiler suppliers use two fundamentally different    approaches to give the C programmer    access to these hardware features. One group supports an extensive set of intrinsic1functions and pragmas2. The other group introduces C-language extensions          such as memory space qualifiers, array and pointer qualifiers ...

Source: www.tasking.com


add to Google Reader add to Google Bookmark add to bloglines add to newsgator add to FURL add to digg add to webnews add to Netscape add to Yahoo MyWeb add to spurl.net add to diigo Bookmark newsvine Bookmark del.icio.us Bookmark @ SIMPIFY Bookmark MISTER WONG Bookmark Linkarena Bookmark icio.de Bookmark oneview Bookmark folkd.com Bookmark yigg.de Bookmark reddit Bookmark StumbleUpon Bookmark Slashdot Bookmark blinklist Bookmark technorati add to blogmarks add to blinkbits add to ma.gnolia add to smarking.com add to netvouz add to co.mments add to Connotea add to de.lirio.us
Search Terms:

 

Related Files

Programming in C C++ Java

Filed under: Programming and C Programming Language
Programming in C C++ Java. Course Overview. Object oriented programming languages are widely used for the development of complex software systems. ...

C Programming

Filed under: Programming and C Programming Language
The C Programming Language ANSI C. By Brian W. C. Kernighan & Dennis M. Ritchie. K and R. "Practical C programming". By Steve ...

An Overview of the C++ Programming Language

Filed under: Programming and C Programming Language
The C++ programming language provides a model of memory and computation that ... 3 The C Programming Model presents the C subset of C++ and other C++ ...

C Programming Fundamentals

Filed under: Programming and C Programming Language
1 C Programming Fundamentals C is a compiled language. The user creates source code (often ... exe extension). Below is typical C program called LED.C that illustrates some fundamental C ...

Essential C

Filed under: Programming and C Programming Language
C Programming Language (below) as part of their research at AT&T. Unix and C++ ... The C Programming Language 2nd ed. by Kernighan and Ritchie. ...