基于FPGA的陣列乘法器的設(shè)計與實現(xiàn)_第1頁
基于FPGA的陣列乘法器的設(shè)計與實現(xiàn)_第2頁
基于FPGA的陣列乘法器的設(shè)計與實現(xiàn)_第3頁
基于FPGA的陣列乘法器的設(shè)計與實現(xiàn)_第4頁
基于FPGA的陣列乘法器的設(shè)計與實現(xiàn)_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

基于FPGA的陣列乘法器的設(shè)計與實現(xiàn)本文先對乘法器進行了分析,然后用現(xiàn)場可編程門陣列(FPGA)實現(xiàn)了陣列乘法器,并分析了設(shè)計原理。0引言乘法是運算中的基本算法,應(yīng)用也最為廣泛。在計算機中乘法最基本的操作就是移位相加,各類乘法最終都要歸結(jié)為這一點。早期計算機中為了簡化硬件結(jié)構(gòu),采用串行的移位乘法方案,即多次執(zhí)行“加法-移位”操作來實現(xiàn)。這種方法并不需要很多器件。然而串行方法畢竟太慢,自從大規(guī)模集成電路問世以來,出現(xiàn)了各種形式的并行乘法器,一部分即為流水式陣列乘法器。1二進制乘法器設(shè)有兩個不帶符號的M×N位二進制整數(shù):點擊圖片查看大圖點擊圖片查看大圖它們的乘積用X和表示,按“手工計算”的方法給出就是:點擊圖片查看大圖從中可以看出,只要ak≠0,輸入量X就隨著k的位置連續(xù)地變化,然后累加X2k。如果ak=0,就可以忽略相應(yīng)的轉(zhuǎn)換相加。以201×9為例,可以知道N=8,X=9,A=11001001。當k由0開始遞增時,對A的ak位進行分析,a0=1,則X20=9;a1=0,則X21=0;…a7=1,則X27=9×128=1152。同時,將計算結(jié)果X2k:9,0,0,72,0,0,576,1152進行累加。最終各部分結(jié)果之和即為201×9的乘積1809。1.1移位乘法器移位乘法器計算過程為:將A依次向右移一位,并檢查其最低位a0,如果不為零,則將X與部分和相加,然后將X向左移一位;如果為零,則僅僅將X向左移一位。移位時,X的低端和A的高端均補零。可以看出由于第一個操作數(shù)X是并行形式的,而第二個操作數(shù)A是逐位形式的,所以剛才描述的乘法器也稱為串行/并行乘法器。如果兩個操作數(shù)都是串行的,那么這一結(jié)構(gòu)稱為串行/串行乘法器。這樣的乘法器只需要一個全加器,但是計算乘積所需的時間更長。1.2陣列乘法器移位乘法器是通過犧牲時間來降低復(fù)雜性,還有一種方法通過增加復(fù)雜性來換取速度,稱之為“陣列”,或者叫并行/并行乘法器。在M×N位不帶符號整數(shù)的陣列乘法中,每一個部分乘積項(位積)akxj叫做一個被加數(shù)。這M×N個被加數(shù){akxj|0≤k≤N-1,0≤j≤M-1}可以用M×N個與門并行地產(chǎn)生,并且并行提交給N2個加法器單元的加法器陣列。圖1給出了一個4×4位陣列乘法器邏輯電路。點擊圖片查看大圖圖14位陣列乘法器該乘法器的總的乘法時間可以估算如下:令Ta為與門的傳輸延遲時間,Tf為全加器(FA)的進位傳輸延遲時間,假定用2級“與非”邏輯來實現(xiàn)FA的進位鏈功能,那么我們就有:點擊圖片查看大圖因而得M×N位不帶符號的陣列乘法器總的乘法時間Ts為:點擊圖片查看大圖這種乘法器要實現(xiàn)N×N位時,需要N(N-1)個全加器和N2個與門。故可以看出,陣列乘法器相對于移位乘法器大大增加了復(fù)雜性,但卻縮短了時間。2FPGA技術(shù)FPGA是一類稱為現(xiàn)場可編程邏輯(field-programmablelogic,F(xiàn)PL)器件中的一員。50多年前,匈牙利數(shù)學(xué)家Neumann提出了電腦的設(shè)計構(gòu)想,通過中央處理器從存儲器中存取數(shù)據(jù),并逐一處理各項任務(wù)?,F(xiàn)在,通過采用可編程芯片F(xiàn)PGA取代微處理器,電腦可并行處理多項任務(wù)。盡管FPGA芯片的時鐘頻率要低于奔騰處理器,但是由于FPGA芯片可并行處理各種不同的運算,所以可完成許多復(fù)雜的任務(wù)。例如網(wǎng)頁顯示,全球天氣建摸及基因組合核對等,而且處理速度比奔騰處理器或數(shù)字信號處理器快得多。2.1VHDLVHDL(VHSIChardwaredescriptionlanguage,超高速集成電路硬件描述語言),由美國國防部(DOD)制定,是以文本形式來描述數(shù)字系統(tǒng)硬件結(jié)構(gòu)和行為,是一種用形式化方法來描述數(shù)字電路和系統(tǒng)的語言。本文通過VHDL語言來描述,使圖1所示的4位陣列乘法器的邏輯電路在FPGA芯片中實現(xiàn)。其代碼如下:點擊圖片查看大圖

需要注意的是,如果完成進位與和累加所需要的時間相同,這一方法就是可行的。對于現(xiàn)在的FPGA來講,進位計算執(zhí)行的速度要比和累加的速度快,因此產(chǎn)生了另一種結(jié)構(gòu)。這一結(jié)構(gòu)在第一步就將兩個相鄰的部分乘積結(jié)合起來的結(jié)果再加到最終輸出乘積上。這是一個“手工計算”思想的直接陣列形式。這種陣列乘法器為實現(xiàn)(并行)二叉樹乘法器提供了機會,還可以使得

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論