当前位置:首页 > 西安交大计算机组成 - 实验九
实验九 指令译码模块的设计与应用
一、实验目的
1. 熟练掌握VHDL/Verilog中语句的综合应用。 2. 掌握指令格式的应用。
3. 掌握指令译码模块的实际和应用
二、实验内容
1. 设计一个指令译码器。
2. 满足功能上的需求,包括运算、转移、存储指令。
三、实验要求
1. 2. 3. 4.
分析各模块的的程序结构,画出其流程图。 画出模块的电路图。
分析电路的仿真波形,标出关键的数值。 记录设计和调试过程。
四、实验代码及结果
module InstructionMemory(
input InsMemRW, // 读写控制信号,1为写,0位读 input [31:0] IAddr, // 指令地址输入入口 //input IDataIn, // 没用到
output [5:0] op, output [4:0] rs, output [4:0] rt, output [4:0] rd,
output [15:0] immediate // 指令代码分时段输出 );
reg[7:0] mem[0:63]; // 新建一个32位的数组用于储存指令
initial begin
$readmemb(\读取测试文档中的指令 end
// 从地址取值,然后输出
assign op = mem[IAddr][7:2];
assign rs[4:3] = mem[IAddr][1:0]; assign rs[2:0] = mem[IAddr + 1][7:5]; assign rt = mem[IAddr + 1][4:0]; assign rd = mem[IAddr + 2][7:3];
assign immediate[15:8] = mem[IAddr + 2]; assign immediate[7:0] = mem[IAddr + 3];
endmodule
五、调试和心得体会
无
共分享92篇相关文档