Access IC Lab

Download Report

Transcript Access IC Lab

Graduate Institute of Electronics Engineering, NTU
Adaptive Differential Pulse Code
Modulation
Instructor: Chia-Tsun Wu.
11/18/2004
ACCESS IC LAB
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Outline
File format for voice data files
ADPCM encoding algorithm
ADPCM decoding algorithm
Step size determination
Initial and reset conditions
ADPCM CODEC C example code
LAB
P2
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
File format for voice data files
P3
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
ADPCM encoding algorithm
P4
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
ADPCM encoding algorithm
let B3 = B2 = B1 = B0 = 0
if (d(n) < 0)
then B3 = 1
d(n) = ABS(d(n))
if (d(n) >= ss(n))
then B2 = 1 and d(n) = d(n) - ss(n)
if (d(n) >= ss(n) / 2)
then B1 = 1 and d(n) = d(n) - ss(n) / 2
if (d(n) >= ss(n) / 4)
then B0 = 1
L(n) = (10002 * B3) + (1002 * B2) + (102 * B1) + B0
P5
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
ADPCM decoding algorithm
P6
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
ADPCM decoding algorithm
d(n) = (ss(n)*B2) + (ss(n)/2*B1) + (ss(n)/4*BO)
+ (ss(n)/8)
if (B3 = 1)
then d(n) = d(n) * (-1)
X(n) = X(n-1) + d(n)
P7
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Step size determination
P8
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Initial and reset conditions
Step size ss(n) = 16
Estimated waveform value X = 0 (half scale)
No DC offset input
P9
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
ADPCM CODEC C example code
Please refer to reference [2]
P10
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Two examples
Example 1:
Speech: 8 bits resolutions, 22.5K sample rate
ADPCM encode to 2 bits per sample
Example 2:
Music: 8 bits resolutions, 22.5K sample rate
ADPCM encode to 2 bits per sample
P11
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Distortions
Source
ADPCM encode
P12
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Distortions cont’
P13
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
LAB
 Lab 1: Write a 16 to 4 or 12 to 4 ADPCM CODEC
 Sample rate: 8KHz for speech
 Resolutions: 16 or 12 bits
 Encode to 4 bits
 Lab 2: Write a 16 to 4 or 12 to 4 ADPCM CODEC
 Sample rate: 44.1K for music
 Resolutions: 16 bits
 Encode to 4 bits
 Lab 3: Write a 8 to 2 ADPCM CODEC
 Sample rate: 8KHz for speech
 Resolutions: 8 bits
 Encode to 2 bits
 Bonus: try to explain and optimal your algorithm to reduce
distortions or noise. (need more analysis)
P14
ACCESS IC LAB
Graduate Institute of Electronics Engineering, NTU
Reference
http://resource.intel.com/telecom/support/app
notes/adpcm.pdf
http://strawberry.resnet.mtu.edu/pub/Microchi
p/Dsk1/10/appnote/category/pic16/
P15