#32 构建超标量CPU之添加位移指令
合集 · 从零构建超标量 CPU (34)
-
#1 构建超标量CPU之系列开篇与核心概念
8:14
-
#2 构建超标量CPU之单步时钟
11:40
-
#3 构建超标量CPU之可调时钟
5:26
-
#4 构建超标量CPU之时钟选择器
10:41
-
#5 构建超标量CPU之复位同步器
9:46
-
#6 构建超标量CPU之程序计数器
14:58
-
#7 构建超标量CPU之实现逐条执行指令
23:08
-
#8 构建超标量CPU之实现指令相对跳转
14:05
-
#9 构建超标量CPU之实现选择下一步要执行的指令
14:22
-
#10 构建超标量CPU之重置程序计数器
12:48
-
#11 构建超标量CPU之添加程序存储器
15:23
-
#12 构建超标量CPU之定义初始指令集
23:14
-
#13 构建超标量CPU之如何从8位内存中获取16位数据
27:15
-
#14 构建超标量CPU之升级至16位指令集
15:23
-
#15 构建超标量CPU之程序计数器PCB
1:01:38
-
#16 构建超标量CPU之寄存器堆工作原理
29:20
-
#17 构建超标量CPU之如何访问寄存器?
50:31
-
#18 构建超标量CPU之打造属于你自己的逻辑分析仪
56:33
-
#19 构建超标量CPU之使用Python进行电路测试
1:00:29
-
#20 构建超标量CPU之寄存器PCB
49:40
-
#21 构建超标量CPU之扩展寄存器堆
41:28
-
#22 构建超标量CPU之我的CPU现在能16位跳转了
18:30
-
#23 构建超标量CPU之编写汇编器:指令解析
48:12
-
#24 构建超标量CPU之编写汇编器:内存布局
19:05
-
#25 构建超标量CPU之编写汇编器:指令编码
19:30
-
#26 构建超标量CPU之编写汇编器:输出二进制文件
17:20
-
#27 构建超标量CPU之计算机如何做加法?
45:35
-
#28 构建超标量CPU之教我的CPU“学会”加法
46:12
-
#29 构建超标量CPU之计算机如何实现负数运算?
47:01
-
#30 构建超标量CPU之进位标志
51:28
-
#31 构建超标量CPU之实现算术逻辑单元的位移功能
32:25
-
#32 构建超标量CPU之添加位移指令
55:35
-
#33 构建超标量CPU之解码ALU微操作
42:29
-
#34 构建超标量CPU之实现布尔代数运算
35:13
Description
原始英文视频:https://www.youtube.com/watch?v=zITeJB0WcRY 这篇文档记录了在一个自制8位CPU项目中,为算术逻辑单元成功添加移位功能并测试的全过程。核心工作包括: 硬件改造:在ALU的输入侧增加了多路复用器,使其能够对输入数据进行左移、右移、置零或直通操作。移位时移出的位会存入进位标志寄存器,为复杂运算(如大数移位)奠定了基础。 指令集扩展:利用指令字中的高位比特来控制新的移位和进位操作模式。新增了取反、逻辑左移/右移、带进位左移/右移等指令。 软件配套:更新了汇编器以支持新指令的解析和机器码生成。 功能验证:编写并运行了复杂的测试程序,成功演示了取反、16位宽数据移位、比特位反转、统计寄存器中“1”的个数(位计数)以及比特位循环移动等多种应用,充分展示了新功能的实用性。 未来展望:指出了当前指令位空间的限制,并计划下一步引入ALU操作解码器,用更少的指令位控制更多的ALU内部信号,以支持更丰富的操作(如逻辑运算、比较等)。 整个过程体现了硬件设计、指令集架构、软件工具链和系统测试的紧密结合。