You are on page 1of 27

Digital Signal Processing

BITS Pilani Date : 17/08/2017


Pilani|Dubai|Goa|Hyderabad
BITS Pilani
Pilani|Dubai|Goa|Hyderabad

Previous class:
Numeric Representation used in DSP
Fixed point
BITS Pilani
Pilani|Dubai|Goa|Hyderabad

Today class:
Numeric Representation used in DSP
Floating point
Fixed-Point Design
Idea
Digital signal processing algorithms
Often developed in floating point Floating-Point Algorithm

Later mapped into fixed point for digital


hardware realization Range Estimation

Quantization

Fixed-point digital hardware Fixed-Point Algorithm

Lower area
Code Generation
Lower power

Level
Lower per unit production cost Target System
Numeric Representation used in DSP
Fixed-point
Narrow dynamic range but costs
16-bit low.
20-bit Faster than FLPDSP

24-bit
Floating-point
32-bit
Narrow dynamic range but complex
64-bit hardware.
Slower than FIPDSP
80-bit
128-bit
Floating point representation:
Most important standard is IEEE-754
There are four type of IEEE-754 floating point
representations depending on number of bits used in
it.
Single precession: 4 bytes
Double precession: 8 bytes
Extended Double precession: 10 bytes
Quadruple precession: 16 bytes
Floating point representation:

Actual Normalized or biased


Emax =127 254
Emin = - 126 1

More accuracy
Increased range
Floating point representation:

A number is represented by two parts: a mantissa and an


exponent where
value of the number = mantissa x 2exponent
The mantissa is usually a signed fractional value with a single
implied (not actually stored) integer bit.
Exponent is in excess or biased notation (biase = 127 for
single precision and 1023 for double precision)
The exponent is an integer that represents the number of
places that the binary point of the mantissa must be shifted
right or left to obtain the original number represented.
Floating point representation:

EX: what is the value of 1 10000001 01000000000000000000000

Exponent = 129-127=2
Fraction part =0.012 = 0.25
Value = - 1.25 * 22 = - 5

Express +0.5 in single precision format.


0.5 = 1.00*2-1
Exponent = 126 (126-127=-1), sign is 0, fraction part = 0.00
0 01111110 00000000000000000000000
Floating point representation:
Ex: Represent 100.25 in IEEE754 floating point format.

Steps:
1. Convert decimal to binary
2. Represent binary number obtained in proper format
3. Represent exponent in biased format
4. Zero pad.

ANS:
100 = 1100100
0.25 = 0.01
100.25= 1100100.01=1.10010001*26
X-127=6 X=133 = 85h=10000101

0 1000 0101 1001000100000


Floating point representation:
Floating point multiplication:

E = E1 +E2 - 127

Example:
X1 = 1 10000010 00000000
X2 = 0 10000011 000.00
Ans?
1 10000110 000000
Floating point representation:
Let E1 = 250 and e2 = 250
What will be E?
Need 9 bits to represent and not available.
Over flow in multiplication

Underflow in multiplication
The minimum value of biased exponent = 1 (= -126 actual)
If an actual number has exponent less than -126, this can not be
normalized and called as denormal number.
Ex:
X = 1* 2 -64 and x2 = 1* 2 -65
Floating point representation:

Floating point addition:

EX: (- 1. 001) * 2-2 + (- 1.011) * 20

Steps:

1. Align the exponent


2. Add or subtract the mantissa
3. Normalize result

Representation of specific values


Applications

Fixed Point Floating point


TMS320C6713 DSP Processor

255 MHz processor

What is the clock cycle?

~4.00 nsec

What is VLIW architecture?

It has VLIW architecture capable of running 8 instructions per cycle.

How many instructions can be executed per sec?

8 * 255 = 1800 million instructions per second


Line in and line out for audio signal
Mic in and HP out are for stereo signal
Sampling rate can be 8, 16, 24, 32, 44.1, 48 and 96 KHz
Self test program is stored
in FLASH memory

The memory can be


extended up to 4GB.
Not possible always. Why?

Interdependent of instructions.

How many multiply units are there?

If more than 4 instructions are there in one group of instruction, how


they will be executed?
Dynamic Range, Resolution & Precision
Dynamic Range, Resolution & Precision

Dynamic Range = 20 log10(2n)= 6.02 n dB

You might also like