You are on page 1of 57

Ti liu th nghim Xu l s tn hiu

1

Truong Dai hoc Tn Duc Thng
Khoa Din Din Tu
B mn Din tu - Vin Thng
U L SO TN HIEU
u th nghim






























1N V|n thng
2007
Ti liu th nghim Xu l s tn hiu
2

GII THIJU

Cc b xu l s tn hiu duoc su dung trong rt nhiu ung dung thuc t, tu truyn
thng v diu khin cho dn xu l ting ni v hnh anh... Hu ht cc thit bi gia
dung hin nay cung tch hop cc b xu l s tn hiu. Chng duoc su dung trong din
thoai di dng, my anh s, HDTV, radio, truyn fax, cc modem, my in, my tro
thnh v nhiu thit bi khc
H thng xu l s tn hiu co ban bao gm mt b bin di A/D d thu nhn tn hiu
vo. Sau d, dang biu din s cua tn hiu vo s duoc xu l boi mt b xu l s tn
hiu v tn hiu ra duoc dua qua b bin di D/A. H thng co ban ny cung bao gm
mt b loc ng vo chng chng ln ph v mt b loc ng ra d khi phuc tn hiu d
xu l.
Trong cc bi th nghim ny, chng ta duoc trang bi kit TMS320C6713 cua Texas
Instruments. Kit TMS320C6713 l mt cng cu manh voi cc phn cung v phn
mm cn thit cho xu l tn hiu thoi gian thuc. N l mt h thng xu l s tn hiu
hon chinh, bao gm mt b xu l s du chm dng C6713 v b codec 32-bit stereo
TLV320AIC23 (goi tt l AIC23) cho vic xut nhp tn hiu.
Qua cc bi th nghim ny, hi vong cc ban sinh vin s hiu r thm cc khi nim
d hoc trong mn Xu l s tn hiu, cung nhu nm duoc cc buoc co ban trong vic
thuc hin mt ung dung xu l s tn hiu ln mt b xu l s, nhu chip C6713 cua
Texas Instruments.
Ti liu th nghim Xu l s tn hiu
3

BI 1: SU DJNG MATLAB DE THIET KE B LC S

1. SU DJNG MATLAB DE THIET KE B LC S
1.1 Thit k b lc s bng cng c SPTool
SPTool l mt cng cu c giao din tuong tc dng cho xu l s tn hiu. Cng cu ny
c th duoc su dung d phn tch tn hiu, thit k cc b loc, phn tch cc b loc, loc
tn hiu v phn tch ph cua tn hiu.
D khoi dng SPTool, tu du nhc lnh cua MATLAB, nhp lnh
>> sptool
Khi d, giao din cua SPTool s xut hin nhu sau:


Hnh 1. Giao din cua SPTool
Khi moi mo SPTool, n chua mt tp hop cc tn hiu, b loc v ph mc dinh. Trn
giao din cua SPTool, c 3 ct: Signals, Filters v Spectra. Duoi mi ct c cc nt su
dung cho ct d. Ct Signals hin thi cc tn hiu, ct Filters hin thi cc b loc v ct
Spectra hin thi cc ph trong workspace (vng lm vic) cua SPTool.
Cc tn hiu, b loc hoc ph trong workspace cua MATLAB c th duoc dua vo
SPTool bng lnh Import trong menu File cua SPTool. Cc tn hiu, b loc hoc ph
duoc tao ra hoc duoc import vo SPTool tn tai duoi dang cc cu trc cua MATLAB.
D luu lai cc tn hiu, b loc v ph d tao ra hoc chinh sua trong SPTool, su dung
lnh Export trong menu File, chng cung s duoc luu lai duoi dang cc cu trc
MATLAB.
D bt du thit k mt b loc moi, cc ban hy nhn vo nt New ngay duoi ct
Filter. Khi d, giao din Filter Designer dng d thit k b loc nhu sau s xut hin.
Filter Designer cung cp mt mi truong d hoa tuong tc d thit k cc b loc s IIR
hoc FIR dua trn cc tiu chun do nguoi dng xc dinh.
- Cc loai b loc c th thit k: Thng thp, thng cao, thng dai, chn dai.
- Cc phuong php thit k b loc FIR: Equiripple, Least squares, Window
Ti liu th nghim Xu l s tn hiu
4

- Cc phuong php thit k b loc IIR: Butterworth, Chebyshev loai I, Chebyshev
loai II, Elliptic.


Hnh 2. Giao din Filter Designer

V d 1: Thit k mt b lc FIR chn dai bng SPTool
B loc, duoc thit k bng phuong php cua s Kaiser, voi cc thng s sau:

Chiu di cua dp ung xung: N = 89 (MATLAB hin thi bac bo loc bng 88)
Tan so trung tm: 2700 Hz
Tan so ct: 2500 Hz v 2900 Hz
Gi tri cua = 4
Tan so lay mau 8000 Hz

Cc buoc thit k nhu sau:
1. Khoi dng SPTool. Duoi ct Filters, nhn nt New d mo cua s Filter Designer.
2. Trong giao din cua Filter Designer:
a. Trong text box Filter: Tn b loc duoc tu dt (o dy l filt1). Tn ny c th
thay di sau ny.
b. Nhp cc thng s thit k vo:
i. Design method -> FIR -> Windows
ii. Option -> Windows -> Kaiser
iii. Bo chon o check box Minimum Order. (nu chon th s thit k b loc
c bc ti thiu).
Ti liu th nghim Xu l s tn hiu
5

iv. Filter Order = 88, Respone Type = Bandstop, Fc1 = 2500, Fc2 = 2900,
Beta = 4
c. Nhn Design Filter. Khi d dp ung tn s cua b loc thit k s duoc hin thi.

Hnh 3. Dp ng tn s cua b lc d thit k
3. Tro v cua s SPTool, trong ct Filters s xut hin thm mt dng filt1 [design].
Dy chnh l b loc vua thit k. Sau ny, nu mun sua di thit k, chon lai tn
b loc v nhn nt Edit o pha duoi. D d nho, ta s thay di tn b loc trn
thnh bs2700 bng cch chon Edit Namefilt1 [design]. Trong cua s moi
xut hin, nhp tn moi.
Khi thit k mt b loc FIR nhu trn, kt qua m ta cn nhn duoc sau khi thit k l
cc gi tri cua vector dp ung xung h cua b loc thit k. D ly cc gi tri cua vector
dp ung xung, ta thuc hin nhu sau:
1. Tu cua s SPTool, chon File Export Trong Export list xut hin, chon
Filter: bs2700 [design] ri nhn nt Export to workspace
2. Dng cua s SPTool lai. Mt thng bo xut hin hoi c mun luu lai phin lm
vic hin tai hay khng. Nu mun luu lai, chon Save.
3. Mo cua s Workspace cua MATLAB, ta s thy trong workspace s xut hin
bin moi l bs2700. Dy chnh l b loc m ta d thit k trong SPTool v xut ra
workspace cua MATLAB. Bin ny duoc luu duoi dang mt cu trc m ta b
loc d thit k. Nhn dp chut vo tn bin bs2700 trong workspace, ta s thy
duoc cc field cua cu trc ny nhu sau:
Ti liu th nghim Xu l s tn hiu
6


Hnh 4. Cc field cua bs2700
4. Trong cc field ny, field tf th hin hm truyn cua b loc. Field ny cung l mt
cu trc gm 2 field: tf.num v tf.den th hin tuong ung cc h s cua da thuc
tu s v da thuc mu s. Di voi b loc FIR, hm truyn chi c tu s v cc h s
cua tu s chnh l dp ung xung cua b loc. Do d, voi b loc trn, cc gi tri cua
vector dp ung xung duoc luu trong bs2700.tf.num. Trong cua s Array Editor
trn, ln luot nhn dp vo field tf ri nhn dp vo num, ta s thy cc h s dp
ung xung cua b loc. D gn cc h s ny vo mt vector h, trong MATLAB c
th dng lnh sau:
>> h = bs2700.tf.num


Hnh 5. Vector dp ng xung cua b lc d thit k

Cc gi tri thu duoc cua vector dp ung xung s duoc su dung d thuc hin b loc s
ln trn kit DSP.

V d 2: Thit k b lc IIR chn dai bng SPTool
Su dung phuong php Elliptic d thit k mt b loc IIR chn dai bc 10, tn s trung
tm 1750Hz. Ch rng MATLAB hin thi bc b loc l 5, biu din s phn bc 2 cua
b loc. (Diu ny dng vi cc b lc IIR thng dai v chn dai)
Ti liu th nghim Xu l s tn hiu
7

Cc thng s cua b loc ny nhu sau.
Tan so ct: 1700 Hz v 1800 Hz
o gon dai thng v dai chn tuong ung l 1 dB v 60 dB
Tan so lay mau: 8000 Hz

Thuc hin tuong tu nhu v du trn, luu b loc thit k voi tn bs1750 v xut ra
workspace. Trong workspace s c mt cu trc tn l bs1750. Cc h s tu s v mu
s cua hm truyn duoc luu tuong ung trong cc bin bs1750.tf.num v bs1750.tf.den.


Hnh 6. Dp ng tn s cua b lc IIR d thit k

Dang cuc zero cua mt hm truyn H(z) nhu sau:
( )( ) ( )
( )( ) ( )
m
n
p z p z p z
z z z z z z
k z H


=
...
...
) (
2 1
2 1

Hm truyn trn c th duoc vit lai nhu sau:
( )

=


=
+ +
+ +
= =
L
k k k
k k k
L
k
k
z a z a
z b z b b
g z H g z H
1
2
2
1
1
2
2
1
1 0
1
1
) (
Voi L l s nguyn gn nht lon hon cuc dai cua n/2 v m/2.
Trong MATLAB, cc phn bc 2 cua H(z) duoc luu trong 1 ma trn nhu sau:
Ti liu th nghim Xu l s tn hiu
8

=
L L L L L
a a b b b
a a b b b
a a b b b
sos
2 1 2 1 0
22 12 22 12 02
21 11 21 11 01
1
1
1


Tu cc h s tu v mu o trn, ta s chuyn thnh dang cc phn bc hai bng cc lnh
sau:

>> [z,p,k] = tf2zp(bs1750.tf.num, bs1750.tf.den)
>> sos = zp2sos(z,p,k)
Cc phn tu cua ma trn sos ny s duoc su dung d thuc hin b loc IIR ny ln kit
DSP.
1.2 Thit k b lc bng lnh cua MATLAB
Bn canh vic su dung cng cu SPTool d thit k b loc nhu trn, MATLAB cung c
mt s lnh c th su dung d thit k b loc. Cc lnh ny c th duoc su dung khi
thit k mt s loai b loc m SPTool khng c sn, v du nhu cc b loc multiband.

V d 1: Thit k b lc FIR multiband bng cc lnh MATLAB
Trong v du ny, chng ta s thit k mt b loc FIR multiband gm 63 h s. Tn s
ly mu l 10 kHz. Chng ta su dung hm remez cua MATLAB. Hm remez su dung
giai thut Parks McClellan dua trn giai thut Remez v l thuyt xp xi Chebyshev.
B loc cn thit k c dp ung tn s nhu sau:
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
0
0.2
0.4
0.6
0.8
1
1.2

Hnh 7. Dp ng tn s cua b lc multiband FIR cn thit k

B loc mong mun c 2 dai thng, duoc biu din boi 5 dai nhu sau:
Dai Tn s (Hz) Tn s chun ha f/F
N
Bin d
1 0 500 0 0.1 0
Ti liu th nghim Xu l s tn hiu
9

2 600 900 0.12 0.18 1
3 1000 1500 0.2 0.3 0
4 1600 1900 0.32 0.38 1
5 2000 5000 0.4 1 0
Trong d F
N
l tn s Nyquist, bng tn s ly mu.
Chng ta vit mt file .m d thit k b loc ny, luu lai voi tn multibandfir63.m
Ni dung cua file ny nhu sau:
%multibandfir63.m: Multiband FIR filter with 63 coefficients
f = [0 0.1 0.12 0.18 0.2 0.3 0.32 0.38 0.4 1];
m = [0 0 1 1 0 0 1 1 0 0];
n = 63;
cof = remez(n-1,f,m);

% frequency response with 256 points
[h w] = freqz(cof,1,256);
% plot magnitude of the filter
plot(5000*f,m);
figure;
plot(w/pi,abs(h));

Trong doan chuong trnh trn, c mt s luu :
- Dng lnh cof = remez(n-1,f,m) tra v vector h s cua b loc FIR bc n 1, voi
f v m xc dinh cc dai tn s theo bang o trn.
- Lnh freqz d tnh dp ung tn s cua b loc
- Lnh plot thu nht v dp ung tn s mong muon dua trn f v m.
- Lnh figure tao ra mt cua s moi v lnh plot thu hai v dp ung tn s cua b
loc d thit k duoc ln cua s moi ny.
O dy, kt qua cua qu trnh thit k m ta cn nhn duoc chnh l cc h s chua trong
bin cof. Chng duoc su dung khi thuc hin b loc ln trn kit DSP.
V d 2: Thit k b lc IIR multiband bng cc lnh cua MATLAB
Trong th nghim ny, chng ta thit k mt b loc IIR multiband c dp ung mong
mun nhu b loc o v du 1. Tn s ly mu cung l 10 kHz.
Cc buoc thit k ging nhu trn voi ni dung file multibandiir63.m dng d thit k
nhu sau:
%multibandiir63.m: Multiband IIR filter with 63
coefficients
f = [0 0.1 0.12 0.18 0.2 0.3 0.32 0.38 0.4 1];
m = [0 0 1 1 0 0 1 1 0 0];
n = 63;
[num, den] = yulewalk(n-1,f,m);

% frequency response with 256 points
[h w] = freqz(num,den,256);
Ti liu th nghim Xu l s tn hiu
10

% plot magnitude of the filter
plot(5000*f,m);
figure;
plot(w/pi,abs(h));

Trong doan chuong trnh trn, luu :
- Lnh remez duoc thay bng lnh yulewalk dng d thit k b loc IIR. Lnh ny
tra v cc h s cua tu s v mu s cua hm truyn b loc, duoc chua tuong ung
trong bin num v den.
- Lnh freqz duoc sua di d v dp ung tn s cua b loc IIR d thit k.
Cc gi tri cua num v den duoc su dung khi cn thuc hin b loc ny ln kit DSP.
Ti liu th nghim Xu l s tn hiu
11

BI 2: SU DJNG KIT XU L S C6713 DSK (DSP STARTER KIT)
1.3 Kit C6713 DSK
Kit DSK l mt h thng DSP hon chinh. Board DSK bao gm b xu l s du chm
dng C6713 v b codec 32 bit stereo TLV320AIC23 (AIC23) d xut nhp. B codec
onboard AIC23 su dung k thut sigma delta d bin di A/D v D/A. N duoc kt
ni voi mt dng h h thng 12 MHz. Tn s ly mu c th thay di tu 8 dn 96
KHz.
Board DSK bao gm 16MB SDRAM v 256kB Flash memory. Bn jack cm trn boad
cho php xut nhp: MIC IN (microphone input), LINE IN (line input), LINE OUT
(line output) v HEADPHONE (headphone output). Trang thi cua 4 dip switch trn
DSK c th doc duoc tu chuong trnh. DSK hoat dng o tn s 225 MHz. Trn board
DSK cung bao gm cc n p cung cp 1.26V cho nhn C6713 v 3.3V cho b nho v
cc ngoai vi.
B xu l TMS320C6713 dua trn kin trc VLIW (very-long-instruction-word), ph
hop cho cc giai thut nng v tnh ton s. B nho chuong trnh ni duoc t chuc d
mi chu ky c th nap 8 lnh (instruction), mi instruction di 32 bit.
Cc b xu l C67xx (v du C6701, C6711 v C6713) thuc v ho cc b xu l C6x du
chm dng, trong khi d C62xx v C64xx thuc v ho cc b xu l C6x du chm tinh.
C6713 c th xu l ca du chm dng v du chm tinh.

Hnh 8. So d khi cua DSK
1.4 Code Composer Studio (CCS)
CCS l mt mi truong pht trin tch hop (IDE). CCS cung cp cc cng cu sinh m,
nhu mt b bin dich C, mt chuong trnh assembler v mt chuong trnh linker. N c
kha nng d hoa v h tro real-time debug. N cung cp mt cng cu phn mm thun
tin cho vic xy dung v sua li chuong trnh.
Trnh dich C s dich chuong trnh ngun vit bng C (tp tin c kiu .c) d tao thnh
mt tp tin ngun assembly (kiu .asm). Trnh assembler s tao ra cc tp tin di tuong
ngn ngu my (.obj) tu cc tp tin .asm. Trnh linker s kt hop cc tp tin di tuong v
cc thu vic di tuong d tao ra mt tp tin thuc thi voi kiu .out. Tp tin thuc thi ny
c th duoc nap v chay truc tip trn b xu l C6713.
Ti liu th nghim Xu l s tn hiu
12

D tao mt project, nguoi dng c th thm vo cc tp tin ph hop. Cc ty chon v
compiler/linker c th xc dinh d dng. Mt s tnh nng debug c sn, nhu dt cc
breakpoint v xem cc bin; xem b nho, cc thanh ghi v trn C voi assembly code;
cc kt qua d hoa; v theo di thoi gian thuc thi.
Chng ta s lm vic voi mt vi kiu tp tin khc nhau, bao gm:
1. file.pjt: d tao v xy dung mt project c tn l file
2. file.c: chuong trnh ngun vit bng C
3. file.asm: chuong trnh ngun bng ngn ngu assembly, duoc tao boi nguoi dng
hoc boi b dich C.
4. file.h: tp tin header
5. file.lib: tp tin thu vin
6. file.cmd: tp tin lnh cua linker, nh xa cc section vo b nho
7. file.obj: tp tin di tuong duoc tao ra boi assembler
8. file.out: tp tin thuc thi duoc tao ra boi linker d nap v chay trn b xu l C6713
1.5 Cc tp tin h tr
Cc tp tin h tro sau duoc chua trong folder
C:\CCStudio_v3.1\myprojects\source\support (tru cc tp tin thu vin) duoc su dung
trong hu ht cc bi th nghim.
1. C6713dskinit.c: chua cc hm khoi dng DSK, codec, cc cng ni tip v d
xut nhp. Tp tin ny khng duoc bao gm voi CCS.
2. C6713dskinit.h: tp tin header chua cc prototype cua cc hm.
3. C6713dsk.cmd: Tp tin lnh linker. Tp tin ny c th duoc sua di khi su dung
b nho ngoi thay cho b nho trong.
4. vectors_intr.asm: mt tp tin vector bao gm trong CCS d duoc sua di d quan
l ngt. C 12 ngt, tu INT4 dn INT15, v ngt 11 duoc chon trong tp tin ny.
Chng duoc dng cho cc chuong trnh c su dung ngt.
5. vectors_poll.asm: tp tin vector cho cc chuong trnh hoi vng (polling)
6. rts6700.lib, dsk6713bsl.lib, csl6713.lib: Tp tin thu vin h tro run time, board
v chip. Cc tp tin ny duoc cung cp voi CCS v duoc chua trong cc folder
C6000\cgtools\lib, C6000\dsk6713\lib v C6000\csl\lib mt cch tuong ung.
(Thu muc C6000 nm trong thu muc ci dt cua CCS, mc dinh l
C:\CCStudio_v3.1\)
1.6 Cc v d lp trnh trn DSK
Sau dy l mt s v du lp trnh d minh hoa cho mt s dc tnh cua CCS v board
DSK. Muc tiu chnh l d lm quen voi cc cng cu phn mm v phn cung.
V d 1: To tn hiu hnh sine
V du ny tao ra mt tn hiu hnh sine bng phuong php tra bang. Quan trong hon, n
minh hoa vi dc tnh cua CCS trong hiu chinh, xy dung mt project, su dung cc
cng cu sinh m v chay mt chuong trnh trn b xu l C6713. Chuong trnh ngun
tone.c thuc hin vic tao sng sine c ni dung nhu duoi dy.
#include "tonecfg.h"

/*
Ti liu th nghim Xu l s tn hiu
13

* The 6713 DSK Board Support Library is divided into several
modules, each
* of which has its own include file. The file dsk6713.h must be
included
* in every program that uses the BSL. This example also includes
* dsk6713_aic23.h because it uses the AIC23 codec module.
*/
#include "dsk6713.h"
#include "dsk6713_aic23.h"

/* Length of sine wave table */
#define SINE_TABLE_SIZE 96

/* Codec configuration settings */
DSK6713_AIC23_Config config = {
0x0017, // 0 DSK6713_AIC23_LEFTINVOL Left line input channel
volume
0x0017, // 1 DSK6713_AIC23_RIGHTINVOL Right line input channel
volume
0x00d8, // 2 DSK6713_AIC23_LEFTHPVOL Left channel headphone
volume
0x00d8, // 3 DSK6713_AIC23_RIGHTHPVOL Right channel headphone
volume
0x0011, // 4 DSK6713_AIC23_ANAPATH Analog audio path control
0x0000, // 5 DSK6713_AIC23_DIGPATH Digital audio path control
0x0000, // 6 DSK6713_AIC23_POWERDOWN Power down control
0x0043, // 7 DSK6713_AIC23_DIGIF Digital audio interface
format
0x0001, // 8 DSK6713_AIC23_SAMPLERATE Sample rate control
0x0001 // 9 DSK6713_AIC23_DIGACT Digital interface activation
};

/* Pre-generated sine wave data, 16-bit signed samples */
Int16 sinetable[SINE_TABLE_SIZE] = {
0x0000, 0x10b4, 0x2120, 0x30fb, 0x3fff, 0x4dea, 0x5a81, 0x658b,
0x6ed8, 0x763f, 0x7ba1, 0x7ee5, 0x7ffd, 0x7ee5, 0x7ba1, 0x76ef,
0x6ed8, 0x658b, 0x5a81, 0x4dea, 0x3fff, 0x30fb, 0x2120, 0x10b4,
0x0000, 0xef4c, 0xdee0, 0xcf06, 0xc002, 0xb216, 0xa57f, 0x9a75,
0x9128, 0x89c1, 0x845f, 0x811b, 0x8002, 0x811b, 0x845f, 0x89c1,
0x9128, 0x9a76, 0xa57f, 0xb216, 0xc002, 0xcf06, 0xdee0, 0xef4c,
0x0000, 0x10b4, 0x2120, 0x30fb, 0x3fff, 0x4dea, 0x5a81, 0x658b,
0x6ed8, 0x763f, 0x7ba1, 0x7ee5, 0x7ffd, 0x7ee5, 0x7ba1, 0x76ef,
0x6ed8, 0x658b, 0x5a81, 0x4dea, 0x3fff, 0x30fb, 0x2120, 0x10b4,
0x0000, 0xef4c, 0xdee0, 0xcf06, 0xc002, 0xb216, 0xa57f, 0x9a75,
0x9128, 0x89c1, 0x845f, 0x811b, 0x8002, 0x811b, 0x845f, 0x89c1,
0x9128, 0x9a76, 0xa57f, 0xb216, 0xc002, 0xcf06, 0xdee0, 0xef4c
};


/*
Ti liu th nghim Xu l s tn hiu
14

* main() - Main code routine, initializes BSL and generates tone
*/

void main()
{
DSK6713_AIC23_CodecHandle hCodec;
Int16 msec, sample;

/* Initialize the board support library, must be called first */
DSK6713_init();

/* Start the codec */
hCodec = DSK6713_AIC23_openCodec(0, &config);

/* Generate a 1KHz sine wave for 5 seconds */
for (msec = 0; msec < 5000; msec++)
{
for (sample = 0; sample < SINE_TABLE_SIZE; sample++)
{
/* Send a sample to the left channel */
while (!DSK6713_AIC23_write(hCodec, sinetable[sample]));

/* Send a sample to the right channel */
while (!DSK6713_AIC23_write(hCodec, sinetable[sample]));
}
}

/* Close the codec */
DSK6713_AIC23_closeCodec(hCodec);
}
To project
Phn ny s minh hoa cch tao mt project moi, thm cc tp tin cn thit d bin dich
project sine_graph.
1. Trong CCS, chon Project New. Trong hp thoai tao Project, nhp tn project
l sine_graph, chon duong dn: C:\CCStudio_v3.1\Myprojects, Project Type l
Executable (.out), v Target l TMS320C67xx.

Hnh 9. Hp thoi Project Creation
Ti liu th nghim Xu l s tn hiu
15

CCS s tu tao ra mt thu muc tn l sine_graph trong thu muc
C:\CCStudio_v3.1\Myprojects.
2. Sau khi tao project, cn thuc hin cc buoc config nhu sau:
Tao Source file: vo muc File -> New -> Source file
G lai chuong trnh sine_graph.c nhu o trn v luu lai voi tn sine_graph.c tai duong
dn: C:\CCStudio_v3.1\Myprojects\sine_graph

B sung Source file vua tao vo project: Click phai vo Source, chon Add File to Project
Chon duong dan dn file sine_graph.c vua tao.


Tuong tu, ta b sung file dsk6713.gel tai duong dn: C:\CCStudio_v3.1\cc\gel vo
Gel file
V file tone.cdb tai duong dn C:\CCStudio_v3.1\examples\dsk6713\bsl\tone vo
DSP/BIOS Config
Copy file tonecfg.h tai duong dn C:\CCStudio_v3.1\examples\dsk6713\bsl\tone vo
thu muc cua project sine_graph
Chon Project Scan All File Dependencies d CCS tu thm vo cc tp tin header.
Sau khi thuc hin cc buoc trn, cua s Project View s hin thi cc tp tin d duoc
thm vo Project.
Xc d|nh cc ty chn d bin d|ch chuong trnh
Ti liu th nghim Xu l s tn hiu
16

O buoc ny, cc ty chon d CCS dich chuong trnh ngun thnh tp tin thuc thi s
duoc thit lp.
Option -> Customize -> Program/Project Load -> Check: Load Program After Build
Project -> Build Option -> Compiler -> Preprocessor -> Basic -> Target version:
C6710X (mv6710)
Project -> Build Option -> Linker -> Basic -> Output Module: Relocatable
Excutable (-ar)
Project -> Build Option -> Linker -> Basic -> Library Search Path (-i):
$(Install_dir)\c6000\dsk6713\lib
Project -> Build Option -> Linker -> Basic -> Include Libraries (-l): dsk6713bsl.lib
Project -> Build Option -> Compiler -> Preprocessor -> Include Search Path (i):
$(Install_dir)\c6000\dsk6713\include
Project -> Build Option -> Compiler -> Preprocessor -> Pre-Define Symbol (d):
_DEBUG;CHIP_6713

D|ch v chy chuong trnh
Sau khi d thit lp cc ty chon ph hop cho Compiler v Linker, chng ta hy tin
hnh bin dich chuong trnh v nap ln trn kit d chay.
Nhn F7 d Rebuild All v load xung Kit.
Sau d nhn F5 d chay chuong trnh
Cua s Watch window
Cua s Watch Window cho php thay di gi tri cua mt thng s hoc d theo di mt
bin. Trong khi chuong trnh dang chay v DIP Switch 0 dang duoc nhn. (Luu dng
chu DSP RUNNING trn thanh Status cua CCS).
1. Chon View Quick Watch window. Thuong cua s ny hin thi o phn bn
duoi cua CCS. Nhp gain v nhn Add to Watch. Gi tri gain bng 10 (d duoc
dt trong chuong trnh) s xut hin trong cua s Watch.
2. Thay di gain tu 10 thnh 30 trong cua s Watch ri nhn Enter. Dang sng quan
st s thay di khi bin gain thay di gi tri.

Su dng tp tin gain.gel
Trong phn trn chng ta d d cp dn tp tin gain.gel. Tp tin ny tao mt giao din
d cho php thay di bin gain mt cch tuong tc khi chuong trnh dang chay.
1. Truoc ht, cn phai nap tp tin ny vo bng cch chon File Load GEL v mo
tp tin gain.gel. Nhn dp chut ln tp tin ny trong cua s Project View d xem
ni dung cua n.

/*gain.gel Create slider and vary amplitude (gain) of
sinewave*/
menuitem "Sine Gain"
Ti liu th nghim Xu l s tn hiu
17

slider Gain(10,35,5,1,gain_parameter) /*incr by 5,up to
35*/
{
gain = gain_parameter; /*vary gain of sine*/
}
Ni dung cua tp tin gain.gel nhu trn. Trong d, hm slider Gain duoc tao ra d
hin thi thanh truot. Thanh truot ny bt du tu gi tri 10 v kt thc o gi tri 35
v mi muc tng l 5 don vi.
2. Chon GEL Sinde Gain Gain, cua s sau s xut hin cho php thay di gi
tri cua bin gain.

Hnh 10. Cua s slider cho php thay di bin gain
3. Nhn nt mui tn huong ln d tng gain tu 10 dn 15 v quan st dang sng sine
tao ra d thy su thay di.

Thay di tn s cua tn hiu sine to ra
Tn s cua tn hiu sine tao ra c th thay di bng mt trong cc cch sau.
1. Thay di tn s ly mu. Trong tp tin ngun o trn, tn s ly mu fs duoc gn
gi tri l DSK6713_AIC23_FREQ_8KHZ. Gi tri ny l 1 hng s nguyn d
duoc dinh nghia sn. B codec AIC h tro cc tn s ly mu 8, 16, 24, 32, 44.1,
48 v 96kHz. V du, d c tn hiu sine ra c tn s l 2kHz, cn tng tn s ly
mu ln 16kHz bng cch dt fs=DSK6713_AIC23_FREQ_16KHZ.
2. Thay di s dim o trong bang tra, v du cn 4 dim thay v 8 dim v du, {0,
1000, 0, -1000}. Khi d cn thay di kch thuoc cua mang sine_table v gi tri
bin loop. Hy chung minh rng tn s tao ra l f = fs/(s dim).
Hai thanh truot c th duoc su dung d vua thay di gain, vua thay di tn s. Cc tn
s tn hiu khc nhau c th tao ra bng cch thay di bin loop trong chuong trnh (v
du nhu nhay cch mt dim ly mt dim).
Luu rng voi chuong trnh trn sng sine chi duoc tao ra khi DIP Switch 0 duoc
nhn. D su dung mt DIP Switch khc, v du DIP Switch 3, trong chuong trnh phai su
dung cc hm DSK6713_DIP_get(3), DSK6713_LED_on(3) v DSK6713_LED_off(3).

V d 2: To tn hiu sine v v vi CCS
V du ny cung tao ra mt tn hiu sine voi 8 dim nhu trong v du 1 nhung n minh
hoa kha nng v dang sng trong min thoi gian v min tn s cua CCS. Chuong trnh
chnh sine8_buf.c c ni dung nhu sau:

//sine8_buf Sine generation. Output buffer plotted within CCS
#include "dsk6713_aic23.h" //codec-DSK support file
Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; //set sampling rate
Ti liu th nghim Xu l s tn hiu
18

int loop = 0; //table index
short gain = 10; //gain factor
short sine_table[8]={0,707,1000,707,0,-707,-1000,-707};
short out_buffer[256]; //output buffer
const short BUFFERLENGTH = 256; //size of output buffer
int i = 0; //for buffer count
interrupt void c_int11() //interrupt service routine
{
output_sample(sine_table[loop]*gain); //output sine values
out_buffer[i] = sine_table[loop]*gain; //output to buffer
i++; //increment buffer count
if(i==BUFFERLENGTH) i=0; //if @ bottom reinit count
if (++loop > 7) loop = 0; //check for end of table
return; //return from interrupt
}
void main()
{
comm_intr(); //init DSK, codec, McBSP
while(1); //infinite loop
}

Trong chuong trnh ny, mt vng dm out_buffer c kch thuoc 256 duoc su dung d
luu lai cc du liu xut ra.
Trong hm main, comm_intr duoc goi. Hm ny nm trong c6713dskinit.c d h tro
chuong trnh c dng ngt. Pht biu while(1) trong hm main tao mt vng lp v han
d cho ngt xay ra. Khi c xung ly mu, ngt 11 xay ra v trnh phuc vu ngt (ISR
interrupt service routine) c_int11 duoc goi. Dia chi cua ISR ny duoc xc dinh trong
tp tin vectors_intr.asm voi mt chi dn r nhnh dn dia chi ny, su dung vector ngt
INT11.
Trong ISR ny, hm output_sample, chua trong tp tin c6713dskinit.c, duoc goi d xut
ra du liu du tin trong sine_table. Chi s loop duoc tng cho dn ht bang ri lp lai
tu 0. Mt b dm ra duoc tao d giu 256 (xc dinh boi BUFFERLENGTH) mu tn
hiu sine xut ra.

Xy dng chuong trnh
Hy tao project sine8_buf.pjt v thm cc tp tin cn thit nhu trong v du 1. Luu rng
chuong trnh ny su dung ngt nn tp tin vectors_intr.asm duoc su dung thay cho tp
tin vectors_polls.asm. Tp tin sine8_buf.c duoc chua trong thu muc
C:\CCStudio_v1.3\myprojects\source\project_2.
Xc lp cc ty chon nhu trong v du 1 v dich chuong trnh. Nap v chay chuong trnh
trn kit v kim tra rng c mt sng sine 1KHz duoc tao ra.



V vi CCS
B dm ra duoc cp nht lin tuc mi 256 dim. Sau dy CCS s duoc su dung d v
du liu ra hin tai chua trong b dm out_buffer.
Ti liu th nghim Xu l s tn hiu
19

1. Chon View Graph Time/Frequency. Thay di cc ty chon trong cua s
Graph Property Dialog nhu sau d v trong min thoi gian. Dia chi bt du cua b
dm chnh l tn mang out_buffer duoc nhp vo Start Address. Cc ty chon
khc c th d nhu mc dinh.

Hnh 11. Cc ty chn d v trong min thi gian
2. D v trong min tn s, chon cc ty chon nhu trong hnh sau. Chon bc cua
FFT (FFT Order ) sao cho FFT Framesize = 2
order
.

Hnh 12. Cc ty chn d v trong min tn s


Kt qua v duoc th hin trn hnh sau:
Ti liu th nghim Xu l s tn hiu
20


Hnh 13. Kt qua v bng CCS ca trong min tn s v trong min thi gian
Ti liu th nghim Xu l s tn hiu
21

BI 3: THJC HIJN CC B LC FIR TRN KIT C6713 DSK
1. Mc dch th nghim
1. Hiu r cc buoc tu thit k dn hin thuc b loc FIR ln trn mt kit DSP.
2. H thng lai cc l thuyt d hoc.
2. Thit b| th nghim
STT Tn thit b| S lung
01 My vi tnh 01
02 Kit C6713 DSK 01
03 My pht song 01
04 B dy ni tn hiu 01
3. Gii thiu
Loc l mt trong nhung hoat dng xu l tn hiu quan trong. Mt b loc tuong tu hoat
dng trn cc tn hiu lin tuc v thuong duoc thuc hin voi cc linh kin nhu khuch dai
thut ton, cc din tro v cc tu din. Mt b loc s hoat dng trn tn hiu thoi gian roi
rac v c th thuc hin voi mt b xu l s tn hiu nhu ho TMS320C6x. Qu trnh loc
bao gm su dung mt b bin di A/D d nhn tn hiu vo, xu l cc mu vo ri gui
kt qua ra thng qua mt b bin di D/A.
Cc b loc s c rt nhiu uu dim so voi cc b loc tuong tu. Cc uu dim ny bao gm
d tin cy cao hon, d chnh xc cao hon v t nhay voi nhit d v tui doi. Cc dc tnh
loc nhu tn s trung tm, bng thng v loai b loc c th thay di d dng. Mt s cng
cu c sn cho vic thit k v thuc hin cc b loc s mt cch nhanh chng trn kit
TMS320C6x.
4. Co so l thuyt
B loc FIR nhn qua bc M c dp ung xung h = [h
0
, h
1
, , h
M
] (chiu di bng M + 1)
Ng ra cua b loc duoc xc dinh theo cng thuc tch chp:

= =
m m
m n h m x m n x m h n y ) ( ) ( ) ( ) ( ) (
trong d x(n) l ng vo cua b loc.
Hm truyn cua b loc duoc xc dinh tu bin di Z cua h(n):
M
M
M
n
n
z h z h h z n h z H

=

+ + + = =

... ) ( ) (
1
1 0
0

trong d cc h s cua hm truyn chnh l dp ung xung h cua b loc.
B loc FIR c th thit k bng nhiu phuong php, trong d phuong php don gian nht
l phuong php cua s.
B loc c th duoc thuc hin bng hai phuong php: Phuong php xu l khi v phuong
php xu l mu. Voi phuong php xu l mu, b loc c th duoc thuc hin dang truc tip
nhu sau:
Ti liu th nghim Xu l s tn hiu
22


Hnh 14. Thc hin b lc FIR dng trc tip
Nu dt cc bin trang thi
v
0
(n) = x(n)
v
1
(n) = x(n 1)

v
M
(n) = x(n M)
Ta s c giai thut xu l mu ung voi so d khi trn nhu sau:
Voi mi mu vo x:
v
0
= x

=
=
M
0 k
k k
v h y
v
M
= v
M-1


v
1
= v
0
5. Chun b| th nghim
1. Cho mt b loc FIR c dp ung xung h = [1; -2; -3; -4]. Hy xc dinh:
a. Bc b loc
b. Phuong trnh sai phn I/O cua b loc
c. So d khi thuc hin dang truc tip v giai thut xu l mu.
2. Trnh by tm tt cc buoc thit k mt b loc FIR bng SPTool cua MATLAB. C
my phuong php thit k b loc FIR trong SPTool? Hy lit k.
3. Th no l mt b loc multiband? Thu pht hoa dp ung tn s cua mt b loc
multiband? C th dng MATLAB d thit k mt b loc FIR multiband hay khng?
4. Tm tt cc buoc s lm d thuc hin cc phn th nghim sau.
Ti liu th nghim Xu l s tn hiu
23

6. Tin hnh th nghim
6.1 Thc hin b lc FIR
Truoc ht, hy thuc hin theo tung buoc v du don gian sau. Sau d, hy tu thuc hin
cc b loc FIR khc theo yu cu.

V d : Thit k mot bo loc FIR thng thap bac 88 voi tan so ct 2.5 kHz, tan so lay
mau 8 kHz. Thuc hin n trn kit C6713 DSK. Kim chung bo loc d thuc hin.

Trong v du ny c 3 phn chnh cn phai thuc hin:
1. Thit k b loc FIR: kt qua cua phn ny l c duoc dp ung xung h(n) cua b
loc.
2. Thuc hin b loc ln trn kit C6713 DSK: Su dung dp ung xung thu duoc tu
phn thit k, vit chuong trnh thuc hin mach loc ln kit. Chuong trnh s doc
tung mu du liu vo v tin hnh giai thut xu l mu d tnh ng ra.
3. Kim tra b loc d thuc hin: Trong phn ny, b loc d thuc hin trn kit s
duoc kim tra xem c dp ung yu cu dt ra hay khng. Chng ta s su dung
mt my pht sng d tao tn hiu ng vo v quan st tn hiu ng ra cua b loc
khi thay di tn hiu ng vo.

Thit k b lc
1. Su dung cng cu SPTool trong MATLAB d thit k b loc trn voi phuong php
Least Squares FIR.
2. Luu b loc d thit k voi tn l lp2500 ri xut ra workspace cua MATLAB.

Thc hin b lc
B loc ny duoc thuc hin trn kit bng chuong trnh sau (vit bng ngn ngu C)

//Fir.c FIR filter. Include coefficient file with length N
#include "coefficients.h" //coefficient file
#include "dsk6713_aic23.h" //codec-dsk support file

Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; //set sampling rate
int yn = 0; //initialize filter's output
short dly[N]; //delay samples

interrupt void c_int11() //ISR
{
short i;
dly[0]=input_sample(); //input newest sample
yn = 0; //initialize filter's output
for (i = 0; i< N; i++)
yn += (h[i] * dly[i]); //y(n) += h(i)* x(n-i)
for (i = N-1; i > 0; i--) //starting @ end of buffer
Ti liu th nghim Xu l s tn hiu
24

dly[i] = dly[i-1]; //update delays with data move
output_sample(yn >> 15); //scale output filter sample
return;
}

void main()
{
comm_intr(); //init DSK, codec, McBSP
while(1); //infinite loop
}

Trong chuong trnh ny, N l chiu di cua dp ung xung cua b loc ( bng M + 1 voi
M l bc cua b loc) v dp ung xung cua b loc l mang h c kch thuoc N. Gi tri cua
N v vector h duoc khai bo trong tp tin coefficients.h. Tp tin ny duoc gp vo nho
chi dn #include. Nhu vy, khi mun thay di b loc, chi cn thay di ni dung cua tp
tin coefficients.h.
Chuong trnh trn c su dung ngt. Khi c c xung ly mu (tn s chon o dy l
8KHz), trnh phuc vu ngt c_int11 duoc goi, doc mu vo v thuc hin giai thut xu l
mu d tnh ng ra.
Do cc h s cua dp ung xung nhn duoc tu qu trnh thit k l kh nho, chng ta s
nhn n voi 2
15
. Mu ra sau khi xu l duoc chia lai cho 2
15
bng cch dich phai 15 bit
(trong hm output_sample(yn >> 15)). Vic nhn cc h s voi 2
15
cung l do b xu l
s luong tu ha cc h s voi mt s luong bit huu han v vic nhn ln s giam di sai
s.
Tm lai, cc buoc d thuc hin b loc ln kit nhu sau:
1. Ly cc h s cua hm truyn cua b loc, nhn voi h s ti l 2
15

>> cof = round(lp2500.tf.num*2^15)
2. Nu cua s workspace cua MATLAB chua hin thi, hy mo n ln. Trong
workspace, nhn dp chut vo tn bin cof d mo cua s Array Editor.
3. Mo CCS (nho mo ngun cua DSK truoc khi mo CCS).
4. Mo tp tin project (d duoc tao sn) FIR.pjt trong
C:\CCStudio_v3.1\myprojects\FIR.
5. Trong cua s Project View, tab File View, mo rng phn Include, mo tp tin
coeficients.h.
6. Dt cc h s cua b loc vua thit k vo trong tp tin ny. (C th copy v paste
tu cua s Array Editor trn). Diu chinh gi tri N cho dng voi chiu di dp ung
xung. Luu rng cc gi tri cua dp ung xung cch nhau bng mt du phy (,).
Luu tp tin sau khi sua di.
7. Xc lp cc ty chon ph hop (xem phn huong dn su dung trong ti liu ny)
ri tin hnh bin dich chuong trnh. Sau khi dich thnh cng, hy nap chuong
trnh ln trn kit v chay chuong trnh.

Dnh gi kt qua thc hin
1. Hy thu xem dp ung tn s cua b loc vua thuc hin bng cch su dung cng cu
v trong min tn s cua CCS. Chon View Graph Time/Frequency. Chon
Ti liu th nghim Xu l s tn hiu
25

Display Type l FFT Magnitude v Start Address l dia chi bt du cua vector
dp ung xung, tuc l tn mang h.
2. Mo ngun cua my pht sng. Tao mt tn hiu hnh sine tu my pht sng v
quan st dang sng ng ra. Thay di tn s cua tn hiu vo v hy xc dinh tn s
ct 3-dB cua b loc.

Sau khi d thuc hin v du trn, hy p dung nhung g d hoc d thuc hin cc th
nghim sau. Voi mi bi th nghim, hy dua dp ung tn s cua b loc vo trong bi
bo co.
(Huong dan: nu sao chp thu muc FIR d c thnh mot thu muc voi tn khc v thuc
hin trn thu muc moi ny ung voi tung bo loc).
1. Thit k mt b loc FIR chn dai bng phuong php Kaiser Window c cc thng
s nhu sau:
a. Chiu di dp ung xung N = 89 (Bc b loc: 88)
b. Tn s ct: 2500 v 2900 Hz.
c. Gi tri cua = 4
d. Tn s ly mu: 8 kHz.
Thuc hin b loc ln trn kit v kim tra kt qua.
2. Thit k b loc FIR thng dai bng phuong php Kaiser Window voi cc thng
s nhu sau:
a. Chiu di dp ung xung: 81
b. Tn s ct: 1500 v 2000 Hz.
c. Gi tri cua = 5
d. Tn s ly mu: 8 kHz.
Thuc hin b loc v kim tra kt qua.
3. Thuc hin v thit k b loc thng cao sau bng phuong php Kaiser Window.
Sau d, cho mt tn hiu xung vung tn s 1 kHz vo v hin thi tn hiu ra. Giai
thch kt qua. Cc thng s cua b loc nhu sau:
a. Chiu di dp ung xung: 81
b. Tn s ct: 2200 Hz.
c. Gi tri cua = 4
d. Tn s ly mu: 8 kHz.
6.2 Mt b lc FIR multiband
Hy thit k v thuc hin ln kit C6713 DSK mt b loc FIR multiband voi hai dai
thng c tn s trung tm ln luot l 2500 v 3500 Hz. Bng thng cua mi dai thng l
500 Hz. Tn s ly mu l 8 kHz.
1. V dp ung tn s cua b loc.
2. Tao mt sng vung voi tn s 800 Hz o du vo cua b loc. Hin thi dang sng v
ph cua ng ra. Giai thch tai sao c dang ph ny?
3. Thay di tn s cua tn hiu vo. Quan st ph ng ra. Giai thch su thay di.
4. V ph cua tn hiu ng ra khi tn s cua tn hiu vo l 0.5kHz, 1kHz v 1.5kHz.
Giai thch?

Ti liu th nghim Xu l s tn hiu
26

BI 4: THJC HIJN CC B LC IIR TRN KIT C6713 DSK
1. Mc dch th nghim
1. Hiu r cc buoc tu thit k dn hin thuc b loc IIR ln trn mt kit DSP.
2. H thng lai cc l thuyt d hoc.
2. Thit b| th nghim
STT Tn thit b| S lung
01 My vi tnh 01
02 Kit C6713 DSK 01
03 My pht song 01
04 B dy ni tn hiu 01
3. Gii thiu
Loc l mt trong nhung hoat dng xu l tn hiu quan trong. Mt b loc tuong tu hoat
dng trn cc tn hiu lin tuc v thuong duoc thuc hin voi cc linh kin nhu khuch dai
thut ton, cc din tro v cc tu din. Mt b loc s hoat dng trn tn hiu thoi gian roi
rac v c th thuc hin voi mt b xu l s tn hiu nhu ho TMS320C6x. Qu trnh loc
bao gm su dung mt b bin di A/D d nhn tn hiu vo, xu l cc mu vo ri gui
kt qua ra thng qua mt b bin di D/A.
Cc b loc s c rt nhiu uu dim so voi cc b loc tuong tu. Cc uu dim ny bao gm
d tin cy cao hon, d chnh xc cao hon v t nhay voi nhit d v tui doi. Cc dc tnh
loc nhu tn s trung tm, bng thng v loai b loc c th thay di d dng. Mt s cng
cu c sn cho vic thit k v thuc hin cc b loc s mt cch nhanh chng trn kit
TMS320C6x.
4. Co so l thuyt
Hy xem xt mt phuong trnh I/O tng qut c dang:
) ( ) 2 ( ) 1 (
) ( ) 2 ( ) 1 ( ) (
) ( ) ( ) (
2 1
2 1 0
0 1
M n y b n y b n y b
N n x a n x a n x a n x a
j n y b k n x a n y
M
N
N
k
M
j
j k

+ + + + =
=

= =


Dang phuong trnh d quy ny biu din mt b loc IIR. Ng ra y(n) o thoi dim y(n)
khng chi phu thuc vo ng vo hin tai x(n) o thoi dim n v cc ng vo trong qu
khu x(n 1),
x(n 2), , x(n N), m cn phu thuc vo cc ng ra truoc d y(n 1), y(n 2), ,
y(n M).
Nu chng ta gia su cc diu kin ban du du bng 0, bin di Z phuong trnh trn s
cho:
) ( ) ( ) (
) ( ) ( ) ( ) ( ) (
2
2
1
1
2
2
1
1 0
z Y z b z Y z b z Y z b
z X z a z X z a z X z a z X a z Y
M
M
N
N



+ + + + =


Ti liu th nghim Xu l s tn hiu
27

Khi N = M, hm truyn H(z) l
) (
) (
1 ) (
) (
) (
2
2
1
1
2
2
1
1 0
z D
z N
z b z b z b
z a z a z a a
z X
z Y
z H
N
N
N
N
=
+ + +
+ + +
= =


trong d N(z) v D(z) biu din da thuc tu s v da thuc tu s cua hm truyn. Nhn v
chia cho z
N
, H(z) tro thnh:

=
+ + +
+ + +
=
N
i i
i
N
N N N
N
N N N
p z
z z
C
b z b z b z
a z a z a z a
z H
1
2
2
1
1
2
2
1
1 0
) (


Dy l mt hm truyn voi N zero v N cuc. Nu tt ca cc h s b
j
bng 0, hm truyn
ny tro thnh hm truyn cua mt b loc FIR. D h thng n dinh, tt ca cc cuc phai
nm trong vng trn don vi.
Cc b loc IIR c th duoc thuc hin theo cc cu trc sau:
1. Dng trc tip 1

Hnh 15. Thc hin b lc IIR dng trc tip 1
Khi thuc hin o dang ny, mt b loc bc N cn dng 2N khi lm tr.
2. Dng trc tip 2 (Dng chnh tc)
Dy l mt trong nhung cu trc thuong duoc su dung. N chi cn mt nua s khi
tr so voi dang truc tip 1.
Dt
) (
) (
) (
z D
z X
z U = trong d D(z) l mu s cua hm truyn b loc IIR.
Khi d:
N
N
z a z a z a a z U
z U z N z X
z D
z N
z Y

+ + + =
= =

2
2
1
1 0
)( (
) ( ) ( ) (
) (
) (
) (

voi N(z) l tu s cua hm truyn.
V:
) 1 )( ( ) ( ) ( ) (
2
2
1
1
N
N
z b z b z b z U z D z U z X

+ + + = =
Bin di Z nguoc ta s c:
Ti liu th nghim Xu l s tn hiu
28

) ( ) 2 ( ) 1 ( ) ( ) (
) ( ) 2 ( ) 1 ( ) ( ) (
2 1 0
2 1
N n u a n u a n u a n u a n y
N n u b n u b n u b n x n u
N
N
+ + + + =
=


Thuc hin duoi dang so d khi:

Hnh 16. Thc hin b lc IIR dng trc tip 2
3. Dng trc tip 2 chuyn v|
Dang truc tip 2 chuyn vi l mt bin th cua dang truc tip 2 v cn cng s khi
tr. Cc buoc sau chuyn mt b loc tu dang truc tip 2 sang dang chuyn vi:
a. Dao huong tt ca cc nhnh
b. Di du vo voi du ra
c. V lai so d sao cho du vo o bn tri v du ra o bn phai

Hnh 17. Thc hin b lc IIR dng trc tip 2 chuyn v|

4. Dng cascade cc tng bc 2
Hm truyn trn c th duoc phn tch thnh tch cc hm truyn bc 1 hoc bc 2
nhu sau:
) ( ) ( ) ( ) (
2 1
z H z H z CH z H
r
=
Cu trc ni tip (cascade) ny duoc v nhu sau:
Ti liu th nghim Xu l s tn hiu
29


Hnh 18. Cu trc cascade cua b lc IIR
Hm truyn ton b c th duoc biu din bng su ghp cascade cc hm truyn. Di
voi mi phn, dang truc tip 2 hoc chuyn vi cua n c th duoc su dung. Hm
truyn H(z) duoi dang cascade cc hm truyn bc hai c th vit nhu sau:

=


+ +
+ +
=
2 /
1
2
2
1
1
2
2
1
1 0
1
) (
N
i i i
i i i
z b z b
z a z a a
z H
Hnh sau v mt b loc IIR bc 4 duoi dang cascade cua hai phn bc 2.

Hnh 19. B lc IIR bc 4 vi 2 phn bc 2 dng trc tip 2

5. Dng song song
Hm truyn b loc IIR cung c th duoc biu din nhu sau (bng phuong php khai
trin phn s tung phn):
) ( ) ( ) ( ) (
2 1
z H z H z H C z H
r
+ + + =
Cu trc song song ny c th v nhu sau:

Hnh 20. Cu trc song song cua b lc IIR
Ti liu th nghim Xu l s tn hiu
30

5. Chun b| th nghim
1. Trnh by tm tt cc buoc thit k mt b loc IIR bng SPTool cua MATLAB. C
my loai b loc IIR trong SPTool? Hy lit k.
2. Hy phn bit dc dim cua dp ung tn s cua cc loai b loc Butterwork,
Chebyshev 1, Chebyshev 2 v Elliptic.
3. Cho mt h thng c hm truyn nhu sau:
2 2
25 . 0 1
4
25 . 0 1
5
) (

+
=
z z
z H
a. Hy v cch thuc hin dang truc tip (direct form) cua h thng.
b. Hy v cch thuc hin dang chnh tc (canonical form) cua h thng.
c. Hy v cch thuc hin dang ghp ni tip cc tng bc hai (cascade form) cua
h thng.
4. Tm tt cc buoc s lm d thuc hin cc phn th nghim sau.
6. Tin hnh th nghim
6.1 Thc hin b lc IIR dng ghp cascade cc tng bc 2
Trong th nghim ny, chng ta s thuc hin mt b loc IIR trn kit C6713 DSK, su
dung cu trc ghp cascade cc phn bc 2. Chng ta su dung phuong trnh sau ung voi
mi tng:
) ( ) 2 ( ) 1 ( ) ( ) (
) ( ) 2 ( ) 1 ( ) ( ) (
2 1 0
2 1
N n u a n u a n u a n u a n y
N n u b n u b n u b n x n u
N
N
+ + + + =
=


Truoc ht, hy thuc hin theo tung buoc v du don gian sau. Sau d, hy tu thuc hin
cc b loc IIR khc theo yu cu.

V d : Thit k mot bo loc IIR chn dai bac 10 bng phuong php Elliptic voi tan so
trung tm 1750 Hz, tan so lay mau 8 kHz, tan so ct 1700 v 1800 Hz, do gon dai chn
v dai thng tuong ung l 60dB v 1dB. Thuc hin n trn kit C6713 DSK dang ghp
cascade cc phan bac 2. Kim chung bo loc d thuc hin.

Trong v du ny c 3 phn chnh cn phai thuc hin:
1. Thit k b loc IIR: kt qua cua phn ny l c duoc cc h s cua tu s v mu
s cua hm truyn b loc. Cc h s ny s duoc chuyn thnh mt ma trn trong
d mi hng biu din cho mt tng bc hai (second-order section).
2. Thuc hin b loc ln trn kit C6713 DSK: Su dung kt qua thu duoc tu phn thit
k, vit chuong trnh thuc hin mach loc ln kit. Chuong trnh s doc tung mu
du liu vo v tin hnh giai thut xu l mu d tnh ng ra.
3. Kim tra b loc d thuc hin: Trong phn ny, b loc d thuc hin trn kit s
duoc kim tra xem c dp ung yu cu dt ra hay khng. Chng ta s su dung
mt my pht sng d tao tn hiu ng vo v quan st tn hiu ng ra cua b loc
khi thay di tn hiu ng vo.



Ti liu th nghim Xu l s tn hiu
31

Thit k b lc
1. Su dung cng cu SPTool trong MATLAB d thit k b loc trn voi phuong php
Elliptic. Luu : Di vi b lc IIR chn dai v thng dai, bc duc th hin
trn MATLAB bng s phn bc 2, tc l bng mt nua bc cua b lc thc.
2. Luu b loc d thit k voi tn l bs1750 ri xut ra workspace cua MATLAB.
3. Tu cc h s tu v mu o trn, ta s chuyn thnh dang cc phn bc hai bng cc
lnh sau:
>> [z,p,k] = tf2zp(bs1750.tf.num, bs1750.tf.den)
>> sos = zp2sos(z,p,k)

Ma trn sos trong MATLAB nhu sau:

=
L L L L L
a a b b b
a a b b b
a a b b b
sos
2 1 2 1 0
22 12 22 12 02
21 11 21 11 01
1
1
1


trong d b
0i
, b
1i
, b
2i
l cc h s tu s hm truyn cua phn bc 2 thu i v 1, a
1i
, a
2i
l
cc h s mu s hm truyn cua phn bc 2 thu i.

Thc hin b lc
B loc ny duoc thuc hin trn kit bng chuong trnh sau (vit bng ngn ngu C)
//IIR.c IIR filter using cascaded Direct Form II
//Coefficients a's and b's correspond to b's and a's from MATLAB
#include "DSK6713_AIC23.h" //codec-DSK support file
Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; //set sampling rate
#include "coefficients.h" //BS @ 1750 Hz coefficient file
short dly[stages][2] = {0}; //delay samples per stage
interrupt void c_int11() //ISR
{
short i, input;
int un, yn;
input = input_sample(); //input to 1st stage
for (i = 0; i < stages; i++) //repeat for each stage
{
un=input-((b[i][0]*dly[i][0])>>15)-
((b[i][1]*dly[i][1])>>15);
yn=((a[i][0]*un)>>15)+((a[i][1]*dly[i][0])>>15)+
((a[i][2]*dly[i][1])>>15);
dly[i][1] = dly[i][0]; //update delays
dly[i][0] = un; //update delays
input = yn; //intermed out->in to next stage
}
output_sample((short)yn); //output final result for time n
return; //return from ISR
}
Ti liu th nghim Xu l s tn hiu
32

void main()
{
comm_intr(); //init DSK, codec, McBSP
while(1); //infinite loop
}
Trong chuong trnh ny, stages l s tng cua b loc (s phn bc 2). Ma trn a v b
tuong ung chua cc h s cua tu s v mu s cua cc phn bc 2. Luu : a v b trong
chuong trnh ny ng vi b v a trong ma trn sos cua MATLAB. Gi tri cua
stages, ma trn a, ma trn b duoc khai bo trong tp tin coefficients.h. Tp tin ny duoc
include vo nho chi dn #include. Nhu vy, khi mun thay di b loc, chi cn thay di
ni dung cua tp tin coefficients.h.
Ni dung cua tp tin coefficients.h c dang nhu sau:
//coefficients.cof coefficient file

#define stages 5 //number of 2nd-order stages

int a[stages][3]= { //numerator coefficients
{27940, -10910, 27940}, //a10, a11, a12 for 1st stage
{32768, -11841, 32768}, //a20, a21, a22 for 2nd stage
{32768, -13744, 32768}, //a30, a31, a32 for 3rd stage
{32768, -11338, 32768}, //a40, a41, a42 for 4th stage
{32768, -14239, 32768} };

int b[stages][2]= { //*denominator coefficients
{-11417, 25710}, //b11, b12 for 1st stage
{-9204, 31581}, //b21, b22 for 2nd stage
{-15860, 31605}, //b31, b32 for 3rd stage
{-10221, 32581}, //b41, b42 for 4th stage
{-15258, 32584} }; //b51, b52 for 5th stage
Tp tin ny khai bo mt b loc c 5 tng bc 2. Gi tri cua cc phn tu cua a v b thu
duoc tu vic thit k b loc o trn. Luu : a v b trong chuong trnh ny ng vi b
v a trong ma trn sos cua MATLAB.
Chuong trnh trn duoc thuc hin c su dung ngt. Khi c xung ly mu (tn s o dy
l 8 KHz), trnh phuc vu ngt c_int11( ) duoc goi, doc mu vo v thuc hin giai thut
xu l mu d tnh ng ra. Phn lp cua doan m trong chuong trnh duoc thuc hin
stages ln voi mi gi tri cua n. Di voi tng du tin, x(n) l mu moi nhn vo. Di
voi cc tng tip theo, x(n) l ng ra cua tng truoc d.
Cc gi tri dly[i][0] v dly[i][1] tuong ung voi cc delay u(n 1) v u(n 2) o tng thu
i.
Do cc h s a v b nhn duoc tu qu trnh thit k l kh nho, chng ta s nhn n voi
2
15
. Mu ra sau khi xu l duoc chia lai cho 2
15
bng cch dich phai 15 bit (trong hm
output_sample(yn >> 15)). Vic nhn cc h s voi 2
15
cung l do b xu l s luong tu
ha cc h s voi mt s luong bit huu han v vic nhn ln s giam di sai s.

Hy lm theo cc buoc sau d hon thnh v du ny:
1. Nu CCS chua chay, hy khoi dng n. Sau khi kt ni voi kit, hy mo project
IIR.pjt c sn trong thu muc C:\\CCStudio_v3.1\myprojects\IIR.
Ti liu th nghim Xu l s tn hiu
33

2. Trong cua s Project View, tab File View, hy mo tp tin coefficients.h (trong
phn Include). Hy cp nht tp tin ny voi cc gi tri thu duoc trong phn thit
k o trn, sau khi nhn chng voi 2
15

>> sos = sos*2^15
3. Hy dich lai chuong trnh v nap ln kit C6713 v chay chuong trnh

Dnh gi kt qua thc hin
1. Mo ngun cua my pht sng. Tao mt tn hiu hnh sine tu my pht sng v
quan st dang sng ng ra. Thay di tn s cua tn hiu vo v hy xc dinh tn s
ct 3-dB cua b loc.
Sau khi d thuc hin v du trn, hy p dung nhung g d hoc d thuc hin cc th
nghim sau. Voi mi bi th nghim, hy dua dp ung tn s cua b loc vo trong bi
bo co.
(Huong dan: nu sao chp thu muc IIR d c thnh mot thu muc voi tn khc v thuc
hin trn thu muc moi ny ung voi tung bo loc).
1. Thit k mt b loc IIR thng thp thuc loai Chebyshev 2 c cc thng s nhu
sau:
a. Bc b loc: 10
b. Canh dai dai chn: 1.6 KHz.
c. D gon dai chn: 60 dB
d. Tn s ly mu: 8 kHz.
Thuc hin b loc ln trn kit v kim tra kt qua.
2. Thit k b loc IIR thng dai thuc loai Chebyshev 2 voi cc thng s nhu sau:
a. Bc b loc: 36 (Matlab hin thi l 18)
b. Tn s ct dai chn: 1600 v 2400 Hz
c. D gon dai chn 100 dB.
d. Tn s ly mu: 8 kHz.
Thuc hin b loc v kim tra kt qua.
6.2 To hai tone bng cch su dng hai phuong trnh sai phn bc 2
Trong th nghim ny, chng ta s tao v cng hai tone bng phuong php phuong trnh
sai phn. Tn hiu ra cung duoc luu trong b nho v duoc v bng CCS. Phuong trnh
sai phn dng d tao mt sng hnh sine l
) 2 ( ) 1 ( ) ( = n y n Ay n y
trong d:
( )
( ) ( )
( ) ( ) T y
T y
T A

2 sin 2
sin 1
cos 2
=
=
=

voi hai diu kin ban du, y(-1) v y(-2), e=2f v ms
kHz F
T
S
125 . 0
8
1 1
= = = l chu ky
ly mu. H s A cua phuong trnh sai phn, cng voi hai diu kin du, xc dinh tn
s duoc tao ra.
a. Su dung bin di Z, hy chung minh rng y(n) = sin(neT)
Ti liu th nghim Xu l s tn hiu
34

b. Tnh A, y(-1) v y(-2) cn thit d tao ra mt sng sine c tn s 1.5kHz?
2kHz?
c. Hy chay chuong trnh Code Composer Studio (CCS) v mo project
two_tones.pjt trong thu muc C:\CCStudio_v3.1\myprojects\two_tones. Hy mo
tp tin ngun cua chuong trnh two_tones.c. Ni dung cua tp tin ny nhu sau:
//two_tones.c Generates/adds two tones using difference
//equations

#include "DSK6713_AIC23.h" //codec-DSK support file
Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; //set sampling rate
short sinegen(void); //for generating tone
short output; //for output
short sinegen_buffer[256]; //buffer for output data
const short bufferlength = 256; //buffer size for plot with
CCS
short i = 0; //buffer count index
short y1[3] = {0,-15137,-11585};//y1(0),y1(-1),y1(-2) for
1.5kHz
const short A1 = 12540; //A1 = 2coswT scaled by 2^14
short y2[3] = {0,-16384,0}; //y2(0),y2(-1),y2(-2) for 2kHz
const short A2 = 0; //A2 = 2coswT scaled by 2^14

interrupt void c_int11() //ISR
{
output = sinegen(); //out from tone generation
function
sinegen_buffer[i] = output; //output into buffer
output_sample(output); //output result
i++; //increment buffer count
if (i == bufferlength)
i = 0; //if buffer count = size of
buffer
return; //return to main
}

short sinegen() //function to generate tone
{
y1[0] =((y1[1]*A1)>>14)-y1[2]; //y1(n)= A1*y1(n-1)-y1(n-2)
y1[2] = y1[1]; //update y1(n-2)
y1[1] = y1[0]; //update y1(n-1)

y2[0] =((y2[1]*A2)>>14)-y2[2]; //y2(n)= A2*y2(n-1)-y2(n-2)
y2[2] = y2[1]; //update y2(n-2)
y2[1] = y2[0]; //update y2(n-1)

return (y1[0] + y2[0]); //add the two tones
}

void main()
{
comm_intr(); //init DSK, codec, McBSP
while(1); //infinite loop
}
Mang y1[3] chua cc gi tri cua y1(0), y1(-1) v y1(-2) d tao tone c tn s
1.5kHz, v mang y2[3] chua cc gi tri cua y2(0), y2(-1) v y2(-2) d tao tone
c tn s 2kHz. Hm sinegen() su dung phuong trnh sai phn bc hai d tao
mi tone, sau d cng chng lai.
d. Dich v chay chuong trnh trn kit. Kim chung rng tn hiu ra l tng cua
hai tone c tn s 1.5kHz v 2kHz.
e. Cc mu tn hiu ra cung duoc luu trong mt vng nho dm. Hy su dung
CCS d v ph bin d FFT cua tn hiu ra. Luu dia chi bt du cua vng
dm ny l sinegen_buffer.
Ti liu th nghim Xu l s tn hiu
35

f. K thut ny c th duoc dng d tao tn hiu DTMF (Dual tone
multifrequency). Hy thu tao v cng hai tone c tn s 697 v 1209 Hz. Tn
hiu DTMF ny duoc tao ra khi nhn phm s 3 trn din thoai. V ph cua
n.
6.3 To tn hiu sine bng mt phuong trnh sai phn
Mt tn hiu hnh sine cung c th duoc tao ra bng mt phuong trnh sai phn khc:
) 1 ( ) 2 ( ) 1 ( ) ( + + = n Cx n By n Ay n y voi B = -1.
Khi c mt xung o n = 0, x(n 1) = x(0) = 1.
Voi n = 1:
C Cx By Ay y = + + = ) 0 ( ) 1 ( ) 0 ( ) 1 ( voi y(0) = 0 v y(-1) = 0.
Voi n _ 2:
) 2 ( ) 1 ( ) ( = n y n Ay n y
H s ) cos( T A = v ) sin( T C = duoc tnh voi chu ky ly mu T = 1/F
s
v tn s
mong mun e.
a. Trong CCS, hy mo project sinegenDE.pjt tai thu muc c duong dn
C:\CCStudio_v3.1\myprojects\sinegenDE
b. Hy mo tp tin ngun chnh sinegenDE.c. Bin dich chuong trnh v chay.
Xc dinh tn s cua tn hiu ra.
c. Tnh A v y[3] d tao mt tone c tn s 1kHz. Sau d hy hiu chinh project
v dich lai. Kim tra tn hiu ra c phai l tone c tn s 1kHz khng?
















Ti liu th nghim Xu l s tn hiu
36

BI 5: THJC HIJN CC HJ THNG UNG DJNG TRN KIT
C6713 DSK
1. Mc dch th nghim
1. Lm quen voi cc thit k ung dung thuc t
2. Nghin cuu, phn tch thit k d lm nn tang cho cc h thng lon hon.
2. Thit b| th nghim
STT Tn thit b| S lung
01 My vi tnh 01
02 Kit C6713 DSK 01
03 B dy ni tn hiu 01
3. Gii thiu
Trong cc b loc FIR v IIR thng thuong, cc thng s xc dinh dc tnh cua b loc
duoc gia su l d bit. Chng c th thay di theo thoi gian nhung tnh cht cua su thay
di ny xem nhu d bit. Trong nhiu vn d thuc t, cc thng s ny hu ht l khng
chn chn do thiu cc du liu thu truoc. Vi thng s c th thay di theo thoi gian
nhung khng th du don duoc cch thay di. Trong cc truong hop ny, mt b loc c
th tu thch nghi voi su thay di s l thch hop nht. Cc h s cua b loc thch nghi
duoc diu chinh d b cho su thay di cua tn hiu vo, tn hiu ra hoc thng s cua h
thng. Mt b loc thch nghi rt huu ch khi c su khng chc chn v dc tnh cua tn
hiu hoc khi cc dc tnh thay di.
Mt b loc rt don gian nhung rt manh l b kt hop thch nghi tuyn tnh (linear
adaptive combiner), thuc cht l mt b loc FIR thch nghi. Tiu chun trung bnh bnh
phuong cuc tiu LMS (Least Mean Squares) l mt giai thut tm kim duoc su dung d
diu chinh cc h s cua b loc.
4. Co so l thuyt
Hu ht cc dang thch nghi c th duoc m ta boi cu trc nhu sau:

Hnh 21. Cu trc b lc thch nghi co ban
Dy l mt cu trc b loc thch nghi co ban trong d ng ra y cua b loc duoc so snh
voi mt tn hiu mong mun d d tao ra mt tn hiu sai s e, duoc hi tip tro lai b loc.
Tn hiu sai s ny l du vo cua giai thut thch nghi d thay di b loc sao cho thoa
mn mt tiu chun hoc mt quy lut xc dinh truoc.
Cc h s cua b loc thch nghi duoc diu chinh, hoc duoc ti uu, su dung giai thut
LMS dua trn tn hiu sai s. O dy, chng ta chi thao lun giai thut tm kim LMS voi
Ti liu th nghim Xu l s tn hiu
37

mt b loc FIR mc d c vi phuong php thuc hin loc thch nghi. Ng ra cua b loc
thch nghi o hnh 26 l:
( ) ( ) ( )

=
=
1
0
N
k
k
k n x n w n y
voi ( ) n w
k
biu din N h s cua b loc o thoi dim n.
D dnh gi cht luong cua b loc, chng ta su dung mt php do luong dua trn tn hiu
sai s,
( ) ( ) ( ) n y n d n e =
Sai s ny l su sai khc giua tn hiu mong mun d(n) v ng ra y(n) cua b loc. Cc h
s ( ) n w
k
duoc diu chinh sao cho mt hm sai s trung bnh bnh phuong duoc cuc tiu.
Hm ny l ( ) [ ] n e E
2
voi E[] biu din gi tri ky vong. Do c N h s (hay trong s), cn
tnh gradient cua hm sai s trung bnh bnh phuong. Mt su uoc luong c th duoc su
dung bng cch dng gradient cua e
2
(n), cho kt qua:
( ) ( ) ( ) ( ) 1 ,..., 1 , 0 , 2 1 = + = + N k k n x n e n w n w
k k

th hin giai thut LMS.
4.1 Cc cu trc thch nghi
Mt s cu trc thch nghi duoc su dung trong cc ung dung khc nhau cua loc thch
nghi.
a. Lc nhiu (noise cancellation)

Hnh 22. Cu trc b lc thch nghi dng d lc nhiu
Hnh trn v lai cu trc thch nghi o hnh 26 duoc chinh sua cho ung dung loc
nhiu. Tn hiu mong mun d bi anh huong boi nhiu cng khng tuong quan
n. Ng vo cua b loc thch nghi l mt nhiu n tuong quan voi nhiu n.
Nhiu n c th dn tu cng ngun nhiu voi n nhung bi thay di boi mi
truong. Ng ra y cua b loc thch nghi duoc diu chinh theo nhiu n. Khi diu
ny xay ra, tn hiu sai s s tin dn tn hiu mong mun d. Kt qua ton cuc
l tn hiu sai s ny chu khng phai ng ra y cua b loc thch nghi. Nu d
khng tuong quan voi n, chin thut l lm ti thiu E(e
2
)

b. Nhn dng h thng (system identification)
Hnh sau v mt cu trc b loc thch nghi c th dng d nhn dang hoc m
hnh h thng. Cng mt ng vo duoc dua dn h thng cn nhn dang song
song voi mt b loc thch nghi. Tn hiu sai s e l su khc bit giua dp ung d
cua h thng chua bit v dp ung y cua b loc thch nghi. Tn hiu sai s ny
duoc hi tip lai b loc thch nghi v duoc dng d cp nht cc h s cua b
Ti liu th nghim Xu l s tn hiu
38

loc thch nghi cho dn khi y = d. Khi diu ny xay ra, qu trnh nhn dang kt
thc v e tin dn 0.


Hnh 23. Cu trc b lc thch nghi dng d nhn dng h thng
4.2 B kt hp thch nghi tuyn tnh (Linear Adaptive Combiner)
Chng ta s xem xt mt trong nhung cu trc thch nghi huu ch nht b kt hop
thch nghi tuyn tnh. Hai truong hop xay ra khi su dung b kt hop tuyn tnh: (1)
nhiu ng vo v (2) mt ng vo.
a. Nhiu ng vo

Hnh 24. B kt hp tuyn tnh nhiu ng vo
Hnh trn m ta truong hop nhiu ng vo. Cu hnh bao gm K tn hiu vo
dc lp, mi ng vo duoc nhn voi trong s w(k) v duoc kt hop d tao tn
hiu ra,
( ) ( ) ( )

=
=
K
k
n k x n k w n y
0
, ,
Ng vo c th duoc biu din nhu mt vector (K+1) chiu,
( ) ( ) ( ) ( ) [ ]
T
n K x n x n x n X , , 1 , 0 =

b. Mt ng vo
Trong truong hop 1 ng vo, cu trc trn tro thnh mt b loc FIR (K+1) tap
voi cc h s diu chinh duoc. Mi ng vo duoc tr hon s duoc nhn trong
s v cng lai d tao ng ra,
( ) ( ) ( )

=
=
K
k
k n x n k w n y
0
,

Ti liu th nghim Xu l s tn hiu
39


Hnh 25. B kt hp tuyn tnh thch nghi vi mt ng vo
Ng vo v cc trong s c th duoc vit nhu l cc vector,
( ) ( ) ( ) ( ) [ ]
( ) ( ) ( ) ( ) [ ]
T
T
n K w n w n w n W
K n x n x n x n X
, , 1 , 0
1

=
=

4.3 Hm mc tiu
Trong phn trn chng ta d xem xt mt cu trc cua b loc m dc tnh c th thay
di bng cch diu chinh cc trong s. Tuy nhin, chng ta vn cn mt su dnh gi
cht luong cua b loc. Hm muc tiu ny s dua trn sai s
( ) ( ) ( ) n y n d n e =
Bnh phuong cua hm ny l:
( ) ( ) ( ) ( ) ( ) n y n y n d n d n e
2 2 2
2 + =
chnh l hm bnh phuong sai s tuc thoi.
By gio, hy xem xt truong hop b loc chi c mt trong s. Ta c y(n) = w(0)x(n) v
bnh phuong sai s tro thnh
( ) ( ) ( ) ( ) ( ) ( ) ( ) 0 0 2
2 2 2 2
w n x w n x n d n d n e + =
L mt hm bc 2 cua w(0). Ky vong cua hm sai s bnh phuong l:
( ) [ ] ( ) [ ] ( ) ( ) [ ] ( ) ( ) [ ] ( ) 0 0 2
2 2 2 2
w n x E w n x n d E n d E n e E + =
Nu tn hiu d v x l bt bin thng k theo thoi gian, cc ky vong cua tch cua d v x
l hng s, v ta c th vit lai:
( ) [ ] ( ) ( ) 0 0 2
2 2
Cw Bw A n e E + =
Voi A, B v C l cc hng s.
D thi cua hm ny theo w(0) nhu sau:
Ti liu th nghim Xu l s tn hiu
40


Hnh 26. Dung cong mc tiu 1 trng s
Chng ta cn tm gi tri cua w(0) d ti thiu gi tri ky vong cua sai s trung bnh bnh
phuong. D tm cuc tiu cua ( ) [ ] n e E
2
, dt dao hm cua ( ) [ ] n e E
2
theo w(0) bng 0, dn
dn kt qua l mt dim cuc tiu c dinh:
w(0) = B/C
Trong thuc t, trong s s bt du o mt gi tri ban du no d w(0,n) v duoc diu
chinh theo tung buoc tin v gi tri cuc tiu cua hm muc tiu. Chiu di v huong cua
buoc l 2 thu cn duoc xc dinh. Mi buoc s bao gm vic thm mt luong tng nho
vo w(0,n). Luu rng nu gi tri hin tai cua w(0,n) l o bn phai cua dim cuc tiu,
buoc nhay phai m (nhung dao hm cua duong cong l duong); tuong tu, nu gi tri
hin tai o bn tri cua cuc tiu, luong tng phai duong (nhung dao hm l m). Do d
chng ta c:
( ) ( )
[ ]
( ) 0
, 0 1 , 0
2
dw
e dE
n w n w = +
Voi l mt hng s duong bt ky. Nhu v trn hnh sau, vic lp lai cng thuc ny s
khin w(0) di chuyn theo tung buoc tu gi tri ban du cho dn khi dn dim cuc tiu.

Hnh 27. Tm dim cc tiu theo mt trng s

Kt qua trn c th duoc tng qut cho cc h thng c nhiu hon mt trong s:
W(n+1) = W(n) - .grad{E[e
2
]}
Trong d
( ) ( ) ( ) ( ) [ ]
T
n K w n w n w n W , , 1 , 0 =
Ti liu th nghim Xu l s tn hiu
41

V
T
K w
P
w
P
w
P
P grad e E grad

= =
) ( ) 1 ( ) 0 (
} { ]} [ {
2

Chng ta c th chung minh rng:
W(n+1) = W(n) + 2e(n)X(n)
Luu rng nu e(n) tin dn 0 th W(n+1) = W(n) v trong s vn khng di.
5. Chun b| th nghim
1. Th no l mt b loc thch nghi ? Hy k mt s ung dung cua b loc thch nghi v
v cu trc b loc thch nghi tuong ung voi tung ung dung d ?
2. Hy trnh by giai thut LMS ?
3. Tm tt cc buoc s lm d thuc hin cc phn th nghim sau.
6. Tin hnh th nghim
6.1 B lc thch nghi dng d lc nhiu hnh sine
Trong th nghim ny, mt b loc FIR thch nghi s duoc thuc hin voi cu trc trn
hnh 27.
Chng ta c mt tn hiu sine tn s 1500Hz bi anh huong boi nhiu cng hnh sine tn
s 312Hz. Chng ta cn loc nhiu d thu tn hiu mong mun. Trong th nghim ny,
chng ta su dung b loc thch nghi cho muc dch d. Mt trong cc ng vo cua b loc
thch nghi l tn hiu c cng nhiu. Ng vo cn lai l tn hiu tham khao dang cosine,
tn s 312Hz v tuong quan voi tn hiu nhiu hnh sine o trn.
Tn hiu tham khao ny s duoc loc boi b loc FIR thch nghi 30 h s. Tn hiu ra cua
b loc l uoc luong cua tn hiu nhiu sine tn s 312Hz, s duoc tru khoi tn hiu c
ln nhiu.

Hnh 28. So d th nghim
Trong th nghim ny, tt ca cc tn hiu duoc tao ra tu bang. Bang ny duoc tao bng
MATLAB. Chuong trnh MATLAB sau duoc su dung d tao cc gi tri du liu cho tn
hiu sine(1500Hz), sine(1500Hz) + sine(312Hz) v cosine(312Hz).
%Adaptnoise.M Generates: dplusn.h (s312+s1500), refnoise.h
cos(312),and sin1500.h

for i=1:128
desired(i) = round(100*sin(2*pi*(i-1)*1500/8000)); %sin(1500)
addnoise(i) = round(100*sin(2*pi*(i-1)*312/8000)); %sin(312)
refnoise(i) = round(100*cos(2*pi*(i-1)*312/8000)); %cos(312)
Ti liu th nghim Xu l s tn hiu
42

end
dplusn = addnoise + desired;
%sin(312)+sin(1500)

fid=fopen('dplusn.h','w');
%desired + noise
fprintf(fid,'short dplusn[128]={');
fprintf(fid,'%d, ' ,dplusn(1:127));
fprintf(fid,'%d' ,dplusn(128));
fprintf(fid,'};\n');
fclose(fid);

fid=fopen('refnoise.h','w');
%reference noise
fprintf(fid,'short refnoise[128]={');
fprintf(fid,'%d, ' ,refnoise(1:127));
fprintf(fid,'%d' ,refnoise(128));
fprintf(fid,'};\n');
fclose(fid);

fid=fopen('sin1500.h','w');
%desired sin(1500)
fprintf(fid,'short sin1500[128]={');
fprintf(fid,'%d, ' ,desired(1:127));
fprintf(fid,'%d' ,desired(128));
fprintf(fid,'};\n');
fclose(fid);

Chuong trnh ny s tao 3 tp tin (trong thu muc lm vic hin hnh cua MATLAB):
dplusn.h: chua mt bang 128 dim d tao tn hiu sine tn s 1500Hz cng voi
nhiu sine tn s 312Hz.
refnoise.h: chua mt bang 128 dim d tao tn hiu cosine tham khao c tn s
312Hz.
sin1500.h: chua mt bang 128 dim d tao tn hiu sine mong mun c tn s
1500Hz
Cc tap tin ny d duoc tao sn trong thu muc chua project.

Sau dy, hy tin hnh th nghim theo cc buoc sau dy:
1. Mo Code Composer Studio. Trong CCS, hy mo project AdaptNoise (trong thu
muc C:\CCStudio_v3.1\myprojects\AdaptNoise)
2. Mo tp tin ngun chnh adaptnoise.c v xem xt giai thut LMS duoc hin thuc nhu
th no trong chuong trnh.
3. Hy thit lp cc ty chon cn thit v bin dich chuong trnh. Sau khi qu trnh
bin dich thnh cng, hy nap chuong trnh ln kit DSP.
4. Quan st ng ra cua kit DSP (ng Line Out) voi chuong trnh DSP Tool.
5. Trong CCS, hy chay chuong trnh. Chon File Load GEL d nap tp tin
out_type.gel. Sau d chon GEL Output signal Output. Mt cua s moi xut
hin voi thanh truot o trn d. Khi thanh truot ny o vi tr s 1, ng ra l tn hiu sai
lch. Khi thanh truot o vi tr s 2, ng ra l tn hiu sine mong mun (tn s
Ti liu th nghim Xu l s tn hiu
43

1500Hz) cng voi nhiu (tn s 312Hz). By gio, hy quan st dang sng ng ra voi
thanh truot ln luot o vi tr 1 v vi tr 2. Phc hoa dang sng tuong ung.

Qua phn trn, cc ban d thuc hin xong mt b loc FIR thch nghi d ung dung trit
nhiu. Hy vn dung kin thuc vua hoc d lm bi tp nho sau:

Bi tp
Chng ta c mt tn hiu cosine tn s 2000 Hz bi xm ln boi mt nhiu cung hnh
cosine voi tn s 125 Hz. Gia su d loai nhiu, chng ta s dng mt b loc thch nghi.
Hy su dung tn hiu sine c tn s 125 Hz (tuong quan voi nhiu) d lm tn hiu tham
khao.
1. Hy sua chuong trnh MATLAB AdaptNoise.m d tao cc tn hiu tuong ung.
2. Hy mo CCS, bin dich v chay lai chuong trnh d kim chung kt qua.
6.2 Su dng b lc FIR thch nghi d nhn dng mt b lc FIR c d|nh chua bit
Trong th nghim ny, gia su chng ta c mt h thng chua bit cn duoc nhn dang.
Chng ta su dung phuong php loc thch nghi cho vic nhn dang. Diu ny c nghia l
chng ta cn phai hun luyn mt b loc thch nghi sao cho khi c cng tn hiu du
vo di qua th b loc thch nghi ny s cho tn hiu du ra ging nhu du ra cua h
thng cn nhn dang.
Trong th nghim ny, chng ta su dung mt b loc FIR c dinh nhu l h thng cn
nhn dang. Chng ta s kim chung rng b loc thch nghi c th duoc hun luyn d
m hnh cho h thng chua bit ny.
H thng cn nhn dang o dy duoc chon l mt b loc FIR thng dai c 55 h s, tn
s trung tm l 2KHz. Cc h s cua b loc ny duoc chua trong tp tin bp55.cof.
Mt chui nhiu ngu nhin duoc tao ra trong chuong trnh v tro thnh ng vo dng
thoi cua b loc chua bit v b loc FIR thch nghi. Tn hiu ny duoc xem nhu tn hiu
hun luyn. Qu trnh thch nghi s din ra cho dn khi tn hiu sai s duoc cuc tiu
ha. Tn hiu sai s hi tip ny l su khc bit giua ng ra cua b loc chua bit v ng
ra cua b loc FIR thch nghi.
By gio, hy mo ngun cua kit v mo Code Composer Studio v thuc hin theo cc
buoc sau:
1. Mo project AdaptIDFIR (o C:\CCStudio_v3.1\MyProjects\AdaptIDFIR)
2. Trong CCS, chon File Load GEL v mo tp tin AdaptIDFIR.gel. Sau d, trong
menu GEL, chon OutputType Output-signal. Mt hp thoai c thanh truot xut
hin. Khi thanh truot o vi tr 1, tn hiu ra l du ra cua b loc thch nghi. Khi n o
vi tr 2, tn hiu ra l ng ra cua b loc c dinh chua bit.
3. Hin thi dang sng ra (bng cch dng DSP_Tool.exe). Hy so snh du ra cua h
thng thch nghi voi du ra cua h thng chua bit. B loc thch nghi c m hnh
ha thnh cng b loc FIR chua bit hay khng?

Bi tp
1. Hy sua chuong trnh chnh (tp tin AdaptIDFIR.c) d include tp tin h s
bs55.cof, biu din mt b loc FIR chn dai 55 h s voi tn s trung tm 2 KHz.
B loc FIR chn dai ny duoc xem nhu h thng chua bit cn nhn dang. Hy bin
dich v kim tra kt qua.
Ti liu th nghim Xu l s tn hiu
44

2. Hy su chuong trnh chnh (tp tin AdaptIDFIR.c) d include tp tin h s lp55.cof,
biu din mt b loc FIR thng thp voi 55 h s. B loc FIR ny biu din cho h
thng chua bit cn nhn dang. Hy bin dich v kim tra kt qua.
6.3 Su dng b lc FIR thch nghi d nhn dng h thng chua bit, bit ban du b
lc thch nghi duc khoi to l mt b lc FIR thng dai.
Trong th nghim truoc, cc gi tri ban du cua cc h s cua b loc FIR thch nghi
duoc khoi tao bng zero. Trong th nghim ny, ban du, cc h s cua b loc FIR thch
nghi duoc khoi tao bng voi cc h s cua mt b loc FIR thng dai c 55 h s, tn s
trung tm l 3KHz, chua trong tp tin bp3000.cof.
B loc cn nhn dang o dy cung l mt b loc FIR thng dai 55 h s nhung voi tn s
trung tm l 2KHz. Chng ta s thy b loc thch nghi s thay di dn tu mt b loc
thng dai tn s trung tm 3KHz thnh mt b loc thng dai tn s trung tm 2KHz.
By gio, hy mo ngun cua kit DSP. Sau d chay Code Composer Studio v thuc hin
theo cc buoc sau dy:
1. Mo project AdaptIDFIRW (trong C:\CCStudio_v3.1\MyProjects\AdaptIDFIRW).
2. Hy bin dich project v chay chuong trnh trn kit DSP.
3. Trong CCS, chon File Load GEL v mo tp tin AdaptIDFIR.gel. Sau d, chon
GELOutput Type Output-signal trn thanh menu. Mt hp thoai c thanh truot
xut hin. Khi thanh truot o vi tr 1, tn hiu ng ra l du ra cua b loc thch nghi.
Khi n o vi tr 2, tn hiu ng ra l du ra cua b loc chua bit.
4. Hy quan st dang sng du ra cua b loc thch nghi v b loc FIR cn nhn dang.
5. Nu nhu xem tn hiu nhiu ngu nhin ng vo gn nhu l nhiu trng th ta c ph
cua tn hiu ng ra s c dang cua dp ung tn s cua b loc. Do d, ta c th quan
st dp ung tn s cua b loc thch nghi thay di dn d thch nghi voi b loc chua
bit bng cch quan st ph bin d cua tn hiu ng ra (cua b loc thch nghi). Hy
thuc hin vic quan st ny trn DSP_Tool v luu 5 hnh d cho thy qu trnh thch
nghi cua b loc. Luu : chon File Reload program d chay lai tu dau qu trnh
thch nghi cua bo loc.
Bi tp
Hy sua chuong trnh chnh (tp tin AdaptIDFIR.c) d include tp tin h s lp55.cof,
biu din mt b loc FIR thng thp c 55 h s. B loc FIR ny duoc xem nhu h
thng cn nhn dang. Hy bin dich chuong trnh v kim chung kt qua dat duoc. Hy
luu lai mt vi hnh v dp ung tn s cua b loc thch nghi (trong qu trnh thch nghi).
Ti liu th nghim Xu l s tn hiu
45

BI 6: THJC HIJN MT S MACH DIEU CHE S TRN
KIT C6713 DSK
1. Mc dch th nghim
1. Khao st mt s k thut diu ch s.
2. Thuc hin mt s mach diu ch s trn kit C6713.
2. Thit b| th nghim
STT Tn thit b| S lung
01 My vi tnh 01
02 Kit C6713 DSK 01
03 My pht song 01
04 B dy ni tn hiu 01
3. Gii thiu
Diu ch l qu trnh lm bin di mt tn hiu sng mang nhm su dung tn hiu ny d
mang thng tin cn truyn di. Thng thuong, mt dang sng hnh sine cao tn duoc su
dung lm sng mang. Ba thng s cua mt sng sine l bin d, pha v tn s du c th
lm cho bin di theo tn hiu thng tin d tao ra tn hiu diu ch.
Thit bi d thuc hin diu ch duoc goi l b diu ch (modulator) v thit bi thuc hin
qu trnh nguoc lai goi l b giai diu ch (demodulator). Thit bi c th thuc hin ca hai
qu trnh goi l modem.
Muc dch cua diu ch so l d truyn mt chui bit trn mt knh truyn tuong tu
bandpass, v du nhu trn duong dy din thoai (cc b loc gioi han dai tn s tu 300
3400 Hz) hoc trn mt dai tn s radio. Trong khi d, muc dch cua diu ch tuong tu l
truyn mt tn hiu tuong tu tn s thp, v du nhu tn hiu m tn, trn mt knh truyn
tuong tu bandpass.
Muc dch cua cc phuong php diu ch so dai nn (baseband), cn goi l m ha duong
truyn, l truyn mt chui bit trn mt knh truyn thng thp (lowpass) thuong l mt
cp dy dng khng bi loc nhu l mt bus ni tip hoc l mang LAN c dy.
Muc dch cua cc phuong php diu ch xung l d truyn mt tn hiu tuong tu bng hep
(narrowband) v du nhu mt cuc goi din thoai trn mt knh truyn thng thp bng
rng (wideband lownpass channel) hoc, trong mt s truong hop, nhu l mt chui bit
trn mt h thng truyn thng s khc.
4. Co so l thuyt
4.1 Cc k thut diu ch tuong t
Trong diu ch tuong tu, qu trnh diu ch duoc p dung lin tuc theo tn hiu thng
tin tuong tu.
Cc k thut diu ch tuong tu thng dung gm:
Diu ch bin d:
o Double - sideband modulation (DSB)
Ti liu th nghim Xu l s tn hiu
46

AM modulation
Double sideband suppressed-carrier (DSB SC)
o Single sideband modulation (SSB)
o Vestigial sideband modulation (VSB)
o Quadratude amplitude modulation (QAM)
Diu ch gc:
o Frequency modulation (FM)
o Phase modulation (PM)
4.2 Cc k thut diu ch s
Trong diu ch s, mt sng mang tuong tu duoc diu ch boi mt chui bit cua tn
hiu thng tin. Su thay di cua tn hiu sng mang duoc chon tu mt s huu han cc k
hiu (symbol).
Trong PSK, mt tp hop huu han cc pha duoc su dung.
Trong FSK, mt tp hop huu han cc tn s duoc su dung.
Trong ASK, mt tp hop huu han cc bin d duoc su dung.
Trong QAM, mt tn hiu cng pha (tn hiu I, v du dang sng cosine) v mt
tn hiu vung pha (tn hiu Q, v du dang sng sine) duoc diu bin voi mt s
luong huu han cc muc bin d (ASK). Tn hiu thu duoc l kt hop cua PSK
v ASK.
Mi gi tri pha, bin d hoc tn s duoc gn mt chui bit nhi phn duy nht.
Thng thuong, mi pha, bin d hoc tn s m ha mt s luong bit bng
nhau. S bit ny tao thnh mt k hiu (symbol) duoc biu din boi mt pha cu
th.
Nu b k hiu (symbol) gm M = 2
N
symbol khc nhau, mi k hiu biu din
mt thng dip gm N bit. Nu tc d k hiu (hay tc d baud) l f
s
symbols/s
(hoc baud), tc d du liu l Nf
s
bps.
Trong truong hop PSK, ASK v QAM, b k hiu diu ch thuong duoc biu
din trn mt gian d dang chm sao (constellation diagram), biu din bin d
cua tn hiu I trn truc X v bin d cua tn hiu Q trn truc Y.
Cc k thut diu ch s co ban nht bao gm:
Phase shift keying (PSK)
Frequency shift keying (FSK)
Amplitude shift keying (ASK) v dang thuong gp cua n l On off keying
(OOK)
Quadratude Amplitude Modulation (QAM): mt kt hop cua PSK v ASK.
Polar modulation: ging QAM, l kt hop cua PSK v ASK.
Continuous phase modulation (CPM)
o Minimum shift keying (MSK)
o Gaussian minimum shift keying (GMSK)
Orthogonal frequency division multiplexing (OFDM) modulation
Wavelet modulation
Trellis coded modulation (TCM) hay cn goi l trellis modulation
MSK v GMSK l cc truong hop dc bit cua diu ch pha lin tuc (CPM). OFDM
dua trn tuong cua FDM nhung su dung mt dang diu ch s. Chui bit duoc chia
Ti liu th nghim Xu l s tn hiu
47

thnh nhiu chui du liu song song, mi chui duoc truyn trn mt sub-carrier su
dung cc k thut diu ch s thng thuong. Cc sub-carrier duoc tng hop thnh mt
k hiu OFDM. OFDM duoc xem nhu mt k thut diu ch do n truyn mt chui
bit trn mt knh truyn su dung mt chui cc k hiu OFDM. OFDM c th duoc mo
rng thnh mt phuong php da truy cp trong OFDMA, cho php nhiu nguoi dng
chia se cng mt knh truyn vt l bng cch gn mi nguoi dng mt sub-carrier
khc nhau.
4.3 Diu ch s dai nn (Digital baseband modulation)
Thut ngu diu ch s dai nn dng nghia voi m ha duong truyn (line coding), l tp
hop cc phuong php d truyn mt chui bit trn mt knh truyn tuong tu thng
thp, su dung mt s roi rac cc muc tn hiu, bng cch diu ch mt chui xung (mt
sng vung). Cc v du thuong gp l unipolar, non-return-to-zero (NRZ), Manchester
v AMI (alternate mark inversion).
4.4 Cc phuong php diu ch xung
Cc phuong php diu ch xung nhm truyn mt tn hiu tuong tu bng hep trn mt
knh truyn thng thp nhu mt tn hiu duoc luong tu hai muc, bng cch diu ch
mt chui xung. Mt vi dang diu ch xung cung cho php tn hiu tuong tu bng hep
duoc truyn nhu mt tn hiu s voi mt tc d bit c dinh, c th duoc truyn trn mt
h thng thng tin s bn duoi, v du nhu mt vi line code. Chng khng phai l
ccdang diu ch theo nghia thng thuong do chng khng phai l cc phuong php m
ha knh (channel coding) m nn duoc xem nhu l m ha ngun (source coding) v
trong mt vi truong hop duoc xem nhu cc k thut bin di A/D.
Cc phuong php ny bao gm:
Pulse code modulation (PCM): diu ch xung m
Pulse width modulation (PWM): diu ch d rng xung
Pulse amplitude modulation (PAM): diu ch bin d xung
Pulse position modulation (PPM): diu ch vi tr xung
Pulse density modulation (PDM): diu ch mt d xung
Sigma delta modulation (DM)
Adaptive delta modulation (ADM)
Trai ph truc tip (DSSS direct-sequence spread spectrum) dua trn diu ch PAM.

Trong bi th nghim ny, hai phuong php diu ch se duoc thuc hin l diu ch bin do
xung (PAM) v diu ch pha (PSK).
4.5 Diu ch bin d xung (PAM)
Diu ch bin d xung (PAM) l mt dang diu ch tn hiu trong d thng tin duoc m
ha trong bin d cua mt chui xung. V du: mt b diu ch 2 bit (PAM 4) s ly 2
bit mt v nh xa bin d tn hiu thnh mt trong bn muc, v du nhu -3V, -1V, 1V v
3V.
Giai diu ch duoc thuc hin bng cch doc muc bin d cua sng mang tai mi chu ky
k hiu.
Hin nay, PAM t duoc su dung v hu nhu duoc thay th boi PCM v PPM. Tt ca cc
modem din thoai nhanh hon 300 bps su dung k thut QAM.
Ti liu th nghim Xu l s tn hiu
48

Tuy nhin, chun giao tip Ethernet vn su dung PAM. V du, 100BASE-T2 Ethernet
(o tc d 100Mb/s) su dung diu ch PAM 5 muc chay o tc d 25 megapulses/s trn 2
cp dy dn. Mt k thut dc bit duoc su dung d giam nhiu lin k tu giua cc cp
khng dy. Sau d, 1000BASE-T nng ln su dung 4 cp dy dn o tc d 125
megapulses/s d dat tc d du liu 1000 Mb/s, vn su dung PAM 5 muc cho mi cp
dy.
Duoi dy l so d khi cua mt h thng PAM don gian (bo qua b cn bng thch nghi
v b phuc hi xung clock).

Hnh 29. H thng PAM
Chui bit vo duoc xu l thnh cc tu di J bits. J bits ny duoc nh xa thnh mt trong
2
J
muc. V du, khi J = 3 th s c 8 muc. Cc muc ny cc du nhau trn gian d
constellation v di xung quanh muc zero nhu trn hnh sau:

Hnh 30. Gian d constellation cua PAM 8 mc
Tm dim trn gian d ny biu din cho 8 muc voi mi muc duoc biu din bng mt
chui 3 bits.
4.6 Diu ch d|ch pha (PSK)
PSK l mt phuong php truyn nhn tn hiu s trong d pha cua tn hiu truyn di
duoc thay di d mang thng tin. Mt vi phuong php c th su dung d thuc hin
PSK, don gian nht l PSK nhi phn (BPSK) chi su dung hai pha cua tn hiu: 0 v
180. Cc dang phuc tap hon cua PSK su dung 4 hoc 8 pha, cho php du liu nhi phn
truyn o tc d nhanh hon. Trong diu ch 4 pha, cc pha su dung c th l 0, +90, -
90 v 180; mi su dich pha c th biu din 2 bits/symbol. Trong diu ch 8 pha, cc
gc pha c th dng l 0, +45, -45, +90, -90, +135, -135 v 180 v mi ln dich
pha biu din 8 bits/symbol.
Ti liu th nghim Xu l s tn hiu
49

4.6.1 iu ch pha nhi phn (BPSK)
Mt knh du liu diu ch sng mang. Mt su chuyn bit, tu 1 sang 0 hay tu 0 sang 1,
tao ra mt su dich pha 180 (dao pha) cua sng mang. Do d, sng mang duoc diu
ch boi du liu.
Giai diu ch BPSK su dung cc buoc sau:
- Mt b bnh phuong tao ra mt thnh phn DC v mt thnh phn o tn s 2f
c

- Mt b loc thng dai d tch thnh phn tn s 2f
c

- Mt b chia tn s, ng ra cua n duoc nhn voi ng vo. Kt qua duoc loc thng
thp d thu duoc tn hiu PCM.
4.6.2 Quadratude Phase Shift Keying (QPSK)
QPSK l mt dang diu ch trong d pha duoc diu ch trong khi tn s v bin d
duoc giu c dinh. C 4 pha, mi pha cch nhau 90. Cc pha ny thuong duoc goi l
cc trang thi (state) v duoc biu din boi mt cp bit. Mi cp bit duoc biu din
boi mt dang sng cu th, goi l mt k hiu (symbol), s duoc gui qua knh truyn
sau khi diu ch sng mang. B thu giai diu ch tn hiu v nhn o k hiu khi phuc
duoc d xc dinh cp bit no d duoc gui di. Diu ny di hoi mt k hiu duy nht
cho mi su kt hop cua cc bit du liu trong mt cp. Do c tt ca 4 kha nng xay ra
khi kt hop cc bit du liu trong mt cp (00, 01, 10, 11), QPSK tao ra 4 k hiu khc
nhau, mi k hiu cho mi cp, bng cch thay di mt thnh phn dng pha (I) v
thnh phn vung pha (Q).
H thng truyn QPSK su dung ca sng sine v cosine lm sng mang d truyn 2 tn
hiu thng dip, sI[n] v sQ[n], duoc goi l tn hiu in-phase v quadratude. Ca hai
tn hiu ny du duoc khi phuc o pha thu, cho php truyn du liu voi luong thng
tin gp di o cng tn s sng mang.
5. Chun b| th nghim
1. Hy v hnh minh hoa qu trnh diu ch PAM mt tn hiu hnh sine v giai thch?
Hy tm mt s ung dung cua diu ch PAM.
2. Hy v gian d constellation ung voi diu ch PAM 16 muc, QAM, BPSK v QPSK
3. Phn bit (ngn gon) cc phuong php diu ch xung: PAM, PCM, PPM, PWM
4. Tm tt cc buoc s lm d thuc hin cc phn th nghim sau.
6. Tin hnh th nghim
6.1 Thc hin mch diu ch PAM trn kit C6713 DSK
Trong th nghim ny, mach diu ch PAM 4 muc, 8 muc v 16 muc s duoc ln luot
thuc hin trn kit DSP. Trong d, mach diu ch 4 muc d duoc thuc hin sn trong
mt project d gip hiu r v giai thut thuc hin. Sau d, sinh vin s tu thuc hin
mach diu ch PAM 8 muc v 16 muc.

Giai thut diu ch
Mi mu vo d diu ch gm 16 bits. Ty vo loai diu ch PAM, mt mt na (mask)
thch hop duoc su dung.
Hy xem xt truong hop PAM 16 muc (16-PAM). Trong truong hop ny, d biu din
16 muc cn 4 bits, do d mi k hiu s c chiu di 4 bits. D dat duoc tc d k hiu
Ti liu th nghim Xu l s tn hiu
50

mong mun, mu vo duoc chia lm cc doan di 4 bits. Nhu vy, mi mu vo s gm
4 doan. Vic xu l mu vo bao gm vic p dung mt na v dich. Khi k hiu du
tin nhn duoc bng cch dng mu vo AND voi mt na 0x000F d ly 4 bit LSB
(0x000F l biu din trong h thp luc phn cua 00000000 00001111, khi AND mt
mu voi mt na ny, chi 4 bit cui cua mu duoc giu lai, tao thnh 1 k hiu). Khi k
hiu thu ha nhn duoc bng cch dich mu ban du sang phai 4 bit v p dung lai mt
na. Cc buoc ny duoc lp lai cho dn khi ht chiu di cua mu vo v tao ra 4 k
hiu.
Do mi k hiu c chiu di 4 bit nn s c tt ca 16 k hiu. 16 k hiu ny duoc nh
xa thnh 16 muc din p cch du nhau dua theo mt bang tra nhu sau:

Bang 1. Bang tra PAM 16 mc
Khi k hiu Mc din p (biu din dng s Hex)
0000 0x7FFF
0001 0x6EEE
0010 0x5DDD
0011 0x4CCC
0100 0x3BBB
0101 0x2AAA
0110 0x1999
0111 0x0888
1000 - 0x0889
1001 - 0x199A
1010 - 0x2AAB
1011 - 0x3BBC
1100 - 0x4CCD
1101 - 0x5DDE
1110 - 0x6EEF
1111 - 0x8000

V du, mu vo l 0xA52E (10100101 00101110). Khi d, 1110 (sau khi loc mt na ly
4 bit LSB) duoc nh xa thnh muc -0x6EEF. Mi k hiu gm 4 bit duoc nh xa ln 16
muc cch du nhau tu -0x8000 dn 0x7FFF. Khoang cch giua cc muc duoc chon l
0x111 d c khoang cch du nhau.
Muc din p duoc chon sau d s duoc truyn di nhu mt sng vung. Chu ky cua sng
vung dat duoc bng cch xut cng mt muc din p d nhiu ln (v du 12 ln) d c
th dat duoc 1 dang sng vung tt o ng pht (sau khi qua b D/A).
Cng mt cch thuc hin cua b pht duoc p dung cho PAM 4 muc (4-PAM) v 8
muc (8-PAM) voi su khc nhau v mt na, dich v bang tra. Di voi 8-PAM, bit c
trong s thp nht (LSB) cua mu vo duoc loai bo d s bit cn lai (15) l mt bi s
Ti liu th nghim Xu l s tn hiu
51

cua 3. Diu ny gy tc dng khng dng k ln dang sng diu ch v dang sng khi
phuc lai.
Cc bang tra di voi b diu ch 4 PAM v 8 PAM ln luot nhu sau:
Bang 2. Bang tra PAM 4 mc
Khi k hiu Mc din p (dng Hex)
00 0x7FFF
01 0x2AAA
10 - 0x2AAB
11 - 0x8000

Bang 3. Bang tra PAM 8 mc
Khi k hiu Mc din p (dng s Hex)
000 0x7FFF
001 0x5B6D
010 0x36DB
011 0x1249
100 - 0x1249
101 - 0x36DB
110 - 0x5B6D
111 - 0x7FFF

Chuong trnh thc hin
Hy thuc hin theo cc buoc sau:
1. Cp ngun din cho kit v chay chuong trnh Code Compose Studio trn my
tnh.
2. Mo project PAM4 o folder C:\CCStudio_v3.1\MyProjects\PAM4\.
3. Trong cua s File View, double click ln tp tin PAM4.c d mo n ra. Dy l tp
tin chua m ngun chnh cua chuong trnh. Ni dung cua tp tin ny nhu sau:
// PAM
#include "DSK6713_aic23.h"
Uint32 fs=DSK6713_AIC23_FREQ_8KHZ;

#include <math.h>
//Initialization:
int i_PAM;
int j_PAM;
int k;
int masked_value, output;
int data_4PAM[4] = {0x7FFF, 0x2AAA, -0x2AAB, -0x8000};

Ti liu th nghim Xu l s tn hiu
52

int out_buffer[256];
int i=0;

interrupt void c_int11() //interrupt service routine
{
int sample_data;

if (i_PAM==96)
{
sample_data = input_sample(); //inputs data
i_PAM=0;
j_PAM=0;
}
masked_value = sample_data & 0x0003;
output = data_4PAM[masked_value];
output_sample(output);
out_buffer[i++] = output;
if (i==256)
i = 0;
j_PAM++; //repeated output counter

if (j_PAM==12)
{
j_PAM=0;
sample_data = sample_data >> 2;
}
i_PAM++;

return;
}

void main()
{
i_PAM=0;
comm_intr(); //init DSK, codec, McBSP
while(1); //infinite loop
}
Trong chuong trnh ny, hm main( ) dt gi tri bin i_PAM = 0 v khoi dng kit.
Sau d s thuc hin mt vng lp v tn voi lnh while (1).
Khi c tn hiu xung ly mu (tn s 8KHz), ngt 11 xay ra v trnh phuc vu ngt
c_int11( ) duoc goi. Trong trnh phuc vu ngt ny, du liu vo duoc doc vo bin
sample_data (bng lnh sample_data = input_sample( )). Mu du liu ny biu
din o dang s nguyn 16 bit c du.
Do o dy thuc hin diu ch PAM 4 muc, m d biu din duoc 4 muc th cn 2
bit. Do d, mu du liu vo s duoc chia ra lm 8 k hiu (symbol), mi k hiu 2
bit. D thuc hin vic chia ny, mu du liu duoc AND voi mt na 00000000
00000011 (tuc l 0x0003) d ly 2 bit LSB cua mu du liu. 2 bit ny duoc nh xa
thnh 1 trong 4 muc din p bng cch su dung bang data_4PAM. Bang ny c 4
Ti liu th nghim Xu l s tn hiu
53

gi tri ung voi 4 muc din p (0x7FFF, 0x2AAA, -0x2AAB, -0x8000) duoc khai
bo o du chuong trnh. Mi symbol s cho ra 1 muc din p. D cho dang sng
xut ra sau khi qua b A/D c dang sng vung, mi muc s duoc xut ra 12 ln
truoc khi chuyn sang muc ung voi symbol k tip. Bin dm j_PAM d dm s
ln xut ra cho du 12 ln. Nhu vy, ung voi mi mu vo 16 bit, ta c 8 symbol.
Mi symbol s xut ra 12 ln, nhu vy s ln xut ra ung voi mi mu l 8 x 12 =
96 duoc th hin boi bin dm i_PAM.
V d: Mu vo c gi tri 0x001B (tuc l 00000000 00011011). Mu ny du tin
duoc chua vo bin sample_data.
- Du tin: sample_data = 00000000 00011011
+ Sample_data AND 0x0003 = 00000000 00000011 (= 3).
+ data_4PAM(3) = - 0x8000 muc din p 0x8000 duoc xut ra 12 ln
- Tip theo: sample_data dich phai 2 bit 00000000 00000110
+ Sample_data AND 0x0003 = 00000000 00000010 ( = 2)
+ data_4PAM(2) = - 0x2AAB muc din p -0x2AAB duoc xut ra 12 ln
- Qu trnh tip tuc cho dn khi ht 16 bit cua mu vo, tuc l dich 8 ln, mi
ln xut 12 ln s ln xut tng cng i_PAM = 8 x 12 = 96 ln. Sau d s
doc vo mu k tip v thuc hin diu ch.
O dy, mt b dm ni out_buffer c kch thuoc 256 mu duoc dng d luu lai
gi tri xut ra nhm phuc vu cho vic v tn hiu xut ra bng cng cu Plot trong
CCS (xem phn huong dn v d thi trn CCS).
4. Chon Project Rebuild All d bin dich chuong trnh.
5. Sau khi bin dich thnh cng, nap chuong trnh ln kit (File Load Program) v
chay thu chuong trnh.
6. Mo my pht sng ln v quan st dang sng xut ra. O dy hy quan st theo 2
cch: (1) su dung Code Compose Studio d v cc gi tri cua b dm ni
out_buffer. (2) quan st tn hiu xut ra o ng ra Line Out cua kit bng
Oscilloscope.
7. Do o dy su dung my pht sng, dang sng thay di lin tuc nn kt qua ra kh
kim chung. Hy sua cu lnh sample_data = input_sample( ) thnh
sample_data = 0x???? (mt gi tri bt ky 16 bit dang s hex) ri bin dich, nap
v chay lai chuong trnh.V lai dang sng xut ra trong CCS. Lc ny, mu vo l
gi tri c dinh do nhp vo v dang sng xut ra s d dng kim chung hon.
Hy thu mt vi gi tri nhp vo v v dang sng xut ra.
Bi tp
Hy chp ton bo Folder PAM4 sang mot Folder moi v dt tn ty . Thuc hin cc
bi tap sau trn folder moi d khng lm anh huong dn phan d lm.
1. Chinh sua lai chuong trnh trn d thuc hin diu ch PAM 8 muc.
Goi :
- Moi symbol gom 3bits. Do mau vo c 16 bits, can bo 1 bits LSB (bng cch
dich phai sample_data 1 bit) d cn lai 15 bits l boi so cua 3 v moi mau se
tao ra 5 symbols.
- Mt na d lay 3 bit LSB l 00000000 00000111 (0x0007)
- Su dung bang tra ung voi 8-PAM d khai bo cc muc p ra tuong ung
2. Tuong tu, hy thuc hin mach diu ch PAM 16 muc trn kit
Ti liu th nghim Xu l s tn hiu
54


Trong phan bo co, chi can d phan m nguon ung voi giai thuat diu ch. Giai thch
v ve mot vi dang sng diu ch thu duoc d kim chung.
6.2 Thc hin mch diu ch PSK trn kit C6713
Trong bi th nghim ny, hai b diu ch PSK s duoc thuc hin l PSK nhi phn v
QPSK.

Giai thut diu ch
Mi mu vo duoc thu v luu vo trong mt vi tr nho, chua 16 bits. Ty theo kiu diu
ch PSK (2 pha hay 4 pha), mt mt na thch hop duoc su dung. Di voi BPSK, mi
gi tri mu vo duoc chia ra lm 16 thnh phn, mi thnh phn 1 bit; di voi QPSK,
mu vo duoc chia thnh 8 dibits (mi dibit gm 2 bits). Vic ny dat duoc bng cch
p mt na tuong ung 0x0001 v 0x0003 ln mu vo. Sau d, mu s duoc dich phai 1
bit ( BPSK) hoc 2 bit (QPSK) v lp lai cho dn khi ht chiu di mu vo.
Sau khi ct mu vo thnh cc doan nhu trn, cc gi tri s duoc gn cho cc dang sng
hnh sine voi pha tuong ung. Trong BPSK, chi c 2 pha l 0 v 180 ung voi bit 0 v
bit 1. Tuy nhin, voi QPSK, chng ta cn 4 pha (0, 90, 180 v 270) ung voi 00, 01,
11 v 10. Vic nh xa duoc thuc hin theo m Gray (Gray code) nhm lm cuc tiu li
do nhiu trong qu trnh truyn bng cch cuc dai khoang cch giua cc k hiu trn
gian d constellation.
Mi mu vo duoc biu din bng 16 bits. Mi mu s gm 16 doan (voi BPSK) v 8
doan (voi QPSK). Do mi k hiu duoc truyn boi mt hnh sine tao theo phuong php
s bng 4 dim, cu mi 64 mu ra (voi BPSK) hoc 32 mu ra (voi QPSK), mt mu
vo duoc ly vo.

Chuong trnh thc hin
Hy thuc hin theo cc buoc sau:
1. Cp ngun din cho kit v chay chuong trnh Code Compose Studio trn my
tnh.
2. Mo project BPSK o folder C:\CCStudio_v3.1\MyProjects\BPSK\.
3. Trong cua s File View, double click chut ln tp tin BPSK.c d mo ra. Dy l
tp tin chua m ngun chuong trnh. Ni dung chuong trnh ny nhu sau:
//BPSK
#include "DSK6713_aic23.h"
Uint32 fs=DSK6713_AIC23_FREQ_8KHZ;

#include <math.h>
//Initialization:
int i_BPSK;
int j_BPSK;
int k;
int masked_value, output;
int out_buffer[256];
int i=0;
//Data table for BPSK
int data_BPSK[2][4]={0, 1000, 0, -1000, //0 degree
Ti liu th nghim Xu l s tn hiu
55

0, -1000, 0, 1000}; //180 degree

interrupt void c_int11() //interrupt service routine
{
int sample_data;

if (i_BPSK==64) //determines when to get new input
{
sample_data = input_sample(); //inputs data
i_BPSK=0;
j_BPSK=0;
}

masked_value = sample_data & 0x0001;
output = data_BPSK[masked_value][j_BPSK];
output_sample(output*10);
out_buffer[i++] = output*10;
if (i==256)
i = 0;
j_BPSK++; //repeated output counter

if (j_BPSK==4)
{
j_BPSK=0;
sample_data = sample_data >> 1;
}
i_BPSK++;
return;
}

void main()
{
i_BPSK=64;
j_BPSK=0;
comm_intr();
while(1); //infinite loop
}
Hm main( ) s dt 2 bin dm i_BPSK = 64 v j_BPSK = 0, khoi dng kit v b
codec ri chay mt vng lp v tn. Khi c xung ly mu, ngt 11 duoc kch hoat v
trnh phuc vu ngt c_int11( ) duoc goi.
Trnh phuc vu ngt s doc mt mu du liu o ng vo. Mu ny duoc biu din bng
16 bit. Khi diu ch BPSK, mi symbol chi gm 1 bit (d phn bit 2 pha 0 v 180
chi cn 1 bit), do d, mu vo s duoc chia ra lm 16 symbol bng cch su dung mt
na 0x0001 d ly bit LSB. Ty bit ny l 0 hay 1 m xut ra dang sng sine c pha
tuong ung.
V d: Mu vo l 0x0003 duoc AND voi mt na 0x0001 cho ra bit 1. Do d, dang
sng sine xut ra c pha 180. O dy, sng sine duoc tao ra bng 4 dim, mi ln
mun xut sng sine, chuong trnh s xut ra 4 gi tri th hin 1 chu ky cua sng sine.
Ti liu th nghim Xu l s tn hiu
56

Trong chuong trnh trn, cc gi tri duoc khai bo trong bin data_BPSK[2][4]. Dy
l 1 mang 2 chiu kch thuoc 2x4 th hin 2 dang sng sine: pha 0 l {0, 1000, 0, -
1000} v pha 180 l {0, -1000, 0, 1000}. Gi tri ny th hin bin d cua sng sine
trong 1 chu ky, tai thoi dim 0, T/4, T/2 v 3T/4 (T l chu ky).
Sau khi xut ra du 4 dim, mu vo duoc dich sang phai 1 bit v ly mt na bit LSB.
Lp lai nhu vy cho dn ht chiu di cua mu.
Nhu vy, mi mu vo 16 bit c 16 symbol, mi symbol s tao ra 1 chu ky sng sine
gm 4 dim, do d voi mi mu vo, chuong trnh xut ra 4 x 16 = 64 mu ra v bin
dm i_BPSK gip xc dinh khi no duoc php ly mu vo k tip.
4. Bin dich chuong trnh. Nu thnh cng, nap chuong trnh d bin dich ln kit d
chay thu.
5. Mo my pht sng ln v quan st dang sng xut ra. O dy hy quan st theo 2
cch: (1) su dung Code Compose Studio d v cc gi tri cua b dm ni
out_buffer. (2) quan st tn hiu xut ra o ng ra Line Out cua kit bng
Oscilloscope.
6. Do o dy su dung my pht sng, dang sng thay di lin tuc nn kt qua ra kh
kim chung. Hy sua cu lnh sample_data = input_sample( ) thnh
sample_data = 0x???? (mt gi tri bt ky 16 bit dang s hex) ri bin dich, nap
v chay lai chuong trnh.V lai dang sng xut ra trong CCS. Lc ny, mu vo l
gi tri c dinh do nhp vo v dang sng xut ra s d dng kim chung hon.
7. Hy thu mt vi gi tri nhp vo v v dang sng xut ra.
Bi tp
Hy chp ton b folder BPSK sang mt folder moi v dt tn l QPSK. Chinh sua lai
chuong trnh d thuc hin diu ch QPSK. Sau d bin dich v chay trn kit d kim
chung kt qua thuc hin.
Goi :
- iu ch QPSK can 4 pha: 0, 90, 180 v 270 nn can khai bo 1 mang 4 x 4:
4 sng sine lch pha nhau 90, moi sng sine c 4 dim. t tn mang l
data_QPSK[4][4] thay cho data_BPSK v sua lai tn bin cho ph hop.
- Moi symbol gom 2 bit, do d can su dung mt na thch hop d lay 2 bit LSB v
moi lan dich 2 bit.
- Thay doi bin dm cho thch hop v moi mau vo chi gom 8 symbols.

Trong phn bo co, trnh by phn m ngun ng vi giai thut diu ch (phn t
thc hin). Giai thch nhng g d lm v v mt vi dng sng diu ch thu duc d
kim chng.






Ti liu th nghim Xu l s tn hiu
57

Ti liu tham khao
[1] Rulph Chassaing , Digital Signal Processing and Applications with the C6713 and 6746
DSK, John Wiley & Sons, Inc. 2005.
[2] L Tin Thuong, Xu l so tn hiu & Wavelet, Nh xut ban Dai hoc Quc Gia TP. HCM,
2004.
[3] J. Proakis, D. Manolakis, Introduction to Digital Signal Processing, MacMillan Publisher,
1989.
[4] The Wikipedia ( http://en.wikipedia.org/wiki/ )

You might also like