问答题X 纠错假定有一个程序的指令序列为“lw,add,lw,add,…”。add指令仅依赖它前面的lw指令,而lw指令也仅依赖它前面的add指令,寄存器写口和寄存器读口分别在一个时钟周期的前、后半个周期内独立工作。请问:

参考答案:

因为lw指令和add指令之间存在一个load-use数据冒险,所以每个lw指令和add指令之间要有一次流水线阻塞。而add指令和lw指令之间的数据冒险可通过数据转发解决。即:CPI为1.5

查答案就用赞题库小程序 还有拍照搜题 语音搜题 快来试试吧
无需下载 立即使用

你可能喜欢

问答题

以下指令序列中,哪些指令对发生数据相关?假定采用“取指、译码/取数、执行、访存、写回”五段流水线方式,那么不用“转发”技术的话,需要在发生数据相关的指令前加入几条nop指令才能使这段程序避免数据冒险?如果采用“转发”是否可以完全解决数据冒险?不行的话,需要在发生数据相关的指令前加入几条nop指令才能使这段程序不发生数据冒险?

参考答案:发生数据相关的有:第1和2间关于$s3、第2和3间关于$t2、第2和4间关于$t2、第3和4间关于$t1。不进行&ldq...

问答题

假定最复杂的一条指令所用的组合逻辑分成6块,依次为A~F,其延迟分别为80ps、30ps、60ps、50ps、70ps、10ps。在这些组合逻辑块之间插入必要的流水段寄存器就可实现相应的指令流水线,寄存器延迟为20ps。理想情况下,以下各种方式所得到的时钟周期、指令吞吐率和指令执行时间各是多少?应该在哪里插入流水线寄存器?吞吐量最大的流水线

参考答案:因为所有组合逻辑块中最长延时为80ps,所以,达到最大可能吞吐率的划分应该是以一个流水段延时为80ps+20ps来进行,...

问答题

假定最复杂的一条指令所用的组合逻辑分成6块,依次为A~F,其延迟分别为80ps、30ps、60ps、50ps、70ps、10ps。在这些组合逻辑块之间插入必要的流水段寄存器就可实现相应的指令流水线,寄存器延迟为20ps。理想情况下,以下各种方式所得到的时钟周期、指令吞吐率和指令执行时间各是多少?应该在哪里插入流水线寄存器?插入三个流水段寄存器,得到一个四级流水线

参考答案:三个流水段寄存器分别插在A和B、C和D、D和E之间,这样第一个流水段的组合逻辑延时为80ps,第二段时延为30+60=9...

问答题

假定最复杂的一条指令所用的组合逻辑分成6块,依次为A~F,其延迟分别为80ps、30ps、60ps、50ps、70ps、10ps。在这些组合逻辑块之间插入必要的流水段寄存器就可实现相应的指令流水线,寄存器延迟为20ps。理想情况下,以下各种方式所得到的时钟周期、指令吞吐率和指令执行时间各是多少?应该在哪里插入流水线寄存器?插入两个流水段寄存器,得到一个三级流水线

参考答案:两个流水段寄存器分别插在B和C、D和E之间,这样第一个流水段的组合逻辑延时为80+30=110ps,中间第二段的时延为6...

问答题

假定最复杂的一条指令所用的组合逻辑分成6块,依次为A~F,其延迟分别为80ps、30ps、60ps、50ps、70ps、10ps。在这些组合逻辑块之间插入必要的流水段寄存器就可实现相应的指令流水线,寄存器延迟为20ps。理想情况下,以下各种方式所得到的时钟周期、指令吞吐率和指令执行时间各是多少?应该在哪里插入流水线寄存器?插入一个流水段寄存器,得到一个两级流水线

参考答案:两级流水线的平衡点在C和D之间,其前面一个流水段的组合逻辑延时为80+30+60=170ps,后面一个流水段的组合逻辑延...

问答题

假定某计算机工程师想设计一个新CPU,一个典型程序的核心模块有一百万条指令,每条指令执行时间为100ps。请问:实际流水线并不是理想的,流水段间数据传送会有额外开销。这些开销是否会影响指令执行时间(Instructionlatency)和指令吞吐率(Instructionthroughput)?

参考答案:流水线段之间数据的传递产生的额外开销,使得一条指令的执行时间被延长,即影响Instructionlatency;同时也拉...

问答题

假定某计算机工程师想设计一个新CPU,一个典型程序的核心模块有一百万条指令,每条指令执行时间为100ps。请问:若新CPU是一个20级流水线处理器,执行上述同样的程序,理想情况下,它比非流水线处理器快多少?

参考答案:若在一个20级流水线的处理器上执行,理想情况下,每个时钟周期为:100/20=5ps,所以,程序执行时间约为5x106=...

问答题

假定某计算机工程师想设计一个新CPU,一个典型程序的核心模块有一百万条指令,每条指令执行时间为100ps。请问:在非流水线处理器上执行该程序需要花多长时间?

参考答案:非流水线处理器上执行该程序的时间为:100psx106=100μs

问答题

假定有一条MIPS伪指令“Bcmp$t1,$t2,$t3”,其功能是实现对两个主存块数据的比较,$t1和$t2中分别存放两个主存块的首地址,$t3中存放数据块的长度,每个数据占四个字节,若所有数据都相等,则将0置入$t1;否则,将第一次出现不相等时的地址分别置入$t1和$t2并结束比较。若$t4和$t5是两个空闲寄存器,请给出实现该伪指令的指令序列。

参考答案:

实现伪指令“bcmp$t1,$t2,$t3”的指令序列如下。

问答题

对于除数为0、溢出、无效指令操作码、无效指令地址、无效数据地址、缺页、访问越权和外部中断,CPU在哪些指令的哪个时钟周期能分别检测到这些异常或中断?

参考答案:“除数为0”异常在取数/译码(ID/Reg)周期进行检测“溢出”异常在R...
赞题库

赞题库-搜题找答案

(已有500万+用户使用)


  • 历年真题

  • 章节练习

  • 每日一练

  • 高频考题

  • 错题收藏

  • 在线模考

  • 提分密卷

  • 模拟试题

无需下载 立即使用

版权所有©考试资料网(ppkao.com)All Rights Reserved