Xem mẫu
- thµnh N miÒn vµ g¸n cho mçi miÒn mét gi¸ trÞ nhÞ ph©n nh trong h×nh
13.14. Sù biÓu diÔn nµy kh«ng cã ý nghÜa g× vÒ mÆt vËt lý, vµ chøc n¨ng
cña sù biÓu diÔn nµy, nh chóng ta muèn, chØ dïng trong lÜnh vùc xö lý
tÝn hiÖu sè. TÊt c¶ c¸c tÝn hiÖu sè nµy gäi lµ ®iÒu m· xung (Pulse Code
Modulated - PCM). §Ó cã thÓ thùc sù thÊy gi¸ trÞ c¸c møc x¸m chóng ta
cÇn lîng tö ho¸ ngîc. Trong bíc nµy, c¸c gi¸ trÞ nhÞ ph©n biÓu diÔn
mét ®é chãi cô thÓ. C¸c bíc thùc sù cña qu¸ tr×nh nµy biÓu diÔn trong
h×nh 13.15. Trong lÜnh vùc t¬ng tù vµ lÜnh vùc sè qu¸ tr×nh nµy gäi lµ
chuyÓn ®æi tõ t¬ng tù sang sè (A/D) vµ chuyÓn ®æi tõ sè sang t¬ng tù
(D/A).
Trong c¸c øng dông nh trêng hîp biÕn ®æi cosin 2-D th× cã mét chót
kh¸c biÖt. C¸i mµ chóng ta cÇn lµm trong trêng hîp nµy lµ biÕn ®æi tõ
mét tËp hîp c¸c dÊu phÈy ®éng sang mét tËp hîp c¸c bÝt nhÞ ph©n vµ
ngîc l¹i. BiÓu v× biÕn ®æi ngîc cña lîng tö ho¸ lµ biÕn ®æi tõ nhiÒu
vµo mét, nªn qu¸ tr×nh nµy kh«ng thÓ tiÕn hµnh mét c¸ch th«ng thêng
®îc. May m¾n thay, cã mét sè ph¬ng ph¸p ®Ó lîng tö ho¸ vµ lîng tö
ho¸ ngîc. Chóng ta sÏ nghiªn cøu c¸c ph¬ng ph¸p nµy ë phÇn díi
®©y.
D¹ng nhÞ ph©n.
D¹ng thËp ph©n.
YU
N-1 11111111
dN N-2 11111110
dN-1 . .
. .
. .
. .
. .
. .
. .
Kho¶ng tÝn hiÖu.
. .
. .
. .
. .
. .
. .
. .
d5 4 00000100
d4
00000011
3
d3
00000010
2
d2
00000001
1
YL d1
00000000
0
d0
di { i= 0,...,1} lµ c¸c møc chia.
369
- H×nh 13.14 Lîng tö ho¸.
13.5.1 Lîng tö ho¸ ®ång ®Òu
§©y lµ d¹ng ®¬n gi¶n nhÊt cña lîng tö ho¸. Trong d¹ng lîng tö ho¸
nµy, kho¶ng (yu - yL) ®îc chia thµnh N kho¶ng c¸ch ®Òu nhau (xem
trong h×nh 13.14). C¸c gi¸ trÞ tõ d0 ®Õn dN ®îc gäi lµ c¸c møc chia. C¸c
møc lîng tö biÓu diÔn gi¸ trÞ thùc cña c¸c møc chia trong kho¶ng tõ di
®Õn di+1 díi d¹ng sè nhÞ ph©n b»ng i.
V× vËy, nÕu nh di+1 < y di th× gi¸ trÞ cña lîng tö ®Çu ra = i.
Møc lîng tö ®Çu ra cã thÓ biÓu diÔn theo c«ng thøc:
y yL
i ( N 1)
yv y L
ë ®©y dÊu cã nghÜa lµ lµm trßn thµnh sè nguyªn gÇn nhÊt.
Lîng tö ho¸ ngîc dïng mét b¶ng biÕn ®æi ngîc gi÷a gi¸ trÞ lîng
tö i vµ biÕn ®æi ngîc cña nã ri
d i d i 1
ri
2
Tuy nhiªn lîng tö ho¸ ®ång ®Òu kh«ng quan t©m ®Õn kh¶ n¨ng x¶y ra
cña sù kiÖn víi c¸c gi¸ trÞ ®îc ®a ra. Tæng qu¸t, qu¸ tr×nh lîng tö ho¸
nµy ¸p dông cho trêng hîp tÊt c¶ c¸c møc cã kh¶ n¨ng xuÊt hiÖn b»ng
nhau. §iÒu nµy, trong hÇu hÕt c¸c trêng hîp lµ kh«ng ®óng. DÔ nhËn
thÊy lµ c¸c møc lîng tö ho¸ tËp trung nhiÒu nhÊt vµo miÒn mµ kh¶ n¨ng
xuÊt hiÖn cña c¸c møc x¸m nhiÒu nhÊt. §iÒu nµy dÉn chóng ta ®Õn
ph¬ng ph¸p thiÕt kÕ lîng tö ho¸ díi ®©y.
TÝn hiÖu Lîng Møc
TÝn hiÖu
d¹ng nhÞ
tö ho¸ ®îc t¸i TÝn hiÖu
ph©n.
t¬ng tù.
ngîc thiÕt. ¸nh s¸ng.
Bé läc
hay th«ng
biÕn ®æi thÊp.
sè sang
t
t
H×nh 13.15 Lîng tö ho¸ ngîc.
370
- 13.5.2 Lîng tö ho¸ kh«ng ®ång ®Òu
Trong phÇn nµy chóng ta sÏ xem xÐt ph¬ng ph¸p lîng tö ho¸ kh«ng
®ång ®Òu tèi u nhÊt trong hÖ thèng PCM. C¸c nghiªn cøu cho ph¬ng
ph¸p nµy ®· ®îc Panter vµ Dite ®a ra trong mét cuèn s¸ch xuÊt b¶n vµo
n¨m 1949. Trong cuèn s¸ch nµy hä ®· ®a gi¶i thuËt cho lîng tö ho¸
kh«ng ®ång ®Òu. Hä ®a ra mét ph¬ng ph¸p xÊp xØ tèi u cho lîng tö
ho¸ kh«ng ®ång ®Òu. Gi¶i thuËt nµy sÏ kh«ng ®óng cho c¸c trêng hîp
qu¸ tr×nh lîng tö ho¸ cã qu¸ Ýt møc chia. Tuy nhiªn c¸c gi¶i thuËt nµy
®îc ph¸t triÓn mét c¸c trän vÑn trong mét b¸o c¸o cha ®îc xuÊt b¶n
cña Lloyd vµo n¨m 1957 vµ ®îc Max kiÓm nghiÖm vµo n¨m 1960. Mét
ph¬ng ph¸p lîng tö ho¸ kÕt hîp c¶ hai ph¬ng ph¸p cña Lloyd vµ Max
thêng ®îc gäi lµ ph¬ng ph¸p lîng tö ho¸ Lloyd-Max. Trong phÇn
b¸o c¸o xuÊt b¶n sau ®ã cña Lloyd xuÊt b¶n vµo n¨m 1982 ®· cho thÊy
cã rÊt nhiÒu øng dông rÊt thó vÞ cña ph¬ng ph¸p nµy. B¶n b¸o c¸o nµy
cã hai ph¬ng ph¸p thiÕt kÕ, mét ph¬ng ph¸p trong ®ã gièng ph¬ng
ph¸p cña Max. Ph¬ng ph¸p nµy gäi lµ ph¬ng ph¸p II. Ph¬ng ph¸p I tá
ra cã nhiÒu øng dông vµ dÔ tÝnh to¸n h¬n ph¬ng ph¸p II. C¶ hai ph¬ng
ph¸p thiÕt kÕ nµy ®Òu ®îc tr×nh bµy ë phÇn díi ®©y.
NÕu chóng ta coi r»ng c¸c møc lîng tö ho¸ ®îc cho bëi
di , i = 0 ... N
(xem h×nh 13.16) vµ c¸c møc kh«i phôc cho bëi
ri , i = 0 ... N
vµ gi¸ trÞ ®o cña tÊt c¶ c¸c møc nµy cho bëi:
N d k 1
( y rk ) 2 p( y)dy (13.49)
E
k 0 d k
ë ®©y y lµ tÝn hiÖu ®Çu vµo cßn p(y) lµ kh¶ n¨ng xuÊt hiÖn cña y.
371
- H×nh 13.16 C¸c møc lÊy mÉu vµ kh«i phôc.
y(t) mÉu i ri
Lîng tö ho¸. Lîng tö ho¸
ngîc.
y
yu
dN i ri
N -1
dN-1
C¸c møc chia.
r0
d5
d4
MÉu
. .
3
d3
d2 2
. .
d1 1
yL d0 0 LUT cho lîng
tö ho¸ ngîc.
H×nh 13.17 C¸c xö lý lÊy mÉu vµ kh«i phôc.
H×nh 13.17 cung cÊp s¬ ®å khèi cña qu¸ tr×nh lîng tö ho¸ vµ lîng tö
ho¸ ngîc. TÝn hiÖu vµo y(t) ph¶i ®îc coi lµ ®· biÕt kh¶ n¨ng xuÊt hiÖn.
VÊn ®Ò ®Æt ra lµ ph¶i x¸c ®Þnh c¸c møc lÊy mÉu vµ c¸c møc kh«i phôc
sao cho mÐo tÝn hiÖu lµ nhá nhÊt.
ViÕt l¹i biÓu thøc (13.49 ):
d1 di
2 2
E ( y r0 ) p ( y ) dy ... ( y ri 1 ) p ( y ) dy
d0 di 1
372
- d i 1 d n 1
2
) 2 p ( y )dy (13.50)
(y r ) p ( y)dy ... (y r
i N
di dN
Vi ph©n (13.50) theo dI vµ cho biÓu thøc nµy b»ng kh«ng chóng ta
®îc
ri ri 1
(13.51)
di
2
i = 1,2,3, ... ,N
LÊy vi ph©n (13.50) theo ri chóng ta ®îc.
d
i 1
E
2 ( y ri ) p ( y ) dy
ri d i
d i 1
yp( y)dy
di
(13.52)
ri d i1
p( y )dy
di
i = 0, 1, ... , N - 1.
H×nh 13.18 Ph¬ng ph¸p Newton-Raphson cho tÝnh c¸c biÓu thøc trong
ngoÆc.
BiÓu thøc (13.50) vµ biÓu thøc (13.51) ®a ra ph¬ng ph¸p x¸c ®Þnh
c¸c møc lÊy mÉu vµ c¸c møc kh«i phôc dïng cho c¶ ph¬ng ph¸p cña
Lloyd-Max hoÆc lµ ph¬ng ph¸p Lloyd.
Ph¬ng ph¸p Lloyd-Max Lloyd vµ Max ®· ph¸t triÓn ®éc lËp thuËt
to¸n ®Ó gi¶i quyÕt biÓu thøc (13.50) vµ (13.51). C¸c chi tiÕt cña thuËt
to¸n nµy vÉn cha ®îc cung cÊp. Trong phÇn nµy t«i sÏ cung cÊp cho
b¹n mét thuËt to¸n dùa trªn thuËt to¸n Lloyd-Max nhng cã c¸c chi tiÕt
373
- cô thÓ h¬n. T«i còng sÏ cung cÊp cho b¹n phÇn mÒm thiÕt kÕ N møc lÊy
mÉu vµ kh«i phôc.
ThuËt to¸n nµy gåm c¸c bíc sau:
1. Chän mét gi¸ trÞ cho r0. d0 vµ dN ®îc coi lµ ®· biÕt.
2. Cho i = 1,2,...,N - 1.
a. TÝnh di tõ
di
yp( y )dy
d i 1i
ri 1 di
p( y )dy
d i 1
b. TÝnh ri tõ
ri 2d i ri 1
3. TÝnh
dN
yp( y )dy
d N 1
r/ dN
p( y )dy
d N 1
4. NÕu rN-1 r/, thay ®æi l¹i r0 vµ lÆp l¹i c¸c bíc tõ bíc 2 cho ®Õn
bíc 4.
B©y giê t«i sÏ cung cÊp cho b¹n c¸c chi tiÕt cÇn thiÕt ®Ó t¹o ra thuËt
to¸n trªn.
Chi tiÕt cho viÖc tÝnh di trong bíc 2a cña thuËt to¸n Lloyd-Max. di cã
thÓ tÝnh theo hµm sau ®©y:
di
yp( y )dy
d i 1
(13.53)
f (d i ) ri 1 di
p( y)dy
di 1
Cã thÓ rót ra biÓu thøc gèc theo c«ng thøc lÆp Newton-Raphon ®îc
cho bëi:
374
- f (d il )
d il 1 d il (13.54)
f / (d il )
ë ®©y l lµ sè lÇn lÆp vµ f/(di) lµ ®¹o hµm cña f(di) theo di cho theo c«ng
thøc:
di
yp( y )dy
p(d i )
di 1
f / (d i ) d (13.50)
d i
di
i
p( y )dy p( y)dy
d i 1 d i 1
d0i lµ gi¸ trÞ ban ®Çu. PhÐp lÆp diÔn ra cho ®Õn khi f (di )
Gi¸ trÞ ban ®Çu cho d1 lµ d0 + , cho d2 lµ d1 + , ..., ë ®©y lµ mét gi¸
trÞ nhá. Gi¸ trÞ gèc cña f(di) cã thÓ tÝnh theo dïng ph¬ng ph¸p nöa lÆp
(bisection). ¦u ®iÓm cña ph¬ng ph¸p Newton-Raphson lµ kh¶ n¨ng héi
tô nhanh. Nhîc ®iÓm lµ ®¹o hµm cña mét hµm thêng cã gi¸ trÞ rÊt nhá
vµ dÔ dÉn ®Õn gi¸ trÞ zero g©y nªn sù kh«ng æn ®Þnh cña c¸c sè.
C¸c chi tiÕt cho viÖc thay ®æi r0. Gi¸ trÞ r0 cã thÓ thay ®æi l¹i nÕu chóng
ta nhËn thÊy r»ng gi¸ trÞ gèc cña hµm:
g (r0 ) rN 1 r / (13.56)
Gi¸ trÞ gèc nµy cã thÓ rót ra dïng c¸c gi¶ thiÕt cña Newton-Raphson
theo:
g (r0l )
l 1 l
(13.57)
r r / l
0 0
g (r0 )
§¹o hµm cña g(r0) cã thÓ rÊt khã kh¨n cho viÖc ph©n tÝch. Trong
trêng hîp nµy cÇn cã mét c«ng cô tÝnh to¸n kh¸c. Chóng ta cã thÓ thay
thÕ ®¹o hµm b»ng mét gi¸ trÞ h»ng sè cã cïng dÊu nh biÓu thøc trong
dÊu ngoÆc (xem h×nh 13.8). Trong trêng hîp nµy th× tÝch ph©n l©u héi tô
h¬n.
TiÕp theo lµ mét ch¬ng tr×nh cho tÝnh c¸c møc lîng tö ho¸ theo
ph¬ng ph¸p Lloyd-Max. TÝch ph©n ®îc ®a ra dïng ph¬ng ph¸p tÝch
ph©n Romberg bëi v× nã chÝnh x¸c h¬n ph¬ng ph¸p tÝch ph©n Simpson.
Ch¬ng tr×nh cho phÐp b¹n thiÕt kÕ lîng tö ho¸ ®ång ®Òu, Gauss hoÆc lµ
Laplace.
1 2
/ 2 2 )
e ( y
Gauss p( y )
2 2
375
- y
Laplace p( y ) e
2
2
1 | y |
- double Romberg(double, double, double
(*)(double));
char ch;
void main()
{
double *r,*d,r1,delta,alpha;
int i,m,N,k,xt,yt;
double der,rt,deltal, delta2;
char ch1,file_name[16];
FILE *fptr;
clrscr();
printf("Enter number of bits --- >");
scanf("%d",&m);
N=1
- printf("\n a choice between using calculated
values, a");
printf("\n fixed value or decreasing values for
the ");
printf("\n derivatives at every update or
calculated ");
printf("\n values. Always pick the first choice
unless ");
printf("\n you encounter numerical problems.");
xt=wherex();
yt=wherey();
gotoxy(1,21);
printf("Recommendations: Guassian or Uniform
select I or 2.\n");
printf(" Laplace select 3.");
gotoxy(xt,yt);
printf("\n Enter choice:");
printf("\n 1. Calculated derivative of the
error function.");
printf("\n 2. Fixed value.");
printf("\n 3. Decreasing derivative.-->");
while(((ch1=getch())!='1')&&(ch1!='2')&&(ch1!='3'
));
putch(ch1);
gotoxy(1,21);
delline();
delline();
delta=20.0;
k=0;
xt=wherex(); yt=wherey();
gotoxy(70,25);
textattr(WHITE+(GREEN=1000) break;
/* Computing the derivative of the function:
f(r[0])=r[N-1]-r1, numerically. */
switch(ch1)
{
378
- case '1':
rt=r[0]; r[0]=r[0]+0.001;
for(i=1;i
- gotoxy(1,18);
printf("\n %d derivative=%f error=%f ",
k,der,delta);
if(fabs(delta)>=500.0)
{
printf("\n A numerical problem was
encountered.");
printf("\n Restart problem with a different
choice.");
exit(1);
}
r[0]-delta/der;
}
gotoxy(70,25);
textattr(WHITE+(BLACK
nguon tai.lieu . vn