《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > 基于DS-UWB的可變碼擴(kuò)頻及同步的FPGA實(shí)現(xiàn)

基于DS-UWB的可變碼擴(kuò)頻及同步的FPGA實(shí)現(xiàn)

2008-07-10
作者:李 勇,余寧梅

??? 摘 要: 為了提高擴(kuò)頻" title="擴(kuò)頻">擴(kuò)頻系統(tǒng)中同步接收機(jī)的靈活性,利用DS-UWB" title="DS-UWB">DS-UWB無(wú)載波的特性,設(shè)計(jì)了一種碼長(zhǎng)及碼型可變、工作在碼片" title="碼片">碼片速率的擴(kuò)頻及其同步電路,在擴(kuò)頻電路設(shè)計(jì)時(shí)分別采用了PN碼和三進(jìn)制碼,同步模塊可以復(fù)用,采用Verilog HDL描述電路,然后對(duì)該電路進(jìn)行了功能和時(shí)序仿真,最后在Altera的CycloneII系列芯片上驗(yàn)證了該電路,并對(duì)采用兩種擴(kuò)頻碼的適用場(chǎng)合進(jìn)行了分析。
??? 關(guān)鍵詞: MBOK? PN? 擴(kuò)頻? 同步? 無(wú)載波? DS-UWB

?

??? 超寬帶無(wú)線通信技術(shù)由于具有高傳輸率、低功耗和低成本等諸多優(yōu)點(diǎn),在短距離局域網(wǎng)中有著廣闊的應(yīng)用前景,也被視為下一代無(wú)線通信的關(guān)鍵技術(shù)之一。而擴(kuò)頻通信系統(tǒng)" title="通信系統(tǒng)">通信系統(tǒng)與常規(guī)的通信系統(tǒng)相比,具有很強(qiáng)的抗人為干擾、抗多徑干擾的能力,并具有信息隱蔽、多址保密通信等特點(diǎn)。這兩種技術(shù)的融合,可以使通信系統(tǒng)兼得各自的優(yōu)點(diǎn),是目前通信系統(tǒng)中研究的一個(gè)熱點(diǎn)。
??? DS-UWB使用了擴(kuò)頻技術(shù),使得這種通信系統(tǒng)具有極大的優(yōu)勢(shì)。在傳統(tǒng)的擴(kuò)頻電路中,擴(kuò)頻碼比較單一,應(yīng)用范圍較窄。本文提出一種新的思路,設(shè)計(jì)了一種可以通過(guò)設(shè)置控制信號(hào)來(lái)選擇不同擴(kuò)頻碼電路,可達(dá)到靈活應(yīng)用的目的。
??? 在無(wú)線通信擴(kuò)頻系統(tǒng)中,只有實(shí)現(xiàn)了載波同步和擴(kuò)頻序列等同步才能使接收機(jī)正常工作。例如在CDMA、GPS等擴(kuò)頻系統(tǒng)中,必須用兩個(gè)跟蹤環(huán)來(lái)鎖定輸入信號(hào),一個(gè)環(huán)用于鎖定載波。一旦載波被鎖定,另一個(gè)環(huán)就將鎖定碼片速率。因?yàn)镈S-UWB是無(wú)載波的,所以不需要載波跟蹤環(huán)[1-2],只需要鎖定某一時(shí)鐘、碼片速率或符號(hào)速率。本文就是利用DS-UWB無(wú)載波的特點(diǎn),設(shè)計(jì)了一種工作在碼片速率的捕獲和跟蹤電路。
1 擴(kuò)頻及同步模塊設(shè)計(jì)
1.1 同步過(guò)程

??? 圖1為同步接收機(jī)結(jié)構(gòu)圖,從射頻來(lái)的信號(hào)經(jīng)過(guò)帶通濾波器和低噪聲放大器等和本地的模板波形相乘,然后通過(guò)低通濾波器和數(shù)模轉(zhuǎn)換模塊得到基帶信號(hào)。此基帶信號(hào)通過(guò)匹配濾波器" title="匹配濾波器">匹配濾波器完成捕獲功能,捕獲完成后,利用延遲鎖定環(huán)實(shí)現(xiàn)信號(hào)的跟蹤。延遲鎖定環(huán)的輸出信號(hào)送給DDS,產(chǎn)生數(shù)字載波,最后將通過(guò)數(shù)模轉(zhuǎn)換得到的載波反饋給本地模板波形,調(diào)整其頻率從而達(dá)到同步的目的[3]。本文的主要工作在數(shù)字基帶部分,即完成了匹配濾波器設(shè)計(jì)、延遲鎖定環(huán)、DDS模塊及擴(kuò)頻與解擴(kuò)設(shè)計(jì)。

?


??? 根據(jù)同步接收機(jī)的結(jié)構(gòu),設(shè)計(jì)出擴(kuò)頻及其同步電路,可變碼擴(kuò)頻可選用不同長(zhǎng)度的PN碼和三進(jìn)制碼,如圖2所示。

?


1.2 擴(kuò)頻與解擴(kuò)實(shí)現(xiàn)
??? 下面分別介紹MBOK和PN碼擴(kuò)頻的過(guò)程。
1.2.1 MBOK擴(kuò)頻
??? 由于MBOK正交序列碼集是由計(jì)算機(jī)搜索到的偽正交碼,所以沒(méi)有一定的生成多項(xiàng)式,本文采用查表法實(shí)現(xiàn)擴(kuò)頻。表1是由802.15.3a工作組給出的一組三進(jìn)制擴(kuò)頻碼。

?


??? 擴(kuò)頻單元主要由寄存器、ROM和并串轉(zhuǎn)換模塊構(gòu)成。首先,輸入的1位原始位信息放在寄存器中變?yōu)榉?hào)信息,符號(hào)信息的個(gè)數(shù)由M決定。寄存器輸出兩個(gè)值,一個(gè)是地址信息,用于在ROM中選擇正交序列;一個(gè)是相位信息,用于調(diào)制序列的相位信息。由于MBOK是由{1,0,-1}組成的三進(jìn)制正交碼,而-1無(wú)法用硬件描述語(yǔ)言實(shí)現(xiàn),將其映射為有符號(hào)數(shù)。在本文中,用11代表-1,01代表+1,00代表0。即ROM中存放的是映射后的48位二進(jìn)制序列。當(dāng)相位信息為1時(shí),選擇的序列相位取反;相位信息為0時(shí),序列相位不變。然后將這些并行的序列經(jīng)過(guò)并串轉(zhuǎn)換模塊輸出,以便調(diào)制脈沖相位。-1和+1的相位相差180度,而0表示沒(méi)有脈沖信號(hào)發(fā)出。MBOK擴(kuò)頻端設(shè)計(jì)如圖3所示。

?

??? 從每個(gè)脈沖信號(hào)的相位信息中提取出碼片信息11或01,沒(méi)有脈沖信號(hào)時(shí),碼片信息為00。在接收端,采用相關(guān)解擴(kuò)法。將碼片信息分別存儲(chǔ)在24位的符號(hào)寄存器和24位的數(shù)值寄存器內(nèi)。寄存器中的序列被送至各個(gè)相關(guān)運(yùn)算單元進(jìn)行相關(guān)運(yùn)算,在每個(gè)相關(guān)運(yùn)算單元中,有兩個(gè)相關(guān)器,一個(gè)用于計(jì)算符號(hào)信息,另一個(gè)計(jì)算數(shù)值信息。然后將其積分得到序列之間的相關(guān)值,將8組相關(guān)運(yùn)算單元計(jì)算得出的相關(guān)值送入判決器,在判決器中跟各個(gè)門限值進(jìn)行比較,從而恢復(fù)出原始符號(hào)信息。最后的位信息經(jīng)并串轉(zhuǎn)換模塊輸出。如圖4所示。

?


1.2.2 PN碼擴(kuò)頻
??? PN碼擴(kuò)頻一共分為三個(gè)模塊:時(shí)鐘分頻模塊、擴(kuò)展模塊和并串轉(zhuǎn)換模塊。
??? 分頻模塊主要作用是實(shí)現(xiàn)時(shí)鐘的分頻,分頻大小取決于擴(kuò)頻的位數(shù)。
??? 擴(kuò)展模塊按照預(yù)先設(shè)定的擴(kuò)頻序列對(duì)輸入信號(hào)進(jìn)行擴(kuò)頻,這里采用的是31位的M序列,如果輸入信號(hào)為1,則以原碼輸出,如果是0,則以其反碼輸出。
??? 并串轉(zhuǎn)換模塊是將擴(kuò)展模塊輸出的并行數(shù)據(jù)串行輸出。
??? 解擴(kuò)就是在一碼元周期里對(duì)比特?cái)?shù)據(jù)進(jìn)行相關(guān)積分,并設(shè)置一高一低兩個(gè)門限閾值。如果積分值大于高門限,則譯為1,如果積分值小于低門限,則譯為0。
1.3 匹配濾波器設(shè)計(jì)
??? 匹配濾波器(DMF)實(shí)現(xiàn)捕獲的基本思想是利用自相關(guān)特性識(shí)別碼序列,相關(guān)過(guò)程相當(dāng)于接收信號(hào)滑過(guò)碼序列,每個(gè)時(shí)刻都產(chǎn)生一個(gè)相關(guān)結(jié)果,當(dāng)滑到兩序列對(duì)齊時(shí),有相關(guān)峰值輸出。在沒(méi)有任何干擾的情況下,匹配濾波器最多只需要一個(gè)擴(kuò)頻序列的周期,就可以檢測(cè)出同步相位。PN方式擴(kuò)頻時(shí),采用31位M序列作為UWB中用來(lái)同步的preamble。其本原多項(xiàng)式為f(x)=x5+x4+x3+x2+1。最后為了處理方便,在31位M序列末尾加了1位0。使用MBOK方式擴(kuò)頻時(shí),用24位的三進(jìn)制擴(kuò)頻序列。
??? 綜合本模塊設(shè)計(jì)和后面控制模塊的設(shè)計(jì),以PN碼擴(kuò)頻為例,給出如下算法:
??? (1)啟動(dòng)模64計(jì)數(shù)器(MBOK方式為48),在一個(gè)符號(hào)時(shí)間內(nèi)尋找匹配濾波器最大值出現(xiàn)的位置,如果該值達(dá)到了設(shè)定的閾值,記錄該位置。
??? (2)啟動(dòng)重合檢測(cè),連續(xù)檢測(cè)8個(gè)符號(hào)內(nèi)的最大值位置,若這8個(gè)最大值出現(xiàn)的最大值位置有若干個(gè)(預(yù)先設(shè)定)與初次檢測(cè)到的位置一致,則認(rèn)為捕獲初步完成,進(jìn)入跟蹤,否則回到(2)。
??? (3)啟動(dòng)門限檢測(cè)器,對(duì)(2)中連續(xù)8個(gè)符號(hào)內(nèi)的最大值做平均,均值與設(shè)定的門限做比較。如果高于門限,則認(rèn)為捕獲完成,進(jìn)入跟蹤狀態(tài),否則回到(1)。
??? 在運(yùn)用FPGA實(shí)現(xiàn)匹配濾波器時(shí),由于匹配濾波器系數(shù)僅有0和1,該濾波器中并不包含有真正意義上的乘法器,濾波器采樣速率為PN碼的2倍.由于匹配濾波器中的移位寄存器消耗大量的邏輯資源,采用如圖5的設(shè)計(jì)可以減少一半的移位寄存器。雙口RAM的讀寫地址相差16[4][5]。

?


1.4 跟蹤電路設(shè)計(jì)
??? 圖6是跟蹤電路結(jié)構(gòu)的設(shè)計(jì)框圖,匹配濾波器n位輸出送至比較器進(jìn)行比較,然后將比較結(jié)果分別送給n位和1位的加法器處理,接著將輸出值送至有限狀態(tài)機(jī),最后由除法器和減法器配合有限狀態(tài)機(jī)工作,從而實(shí)現(xiàn)跟蹤功能。

?


??? 本設(shè)計(jì)采用的是延遲鎖定環(huán)。輸入PN碼信號(hào)分別與本地產(chǎn)生的延遲相差1位的PN碼進(jìn)行相關(guān)運(yùn)算。這兩個(gè)相互延遲1位的PN碼序列可由本地PN碼發(fā)生器提前Tc/2和滯后Tc/2得到。按照PN碼相關(guān)特性,輸入信號(hào)與本地PN碼的相關(guān)特性為三角波。兩個(gè)移位自相關(guān)函數(shù)R(τ+Tc/2)和-R(τ+Tc/2)相加形成的曲線如圖7所示。S曲線表明,如果收到的信號(hào)與本地PN碼相差有提前或延后,則加法器輸出為正值或負(fù)值??梢钥闯?,在時(shí)間偏差-Tc/2~Tc/2之間,延遲鎖定環(huán)的輸出值和時(shí)間偏差τ成正比。此值經(jīng)過(guò)處理后送給DDS,經(jīng)過(guò)它再去調(diào)整本地模板信號(hào),使本地模板波形的頻率隨相位跟蹤接收信號(hào)變化。這就是本設(shè)計(jì)延遲鎖定環(huán)的基本工作情況。本論文中,減法器和有限狀態(tài)機(jī)及后面所設(shè)計(jì)的DDS一起完成延遲鎖定功能[6]

?


??? 在正常情況下(即同步狀態(tài)),S曲線鎖定在0點(diǎn)。如果出現(xiàn)同步有少許偏差的情況,則會(huì)送出信號(hào)給DDS模塊,最后產(chǎn)生修正同步偏差的數(shù)字載波。
??? 此外,同步中比較復(fù)雜的狀態(tài)轉(zhuǎn)換也由此部分來(lái)控制。下面逐步說(shuō)明同步過(guò)程中狀態(tài)轉(zhuǎn)換情況。首先,不斷判斷匹配濾波器相關(guān)值輸出,如果超過(guò)了閾值,則進(jìn)入了捕獲的第一個(gè)狀態(tài),也就是重合檢測(cè)狀態(tài)。其中用high代表濾波器系數(shù)高位與輸入數(shù)據(jù)的相關(guān)值,low代表濾波器系數(shù)低位與輸入數(shù)據(jù)相關(guān)值,dlow為low的延遲輸出。Sum為high與dlow之和。即為匹配濾波器的輸出,location代表的是第一個(gè)符號(hào)內(nèi)匹配濾波器輸出值最大時(shí)的位置,flag則是用來(lái)跟蹤每一個(gè)符號(hào)周期內(nèi)最大值的位置。
??? 等到重合檢測(cè)結(jié)束,將step的值與設(shè)定的閾值作比較,若大于閾值,則進(jìn)入了捕獲的次狀態(tài),即門限檢測(cè)狀態(tài),由此已經(jīng)確定了最大值的位置(position的值),此時(shí)將滿足條件最大值的和即(asum)和重合次數(shù)(step)的值送給除法器做門限檢測(cè)。
??? 若門限檢測(cè)通過(guò),系統(tǒng)進(jìn)入跟蹤狀態(tài)。此時(shí)給出控制信號(hào)(en),讓解擴(kuò)模塊開始工作。在跟蹤狀態(tài)中,要比較每個(gè)符號(hào)周期內(nèi)最大值出現(xiàn)位置(position)前后半個(gè)碼片的相關(guān)值,它們的差值送給DDS,作為調(diào)整信號(hào)。
??? 圖8和圖9分別為信號(hào)轉(zhuǎn)換示意圖和同步控制模塊狀態(tài)轉(zhuǎn)換圖。圖8中的quo和dis分別為除法器輸出和延遲鎖定環(huán)差值輸出。

?

?


1.5 DDS的設(shè)計(jì)
??? DDS主要由L位累加器、L位寄存器和正弦值存儲(chǔ)ROM表構(gòu)成。在本設(shè)計(jì)中,L取值為8。ROM里存儲(chǔ)的值是由相位碼計(jì)算出來(lái)的與之對(duì)應(yīng)的幅度碼。正弦波輸出的值可用9位二進(jìn)制數(shù)來(lái)表示,其最大值設(shè)為011111111。最高位為符號(hào)位。其幅度值可用公式255sin2πn/256計(jì)算出的值截短得到。然后將計(jì)算得到的值存儲(chǔ)在ROM當(dāng)中,ROM的位寬為8位,深度是256。延遲鎖定環(huán)輸出值可以算出基帶信號(hào)頻率的偏差,設(shè)為f,根據(jù)DS-UWB射頻中心頻率和碼片速率3倍的關(guān)系,DDS可以產(chǎn)生出相應(yīng)頻率的數(shù)字載波,通過(guò)DAC的輸出信號(hào)來(lái)調(diào)節(jié)本地模板信號(hào),從而使系統(tǒng)始終處于精確同步狀態(tài)。
1.6 同步模塊的復(fù)用及可變碼長(zhǎng)
??? 碼長(zhǎng)的調(diào)整只需要調(diào)整相對(duì)應(yīng)的信號(hào)位寬,由于匹配濾波器、DDS及除法器模塊對(duì)于PN碼及MBOK擴(kuò)頻都是通用的,也只需要調(diào)整一下信號(hào)位寬的參數(shù)。需要考慮的是延遲鎖定環(huán)單元,采用MBOK擴(kuò)頻的三進(jìn)制序列有著良好的自相關(guān)性能,而且其自相關(guān)性與PN碼相似,所以也可以使用延遲鎖定環(huán)來(lái)進(jìn)行跟蹤。
2 系統(tǒng)仿真和驗(yàn)證
??? 圖10為整個(gè)系統(tǒng)的信號(hào)連接框圖,共分為匹配濾波器、除法器、延遲鎖定環(huán)、直接頻率合成、擴(kuò)頻和解擴(kuò)模塊6個(gè)部分。其中con為碼型控制信號(hào),當(dāng)con為高電平時(shí),系統(tǒng)采用PN碼擴(kuò)頻方式;當(dāng)con為低電平時(shí),系統(tǒng)采用三進(jìn)制碼的MBOK擴(kuò)頻方式。

?


??? 圖11和圖12分別是用PN碼(con為1)和三進(jìn)制碼擴(kuò)頻(con為0)的后仿波形,測(cè)試時(shí)使用的是相同的數(shù)據(jù),可以看到在這兩種情況下,擴(kuò)頻系統(tǒng)均能正確解擴(kuò)。

?

?


??? 本系統(tǒng)以MBOK為例在Altera的cycloneII系列EP2C35F672C8上進(jìn)行了驗(yàn)證。通過(guò)比較可以看到,用Quartus后仿真的波形與FPGA驗(yàn)證波形完全一致。圖13為用邏輯分析儀測(cè)出的FPGA驗(yàn)證波形圖,系統(tǒng)在復(fù)位信號(hào)變高之后開始工作,datain的前面8個(gè)時(shí)鐘周期的1是用于捕獲的前導(dǎo)符,此后同步捕獲獲得成功,則由控制單元給出解擴(kuò)的使能信號(hào),然后由解擴(kuò)單元輸出有效的數(shù)據(jù)信號(hào)??梢钥吹?,除了由于數(shù)據(jù)處理帶來(lái)的延時(shí)之外,經(jīng)過(guò)同步解擴(kuò)以后的數(shù)據(jù)dataout與擴(kuò)頻之前完全一致。而datao是DDS輸出的調(diào)整同步的數(shù)字載波信號(hào)。如果同步,則輸出為0;否則會(huì)把相應(yīng)的數(shù)值送給DDS單元來(lái)調(diào)整。

?


??? 利用Altera的cycloneII系列對(duì)本電路進(jìn)行了綜合,共使用了1034個(gè)logic elements,可以看到用較少的硬件資源實(shí)現(xiàn)了擴(kuò)頻及其同步。此外,電路的最高工作頻率可以達(dá)到113.30MHz。
3 擴(kuò)頻碼應(yīng)用分析
??? 利用MBOK序列擴(kuò)頻可以提高系統(tǒng)速率,且MBOK序列具有良好的互相關(guān)性能,多用戶工作時(shí)誤碼率較低。但是由于接收機(jī)的相關(guān)器數(shù)目為PN碼擴(kuò)頻的M/2倍,所以接收機(jī)的復(fù)雜度和功耗會(huì)相應(yīng)增加。在功耗要求較高和用戶較少的情況下,可以使用PN碼進(jìn)行擴(kuò)頻,否則最好使用MBOK擴(kuò)頻方式。
??? 本文利用DS-UWB的無(wú)載波特性設(shè)計(jì)了一種用于該系統(tǒng)可變碼擴(kuò)頻及其同步的電路。只需要鎖定一個(gè)時(shí)鐘就可以同時(shí)同步基帶和載波信號(hào),大大簡(jiǎn)化了接收機(jī)的結(jié)構(gòu);對(duì)所設(shè)計(jì)的電路進(jìn)行了功能仿真和時(shí)序仿真;利用FPGA對(duì)電路進(jìn)行了驗(yàn)證。結(jié)果表明,電路工作正確可靠,同步精度可以達(dá)到1/4個(gè)碼片。由于本系統(tǒng)采用全參數(shù)化設(shè)計(jì),所以修改相關(guān)參數(shù)后,該電路亦可應(yīng)用于類似的無(wú)線擴(kuò)頻通信系統(tǒng)中。
參考文獻(xiàn)
[1] Maria-Gabriella Di Benedetto,Guerino Giancola.超寬帶無(wú)線電基礎(chǔ)[M].北京:電子工業(yè)出版社,2005.
[2] AIELLO G R,ROGERSON G D.Ultra-Wideband Wireless?Systems.IEEE microwave magazine[J].2003,(6):36-45.
[3] WIN M Z,SCHOLTZ R A.Ultra-wide Bandwidth Time-hopping Spread-spectrum Impulse Radio for Wireless Multipleaccess Communications[C].IEEE Transactions on? Communications,2000,48(4):679-689.
[4] 揚(yáng)奎武,魏博.擴(kuò)頻通信中匹配濾波器的FPGA設(shè)計(jì)[J].微計(jì)算機(jī)信息(測(cè)控自動(dòng)化),2005,21(3):117-118.
[5] 葉淦華.FPGA嵌入式應(yīng)用系統(tǒng)開發(fā)典型實(shí)例[M].北京:中國(guó)電力出版社,2005:283-284.
[6] 張欣.擴(kuò)頻通信數(shù)字基帶信號(hào)處理及其VLSI實(shí)現(xiàn)[M].北京:科學(xué)出版社,2004:81-83.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。