问题引出
在计算机组成原理中,引入了指令流水的概念。而指令流水提高了计算机的速度,但也存在三个基本问题,
其中一个是数据发生冲突,即**数据相关**
概念
解决的方案其中之一就是设置**专门通路**,即**旁路技术**
旁路技术指的是:不必待某条指令的执行结果送回到寄存器后,再从寄存器中取出结果。作为下一条指令的源操
作数,而是直接将执行结果送到其他指令所需要的地方
结合案例
比如有两条指令:
ADD R1,R2,R3 ; (R2) + (R3) -> R1
SUB R4,R1,R5 ; (R1) - (R5) -> R4
可以看出两条指令中都有R1,而R1在第一条是写入,第二条中是写出。非流水线时是直接顺序执行,没有任何冲突。但是在流水线,如果不控制好,就会产生不一样的结果。
由旁路技术概念可以知道,在输出和输入之间有专门的通道可以执行结果到输入的操作。解决了需要等待操作完成的问题。
参考文献:
[1]: 计算机组成原理 第2版 唐朔飞