模型计算机控制器的设计.doc
《模型计算机控制器的设计.doc》由会员分享,可在线阅读,更多相关《模型计算机控制器的设计.doc(14页珍藏版)》请在沃文网上搜索。
1、模型计算机控制器的设计本课程设计以设计一个模型计算机的控制器(CU)为目标,通过课程设计,进一步加深对中央处理器的结构和功能的理解,掌握控制器的设计方法和步骤,为今后从事计算机系统设计打下初步的基础。1 设计要求1.1 功能指标和要求1)支持一个规模较小、但功能相对完整的RISC指令系统,指令条数不超过32条;2)采用I/O端口独立编址方式;3)系统总线由CPU总线延伸形成,总线周期固定; 4)不支持中断及DMA功能;5)采用组合逻辑控制方式;6)忽略复位电路、时钟电路和时序电路的设计,但需说明对时序信号的要求。1.2 性能指标要求1)CPU字长8位,数据总线8位;2)地址总线8位,最大寻址空
2、间为256字节;3)I/O采用独立编址方式,4位地址码,最大支持16个I/O端口;4)时钟频率1MHz左右,机器周期为3-4个时钟周期;5)CPU输出与外部读写控制的控制信号有/MR、/MW、/IOR、/IOW。1.3 课程设计要求根据课程设计指导,完成模型机控制的设计,并提交课程设计报告。1.4 时间安排1)理解模型机的逻辑结构、数据通路以及指令系统和格式:1天2)数据通路设计及分析:1天3)指令执行流程设计:1天4)微操作的节拍安排与设计:1天5)微操作命令逻辑表达式:1天2 CPU逻辑结构设计2.1 CPU逻辑结构的组成1运算器1)ALU具有8种算术/逻辑运算功能,其运算功能由三位编码I
3、2I1I0选择;ALU除了2个数据输入端R、S和数据输出端Y外,另有一个最低位进位输入信号C0,以及4个状态输入:进位输出C、结果零Z、运算溢出V和符号位S。2)ALU输出移位器具有直通、左移一位和右移一位的功能,由两位编码I4I3选择;3)ALU数据输入端有A和B两个数据锁存器,指令不可访问;4)标志寄存器FLAG,4位,与数据总线的低4位连接,能独立置位或清零;5)4个通用数据寄存器R0R3;6)堆栈指针SP(8位);7)数据缓冲寄存器DR,指令不可访问;8)地址寄存器AR(8位),指令不可访问。2控制器1)程序计数器PC(8位),具有加1的功能;2)指令寄存器IR(8位);3)微操作控制
4、信号发生器,采用组合逻辑控制方式;4)时钟和时序信号发生器(不需设计)。2.2 CPU的逻辑结构及数据通路结构图2-1 CPU逻辑结构及数据通路结构图在模型计算机的CPU中设置了一个特殊的零寄存器ZERO,该寄存器的值恒为0。各寄存器的编码(地址)见表2-1。表2-1 寄存器编码表寄存器编码R0R1R2R3DRARSPFLAGZEROABPCIR00000001001000110100010101100111100010011010101111003 指令系统设计3.1 指令字长和寻址方式设计1)指令字长以单字长为主,少数指令为双字长;2)指令操作码字段长度可变;3)数据寻址支持立即寻址、寄存
5、器直接寻址和寄存器间接寻址三种方式;4)只有取数(LDA)和存数(STO)两条指令可以访问主存。3.2 指令系统设计在以下指令定义中,dR、sR表示通用数据寄存器组R0R3(编号0011)中的一个,data表示8位立即数,addr表示8位无符号地址,port表示4位I/O端口地址。1)数据传送类指令(8条)MOVdR, data;dR dataMOVdR, sR;dR (sR)LADdR, sR;dR (sR)STOdR, sR;(dR) (sR)PUSHsR;SP (sR),SP SP+1POPdR;SP (SP)1,dR (SP)CLC;Cy 0STC;Cy 12)算术运算类指令(6条)A
6、DDdR, sR;dR (dR) + (sR) SUBdR, sR;dR (dR) (sR) ADCdR, sR;dR (dR) + (sR) + CySBCdR, sR;dR (dR) (sR) CyINCdR;dR (dR) + 1DECdR;dR (dR) 13)逻辑运算类指令(8条)ANDdR, sR;dR (dR) (sR)ORdR, sR;dR (dR) (sR)XORdR, sR;dR (dR)(sR)NOTdR;dR (dR)SLdR;dR dR 1 , Cy D0(逻辑右移1位)SLCdR;带进位标志Cy的循环逻辑左移(1位)SRCdR;带进位标志Cy的循环逻辑右移(1位)4
7、)控制类指令(7条)JMPaddr;PC addrJCoffset;若Cy=1 则 PC (PC) + offsetJNCoffset;若Cy=0 则 PC (PC) + offsetJZoffset;若Z=1 则 PC (PC) + offsetJNZoffset;若Z=0 则 PC (PC) + offsetCALLaddr;(SP) (PC),SP (SP)+1,PC addrRET;SP (SP)1,PC (SP)5)输入/输出类指令(2条)INport;R0 (port)OUTport;port (R0)3.3 指令格式设计指令长度为单字节和双字节2种,操作码字段的长度可变,指令格式
8、有以下六种。1格式一7 4 3 2 1 0 操作码dRsR2格式二7 4 3 2 1 0操作码IO port / addr3格式三7 4 3 2 1 0操作码dR/sR4格式四7 4 3 2 1 0操作码dR/sRaddr5格式五7 4 3 2 1 0操作码6格式六7 4 3 2 1 0操作码adr3.4 指令汇总表表3-1 指令汇总表序号指令格式汇编语言字长操作数C Z V S功能说明10000 dR sRMOVdR, sR12dR (sR)20001 dR sRLADdR, sR12dR (sR)30010 dR sRSTOdR, sR12(dR) (sR)40011 dR sRADDdR
9、, sR12* * * *dR (dR)+(sR)50100 dR sRSUB dR, sR12* * * *dR (dR)-(sR)60101 dR sRANDdR, sR12*dR (dR)(sR)70110 dR sRORdR, sR12*dR (dR)(sR)80111 dR sRXORdR, sR12*dR (dR)(sR) 91000 dR sRADCDS, sR12* * * *dR (dR)+(sR)+Cy101001 dR sRSBCDS, sR12* * * *dR (dR)-(sR)-Cy111010 portINport11R0 (port)121011 portOUT
10、port11port (R0)131100 00 dRPUSHsR11SP (sR),SP (SP)+1141100 01 dRPOPdR11SP (SP)-1,dR (SP)151100 10 dRINCdR11* * * *dR (dR)+1161100 11 dRDECdR11* * * *dR (dR)-1171101 00 dRSHLdR11*dR dR*2,Cy D7181101 01 sRSHRdR11*dR dR/2,Cy D0191101 10 dRSLCdR11*带进位Cy的逻辑循环左移201101 11 dRSRCdR11*带进位Cy的逻辑循环右移211110 00 dR
11、NOTdR11*dR (dR)221110 01 dRdataMOVdR, data22*dR data231110 1000CLC100Cy 0241110 1001STC101Cy 1251110 1010addrCALLaddr21(SP) (PC),SP(SP)+1PC addr261110 1011RET10SP(SP)-1,PC(SP)271110 1100offsetJCoffset21C=1 时转移到(PC)+offset281110 1100offsetJNCoffset21C=0 时转移到(PC)+offset291110 1110offsetJZoffset21Z=1 时
12、转移到(PC)+offset301110 1111offsetJNZoffset21Z=0 时转移到(PC)+offset311111 0000addrJMPaddr21PC addr说明:表中CZVS一栏,*表示该标志位在指令执行后被重置,表示该标志位不受指令执行的影响。4 控制信号和时序信号4.1 控制信号在计算机的控制信号中,大部分用于控制寄存器数据输入和数据输出操作。寄存器一般由带有三态输出的D触发器或D锁存器构成,因此需要有数据输入和数据输出两个控制信号。为了可靠地实现两个寄存器之间的数据传送操作,输出寄存器的数据输出控制信号必须首先有效,经过一段时间的延迟后,输入寄存器的数据输入控
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模型 计算机 控制器 设计