ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:313.06KB ,
资源ID:16219981      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16219981.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验四微程序控制器设计实验Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验四微程序控制器设计实验Word文档格式.docx

1、Pl信号在微程序中每条机器指令执行结束时为l,用于检测有无中断请求INTQ,而时序发生器用它来实现单条机器指令停机。在DB = 0且DP = 0的前提下,当DZ = 0时,机器连续运行。当DZ = 1时,机器处于单指方式,每次只执行一条机器指令。DB、SKIP、CLK1信号以及W1W4时序信号都是针对硬布线控制器的。W1W4是节拍信号,硬布线控制器执行一条机器指令需要一组W1W4信号。DB(单步)信号就是每次发送一组W信号后停机,可见其功能与DZ类似。执行某些机器指令不需要完整的一组W信号周期,SKIP信号就是用来跳过本指令剩余的W节拍信号的。中断允许标志IE由控制存储器的输出信号INTS将其

2、置1,由控制存储器的输出信号INTC将其置0。在TIMER2内部,控制台产生的中断请求用时钟CLK1进行同步,产生了INTR1。只有在INTE = l时,控制台产生的中断请求脉冲INTR才能起作用,即产生向控制器输出中断信号INTQ,INTQ = INTE & INTR1。2.数据通路微程序控制器是根据数据通路和指令系统来设计的。这里采用的数据通路是在综合前面各实验模块的基础上,又增加程序计数器PC(U18)、地址加法器ALU2(U17)、地址缓冲寄存器R4(U25、U26)和中断地址寄存器IAR(U19)。PC和ALU2各采用一片GAL22V10,两者配合使用,可完成程序地址的存储、增1和加

3、偏移量的功能。R4由两片74HC298组成,带二选一输入端。IAR是一片74HC374,用于中断时保存断点地址。数据通路总体图3.微指令格式与微程序控制器电路根据给定的12条机器指令功能和数据通路总体图的控制信号,采用的微指令格式见下图。微指令字长共35位。其中顺序控制部分10位(后继微地址6位,判别字段4位),操作控制字段25位,各位进行直接控制。微指令格式中,信号名带有后缀“#”的信号为低有效信号,不带有后缀“#”的信号为高有效信号。微指令格式对应微指令格式,微程序控制器的组成如下图所是示:微程序控制器的组成控制存储器采用5片EEPROM 28C64(U8,U9,U10,U11,U12)。

4、28C64的输出是D0D7,分别与引脚11、12、13、15、16、17、18、19相对应,CM0是最低字节,CM4是最高字节。微地址寄存器6位,用一片6D触发器74HC174(U1)组成,带有清零端。两级与门、或门构成微地址转移逻辑,用于产生下一微指令的地址。在每个T1上升沿时刻,新的微指令地址会打入微地址寄存器中,控制存储器随即输出相应的微命令代码。微地址转移逻辑生成下一地址,等下一个T1上升沿时打入微地址寄存器。跳转开关JUMP(J1)是一组6个跳线开关。当用短路子将它们连通时,微地址寄存器AR从本实验系统提供的微程序地址译码电路得到新的微程序地址D0D5。当他们被断开时,用户提供自已的

5、新微程序地址D0D5。这样用户能够使用自己设计的微程序地址译码电路。5片EEPROM的地址A6(引脚4)直接与控制台开关SWC连接,当SWC = 1时,微地址大于或者等于40H,当SWC = 0时,微地址的范围00H3FH。SWC主要用于实现读寄存器堆的功能。微地址转移逻辑的多个输入信号中,INTQ是中断请求,本实验中可以不理会它。SWA、SWB是控制台的两个二进制开关信号,实验台上线已接好。C是进位信号,IR7IR4是机器指令代码,由于本次实验不连接数据通路,这些信号都接到二进制开关K0Kl5上。 三、机器指令与微程序为了在教学中简单明了,本实验仪使用12条机器指令,均为单字长(8位)指令。

6、指令功能与格式名 称助 记 符功 能指 令 格 式 IR7IR6IR5 IR4IR3 IR2 IR1 IR0加法ADD Rd, RsRd+Rs-Rd 0 0RS1 RS0 RD1 RD0减法SUB Rd, RsRd-Rs- 1 RS1乘法MUL Rd, RsRd*Rs-逻辑与AND Rd, RsRd&Rs- 1存数STA Rd, RsRd-Rs RS0 取数LDA Rd, RsRs- 1 无条件转移JMP RsPC 0 X X条件转移JC D若 C = 1 则 PC+D- D3 D2 D1 D0停机STP暂停运行 X X中断返回IRET返回中断 X 开中断INTS允许中断关中断INTC禁止中断

7、指令功能及格式如表所示。指令的高4位提供给微程序控制器,低4位提供给数据通路。应当指出,用以上12条指令来编写实际程序是不够的。好在我们的目的不是程序设计,而主要是为了教学,通过CPU执行一些最简单的程序来掌握微程序控制器的工作原理。上述12条指令的微程序流程设计如下图所示。每条微指令可按前述的微指令格式转换成二进制代码,然后写入5个28C64中。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还设计了以下五个控制台操作微程序:存储器写操作(KWE):按下复位按钮CLR#后,微地址寄存器状态为全零。此时置SWC = 0、SWB =1、SWA = 0,按启动按钮后微指令地址转入

8、27H,从而可对RAM连续进行手动写入。存储器读操作(KRD):按下复位按钮CLR#后,置SWC = 0,SWB = 0,SWA = 1,按启动按钮后微指令地址转入17H,从而可对RAM连续进行读操作。写寄存器操作(KLD):按下复位按钮CLR#后,置SWC = 0,SWB = 1,SWA = 1,按启动按钮后微指令地址转入37H,从而可对寄存器堆中的寄存器连续进行写操作。读寄存器操作(KRR):按下复位按钮CLR#后,置SWC = 1,SWB = 0,SWA = 0,按启动按钮后微指令地址转入47H,从而可对寄存器堆中的寄存器连续进行读操作。启动程序(PR):按下复位按钮CLR#后,置SWC

9、 = 0,SWB = 0,SWA = 0,用数据开关SW7SW0设置内存中程序的首地址,按启动按钮后微指令地址转入07H,然后转到“取指”微指令。应当着重指出,在微指令格式的设计过程中,对数据通路所需的控制信号进行了归并和化简。细心的同学可能已经发现,微程序控制器输出的控制信号远远少于数据通路所需的控制信号。这里提供的微程序流程图是没有经过归并和化简的。仔细研究一下微程序流程图,就会发现有些信号出现的位置完全一样,这样的信号用其中一个信号就可以代表。请看信号LDPC和LDR4,这两个信号都在微程序地址07H,1AH,1FH,26H出现,而在其他的微程序地址都不出现,因此这两个信号产生的逻辑条件

10、是完全一样的。从逻辑意义上看,这两个信号的作用是产生新的PC,完全出现在相同的微指令中是很正常的,因此用LDPC完全可以代替LDR4。还有另一些信号,例如LDDR1和LDDR2,出现的位置基本相同。LDDR2和LDDR1的唯一不同是在地址14H的微指令中,出现了LDDR2信号,但是没有出现LDDR1信号。LDDR1和LDDR2是否也可以归并成一个信号呢?答案是肯定的。微程序流程图中只是指出了在微指令中必须出现的信号,并没有指出出现其他信号行不行,这就要根据具体情况具体分析。在地址14H的微指令中,出现LDDR1信号行不行呢?完全可以。在地址14H出现的LDDR1是一个无用的信号,同时也是一个无

11、害的信号,它的出现完全没有副作用,因此LDDR1和LDDR2可以归并为一个信号LDDR1。根据以上两条原则,我们对下列信号进行了归并和化简:LDIR(CER) 为1时,允许对IR加载,此信号也可用于作为双端口存储器右端口选择CER。LDPC(LDR4) 为l时,允许对程序计数器PC加载,此信号也可用于作为R4的加载允许信号LDR4。LDAR1(LDAR2) 为l时,允许对地址寄存器AR1加载,此信号也可用于作为对地址寄存器AR2加载。LDDR1(LDDR2) 为1时允许对操作数寄存器DR1加载。此信号也可用于作为对操作数寄存器DR2加载。Ml(M2) 当M1 = l时,操作数寄存器DR1从数据

12、总线DBUS接收数据;当M1 = 0时,操作数寄存器DR1从 寄存器堆RF接收数据。此信号也可用于作为操作数寄存器DR2的数据来源选择信号。在对微指令格式进行归并和化简的过程中,我们有意保留了一些信号,没有化简,同学们可以充分发挥创造性,提出更为简单的微指令格式。还要说明的是,为什么微指令格式可以化简,而实验台数据通路的控制信号为什么不进行化简?最主要的原因是前面进行的各个实验的需要,例如LDDR1和LDDR2这两个信号,在做运算器数据通路实验时,是不能设计成一个信号的。还有一个原因是考虑到实验时易于理解,对某些可以归并的信号也没有予以归并。四、实验设备(1)TEC4计算机组成原理实验系统一台

13、(2)直流万用表一只(3)逻辑测试笔一支五、实验任务(1)按实验要求,连接实验台的开关K0K15、按钮开关、时钟信号源和微程序控制器。注意:本次实验只做微程序控制器本身的实验,故微程序控制器输出的微命令信号与执行部件(数据通路)的连线暂不连接。连线完成后应仔细检查一遍,然后才可加上电源。(2)熟悉微指令格式的定义,按此定义将控制台指令微程序的8条微指令按十六进制编码,列于下表。三种控制台指令的功能由SWC,SWB,SWA三个二进制开关的状态来指定(KRD = 001B,KWE = 010B,PR = 000B)。微指令地址微指令编码00H0005C002073CH0405C8003D07H00

14、0541200517H000544003F27H040544003D3FH0409C0003E3DH000140003C3EH0005C8003F单拍(DP)方式执行控制台微程序,读出上述八条微指令,用P字段和微地址指示灯跟踪微指令执行情况。并与上表数据对照。(3)用P3和SWC、SWB、SWA的状态组合,观察验证三种控制台指令KRD、KWE、PR微地址转移逻辑功能的实现。(4)熟悉05H、10H两条微指令的功能和P2测试的状态条件(IR4IR7),用二进制开关设置IR7IR4的不同状态,观察SUB、LDA、STA、JUMP机器指令微地址转移逻辑功能的实现。(用逻辑笔测试有关逻辑电路的电平,分

15、别做出测试记录。)(5)设置IR7IR4的不同组合,用单拍方式执行SUB、LDA、STA、JUMP机器指令微程序,用微地址和P字段指示灯跟踪微程序转移和执行情况。用逻辑笔测试小插座上输出的微命令信号,记录SUB、LDA、STA、JUMP四条机器指令的微命令信号。六、实验步骤(1)接线跳线开关J1用短路子短接。控制器的输入C接K0,IR4接K1,IR5接K2,IR6接K3,IR7接K4,TJI接K5,SKIP接GND。合上电源。按CLR#按钮,便实验系统处于初始状态。(2)用P3和SWC、SWB、SWA的状态组合,观察验证三种控制台指令KWE、KRD、PR微地址转移逻辑功能的实现。将时序电路的输

16、入TJI与控制存储器的输出TJ连接,置DP = l,DB = 0,DZ = 0。选择SWC = 0、SWB = 0、SWA = l,按QD按钮,验证KRD的微地址转移功能;选择SWC = 0、SWB = l、SWA = 0,按QD按钮,验证KWE的微地址转移功能;选择SWC = 0、SWB = 0、SWA =0,按QD按钮,验证PR的微地址转移功能。这里不再详述。(3)熟悉地址05H、10H两条微指令的功能和P2测试的状态条件(IR4IR7),用二进制开关设置IR7IR4的不同状态,观察SUB、LDA、STA、JUMP机器指令微地址转移逻辑功能的实现。105H微指令的功能是根据程序计数器PC从

17、存储器取指令,送往指令寄存器IR,同时进行PC + 1的操作。05H微指令的下一微指令地址是10H。不过,10H只是一个表面的下一微地址,由于该微指令中P2 = 1,因此实际的微指令地址的低4位要根据IR7IR4确定,实际微地址为10H + IR7 IR6 IR5 IR4。2置DP =1,DZ = 0,DB = 0,使实验系统处于单拍状态。选择SWC = 0、SWB = 0、SWA = 0,按CLR#按钮,使实验系统处于初始状态,微地址是00H。令K4(IR7) = 0,K3(IR6) = 0,K2(IR5) = 0,K1(IR4) = 0,相当于ADD指令的操作码。按一次QD按钮,微地址变为

18、07H。按一次QD按钮,微地址变为05H。按一次QD按钮,微地址变为10H。按一次QD按钮,微地址变为3BH。按一次QD按钮,微地址变为34H。按一次QD按钮,微地址变为0FH。3置DP = 1,DZ = 0,DB = 0,使实验系统处于单拍状态。令K4(IR7) = 0,K3(IR6) = 0,K2(IR5) = 0,K1(IR4) = 1,相当于SUB指令的操作码。按一次QD按钮,微地址变为11H。按一次QD按钮,微地址变为3AH。4置DP = l,DZ = 0,DB = 0,使实验系统处于单拍状态。令K4(IR7) = 0,K3(IR6) = l,K2(IR5) = 0,K1(IR4)

19、= 0,相当于STA指令的操作码。按一次QD按钮,微地址变为14H。按一次QD按钮,微地址变为35H。5置DP = l,DZ = 0,DB = 0,使实验系统处于单拍状态。令K4(IR7) = 0,K3(IR6) = 1,K2(IR5) = 0,K1(IR4) = 1,相当于LDA指令的操作码。按一次QD按钮,微地址变为15H。按一次QD按钮,微地址变为36H。6置DP = l,DZ = 0,DB = 0,使实验系统处于单拍状态。令K4(IR7) = l,K3(IR6) = 0,K2(IR5) = 0,K1(IR4) = 0,相当于JMP指令的操作码。按一次QD按钮,微地址变为18H。附取机器指令周期及ADD指令执行周期微程序代码当前微地址TJS2S1S0M1LDRWCE#AUBUSRSSIAR3AR1INCI4PADDNP3 P2P1 P0A5 A4A3 A2A1 A0000001000000111070000000101050100010000101110113B010110100340011110F0010

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1