當(dāng)前位置:首頁 > 模擬 > 模擬
[導(dǎo)讀]1 引言  在數(shù)字化飛速發(fā)展的今天,人們對微處理器的性能要求也越來越高。作為衡量微處理器 性能的主要標(biāo)準(zhǔn),主頻和乘法器運(yùn)行一次乘法的周期息息相關(guān)。因此,為了進(jìn)一步提高微處 理器性能,開發(fā)高速高精度的乘法器

1 引言

  在數(shù)字化飛速發(fā)展的今天,人們對微處理器的性能要求也越來越高。作為衡量微處理器 性能的主要標(biāo)準(zhǔn),主頻和乘法器運(yùn)行一次乘法的周期息息相關(guān)。因此,為了進(jìn)一步提高微處 理器性能,開發(fā)高速高精度的乘法器勢在必行。同時由于基于IEEE754 標(biāo)準(zhǔn)的浮點(diǎn)運(yùn)算具 有動態(tài)范圍大,可實現(xiàn)高精度,運(yùn)算規(guī)律較定點(diǎn)運(yùn)算更為簡捷等特點(diǎn),浮點(diǎn)運(yùn)算單元的設(shè)計 研究已獲得廣泛的重視。 本文介紹了 32 位浮點(diǎn)乘法器的設(shè)計,采用了基4 布思算法,改進(jìn)的4:2 壓縮器及布思 編碼算法,并結(jié)合FPGA自身特點(diǎn),使用流水線設(shè)計技術(shù),在實現(xiàn)高速浮點(diǎn)乘法的同時,也 使是系統(tǒng)具有了高穩(wěn)定性、規(guī)則的結(jié)構(gòu)、易于FPGA 實現(xiàn)及ASIC 的HardCopy 等特點(diǎn)。

  2 運(yùn)算規(guī)則及系統(tǒng)結(jié)構(gòu)

  2.1 浮點(diǎn)數(shù)的表示規(guī)則

  本設(shè)計采用單精度IEEE754 格式【2】。設(shè)參與運(yùn)算的兩個數(shù)A、B 均為單精度浮點(diǎn)數(shù), 即:

  

  2.2 浮點(diǎn)乘法器的硬件系統(tǒng)結(jié)構(gòu)

  本設(shè)計用于專用浮點(diǎn)FFT 處理器,因此對運(yùn)算速度有較高要求。為了保證浮點(diǎn)乘法器 可以穩(wěn)定運(yùn)行在80M 以下,本設(shè)計采用了流水線技術(shù)。流水線技術(shù)可提高同步電路的運(yùn)行 速度,加大數(shù)據(jù)吞吐量。而FPGA 的內(nèi)部結(jié)構(gòu)特點(diǎn)很適合在其中采用流水線設(shè)計,并且只需 要極少或者根本不需要額外的成本。綜上所述,根據(jù)系統(tǒng)分割,本設(shè)計將采用5 級流水處理, 圖1 為浮點(diǎn)乘法器的硬件結(jié)構(gòu)圖。

  

  3 主要模塊設(shè)計與仿真

  3.1 指數(shù)處理模塊(E_Adder)設(shè)計

  32位浮點(diǎn)數(shù)格式如文獻(xiàn)【2】中定義。由前述可知,浮點(diǎn)乘法的主要過程是兩個尾數(shù)相 乘,同時并行處理指數(shù)相加及溢出檢測。對于32位的浮點(diǎn)乘法器而言,其指數(shù)為8位,因而 本設(shè)計采用帶進(jìn)位輸出的8位超前進(jìn)位加法器完成指數(shù)相加、去偏移等操作,具體過程如下。

  E_Adder 模塊負(fù)責(zé)完成浮點(diǎn)乘法器運(yùn)算中指數(shù)域的求和運(yùn)算,如下式所示:

  

  其中,E[8]為MSB 位產(chǎn)生的進(jìn)位。Bias=127 是IEEE754 標(biāo)準(zhǔn)中定義的指數(shù)偏移值。 Normalization 完成規(guī)格化操作,因為指數(shù)求和結(jié)果與尾數(shù)相乘結(jié)果有關(guān)。在本次設(shè)計中,通 過選擇的方法,幾乎可以在Normalization 標(biāo)志產(chǎn)生后立刻獲得積的指數(shù)部分,使E_Adder 不處于關(guān)鍵路徑。

  本設(shè)計收集三級進(jìn)位信號,配合尾數(shù)相乘單元的 Normalization 信號,對計算結(jié)果進(jìn)行 規(guī)格化處理,并決定是否輸出無窮大、無窮小或正常值。

  根據(jù) E_Adder 的時序仿真視圖,可看出設(shè)計完全符合應(yīng)用需求。

  3.2 改進(jìn)的Booth 編碼器設(shè)計

  由于整個乘法器的延遲主要決定于相加的部分積個數(shù),因此必須減少部分積的數(shù)目才能 進(jìn)而縮短整個乘法器的運(yùn)算延遲。本設(shè)計采用基4 布思編碼器,使得部分積減少到13 個, 并對傳統(tǒng)的編碼方案進(jìn)行改進(jìn)。編碼算法如表1 所示。

  

  由于 FPGA 具有豐富的與、或門資源,使得該方法在保證速度和準(zhǔn)確性的前提下,充分 利用了FPGA 內(nèi)部資源,節(jié)省了面積,同時符合低功耗的要求。

  3.3 部分積產(chǎn)生與壓縮結(jié)構(gòu)設(shè)計

  3.3.1 部分積產(chǎn)生結(jié)構(gòu)

  根據(jù)布思編碼器輸出結(jié)果,部分積產(chǎn)生遵循以下公式【4】:

 

  

  其中,PPi 為部分積;Ai 為被乘數(shù)。經(jīng)過隱藏位和符號位的擴(kuò)展后,26 位的被乘數(shù)尾數(shù)將產(chǎn) 生13 個部分積。在浮點(diǎn)乘法器中,尾數(shù)運(yùn)算采用的是二進(jìn)制補(bǔ)碼運(yùn)算。因此,當(dāng)NEG=1 時要在部分積的最低位加1,因為PPi 只完成了取反操作。而為了加強(qiáng)設(shè)計的并行性,部分 積最低位加1 操作在部分積壓縮結(jié)構(gòu)中實現(xiàn)。另外,為了完成有符號數(shù)相加,需對部分積的 符號位進(jìn)行擴(kuò)展,其結(jié)果如圖4 所示。13 個部分積中,除第一個部分積是29 位以外,其余 部分積擴(kuò)展為32 位。其中,第一個部分積包括3 位符號擴(kuò)展位“SSS”,第2 至13 個部分 積的符號擴(kuò)展位為“SS”,加一操作位為“NN”,遵循如下公式:

  

  其中,i 為部分積的行數(shù),sign(i)為第i 行部分積的符號。

  3.3.2 部分積壓縮結(jié)構(gòu)

  本設(shè)計混合使用 4:2 壓縮器、3:2 壓縮器、全加器和半加器,實現(xiàn)了13 個部分積的 快速壓縮,并保證了精度。本文部分積壓縮結(jié)構(gòu)的劃分如圖2 所示。

  

  圖 2 中,虛線給出了傳統(tǒng)部分積的壓縮劃分,而實線描述的是本文采用的部分積壓縮結(jié) 構(gòu)劃分,這樣的劃分有利于簡化第二級的壓縮結(jié)構(gòu),從而在保證速度的基礎(chǔ)上,節(jié)省FPGA 內(nèi)部資源。從圖2 中可看出,有些位不必計算,因為這些位是由Booth 編碼時引入的乘數(shù)尾 數(shù)的符號位產(chǎn)生的,48 位足以表達(dá)運(yùn)算結(jié)果。

  3.3.3 改進(jìn)的4:2 壓縮器

  本設(shè)計采用廣泛使用的 4:2 壓縮器,并針對FPGA 內(nèi)部資源特點(diǎn),對其進(jìn)行了改進(jìn)。 如圖3 所示。 傳統(tǒng)的 4:2 壓縮器即兩個全加器級聯(lián),共需要四個異或門和8 個與非門。而改進(jìn)的4: 2 壓縮器需要四個異或門和兩個選擇器(MUX)。8 個與非門需要36 個晶體管,而兩個MUX 需要20 個晶體管。同時,F(xiàn)PGA 內(nèi)部集成了大量的異或門和選擇器資源,這種設(shè)計方法也是對FPGA 的一個充分利用。

  

  由于壓縮部分積需要大量的4:2 壓縮器,所以改進(jìn)的電路能 在一定程度上減小版圖的面積,也為該乘法器的ASIC 后端設(shè)計帶來了優(yōu)勢。另外,改進(jìn)的 壓縮器的4 個輸入到輸出S 的延時相同,都是3 級XOR 門延時。

  4 32 位浮點(diǎn)乘法器的實現(xiàn)與仿真

  圖 4 顯示了本設(shè)計的FPGA 時序仿真結(jié)果,時序仿真環(huán)境為Quartus II 7.0,目標(biāo)芯片為 Cyclone 系列的EP1C6Q240C8,功能仿真環(huán)境為Modelsim 6.0b。整個設(shè)計采用VHDL 語言進(jìn)行結(jié)構(gòu)描述,綜合策略為面積優(yōu)先。由仿真視圖可看出,該浮點(diǎn)乘法器可穩(wěn)定運(yùn)行在80M 及以下頻率,在延時5 個周期后,以后每一個周期可穩(wěn)定輸出一級乘法運(yùn)算結(jié)果,實現(xiàn)了高 吞吐量。如果采用全定制進(jìn)行后端版圖布局布線,乘法器的性能將更加優(yōu)越。

  

  5 結(jié)語

  本文作者創(chuàng)新點(diǎn):針對FPGA 器件內(nèi)部資源特性,獨(dú)創(chuàng)地提出了一種適合FPGA 實現(xiàn) 的5 級流水高速浮點(diǎn)乘法器。該乘法器支持IEEE754 標(biāo)準(zhǔn)32 位單精度浮點(diǎn)數(shù),采用了基4 布思算法、改進(jìn)的布思編碼器、部份積壓縮結(jié)構(gòu)等組件,從而在保證高速的前提下,縮小了 硬件規(guī)模,使得該乘法器的設(shè)計適合工程應(yīng)用及科學(xué)計算,并易于ASIC 的后端版圖實現(xiàn)。 該設(shè)計已使用在筆者設(shè)計的浮點(diǎn)FFT 處理器中,取得了良好效果。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉