專利名稱:一種快速哈達瑪變換裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種第三代移動通信中FDD(頻分雙工)模式的WCDMA(寬帶碼分多址)系統(tǒng)中的裝置,具體地說涉及一種WCDMA系統(tǒng)中MS(移動終端)的小區(qū)搜索中的幀同步裝置。
背景技術(shù):
在WCDMA系統(tǒng)中,小區(qū)搜索的實現(xiàn)一般采用三步快速搜索法。
第一步,捕獲主同步信道,完成時隙同步,識別出最強基站;第二步,捕獲輔助同步信道,完成幀同步,識別出擾碼組信息;第三步,對公共導(dǎo)頻信道求相關(guān),識別出本小區(qū)所采用的擾碼。
幀同步是小區(qū)搜索的第二步,是在取得時隙同步的基礎(chǔ)上用于實現(xiàn)對輔助同步信道的捕獲,并獲得幀同步及擾碼組號,為小區(qū)搜索第三步的擾碼識別提供時間基準。幀同步是針對一種特定的編碼方式而采取的同步捕獲技術(shù),這種特定的編碼是指輔助同步信道碼,其編碼格式來自3GPP TS25.213V2.30的規(guī)定,其中3GPP是“第三代移動通信伙伴計劃”國際組織。
輔助同步信道碼具體的16種碼字來自于哈達瑪矩陣,是由Z序列和不同的哈達瑪序列模2加產(chǎn)生的。
首先說明Z序列Z={b,b,b,b,-b,b,b-,b-,b,b-,b,b-,b-,b-,b-,b-}]]>其中b=<x1,x2,x3,...,x16>=<0,0,0,0,0,0,1,1,1,0,1,0,1,0,0,1>哈達瑪序列(行)可由矩陣H8遞歸得到
第0行位于矩陣的最頂層(全零序列)。
hn表示哈達瑪矩陣第n行的序列。
輔助同步信道的碼字是由矩陣H8的每16行中選取一個,所以一共可以有16種可能的碼字,其碼序號為n=0,16,32,48,64,80,96,112,128,144,160,176,192,208,224,240。
設(shè)hn(i)和z(i)分別表示序列hn和z的第i個符號,n表示第n個同步碼序號,在每一個時隙最先發(fā)送的碼片是最左邊的符號,則CSCH,n=<hn(0)+z(0),hn(1)+z(1),hn(2)+z(2),...,hn(255)+z(255)>(2)以上所有運算均采用模2加,同步信道的二進制碼字在實際發(fā)送時被轉(zhuǎn)換為實數(shù)值序列‘0’->‘+1’,‘1’->‘-1’。輔助同步信道(Secondary SCH)碼字被定義為CSCH,n,即{C1,...,C16}Ci=CSCH,i,i=1,...,16每個基站的輔助同步碼序列都是由15個256碼片的輔助同步碼組成的,每個時隙發(fā)送一個。而且每個時隙中的輔助同步碼是從16個固定的256碼片長度的輔助同步碼中選取的。由于本地時隙定時已經(jīng)確定,所以本地的輔助同步碼可以與接收信號的時隙對齊,因此接收信號和本地16個輔助同步碼分別相關(guān),必定能找出對應(yīng)的輔助同步碼。這樣,經(jīng)過15個時隙的相關(guān)查找,就可以得到整個輔助同步碼序列。最后通過查表、相位判別,確定64個碼組中的一組,從而得到碼組號和序列的相位偏移量,完成小區(qū)搜索的幀同步。
由此可見,小區(qū)搜索的幀同步需要確定接收到的輔同步碼序列,從而需要對輔同步信道進行相關(guān)運算,而對于輔同步信道256個碼片的直接相關(guān)運算需要作256×(256-1)=65280次加減運算。通過采用一種壓縮算法,可以將256長度的哈達馬序列壓縮為16位,這樣,對輔同步碼的相關(guān)運算可以通過下列步驟實現(xiàn)首先將輔助同步碼加入的Z序列去除,恢復(fù)成哈達瑪序列,然后將256長的哈達瑪向量壓縮為16位長的向量。對于16位長的向量,進行快速哈達瑪變換(FHT),16點輸入的哈達瑪變換的16個輸出結(jié)果即為輔同步信道的相關(guān)結(jié)果。在輔同步碼相關(guān)運算中,采用FHT算法只需要(256-1)×8=2040次加減法運算,顯然極大地減小了運算量,使得幀同步的硬件消耗變得很少。
FHT算法是將矩陣乘法(求相關(guān))簡化為加/減運算的一種快速算法,可以有效減小運算量。其處理信號流如圖1所示,圖1為FHT的并行運算原理圖,其從左至右運算和從右至左運算的結(jié)果是一致的。該圖左端為輸入信號,16個輸入數(shù)據(jù)經(jīng)過4級蝶形運算后輸出16個FHT的結(jié)果,右端的數(shù)字即代表FHT結(jié)果的哈達瑪行號。2001年公布的美國專利US6311202B1介紹了一種快速哈達瑪變換的裝置;2003年由IEEE出版的“14th IEEEInternational Workshop on Rapid Systems Prototyping”會議論文集也有一篇文章《Design and Prototyping a Fast Hadamard Transformer for WCDMA》專門描述了FHT算法的一種設(shè)計。
上述的美國專利和IEEE文章中所描述的FHT裝置非常類似,該裝置要求每兩個FHT的數(shù)據(jù)并行輸入,并且每個時鐘并行輸出兩個結(jié)果。使用該FHT裝置進行小區(qū)搜索幀同步的過程為將輔同步信道的接收信號去相位旋轉(zhuǎn)和去Z序列后進行向量壓縮,緊接著進行16點的快速哈達瑪變換,然后直接對快速哈達瑪變換的每兩個輸出結(jié)果進行比較,所得的最大值對應(yīng)的哈達瑪行號即代表該時隙使用的輔同步碼序號;對每一個時隙都重復(fù)這個過程,15個時隙過后就可以得到完整的輔同步碼序列,通過查表就可以得到幀同步和碼組信息。由于頻差和信道衰落的影響,這種幀同步方法的準確度很低。
因此實際的WCDMA小區(qū)搜索幀同步過程大者需要多幀累加/平均判決,而且為了檢驗時隙同步的準確性,一般要在對時隙同步周圍的若干個抽樣點進行檢測。為了提高幀同步的準確度和檢驗時隙同步的準確度,幀同步裝置連續(xù)處理時隙同步周圍的多個抽樣點數(shù)據(jù),處理過程中在16點的快速哈達瑪變換后并不直接比較其結(jié)果,而是將其轉(zhuǎn)換成功率值進行累加和平均,將多個無線幀的累加結(jié)果生成表,在生成表的基礎(chǔ)上來判別輔同步碼序列,最后通過查找3GPP TS 25.213中規(guī)定的輔同步碼分配表來得到幀同步,同時以多個抽樣點的結(jié)果來檢測和糾正時隙同步。
可見,為了克服衰落和提高信噪比,需要把FHT的輸出進行累加;為了能對時隙同步周圍的多個抽樣點進行連續(xù)處理,F(xiàn)HT的輸出結(jié)果還需要串行地通過一系列的數(shù)據(jù)通路進行后續(xù)處理,因此現(xiàn)有的FHT裝置不適合在實際的小區(qū)搜索幀同步裝置中使用。如果采用類似的FHT裝置,需要配置額外的RAM或寄存器存儲資源和控制邏輯,由此不利于流水線自動處理,使系統(tǒng)高效運作。
因此,現(xiàn)有技術(shù)存在缺陷,而有待于改進和發(fā)展。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種WCDMA系統(tǒng)中有利于提高小區(qū)搜索時隙同步和幀同步的準確度的快速哈達瑪變換裝置。
本發(fā)明的技術(shù)方案如下一種快速哈達瑪變換裝置,其中,包括一控制單元和四個流水相接的運算單元第一級運算單元、第二級運算單元、第三級運算單元、第四級運算單元;所述控制單元用于控制四個運算單元的工作時序,產(chǎn)生相應(yīng)的控制信號,控制每個運算單元內(nèi)部數(shù)據(jù)的延遲和選擇;所述第一級運算單元用于將快速哈達瑪變換的輸入數(shù)據(jù)每兩個交叉配對,完成第一級的蝶形運算,結(jié)果輸出至第二級運算單元;
所述第二級運算單元用于將第一級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成第二級的蝶形運算,結(jié)果輸出至第三級運算單元;所述第三級運算單元用于將第二級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成第三級的蝶形運算,結(jié)果輸出至第四級運算單元;所述第四級運算單元用于將第三級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成第四級的蝶形運算,其輸出為16點快速哈達瑪變換的最終處理結(jié)果。
所述的裝置采用流水線工作方式,輸入數(shù)據(jù)串行輸入,快速哈達瑪變換結(jié)果順序串行輸出。
所述的裝置,其中,所述控制單元的電路結(jié)構(gòu)包括四位計數(shù)器、兩個帶使能的寄存器、兩個無使能寄存器、以及四個反相器;所述四位計數(shù)器在時鐘上升沿從0~15循環(huán)計數(shù);所述兩個帶使能的寄存器及兩個無使能寄存器與所述四位計數(shù)器的四個比特位一起產(chǎn)生四個控制信號,該四個信號和其通過四個反相器得到的邏輯非信號一起,用于控制各部件運作。
所述的裝置,其中,所述運算單元的電路結(jié)構(gòu)包括一加法器、一反相器、若干個選擇器和若干個寄存器;所述加法器用于完成加減運算;所述寄存器用于緩存每級運算單元的輸入數(shù)據(jù),并以移位寄存器的方式為操作數(shù)順序的調(diào)整產(chǎn)生所需的特定延遲;所述選擇器用以選擇每次加減運算的兩個操作數(shù),配合所述寄存器對所述加法器的兩個操作數(shù)進行順序調(diào)整,使其在時序上對齊。
所述的裝置,其中,所述加法器為補碼加法器。
所述的裝置,其中,所述第一級運算單元的電路結(jié)構(gòu)包括第一反相器、一第一選擇器和一第一加法器,以及第一、第二帶使能寄存器,第一無使能寄存器;欲進行快速哈達瑪變換的數(shù)據(jù)輸入到該第一級運算單元后,所述第一帶使能寄存器在控制信號為低電平時對該數(shù)據(jù)作選擇寄存,所述第二帶使能寄存器在控制信號為高電平時對該數(shù)據(jù)作選擇寄存,將該數(shù)據(jù)分為兩路信號,其中一路信號由所述第一無使能寄存器延遲一個時鐘周期后形成延遲后信號;同時,所述第一反相器對另一路信號進行按位取反后形成取反后信號;由所述第一選擇器在所述控制信號為低電平時選擇待取反信號,在控制信號為高電平時選擇取反后信號,如此待取反信號經(jīng)過第一反相器和第一選擇器后,變?yōu)榇訙p信號;最后延遲后信號和待加減信號由第一加法器相加后輸出為該第一級運算單元的結(jié)果。
所述的裝置,其中,所述第二、第三或第四級運算單元的電路結(jié)構(gòu)包括所述運算單元的級數(shù)為n=2、3或4時,由兩個帶使能寄存器將前一級流水運算單元的輸出數(shù)據(jù)分為兩路信號,作為本級運算單元的輸入數(shù)據(jù),并將其保持時間由一個時鐘周期變?yōu)閮蓚€時鐘周期;然后用2j個寄存器將一路數(shù)據(jù)延遲2k-1個時鐘周期;用兩個二選一的選擇器對另一路數(shù)據(jù)和前路延遲后的數(shù)據(jù)進行路徑選擇,使其原本交錯的兩路數(shù)據(jù)分開,并調(diào)整好順序;路徑調(diào)整后的該另一路數(shù)據(jù)要用n個帶使能的寄存器延遲2n-1個時鐘周期;同時前路數(shù)據(jù)通過一個反相器后得到其按位求邏輯反的信號,代表其相反數(shù),與其原數(shù)據(jù)一起,形成前路數(shù)據(jù)的正、負兩路信號;用第三個二選一的選擇器對這兩路信號進行選擇,將前路數(shù)據(jù)的保持時間由兩個時鐘周期還原為一個時鐘周期,該第一個時鐘用于加法運算,第二個時鐘用于減法運算;用所述補碼加法器求出這兩路數(shù)據(jù)的和,即為本級運算單元的結(jié)果;其中,k=n-1;j=n-2,n為當(dāng)前運算單元的級數(shù)。
本發(fā)明所提供的一種快速哈達瑪變換裝置,與現(xiàn)有技術(shù)相比,采用了串行處理的方式,只需用較少的硬件便可實現(xiàn),可很方便地應(yīng)用在串行輸入、串行輸出的場合,比現(xiàn)有的FHT裝置節(jié)省4個減法器和用于并串轉(zhuǎn)換的存儲資源及控制邏輯;接口簡單,可以很方便地嵌入小區(qū)搜索的幀同步裝置中,可以4倍或8倍碼片速率的時鐘連續(xù)處理多個抽樣點的輔同步信道數(shù)據(jù),不需要任何間隔時間或并串轉(zhuǎn)換時間,并在此基礎(chǔ)上完成多幀數(shù)據(jù)的累加判決,提高了幀同步的準確度。
圖1是現(xiàn)有技術(shù)的快速哈達瑪變換的信號處理示意圖;圖2是本發(fā)明裝置中將16點并行運算的FHT改為串行(順序)運算后的信號流示意圖;圖3是本發(fā)明的FHT裝置框圖;圖4是本發(fā)明裝置中第一級運算單元的內(nèi)部電路圖;圖5是本發(fā)明裝置中第二級運算單元的內(nèi)部電路圖;圖6是本發(fā)明裝置中第二級運算單元的時序圖;圖7是本發(fā)明裝置中第三級運算單元的內(nèi)部電路圖;圖8是本發(fā)明裝置中第四級運算單元的內(nèi)部電路圖;圖9是本發(fā)明裝置中控制單元的內(nèi)部電路圖;圖10是本發(fā)明裝置輸入輸出信號的時序圖。
具體實施例方式
下面結(jié)合附圖,將對本發(fā)明作進一步的詳細介紹。
本發(fā)明的所述快速哈達瑪變換裝置,其包括一個控制單元0和四個流水運算單元第一級運算單元1、第二級運算單元2、第三級運算單元3、第四級運算單元4,如圖2和圖3所示的,所述控制單元0用于控制4個運算單元的工作時序,產(chǎn)生相應(yīng)的控制信號,控制每個運算單元內(nèi)部數(shù)據(jù)的延遲和選擇;所述第一級運算單元1用于將FHT的輸入數(shù)據(jù)每兩個交叉(交叉級數(shù)為20)配對,完成第一級的蝶形運算,結(jié)果輸出至第二級運算單元2;所述第二級運算單元2用于將第一級運算單元的輸出數(shù)據(jù)每兩個交叉(交叉級數(shù)為21)配對,完成第二級的蝶形運算,結(jié)果輸出至第三級運算單元3;所述第三級運算單元3用于將第二級運算單元的輸出數(shù)據(jù)每兩個交叉(交叉級數(shù)為22)配對,完成第三級的蝶形運算,結(jié)果輸出至第四級運算單元4;所述第四級運算單元4用于將第三級運算單元的輸出數(shù)據(jù)每兩個交叉(交叉級數(shù)為23)配對,完成第四級的蝶形運算,結(jié)果即為16點FHT的最終處理結(jié)果。
本發(fā)明所述的快速哈達瑪變換裝置采用流水線工作方式,輸入數(shù)據(jù)串行輸入,快速哈達瑪變換結(jié)果順序串行輸出,通過分時復(fù)用同一個加法器,先加后減,實現(xiàn)快速哈達瑪變換的加法和減法。
本發(fā)明所述控制單元0的內(nèi)部包括一個4位計數(shù)器00,兩個帶使能的寄存器01、02,兩個無使能寄存器a、b,以及4個反相器1a、1b、1c、1d,如圖9所示。
所述的4個運算單元內(nèi)部結(jié)構(gòu)相似,如圖4、圖5、圖7、圖8所示的,由一個補碼加法器、一個反相器、若干個選擇器和若干個寄存器組成。其中補碼加法器用以完成加減運算;寄存器用以緩存每級運算單元的輸入數(shù)據(jù),并以移位寄存器的方式為操作數(shù)順序的調(diào)整產(chǎn)生所需的特定延遲;選擇器用以選擇每次加減運算的兩個操作數(shù),配合寄存器對加法器的兩個操作數(shù)進行順序調(diào)整,使其在時序上對齊。
以下更為詳細參照附圖做詳細說明。
圖2所示為本發(fā)明裝置采用的FHT串行信號流示意圖,本發(fā)明裝置將現(xiàn)有技術(shù)的圖1從左至右運算流中的每個蝶形運算改為線形實現(xiàn),先加后減,用4級流水運算單元實現(xiàn);并將第一級、第二級、第三級的每一個處理結(jié)果用一個字母表示,則每一級的16個輸出結(jié)果都是一個接一個順序地輸入下一級的。
如圖3所示為本發(fā)明所述快速哈達瑪變換裝置的整體框圖,包括1個控制單元0和4個流水運算單元第一級運算單元1、第二級運算單元2、第三級運算單元3、第四級運算單元4。4個運算單元負責(zé)完成FHT的四級運算,所述控制單元0則負責(zé)產(chǎn)生相應(yīng)的信號,控制該4個運算單元的運作。
圖4所示是本發(fā)明裝置的第一級運算單元的內(nèi)部電路圖。它包括三個寄存器、一第一反相器13、一第一選擇器14和一第一加法器15,用于完成FHT的第一級運算。其中所述寄存器包括第一、第二帶使能寄存器10、11,第一無使能寄存器12;所述第一選擇器14是一個“二選一”的選擇器;所述第一加法器15是一個帶進位輸入的補碼加法器,i1和i2是其操作數(shù)輸入,ci是進位輸入。欲進行快速哈達瑪變換的數(shù)據(jù)fht_input輸入第一級運算單元后,第一帶使能寄存器10在控制信號eni為低電平時對fht_input作選擇寄存,第二帶使能寄存器11在控制信號eni為高電平時對fht_input作選擇寄存,這樣第一帶使能寄存器10和第二帶使能寄存器11將fht_input分為兩路信號s1_ai和s1_bi。s1_ai由所述第一無使能寄存器12延遲一個時鐘周期后變?yōu)檠舆t后信號s1_a;同時,第一反相器13對待取反信號s1_bi進行按位取反,輸出結(jié)果取反后信號s1_bib;接下來由所述第一選擇器14在控制信號eni為低電平時選擇s1_bi,在eni為高電平時選擇s1_bib,這樣s1_bi經(jīng)過第一反相器13和第一選擇器14后,變?yōu)榇訙p信號s1_b;最后s1_a和s1_b由第一加法器15相加后輸出第一級運算單元的結(jié)果s1_sum。如上所述,該第一級運算單元在eni信號的控制下,將16個FHT輸入數(shù)據(jù)兩兩組合,先加后減,在兩個時鐘周期后串行(順序)輸出結(jié)果,實現(xiàn)了圖1所示的第一級處理。
如圖5所示是本發(fā)明裝置的第二級運算單元的內(nèi)部電路圖。由四個寄存器、三個選擇器、一個反相器和一個加法器組成,以實現(xiàn)FHT的第二級運算功能。如圖6所示是該第二級運算單元的時序圖,左列是信號名,與圖5中標注的信號名一一對應(yīng),右邊是這些信號在第二級運算單元工作時的波形。
下面結(jié)合圖5和圖6對該第二級運算單元的組成結(jié)構(gòu)和工作過程進行介紹如圖5中所示,所述寄存器中包括第三、第四、第五帶使能寄存器20、21和26,以及第二無使能寄存器22;一第二反相器25;所述選擇器包括“二選一”的多路選擇器即第二、第三、第四選擇器23、24、27,所述加法器為補碼加法器28。為了描述的方便,將第二級的輸入數(shù)據(jù)s1_sum的16個值用A~H和a~h這16個字母代表,即可以用s1_sum*來表示s1_sum。從圖1和圖2可知,第二級運算單元的輸入數(shù)據(jù)的交叉級數(shù)為2,s1_sum*在第二級運算單元的運算過程中,其16個值的兩兩結(jié)合的規(guī)律是同一字母代表的兩個值結(jié)合運算,即A與a相加減,B與b相加減,依次等等。s1_sum*數(shù)據(jù)進入第二級運算單元后,由第三和第四帶使能寄存器20和21分為兩路信號s1_sum_a和s1_sum_b,其中s1_sum_b經(jīng)第二無使能寄存器22后得到其一級延遲信號s1_sum_b_dl,這時第二和第三選擇器23、24在s2_sel的控制下對s1_sum a和s1_sum_b_dl進行選擇,形成兩路信號s2_ai和s2_bi,s2_ai的8個值均為大寫字母表示,s2_bi的8個值均為小寫字母表示,這樣加法器的兩個操作數(shù)已初步形成。接下來為了與s2_bi在時序上對齊,所述第五帶使能寄存器26將s2_ai延遲兩個時鐘周期,得到第二加法器的一個操作數(shù)s2_a,同時第四選擇器27在eni的作用下選擇s2_bi或其按位取反的結(jié)果s2_bib,得到第二加法器的另一個操作數(shù)s2_b;最后由所述第二加法器28求得第二級運算單元的結(jié)果。
如圖7所示是本發(fā)明裝置的第三級運算單元的內(nèi)部電路圖,其包括六個寄存器、三個選擇器、一個反相器和一個加法器,用以完成FHT的第三級運算功能。如圖8所示是本發(fā)明裝置的第四級運算單元的內(nèi)部電路圖,其包括十個寄存器、三個選擇器、一個反相器和一個加法器組成用以完成FHT的第四級運算功能。
所述第三級運算單元和第四級運算單元的內(nèi)部電路結(jié)構(gòu)和工作原理都與上面描述的第二級運算單元相似,所不同的是寄存器的數(shù)目,運算單元的級數(shù)越高,其蝶形運算的兩個操作數(shù)在時間順序上交錯得越厲害,用來調(diào)整順序的寄存器就越多。另外,由于存在加減運算,每一級運算單元中的寄存器和加法器的位寬都比前一級的多一位。
令運算單元的級數(shù)為n,下面介紹第二級運算單元(n=2)、第三級運算單元(n=3)和第四級運算單元(n=4)統(tǒng)一的工作過程首先用兩個帶使能寄存器將前一級流水運算單元的輸出數(shù)據(jù)分為a、b兩路,作為本級運算單元的輸入數(shù)據(jù),并將其保持時間由一個時鐘周期變?yōu)閮蓚€時鐘周期;然后用2j(j=n-2,n為當(dāng)前運算單元的級數(shù))個寄存器將b路數(shù)據(jù)延遲2k-1(k=n-1,n為當(dāng)前運算單元的級數(shù))個時鐘周期;接著用兩個“二選一”的選擇器對a路數(shù)據(jù)和b路延遲后的數(shù)據(jù)進行路徑選擇,使其原本交錯的兩路數(shù)據(jù)分開,并調(diào)整好順序;由于b路數(shù)據(jù)在路徑調(diào)整前有一定的延遲,為了與其對齊,路徑調(diào)整后的a路數(shù)據(jù)要用n個帶使能的寄存器延遲2n-1個時鐘周期;同時b路數(shù)據(jù)通過一個反相器后得到其按位求邏輯反的信號,代表其相反數(shù),與其原數(shù)據(jù)一起,形成b路數(shù)據(jù)的“正”、“負”兩路信號。再用一個“二選一”的選擇器對這兩路信號進行選擇,將b路數(shù)據(jù)的保持時間由兩個時鐘周期還原為1個時鐘周期,第一個時鐘將用于加法運算,第二個時鐘將用于減法運算。這時a、b兩路數(shù)據(jù)的順序已經(jīng)調(diào)整好,時序也已對齊,最后用一個補碼加法器求出這兩路數(shù)據(jù)的和,即為本級運算單元的結(jié)果。由于求補碼的相反數(shù)的操作相當(dāng)于“求反加1”的操作,而各運算單元中的反相器僅實現(xiàn)了“求反”的功能,因此補碼加法器需要帶一個進位輸入,完成“加1”的功能。
如圖9所示為本發(fā)明裝置的控制單元內(nèi)部電路。其核心是一個4位的計數(shù)器00,在時鐘上升沿從0~15循環(huán)計數(shù)。另外還有四個1位的寄存器——帶使能寄存器01、帶使能寄存器02、無使能寄存器a、無使能寄存器b,與計數(shù)器的四個比特位一起產(chǎn)生4個控制信號eni、s2_sel、s3_sel和s4_sel,這四個信號和其通過反相器a、反相器b、反相器c、反相器d得到的邏輯非信號enib、s2_selb、s3_selb、s4_selb一起,控制本裝置的各部件運作。
如圖10所示為本發(fā)明裝置輸入數(shù)據(jù)與輸出數(shù)據(jù)的時序關(guān)系圖,從圖中可以看出,本裝置的輸入、輸出數(shù)據(jù)在時間上都是串行的。需要進行FHT運算的16個數(shù)據(jù)連續(xù)輸入本裝置后,只需要3個時鐘的延遲,即可以連續(xù)輸出16個運算結(jié)果。并且由于本裝置的設(shè)計采用流水線的形式,多個抽樣點的16點變換可以串行地連續(xù)輸入本裝置,運算結(jié)果同樣串行地連續(xù)輸出,各采樣點之間不需要任何間隔時間。
本發(fā)明的快速哈達瑪變換裝置與現(xiàn)有技術(shù)相比,采用了串行處理的方式,只需用較少的硬件便可實現(xiàn),可很方便地應(yīng)用在串行輸入、串行輸出的場合,比現(xiàn)有的FHT裝置節(jié)省4個減法器和用于并串轉(zhuǎn)換的存儲資源及控制邏輯。由于本裝置將FHT蝶形運算的數(shù)據(jù)流由并行改為串行,并采用流水運算,它的接口簡單,可以很方便地嵌入小區(qū)搜索的幀同步裝置中,可以4倍或8倍碼片速率的時鐘連續(xù)處理多個抽樣點的輔同步信道數(shù)據(jù),不需要任何間隔時間或并串轉(zhuǎn)換時間,并在此基礎(chǔ)上完成多幀數(shù)據(jù)的累加判決,提高幀同步的準確度;而且由于本FHT裝置可以連續(xù)處理時隙同步周圍多個抽樣點的數(shù)據(jù),依據(jù)各抽樣點的處理結(jié)果來檢驗和糾正小區(qū)搜索的時隙同步結(jié)果。因此使用本裝置可糾正小區(qū)搜索的時隙同步,提高幀同步的準確度。
但應(yīng)當(dāng)理解的是,本發(fā)明上述針對具體實施例的描述較為詳細,不能因此而認為是對本發(fā)明專利保護范圍的限制,本發(fā)明的專利保護范圍應(yīng)以所附權(quán)利要求為準。
權(quán)利要求
1.一種快速哈達瑪變換裝置,其特征在于,包括一控制單元和四個流水相接的運算單元第一級運算單元、第二級運算單元、第三級運算單元、第四級運算單元;所述控制單元用于控制四個運算單元的工作時序,產(chǎn)生相應(yīng)的控制信號,控制每個運算單元內(nèi)部數(shù)據(jù)的延遲和選擇;所述第一級運算單元用于將快速哈達瑪變換的輸入數(shù)據(jù)每兩個交叉配對,完成第一級的蝶形運算,結(jié)果輸出至第二級運算單元;所述第二級運算單元用于將第一級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成第二級的蝶形運算,結(jié)果輸出至第三級運算單元;所述第三級運算單元用于將第二級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成第三級的蝶形運算,結(jié)果輸出至第四級運算單元;所述第四級運算單元用于將第三級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成第四級的蝶形運算,其輸出為16點快速哈達瑪變換的最終處理結(jié)果。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述裝置采用流水線工作方式,輸入數(shù)據(jù)串行輸入,快速哈達瑪變換結(jié)果順序串行輸出。
3.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述控制單元的電路結(jié)構(gòu)包括四位計數(shù)器、兩個帶使能的寄存器、兩個無使能寄存器、以及四個反相器;所述四位計數(shù)器在時鐘上升沿從0~15循環(huán)計數(shù);所述兩個帶使能的寄存器及兩個無使能寄存器與所述四位計數(shù)器的四個比特位一起產(chǎn)生四個控制信號,該四個信號和其通過四個反相器得到的邏輯非信號一起,用于控制各部件運作。
4.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述運算單元的電路結(jié)構(gòu)包括一加法器、一反相器、若干個選擇器和若干個寄存器;所述加法器用于完成加減運算;所述寄存器用于緩存每級運算單元的輸入數(shù)據(jù),并以移位寄存器的方式為操作數(shù)順序的調(diào)整產(chǎn)生所需的特定延遲;所述選擇器用以選擇每次加減運算的兩個操作數(shù),配合所述寄存器對所述加法器的兩個操作數(shù)進行順序調(diào)整,使其在時序上對齊。
5.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述加法器為補碼加法器。
6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述第一級運算單元的電路結(jié)構(gòu)包括第一反相器、一第一選擇器和一第一加法器,以及第一、第二帶使能寄存器,第一無使能寄存器;欲進行快速哈達瑪變換的數(shù)據(jù)輸入到該第一級運算單元后,所述第一帶使能寄存器在控制信號為低電平時對該數(shù)據(jù)作選擇寄存,所述第二帶使能寄存器在控制信號為高電平時對該數(shù)據(jù)作選擇寄存,將該數(shù)據(jù)分為兩路信號,其中一路信號由所述第一無使能寄存器延遲一個時鐘周期后形成延遲后信號;同時,所述第一反相器對另一路信號進行按位取反后形成取反后信號;由所述第一選擇器在所述控制信號為低電平時選擇待取反信號,在控制信號為高電平時選擇取反后信號,如此待取反信號經(jīng)過第一反相器和第一選擇器后,變?yōu)榇訙p信號;最后延遲后信號和待加減信號由第一加法器相加后輸出為該第一級運算單元的結(jié)果。
7.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述第二、第三或第四級運算單元的電路結(jié)構(gòu)包括所述運算單元的級數(shù)為n=2、3或4時,由兩個帶使能寄存器將前一級流水運算單元的輸出數(shù)據(jù)分為兩路信號,作為本級運算單元的輸入數(shù)據(jù),并將其保持時間由一個時鐘周期變?yōu)閮蓚€時鐘周期;然后用2j個寄存器將一路數(shù)據(jù)延遲2k-1個時鐘周期;用兩個二選一的選擇器對另一路數(shù)據(jù)和前路延遲后的數(shù)據(jù)進行路徑選擇,使其原本交錯的兩路數(shù)據(jù)分開,并調(diào)整好順序;路徑調(diào)整后的該另一路數(shù)據(jù)要用n個帶使能的寄存器延遲2n-1個時鐘周期;同時前路數(shù)據(jù)通過一個反相器后得到其按位求邏輯反的信號,代表其相反數(shù),與其原數(shù)據(jù)一起,形成前路數(shù)據(jù)的正、負兩路信號;用第三個二選一的選擇器對這兩路信號進行選擇,將前路數(shù)據(jù)的保持時間由兩個時鐘周期還原為一個時鐘周期,該第一個時鐘用于加法運算,第二個時鐘用于減法運算;用所述補碼加法器求出這兩路數(shù)據(jù)的和,即為本級運算單元的結(jié)果;其中,k=n-1;j=n-2,n為當(dāng)前運算單元的級數(shù)。
全文摘要
本發(fā)明公開了一種快速哈達瑪變換裝置,其包括一控制單元和四個流水相接的運算單元第一級運算單元、第二級運算單元、第三級運算單元、第四級運算單元;所述控制單元用于控制四個運算單元的工作時序,產(chǎn)生相應(yīng)的控制信號,控制每個運算單元內(nèi)部數(shù)據(jù)的延遲和選擇;所述第一級運算單元用于將快速哈達瑪變換的輸入數(shù)據(jù)每兩個交叉配對,完成第一級的蝶形運算,結(jié)果輸出至第二級運算單元;以后各級運算單元用于將前級運算單元的輸出數(shù)據(jù)每兩個交叉配對,完成本級的蝶形運算,結(jié)果輸出至下一級運算單元;直至輸出為16點快速哈達瑪變換的最終處理結(jié)果。本發(fā)明裝置由于采用了串行處理的方式,只需用較少的硬件便可實現(xiàn),提高了幀同步的準確度。
文檔編號H04B7/26GK1937451SQ20051010351
公開日2007年3月28日 申請日期2005年9月19日 優(yōu)先權(quán)日2005年9月19日
發(fā)明者黃舒懷 申請人:中興通訊股份有限公司