欢迎来到天天文库
浏览记录
ID:34051387
大小:135.79 KB
页数:6页
时间:2019-03-03
《eda8位乘法器实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、南华女曇船山学院实验报告(2009-2010学年度第二学期)课程名称EDA实验名称8位乘法器姓名学号—专业计算机科学与班级01技术一、实验目的:学习和了解八位乘法的原理和过程二.设计思路:纯组合逻辑构成的乘法器虽然工作速度比较快,但过于占用硕件资源,难以实现宽位乘法器,基于PLD器件外接ROM九九表的乘法器则无法构成单片系统,也不实用。这里介绍由八位加法器构成的以时序逻辑方式设计的八位乘法器,具有一定的实用价值,而口由FPGA构成实验系统后,可以很容易的用ASIC人型集成芯片來完成,性价比高,可操作性强。其乘法原理是:乘法
2、通过逐项移位相加原理来实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和相加;若为0,左移后以全零相加,直至被乘数的最高位。三、实验逻辑图:CLKARICTL四*实验代码:1)选通与门模块的源程序ANDARITH.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYANDARITHISPORT(ABIN:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(7DOWNTO0)DOUT:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDA
3、NDARITH;ARCHITECTUREARTOFANDARITHISBEGINPROCESS(ABIN,DIN)BEGINFORIIN0TO7LOOPDOUT(I)<=DIN(I)ANDABIN;ENDLOOP;ENDPROCESS;ENDART;2)16位锁存器的源程序REG16B.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYREG16BISPORT(CLK:INSTD_LOGIC;CLR:INSTD.LOGIC;D:INSTD_LOGIC_VECTOR(8DOWNT
4、O0)Q:OUTSTD_LOGIC_VECTOR(15DOWNTO0));ENDREG16B;ARCHITECTUREARTOFREG16BISSIGNALR16S:STD_LOG1C_VECTOR(15DOWNTO0);BEGINPROCESS(CLK,CLR)BEGINIFCLR=4'THENR16S<="0000000000000000";ELS1FCLK'EVENTANDCLK=TTHENR16S(6DOWNTO0)<=R16S(7DOWNTO1);R16S(I5DOWNTO7)v二D;ENDIF;ENDPROCE
5、SS;Q<=R16S;ENDART;3)8位右移寄存器的源程序SREG8B.VHDLIBRARYIEEE;USEIEEE.STD_LOG1C_1164.ALL;ENTITYSREG8BISPORT(CLK:INSTD_LOGIC;LOAD:INSTD_LOGIC;BIN:INSTD_LOGIC_VECTOR(7DOWNTO0);QB:OUTSTD_LOGIC);ENDSREG8B;ARCHITECTUREARTOFSREG8BISSIGNALREG8B:STD_LOG1C_VECTOR(7DOWNTO0);BEGINPRO
6、CESS(CLK,LOAD)BEGINIFCLK'EVENTANDCLK='1'THENIFLOAD=TTHENREG8<=DIN;ELSEREG8(6DOWNTO())<=REG8(7DOWNTO1);ENDIF;ENDIF;ENDPROCESS;QB<=REGS(0);ENDART;4)乘法运算控制器的源程序ARICTL.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STDLOGICUNSIGNED.ALL;ENTITYARICTLISPORT(CLK:INSTD_
7、LOG1C;START:INSTD_LOGIC;CLKOUT:OUTSTD_LOGIC;RSTALL:OUTSTD.LOGIC;ARIEND:OUTSTD_LOGIC);ENDARICTL;ARCHITECTUREARTOFARICTLISSIGNALCNT4B:STD_LOGIC_VECTOR(3DOWNTO0);BEGINRSTALLv二START;PROCESS(CLK,START)BEGINIFSTART='1'THENCNT4B<=,,0000";ELSIFCLK'EVENTANDCLK二TTHENIFCNT4B
8、<8THENCNT4B=CNT4B+1;ENDIF;ENDIF;ENDPROCESS;PROCESS(CLK,CNT4B,START)BEGINIFSTART='O'THENIFCNT4B<8THENCLKOUT<=CLK;ARIEND<=O';ELSECLKOUT<='O';ARIEND<='1';E
此文档下载收益归作者所有