名称:基于FPGA的MIPS处理器中32-bit算术逻辑单元(ALU)Verilog代码VIVADO仿真
软件:VIVADO
语言:Verilog
代码功能:
MIPS处理器中32-bit算术逻辑单元(ALU)
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. Testbench
5. 仿真图
部分代码展示:
`timescale?10ns/1ns `define?DATA_WIDTH?32 module?alu( input?[`DATA_WIDTH-1?:0]A, input?[`DATA_WIDTH-1?:0]B, input?[2:0]?ALUop, output?Overflow, output?CarryOut, output?Zero, output?[`DATA_WIDTH-1?:0]Result ); wire?[`DATA_WIDTH-1?:0]?Result_AB; wire?[31:0]?A_and_B; wire?[31:0]?A_or_B; assign?A_and_B=A?&?B; assign?A_or_B=A?|?B; wire?[31:0]?Inv_B; assign?Inv_B=~B;//取反 wire?[31:0]?sub_B;//取反后加1 //32位加法器 adder_32?ADD1_adder_32( .adder_A(Inv_B),? .adder_B(32'd1),?//+1 .CIN(1'd0),? .COUT(),? .S(sub_B) ); wire?[31:0]?A_add_B; wire?[31:0]?A_sub_B; wire?COUT_add; wire?COUT_sub; //32位加法器 adder_32?ADD2_adder_32( .adder_A(A),? .adder_B(B),?//A+B .CIN(1'd0),? .COUT(COUT_add),? .S(A_add_B) ); //32位加法器 adder_32?ADD3_adder_32( .adder_A(A),? .adder_B(sub_B),?//A-B .CIN(1'd0),? .COUT(COUT_sub),? .S(A_sub_B) );
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=846
阅读全文
397