微处理器实现没有想明白的问题

微处理器实现没有想明白的问题

在做选择的时候,先列出两种实现方法的不同点,各有什么优缺点。

数据通路

mux放的位置

  • 从registerfile的read data 跟imm 扩展之后的mux放在 ID stage 还是EX stage?
  • 从data mem的数据和alu的result mux 放在mem stage 还是wb stage?

5级流水线branch控制模块放的位置

放在ID 还是EXE阶段

控制通路

控制信号名字的选择

mips相关的会根据用途,但在cs61c的课程中很多都用了sel。

sel用独热码还是二进制传递控制信号

  • 独热码在stage之间需要更多的寄存器,因为少了使用时重新解码,速度会更快一些。
  • 二进制在stage之间需要寄存器少一些,但在使用时需要重新解码,速度会慢一些。

控制通路跟数据通路是否放在不同的模块实现

mips教程中,两个是放在一起的。
cs61c 的riscv课件中,数据通路跟控制通路是分开的。
华科有两个同学的硕士毕业论文,一个做数据通路,一个做控制通路。
数据通路从控制通路分离可能也是一件好事。这样的数据通路会更加清晰。
每部分需要考虑的内容更加集中。

微处理器实现方向的选择

网上开源的mips/arm等cpu的实现

微处理器的发展历史

cortex M处理文档相当的详细

risc-v跟cortex M的区别

除了cpu核,cache,总线,memory map,DMA,等需要考虑的内容还是基本相同的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值