如何使用ALU,RAM,寄存器打造一个CPU 1

cpu简介「计算机的心脏是中央处理单元,简称“cpu”」 。这篇文章就利用前几篇文章中提到过的alu,ram,寄存器组件做一个cpu。
cpu负责运行程序, 「程序是由一个个操作组成的,这些操作叫做指令」 ,因为他们“指示”计算机要做什么.
cpu能做什么「数学计算指令」 :让alu去做加减乘除或者更复杂的数学计算
「内存指令」 :cpu会和内存(ram)通信,然后操作内存进行读写值
组装cpu零件16位内存条首先把上一篇文章的ram拿出来(只有16个地址意味着是每个内存是16位的,每个地址又可以存8位可以得出是8个内存组装在一起的;因此这个ram可以看到是 「由8个16位内存组成」 )。
「内存条的寻址空间意味着每块内存可以可以存储的位数,内存条中的每个地址可以存多少位又是由多少个内存组成。」
可以看到每个地址都存储着8位,在后面讲解指令表的时候要注意这八位数字的表示方式。「前四位代表操作码,后四位代表的是地址or寄存器」
四个八位的寄存器回顾一下:
上一篇文章中讲到八位的寄存器无非是把八个锁存器链接在一起,8个数据输入线,8个数据输出线,还有一个链接着所有锁存器中的允许写入线。总共17条线
寄存器的作用:用来 「临时存储数据」 和操作数据
指令表数据是以二进制值存储在内存里,程序也可以在内存里。
指令: 「所有cpu支持的指令都会分配一个指令id」 也就是表中的第一个instruction中的load_a
描述:就是描述这个指令id是用来做什么操作的
「4-bit opcode」 (操作码):「这个指令要做的操作,用4位的操作码表示」
「address or registers」 (地址or 寄存器):也是4位,表示的是 「操作码需要使用的地址或者寄存器」 (比如加载一个内存里的值放入寄存器中就需要指定打开的是哪个内存地址)
「在之前我们拿出ram,可以看到每个地址都存储着8位数字,前四位代表的就是操作码,后四位代表的是地址or寄存器」 「.」
「之后我们会模拟cpu的执行过程,要执行怎样的操作以及怎么样执行就是通过ram中存储的这八位数字来运行的。」
两个八位的寄存器「指令地址寄存器」 :追踪程序运行到哪里了。用于通过地址**「定位到内存条中的哪条指令,也就是存储当前指令的内存地址address」**
「指令寄存器」 :用于 「存储当前运行的指令data」 。通过指令地址寄存器读取ram中指定address的data然后并写入这个寄存器
开始运行启动计算机时,所有的寄存器都是0.
在ram中放了一个程序(address,data),现在就是要过一遍运行这个程序的过程
取指令阶段该阶段负责拿到指令,即**「指令地址寄存器读取ram中对应地址的值复制到指令寄存器」**
1.首先将 「指令地址寄存器连接到ram」 中(address input),寄存器的初始值为0,因此会去读取ram中address为0的data
2.「data会被复制到指令寄存器中,现在指令寄存器存储了00101110这个指令」

高速以太网如何满足数据中心的处理需求?
三菱电机红外传感器跨界应用,高性价比抢攻中端蓝海市场
2016年PSA大奖揭晓 《夏日课堂》名列最佳VR游戏
尼康公布自家新款可折叠式无反镜头专利
华为开始着手研发下一代的6G技术,6G研究方面华为领先世界
如何使用ALU,RAM,寄存器打造一个CPU 1
74ls05中文资料汇总(74ls05引脚图及功能_内部结构及特性参数)
美国或封锁半导体出口到中国 受伤的不止是中国企业
电路设计的基本流程
温湿度传感器应用在智慧稻草人中 智能稻草人
基于linux eBPF的进程off-cpu的方法
中国绿色能源程度超过世界平均,是全球发电量最多的国家
浩康科技联同Velosti发表USB3.0高速AES/UCA硬件加密优盘方案
区块链如何成为汽车产业的中坚力量
高速通信PCB的过孔优化解决方案
讯维全新小间距LED全彩显示屏成功应用于云南某武警部队指挥室
ECG信号处理之一 带领学生参赛(4)他山之石
小米6工程机曝光 搭载高通骁龙835
一文解析电路反馈框图
北航在纳米柔性器件先进制造方面取得重大进展