模型机综合设计之一-加减法指令的实现.doc_第1页
模型机综合设计之一-加减法指令的实现.doc_第2页
模型机综合设计之一-加减法指令的实现.doc_第3页
模型机综合设计之一-加减法指令的实现.doc_第4页
模型机综合设计之一-加减法指令的实现.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模型机综合设计之一加减法指令的实现一、设计目的在HKCPT中,输入一段小程序,并且编译、加载到实验平台中,实现普通的加、减法指令。二、设计原理在实验系统中,模型机的运行是在微程序的控制下进行的,可实现特定指令的功能。在本实验平台中,模型机从内存中读出、解释、执行机器指令将由微指令和与之相配合的时序来完成,即1条机器指令对应1个微程序。三、 逻辑框图ALUDR1DR2累加器AR0ALU-ORA-OPCCKPC-OIR2CKIR2-ORAM程序指令寄存器微程序存储器指令译码163*2微地址寄存器R1R2R3四、 指令系统与格式分析1根据实验指导,系统包括以下几条指令:MOV A,#DATA ;(数据传送类指令)将立即数从内存读出写入累加器AMOV Ri,#DATA ;(数据传送类指令)将立即数从内存单元写入寄存器RiADD A,Ri ;(算术运算类指令)将寄存器的内容与累加器A相加并将结果写入ASUB A,Ri ;(算术运算类指令)将累加器A的内容减去寄存器的值并将结果写入ASTA ADDR ;(存储器操作类指令)将A的内容写入RAM地址ADDR2由于在本系统内采用的是8位数据总线,和8位数据总线方式,所以在指令系统中存在单字节指令,和双字节指令。单字节指令有MOV A,Ri 、ADD A,Ri、HALT等。双字节指令有MOV Ri,ADDR、MOV A,#DATA、MOV Ri,#DATA等。(下为双字节指令示意图)例如,双字节指令: STA ADDR (A)-ADDR 第1字节 第2字节I7I6I5I4 I3I2I1I0A7A6A5A4A3A2A1A0操操作码 操作数地址五、 微程序的设计与实现在本实验平台的硬件设计中,采用24位微指令,若微指令采用全水平不编码纯控制场的格式,那么至多有24个微操作控制信号,可由微代码直接实现。如果采用多组编码译码,那么24位微代码通过二进制译码可实现2的n次幂个互斥的微操作控制信号。由于模型机指令系统规模较小,功能也不太复杂,所以采用全水平不编码纯控制场的微指令格式。在模型机中,用指令操作码的高4位作为核心扩展成8位的微程序入口地址MD0MD7,这种方法称为“按操作码散转”,如下表所示:按操作码换散指令操作码微程序首地址MD7,MD6I7I6I5I4MD1、MD0MD7MD0000001003H000011007H00010100BH00011100FH001001013H001011017H00110101BH00111101FH010001023H010011027H01010102BH01011102FH011001033H011011037H01110103BH01111103FH每条指令由不超过4条的微指令组成,那么可根据下表组成每条微程序的首地址。微程序首地址形成MD7MD6MD5MD4MD3MD2MD1MD000I7I6I5I411微指令的运行顺序为下地址确定法,即采用计数增量方法,每条微指令执行过之后微地址自动加1,指向下一条微指令地址。微地址寄存器由2片74LS161组成,在模型机停止状态下,微地址被清零。当试验平台开始运行时,微地址从OOH开始运行。且OOH放置一条取指指令,根据程序开始地址从内存中读出第一条指令。六、设计实验平台运行中时序安排本实验模型机已确定了指令系统,微指令采用全水平不编码纯控制场的格式,微程序的入口地址采用微操作码散转换方式,微地址采用计数增量方式,所以可确定模型机中时序单元所产生的每一拍的作用。本实验中为了让实验者更好地观察实验的各个中间过程各寄存器的值,由监控单元产生了4个脉冲信号。4个脉冲信号组成一个微指令周期,为不同地寄存器提供工作脉冲。微指令波形如下图所示:PLS4PLS3PLS2PLS1SIGNPLS1微地址寄存器的工作脉冲,用来设置微程序的首地址及微地址加1。PLS2PC计数器的工作脉冲,根据微指令的控制实现PC计数器加1和重置PC计数器加1和重置PC计数等功能。PLS3 把24微指令打入3片微指令锁存器。PLS4 把当前总线上的数据打入微指令选通的寄存器中。实际操作时的截图:七、指令执行流程1MOV A,#DATA 该指令的功能为DATAA,须执行如下微操作: (PC)+1PC ;PC+1,为取下条指令字节准备RAMODBIDBA ;从内存单元中读出DATA值送入累加器A (PC)LABOAB ;PC计数器内容作访问内存地址 (RAM)ODBIDBIR1 ;从内存该地址单元读出指令字节送指令寄存器IR1MOV A,#DATA由2个微指令周期完成指令执行:1)PC+1为取下条指令字节准备,从内存读出数据送入累加器A。 2)取指微指令,从内存读出指令送指令寄存器。2MOV Ri,#DATA 该指令的功能为DATARi,需执行如下微操作: (PC)+1PC ;PC+1,为取下条指令字节准备(RAM)ODBIDBRi;从内存通过数据总线中读出数据送入Ri (PC)LABOAB ;PC计数器内容作访问内存地址 (RAM)ODBIDBIR1 ;从内存该地址单元读出指令字节送指令寄存器IR1MOV Ri,#DATA由2个微指令周期完成指令执行: 1)PC+1为取下条指令字节准备,从内存通过数据总线中读出数据送入寄存器Ri。 2)取指微指令,从内存读出指令送指令寄存器。3ADD A,Ri 该指令的功能为(A)+(Ri)A,需执行如下微操作: (PC)+1PC ;PC+1,为取下条指令字节准备 (A)DR1 ;累加器A内容送ALU (Ri)DR2 ;寄存器Ri内容送ALU (A)+(Ri) IDBA ;使ALU执行加法,结果经IDB最后送入累加器A CCY ;据加法结果置进位标志CY (PC)LABOAB ;PC计数器内容作访问内存地址 (RAM)ODBIDBIR1 ;从内存该地址单元读出指令字节送指令寄存器IR1 ADD A,Ri由4个微指令周期完成指令执行: 1)PC+1为取下条指令字节准备,累加器A内容送ALU的DR1锁存器。 2)寄存器Ri内容送ALU的DR2锁存器。 3)ALU将计算结果送累加器A,据加法结果置进位标志CY。 4)取指微指令,从内存读出指令送指令寄存器。4SUB A,Ri 该指令的功能为(A)-(Ri)A,需执行如下微操作: (PC)+1PC ;PC+1,为取下条指令字节准备 (A)DR1 ;累加器A内容送ALU (Ri)DR2 ;寄存器Ri内容送ALU (A)-(Ri) IDBA ;使ALU执行减法,结果经IDB最后送入累加器A CCY ;据减法结果置进位标志CY (PC)LABOAB ;PC计数器内容作访问内存地址 (RAM)ODBIDBIR1 ;从内存该地址单元读出指令字节送指令寄存器IR1 SUB A,Ri由4个微指令周期完成指令执行: 1)PC+1为取下条指令字节准备,累加器A内容送ALU的DR1锁存器。 2)寄存器Ri内容送ALU的DR2锁存器。 3)ALU将计算结果送累加器A,据减法结果置进位标志CY。 4)取指微指令,从内存读出指令送指令寄存器。5STA ADDR 该指令的功能为(A)ADDR,需执行如下微操作: (PC)+1PC ;PC+1,为取下条指令字节准备 RAMIDBIR2 ;由内存通过数据总线将ADDR地址送地址寄存器IR2 IR2IABOAB ;将IR2的地址送到当前的内存 ARAM ;将累加器A的内容写入RAM地址ADDR STA ADDR由3个微指令周期完成指令执行: 1)PC+1为取下条指令字节准备,置当前内存单元地址为ADDR。 2)累加器A的内容送RAM的ADDR地址单元。 3)取指微指令,从内存读出指令送指令寄存器。八、 源程序,指令代码及微程序MOV A,#55 MOV R0,#44 ADD A,R0 MOV R1,#33 SUB A,R1 STA 20 HALT内存地址源程序指令代码微程序位: 23 22 21 20 。 2 1微指令:MLD WM RM EIRI。S1 S0(16进制)00HMOV A,#550101 1111DDFBFF01H4DFFFF02HMOV R0,#440110 1100DDBFFF03H4DFFFF04HADD A,R00000 1100FFFCF905HFF7F7906HFFFBA907H4DFFFF08HMOV R1,#330110 1101DDBFFF09H4DFFFF0AHSUB A,R10001 1101FFFCD60BHFE7F560CHFFFB860DH4DFFFF0EHSTA 201000 1111D5FFF11HBBFDFF12HHALT1111 1111FFDFFF九、 上机调试 十、总结本次实验难度较大,认真阅读了老师给的指导书才把实验做出来。不足的地方挺多,时序分析和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论