DSP software programming
Algorithm porting to DSP system (High-Level Language and assembler programming), algorithm modification, and code size/speed optimization.
The main goal is to find an optimal mapping of an algorithm to the selected DSP system.
The main steps in porting an algorithm on the DSP system are:
- Algorithm analysis (elementary processing modules, data paths, control paths, mutual dependences)
- Algorithm partitioning (grouping of modules in blocks, organization of modules inside the block, synchronization of blocks and data packets between blocks)
- Algorithm adaptation to target platform (adaptation of arithmetic to target DSP/RISC cores, error analysis)
- Performance analysis (identification of conflicts and stalls, processor load analysis, memory load analysis)