胡秀娟, 陳德軍, 陶 雪, 張 濤
(上海電機(jī)學(xué)院 電子信息學(xué)院,上海 201306)
?
基于汽車防撞雷達(dá)的偽隨機(jī)碼設(shè)計
胡秀娟, 陳德軍, 陶 雪, 張 濤
(上海電機(jī)學(xué)院 電子信息學(xué)院,上海 201306)
對偽隨機(jī)碼進(jìn)行設(shè)計,以達(dá)到較高的靈敏度和分辨率。通過對偽隨機(jī)碼產(chǎn)生的原理的分析,得到其常用的反饋邏輯式;然后利用FPGA平臺,對代碼段中的寄存器長度、反饋結(jié)構(gòu)、初始化信息等模塊作相應(yīng)修改,可得到不同長度和反饋邏輯的線性反饋移位寄存器,進(jìn)而得到不同長度和結(jié)構(gòu)的偽隨機(jī)碼。仿真分析及實(shí)驗(yàn)驗(yàn)證了該設(shè)計的可行性及有效性。
偽隨機(jī)碼; 防撞雷達(dá); 汽車; 仿真
隨著現(xiàn)代人生活水平的提高,對行車安全問題也越來越重視,如何讓汽車變得更安全就成了人們追求的目標(biāo)。因此,市場的需求推動了汽車防撞雷達(dá)技術(shù)的發(fā)展。防撞雷達(dá)是汽車安全行駛及泊車的關(guān)鍵裝置,該裝置可實(shí)現(xiàn)個人駕駛車輛前方、相對速度以及相對方位角等信息的獲取[1-4]。當(dāng)駕駛車輛與前方車輛之間的距離將要達(dá)到危險閾值時,雷達(dá)系統(tǒng)會提前發(fā)出聲光報警,使駕駛員提前做出反應(yīng),根據(jù)實(shí)際情況進(jìn)行自剎車或減速處理。
目前,市場上常見的防撞雷達(dá)多采用超聲波傳感器。當(dāng)防撞雷達(dá)系統(tǒng)啟動后,傳感器發(fā)送超聲波,遇到障礙物則產(chǎn)生回波信號,傳感器接收到回波信號后由控制器進(jìn)行數(shù)據(jù)處理,判斷出障礙物的位置,由顯示器顯示距離并發(fā)出警示信號。本文主要基于無線電波,對發(fā)射波形進(jìn)行設(shè)計,以達(dá)到較高的靈敏度和分辨率。同時,考慮電磁環(huán)境的影響,對偽隨機(jī)碼進(jìn)行靈活設(shè)計,以期得到不同長度和結(jié)構(gòu)的偽隨機(jī)碼,同時結(jié)合軟件仿真分析了設(shè)計的有效性,并進(jìn)行了硬件驗(yàn)證。
根據(jù)隨機(jī)碼的特點(diǎn)將隨機(jī)碼的隨機(jī)特性做如下修改[5-11]:
(1) 在1個周期內(nèi),兩種不同元素出現(xiàn)的次數(shù)最多相差1次——均衡性特性;
(2) 在1個周期內(nèi),長度為n的游程(1個序列中取值相同的那些連在一起的元素合稱為一個“游程”)出現(xiàn)的次數(shù)比長度為n+1的游程出現(xiàn)的次數(shù)多1倍——游程分布特性;
(3) 序列具有雙值自相關(guān)函數(shù)——隨機(jī)特性,即
(1)
式中,P為序列的周期(或長度);當(dāng)K接近于0時,K為大于0,小于1的數(shù)。該函數(shù)的特性非常接近白噪聲的自相關(guān)函數(shù)特性,故將該序列稱作偽噪聲序列。
在上述給出的偽隨機(jī)碼定義的基礎(chǔ)上,利用移位寄存器(簡稱移存器)來實(shí)現(xiàn)設(shè)計。帶有反饋邏輯線路的n級動態(tài)移存器如圖1所示。圖中,an為輸出值,n∈N。
圖1 n級線性反饋移存器
其末級輸出序列為a0a1a2…an…,該序列滿足如下的反饋邏輯函數(shù):
an= C1an -1⊕C2an -2⊕…⊕Cian -i…⊕Cna0=
(2)
式中,Ci=1或0(i=1,2,…,n),視第i級是否參加模2運(yùn)算而定。若第i級參加模2運(yùn)算,則Ci=1;否則,Ci=0。由于式(2)是線性的,故稱為n級線性移存器。
根據(jù)反饋邏輯函數(shù),移存器可以產(chǎn)生不同長度的序列,具體分析如下: 圖2所示給出了4級線性移存器,其反饋邏輯a4=a2⊕a0。當(dāng)移存器初始狀態(tài)為1111時,其輸出序列為111100111100,偽碼周期為6;當(dāng)移存器初始狀態(tài)為0001時,其輸出序列為000101000101,偽碼周期為6;當(dāng)移存器初始狀態(tài)為1011時,其輸出序列為101101101101,偽碼周期為3。
圖2 4線性移位寄存器a4=a2⊕a0
圖3給出了反饋邏輯a4=a3⊕a2⊕a1⊕a0的4級線性移存器。此時,該移存器產(chǎn)生3個完全不同的序列,即0001100011,1111011110,0101001010,所產(chǎn)生的偽碼周期均為5。
圖3 4線性移位寄存器a4=a3⊕a2⊕a1⊕a0
由上述分析可見,雖然移存器的級數(shù)相同,但由于它們的反饋邏輯不同,產(chǎn)生的序列互不相同;同一個4級線性移存器,當(dāng)它的初始狀態(tài)不同時,其產(chǎn)生的序列也不完全相同。也就是說,n級線性移存器的序列結(jié)構(gòu)由其初始狀態(tài)和反饋邏輯完全確定。
在式(2)中將an移至等號右側(cè),并引入系數(shù)C0=1,得
(3)
則式(3)對應(yīng)的特征多項(xiàng)式為
f(x)= C0⊕C1x⊕C2x2⊕…⊕Cnxn=
(4)
令n級線性反饋移存器的輸出序列具有周期性,且周期p≤2n-1,則可得到m序列的f(x) 為不可約多項(xiàng)式,且f(x)能整除(xm⊕1),但除不盡(xq⊕1),q 因此,m序列的f(x)應(yīng)滿足以下3個條件: ①f(x)為不可約的;②f(x)可整除(xm⊕1),m=2n-1;③f(x)除不盡(xq⊕1),q 本文以一個4級反饋移存器為例求出其本原多項(xiàng)式。由于n=4,故該移存器產(chǎn)生的m序列長度m=2n-1=15。 由于其特征多項(xiàng)式f(x)能整除(xm⊕1),得到(x15⊕1),或者說是(x15⊕1)的一個因式,故可將(x15⊕1)因式分解,從其因式中找出f(x) (x15⊕1) =(x4⊕x⊕1)·(x4⊕x3⊕1)· (x4⊕x3⊕x2⊕x⊕1)·(x2⊕x⊕1)· (x⊕1) 其中,(x2⊕x⊕1)、(x⊕1)兩個因式不是4次的,故不是本原多項(xiàng)式;剩下3個4次多項(xiàng)式中,前2個是本原多項(xiàng)式,第3個則不是,因?yàn)?x4⊕x3⊕x2⊕x⊕1)·(x⊕1)=(x5⊕1)不滿足條件3。由f(x)=(x4⊕x3⊕x2⊕x⊕1)組成的序列發(fā)生器如圖3所示;由f(x)=(x4⊕x3⊕1)組成的序列發(fā)生器如圖2所示。 由上可見,只要找到了本原多項(xiàng)式,就能由它來構(gòu)成m序列發(fā)生器,表1列出了次數(shù)n<16的本原多項(xiàng)式[12-15]。 對于本文設(shè)計,將本原多項(xiàng)式“翻譯”為線性反饋移存器所用的反饋邏輯更加直觀方便。線性反饋移存器的最低位是從a0開始的,其對應(yīng)著本原多項(xiàng)式的最高位;相似地,本原多項(xiàng)式的最低位是從x1開始的,其對應(yīng)著移存器的最高位。因此,表1對應(yīng)的反饋邏輯如表2所示。理論上,依照表2中的反饋邏輯對現(xiàn)場可編程門陣列(Field-Programmable Gate Array, FPGA)進(jìn)行邏輯設(shè)計的電路都能產(chǎn)生m序列的偽隨機(jī)碼。 表1 部分本原多項(xiàng)式Tab.1 Partial primitive polynomial 表2 偽碼產(chǎn)生常用反饋邏輯Tab.2 Common feedback logic 2.1 偽隨機(jī)碼軟件實(shí)現(xiàn) 本設(shè)計在FPGA平臺上,通過Verilog硬件描述語言(Hardware Description Language, HDL)的邏輯描述,可以實(shí)現(xiàn)線性反饋移存器的邏輯結(jié)構(gòu)。另外,通過對源代碼的修改,還可以方便地更改線性反饋移存器的級數(shù)和反饋形式,進(jìn)而實(shí)現(xiàn)對偽碼序列長度和序列結(jié)構(gòu)的修改。 以5級線性反饋移存器結(jié)構(gòu)為例,編寫一段偽隨機(jī)碼產(chǎn)生的電路源代碼。采用反饋邏輯a5=a3⊕a0的線性反饋移存器,其邏輯結(jié)構(gòu)如圖4所示。 圖4 5級線性反饋移位寄存器a5=a3⊕a0 用Verilog HDL語言對圖4中線性反饋移存器進(jìn)行邏輯描述,編程如下: module My_pn_gen(clk, pn_out_i, RESET); input clk, RESET; //定義模塊輸入、輸出 output pn_out_i; parameter Width_lfsr=5; //定義寄存器長度為5級 parameter I_tap1=0; //定義反饋環(huán)節(jié)為a0和a3 parameter I_tap2=3; reg[Width_lfsr-1: 0] srl_i; wire lfsr_in_i, par_fdbk_i; //定義反饋線路 //線性反饋移存器內(nèi)部結(jié)構(gòu)定義 assign pn_out_i=srl_i[I_tap1]; assign par_fdbk_i=srl_i[I_tap2]^srl_i[I_tap1]; assign lfsr_in_i=par_fdbk_i; //模塊時序(行為)定義 always @(posedge clk or posedge RESET) begin if(RESET) //復(fù)位信號有效,重新初始化,寄存器賦初值 begin srl_i[0]<=0; srl_i[1]<=1; srl_i[2]<=0; srl_i[3]<=1; srl_i[4]<=1; end else //否則移存器內(nèi)容循環(huán)右移1位 srl_i<={lfsr_in_i, srl_i[Width_lfsr-1: 1]}; end endmodule 可見,只需對代碼段中的寄存器長度、反饋結(jié)構(gòu)、初始化信息等模塊作相應(yīng)修改即可得到不同長度和反饋邏輯的線性反饋移存器,進(jìn)而得到不同長度和結(jié)構(gòu)的偽隨機(jī)碼。 2.2 軟件仿真分析 為了驗(yàn)證用Verilog HDL語言構(gòu)建偽隨機(jī)碼產(chǎn)生電路的可行性以及所編寫的5級線性反饋移存器描述程序的正確性,進(jìn)行了程序仿真驗(yàn)證和實(shí)物測試驗(yàn)證。 仿真所用的軟件工具為可編程邏輯器開發(fā)過程中常用的Modelsim。在ISE(Integrated Software Enviroment)中可直接調(diào)用Modelsim,對 5級 線性反饋移位寄存器描述程序進(jìn)行行為仿真,得到行為仿真結(jié)果如圖5所示。 根據(jù)上文中對線性反饋移存器級數(shù)與偽隨機(jī)碼周期之間關(guān)系的分析,5級線性反饋移存器所產(chǎn)生的偽隨機(jī)碼的長度(即周期)應(yīng)為 25-1=31倍時鐘周期。在仿真模型中,時鐘周期被設(shè)為 40ns,故所產(chǎn)生的偽隨機(jī)碼的周期應(yīng)為40×31=1240ns。由圖5可見,仿真所得偽隨機(jī)碼的周期為1240ns,可見理論推導(dǎo)與仿真結(jié)果是相符的。進(jìn)一步對偽隨機(jī)碼一個周期內(nèi)波形的觀察和計算,可得出波形的高、低電平時間分別為 640ns 和 600ns,相差僅一個時鐘周期(40ns),這也符合偽隨機(jī)碼的定義。由于本文設(shè)計所采用的偽隨機(jī)碼產(chǎn)生電路原理和本原多項(xiàng)式都是經(jīng)過長期實(shí)踐驗(yàn)證的,基于上述仿真結(jié)果可以認(rèn)為本文中所編寫的程序成功描述了5級偽碼產(chǎn)生電路。 將描述程序在ISE中進(jìn)行綜合、布線后,再調(diào)用Modelsim進(jìn)行仿真,得到時序仿真結(jié)果如圖6所示。圖7給出了用Modelsim對上述程序段布局前的仿真局部波形圖。與圖6對比可見,后仿真所得到的模型比前仿真得到的模型多出 9260ps 的延時,該延時大部分是由真實(shí)線路中的走線延時造成的。 圖5 5級偽隨機(jī)碼(周期為1240ns) 圖6 后仿真時序圖(延時9260ps) 圖7 前仿真時序局部放大圖 為了進(jìn)一步驗(yàn)證利用本文方法設(shè)計實(shí)際電路的有效性和可行性,將通過仿真驗(yàn)證的偽隨機(jī)碼產(chǎn)生的電路描述程序通過ISE進(jìn)行設(shè)計綜合,生成配置文件并下載到FPGA芯片中,運(yùn)用示波器對實(shí)際電路產(chǎn)生的信號進(jìn)行觀測驗(yàn)證。 在型號為TDS3032的示波器上采集的本設(shè)計實(shí)際電路所產(chǎn)生的偽隨機(jī)碼的部分波形,如圖8所示。 圖8 實(shí)際電路產(chǎn)生的部分偽隨機(jī)碼波形 由圖8可見,由于受到實(shí)物硬件設(shè)計的影響,輸出波形不是理想狀態(tài),即輸出信號在超調(diào)量和穩(wěn)定時間方面還存在不足,但可本文的理論設(shè)計是可行的,故硬件設(shè)計問題忽略。 通過對5級線性反饋移存器進(jìn)行了邏輯描述,軟件仿真結(jié)果表明只需對代碼段中的寄存器長度、反饋結(jié)構(gòu)、初始化信息等模塊作相應(yīng)修改,即可得到不同長度和結(jié)構(gòu)的偽隨機(jī)碼。同時示波器實(shí)測波形結(jié)果表明本文設(shè)計的可行性和有效性。 [1] HYUN E,OH W,LEE J H.Design and implementation of automotive 77GHz FMCW radar system based on DSP and FPGA[C]//IEEE International Conference on Consumer Electronics.Las Vegas,NN: IEEE,2011: 517-518. [2] 王英,許可.基于UWB無線定位的汽車防撞系統(tǒng)設(shè)計[J].重慶郵電大學(xué)學(xué)報(自然科學(xué)版),2010,22(6): 804-807. [3] 張恒,劉勝利,范江濤,等.基于DSP的防撞雷達(dá)信號采樣系統(tǒng)設(shè)計[J].集成電路應(yīng)用,2012,38(4): 34-36. [4] ZHAO S,CHEN L.Research on the single target recognition of car collision avoidance radar based on the FMCW technology[J].Advanced Materials Research,2014,1046: 293-296. [5] ZHANG Xinyu.Automotive anti-collision radar signal processing system design based on DSP[J]. Advanced Materials Research,2014,1044/1045: 727-730. [6] 林元新.超聲波測距和汽車防撞雷達(dá)的設(shè)計[J].汽車電器,2006(12): 52-55. [7] HYUN E,OH W,LEE J H.Development of hardware platform and embedded software for designing automotive FMCW radar system[J].IEMEK Journal of Embedded Systems and Application,2011,6(3): 117-123. [8] FOLSTER F,ROHLING H,LUBBERT U.An automotive radar network based on 77GHz FMCW sensor[C]//IEEE International Radar Conference.[S.L.]: IEEE,2005: 871-876. [9] 王瑤.基于FPGA的汽車防撞信號處理系統(tǒng)的研究[D].哈爾濱: 哈爾濱工業(yè)大學(xué),2014: 10-15. [10] WU Chang,LI Huan,LI Yubai.A practical FMCW radar signal processing method and its system implementation[C]//6th International Conference on ITS Telecommunications.Chengdu: IEEE,2006: 1195-1199. [11] LEE E.Analysis of the parked automotive fire breaking out late at night[J].Journal of Korean Society of Hazard Mitigation,2015,15(2): 241-248. [12] KIM Y H,LEE E P.Analysis of the truck fire breaking out during expressway driving[J].Journal of Korean Society of Hazard Mitigation,2014,14(2): 185-194. [13] LEE E P.Analysis of a car fire that broke out during parking at midnight[C]//Proceeding of 2014 Annual Spring Conference of the Korean Institute of Fire Science & Engineers.[S.L.]: Korean Institute of Fire Science & Engneering,2014: 193-194. [14] 王曉飛,封吉平,何強(qiáng),等.基于FPGA的汽車防撞雷達(dá)角度錄取接口電路的設(shè)計[J].儀表技術(shù)2010(9): 37-39. [15] 蔣曉玲,孟志強(qiáng),陳燕東,等.汽車追尾防撞紅外測距系統(tǒng)[J].光電子技術(shù),2011,30(1): 67-72. Design of Pseudo Random Code for Automobile Collision Avoidance Radar HU Xiujuan, CHEN Dejun, TAO Xue, ZHANG Tao (School of Electronics Information Engineering, Shanghai Dianji University, Shanghai 201306, China) A pseudo-random code is designed to achieve high sensitivity and resolution for automobile collision avoidance radar. By analyzing the principle of pseudo random codes, a common feedback logic is obtained. On an FPGA platform, the register length, feedback and initialization information in the code are modified. Linear feedback shift registers with different code length and feedback logic are used, and thus pseudo random codes of different lengths and structures are obtained. Simulation and experiments show feasibility and effectiveness of the design. pseudo random code; collision avoidance radar; automotive; simulation 2015 -11 -20 上海大學(xué)生創(chuàng)新活動計劃項(xiàng)目資助(201511458059) 胡秀娟(1978 -),女,副教授,博士,主要研究方向?yàn)槔走_(dá)信號處理,E-mail: huxiujuan311@163.com 2095 - 0020(2016)05 -0254 - 05 TN 915.05; U 491.62 A2 偽隨機(jī)碼實(shí)現(xiàn)及軟件仿真
3 實(shí)物驗(yàn)證
4 結(jié) 語