Technical information

Introduction 1
1 Introduction
The DSP56800E’s DSP core architecture represents the next step in the evolution of Motorolas 16-bit
DSP56800 Family of digital signal processors. It maintains compatibility with the DSP56800 while
improving performance and adding new features.
Some of the new and useful features of the DSP56800E (as compared to the DSP56800) that can be
exploited for optimization include:
Additional registers (accumulators, pointers, and an offset register)
Extended set of data ALU operations
AGU arithmetic
Support for nested DO looping
New data types (byte and long)
24-bit data memory address space and 21-bit program memory address space
Support for real-time debugging (Enhanced OnCE)
An important feature of the DSP56800E is its source code compatibility with the DSP56800. Code
developed for the DSP56800 can be assembled for the DSP56800E and will run correctly if certain coding
requirements are fulfilled. These requirements are not very restrictive. They are identified, analyzed,
fulfilled, and verified with regard to example code in this application note. If these requirements are not
met in the initial application, the necessary changes are easy to implement.
The sample code that was ported to the DSP56800E executed in half the number of cycles required by the
DSP56800, even without any optimization (without exploiting the new features of the DSP56800E).
Whereas the DSP56800 typically completes execution of an instruction in 2 cycles, the DSP56800E
performs the same job in 1 cycle. Moreover, code written for the DSP56800 can be further optimized
because of the new features introduced in the DSP56800E.
Another difference between the DSP56800E and the DSP56800 is new pipeline behavior. Although this
behavior does not affect code correctness, in some cases it can introduce stalls. The programmer can avoid
these situations by rearranging instructions.
The main purpose of this application note is to recommend a method for porting DSP56800 applications to
the DSP56800E and for optimizing the applications, exploiting the advantages of the new architecture.
This document also details some aspects of the following issues:
The relative benefit of rewriting a function from scratch compared to porting and optimizing the
application
How pipeline effects on the DSP56800E can affect the ported code
How an application can be translated beyond the 64 kwords boundary for program and data memory
Fr
eescale S
emiconduct
or
, I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
nc...