【图灵完备(Turing Complete)】 三、处理器架构

【图灵完备(Turing Complete)】 三、处理器架构



39:算数引擎

今天正式进入游戏的第三阶段——处理器架构。准备好搭建一个真正能运行程序的CPU了吗?按顺序来看本阶段第一关——算数引擎:
从本阶段开始,我们的电路再也不能随意“私拉乱建”了,而是要认真考虑规划,否则的话,就算过了当前关卡,也很难保证在后续关卡中电路还能正常运行,这是本阶段必须重点考虑的方面。
再回看题面,可以发现,算数引擎实际上只多了两个功能:加和减。
在这里插入图片描述
特别要注意一点:减数和被减数的顺序不能搞错,否则结果肯定错。按图搭建完毕后,运行测试一次通过。至此我们有了第一个能用的算数引擎,或者叫算术逻辑单元(ALU),就为后面搭建CPU打下基础了。

40:寄存器之间

首先摆出一个分线器和两个38译码器,分别根据源头和目标接好线。这里用了不同颜色表明方向,黄色表示目标,对应寄存器的写入,青色表示源头,对应寄存器的读取,如图所示:
在这里插入图片描述
按此逻辑,把每个译码器的前6路输出对应到各个寄存器的相应引脚。
6个寄存器连接完毕,此时每个38译码器各自只剩下一个元件没接,那就是位于底部左右角的独立输入端和独立输出端。直接和那6个寄存器一样,把各自的使能引脚接到对应的38译码器即可
接着把数据总线挂接好

41/42/43:元件工坊 /指令解码器/计算单元

元件工坊这种自定义元件能够被导出为Verilog格式的v文件,可以放到FPGA开发环境中直接使用!!!

这里对指令字节的最高2bit所能产生的4种状态进行了解释,分别对应了4种模式,显然是要实现一个24译码器,那我们可以直接把38译码器拿过来用,不用重新搭了
在这里插入图片描述

44/45:程序 /立即数

其实和上一关<计算单元>没有本质区别,只是把关卡左上角的指令输入元件替换成了程序模块,可以看做是一个ROM,内部有一大堆的寄存器阵列,且已经固化好了程序。我们要从元件库里翻出计数器,并如图接线即可:在这里插入图片描述

46:条件判断

首先本关卡名为“条件判断”,实际任务则是数值比较。它将一个输入的数值和0进行比较,然后得出结果,总共只会产生3个结果:1——等于02——小于03——大于0。请注意,既然有“小于0”这个选项,那么这个数值一定会有负数,因此是一个带符号数.
让一个数值与0进行比较只会有3种结果:要么大于、要么小于、要么等于。更多的判断指令都是基于这3种结果之上的.
在这里插入图片描述

47:图灵完备

我们到目前为止搭建的电路所存在的问题,那就是只能按顺序执行,还没有跳转功能,因此算不上是功能健全的计算机。因此,要在本关添加条件跳转功能,而实现这个功能就要靠我们在上一关<条件判断>中搭建的电路。
目前我们已搭建好了3种模式的电路:立即数、算术、复制模式,只剩最后一种条件跳转模式还没有,这就是本关要完成的任务了。
在这里插入图片描述

= = = = = = 第三阶段就到这结束了~= = = = = =

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值