• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于FPGA的MIPS处理器中32-bit算术逻辑单元(ALU)Verilog代码VIVADO仿真

07/31 09:26
620
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-2406120U324S9.doc

共1个文件

名称:基于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

  • 2-2406120U324S9.doc
    下载

相关推荐