Why Use A High Level Language For DSP ? |
![]() |
![]() |
Home Page | SigLib™ DSP Library | DFPlus™ Filter Designer
The field of Digital Signal Processing is constantly pushing the price / performance envelope of technology and traditionally this has required systems developers to use assembly language for the majority of the time critical signal processing routines. Today's commercial pressures have moved the "goal-posts" dramatically and typical project development timescales require a larger part of the application to be developed using a high level language. Another benefit to using a high level language for the system development is that a system can be rapidly prototyped to prove the algorithms and then hand optimised using assembly code for the time critical areas.
Primary Reasons For
Using
|
The latest
generation of compilers allows high level code to be
compiled to a quality of assembly code that is very close
to that which would be generated by hand. The development
process is therefore very much easier than writing the
algorithm in assembly code from scratch. An increasingly
common development route is to develop the algorithms on
a PC or Workstation and then rewrite the application for
the target processor. Using the same language for
development and deployment often allows the same code to
be used for both, with the different I/O requirements
handled through the use of conditional compilation of the
source. Modern high performance DSPs are also changing the way we view algorithmic efficiency and an increasing number of projects are written in a high level language because the savings at development time are far greater than the extra cost overhead of using faster processors at deployment. The architectures of the latest DSPs are also becoming more complex, for example with the integration of parallel execution units. This means that it is increasingly difficult for programmers to learn how to fully optimise their algorithms. When the complexity issue is coupled with the fact that the majority of DSP algorithms are block oriented vector processing algorithms and it is now becoming possible for high level language compilers to produce code that is 100% optimised. |
Home Page | SigLib™ DSP Library | DFPlus™ Filter Designer
If you have
any comments or questions please email Numerix : numerix@numerix-dsp.com
Copyright © 2008, Indigo Consulting Ltd.. Permission is granted to create
WWW pointers to this document. All other rights reserved. All
trademarks acknowledged.