实验目的
帮助学生理解现代时序系统中硬布线控制器设计的基本原理,学生能设计硬布线控制器核心部件状态机模块。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210516132037392.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NjM1MjAzMA==,size_16,color_FFFFFF,t_70)
实验步骤:
- 利用数字逻辑电路相关知识设计现代时序硬布线核心部件状态机模块,实际状态机如下图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210516132101348.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NjM1MjAzMA==,size_16,color_FFFFFF,t_70)
- 按状态图填写5号excel表,自动生成次态逻辑表达式后,即可在logisim中自动生成该电路。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2021051616024766.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NjM1MjAzMA==,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210516172714215.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NjM1MjAzMA==,size_16,color_FFFFFF,t_70#pic_center)
电路引脚
信号 |
输入输出 |
位宽 |
功能描述 |
S4 |
输入 |
1 |
现态输入第4位 |
S3 |
输入 |
1 |
现态输入第3位 |
S2 |
输入 |
1 |
现态输入第2位 |
S1 |
输入 |
1 |
现态输入第1位 |
S0 |
输入 |
1 |
现态输入第0位 |
LW |
输入 |
1 |
当前指令为lw指令 |
SW |
输入 |
1 |
当前指令为sw指令 |
BEQ |
输入 |
1 |
当前指令为beq指令 |
ADDI |
输入 |
1 |
当前指令为addi指令 |
SLT |
输入 |
1 |
当前指令为slt指令 |
equal |
输入 |
1 |
条件反馈信号 |
N4 |
输出 |
1 |
次态输出第4位 |
N3 |
输出 |
1 |
次态输出第3位 |
N2 |
输出 |
1 |
次态输出第2位 |
N1 |
输出 |
1 |
次态输出第1位 |
N0 |
输出 |
1 |
次态输出第0位 |
测试用例:
# |
信号 |
功能描述 |
1 |
Cnt |
测试用例编号,注意是十六进制 |
2 |
S |
现态值 |
3 |
LW |
lw指令译码信号 |
4 |
SW |
sw指令译码信号 |
5 |
BEQ |
beq指令译码信号 |
6 |
SLT |
slt指令译码信号 |
7 |
ADDI |
addi指令译码信号 |
8 |
NS |
次态值 |
测试:
预期输出:
Cnt S LW SW BEQ SLT ADDI NS
00 00 0 0 0 0 0 01
01 01 0 0 0 0 0 02
02 02 0 0 0 0 0 03
03 03 1 0 0 0 0 04
04 03 0 1