文档介绍:寄存器堆设计实验报告
2015年5月14日 成绩:
姓名
刘明智
学号
13055121
班级
13058911
专业
物联网工程
课程名称
《计算寄存器堆设计实验报告
2015年5月14日 成绩:
姓名
刘明智
学号
13055121
班级
13058911
专业
物联网工程
课程名称
《计算机组成原理课程设计》
任课老师
冯建文
指导老师
冯建文
机位号
****
实验序号
四
实验名称
寄存器堆设计实验
实验时间
5-11
实验地点
1教223
实验设备号
****
一、实验程序源代码
module Top_m(
input Clk,
input Reset,
input [4:0] Reg_Addr,
input Write_Reg,
input [1:0] Sel,
input AB,
output reg [7:0] LED
);
reg [31:0] W_Data;
wire [31:0] R_Data_A,R_Data_B,LED_Data;
REG RU1(Clk,Reset,Reg_Addr,Reg_Addr,Reg_Addr,W_Data,Write_Reg,R_Data_A,R_Data_B);
assign LED_Data=AB?R_Data_A : R_Data_B;
always @(*)
begin
W_Data=32'h0000_0000;
LED=8'b0000_0000;
if(Write_Reg)
begin
case(Sel)
2'b00: W_Data= 32'h1234_5678;
2'b01: W_Data= 32'h89AB_CDEF;
2'b10: W_Data= 32'h7FFF_FFFF;
2'b11: W_Data= 32'hFFFF_FFFF;
endcase
end
else
begin
case(Sel)
2'b00: LED=LED_Data[7:0];
2'b01: LED=LED_Data[15:8];
2'b10: LED=LED_Data[23:16];
2'b11: LED=LED_Data[31:24];
endcase
end
end
endmodule
module REG( input Clk,
input Reset,
input [4:0] R_Addr_A,
input [4:0] R_Addr_B,
input [4:0] W_Addr,
input [31:0] W_data,
input Write_Reg,
output [31:0] R_Da