-
Notifications
You must be signed in to change notification settings - Fork 1
10月26日笔记
4.2 R型指令和I型算术指令
4.3 I型访存指令和S型指令
访存装载指令
访存存储的S型指令
建议实际设计芯片时固定一个值较好,因为电路中只有三态,0,1和高阻态,从而避免在门级仿真产生X信号的传播问题
B型指令
4.4 B型指令、I型JALR指令、J型指令、U型指令
在S型立即数和B型立即数之间,只有一位数据在编码位置上有差异,对应了最后编码位置上的两个bit位置,因此只需要两个单比特,两路选择器即可
一个时钟周期内能完成一条RISC-V指令的执行,但在某条指令的执行时,并不是所有的硬件单元都会用到,
将指令执行过程划分为 IF、ID、EX、MEM、WB 取指、译码、执行、访存、写回五个阶段,这5个阶段是所有指令都要经历的,也有的阶段只有部分指令才会用到
在构建数据通路的过程中,初步认识了控制器的作用,控制器通过产生各种控制信号,控制着指令如何被执行
第五章 控制器
5.1 控制信号、关键路径
单核计算机处理系统中,处理器包含控制器与数据通路两部分
5.2 控制器实现
控制器可以通过两种方式实现,一种是只读存储器,便于重新编程,可以修正设计中的错误,或者是添加新的指令,另一种是使用组合逻辑实现,使用逻辑综合工具将控制器真值表实现为门级网表电路
第六章 流水线
6.1 处理器性能
一个程序的执行时间,取决于程序的指令数,每条指令的平均时钟周期数,时钟周期时间
程序的指令数:任务程序本身体量,程序操作算法复杂度,程序编程语言,编译器,指令集架构(ISA)
每条指令的平均时钟周期数(CPI):指令集架构(ISA),处理器的实现方式
时钟周期时间:时钟频率的倒数,time per cycle(1/frequency),处理器的微架构(决定了处理器底层的关键路径),工艺的影响(不同工艺下逻辑单元的时延是不同的),设计时的额定功率(较低的电压能降低处理器的功率,低电压会降低晶体管的转换速度,影响电路时延)
执行每个任务的能耗评估性能,可以通过减小电容,降低电压的方式,以减小程序执行任务的能耗
性能(每秒能完成的任务数) = 功率(每秒的能耗) × 能效(单位能耗下能完成任务数)
对于功率受限的系统来说,需要有更高的能效在相同功率下达到更高的性能
对供能受限的系统来说,更高的能效也能更好地延长电池寿命
流水线并不能帮助我们减少完成单个任务的时间,但是能帮助我们提高执行多任务的吞吐率,使得多个任务可以使用不同的资源同时进行,对于工作速率潜在提升倍数是流水线的级数,当我们在填充流水线和排空流水线时,并不能达到最高的提速倍数
流水线的吞吐率受限于最慢的吞吐级
6.2 流水线设计与结构冒险