提升lab9图片质量

This commit is contained in:
Liphen 2024-01-25 13:58:58 +08:00
parent 511db78ac9
commit 6d2c760ef7
7 changed files with 11 additions and 11 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -430,7 +430,7 @@ ADD指令的源操作数都来自通用寄存器堆因此src1_ren和src2_ren
#fakepar
#figure(
image("image/image-20240111133429499.png", width: 80%),
image("image/image-20240125134200367.png"),
caption: "译码单元"
)<译码单元>
#fakepar
@ -441,7 +441,7 @@ ADD指令的源操作数都来自通用寄存器堆因此src1_ren和src2_ren
#fakepar
#figure(
image("image/image-20240111132343570.png", width: 80%),
image("image/image-20240111132343570.png"),
caption: "执行级缓存"
)<执行级缓存>
#fakepar
@ -454,18 +454,18 @@ ADD指令的源操作数都来自通用寄存器堆因此src1_ren和src2_ren
#fakepar
#figure(
image("image/image-20240111135449651.png", width: 85%),
image("image/image-20240125134816118.png"),
caption: "执行单元"
)<执行单元>
#fakepar
@执行单元 展示了执行单元的结构R型运算指令只需要使用ALU这一个部件即可ALU部件已经在数字电路实验中学习过。将执行级缓存传来的data数据包包内包括info数据包和src_info数据包发送至ALU中。ALU可以通过info数据包内op的区别进行不同的计算操作而源操作数在src_info数据包中。ALU将运算结果reg_wdata打包到rd_info数据包中和info数据包内的reg_wen、reg_waddr一块打包成新的data数据包发送至访存级缓存。
@执行单元 展示了执行单元的结构R型运算指令只需要使用ALU这一个部件即可ALU部件已经在数字电路实验中学习过。将执行级缓存传来的data数据包包内包括info数据包和src_info数据包发送至ALU中。ALU可以通过info数据包内op的区别进行不同的计算操作而源操作数在src_info数据包中。ALU将运算结果reg_wdata打包到rd_info数据包中和pc以及info数据包内的reg_wen、reg_waddr一块打包成新的data数据包发送至访存级缓存。
#noindent #text(fill: blue)[#unitcnt_inc访存级缓存]
#fakepar
#figure(
image("image/image-20240111135906222.png", width: 85%),
image("image/image-20240111135906222.png"),
caption: "访存级缓存"
)<访存级缓存>
#fakepar
@ -476,7 +476,7 @@ ADD指令的源操作数都来自通用寄存器堆因此src1_ren和src2_ren
#fakepar
#figure(
image("image/image-20240111150330436.png", width: 75%),
image("image/image-20240111150330436.png"),
caption: "访存单元"
)<访存单元>
#fakepar
@ -487,7 +487,7 @@ ADD指令并不需要访问内存因此在该流水级什么也不做
#fakepar
#figure(
image("image/image-20240111140744667.png", width: 80%),
image("image/image-20240111140744667.png", width: 88%),
caption: "写回级缓存"
)<写回级缓存>
#fakepar
@ -524,7 +524,7 @@ TODO增加目录结构图
#fakepar
#figure(
image("image/image-20240111160016125.png", width: 80%),
image("image/image-20240111160016125.png"),
caption: "基于myCPU的简单Soc结构"
)<基于myCPU的简单Soc结构>
#fakepar
@ -610,7 +610,7 @@ TODO仿真结构
#fakepar
#figure(
image("image/image-20240111151739011.png", width: 70%),
image("image/image-20240111151739011.png", width: 60%),
caption: "功能验证框架"
)<功能验证框架>
#fakepar

View File

@ -144,13 +144,13 @@ ADD 指令需要写回通用寄存器堆,因此 reg_wen 为 1reg_waddr 对
完成了控制信号的生成,接下来我们需要准备源操作数,也就是访问通用寄存器堆,相比 SRAM 这种存储类型,通用寄存器堆的访问都是当拍完成。
![image-20240111133429499](image/image-20240111133429499.png)
![image-20240125134200367](image/image-20240125134200367.png)
图 9.11 展示了译码单元的结构,译码器将从指令队列获得的指令进行译码,产生了相关的控制信号,与寄存器堆读回的源操作数以及指令队列获得的 pc 一起打包成一个 data 数据包发送至下一级流水线缓存。
![image-20240111132343570](image/image-20240111132343570.png)
![image-20240111135449651](image/image-20240111135449651.png)
![image-20240125134816118](image/image-20240125134816118.png)
![image-20240111135906222](image/image-20240111135906222.png)