一、引子 1、流水线设计需要解决的三大冒险 过去两讲,我为你讲解了流水线设计CPU所需要的基本概念。接下来,我们一起来看看,要想通过流水线设计来提升CPU的吞吐率,我们需要冒哪些风险。 任何一本讲解CPU的流水线设计的教科书,都会提到流水线设计需要解决的三大冒险,分别是 结构冒险 ...
一 引子 上一讲里呢,我进一步为你讲解了CPU里的 黑科技 ,分别是超标量 Superscalar 技术和超长指令字 VLIW 技术。 超标量 Superscalar 技术能够让取指令以及指令译码也并行进行 在编译的过程,超长指令字 VLIW 技术可以搞定指令先后的依赖关系,使得一次可以取一个指令包。 不过,CPU里的各种神奇的优化我们还远远没有说完。这一讲里,我就带你一起来看看,专栏里最后两个提 ...
2019-09-01 13:05 0 399 推荐指数:
一、引子 1、流水线设计需要解决的三大冒险 过去两讲,我为你讲解了流水线设计CPU所需要的基本概念。接下来,我们一起来看看,要想通过流水线设计来提升CPU的吞吐率,我们需要冒哪些风险。 任何一本讲解CPU的流水线设计的教科书,都会提到流水线设计需要解决的三大冒险,分别是 结构冒险 ...
一、引子 1、解决不同指令之间的数据依赖问题。 上一讲,我为你讲解了结构冒险和数据冒险,以及应对这两种冒险的两个解决方案。一种方案是增加资源,通过添加指令缓存和数据缓存,让我们对于指令和数据的访问可以同时进行。这个办法帮助CPU解决了取指令和访问数据之间的资源冲突。另一种方案是直接进行等待 ...
一、引子 1、指令 2、计算 然而,光知道这两部分还不能算是真正揭开了CPU的秘密,只有把“指令”和“计算”这两部分功能连通起来,我们才能构成一个真正完整的CPU。这一讲,我们就在前面知识的基础上,来看一个完整的CPU是怎么运转起来的。 二、指令周期 1、计算机每执行一条指令 ...
一、程序装载面临的挑战 1、装载需要满足的条件 1、可执行程序加载后占用的内存空间应该是连续的 2、我们需要同时加载很多个程序,并且不能让程序自己规定在内存中加载的位置 2、如何解决以上问 ...
一、从信使发展史 1、 公元前490年是如何传信 2、中国古代的军队是如何传信 3、灯塔烽火台是如何传信的? 4、以上都存在的问题 二、电报 1、电报机的两种信号 ...
叫做超大规模集成电路,这些电路,实际上都是一个个晶体管组合而成的,CPU在计算、其实就是让晶体管里面的开关不断 ...
一、CPU 是如何执行指令的? 1、软件程序员的理解 写好的代码变成了指令之后、是一条条顺序执行的就可以了 2、CPU的逻辑组成 3、寄存器 N 个触发器或者锁存器,就可以组成一个 N 位(Bit)的寄存器,能够保存 N 位的数据。比方说,我们用的 64 位 Intel 服务器 ...
一、为什么需要动态链接库 1、链接在生活中的应用 链接 其实有点像我们日常生活中的标准化、模块化生产、我们有一个可以生产标准螺帽的生产线,就可以生产很多个不同的螺帽,只有需要螺帽,我们就可以通过链 ...