《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验十二 移位相加8位乘法器电路设计

实验十二移位相加8位乘法器电路设计 1.实验目的 学习应用移位相加原理设计8位乘法器。 2.实验原理 该乘法器是由8位加法器构成的以时序方式设计的8位乘法器。其乘法原理是:乘法 通过逐项移位相加原理实现,从被乘数的最低位开始,若为1,则乘数左移后与上一次的和 相加:若为0,左移后以全0相加,直至被乘数的最高位。从图12-1的逻辑图及其乘法操 作时序图如图12-2(本例中的相乘数为9FH和FDH)上可以看出此乘法器的工作原理。图 12-1中,START信号的上 十沿及其高电平有两个 能,即16位寄 器清零和被乘数AN7.0 向移位寄存器SREG8B加载:它的低电平则作为乘法使能信号。CLK为乘法时钟信号。当 被乘数加载于8位右移寄存器SREG8B后,随若每一时钟节拍,最低位在前,由低位至高 位逐位移出。当为1时,1位乘法器andarith打开,8位乘数B[7.0)在同一脉冲进入8位加 法器,与上一次锁存在16位锁存器rg160中的高8位进行相加,其和在下一时钟脉冲的上 升沿被锁进此锁存器。被乘数的移出位为0时,与门全零输出。如此往复,直至8个时钟脉 冲后, 后乘 完整出现 g16b端口。 例18位右移寄存器的设计 源程序: Library ieee: Use ieee.std_logic_1164.all; Entity sreg8b is Port(clk,ld:in std_logic; d:in std logic_vector(7 downto 0); q:out std_logic). End; Architecture behav of sregsb is Signal reg8:std_logic_vector(7 downto 0); Begin Process(clk.Id) Begin If ld='l'then Reg8<=d; Elsif(clk'event and clk=1)then Reg8(6 downto0)<=reg(7 downto 1); end if, end process. q<=reg8(0): End; 例28位加法器的设计 顺程序: Library ieee;
实验十二 移位相加 8 位乘法器电路设计 1.实验目的 学习应用移位相加原理设计 8 位乘法器。 2.实验原理 该乘法器是由 8 位加法器构成的以时序方式设计的 8 位乘法器。其乘法原理是:乘法 通过逐项移位相加原理实现,从被乘数的最低位开始,若为 1,则乘数左移后与上一次的和 相加;若为 0,左移后以全 0 相加,直至被乘数的最高位。从图 12-1 的逻辑图及其乘法操 作时序图如图 12-2(本例中的相乘数为 9FH 和 FDH)上可以看出此乘法器的工作原理。图 12-1 中,START 信号的上升沿及其高电平有两个功能,即 16 位寄存器清零和被乘数 A[7.0] 向移位寄存器 SREG8B 加载;它的低电平则作为乘法使能信号。CLK 为乘法时钟信号。当 被乘数加载于 8 位右移寄存器 SREG8B 后 ,随着每一时钟节拍,最低位在前,由低位至高 位逐位移出。当为 1 时,1 位乘法器 andarith 打开,8 位乘数 B[7.0]在同一脉冲进入 8 位加 法器,与上一次锁存在 16 位锁存器 reg16b 中的高 8 位进行相加,其和在下一时钟脉冲的上 升沿被锁进此锁存器。被乘数的移出位为 0 时,与门全零输出。如此往复,直至 8 个时钟脉 冲后,最后乘积完整出现在 reg16b 端口。 例 1 8 位右移寄存器的设计 源程序: Library ieee; Use ieee.std_logic_1164.all; Entity sreg8b is Port(clk,ld:in std_logic; d:in std_logic_vector(7 downto 0); q:out std_logic); End; Architecture behav of sreg8b is Signal reg8: std_logic_vector(7 downto 0); Begin Process(clk,ld) Begin If ld='1' then Reg8<=d; Elsif ( clk'event and clk='1') then Reg8(6 downto 0) <= reg8 (7 downto 1); end if; end process; q<=reg8(0); End; 例 2 8 位加法器的设计 源程序: Library ieee;

Use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all Entity adder8b is Port(a,b:in std_logic_vector(7 downto 0); sout std logic vector(7 downto 0)): End Architecture behav of adder8b is Begin S<='0'&a+b: End 例31位乘法器的设计 腺程序: Library ieee: Use ieee.std_logic_1164.all; Entity andarith Port(logie. din:in std_logic_vector(7 downto 0). dout:out std_logic_vector(7 downto 0)). End: Architecture behav of andarith is Begin Process(abin,din) Begin For I in 0 to 7 loop Dout(i)<=din(i)and abin End loop, end process; End; 例416位锁存器右移备存器的设计 顺程序: Library ieee; Use icee.std_logic_1164.all; Entity reg16b is Port(clk,cr:instd_logic d:in std_logie_vector(downto 0). q:out std_logic_vector(15 downto 0)); End: Architecture behav of reg16b is
Use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; Entity adder8b is Port( a,b:in std_logic_vector(7 downto 0); s:out std_logic_vector(7 downto 0)); End; Architecture behav of adder8b is Begin S<=’0’ & a + b; End; 例 3 1 位乘法器的设计 源程序: Library ieee; Use ieee.std_logic_1164.all; Entity andarith is Port(abin:in std_logic; din:in std_logic_vector(7 downto 0); dout:out std_logic_vector(7 downto 0)); End; Architecture behav of andarith is Begin Process(abin,din) Begin For I in 0 to 7 loop Dout(i) <=din(i) and abin; End loop; end process; End; 例 4 16 位锁存器/右移寄存器的设计 源程序: Library ieee; Use ieee.std_logic_1164.all; Entity reg16b is Port(clk,clr:in std_logic; d:in std_logic_vector(8 downto 0); q:out std_logic_vector(15 downto 0)); End; Architecture behav of reg16b is

Signal r16s:std logic vector(15 downto 0): Begin ocess(clk.clr) Begin If clr='l'then R16s<=(others=0); Elsif(clK'event and clk-)then R16s6 nto 0)<=r16s(7 downto 1). R16s(15 downto 7)<=d; end if. end process: 9r16s End, 3.实验内容 3.1根据给出的乘法器逻辑原理图及其各模块的VHDL描述,在MAX+plus上完成 全部设计,包括编译、综合和仿真操作等。以8阳乘以F5H为例,进行仿真,对仿真波形 作出详细解释,包括对8个工作时钟脉冲中,每一个脉冲乘法操作的方式和结果,对照波形 给以详细说明。 3.2编程下载,进行实验验证。 4.注意事项 电路工作之前应进行初始化。 5.预习要求 (1)完成实验内容。的由路设计任条 (2)预习移位寄存器、加法器、锁存器工作原理。 6.实验报告 (1)详细分析以上各个模块的逻辑功能,以及他们的工作原理。 (2)写出以上程序分析报告、仿真波形图及其分析报告、硬件测试和实验过程报告
Signal r16s: std_logic_vector(15 downto 0); Begin Process(clk,clr) Begin If clr='1' then R16s’0’); Elsif ( clk'event and clk='1') then R16s(6 downto 0) <= r16s (7 downto 1); R16s(15 downto 7) <=d; end if; end process; q<=r16s; End; 3.实验内容 3.1 根据给出的乘法器逻辑原理图及其各模块的 VHDL 描述,在 MAX+plusII 上完成 全部设计,包括编译、综合和仿真操作等。以 87H 乘以 F5H 为例,进行仿真,对仿真波形 作出详细解释,包括对 8 个工作时钟脉冲中,每一个脉冲乘法操作的方式和结果,对照波形 给以详细说明。 3.2 编程下载,进行实验验证。 4.注意事项 电路工作之前应进行初始化。 5.预习要求 (1)完成实验内容。的电路设计任务。 (2)预习移位寄存器、加法器、锁存器工作原理。 6.实验报告 (1)详细分析以上各个模块的逻辑功能,以及他们的工作原理。 (2)写出以上程序分析报告、仿真波形图及其分析报告、硬件测试和实验过程报告
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验十一 电子琴电路设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验十 LPM模块应用设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验六 触发器设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验八 计数器设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验五 显示驱动电路设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验九 序列检测器设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验三 组合电路设计(一).doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验七 移位寄存器设计.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验一 TTL门电路的逻辑变换及测试(3/3).doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验一 TTL门电路的逻辑变换及测试(2/3).doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验一 TTL门电路的逻辑变换及测试(1/3).doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验二 用文本输入法设计门电路.doc
- 西安邮电大学:《数字电路与逻辑设计》课程教学课件(PPT讲稿)第六章 时序逻辑电路(2/2).ppt
- 西安邮电大学:《数字电路与逻辑设计》课程教学课件(PPT讲稿)第八章 可编程逻辑器件及其应用.ppt
- 西安邮电大学:《数字电路与逻辑设计》课程教学课件(PPT讲稿)第九章 脉冲单元电路.ppt
- 西安邮电大学:《数字电路与逻辑设计》课程教学课件(PPT讲稿)第七章 半导体存储器.ppt
- 《数字电路与逻辑设计》课程实验指导(数字电路实验)实验四 组合逻辑电路的设计(二).doc
- 《数字电路与逻辑设计》课程实验指导(数字电路实验)实验十 电子乒乓游戏机.doc
- 《数字电路与逻辑设计》课程实验指导(数字电路实验)实验六 小规模SSI计数器及其应用.doc
- 《数字电路与逻辑设计》课程实验指导(数字电路实验)实验八 移位寄存器及其应用.doc
- 《数字电路与逻辑设计》课程实验指导(可编程逻辑实验)实验四 组合电路设计(二).doc
- 《数字电路与逻辑设计》课程实验指导(课程设计)设计一 自动交通控制系统.doc
- 《数字电路与逻辑设计》课程实验指导(课程设计)设计二 数字抢答器的设计.doc
- 《数字电路与逻辑设计》课程实验指导(课程设计)设计三 数字频率计的设计.doc
- 《数字电路与逻辑设计》课程实验指导(课程设计)设计四 数字电子密码锁.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第一章 绪论.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第二章 逻辑函数及其简化.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第三章 集成逻辑门.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第四章 组合逻辑电路.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第五章 集成触发器.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第六章 时序逻辑电路.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第七章 半导体存储器.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第八章 可编程逻辑器件及其应用.doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第九章 脉冲单元电路(1/2).doc
- 《数字电路与逻辑设计》课程各章习题(含解答)第九章 脉冲单元电路(2/2).doc
- 西安邮电大学:《数字电路与逻辑设计》课程教学资源(试卷习题)2007数字电路与逻辑设计A卷(答案).doc
- 西安邮电大学:《数字电路与逻辑设计》课程教学资源(试卷习题)2007数字电路与逻辑设计B卷(答案).doc
- 西安邮电大学:《数字电路与逻辑设计》课程教学资源(试卷习题)2007数字电路与逻辑设计A卷(试题).doc
- 西安邮电大学:《数字电路与逻辑设计》课程教学资源(试卷习题)2007数字电路与逻辑设计B卷(试题).doc
- 西安邮电大学:《数字电路与逻辑设计》课程教学资源(试卷习题)2008数字电路与逻辑设计A卷(试题).doc