物理 关于逻辑门构建CPU的教程
本贴使用 图灵完备 演示CPU的逻辑构成。
本贴与游戏无关,图灵完备仅作为演示载体。
建议先阅读浏览大楼中前两篇,对使用元件有一个基本的了解。
Node 1:理论
1.1:架构
不知道CPU的结构,何以构建CPU?
这是我之前看到的一张照片,AI超分了一下放上来的
可以发现,CPU主要由运算器(ALU),内存储器(寄存器)以及控制器(程序+译码器)组成,当然还有辅助的I/O。(注:L1L2L3缓存暂不考虑)
1.2:指令集
现代主要CPU都是x86的架构,也许你听过x86这么个名字,它是一套指令集,x86架构的CPU只认识x86类型的指令集,否则他只会乱执行或者不执行。
这么看,指令集与CPU的关系极其密切,同时,指令集的设计也关系到CPU运行的效率,x86指令集的指令长度再1-16字节之间,解码相当复杂,同时闭源,难以在这里讲清楚,所以我为你们选择了加州大学伯克利分校开发的具有低能耗,简易特点同时前景较好的RISC-V指令集,这是一种固定指令长度为4字节的指令集,解码简单,算力-能耗比高。
考虑到工程文件即使相比x86只有短短100多页,全英文还是太使人头秃,我将最主要的部分:基本指令定义放在下面:
| 类型 | 31-25 (7 bits) | 24-20 (5 bits) | 19-15 (5 bits) | 14-12 (3 bits) | 11-7 (5 bits) | 6-0 (7 bits) |
|---|---|---|---|---|---|---|
| R型 | funct7 | rs2 | rs1 | funct3 | rd | opcode |
| I型 | imm | imm | rs1 | funct3 | rd | opcode |
| S型 | imm高7位 | rs2 | rs1 | funct3 | imm低5位 | opcode |
| B型 | imm最高位+第10~5位 | rs2 | rs1 | funct3 | imm第4~1位+第11位 | opcode |
| U型 | imm | imm | imm | imm | rd | opcode |
| J型 | imm最高位+第10~5位 | imm第4~1位+第11位 | imm第19~15位 | imm第14~12位 | rd | opcode |
看起来似乎还是很令人烦恼,RISBUJ都是什么意思?且听下回分解()
共0条回复
时间正序
回复是交流的起点,交流让学竞赛不孤单