名称:8位有符号乘法器设计Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
8位有符号乘法器设计
1、输入2个8位有符号数
2、计算他们的乘积
3、支持清零、置数功能
4、输出乘积及运算结束标志
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1.工程文件
2.程序文件
3.程序运行
4.程序RTL图
5.顶层原理图文件
6.Testbench
7.仿真图
部分代码展示:
module arithmetic_unit( input CLK, input [7:0] A,//有符号乘数A input [7:0] B,//有符号被乘数B input CLR,//清零信号,高电平有效 input LOAD,//加载信号,低电平有效 output [15:0] Z,//有符号乘积 output END_FLAG//乘法结束指示信号 ); //LOAD信号的下降沿检测模块 down_delect downdelect( . CLK(CLK), . LOAD(LOAD), . LOAD_down(LOAD_down) ); wire [7:0] RA;//寄存器 wire [7:0] RB;//寄存器 //寄存器模块 AB_reg A_reg( . CLK(CLK), . LOAD_down(LOAD_down), . data_in(A), . data_out(RA) ); //寄存器模块 AB_reg B_reg( . CLK(CLK), . LOAD_down(LOAD_down), . data_in(B), . data_out(RB) ); wire [7:0] unsigned_operand_A; wire [7:0] unsigned_operand_B; //有符号数据转换为无符号数据 mod_operand Model_A( .operand(RA), .Model_operand(unsigned_operand_A) ); //有符号数据转换为无符号数据 mod_operand Model_B( .operand(RB), .Model_operand(unsigned_operand_B) ); wire [15:0] square_out;//无符号乘积结果 square square_A_1 ( . CLK(CLK), . CLR(CLR),//清零 . LOAD_down(LOAD_down),//开始 . unsigned_operand_A(unsigned_operand_A),//A . unsigned_operand_B(unsigned_operand_B),//B . END_FLAG(END_FLAG),//结束 . square_out(square_out)//乘积 );
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1271
阅读全文
986