作者回复: 易儿易同学,
你说得很好啊!👍
作者回复: 回答正确!👍
作者回复: 👍能够前后联系起来,很好啊
作者回复: 这个和多线程多进程没有太大关系,那个更多是操作系统调度的问题,这个是CPU在硬件层面的实现。
作者回复: Single-Cycle Processor就可以在一个时钟周期完成一条指令呀。虽然Single-Cycle Processor已经并不在现代CPU设计中使用了,但是并不代表这个是不可行的啊。
作者回复: 喜欢吃鱼同学,你好
准确地说,每一个流水线级的时间都是一个时钟周期,但是其中实际操作的时间,可能短于一个时钟周期。比如我们译码器其实就是一个组合逻辑电路,门延迟很低,就不需要一个完整的时钟周期就能完成自己的任务。那么在这个之后,它其实是在“等待”。
作者回复: 没错,这是一个很好的角度,从吞吐率的角度来讲,如果没有superscalar这样的指令集并行,那么流水线没有遇到任何冒险问题的情况下。按吞吐率算下来相当于一个时钟周期完成了一条指令。
作者回复: softpower2018同学,你好,
其实现代流水线下的CPU,一个时钟周期已经不能执行完一条指令了。因为一般来说,取指令就要一个时钟钟周期……
作者回复: 一个流水线级就需要一个时钟周期,所以即使是无条件跳转这样的简单指令,也需要三个时钟周期。
是的,可能特定的流水线级的操作需要的时间很少,那么其他时间本质上是在“等待”。
作者回复: 谢谢支持👍