




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
會(huì)計(jì)學(xué)1ALU設(shè)計(jì)簡介及源代碼行波進(jìn)位加法器gi=ai
·
bi
(0≤i≤n-1)
pi=ai
bi
(0≤i≤n-1)
ci+1=gi
+
pi
·ci
(0≤i≤n-1)
si=ai
bi
ci=pi
ci
(0≤i≤n-1)第2頁/共39頁第1頁/共39頁ALU設(shè)計(jì)—gipi生成S3S2S1S0MC0100110011011第3頁/共39頁第2頁/共39頁ALU設(shè)計(jì)—gipi生成邏輯M第4頁/共39頁第3頁/共39頁采用行波進(jìn)位的ALU邏輯第5頁/共39頁第4頁/共39頁無符號數(shù)除法算法-不恢復(fù)余數(shù)除法舉例A=14=1110除B=001100000111000001110左移一位
-00011減(B)─────────111101100P是負(fù)的,商“0”11101100左移一位
+00011加(B)─────────000001001P是非負(fù)的,商“1”00001001左移一位
-00011減(B)─────────111100010P是負(fù)的,商“0”11100010左移一位
+00011加(B)─────────111110100P是負(fù)的,商“0”+00011余數(shù)是負(fù)的,作最后恢復(fù)─────────
00010商是0100,余數(shù)是0010Pnan-1……a0加法器bn-1……b00P:余數(shù)寄存器a:被除數(shù)寄存器(有左移位功能)b:除數(shù)寄存器第6頁/共39頁第5頁/共39頁無符號數(shù)除法算法-不恢復(fù)余數(shù)除法舉例A=-7=11001除B=-3=11101|B|=001100000011100000111左移一位
+11101加(B)─────────111011110P是負(fù)的,商“0”11011110左移一位
-11101減(B)─────────111101100P是負(fù)的,商“0”11101100左移一位
+11101加(B)─────────111101000P是負(fù)的,商“0”11101010左移一位
-11101減(B)─────────111110100P是負(fù)的,商“0”+00011余數(shù)是負(fù)的,作最后恢復(fù)─────────
00010商是0100,余數(shù)是0010Pnan-1……a0加法器bn-1……b00P:余數(shù)寄存器a:被除數(shù)寄存器(有左移位功能)b:除數(shù)寄存器第7頁/共39頁第6頁/共39頁借助ALU實(shí)現(xiàn)除法運(yùn)算ALUSRdstsrc1src2左移一位SignA總線B總線C總線S[3:0]MC0第8頁/共39頁第7頁/共39頁無符號數(shù)除法計(jì)算過程無符號整數(shù)除法占用35個(gè)時(shí)鐘周期。第一個(gè)周期完成被除數(shù)初始化操作:
dst←0
同時(shí)為了與有符號整數(shù)除法一致,在A、B總線上要分別讀出src1和src2/lit的值。第二個(gè)周期將被除數(shù)送到移位寄存器SR中:
SR←(src1)中間32個(gè)周期完成下列重復(fù)動(dòng)作:
dst←21·(dst)&(SR)-(-1)sign(dst)(src2)│litSR←21·(SR)&!sign(dst),上商當(dāng)前余數(shù)(在dst寄存器中)左移1位時(shí)最低位移入SR的最高位。上商規(guī)則是本次計(jì)算結(jié)果為正則商1,否則商0。最后一個(gè)周期將商從SR送到dst中。第9頁/共39頁第8頁/共39頁有符號數(shù)除法計(jì)算過程對有符號整數(shù),將符號數(shù)轉(zhuǎn)換為無符號數(shù)再按無符號數(shù)方法計(jì)算。第一步:目的寄存器送全“0”,同時(shí)記錄src1和src2的符號,
dst←0,判(src1)、(src2)│lit的符號第二步:將被除數(shù)src1送SR寄存器。若被除數(shù)為負(fù),將其求補(bǔ)后再送SR寄存器。第3~34步:重復(fù)執(zhí)行如下操作:
dst←21·((dst)&(SR))+(-1)sign(dst)·(-1)sign((src2)│lit)·((src2)│lit)SR←21·(SR),上商上商的規(guī)則與無符號數(shù)除法相同。第35步:送結(jié)果到目的寄存器。若結(jié)果為負(fù)則求補(bǔ)后再送目的寄存器。
dst←(-1)sign((src2)│lit)^sign(src1)·(SR)(通過減法或傳送實(shí)現(xiàn))第10頁/共39頁第9頁/共39頁ALU--HDL實(shí)現(xiàn)modulealu_core(opA,opB,S,Cin,M,DO,C,N,Z,V);inputwire[32:0]opA,opB;inputwire[3:0]S;inputwireM,Cin;outputreg[31:0]DO; outputregC,V,N,Z;reg[32:0]LT3,LT2,LT1,LT0,P,G;reg[32:0]Dout;integeri;reg[32:0]zero;reg[33:0]CA;always@(opAoropBorS)for(i=0;i<33;i=i+1)beginLT3[i]=S[3]&opA[i]&opB[i]; LT2[i]=S[2]&opA[i]&~opB[i];LT1[i]=S[1]&~opA[i]&opB[i];LT0[i]=S[0]&~opA[i]&~opB[i];end
always@(LT3orLT2orLT1orLT0orM)for(i=0;i<33;i=i+1)beginP[i]=~(LT3[i]|LT2[i]|LT1[i]|LT0[i]);G[i]=LT3[i]|LT2[i]|~M;endalways@(PorGorCin)beginCA[0]=Cin; //CA[i]:carrytoibitfor(i=0;i<33;i=i+1) beginCA[i+1]=G[i]|(P[i]&CA[i]);Dout[i]=P[i]^CA[i];end{C,DO}=Dout;V=Dout[32]^Dout[31];if(DO)Z=0;elseZ=1;N=DO[31]; endendmodule第11頁/共39頁第10頁/共39頁定點(diǎn)乘法器設(shè)計(jì)第12頁/共39頁第11頁/共39頁定點(diǎn)乘法器設(shè)計(jì)乘法器是高性能微處理器中的關(guān)鍵部件,是進(jìn)行高速計(jì)算特別是信號處理等方面應(yīng)用時(shí)所必須的。定點(diǎn)乘法器應(yīng)支持有符號數(shù)和無符號數(shù)乘法。本章主要介紹32位定點(diǎn)乘法器設(shè)計(jì)方法:假定:
被乘數(shù):A=an-1an-2
…a0
乘數(shù):B=bn-1bn-2…b0
乘積:P=AB第13頁/共39頁第12頁/共39頁乘法計(jì)算方法用筆算進(jìn)行乘法計(jì)算的方法為:01011010000001010000010100110010乘積部分積乘數(shù)被乘數(shù)術(shù)語乘法計(jì)算過程產(chǎn)生部分積部分積相加第14頁/共39頁第13頁/共39頁乘法運(yùn)算的關(guān)鍵要提高乘法計(jì)算速度,需要:加快部分積的形成減少部分積數(shù)目采用多位掃描、跳過連續(xù)的0/1串和對乘數(shù)重編碼(如Booth算法)等處理方法加快部分積加法運(yùn)算的速度一般是利用進(jìn)位保留加法器(CSA)先使參與操作的部分積形成兩個(gè)數(shù)(這兩個(gè)數(shù)分別是偽和與局部進(jìn)位)第15頁/共39頁第14頁/共39頁二階Booth算法0011000100110001
0二階Booth編碼bi+1bibi-1重編碼操作0000中間結(jié)果右移2位0011加A;中間結(jié)果右移2位0101加A;中間結(jié)果右移2位0112加2A;中間結(jié)果右移2位100-2減2A;中間結(jié)果右移2位101-1減A;中間結(jié)果右移2位110-1減A;中間結(jié)果右移2位1110中間結(jié)果右移2位01010010100001010010110111110101531h=?11-212020最低位補(bǔ)一位0為什么?第16頁/共39頁第15頁/共39頁二階Booth算法乘數(shù):B=bn-1bn-2…b0=-bn-12n-1+bn-22n-2+bn-32n-3+bn-42n-4+…+b020=-2bn-12n-2+bn-22n-2+bn-32n-2-bn-32n-3+bn-42n-4+…+b020=(-2bn-1
+bn-2+bn-3)2n-2-bn-32n-3
+bn-42n-4+…+b020乘數(shù)必須是偶數(shù)位第17頁/共39頁第16頁/共39頁二階Booth算法—控制信號編碼b2i+1b2ib2i-1重編碼符號與數(shù)值分別控制直接按重新編碼控制NEGB1B2YZYP1YN1YP2YN2000000010000001101001000010101001000011200100010100-210100001101-111000100110-111000100111-010010000NEG2i=b2i+1部分積取1倍的控制信號B12i邏輯是:B12i=b2Ib2i-1部分積取2倍的控制信號B22i邏輯是:對于第j位部分積產(chǎn)生邏輯:pp2i,j=(aj·B12i+aj-1·B22i)NEG2i第18頁/共39頁第17頁/共39頁二階Booth算法—控制信號產(chǎn)生邏輯編碼電路部分積產(chǎn)生電路第19頁/共39頁第18頁/共39頁二階Booth算法舉例0011000100110001
00101001010000101001011000111110101最低位補(bǔ)一位0531h=F5h(-6)+12=611010+01100001101010+0110010110x第20頁/共39頁第19頁/共39頁二階Booth算法舉例0101000000001010000000000
1110100000
0101010000
0011110101531h=F5h第21頁/共39頁第20頁/共39頁防止符號位擴(kuò)展例:B=9=(001001)2,A=10=(01010)2,
AB=90=(01011010)2的執(zhí)行過程。第22頁/共39頁第21頁/共39頁防止符號位擴(kuò)展例:B=9=(001001)2,A=10=(01010)2,
AB=90=(01011010)2的執(zhí)行過程。第23頁/共39頁第22頁/共39頁防止符號位擴(kuò)展防止符號擴(kuò)展的方式解決部分積是負(fù)數(shù)時(shí)可能產(chǎn)生的問題。假定所有的部分積都為負(fù),那么所有符號擴(kuò)展的“1”的和是:這個(gè)數(shù)可以作為一個(gè)固定的值加在部分積中。由于
2m-1=4m/2-1=3(4m/2-1+4m/2-2+…+41+40)因此符號擴(kuò)展的“1”對應(yīng)的二進(jìn)制數(shù)可以表示為(10101…01011)2,它共有m位,最低位的權(quán)是2n。如果一個(gè)部分積實(shí)際上非負(fù),為了消除假定它是負(fù)數(shù)所帶來的影響,只需將它的符號位用“1”代替即可。第24頁/共39頁第23頁/共39頁二階Booth算法—舉例例:B=9=(001001)2,A=10=(01010)2,
AB=90=(01011010)2的執(zhí)行過程。第25頁/共39頁第24頁/共39頁加法器樹-保留進(jìn)位加法器二階Booth算法針對補(bǔ)碼數(shù)操作。若進(jìn)行無符號數(shù)乘法,則需要將無符號數(shù)轉(zhuǎn)換為符號數(shù),即在高位補(bǔ)兩位0。32位乘法器產(chǎn)生17個(gè)部分積,再加上防止符號位擴(kuò)展的補(bǔ)償數(shù),共18個(gè)部分積。加法器樹采用保留進(jìn)位加法器第26頁/共39頁第25頁/共39頁加法器樹-保留進(jìn)位加法器第27頁/共39頁第26頁/共39頁加法器樹-保留進(jìn)位加法器基本的加法器單元多采用(2,2)計(jì)數(shù)器(半加器)、(3,2)計(jì)數(shù)器、(5,3)計(jì)數(shù)器和(7,3)計(jì)數(shù)器等++++++++++++CLA加法器c+sp1p2p3第28頁/共39頁第27頁/共39頁加法器樹—4-2壓縮加法器4-2壓縮器的加法器單元在乘法器的設(shè)計(jì)中得到了廣泛采用。它可以較快地完成中間偽和的產(chǎn)生,而邏輯又比較簡單
第29頁/共39頁第2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽省馬鞍山市二中2024-2025學(xué)年高二3月月考語文試題(原卷版+解析版)
- 個(gè)人汽車擔(dān)保租賃合同二零二五年
- 墳地買賣合同
- 二零二五合伙人投資合同范例
- 委托代扣款授權(quán)書二零二五年
- 二零二五青少年心理咨詢保密協(xié)議
- 基于項(xiàng)目的stem活動(dòng)實(shí)施流程
- 創(chuàng)業(yè)合伙合作協(xié)議
- 醫(yī)學(xué)基礎(chǔ)知識跨學(xué)科整合學(xué)習(xí)的方法與案例試題及答案
- 車間安全應(yīng)急管理制度
- 熱處理危險(xiǎn)有害因素辨識及控制措施
- 工業(yè)用烤箱安全操作規(guī)程范本
- 文件資料交接清單
- 圍填海服務(wù)方案費(fèi)用
- 人體解剖學(xué)與組織胚胎學(xué)課件
- 波導(dǎo)圓極化器結(jié)構(gòu)形式的選擇
- 通風(fēng)與空調(diào)系統(tǒng)調(diào)試方案
- 第三單元名著導(dǎo)讀《經(jīng)典常談》04《詩經(jīng)》第四 統(tǒng)編版語文八年級下冊
- 2023年玻璃幕墻維修合同(三篇)
- 《平移》說課課件
- 初中數(shù)學(xué) 導(dǎo)學(xué)案:正方形
評論
0/150
提交評論