名称:基于FPGA的4位循环移位相加乘法器Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:4位循环移位相加乘法器
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 仿真文件
6. 仿真图
转换为十进制显示,方便观察
可以看到:
6*8=48
5*7=35
4*14=56
7*9=63
2*10=20
并且由于使用的是移位相加的乘法器,不是组合逻辑,所以输出结果相对于输入有一点延迟。
部分代码展示:
//循环移位相加乘法器 module?Multiplier_4bit(A,B,clk,start,product_ten,product_one); input?clk,start;//start高电平时输入乘数 input?[3:0]?A;//A是乘数4bit input?[3:0]?B;//B是被乘数4bit output?[3:0]?product_ten;//乘积十位 output?[3:0]?product_one;//乘积个位 reg?[7:0]?mult_product=8'd0; reg?[7:0]?mult_product_buf=8'd0; parameter?INIT=2'd0; parameter?ADD=2'd1; parameter?SHIFT=2'd2; reg[1:0]?state=INIT;//初始状态为INIT reg[7:0]?B_buf=8'd0;//临时变量 integer?Count=0; ////循环移位相加状态机控制 always@(posedge?clk) ??begin ?case(state)
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=681
							阅读全文
							
						
					
								
								
								
356