首页 > 试题广场 >

下面有关指令流水线的叙述中,错误的是( )。

[单选题]
下面有关指令流水线的叙述中,错误的是(  )。
  • 流水段数按同一个流水线中最复杂指令的功能来确定
  • 每个流水段的时间相同,等于一个CPU时钟的宽度
  • 每个时钟都会有一条指令执行完
  • 流水线方式不能使一条指令的执行时间缩短,但能使整个程序的执行时间缩短
正确答案:C
选项A:流水线方式下,一条指令的执行过程被分成了若干个操作子过程。由于每条指令所完成的功能不同,所包含的操作过程就不同。有的指令完成寄存器的内容的传送;有的是简单的加/减运算;还有的是复杂的乘/除运算。这些操作所花的时间相差很大,所以,这些指令如果都在同一个流水线中执行的话,就必须按最复杂的指令来设计流水线的流水段个数。

选项B:流水线中指令执行的每个子过程由独立的功能部件来完成,以最复杂的子过程所花时间为准设计时钟周期。这样,使得每个流水段的时间都等于CPU时钟的宽度。

选项C:理想情况下,经过若干时钟周期后,流水线能在每个周期内执行完一条指令。但是,当程序中出现以下情况时,流水线被破坏:(1) 当有多条指令的不同阶段都要用到同一个功能部件时(资源冲突),后面指令要延时执行;(2)当程序的执行流程发生改变时(控制相关),原来按顺序取出的指令无效;(3)当后面指令的操作数是前面指令的运行结果时(数据相关),后面指令要延时执行。所以,并不是任何时候每个流水阶段都会有一条指令执行完。

选项D:对于每条指令来说,它在流水线中还是要经过若干子过程才能完成,所以一条指令的执行时间并没有变短。但整个程序的执行时间大大缩短了。

发表于 2022-04-09 10:45:44 回复(0)