欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

音頻多聲道處理用等間隔子帶分析和合成濾波器的制作方法

文檔序號:7581893閱讀:293來源:國知局
專利名稱:音頻多聲道處理用等間隔子帶分析和合成濾波器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器。更具體地說,涉及用流水線定時進(jìn)行分析濾波的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器。
在現(xiàn)有技術(shù)中,MPEG-2音頻編碼器的分析濾波器執(zhí)行把時間域的信號變更為頻率域的任務(wù),而決定了與分析濾波器的分辨率相對應(yīng)的MPEG-2音頻編碼器的音質(zhì)。這樣的現(xiàn)有分析濾波器的動作在各聲道的32個取樣輸入并最終以32個子帶音頻信號輸出之前通過幾個階段的運(yùn)算而完成,該運(yùn)算階段已在ISO/IEC 11172-3 MPEG-1音頻中表示了,若對各階段進(jìn)行說明,則為以下這樣作為第一運(yùn)算階段,輸入32個新的音頻取樣,制作具有512個元素的矢量,從矢量中除去成為最長的32個取樣。如果用代數(shù)式表示,則為下列代數(shù)式1那樣代數(shù)式1Xi=Xi-32i=511、510、…、32作為第二運(yùn)算階段,用新生成的輸入矢量乘以分析窗口(analysiswindow)Ci。如果用代數(shù)式表示,則為下列代數(shù)式2那樣代數(shù)式2Zi=Ci×Xii=511、510、…、0
作為第三運(yùn)算階段,按照一定的規(guī)則,每8個加乘以窗口而生成的512個取樣Zi,而構(gòu)成具有64個元素的新的矢量yk。如果用代數(shù)式表示,則為下列代數(shù)式3那樣代數(shù)式3yk=Σj=07Zk+64j,]]>k=0,1,…,63作為第四運(yùn)算階段,把上述代數(shù)式3的矢量yk與分析行列式(analysis matrix)mik相乘,而形成32個子帶取樣Si。如果用代數(shù)式表示,則為下列代數(shù)式4那樣代數(shù)式4mik=cos[π/64(2i+1)(k-16)],i=0,1,…,31,k=0,1,…,63Si=Σk=063cos[π/64(2i+1)(k-16)]yk,]]>i=0,1,…,31如果查看上述的運(yùn)算過程,具有矩陣運(yùn)算占據(jù)了現(xiàn)有分析濾波器的運(yùn)算量的大部分的缺點(diǎn)。這樣,鑒于上述問題,本發(fā)明的第一目的是提供一種MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,能夠在以一定工作頻率所分配的周期內(nèi)分析濾波5聲道的幀取樣。
另一方面,MPEG-2音頻解碼器的合成濾波器執(zhí)行把被置換到頻率域中的子帶信號再次逆變換為時間域的任務(wù)。MPEG-2音頻解碼器由合成濾波器的精度決定其音質(zhì),這樣的濾波器在各個聲道中進(jìn)行相同的運(yùn)算,這樣的現(xiàn)有合成濾波器的運(yùn)算過程表示在ISO/IEC 11172-3 MPEG-1音頻中,為執(zhí)行這樣的運(yùn)算,在各聲道的32個取樣被輸入并最終以32個子帶音頻信號被輸出之前,用幾個階段的運(yùn)算完成。
當(dāng)用各個運(yùn)算階段來說明上述現(xiàn)有的合成濾波器的運(yùn)算過程時,其方式如下作為第一運(yùn)算階段,輸入32個新的音頻取樣,如果用代數(shù)式表示,則為下列代數(shù)式2-1那樣代數(shù)式2-1Sk,k=0、1、…、31作為第二運(yùn)算階段,使矩陣運(yùn)算結(jié)果64取樣進(jìn)行移位。如果用代數(shù)式表示,則為下列代數(shù)式2-2那樣代數(shù)式2-2Vi=Vi-64,i=1023→64作為第三運(yùn)算階段,進(jìn)行矩陣運(yùn)算。如果用代數(shù)式表示,則為下列代數(shù)式2-3那樣代數(shù)式2-3Vi=Σk=031Nik×Sk,]]>i=0, …,63Nik=cos[π/64(2k+1)(16+i)],i=0,1,…,63,k=0,1,…,31作為第四運(yùn)算階段,生成新的512個矢量Ui。如果用代數(shù)式表示,則為下列代數(shù)式2-4那樣代數(shù)式2-4Ui×64+j=Vi×128+j
Ui×64+32+j=Vi×128+96+j其中,i=0,1,…,7,k=0,1,…,31作為第五運(yùn)算階段,用新生成的矢量乘以窗口(synthesis window)Di。如果用代數(shù)式表示,則為下列代數(shù)式2-5那樣代數(shù)式2-5Wi=Ui×Di其中,i=0,1,…,511作為第六運(yùn)算階段,計算32個取樣。如果用代數(shù)式表示,則為下列代數(shù)式2-6那樣代數(shù)式2-6Sj=Σi=015Wj+32i,]]>其中,j=0,1,…,31上述的合成濾波為矩陣運(yùn)算和窗口運(yùn)算,可看出矩陣運(yùn)算(即,代數(shù)式3)占據(jù)了運(yùn)算量的大部分。如果假定以27MHz的系統(tǒng)時鐘動作的取樣頻率為48MHz的系統(tǒng),則處理32個子帶取樣所花費(fèi)的時間(T32)為下列代數(shù)式2-7那樣代數(shù)式2-7T32=32×Ts=32×1/fs=0.66m sec其中,fs代表取樣頻率。能夠用于處理32個子帶取樣的系統(tǒng)時鐘數(shù)(systemcyc)為下列代數(shù)式2-8那樣代數(shù)式2-8systemcyc=27×106×0.000666=17982周即,處理32個取樣必須分配約18000取樣的時鐘,在該時鐘內(nèi)進(jìn)行與5個聲道相對應(yīng)的合成濾波運(yùn)算。
本發(fā)明的第二目的是提供一種MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,對于所分配的時鐘內(nèi)的5個聲道以流水線定時進(jìn)行合成濾波。
為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的第一實(shí)施例,提供一種MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,包括窗口飛行模塊,通過幀開始信號的輸入開始濾波,進(jìn)行與所輸入的幀數(shù)據(jù)相對應(yīng)的窗口飛行運(yùn)算;矩陣變換模塊,輸入上述窗口飛行模塊的結(jié)果,進(jìn)行與該幀數(shù)據(jù)相對應(yīng)的矩陣變換運(yùn)算,上述窗口飛行模塊與上述矩陣變換模塊相互結(jié)合為流水線狀,對與5聲道相對應(yīng)的濾波進(jìn)行定時分割。
根據(jù)本發(fā)明的第二實(shí)施例,提供一種MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,包括存儲器模塊,存儲從外部所輸入的子帶數(shù)據(jù),同時,讀取輸入數(shù)據(jù)來進(jìn)行矩陣運(yùn)算;ROM模塊,存儲在矩陣和窗口運(yùn)算時所使用的系數(shù)值;乘法和累加運(yùn)算模塊,存儲輸入來自上述存儲器模塊的結(jié)果值和來自ROM模塊的系數(shù)值并重復(fù)進(jìn)行乘法和加法運(yùn)算的結(jié)果;存儲器控制模塊,存儲由該乘法和累加運(yùn)算模塊所提供的矩陣運(yùn)算的結(jié)果值,同時,讀取在窗口運(yùn)算中所需要的數(shù)據(jù);信號變換控制模塊,變換由該存儲器控制模塊所提供的數(shù)據(jù)并輸出到外部。
本發(fā)明的這些和其他的目的、優(yōu)點(diǎn)及特征將通過結(jié)合附圖對本發(fā)明的實(shí)施例的描述而得到進(jìn)一步說明。在這些附圖中

圖1是表示本發(fā)明的第一實(shí)施例所涉及的子帶分析濾波器的構(gòu)成的圖
圖2是圖1所示的窗口飛行模塊的內(nèi)部構(gòu)成圖;圖3是說明圖2所示的SRAM中數(shù)據(jù)的使用法的圖;圖4是用于在圖2所示的SRAM中進(jìn)行讀取的地址計數(shù)器的構(gòu)成圖;圖5是圖1所示的矩陣變換模塊的內(nèi)部構(gòu)成圖;圖6是表示本發(fā)明的第二實(shí)施例所涉及的子帶分析濾波器的流水線處理流程的圖;圖7是本發(fā)明的第二實(shí)施例所涉及的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器的方框圖;圖8是本發(fā)明的第二實(shí)施例所涉及的合成濾波器的流水線定時圖。
下面參照附圖更詳細(xì)地說明本發(fā)明的實(shí)施例。
圖1是表示本發(fā)明的第一實(shí)施例所涉及的子帶分析濾波器的構(gòu)成的圖,該圖中的子帶分析濾波器包括窗口飛行模塊(10),通過幀開始信號(Frame-Start)的輸入而開始進(jìn)行濾波,并進(jìn)行與所輸入的幀數(shù)據(jù)相對應(yīng)的窗口飛行運(yùn)算,如果與32個取樣相對應(yīng)的窗口飛行運(yùn)算結(jié)束,則產(chǎn)生窗口飛行結(jié)束信號(Win-Complete);矩陣變換模塊(20),利用該窗口飛行模塊(10)的結(jié)果進(jìn)行與最初的32個取樣相對應(yīng)的矩陣運(yùn)算,如果矩陣變換運(yùn)算結(jié)束,則發(fā)生矩陣結(jié)束信號(Mat-complete),上述窗口飛行模塊(10)和矩陣變換模塊(20)相互結(jié)合成流水線狀,對與5聲道相對應(yīng)的濾波進(jìn)行定時分割。
其中,如圖2所示的那樣,上述窗口飛行模塊(10)包括ROM(30),預(yù)先存儲在窗口飛行運(yùn)算中所需要的系數(shù)值;累加器(36,Multiplier & Accumulator(MAC)),把與通過寄存器(32)所輸入的5聲道(左(L)、右(R)、中間(C)、右側(cè)環(huán)繞(Rs)、左側(cè)環(huán)繞(Ls))相對應(yīng)的輸入數(shù)據(jù)與通過寄存器所輸入的來自上述ROM(30)的系數(shù)值相乘并累計至預(yù)定次數(shù)(例如,8次),然后輸出;降低標(biāo)度部(40),用于把通過寄存器(38)所輸入的來自上述累加器(36)的值的有效數(shù)字合并為16比特,進(jìn)行降低標(biāo)度和環(huán)繞處理;多個SRAM(42),輸入來自該降低標(biāo)度部(40)的值并輸出;控制部(44),內(nèi)置用于發(fā)生各種地址的計數(shù)器(圖中省略)并控制該窗口飛行模塊中的窗口飛行動作。
在本發(fā)明的實(shí)施例中,把上述SRAM(42)稱為窗口飛行SRAM,各個SRAM分別由2.5K×16比特構(gòu)成,給一個聲道分配0.5K×16比特。
這樣構(gòu)成的上述窗口飛行模塊(10)在每個聲道中使用512地址范圍的SRAM(42),以64間隔地址讀取8個取樣,與存儲在ROM(30)中的值相乘,然后,累加8次而制作出全部64個的結(jié)果。這樣,該64個結(jié)果值按照由矩陣變換模塊(20)內(nèi)的控制部所生成的控制信號值寫入頁面0、頁面1用的SRAM(42;由于SRAM為兩個,如果使其中的一個為頁面0用SRAM,則另一個為頁面1用SRAM。),以用于與下述的矩陣變換模塊(20)的流水線處理。
上述窗口飛行SRAM(42)通過系統(tǒng)時鐘的上升沿來完成寫入/讀取,累加器(36)前后的寄存器(34、38)通過上升沿而動作。
上述頁面0用SRAM/頁面1用SRAM在系統(tǒng)時鐘的下降沿完成寫入,在上升沿發(fā)生用于讀取的位置和控制信號。
圖3是表示從外部輸入32個取樣并存儲在上述SRAM(42)中的方法的圖,按照以先入先出(FIFOFirst In First Out)的形式所輸入的順序而存儲在32個單位中,如果存儲器變滿,則原封不動地忽略以上的數(shù)據(jù)。在聲道0(ch0)的情況下,按照第0號到第15號的順序?qū)懭?2個單位,第16號重疊寫入在已有的第0號的位置上,第17號重疊寫入在已有的第1號的位置上。
在這樣的方法中,如果完全處理1幀數(shù)據(jù),聲道0結(jié)束,則以聲道1、2、3、4的順序與聲道0相同地動作。此時,為了處理第2個幀數(shù)據(jù),必須存儲SRAM(42)的地址(Addrbase(k)),而另外需要用于其的計數(shù)器。在這樣的方法中,用于寫入窗口飛行SRAM的地址(Addrwrite(I,k))的生成按下列代數(shù)式5那樣計算代數(shù)式5Addrwrite(i,k)=Addrbase(k)+Addrinput(i),0≤i≤13,0≤k≤15Addrbase(k)=k×32 0≤k≤15Addrinput(i)=i0≤i≤13其中,上述Addrinput(i)是所輸入的32個新的音頻取樣,上述Addrbase(k)是與最近32數(shù)據(jù)取樣的位置相對應(yīng)的位置編號,把全部512分成32個單位的小塊16個,來進(jìn)行計數(shù),該值在讀取中用于位置編號計算的基準(zhǔn)值。
為了窗口飛行運(yùn)算,把32個音頻取樣寫入窗口飛行SRAM(42),按一定的順序讀取數(shù)據(jù)而與在ROM(30)中所存儲的值累加運(yùn)算,其結(jié)果被輸出給64個取樣(S(0)、S(1)、…S(63))。此時,讀取用于乘法和累加運(yùn)算的數(shù)據(jù)順序與下列代數(shù)式6相同,在其他的聲道中另外進(jìn)行代數(shù)式60、64、128、192、256、320、384、448=>S(0)1、65、129、193、257、321、385、449=>S(1)2、66、130、194、258、322、386、450=>S(2)~ ~ ~ ~62、126、190、254、318、382、446、510=>S(62)63、127、191、255、319、383、447、511=>S(63)
在這樣的方法中,在窗口飛行SRAM中,用于讀取的地址(Addrread(I,j,k))的生成按下列代數(shù)式7那樣計算代數(shù)式7Addrread(i,j,k)={Addrbase(k)+Addrstart(j)+(64×Numiteration(i))}MOD 512Addrbase(k)=k×320≤k≤15Addrstart(j)=j0≤j≤63Numiteration(i)=i0≤i≤67圖4是說明由控制部(44)實(shí)際上利用計數(shù)器和加法器來讀取窗口飛行SRAM的地址生成方法的圖,模塊(Module)512運(yùn)算是在無符號數(shù)(Unsigned Number)加法器中忽略溢出(overflow)而實(shí)現(xiàn)的。由于Addrstart(j)與Numiteration(i)的比特位置不會相互重疊,就能利用一個計數(shù)器來實(shí)現(xiàn),由于Addrbase(k)是固定值,而能夠用4比特來表示,實(shí)際上用4比特加法器來實(shí)現(xiàn)。
圖5是圖1所示的矩陣變換模塊(20)的內(nèi)部構(gòu)成圖,按照該圖,矩陣變換模塊(20)包括運(yùn)算器(52),通過寄存器(50a、50b)輸入來自窗口飛行模塊(10)的輸出值,進(jìn)行16比特的減法和加法處理;第一SRAM(54),輸入該運(yùn)算器(52)的輸出值,并進(jìn)行存儲;ROM(56),預(yù)先存儲在矩陣變換運(yùn)算中所需要的系數(shù)值;累加器(62),通過寄存器(60)輸入來自上述第一SRAM(54)的值,通過寄存器(58)輸入來自上述ROM(56)的系數(shù)值,相乘并累加預(yù)定次數(shù)后輸出;降低標(biāo)度部(66),把通過寄存器(64)所輸入的來自累加器(62)的值進(jìn)行降低標(biāo)度處理;第二SRAM(68),輸入來自該降低標(biāo)度部(66)的值并輸出;控制部(70),內(nèi)置用于各種地址發(fā)生的計數(shù)器(未圖示),控制該矩陣變換模塊的矩陣變換運(yùn)算動作。
其中,上述第一和第二SRAM(54、68)由32×16比特構(gòu)成,ROM(56)由1K×16比特所構(gòu)成。
這樣構(gòu)成的矩陣變換模塊(20)在運(yùn)算器(52)中把進(jìn)行了窗口飛行的64個結(jié)果值相減或相加,而減少為32個,然后,把該值存儲在第一SRAM(54)中。
然后,把存儲在上述第一SRAM(54)中的值和存儲在ROM(56)中的系數(shù)值輸入到累加器(62)中,在進(jìn)行乘法和累加運(yùn)算后,以32個濾波后的值被輸出。該輸出值在降低標(biāo)度部(66)中進(jìn)行降低標(biāo)度和環(huán)繞處理后,最終以32個結(jié)果值而輸出,但是,該輸出值通過第二SRAM(68)傳輸?shù)酵獠俊?br> 圖6是表示本發(fā)明的實(shí)施例所涉及的子帶分析濾波器的流水線處理順序的圖,如果通過窗口飛行模塊(10)和矩陣變換模塊(20)而與最初的32個取樣相對應(yīng)的窗口飛行運(yùn)算和矩陣變換運(yùn)算結(jié)束,則立即再次進(jìn)行與第二個32個取樣相對應(yīng)的窗口飛行運(yùn)算。在這樣的方法中,當(dāng)與1個聲道相對應(yīng)的1幀的窗口飛行和矩陣變換運(yùn)算結(jié)束時,用相同方法進(jìn)行與其他的聲道相對應(yīng)的濾波。
如果與5個聲道相對應(yīng)的濾波全都結(jié)束,則保持待機(jī)(idle)狀態(tài),如果產(chǎn)生幀開始信號(Frame Start),則再次進(jìn)行與5個聲道相對應(yīng)的濾波。
其中,矩陣變換處理時間大約需要窗口飛行的2倍,因此,流水線臨界路徑為矩陣變換部分。在每個窗口飛行運(yùn)算中,從輸入讀取32個取樣,在每個矩陣變換運(yùn)算中,輸出32個取樣,因此,處理全部1152個1幀數(shù)據(jù)所涉及的周期數(shù)(Cycframe)為下列代數(shù)式8那樣代數(shù)式8
Cycframe=Cycwindowing+Cycmatrixing其中,上述Cycframe代表處理1幀數(shù)據(jù)所涉及的窗口飛行周期數(shù),上述Cycmatrixing代表處理1幀數(shù)據(jù)所涉及的矩陣變換周期數(shù)。一次的乘法和累加運(yùn)算需要一周期。
由于上述Cycwindowing=547、Cycmatrixing=1126,則在上述代數(shù)式8中的周期數(shù)(Cycframe)為547+36×1126=41083。
對于5個聲道必須分別處理,而由于通過流水線處理來處理與5個聲道相對應(yīng)的1幀數(shù)據(jù),則用于其的全部周期數(shù)(Cyctotal)為下列代數(shù)式9那樣代數(shù)式9Cyctotal=Cycwindowing+5×36×CycmatrixingCyctotal=547+5×36×1126=203227下面對本發(fā)明的第二實(shí)施例進(jìn)行詳細(xì)說明。
圖7是本發(fā)明的第二實(shí)施例所涉及的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器的方框圖,存儲器模塊(210)存儲從外部所輸入的矩陣運(yùn)算用子帶數(shù)據(jù)(即,被濾波的5個聲道(Ch L,Ch C,Ch R,Ch Ls,Ch Rs)數(shù)據(jù)),同時,讀取輸入數(shù)據(jù),來進(jìn)行矩陣運(yùn)算,使用了兩個SRAM(210a,210b)的一個SRAM(例如,210a)存儲輸入數(shù)據(jù),同時,另一個(例如,210b)是存儲器,讀取數(shù)據(jù)來進(jìn)行矩陣運(yùn)算。
上述SRAM(210a,210b)中的動作,在后續(xù)的塊32周期中相反動作。即,進(jìn)行讀取動作的SRAM(210a)進(jìn)行寫入動作,而進(jìn)行寫入動作的SRAM(210b)進(jìn)行讀取動作。
本發(fā)明的實(shí)施例中,為了實(shí)現(xiàn)上述SRAM(210a,210b)的控制,一方的SRAM的寫入啟動信號(web)始終設(shè)定為“1”,另一方的寫入啟動信號(web)始終設(shè)定為“0”,在下一個時鐘32(CLK32)周期中,指定相反的值,在兩個中僅輸出一個。
在輸出啟動信號(Oeb)的情況下,與上述寫入啟動信號(web)相反地動作,是正反相對的。即,兩個SRAM(210a,210b)中的一個,在時鐘32的上升瞬間,必須送出由下述的信號變換控制模塊(250)所提供的LFE數(shù)據(jù)(Low Frequency Enhancement數(shù)據(jù)低頻增強(qiáng)聲道PCM數(shù)據(jù)),因此,在此瞬間,始終使輸出啟動信號(Oeb)為“0”值。
在芯片啟動信號(Ceb)的情況下,在讀取動作中,矩陣運(yùn)算必須進(jìn)入浮動(Floating)狀態(tài),在寫入動作中,必須由多聲道處理裝置(未圖示)接受芯片啟動信號(Ceb)。其中,在上述芯片啟動信號(Ceb)的情況下,為了不選通而使系統(tǒng)時鐘通過閂鎖而使用,而此時,以觸發(fā)器來控制閂鎖的啟動信號。
ROM模塊(220)由存儲矩陣運(yùn)算時所需要的系數(shù)值的矩陣ROM(220a)和存儲窗口運(yùn)算時所需要的系數(shù)值的窗口ROM(220b)所構(gòu)成。
其中,上述各個ROM(220a、220b)構(gòu)成為2K字(word)、512字的大小。
此外,乘法和累加運(yùn)算模塊(230)是用合成濾波器進(jìn)行必要運(yùn)算的部分,并儲存不重復(fù)的乘法和加法運(yùn)算的結(jié)果。
乘法和累加運(yùn)算模塊(230)由根據(jù)來自上述存儲器模塊(210)的信號和來自上述矩陣ROM(220a)的系數(shù)值進(jìn)行乘法和累加運(yùn)算的第一乘法和累加運(yùn)算器(230a)和根據(jù)來自復(fù)用器(225)的信號和來自上述存儲器模塊(210)的信號進(jìn)行乘法和累加運(yùn)算的第二乘法和累加運(yùn)算器(230b)所構(gòu)成,上述復(fù)用器(225)把來自上述矩陣ROM(220a)的系數(shù)值和來自窗口ROM(220b)的系數(shù)值進(jìn)行復(fù)用,這樣構(gòu)成的乘法和累加運(yùn)算在2個周期間進(jìn)行,而在最初的周期中,進(jìn)行乘法運(yùn)算,在第二個周期中進(jìn)行加法運(yùn)算。
上述矩陣運(yùn)算和窗口運(yùn)算是18比特的帶符號(signed)運(yùn)算,雖然上述第一乘法和累加運(yùn)算器(230a)和第二乘法和累加運(yùn)算器(230b)未圖示,但其由18×18帶符號乘法器、帶符號加法器、存儲中間結(jié)果的寄存器所構(gòu)成。
乘法器進(jìn)行最大64次乘法運(yùn)算,當(dāng)累加該乘法運(yùn)算結(jié)果時,在輸出最大行數(shù)的情況下,為40比特。加法器把作為乘法器運(yùn)算結(jié)果的36比特與所累加的結(jié)果相加。
上述第一乘法和累加運(yùn)算器(230a)僅進(jìn)行矩陣運(yùn)算,而不接受其他塊的任何中斷。上述矩陣運(yùn)算為進(jìn)行32次乘法和累加運(yùn)算的結(jié)果,則在64周期中,每一次都產(chǎn)生裝入(load)信號。寫入(write)上述SRAM(210a、210b)的信號在外部SRAM中每2周期動作一次,因此,使裝入進(jìn)一步延遲,通過該延遲的裝入和“或”(OR)而制成。
在上述第一乘法和累加運(yùn)算器(230a)中,由于進(jìn)行與3聲道相對應(yīng)的乘法和累加運(yùn)算,而在各個聲道中能夠分配狀態(tài)(state)。即,分成L、C、Rs聲道理想分配各個狀態(tài),在各個狀態(tài)下,集中存儲乘法和累加運(yùn)算的輸入和輸出。
在上述第二乘法和累加運(yùn)算器(230b)中,重復(fù)進(jìn)行按照時鐘32信號的矩陣運(yùn)算和窗口運(yùn)算。即,在時鐘32為“1”的區(qū)間中,進(jìn)行R聲道和Ls聲道的矩陣運(yùn)算,在時鐘32為“0”的區(qū)間中,進(jìn)行與各聲道相對應(yīng)的窗口運(yùn)算。
這樣,在矩陣運(yùn)算中,共用第一乘法和累加運(yùn)算器(230a)和第二乘法和累加運(yùn)算器(230b),因此而依次共用。即,在最初的周期中,使用第一乘法和累加運(yùn)算器(230a),在第二個周期中,使用第二乘法和累加運(yùn)算器(230b),在下一個周期中,使用第一乘法和累加運(yùn)算器(230a)。
存儲器控制模塊(240Memory Management Unit)是控制SRAM的模塊,存儲合成濾波器的矩陣運(yùn)算的結(jié)果,同時,讀取窗口運(yùn)算中所需要的數(shù)據(jù)。此時,由于存在同時要求SRAM接近的情況,則控制它們的順序。在各個情況下,運(yùn)算順序在矩陣運(yùn)算中在第一乘法和累加運(yùn)算器(230a)進(jìn)行寫入的情況下是第一號,在第二乘法和累加運(yùn)算器(230b)進(jìn)行寫入的情況下是第二號。在窗口運(yùn)算中,在第二乘法和累加運(yùn)算器(230b)進(jìn)行讀取的情況下,是第三號。
另一方面,由上述存儲器控制模塊(240)對第二乘法和累加運(yùn)算器(230b)進(jìn)行中斷,而在下一個周期中,不能進(jìn)行窗口運(yùn)算。此時,第二乘法和累加運(yùn)算器(230b)接受中斷,而不使窗口ROM(220b)的時鐘發(fā)生,在下一個周期中停止乘法運(yùn)算,在其下一次周期中停止加法運(yùn)算。
在合成濾波器的情況下,在各個取樣中在矩陣運(yùn)算結(jié)束的時刻發(fā)送寫入信號,接受該信號而向SRAM進(jìn)行寫入。在窗口運(yùn)算的情況下,接受讀取的信號,從SRAM讀取數(shù)據(jù),在中斷所涉及的情況下,讀取的信號轉(zhuǎn)換為“0”,中止從SRAM讀取數(shù)據(jù)的操作。讀取和寫入的信號僅在維持2個周期以上的情況下,能夠接受上述存儲器控制模塊(240)。
其中,上述存儲器控制模塊(240)包括由臨時存儲來自上述第一乘法和累加運(yùn)算器(230a)的結(jié)果值的第一SRAM(245a)和臨時存儲來自上述第二乘法和累加運(yùn)算器(230b)的結(jié)果值的第二SRAM(245b)所構(gòu)成的高速緩沖器SRAM部(245);把該高速緩沖器SRAM部(245)傳送給下述的信號變換控制模塊(250)的SRAM(247)。
上述高速緩沖器SRAM部(245)由于不能立即把窗口運(yùn)算結(jié)果送給信號變換控制模塊(250)而起到臨時進(jìn)行存儲的作用,而上述第一SRAM(245a)和第二SRAM(245b)中的任一個執(zhí)行讀取動作,另一個則執(zhí)行寫入動作。在下一個32周期中,執(zhí)行相反的動作。
而且,信號變換控制模塊(250)由高速緩沖器SRAM部(245)讀取數(shù)據(jù),以適合于數(shù)字模擬轉(zhuǎn)換器(DACDigital to Analog Converter)的格式轉(zhuǎn)換數(shù)據(jù)并送到外部,此時,數(shù)據(jù)與系統(tǒng)時鐘一起讀取,與取樣時鐘一起送出。
通過上述信號變換控制模塊(250)輸出到外部的數(shù)據(jù)(即,5個聲道音頻和低頻增強(qiáng)聲道PCM數(shù)據(jù))被串行數(shù)據(jù)和并行數(shù)據(jù)分割,在串行數(shù)據(jù)的情況下,送出串行時鐘,以便于能夠區(qū)別表示一個取樣數(shù)據(jù)的開始和結(jié)束的信號和各比特的取樣數(shù)據(jù)。在并行數(shù)據(jù)的情況下,輸入成為取樣時鐘的256倍的時鐘,則把其進(jìn)行32分頻(divide),對于其中的18周期,輸出通知有效的值已輸出的信號,對于其余的14周期,輸出通知無效的信號。
另一方面,圖8是本發(fā)明第二實(shí)施例所涉及的合成濾波器的流水線定時圖,為了一次乘法和累加運(yùn)算,而需要27Mhz的2個周期。
在本發(fā)明中,使用第一乘法和累加運(yùn)算器(230a)和第二乘法和累加運(yùn)算器(230b),同時,進(jìn)行矩陣運(yùn)算,對與4個聲道(Ch L、Ch C、Ch R、Ch Ls)相對應(yīng)的數(shù)據(jù)進(jìn)行矩陣運(yùn)算,然后,對于第五個聲道(ChRs),僅由第一乘法和累加運(yùn)算模塊(230a)進(jìn)行運(yùn)算。
第二乘法和累加運(yùn)算器(230b)利用矩陣運(yùn)算結(jié)果,進(jìn)行與5個聲道(Ch L、Ch C、Ch R、Ch Ls、Ch Rs)相對應(yīng)的窗口運(yùn)算。其中,時鐘32(CLK 32)的時鐘是取樣頻率的32倍的時鐘,5個聲道(Ch L、Ch C、Ch R、Ch Ls、Ch Rs)的濾波在時鐘32的一個周期內(nèi)結(jié)束。
在本發(fā)明的實(shí)施例中,在與一個聲道相對應(yīng)的第一乘法和累加運(yùn)算器(230a)的運(yùn)算中所需要的時鐘是2048,為了由第二乘法和累加運(yùn)算器(230b)對5聲道矩陣結(jié)果進(jìn)行窗口運(yùn)算,所需要的時鐘是512×5=2560,必要的運(yùn)算時鐘是,為了對最后的聲道進(jìn)行窗口運(yùn)算而在第一乘法和累加運(yùn)算器(230a)中把必要的時鐘與必要的512時鐘相加,全部所需要的時鐘數(shù)Totalcyc為下列代數(shù)式9那樣代數(shù)式2-9Totalcyc=(2048×3+512)×2=13312周其中,運(yùn)算所需要的時鐘數(shù)能夠在提供給系統(tǒng)的18000時鐘內(nèi)進(jìn)行計算。
根據(jù)上述那樣的本發(fā)明的第一實(shí)施例,對于5個聲道(左側(cè)、右側(cè)、中間、右側(cè)環(huán)繞、左側(cè)環(huán)繞)和2個聲道,能夠以音頻幀(1152取樣)為單位進(jìn)行濾波,輸出輸入是32個取樣單位的快速傳送,能夠以27MHz的工作頻率在230000周期內(nèi)對5個聲道的1幀取樣進(jìn)行分析濾波。
這樣,能夠?qū)崿F(xiàn)適合于使用MPEG系統(tǒng)時鐘的MPEG-2音頻編碼器ASIC的構(gòu)造,不必在每個聲道中使用濾波器數(shù)據(jù)庫,而是利用流水線構(gòu)造和定時分割技術(shù),僅使用一個濾波器數(shù)據(jù)庫就能實(shí)現(xiàn)。
根據(jù)本發(fā)明的第二實(shí)施例,使用兩個乘法和累加運(yùn)算器,能夠以27MHz的系統(tǒng)時鐘實(shí)時處理5個聲道(左(L)、右(R)、中間(C)、右側(cè)環(huán)繞(Rs)、左側(cè)環(huán)繞(Ls)),因此,不使用在各個運(yùn)算中所使用的乘法和累加運(yùn)算器和符合濾波器構(gòu)造的高系統(tǒng)時鐘,也能夠?qū)崿F(xiàn)適合于MPEG-2音頻編碼器的ASIC芯片構(gòu)造的濾波器。而且,不必在每個聲道中使用濾波器數(shù)據(jù)庫,而是利用流水線構(gòu)造和定時分割技術(shù),僅使用一個濾波器數(shù)據(jù)庫就能實(shí)現(xiàn)。
另一方面,本發(fā)明并不僅限于上述實(shí)施例,可以在不背離本發(fā)明的主題的范圍內(nèi)進(jìn)行修正和變化。
權(quán)利要求
1.MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,包括窗口飛行模塊,通過幀開始信號的輸入開始濾波,進(jìn)行與所輸入的幀數(shù)據(jù)相對應(yīng)的窗口飛行運(yùn)算;矩陣變換模塊,輸入上述窗口飛行模塊的結(jié)果,進(jìn)行與該幀數(shù)據(jù)相對應(yīng)的矩陣變換運(yùn)算;上述窗口飛行模塊與上述矩陣變換模塊相互結(jié)合為流水線狀,對與5聲道相對應(yīng)的濾波進(jìn)行定時分割。
2.根據(jù)權(quán)利要求1所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述窗口飛行模塊包括ROM,預(yù)先存儲在窗口飛行運(yùn)算中所使用的系數(shù)值;累加器,把輸入數(shù)據(jù)與來自上述ROM的系數(shù)值相乘并累加預(yù)定次數(shù),然后輸出;降低標(biāo)度部,用于把來自上述累加器的值降低標(biāo)度;SRAM,輸入來自上述降低標(biāo)度部的值并輸出;控制部,控制窗口飛行運(yùn)算動作。
3.根據(jù)權(quán)利要求1所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述矩陣變換模塊包括運(yùn)算器,輸入來自上述窗口飛行模塊的輸出值并進(jìn)行運(yùn)算處理;第一SRAM,輸入上述運(yùn)算器的輸出值并進(jìn)行存儲;ROM,預(yù)先存儲矩陣變換用系數(shù)值;累加器,把來自上述第一SRAM和上述ROM的值相乘并進(jìn)行預(yù)定次數(shù)累加后輸出;降低標(biāo)度部,把來自上述累加器的值降低標(biāo)度;第二SRAM,輸入來自上述降低標(biāo)度部的值并輸出;控制部,控制矩陣變換運(yùn)算動作。
4.MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,包括存儲器模塊,存儲從外部所輸入的子帶數(shù)據(jù),同時,讀取輸入數(shù)據(jù)來進(jìn)行矩陣運(yùn)算;ROM模塊,存儲在矩陣和窗口運(yùn)算時所使用的系數(shù)值;乘法和累加運(yùn)算模塊,存儲輸入來自上述存儲器模塊的結(jié)果值和來自ROM模塊的系數(shù)值并重復(fù)進(jìn)行乘法和加法運(yùn)算的結(jié)果;存儲器控制模塊,存儲由該乘法和累加運(yùn)算模塊所提供的矩陣運(yùn)算的結(jié)果值,同時,讀取在窗口運(yùn)算中所需要的數(shù)據(jù);信號變換控制模塊,變換由該存儲器控制模塊所提供的數(shù)據(jù)并輸出到外部。
5.根據(jù)權(quán)利要求4所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述存儲器模塊為2個SRAM,上述兩個SRAM相反進(jìn)行讀取動作和寫入動作。
6.根據(jù)權(quán)利要求4所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述ROM模塊為矩陣ROM和窗口ROM。
7.根據(jù)權(quán)利要求6所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述矩陣ROM和窗口ROM分別由2K字、512字的大小所構(gòu)成。
8.根據(jù)權(quán)利要求4所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述乘法和累加運(yùn)算模塊由第一和第二乘法和累加運(yùn)算器所構(gòu)成。
9.根據(jù)權(quán)利要求8所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述第一乘法和累加運(yùn)算器僅進(jìn)行矩陣運(yùn)算,上述第二乘法和累加運(yùn)算器根據(jù)時鐘信號重復(fù)進(jìn)行矩陣運(yùn)算和窗口運(yùn)算。
10.根據(jù)權(quán)利要求9所述的MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,其特征在于,上述存儲器控制模塊包括暫時存儲來自上述第一乘法和累加運(yùn)算器的結(jié)果值的第一SRAM和暫時存儲來自上述第二乘法和累加運(yùn)算器的結(jié)果值的第二SRAM的高速緩沖存儲器SRAM部。
11.MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,包括MPEG音頻多聲道處理用等間隔子帶分析濾波器和等間隔子帶合成濾波器,其特征在于,上述分析濾波器是窗口飛行模塊,通過幀開始信號的輸入而開始濾波并進(jìn)行與所輸入的幀數(shù)據(jù)相對應(yīng)的窗口飛行運(yùn)算;和矩陣變換模塊,輸入上述窗口飛行模塊的結(jié)果來進(jìn)行與該幀數(shù)據(jù)相對應(yīng)的矩陣變換運(yùn)算,其特征在于,包括存儲器模塊,上述窗口飛行模塊和上述矩陣變換模塊相互結(jié)合成流水線狀,對與5聲道相對應(yīng)的濾波進(jìn)行定時分割,存儲從外部所輸入的子帶數(shù)據(jù),同時,讀取輸入數(shù)據(jù)而進(jìn)行矩陣運(yùn)算;存儲器控制模塊,上述合成濾波器存儲由預(yù)先存儲在矩陣和窗口運(yùn)算時所使用的系數(shù)值的ROM模塊、存儲輸入來自上述存儲器模塊的結(jié)果值和來自上述ROM模塊的系數(shù)值并重復(fù)進(jìn)行乘法和加法運(yùn)算的結(jié)果的乘法和累加運(yùn)算模塊、上述乘法和累加運(yùn)算模塊所提供的矩陣運(yùn)算的結(jié)果值,同時,讀取窗口運(yùn)算所需要的數(shù)據(jù);以及信號變換控制模塊,變換由上述存儲器控制模塊所提供的數(shù)據(jù),并輸出到外部。
全文摘要
本發(fā)明提供一種MPEG音頻多聲道處理用等間隔子帶分析和合成濾波器,能夠在以一定工作頻率分配的周期內(nèi)對5聲道的幀取樣進(jìn)行分析濾波,在分割的時鐘內(nèi),對五個聲道以流水線定時進(jìn)行合成濾波。本發(fā)明包括:窗口飛行模塊;矩陣變換模塊。或者包括:存儲器模塊;ROM模塊;乘法和累加運(yùn)算模塊和信號變換控制模塊。
文檔編號H04N7/32GK1241843SQ99103608
公開日2000年1月19日 申請日期1999年3月4日 優(yōu)先權(quán)日1998年3月4日
發(fā)明者韓英泰, 姜岱鏡, 高鐘錫 申請人:韓國電氣通信公社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
二连浩特市| 高青县| 海口市| 广宗县| 措勤县| 惠东县| 大厂| 松滋市| 南部县| 正安县| 潼南县| 云安县| 曲沃县| 龙里县| 察隅县| 深泽县| 平远县| 探索| 台湾省| 五大连池市| 聊城市| 肇庆市| 苏尼特左旗| 大方县| 土默特右旗| 广饶县| 德庆县| 鄂托克前旗| 嵊州市| 日土县| 巴林右旗| 香河县| 灵宝市| 山阳县| 长治市| 嘉定区| 东乡族自治县| 郁南县| 阿拉善盟| 威远县| 辽阳市|