某计算机字长为16位,采用16位定长指令字结构,部分数据通路结构如图A-2所示,图中所有控制信号为1时表示有效、为O时表示无效。例如,控制信号MDRinE为1表示允许数据从DB打入MDR,MDRin为l表示允许数据从内总线打入MDR。假设MAR的输出一直处

admin2014-12-08  21

问题 某计算机字长为16位,采用16位定长指令字结构,部分数据通路结构如图A-2所示,图中所有控制信号为1时表示有效、为O时表示无效。例如,控制信号MDRinE为1表示允许数据从DB打入MDR,MDRin为l表示允许数据从内总线打入MDR。假设MAR的输出一直处于使能状态。加法指令“ADD(R1),R0”的功能为(R0)+((R1))一(R1),即将R0中的数据与R1的内容所指主存单元的数据相加,并将结果送入R1的内容所指主存单元中保存。

表A-1给出了上述指令取指和译码阶段每个节拍(时钟周期)的功能和有效控制信号,请按表中描述方式用表格列出指令执行阶段每个节拍的功能和有效控制信号。

选项

答案一条指令的执行过程通常由取指、译码和执行3个步骤完成,本题中取指用3个节拍、译码用1个节拍,执行加法运算并把结果写入主存如何完成呢?包括划分执行步骤、确定完成的功能、要提供的控制信号,这是本题要测试的内容。为回答这个问题,首先要看清图A-2中给出的部件组成情况和信息传送的路径。要完成的功能是(R0)+((R1))→(R1),从图A-2中看到: 1)R0、Rl都有送自己内容到内总线的路径,控制信号分别是R00ut和Rlout。 2)ALu加运算,2个数据由工作寄存器A和内总线提供,控制信号是Add;A只接收内总线的内容,控制信号是Ain;结果需存AC,控制信号是ACin:AC的内容可送内总线,控制信号是ACout。 3)PC可接收内总线的内容,还可增1,控制信号是PCin和PC+1,PC的内容可送内总线,控制信号是PCout。 4)指令寄存器IR可接收内总线的内容,控制信号是IRin。 5)读/写存储器时,地址由MAR经AB提供,MAR只接收总线上的信息,控制信号是MARin。 6)读存储器,提供读命令MemR,并通过DB送入MDR,控制信号是MDRinE;MDR的内容可送入总线,控制信号是MDRout。 7)写存储器,提供写命令MemW,数据由MDR通过DB送到存储器的数据引脚,控制信号是MDRoute.然后是划分执行步骤、确定每步完成的功能、需要提供的控制信号。这是由指令应完成的功能、计算机硬件的实际组成情况和信息传送的可用路径共同决定的,基本原则是步骤越少越好。硬件电路要能支持,可以有多种方案,解题时应参照以给出的答题格式,即取指和译码阶段的表A-1的内容,但不必把表已有的内容再抄一遍。划分指令执行步骤、确定每步完成的功能、给出需要提供的控制信号:请注意,(R0)+((R1))表示:R0寄存器的内容与R1作地址从主存中读出来的数据完成加法运算;而一(R1)表示把R1的内容作为主存储器的地址完成写主存操作。为防止出现误解,题中还特地对此作了文字说明。这条指令的功能是先到主存储器取一个数,之后运算,再将结果写回主存储器。1)执行相加运算,需把存储器中的数据读出,为此首先送地址,将R1的内容送MAR,控制信号是Rlout、MARin。2)启动读主存操作,读出的内容送入MDR,控制信号是MemR、MDRinE。还可同时把R0的内容经内总线送入A,用到的控制信号是R00ut、Ain。3)执行加法运算,即A的内容与MDR的内容相加,结果保存到AC,控制信号是MDRout、Add、Acin。4)要把AC的内容写入主存,由于R1的内容已经在MAR中,地址已经有了,但需要把写入的数据(已经在AC中)经内总线送入MDR,控制信号是ACout、MDRin。5)给m写主存的命令,把MDR的内容经DB送存储器的数据线引脚,执行写操作,控制信号是MDRoutE、MemW。这几个步骤是有先后次序的,前面的完成了,下一步才可以执行,也保证了不会产生硬件线路的冲突。请注意,使用最为频繁的是内总线,它在任何时刻只能接收一个输入数据,并且向内总线发送信息的电路只能以三态门器件连接到内总线,5个向内总线发送信息的控制信号(ACout、PCout、R00ut、R10ut、MDRout)最多只能有一个为1,其他4个必须全为0,或者5个全为0。仔细看一下,发现可以把第2)个步骤的操作划分到两个步骤中完成。一个步骤中安排MDR接收从存储器中读出的内容,到另外一个步骤实现R0的内容送入A,这多用了一个操作步骤,指令的执行速度会变慢。有些解题者在写存储器之前,还会再执行一次把R1的内容送MAR,尽管无此必要,但不属于原理上的错误。当然还可以有其他的设计结果.解题时这些叙述内容不必写出来(这里写出这些内容是希望帮助大家领会本题要测试的知识点和指令的执行过程),直接按照已经给出的表格的形式、按照提供的填写办法把设计的表格及其内容填好就可以了。请注意,题目表格内容(告诉你答题的格式和答题内容的表达方式)与你答题的表格内容合在一起才是这条指令的完整的执行过程,千万不要产生任何错觉。参考答案一见表A-4。 [*] “A一(R0)”也可在C7:“AC一(MDR)+(A)”之前单列的一个时钟周期内执行。参考答案二见表A-5。 [*]

解析
转载请注明原文地址:https://kaotiyun.com/show/edxi777K
0

最新回复(0)