
《手把手教你设计CPU》阅读笔记
文章平均质量分 52
按照章节做笔记
Bigbeea
欢迎学习交流,个人邮箱1391783671@qq.com,个人微信:liuuhann
展开
-
如何实现快速取指
前言取指是流水线结构中的第一步,处理器需要做什么完全由指令决定,如果一个人做题的时间可以忽略不计,那么如何快速的给他出题并理解题目就成为了限制他做完一套题的主要问题。取指的终极目标就是:以最快的速度且连续不断地从存储器中取出指令供处理器核执行。快和连续不断就是快速取指的两个要点!取指的特点对于非分支跳转指令,在存储器中是顺序存储的,处理器会顺序执行这些指令,如果都是这样的指令,那么取指执行几乎都能做到无等待的运行。但是分支跳转指令就不一样了,如果跳转条件满足,则程序需要跳转到不连续的地址处执行对原创 2022-04-20 10:54:27 · 759 阅读 · 0 评论 -
处理器五级流水线
每次计算必定是一个闭环的过程,有取就会有放回1. 取指(Instruction Fetch)指令取指:将指令从存储器中读取出来的过程。2. 译码(Instruction Decode)指令译码:将取出来的指令翻译的过程,经过译码以后,得到指令需要的操作数寄存器索引。可以通过此索引从通用寄存器组中将操作数读出。3. 执行(Instruction Execute)指令译码后,所需要进行的计算类型都已得知,并且已经从通用寄存器组中读取出所需的操作数,接下来就是指令执行,是指对指令进行真正运算的过程。原创 2022-04-15 18:21:58 · 1540 阅读 · 1 评论 -
CPU的三生三世
1. 前言本专栏为自己的读书笔记2. 一些概念2.1 指令集架构顾名思义:指令的集合,而指令是指处理器进行操作的最小单元。可以理解为计算机硬件和软件之间的一个抽象层。当前Intel和AMD使用的都是X86架构2.2 CISC与RISCCISC复杂指令集,RISC精简指令集。现代指令集都使用RISC,但是由于x86诞生时间早且考虑到向下兼容,x86使用的仍是CISC。不过x86提供了硬件解码器,先将CISC指令翻译成简单的指令序列。2.3 CPU领域之分服务器 x86 由于Intel商原创 2022-04-15 14:57:00 · 327 阅读 · 0 评论 -
E200 assign替换if,case 语句的问题
Verilog中的if-else和case有两个重大缺点不能传播不定态会产生优先级的选择电路而非并行选择电路,从而不利于时序和面积问题一:Verilog的if-else和case不能传播不定态,以如下代码片段为例。if(a) out =in1;else out =in2;假设a为X不定态,按照Verilog语法,将等效于a=0,从而输出值等于in2,而没有将不定态X传输出去,这种情况在仿真阶段会掩盖某些致命的bug然而使用assign,如果a的值等于x,则out的值也会等于x,可以原创 2022-04-15 14:56:08 · 861 阅读 · 0 评论