陳紹榮,朱行濤,徐 舜,沈建國(guó)
(陸軍工程大學(xué)通信士官學(xué)校,重慶 400035)
在實(shí)時(shí)信號(hào)處理中,通常用FFT的算法來(lái)完成線(xiàn)性卷和運(yùn)算,因此需要對(duì)長(zhǎng)序列進(jìn)行分段,其分段方法有無(wú)重疊等長(zhǎng)度分段和重疊等長(zhǎng)度分段,對(duì)應(yīng)的兩種計(jì)算線(xiàn)性卷和的方法,分別是重疊相加法和重疊保留法。著作[1-3]用圖解的方式導(dǎo)出了重疊相加法和重疊保留法,既不嚴(yán)謹(jǐn)又不便于理解。本文基于著作[4],利用矩形窗函數(shù)對(duì)序列的分段進(jìn)行了描述,給出了一種導(dǎo)出重疊相加法和重疊保留法的簡(jiǎn)易方法,揭示了兩種方法的聯(lián)系和區(qū)別。解決了兩種方法在實(shí)時(shí)信號(hào)處理中的信號(hào)拼接問(wèn)題,給出了重疊保留法在快速計(jì)算自相關(guān)函數(shù)方面的應(yīng)用。
設(shè)矩形窗函數(shù)為:
式中,ε(n)為單位階躍序列。
利用矩形窗函數(shù),起點(diǎn)為n1(n1為整數(shù)),長(zhǎng)度為N1的有限長(zhǎng)序列x1(n)可表示為:
同理,起點(diǎn)為n2(n2為整數(shù)),長(zhǎng)度為N2的有限長(zhǎng)序列x2(n)可表示為:
有限長(zhǎng)序列x1(n)和x2(n)的線(xiàn)性卷和yl(n)表示為:
考慮到式(2)、式(3)及式(4),則有:
考慮到式(5)及式(6),則有:
由式(7)可知,線(xiàn)性卷和yl(n)的序列長(zhǎng)度為:
結(jié)論1:
兩個(gè)有限長(zhǎng)序列的線(xiàn)性卷和yl(n)是一個(gè)有限長(zhǎng)序列,該有限長(zhǎng)序列始于兩個(gè)有限長(zhǎng)序列的始點(diǎn)之和,止于兩個(gè)有限長(zhǎng)序列的終點(diǎn)之和,其序列長(zhǎng)度為兩個(gè)有限長(zhǎng)序列的長(zhǎng)度相加再減1。
利用矩形窗函數(shù),考慮到式(7)及式(8),則線(xiàn)性卷和yl(n)可以表示為:
設(shè)周期為N的周期沖激序列為:
在式(2)及式(3)描述的有限長(zhǎng)序列x1(n)及x2(n)之后,分別補(bǔ)上N-N1及N-N2個(gè)零值點(diǎn),再延拓成周期為N的周期序列,即:
由兩個(gè)周期序列的周期卷和的定義,并考慮到周期序列在一周期內(nèi)的求和與起始位無(wú)關(guān)及式(11),則兩個(gè)周期序列的周期卷和可以表示為:
結(jié)論2:
兩個(gè)周期序列作周期卷和等價(jià)于一個(gè)周期序列任一周期內(nèi)的序列和另一個(gè)周期序作線(xiàn)性卷和,也等價(jià)于對(duì)兩個(gè)周期序列任一周期內(nèi)的序列的線(xiàn)性卷和作同周期的周期延拓。
將兩個(gè)有限長(zhǎng)序列x1(n)及x2(n)之后,先分別補(bǔ)上N-N1及N-N2個(gè)零值點(diǎn),得到了兩個(gè)長(zhǎng)度為N的序列,再分別作周期為N的周期延拓,得到了周期為N的周期序列的周期卷和取主值,即取區(qū)間[0,N-1]對(duì)應(yīng)的值,定義為N點(diǎn)序列x1(n)及x2(n)的N點(diǎn)圓周卷和y(n)。
考慮到兩個(gè)N點(diǎn)序列的N點(diǎn)圓周卷和的定義及式(13),則N點(diǎn)序列x1(n)及x2(n)的N點(diǎn)圓周卷和y(n)可以表示為:
結(jié)論3:
兩個(gè)N點(diǎn)序列作N點(diǎn)圓周卷和,等價(jià)于兩個(gè)N點(diǎn)序列的線(xiàn)性卷和作N點(diǎn)的周期延拓,再取其主值序列。
考慮到式(15)及式(9),若滿(mǎn)足條件:
則有:
特別地
若滿(mǎn)足條件:
則有:
若滿(mǎn)足條件:
則有:
結(jié)論4:
若序列x1(n)=x1(n)RN1(n),x2(n)=x2(n)RN2(n),當(dāng)N=N1+N2-1 時(shí),則滿(mǎn)足式(21)的條件,那么可用序列x1(n)和x2(n)的N點(diǎn)圓周卷和y(n)來(lái)代替序列x1(n)和x2(n)的線(xiàn)性卷和yl(n)。
若序列x1(n)=x1(n)RN1(n),x2(n)=x2(n)RN2(n),當(dāng) 式(21)的條件得不到滿(mǎn)足時(shí),由式(14)可知,將序列x1(n)和x2(n)的線(xiàn)性卷和yl(n)作周期延拓,即yl(n)*δN(n)=yl(n)RN1+N2-1(n)*δN(n),那么,每周內(nèi)將出現(xiàn)重疊。雖然增加點(diǎn)數(shù)N可避免序列x1(n)和x2(n)的N點(diǎn)圓周卷和y(n)出現(xiàn)重疊,但是使用FFT來(lái)計(jì)算N點(diǎn)圓周卷和y(n)時(shí),將會(huì)增加運(yùn)算量。
由于序列x(n)通過(guò)單位沖激響應(yīng)為h(n)的LSI離散時(shí)間系統(tǒng)時(shí),系統(tǒng)的零狀態(tài)響應(yīng)yzs(n)可以表示成yzs(n)=x(n)*h(n),有時(shí)序列x(n)可能會(huì)很長(zhǎng),如果將序列x(n)存儲(chǔ)完畢后,再做線(xiàn)性卷和將產(chǎn)生兩個(gè)問(wèn)題:一是要求計(jì)算機(jī)的存儲(chǔ)量過(guò)大,二是要等待序列x(n)的輸入時(shí)間過(guò)長(zhǎng),即使h(n)是有限長(zhǎng)的,也不能實(shí)現(xiàn)信號(hào)的“實(shí)時(shí)處理”。為了解決這一問(wèn)題,如果h(n)的長(zhǎng)度為N2,選取長(zhǎng)度N1,保證M為最小的正整數(shù)時(shí),滿(mǎn)足條件N=N1+N2-1=2M,將長(zhǎng)度為L(zhǎng)的輸入序列x(n)按等長(zhǎng)度N1進(jìn)行分段,則第i段的序列可以表示為xi(n)=x(n)RN1(n-iN1),i=0,1,2,…,,其中表示大于或等于L/N1的正整數(shù)。將序列xi(n)及h(n)做線(xiàn)性卷和運(yùn)算得到序列yi(n),然后將各段序列yi(n)按一定的規(guī)則相加,即可得到完整的零狀態(tài)響應(yīng)yzs(n),這樣做有可能實(shí)現(xiàn)信號(hào)的實(shí)時(shí)處理。
將長(zhǎng)序列分成短序列做線(xiàn)性卷和有兩種方法,一是重疊相加法,二是重疊保留法。
設(shè)序列x(n)=x(n)RL(n),h(n)=h(n)RN2(n),L和N2為正整數(shù),并且L>>N2。
選取長(zhǎng)度N1,保證M為最小正整數(shù)時(shí),滿(mǎn)足條件N=N1+N2-1=2M,將序列x(n)按等長(zhǎng)度N1分段,則有:
式中:
考慮到式(23)及式(24),則有:
由 于N=N1+N2-1=2M,h(n)=h(n)RN2(n),xi(n+iN1)=x(n+iN1)RN1(n),由結(jié)論4 可知,可用序列x(n+iN1)RN1(n)和h(n)RN2(n)的N點(diǎn)圓周卷和來(lái)代替線(xiàn)性卷和。那么,式(25)中的yi(n)可表示為:
考慮到式(26),則可以利用FFT來(lái)計(jì)算LSI離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)yzs(n),其實(shí)現(xiàn)步驟為:
(1)計(jì)算N 點(diǎn)FFT
(2)計(jì)算N 點(diǎn)FFT
(3)相乘
(4)計(jì)算N 點(diǎn)IFFT
(5)將各段yi(n)按式(25)相加,即按式(25)完成LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)信號(hào)的拼接。
討論:
由結(jié)論1 可知,第i段xi(n)和h(n)RN2(n)的線(xiàn)性卷和yi(n-iN1)=xi(n)*h(n)RN2(n)和h(n)RN2(n)中的變量n的取值范圍為:
由結(jié)論1 可知,第i-1 段xi-1(n)和h(n)RN2(n)的線(xiàn)性卷和y(i-1)[n-(i-1)N1]=xi-1(n)*h(n)RN2(n)中的變量n的取值范圍為:
由式(31)及式(32)可知,第i-1 段的線(xiàn)性卷和y(i-1)[n-(i-1)N1]的末端與第i段的線(xiàn)性卷和yi(n-iN1)的前端將出現(xiàn)重疊,其重疊的長(zhǎng)度為:
結(jié)論5:
由式(33)可知,按式(25)的重疊相加法來(lái)計(jì)算LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)時(shí),相鄰段的線(xiàn)性卷和將出現(xiàn)N2-1 點(diǎn)的重疊相加運(yùn)算,故得名重疊相加法。
考慮到h(n)=h(n)RN2(n),則有:
于是:
式中,i=1,2,…,。
由式(35)可知,yzs(iN1)由xi(n)的首位數(shù)據(jù)xi(iN1)=x(iN1)及首位之前的N2-1 個(gè)點(diǎn)的輸入數(shù)據(jù)x(m)(m=iN1-N2+1,iN1-N2+2,…,iN1-1)
共同確定。
結(jié)論6:
用對(duì)輸入x(n)等長(zhǎng)度N1分段的線(xiàn)性卷和來(lái)計(jì)算LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)時(shí),出現(xiàn)重疊相加運(yùn)算的本質(zhì)是第i段首位之前的N2-1 點(diǎn)的輸入數(shù)據(jù)x(m),對(duì)第i段前N2-1 點(diǎn)的線(xiàn)性卷和有影響。
由于用對(duì)x(n)等長(zhǎng)度N1分段的線(xiàn)性卷和來(lái)計(jì)算LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)時(shí),出現(xiàn)了重疊相加運(yùn)算,為了避免重疊相加運(yùn)算,可以將第i段首位之前的N2-1 點(diǎn)輸入數(shù)據(jù)x(n)保留下來(lái)與第i段的序列xi(n) 依次銜接起來(lái),構(gòu)成一個(gè)長(zhǎng)度為N=N1+N2-1 的 新 序 列pi(n)(i=1,2,…,,考慮到x(n)=x(n)RL(n),只須在x0(n)=x(n)RN1(n)段的前端補(bǔ)上N2-1 個(gè)零值點(diǎn),便可構(gòu)成新序列p0(n),這樣各段pi(n)均為N1+N2-1 點(diǎn)的序列。即:
式中,i=1,2,…,。
考慮到式(36)及式(37),則長(zhǎng)度為N1+N2-1 的序列pi(n)和LSI 離散時(shí)間系統(tǒng)單位沖激響應(yīng)h(n)的線(xiàn)性卷和yli(n)(i=0,1,2,…,,可以表示為:
下面確定n在什么范圍內(nèi)取值時(shí),才能使yli(n)=yzs(n)。
對(duì)比式(38)和式(34)可知,為使線(xiàn)性卷和yli(n)=yzs(n),則要求:
式中,m為整數(shù)。
顯然,若滿(mǎn)足條件:
則式(39)恒成立。
即,若滿(mǎn)足條件:
則式(39)恒成立。
由式(38)和式(34)可知,mmin=n-(N2-1),mmax=n。
于是式(41)可以表示為:
解得:
由式(43)可知,其區(qū)間長(zhǎng)度為:
考慮到式(43)及式(44),則有:
考慮到式(45),則有:
分析表明,將各段pi(n)和LSI 離散時(shí)間系統(tǒng)單位沖激響應(yīng)h(n)的線(xiàn)性卷和yli(n),按式(46)逐段銜接(或拼接)起來(lái),就得到了LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)yzs(n)。
下面的任務(wù)是考察是否可用圓周卷和來(lái)替代線(xiàn)性卷和yli(n)。
考慮到h(n)=h(n)RN2(n),式(36)及式(37),并注意到N=N1+N2-1=2M,由結(jié)論1 可知,pi(n)和LSI 離散時(shí)間系統(tǒng)單位沖激響應(yīng)h(n)的線(xiàn)性卷和yli(n)(i=0,1,2,…,,可以表示為:
于是:
即:
考慮到式(49),由結(jié)論3 可知,pi(n+iN1)和h(n)的N點(diǎn)圓周卷和yi(n+iN1)可以表示為:
由式(50)可得:
考慮到式(51),則式(46)可以寫(xiě)成:
考慮到式(50),則可以利用FFT來(lái)計(jì)算LSI離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)yzs(n),其實(shí)現(xiàn)步驟為:
(1)計(jì)算N 點(diǎn)FFT
(2)基于式(36)及式(37),計(jì)算N 點(diǎn)FFT
(3)相乘
(4)計(jì)算N 點(diǎn)IFFT
(5)將各段yi(n+iN1)按式(52)逐段銜接(或拼接)起來(lái),就得到了LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)yzs(n)。
由式(36)及式(37)可知,將第i段首位之前的N2-1 點(diǎn)輸入數(shù)據(jù)x(n)保留下來(lái),與第i段xi(n)依次銜接起來(lái)構(gòu)成了pi(n),從而使pi-1(n)的末端與pi(n)的前端N2-1 點(diǎn)的數(shù)據(jù)相同,即pi-1(n)與pi(n)之間有N2-1 點(diǎn)的數(shù)據(jù)重疊,故得名重疊保留法。由式(50)可知,pi(n+iN1)和h(n)的N點(diǎn)圓周卷和yi(n+iN1)末端出現(xiàn)了N2-1 點(diǎn)的重疊數(shù)據(jù),由式(51)可知,將pi(n+iN1)和h(n)的N點(diǎn)圓周卷和yi(n+iN1)末端N2-1 點(diǎn)的重疊數(shù)據(jù)舍去,才保證了pi(n+iN1)和h(n)的圓周卷和等于線(xiàn)性卷和,故又得名重疊舍去法。
設(shè)序列x(n)=x(n)RL(n),先將x(n)按長(zhǎng)度N2分段,則第j段可以表示為:
式中,j=0,1,2,…,。
于是:
現(xiàn)在,構(gòu)成各段pi(n)均為N=N1+N2-1=2M點(diǎn)的序列,即:
式中,i=1,2,…,。
令:
考慮到式(57),則式(61)可以表示為:
式(62)表明,hj(n)是一個(gè)長(zhǎng)度為N2點(diǎn)的序列,并且滿(mǎn)足hj(n)=hj(n)RN2(n)。
考慮到序列自相關(guān)函數(shù)的定義及式(58),則序列x(n)的自相關(guān)函數(shù)Rx(n)可以表示為:
令:
則有:
考慮到式(61),則式(65)可以寫(xiě)成:
式中,i=0,1,2,…,-1。
由于式(66)與式(47)同形,考慮到式(52),則有:
式 中,Rpixj[n+iN1-jN2-(N2-1)]為pi(n+iN1) 和hj(n)的N點(diǎn)圓周卷和。
考慮到式(66),由結(jié)論3 可知:
考慮到式(67),則有:
將式(69)代入式(63),可得序列x(n)的自相關(guān)函數(shù)Rx(n),即:
考慮到式(68),則可以利用FFT 來(lái)計(jì)算序列x(n)的自相關(guān)函數(shù)Rx(n),其實(shí)現(xiàn)步驟為:
(1)基于式(59)及式(60),計(jì)算N 點(diǎn)FFT
(2)基于式(61),計(jì)算N 點(diǎn)FFT
(3)相乘
(4)計(jì)算N 點(diǎn)IFFT
(5)將各段Rpixj[n+iN1-jN2-(N2-1)],按式(70)相加,即完成自相關(guān)函數(shù)的拼接,就得到了自相關(guān)函數(shù)Rx(n)。
本文利用矩形窗函數(shù)對(duì)輸入序列的等長(zhǎng)度N1分段進(jìn)行了描述,分析了用對(duì)輸入x(n)等長(zhǎng)度N1分段的線(xiàn)性卷和來(lái)計(jì)算LSI 離散時(shí)間系統(tǒng)的零狀態(tài)響應(yīng)時(shí),出現(xiàn)重疊相加運(yùn)算的原因。不僅給出了一種導(dǎo)出重疊相加法和重疊保留法的簡(jiǎn)易方法,而且揭示了重疊相加法和重疊保留法的聯(lián)系和區(qū)別。解決了兩種方法在實(shí)時(shí)信號(hào)處理中的信號(hào)拼接問(wèn)題,最后給出了重疊保留法在快速計(jì)算自相關(guān)函數(shù)方面的應(yīng)用。