• 内容讲解

现代流水计算机系统的组成,包括存储器体系和流水CPU 两大部分,如图5-19所示。

515.gif

1.存储器体系

为了解决存储器的速度匹配问题,使存储器的存取时间与流水线其他各过程段的速度相匹配,一般都采用多模块交叉存储器。在现有的流水线计算机中,存储器几乎都是采用交叉存取的方式工作的。

另一方面,高速缓存Cache的普遍采用,也大大提高了CPU对存储器的访问速度。

2.流水CPU

CPU内部通常按流水线方式进行组织,由指令部件、指令队列、执行部件3部分组成,这3个功能部件可以组成一个3级流水线。

1)指令部件

指令部件本身又构成一个流水线,即指令流水线,由取指令、指令译码、执行指令、访存取数、结果写回等几个过程段组成。

2)指令队列

指令队列是一个先进先出(FIFO)的寄存器栈,用于存放经过译码的指令和取来的操作数,同时也是由若干个过程段组成的流水线。

3)执行部件

执行部件可以具有多个算术逻辑运算部件,这些部件本身又用流水线方式构成。

由图5-19可见,当执行部件正在执行第I条指令时,指令队列中存放着I+1,I+2,…,I+k条指令,而与此同时,指令部件正在取第I+k+1条指令。

执行段的速度匹配问题,通常采用并行的运算部件以及部件流水线的方式来解决。一般采用的方法包括:

①将执行部件分为定点执行部件和浮点执行部件两个可并行执行的部分,分别处理定点运算指令和浮点运算指令;

②在浮点执行部件中,包括浮点加法部件和浮点乘/除法部件,它们可以同时执行不同的指令;

③浮点运算部件均以流水线方式工作。