计算机组成原理课程设计,跳转,转移指令的实现_第1页
计算机组成原理课程设计,跳转,转移指令的实现_第2页
计算机组成原理课程设计,跳转,转移指令的实现_第3页
计算机组成原理课程设计,跳转,转移指令的实现_第4页
计算机组成原理课程设计,跳转,转移指令的实现_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、课程设计的题目基本模型机的设计——跳转、转移指令的实现2、设计的目的及设计原理课程设计目的运用所学的知识,通过使用软件HKCPT掌握各个单元模块的工作原理将其组成完整的系统,并了解程序编译、加载的过程,以及通过微单步、单拍调试理解模型机中的数据流向。此次课程设计主要目的有两个:其一,掌握各个单元模块的工作的原理,进一步将其组成完整的系统,构造一台基本的模型计算机;其二,是学会规划读/写内存、寄存器、数值计算等功能,并且编写相应的微程序,在具体上机的过程中,高度各个模块单元以便掌握整机的概念。课程设计原理计算机中CPU是核心,它的实现是通过指令和微指令实现的,指令对应一段微程序

而且微程序是用微指令来实现的,微指令是有几个微命令组成,从而能够保证指令的实现。在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和之配合的微指令来实现的,即每条机器指令都对应一个微程序。在各个模块实验中,各模块的控制信号都是由实验者手动模拟产生的。而在真正的实验系统中模型机的运行是在微程序的控制下进行的,可实现指定的指令功能。在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和与之相配合的时序来完成,即1条机器指令对应一个微程序。部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而这次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。本实验采用五条机器指令:SUB(减法)、ADD(二进制加法)、STA(存数)、MOV(赋值)、JMP(无条件转移)、JC、RRC(循环右移)。3、根据设计要求给出模型机的逻辑框图其中运算器由2片74L181构成8位字长的ALU单元。2片74LS374作为2个数据锁存器(DR1、DR2),8芯插座ALU-IN作为数据输入端,可通过短8芯扁平电缆,把数据输入端连接到数据总线上。数据输入锁存器DR1的EDR1为低电平,并且D1CK有上升沿时,那来自数据总线的数据打入锁存器DR1。同样使EDR2为低电平、D2CK有上升沿时把数据总线上的数据打入数据锁存器DR2。模型机逻辑框图如下:

4、设计指令系统,并分析指令格式4.1指令系统此次实验涉及的指令有以下几种:MOVR1,#Data将立即数Data送到寄存器A中MOVR0,#Data将立即数Data送到寄存器RI中MOVA,#Data将立即数Data送到寄存器A中JMPAddr跳转到Addr处开始执行JCAddr如果有进位(借位)跳转到Addr处开始执行RLCA带进循环左移一位AddA,R0将寄存器R0中的数据加到累加器A中SubA,R1将累加器A中的数据减去寄存器R1中的数据STAAddr将寄存器中内容写入存储器中HALT停机指令指令系统如下表:指令助记符指令功能指令编码微周期微操作取指微指令TOPCTAbusTRAMRAMTDbusTIRlMOVR1,#DataDataTRI6DTOT1RAMTDbusTRI取指微指令MOVRO,#DataDataTRO6CTOT1RAMTDbusTRO取指微指令MOVA,#DataDataTA5FTOT1RAMTDbusTA取指微指令

JMPAddrAddrTPCBFTORAMTDbusTlRIT1IR1TPCT2取微指令JC AddrAddrTPCB7TORAMTDUBSTIR1T1IR1TPCT2取微指令RLCAA<<1AFTOA<<1T1取微指令AddA,R0(A+RO)TA0CTOATDR1T1R0TDR2T2ALUTAT3取微指令SubA,R1(A-RO)TA1DTOATDR1TALUT1R0TDR2TALUT2ALUTAT3取微指令STAaddr(A)faddr8FTORAMT数据总线TIR2T1IR2T地址总线,T2ATRAMT3取指微指令HALT停机FFTO停机指格一般指令由操作码和操作码组成,如下所示:操作码地址码此实验所涉及指令的格式如下:MOV指令采用双字节指令,其格式如下I7I6I5I4I3I2I1I0第1字节:操作码及Ri

第2字节:DataD7D6D5D4D3D2D1D0JMP指令采用双字节指令,第2字节:DataD7D6D5D4D3D2D1D0JMP指令采用双字节指令,其格式如下:第1字节:操作码I7I6I5I413I211I0第2字节:AddrA7A6A5A4A3A2A1A0第1字节:操作码I7I6I5I413I211I0第2字节:AddrA7A6A5A4A3A2A1A0JC指令采用双字节指令,其格式如下:RLC指令采用单字节指令,其格式如下:第1字节:操作码I7I6I5I413I211I0ADD指令采用单字节指令,其格式如下:第1字节:操作码I7I6I5I413I211I0SUB指令采用单字节指令,其格式如下:第1字节:操作码及RiI7I6I5I413I2I1I0STA取数据指令,其格式如下:第1字节:操作码DataI7I6I5I4I3I2I1I0第2字节:AddrA7A8A5A4A3A2A1A0I7I6I5I4I3I2I1I0停机指令(HALT),其格式如下:第1字节:操作码 |17|16 |15 |14 |13 |12 |11 |105.微程序的设计及其实现的方法

5.1微程序入口地址的形成在本实验平台的硬件设计中,采用24位微指令,若微指令采用全水平不编码纯控制场的格式,那么至少有24个微操作控制信号,可由微代码直接实现。如果采用多组编码译码,那么24位微代码通过二进制可实现2n个互斥微操作控制信号。按操作码散转指令操作码微程序首地址MD7、MD6I7I61514MD1、MD0MD7〜MD0000001003H000011007H00010100BH00011100FH001001013H001011017H00110101BH00111101FH010001023H010011027H01010102BH01011102FH011001033H011011037H01110103BH01111103FH每条指令由不超过4条的微指令组成,那么可根据下表组成每条微程序的首地址。微程序首地址形成MD7MD6MD5MD4MD3MD2MD1MD0001716151411微指令格式的设计一条微指令的一般格式是如下图:判别测试下地址操作控制顺序控制后续微地址的产生方法由于本系统中指令系统规模不大,功能较简单,微指令采用全水平、不编码的方式,每一个微操作控制信号由一位微代码来表示,24位微代码至少可表示24个不同的微操作控制信号。用增量方式来控制微代码的运行顺序,每一条指令的微程序连续存放在微指令存储器连续的单元中。在本系统内,MLD为置微地址的控制信号,MCK为工作脉冲。当MLD=O、MCK有上沿时,把MD0~MD7的值作为微程序的地址,打入微地址寄存器。当MLD=1、MCK有上升沿时,微地址计数器自动加1。微指令的运行顺序为下地址确定法,即采用计数增量方法,每条微指令执行过后微地址自动加1,指向下一条微指令地址。例如,确定了一条程序的微程序入口地址微07H,那么当执行完07H这条微指令后微地址加1,指向08H微地址。微地址寄存器由2片74LS161组成。在模型机停止状态下,微地址被清零。在实验平台开始运行时,微地址从00H开始运行。且00H放置一条取指指令,根据程序开始地址从内存中读出第一条指令。6.模型机当中时序的设计安排时序电路由监控单元来控制时序输出(PLS1,PLS2,PLS3,PLS4)。所用的时序电路可以产生4个等间隔的时序信号PLS1,PLS2,PLS3,PLS4.为了便于监控程序流程,由监控单元输出PO信号和SIGN脉冲来实现STEP(微单步)、GO(全速)和HALT(暂停)。当试验处于运行状态,并且是微单步执行时,PLS1,PLS2,PLS3,PLS4分别发出一个脉冲,全速执行时,PLS1,PLS2,PLS3,PLS4脉冲将周而复始地发送出去。由于模型机已经确定了指令系统,微指令采用全水平不编码纯控制场的格式,微程序的入口地址采用操作码散传方式,微地址采用计数增量方式,所以可确定模型机中的时序单元所产生的每一拍的作用。

为便于观察试验的各个中间过程各寄存器的值,由监控单元产生一个PLS-O的信号来控制时序的产生。PLS-O信号经过时序单元的处理产生了4个脉冲信号。4个脉冲信号组成一个微指令周期,为不同的寄存器提供工作脉冲。PLS1PLS2微指令波形如下图所示:徽指令周期_微地址寄存器的工作脉冲,用来设置微程序的首地址及微地址加1。PC计数器的工作脉冲,根据微指令的控制实现PLS1PLS2微指令波形如下图所示:徽指令周期_微地址寄存器的工作脉冲,用来设置微程序的首地址及微地址加1。PC计数器的工作脉冲,根据微指令的控制实现PC计数器加1和重置PC计数器(跳PLS2PPLS1PPLS3P转指令)等功能PLS3把24位微指令打入3片微指令锁存器。PLS4把当前总线上的数据打入微指令选通的寄存器中7.设计指令执行流程在每个系统中,一条指令从内存取出到执行完毕,需要若干个机器周期,任何指令中都必须有一个机器周期作为“取指令周期”,称为公操作周期。而一条指令共需几个机器周期取决于指令在机器内实现的复杂程度。对于微程序控制的计算机,在设计指令执行流程时,要保证每条微指令所含的微操作的必要性和合理性,还应知道总线的IAB,IDB,OAB,ODB仅是传输信息的通路,没有寄存信息的功能,而且必须保证总线传输信息时信息的唯一性。以下描述取微指令执行周期:在模型机处于停机状态时,模型机的微地址寄存器被清零,微指令锁存器输出无效。在处于停机状态时,脉冲PLS1对微地址寄存器(74LS161)无效,微地址寄存器保持为零。脉冲PLS2对PC计数器无效,同时PLS2把HALT=1打入启停单元中的运行状态寄存器(74LS74)中,把模型机置为运行状态,使微程序锁存器输出有效°PLS3把微程序储存器00H单元中的内容打入指令寄存器中。在模型机处于运行状态时,脉冲PLS1将微地址寄存器(74LS161)加一,脉冲PLS2将PC计数器加1,PLS3把微程序存储器中的微指令打入微指令锁存器并且输出。PLS4把当前总线上的数据打入当前微指令所选通的寄存器。在各个模块中,各模块的控制的控制信号都是手动模拟产生的。而在真正的实验系统中,模型机的运行是在微程序的控制下,实现特定指令的功能。在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和之相配合的时序来完成,即一条机器指令对应一个微程序。对于此次实验每条指令的执行流程如下:微、\周、、操\期指令助'记■符、TOT1T2T3取指微指令PC->地址总线->RAMRAM->数据总线->IR1——————ORLA,#dataA-数据总线fDR1RAM—数据总线一DR2ALU—数据总线一A取指微指令ANLA,#dataAf数据总线—DR1RAM—数据总线一DR2ALU—数据总线一A取指微指令MOVA,RIR|f数据总线—A取指微指令————MOVRI,AA—数据总线—RI取指微指令————

MOVA,#dataRAM—数据总线fA取指微指令——STAaddrRAM—数据总线一IR2IR2—地址总线,A—RAM取指微指令——HALT停机———8.源程序,程序的指令代码及微程序8.1本程序源代码如下:MOVA,#82RRCAMOVA,#32RLCAMOVA,#18RLCAJZ08ADDA,R0JC128.1本程序源代码如下:MOVA,#82RRCAMOVA,#32RLCAMOVA,#18RLCAJZ08ADDA,R0JC12JMP0AMOVR1,#42ADDA,R1STA40HALT微指令序列oooojooLIooLIooLKfifi0001[00]400]400]0002[00]400]400]0003[00]400]400]0004[00]400]400]0005[00]400]400]0006[00]400]400]0007[00]400]400]0008[00]400]400]0009[00]400]400]000A[00]400]400]000B[00)400)400]A->Dbus->DR1Ri->Dbus->DR2ALU->Dbus->A取捋指令A->Dbus->DR1Ri->Dbus->DR2ALU->Dbus->A取捋指令Ri->Dbus->IR2000D[00)400)400]取指指令000E[00]400]400]000F[00)400)400]00100011001200130014001500160017[OOlJOOb^[00)400)400][00)400)400][00)400)400][00)400)400][00)400)400][00)400)400][00)400)400]Ri->Dbus->A取指捋令A->Dbus->Ri取指指令Dbus->A001[OOlJOOlJOOlfcfi^001D[00]400]400]001E[00[00[00001F000000002000000000210000000022000000002300000000240000000025000000002600000000270000000028I[00][00][001A»1Dbus->IR2(IR2]->AbusJRAM->Dbus->A取指楷令Dbus->IR2(IR2]->AbusJA->Dbus->RAM取指楷令9说明在使用软件HKCPT的联机方式与脱机方式的实现过程

10.课程设计总结(设计的特点、不足、收获与体会)此次课程设计运用到的不仅仅是计算机组成原理里面学到的知识,更综合运用到我们学过的一些其它课程的内容,主要包括数字逻辑、汇编语言程序设计、电路等,是一次综合性的课程设计项目。在代码设计方面,有以前学习

温馨提示

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

评论

0/150

提交评论