单总线CPU设计(现代时序)(HUST)--第5关

 第5关:采用微程序的单总线CPU设计

创作不易,还希望各位大佬支持一下 

👍 点赞,你的认可是我创作的动力! 

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富! 

链    接https://pan.baidu.com/s/1Z4kAcHijGBC6MUNfDyLb5Q 
提取码lrkk

实验目的

帮助学生理解单总线结构CPU基本原理,能设计基于微程序控制器的单总线CPU,使得MIPS程序能在单总线结构上运行,最终能运行简单的排序程序sort-5.hex。

实验内容

完成前面所有实验关卡以后,在本关进行最终的联调,测试排序程序。 在RAM中加载sort-5.hex程序,ctrl+k自动运行,程序应该运行至0x7c1节拍停下,指令计数为251,注意最后一条指令是一条beq分支指令,会跳回当前指令继续执行,是死循环。

内存数据如下:

注意蓝色区域的数值为有符号降序排序。

电路框架

MipsOnBusCpu-1.circ ◆单总线CPU(微程序) 子电路

电路引脚
信号输入输出位宽功能描述
ControlBus输出32控制总线,用于EduCoder系统自动测试
电路测试

完成设计后,可利用文本编辑工具打开 MipsOnBusCpu-3.circ,将所有文字信息复制粘贴到 Educoder 平台的代码框中,再点击评测按钮即可进行本关测试。平台会对你设计的电路进行自动测试,为方便测试,请勿修改子电路封装。

测试输出结果说明

由于CPU运行程序节拍数较多,输出信息较多,本关自动评测时仅仅显示错误节拍的输出信息,并给出错误位提示,左侧预期输出仅仅显示输出引脚标题栏。

#信号功能描述
1Clks时钟节拍号,注意是十六进制
2ControlBus控制总线的值,具体每位的定义见控制器电路
3ErrBit控制总线出错位

测试用例如下:

 
  1. Clks ControlBus ErrBit
  2. 0000 202400 xx
  3. 0001 000008 xx
  4. 0002 085002 xx
  5. 0003 100100 xx
  6. 0004 000000 xx
  7. 0005 000000 xx
  8. 0006 000000 xx
  9. 0007 000000 xx
调试技巧与常见故障

1、检查待测电路引脚框架是否和前面的图一致,调整引脚会引起待测部件封装接口改变,导致测试无法正常进行; 2、检查待测电路子电路外观也就是封装和前面的图是否一致,引脚位置,引脚顺序、引脚数目等,这个不一样肯定不正常; 3、ErrBit表示控制总线中出错的第一个bit位,可以根据对应位号查找上面的总线引脚图找到对应控制信号,然后检查逻辑表达式是否正确。

创作不易,还希望各位大佬支持一下 

👍 点赞,你的认可是我创作的动力! 

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富! 

链    接https://pan.baidu.com/s/1Z4kAcHijGBC6MUNfDyLb5Q 
提取码lrkk

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值