
计算机组成原理:手写CPU
文章平均质量分 92
计算机组成原理:手写CPU,使用晶体管(verilog)构造门电路,加法器,存储器, ALU, CPU, 逐步构造出一台计算机
csprimer
计算机科学基础系列课程:csprimer.net
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用晶体管/门电路/D触发器实现寄存器和存储器
然后我们来看怎么实现d触发器,在实际的使用d触发器的时候,我们还会加一个load,当load=1的时候,输出才受输入的影响,当load=0的时候,它的输出就保持之前的值,所以我们在前面加一个多路选择器,它的一个输入是新的输入in,一个输入是之前的输出out,当load=1的时候,它的输出就是新的输入in1,当load=0的时候,它的输出就是之前的输出out,就通过一个多路选择器来实现,原创 2025-02-13 10:55:35 · 903 阅读 · 0 评论 -
加法器的实现:使用晶体管,门电路实现加法
首先我们看1位二进制的加法的实现,下图中a加b结果是sum进位是carry,那么我们通过下面的真值表可以看出来,0+0是等于0的,1+1是等于0的,其他情况相加的结果是1,所以这正好符合异或门的特性,我们把a b输入到一个异或门,它的输出就是a加b的结果sum,然后再看进位,1+1的进位是1,其他情况相加进位都是0,所以这正好符合与门的特性,我们把a b输入到一个与门,那么它的输出就是a+b的进位carry。实现完成以后也看一下结果,看一下它的结果是不是正确的,原创 2025-01-24 09:53:38 · 1799 阅读 · 0 评论 -
基本门电路的实现:使用晶体管verilog实现门电路
在verilog里面语句的前后顺序是没有关系的,它只是描述这些门电路之间是怎么连接的,比如下面的代码,g1这个异或门,它的输入是a b输出是s1,g1是连接到g4这个与门的,g1的输出s1作为g4的输入,然后g4是连接到g5的,g4的输出c2是作为g5的输入,所以你去改变这些语句的前后顺序是不会去改变这种连接顺序的。而FPGA是基于一种查找表的结构,叫做LUT, LUT本质上是一个RAM,RAM的内容是可以修改的,可以通过地址来寻址,我们可以把a b c的输入比如都输入0作为RAM的地址,原创 2025-01-23 17:15:22 · 959 阅读 · 0 评论 -
计算机系统概述:门电路,继电器,真空管和晶体管的工作原理
比如我们看一下怎么执行1+1=2这个程序,它编译后会编译成4条汇编指令,我们假设这四条汇编指令是存放在M0到M3里面的,然后两个操作数1是存放在M40跟M41里的,最开始的时候PC是指向M0的,那么在第1个时钟周期CPU首先执行取指的操作,从M0里面取出第一条指令,然后执行第二步译码,解释指令的意思,然后第三步执行指令,把操作数1从M40里面移动到R0寄存器里面,然后第四步是回写,这条指令不需要回写。原创 2025-01-12 15:43:24 · 2047 阅读 · 0 评论