專利名稱:一種浮點復(fù)數(shù)乘法器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及高頻地波海洋雷達環(huán)境監(jiān)測技術(shù)領(lǐng)域:
,具體涉及高頻地波海洋雷達環(huán)境監(jiān)測設(shè)備中的數(shù)字脈沖壓縮系統(tǒng),特別是數(shù)字脈沖壓縮系統(tǒng)中使用的浮點復(fù)數(shù)乘法器。
背景技術(shù):
在現(xiàn)代雷達設(shè)計中,脈沖壓縮技術(shù)被廣泛地使用以解決測距精度與測速精度以及探測距離之間的矛盾。而隨著數(shù)字技術(shù)和大規(guī)模集成電路技術(shù)的飛速發(fā)展,數(shù)字脈沖壓縮技術(shù)以其性能穩(wěn)定、抗干擾能力強、控制方式靈活和硬件系統(tǒng)更小型化等優(yōu)點,逐漸取代早期的模擬脈壓技術(shù),成為現(xiàn)代雷達脈沖壓縮系統(tǒng)的發(fā)展趨勢。
現(xiàn)有浮點復(fù)數(shù)乘法都是采用若干集成電路搭建或者采用浮點計算機通過軟件方法實現(xiàn)的。集成電路搭建方法具有電路復(fù)雜、體積及功耗大、價格高、靈活性差等缺點,而軟件方法運算速度慢,難以滿足現(xiàn)代雷達的實時脈沖壓縮技術(shù)的要求。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是提供一種運算速度快的浮點復(fù)數(shù)乘法器。該浮點復(fù)數(shù)乘法器能實時完成現(xiàn)代雷達數(shù)字脈沖壓縮技術(shù)中的浮點復(fù)數(shù)乘法功能,大大簡化了雷達接收機的系統(tǒng)結(jié)構(gòu),提高了接收機系統(tǒng)的數(shù)據(jù)處理速度和可靠性。
本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案是一種浮點復(fù)數(shù)乘法器,它包括數(shù)據(jù)接口、一個浮點加法單元、一個浮點減法單元、四個浮點乘法單元;數(shù)據(jù)接口包括兩相乘復(fù)數(shù)(X、Y)的實部(X1、Y1)和虛部(XQ、YQ)的四個輸入接口、結(jié)果復(fù)數(shù)(Z)的實部(Z1)和虛部(ZQ)的兩個輸出接口;四個浮點乘法單元分別為用于將兩復(fù)數(shù)的實部(X1、Y1)相乘并輸出結(jié)果的實部相乘乘法單元;用于將兩復(fù)數(shù)的虛部(XQ、YQ)相乘并輸出結(jié)果的虛部相乘乘法單元;分別用于將一復(fù)數(shù)的實部(X1或Y1)和另一復(fù)數(shù)的虛部(YQ或XQ)相乘并輸出結(jié)果的兩實部虛部乘法單元;浮點減法單元為用于將實部相乘乘法單元輸出結(jié)果和虛部相乘乘法單元輸出結(jié)果相減并輸出結(jié)果復(fù)數(shù)的實部(Z1)的浮點減法單元;浮點加法單元為用于將兩實部虛部乘法單元輸出結(jié)果相加并輸出結(jié)果復(fù)數(shù)的虛部(ZQ)的浮點減法單元。
本發(fā)明浮點復(fù)數(shù)乘法器可集成于高頻地波雷達全數(shù)字雷達接收機中,實現(xiàn)對雷達回波信號進行實時數(shù)字脈沖壓縮中的浮點復(fù)數(shù)乘法功能,可提高雷達接收機數(shù)據(jù)處理速度、數(shù)據(jù)處理精度。該浮點復(fù)數(shù)乘法器的可靠性高、通用性好、體積功耗小、成本較低。
圖1是本發(fā)明實施例的結(jié)構(gòu)框圖圖2是本發(fā)明實施例的內(nèi)部結(jié)構(gòu)框圖圖3是浮點乘法(float_mul)單元VHDL三級流水線框圖圖4是浮點加法(float_add)單元VHDL三級流水線框圖圖5是浮點減法(float_sub)單元VHDL三級流水線框圖圖6是具有本發(fā)明實施例的現(xiàn)代雷達脈沖壓縮系統(tǒng)的結(jié)構(gòu)框圖圖中,Rx為xBit寄存器。
具體實施方式本發(fā)明浮點復(fù)數(shù)乘法器實施例包括數(shù)據(jù)接口、一個浮點加法單元、一個浮點減法單元、四個浮點乘法單元。
如圖1所示,數(shù)據(jù)接口包括兩相乘復(fù)數(shù)(X、Y)的實部(X1、Y1)和虛部(XQ、YQ)的四個輸入接口、結(jié)果復(fù)數(shù)(Z)的實部(Z1)和虛部(ZQ)的兩個輸出接口;輸入輸出數(shù)據(jù)格式符合IEEE-754標準的32位單精度數(shù)據(jù)格式。
如圖2所示,本發(fā)明浮點復(fù)數(shù)乘法器實施例采用兩級流水線結(jié)構(gòu),由4個浮點乘法float_mul模塊、1個浮點加法float_add模塊和1個浮點減法float_sub模塊組成。四個浮點乘法單元分別為用于將兩復(fù)數(shù)的實部(X1、Y1)相乘并輸出結(jié)果的實部相乘乘法單元;用于將兩復(fù)數(shù)的虛部(XQ、YQ)相乘并輸出結(jié)果的虛部相乘乘法單元;分別用于將一復(fù)數(shù)的實部(X1或Y1)和另一復(fù)數(shù)的虛部(YQ或XQ)相乘并輸出結(jié)果的兩實部虛部乘法單元。
浮點加法單元為用于將兩實部虛部乘法單元輸出結(jié)果相加并輸出結(jié)果復(fù)數(shù)的虛部(ZQ)的浮點減法單元。
浮點減法單元為用于將實部相乘乘法單元輸出結(jié)果和虛部相乘乘法單元輸出結(jié)果相減并輸出結(jié)果復(fù)數(shù)的實部(Z1)的浮點減法單元。
如圖3所示,浮點乘法(float_mul)單元采用三級流水線方式來實現(xiàn)。
在第一級流水線中,完成兩個符號位s1和s2的讀取,并存入兩個1位寄存器;兩個尾數(shù)f1和f2的讀取,對于非零的浮點數(shù),將蘊含的前1分別放置于分數(shù)f1和f2的左端,并存入兩個24位寄存器;將指數(shù)e1與e2相加,其結(jié)果與1位的進位存儲在一個9位的寄存器中。對于兩個負指數(shù)相加,如果運算結(jié)果小于所能夠表示的最小的指數(shù),這時候?qū)l(fā)生下溢,在這種情況下,將該浮點數(shù)置0。如果發(fā)生上溢,那么就將浮點數(shù)置為浮點格式所能夠表示的最大的數(shù)。
第二級首先確定符號位,比較兩個操作數(shù)的符號位s1和s2。如兩符號位相同,則結(jié)果的符號為正,否則為負;兩個24位數(shù)據(jù)1.f1和1.f2的整數(shù)乘法,取48位結(jié)果的高25位存儲在寄存器中;在第三級流水線中完成浮點數(shù)的規(guī)格化處理和舍入操作。根據(jù)第2級乘法結(jié)果的最高位調(diào)整指數(shù)。由于乘法結(jié)果最多只需一次左移就可以規(guī)格化,因而如果乘法結(jié)果最高位為1,則不需要調(diào)整指數(shù)。如果乘法結(jié)果最高位為0,則前級的指數(shù)只需減1即可,同時將乘法結(jié)果左移一位;最后輸出1位符號位R1、8位指數(shù)位R8和23位尾數(shù)位R23。
如圖4所示,浮點加法(float_add)單元采用三級流水線方式來實現(xiàn)。
在第一級流水線中完成數(shù)據(jù)的預(yù)處理、指數(shù)對齊以及尾數(shù)移位的操作。首先讀取v1、v2的符號位s1和s2、指數(shù)位e1和e2以及尾數(shù)位f1和f2。比較v1、v2兩個輸入操作數(shù)的絕對值大小,保證|v1|≥|v2|,否則交換兩個輸入數(shù)v1、v2,這樣在進行加法或者減法運算時,運算結(jié)果的符號和指數(shù)必定與v1相同。v1的符號位存入R1;v1的指數(shù)位存入R8,同時,求取指數(shù)之差e1-e2,相減結(jié)果稱為移位值,存入一個8位寄存器;兩個尾數(shù)f1和f2的讀取,對于非零的浮點數(shù),將蘊含的前1分別放置于分數(shù)f1和f2的左端,并分別存入兩個24位寄存器。
第二級流水線完成尾數(shù)相加的操作。將1.f2右移(e2-e1)位所得結(jié)果稱為中間值x,如果s1等于s2,將1.f1與中間值x相加,存入23位寄存器中;如果s1不等于s2,將1.f1與中間值x相減,存入23位寄存器中;在第三級流水線中完成浮點數(shù)的規(guī)格化處理和舍入操作,將結(jié)果存入32位寄存器輸出。具體包括將尾數(shù)部分左移直到最高位為1,完成尾數(shù)的規(guī)格化,存入23位寄存器輸出;指數(shù)位減去尾數(shù)部分的左移次數(shù)并存入8位寄存器輸出;前級的符號位直接輸出。
如圖5所示,浮點減法(float_sub)單元采用三級流水線方式來實現(xiàn)。
在第一級流水線中完成數(shù)據(jù)的預(yù)處理、指數(shù)對齊以及尾數(shù)移位的操作。首先讀取v1、v2的符號位s1和s2、指數(shù)位e1和e2以及尾數(shù)位f1和f2。比較v1、v2兩個輸入操作數(shù)的絕對值大小,保證|v1|≥|v2|,否則交換兩個輸入數(shù)v1、v2,這樣在進行加法或者減法運算時,運算結(jié)果的符號和指數(shù)必定與v1相同。v1的符號位存入R1;v1的指數(shù)位存入R8,同時,求取指數(shù)之差e1-e2,相減結(jié)果稱為移位值,存入一個8位寄存器;兩個尾數(shù)f1和f2的讀取,對于非零的浮點數(shù),將蘊含的前1分別放置于分數(shù)f1和f2的左端,并分別存入兩個24位寄存器。
第二級流水線完成尾數(shù)相減的操作。將1.f2右移(e2-e1)位所得結(jié)果稱為中間值x,如果s1等于s2,將1.f1與中間值x相減,存入23位寄存器中;如果s1不等于s2,將1.f1與中間值x相加,存入23位寄存器中;在第三級流水線中完成浮點數(shù)的規(guī)格化處理和舍入操作,將結(jié)果存入32位寄存器輸出。具體包括將尾數(shù)部分左移直到最高位為1,完成尾數(shù)的規(guī)格化,存入23位寄存器輸出;指數(shù)位減去尾數(shù)部分的左移次數(shù)并存入8位寄存器輸出;前級的符號位直接輸出。
如圖6所示,本發(fā)明實施例浮點復(fù)數(shù)乘法器在現(xiàn)代雷達的脈沖壓縮技術(shù)中的應(yīng)用,實現(xiàn)雷達回波信號與參考信號的浮點復(fù)數(shù)相乘。射頻信號經(jīng)適當放大、濾波后,直接送入ADC進行低通或帶通采樣,由于采樣率一般遠遠大于2倍的信號帶寬,故有必要對采樣數(shù)據(jù)降速。通過數(shù)字下變頻,并變換為I、Q兩路信號,之后再與存放在只讀存儲器(ROM)中的參考信號進行復(fù)數(shù)相乘,經(jīng)低通濾波后得到與目標位置和目標速度對應(yīng)的差頻信號,最后由DSP做進一步處理。
參見圖1,I、Q兩路數(shù)字正交信號XI和XQ按一定速率輸入到浮點復(fù)數(shù)乘法器,同時在同步信號的控制下,浮點復(fù)數(shù)乘法器從ROM中讀入?yún)⒖夹盘?,作為YI和YQ信號,通過浮點復(fù)數(shù)乘法器完成復(fù)數(shù)相乘,相乘結(jié)果分作實部ZI和虛部ZQ分別輸出。
具有本發(fā)明實施例的現(xiàn)代雷達脈沖壓縮系統(tǒng),集成于高頻地波雷達全數(shù)字雷達接收機中,實現(xiàn)對雷達回波信號進行數(shù)字脈沖壓縮實時浮點乘法的功能,可提高雷達接收機數(shù)據(jù)處理速度、數(shù)據(jù)處理精度。
本發(fā)明浮點復(fù)數(shù)乘法器實施例的制作方法如下1、設(shè)計輸入本發(fā)明電路較為復(fù)雜,如果依靠傳統(tǒng)的電路原理圖設(shè)計方式來完成,可能需要上百張原理圖,難以實現(xiàn)。因此,本發(fā)明實施例使用現(xiàn)場可編程邏輯陣列(FPGA)芯片,采用Xilinx ISE開發(fā)平臺,用硬件描述語言(VHDL)語言,按照上述的設(shè)計思想分別編寫浮點乘法單元、浮點加法單元和浮點減法單元。
2、功能驗證功能驗證也叫前仿真或者行為級仿真,其中不包括定時信息,這個階段的仿真與具體器件無關(guān)。驗證分兩步進行,首先是檢查設(shè)計的語法是否正確,其次驗證VHDL代碼是否能實現(xiàn)設(shè)計要求的功能??紤]到Model Technologies公司的Modelsim6.0軟件能夠很好地嵌入Xilinx ISE開發(fā)平臺,并可與ISE一起實現(xiàn)綜合、布線后仿真,因此本發(fā)明采用Modelsim6.0作為功能仿真軟件來驗證浮點乘法單元、浮點加法單元和浮點減法單元。
浮點乘法單元、浮點加法單元和浮點減法單元經(jīng)過驗證確認無誤后,用電路原理圖設(shè)計方法,按圖2方式連接即可得到浮點復(fù)數(shù)乘法器,經(jīng)過功能驗證后,轉(zhuǎn)入下一步。
3、綜合優(yōu)化綜合優(yōu)化的過程就是將前面設(shè)計并驗證通過的各單元VHDL程序及浮點復(fù)數(shù)乘法器電路原理圖讀入,產(chǎn)生門級網(wǎng)表,并輸出edif格式或其他格式的文件,以供下一級工具來進行實現(xiàn)和布局布線。本發(fā)明采用的是Xilinx ISE開發(fā)環(huán)境中自帶的XST作為綜合工具。
4、布局布線在Xilinx ISE開發(fā)平臺中,選擇XC3S1000-FT256這種型號的Spartan-3芯片,執(zhí)行布局布線命令。
5、時序仿真時序仿真主要是檢驗芯片的時序關(guān)系,測試芯片的執(zhí)行速度。
6、下載及硬件驗證(Program)利用下載電纜將設(shè)計文件下載到選定的FPGA中。如果FPGA被成功配置,則芯片設(shè)計全部完成。
權(quán)利要求
1.一種浮點復(fù)數(shù)乘法器,其特征在于它包括數(shù)據(jù)接口、一個浮點加法單元、一個浮點減法單元、四個浮點乘法單元;數(shù)據(jù)接口包括兩相乘復(fù)數(shù)(X、Y)的實部(X1、Y1)和虛部(XQ、YQ)的四個輸入接口、結(jié)果復(fù)數(shù)(Z)的實部(Z1)和虛部(ZQ)的兩個輸出接口;四個浮點乘法單元分別為用于將兩復(fù)數(shù)的實部(X1、Y1)相乘并輸出結(jié)果的實部相乘乘法單元;用于將兩復(fù)數(shù)的虛部(XQ、YQ)相乘并輸出結(jié)果的虛部相乘乘法單元;分別用于將一復(fù)數(shù)的實部(X1或Y1)和另一復(fù)數(shù)的虛部(YQ或XQ)相乘并輸出結(jié)果的兩實部虛部乘法單元;浮點減法單元為用于將實部相乘乘法單元輸出結(jié)果和虛部相乘乘法單元輸出結(jié)果相減并輸出結(jié)果復(fù)數(shù)的實部(Z1)的浮點減法單元;浮點加法單元為用于將兩實部虛部乘法單元輸出結(jié)果相加并輸出結(jié)果復(fù)數(shù)的虛部(ZQ)的浮點減法單元。
專利摘要
本發(fā)明涉及一種浮點復(fù)數(shù)乘法器,它包括數(shù)據(jù)接口、一個浮點加法單元、一個浮點減法單元、四個浮點乘法單元。本發(fā)明浮點復(fù)數(shù)乘法器可集成于高頻地波雷達全數(shù)字雷達接收機中,實現(xiàn)對雷達回波信號進行實時數(shù)字脈沖壓縮中的浮點復(fù)數(shù)乘法功能,可提高雷達接收機數(shù)據(jù)處理速度、數(shù)據(jù)處理精度。該浮點復(fù)數(shù)乘法器的可靠性高、通用性好、體積功耗小、成本較低。
文檔編號G01S7/295GK1996235SQ200610166578
公開日2007年7月11日 申請日期2006年12月31日
發(fā)明者陳澤宗, 何亮, 柯亨玉 申請人:武漢大學(xué)導(dǎo)出引文BiBTeX, EndNote, RefMan