杭电计算机组成实验7(七)取指令与指令译码实验

已开源在GitHub上,欢迎各位大佬给Star

仓库地址
网站

实验内容

1. 学习指令存储器的设计
2. 掌握CPU取指令操作与指令译码的方法和过程

解决方法

1. 本次实验设计采用哈佛结构设计存储器模块,需要设计一个只读存储器作为指令存储器,采用Memory IP核实现(不会用Memory IP核,可以看我这个博文存储器实验
2. 程序计数器PC与PC自增加法器组合成一个模块,由于指令存储器只有64个32位单元,所以PC的32位指令地址的高24位可直接在设计中清零
3. 需要注意在指令周期clk的上升沿执行取指令操作,在clk下降沿更新PC值
4. 代码展示:

顶层模块

module Fetch_Inst_Code(clk,rst,LED,MUX,op_code,funct,rs_addr,rt_addr,rd_addr,shamt,Inst_code);
input clk,rst;
input [1:0]MUX;
output [31:0]Inst_code;
output reg[7:0]LED;
reg [31:0]PC;
wire [31:0]PC_new;
output [5:0]op_code,funct;
output [4:0]rs_addr,rt_addr,rd_addr,shamt;
PC pc1(clk,rst,Inst_code);
always@(*)
	begin
		
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XdpCs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值