




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
EDA課設(shè):選題名稱(chēng):八位二進(jìn)制乘法電路(一)設(shè)計(jì)要求:分拍輸入兩個(gè)八位二進(jìn)制數(shù)字,并四個(gè)數(shù)碼管顯示當(dāng)前輸入數(shù)字的十進(jìn)制形式,通過(guò)使能端的控制,分拍輸出這兩位二進(jìn)制數(shù)字的乘積并通過(guò)四個(gè)數(shù)碼管顯示成十進(jìn)制。(二)基本算法:8位二進(jìn)制乘法采用移位相加的方法。即用乘數(shù)的各位數(shù)碼,從低位開(kāi)始依次與被乘數(shù)相乘,每相乘一次得到的積稱(chēng)為部分積,將第一次(由乘數(shù)最低位與被乘數(shù)相乘)得到的部分積右移一位并與第二次得到的部分積相加,將加得的和右移一位再與第三次得到的部分積相加,再將相加的結(jié)果右移一位與第四次得到的部分積相加。直到所有的部分積都被加過(guò)一次。按照這種算法,可以得到下圖所示之框圖和簡(jiǎn)單流程圖。圖中Y寄存器存放被乘數(shù)M,B寄存器存放乘數(shù)N,A累加器存放部分積。A和Y中的數(shù)據(jù)在加法器中相加后送入A中,而A和B相級(jí)聯(lián)又構(gòu)成了一個(gè)16bit的移位寄存器,當(dāng)它工作于移位模式時(shí),可以實(shí)現(xiàn)數(shù)據(jù)的右移。由于乘數(shù)的每一位不是0就是1,對(duì)應(yīng)的部分積不是0就是被乘數(shù)本身,所以實(shí)際作部分積相加這一步時(shí),只要根據(jù)乘數(shù)的對(duì)應(yīng)位判斷:如該位為1,則將累加器中的數(shù)據(jù)加上被乘數(shù)再移位;如該位為0時(shí),就不加被乘數(shù)而直接移位。運(yùn)算時(shí)首先將累加器A清零,并將被乘數(shù)M和乘數(shù)N分別存入寄存器Y和B,然后依據(jù)寄存器B中最右一位BO(數(shù)據(jù)NO)確定第一個(gè)部分積。將此部分積送入A累加器以后,將A連同寄存器B右移一位,部分積的最低位被移進(jìn)寄存器B的最左位,乘數(shù)的最低位NO被移出寄存器B,而乘數(shù)的次低位N1被移至寄存器B的BO位。第二次仍然依據(jù)BO位的數(shù)據(jù)(N1)來(lái)確定第二個(gè)部分積,將部分積與累加器中的數(shù)據(jù)相加后右移一位,N1又被移出寄存器,數(shù)據(jù)N2被移到B0位置…?這樣,經(jīng)過(guò)8次部分積相加位的操作,完成1次乘法運(yùn)算,乘數(shù)N恰好被移出寄存器B,寄存器B中保存的就是運(yùn)算積的低8位數(shù)據(jù)。移位相加的次數(shù)應(yīng)用一個(gè)計(jì)數(shù)器來(lái)控制,每移位一次,計(jì)數(shù)器計(jì)一個(gè)數(shù)。當(dāng)計(jì)數(shù)器計(jì)得8個(gè)數(shù)時(shí),發(fā)出一個(gè)信號(hào),使電路停止操作,并輸出運(yùn)算結(jié)果(流程圖是按減法計(jì)數(shù)器設(shè)計(jì)的,也可使用加法計(jì)數(shù)器)。
(三)設(shè)計(jì)方案:1、電路結(jié)構(gòu)。主要構(gòu)成如下使能控制端七乘數(shù)寄存器屮 被乘數(shù)寄存使能控制端七乘數(shù)寄存器屮 被乘數(shù)寄存數(shù)字輸入卩2、分模塊設(shè)計(jì):A、輸入模塊:通過(guò)八個(gè)開(kāi)關(guān)控制八位二進(jìn)制數(shù)字輸入。使能控制輸入模塊:ifen='0'anden1='0'thenout2(15downto8)<=i1;elseifen='1'anden1='0'thenout2(7downto0)<=i1;elsenull;endif;endif;B、使能控制端模塊:通過(guò)兩個(gè)開(kāi)關(guān)en、en1構(gòu)成使能控制模塊enen1功能00輸入乘數(shù)10輸入被乘數(shù)11計(jì)算并顯示結(jié)果第五位數(shù)01計(jì)算并顯示結(jié)果后四位數(shù)C、 移位加法器模塊:根據(jù)把位二進(jìn)制乘法器原理,設(shè)計(jì)移位加法器VHDL程序:foriin7downto0loopif(sum2(i)='0')thenyou:="00000000";elseyou:="11111111";endif;caseiiswhen0=>sum:="00000000"&(sum1andyou)+sum;when1=>sum:="0000000"&(sum1andyou)&'0'+sum;when2=>sum:="000000"&(sum1andyou)&"00"+sum;when3=>sum:="00000"&(sum1andyou)&"000"+sum;when4=>sum:="0000"&(sum1andyou)&"0000"+sum;when5=>sum:="000"&(sum1andyou)&"00000"+sum;when6=>sum:="00"&(sum1andyou)&"000000"+sum;when7=>sum:='0'&(sum1andyou)&"0000000";whenothers=>NULL;endcase;endloop;D、 數(shù)字顯示模塊:將輸入和輸出的二進(jìn)制數(shù)字轉(zhuǎn)換為十進(jìn)制數(shù)并通過(guò)數(shù)碼管顯示,七段數(shù)碼管數(shù)字代碼為:十進(jìn)制數(shù)七段數(shù)碼管代碼十進(jìn)制數(shù)七段數(shù)碼管代碼01000000500100101111100160000011201001007111100030110000800000004001100190011000ma:=("1000000","1111001","0100100","0110000","0011001","0010010","0000011","1111000","0000000","0011000");ifen='1'anden1='1'thena9:=conv_integer(out3);elseifen='0'anden1='1'thena9:=conv_integer(out3)/10000;elsea9:=conv_integer(i1);endif;endif;foriin3downto0loopam(i):=a9rem10;a9:=a9/10;forjin9downto0loopifam(i)=jthencaseiiswhen3=>ott1<=ma(j);when2=>ott2<=ma(j);when1=>ott3<=ma(j);when0=>ott4<=ma(j);whenothers=>null;endcase;endif;endloop;endloop;3、整體程序VHDL程序代碼:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityaaisport(i1:instd_logic_vector(7downto0);en:instd_logic;en1:instd_logic;ott1:outstd_logic_vector(6downto0);ott2:outstd_logic_vector(6downto0);ott3:outstd_logic_vector(6downto0);ott4:outstd_logic_vector(6downto0);out4:outstd_logic_vector(7downto0));endaa;architecturebehaviorofaaistypenumbisarray(0to3)ofinteger;typenumpisarray(0to9)ofstd_logic_vector(6downto0);signalout2:std_logic_vector(15downto0);signalout3:std_logic_vector(15downto0);beginprocess(i1,en1)variableam:numb;variablema:nump;variablei:integer;variablej:integer;variablea9:integer;variableot1:std_logic_vector(6downto0);variableot2:std_logic_vector(6downto0);variableot3:std_logic_vector(6downto0);variableot4:std_logic_vector(6downto0);beginma:=("1000000","1111001","0100100","0110000","0011001","0010010","0000011","1111000","0000000","0011000");ifen='1'anden1='1'thena9:=conv_integer(out3);elseifen='0'anden1='1'thena9:=conv_integer(out3)/10000;elsea9:=conv_integer(i1);endif;endif;foriin3downto0loopam(i):=a9rem10;a9:=a9/10;forjin9downto0loopifam(i)=jthencaseiiswhen3=>ott1<=ma(j);when2=>ott2<=ma(j);when1=>ott3<=ma(j);when0=>ott4<=ma(j);whenothers=>null;endcase;endif;endloop;endloop;endprocess;process(en,en1)beginifen='0'anden1='0'thenout2(15downto8)<=i1;elseifen='1'anden1='0'thenout2(7downto0)<=i1;elsenull;endif;endif;endprocess;process(out2)variablesum:std_logic_vector(15downto0);variableyou:std_logic_vector(7downto0);variablei:integer;variablesum1:std_logic_vector(7downto0);variablesum2:std_logic_vector(7downto0);beginsum1:=out2(15downto8);sum2:=out2(7downto0);foriin7downto0loopif(sum2(i)='0')thenyou:="00000000";elseyou:="11111111";endif;caseiiswhen0=>sum:="00000000"&(sum1andyou)+sum;when1=>sum:="0000000"&(sum1andyou)&'0'+sum;when2=>sum:="000000"&(sum1andyou)&"00"+sum;when3=>sum:="00000"&(sum1andyou)&"000"+sum;when4=>sum:="0000"&(sum1andyou)&"0000"+sum;when5=>sum:="000"&(sum1andyou)&"00000"+sum;when6=>sum:="00"&(sum1andyou)&"000000"+sum;when7=>sum:='0'&(sum1andyou)&"0000000";whenothers=>NULL;endcase;out3<=sum;endloop;endprocess;endbehavior;仿真結(jié)果:注:En、en1為使能端;ott4、ott3、ott
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年單招考試英語(yǔ)模擬試題及答案(一)
- 2019年長(zhǎng)江工程職業(yè)技術(shù)學(xué)院?jiǎn)为?dú)招生考試文化綜合考試樣題及參考答案
- 順鉑的臨床應(yīng)用
- 甘肅交通職業(yè)技術(shù)學(xué)院《芭蕾基訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 安陽(yáng)學(xué)院《諸子選講》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江育英職業(yè)技術(shù)學(xué)院《數(shù)據(jù)導(dǎo)入與預(yù)處理應(yīng)用實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 預(yù)防慢性疾病主題班會(huì)
- 山東杏林科技職業(yè)學(xué)院《短視頻創(chuàng)作》2023-2024學(xué)年第一學(xué)期期末試卷
- 江蘇省鹽城市解放路實(shí)驗(yàn)學(xué)校教育集團(tuán)2025年數(shù)學(xué)三下期末質(zhì)量跟蹤監(jiān)視試題含解析
- 甘肅警察職業(yè)學(xué)院《影視美學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 國(guó)際象棋入門(mén)教學(xué)課件
- 食品公司電商部門(mén)組織架構(gòu)
- 母線槽安裝檢驗(yàn)批質(zhì)量驗(yàn)收記錄
- 肩關(guān)節(jié)鏡下肩袖修補(bǔ)術(shù)的護(hù)理查房ppt
- 管道開(kāi)挖施工方案修復(fù)
- 高速公路工程質(zhì)量管理體系及保證措施
- 菠菜色素提取和分離
- 中鐵工程項(xiàng)目?jī)?nèi)部控制管理手冊(cè)(492頁(yè))
- 氣瓶充裝安全及培訓(xùn)課件PPT幻燈片
- 防雷檢測(cè)專(zhuān)業(yè)技術(shù)人員能力認(rèn)定考試題庫(kù)完整
- 計(jì)算機(jī)考試Excel操作題原題及操作步驟82435
評(píng)論
0/150
提交評(píng)論