- high-end digital audio systems quantize audio at 20-24 bits per sample
- ADSL and HDSL2 modems require 20-bit coefficients in the adaptive FIR filters for channel equalization

The DSP56800 family is a hybrid DSP/microcontroller. One of the earliest applications (mid-1990s) was in speakerphones. In 2004, the DSP56800 finds applications in power control systems:

- November 18, 2004, Digital Power Conversion using Freescale 56800/E Hybrid Controllers, On-Demand Presentation by Freescale Semiconductor.

- 2 24-bit data registers in each path
(
**x0**,**x1**,**y0**, and**y1**). Register**x**is the concatentation of**x1**and**x0**and can store 48 bits of an accumulator. Likewise for register**y**. - 8 address registers (
**r0**-**r7**)

- two 56-bit accumulators
**a**and**b**- 8-bit extension register (
**a2**or**b2**) - 24-bit most significant word result (
**a1**or**b1**) - 24-bit least significant word result (
**a0**or**b0**)

- 8-bit extension register (
- Represent fixed-point numbers between -1 and 0.9999998, inclusive.
- Underflow: accumulation produces a number less than -1
- Overflow: accumulation produces a number greater than 0.9999998
- The extension register offers protection against overflow: it can accurately represent numbers of higher precision and sets the overflow status bit when the other 48 bits are 01111....111.
- Overflow protection occurs when an accumulator is written on the X data bus or Y data bus by substituting a limiting constant for the data
- Scaling: at input to accumulator, one can shift left by one bit,
shift by one bit, no shift, or force to zero the current value
of the accumulator
- If we add two unit amplitude sine waves together, how
much should we scale the amplitudes before we add them
together to prevent overflow and underflow?

*Hint: Consider their maximum amplitude.* - To sum the square of
*N*numbers, e.g. a dot product of a vector with itself, by what number do we have to scale each number to prevent overflow and underflow?

*Hint: Assume each number is -1.*

- If we add two unit amplitude sine waves together, how
much should we scale the amplitudes before we add them
together to prevent overflow and underflow?
- Fairness: algorithm alternates between truncation and rounding to ensure fairness in the least significant bit

; invert input clr b input,a ; b = 0, a = input tst a #$01,y1 ; test a, set y1 = 1 teq y1,b ; if a = 0, then b = y1 = 1 move b,output ; output = b

- Mohamed El-Sharkaway,
*Digital Signal Processing Applications with Motorola's DSP56002 Processor*, Prentice Hall, ISBN 0-13-569476-0, 1996. - Motorola, Inc.,
*DSP56000 Digital Signal Processing Family Manual*, 1992.

Last updated 12/22/04. Send comments to bevans@ece.utexas.edu