罗克露计算机组成原理课件3CPU5设计模型机.ppt
《罗克露计算机组成原理课件3CPU5设计模型机.ppt》由会员分享,可在线阅读,更多相关《罗克露计算机组成原理课件3CPU5设计模型机.ppt(50页珍藏版)》请在冰豆网上搜索。
第六节第六节模型机设计模型机设计设计步骤:
设计步骤:
拟定指令系统拟定指令系统确定总体结构确定总体结构安排时序安排时序拟定指令流程和微命令序列。
拟定指令流程和微命令序列。
形成控制逻辑形成控制逻辑3.6.13.6.1指令系统指令系统1.1.指令格式指令格式格式、寻址方式、格式、寻址方式、指令类型设置指令类型设置寄存器、寄存器、ALUALU、数、数据通路设置据通路设置画流程图画流程图(寄存器传送级寄存器传送级)列操作时间表列操作时间表组:
列逻辑式,形组:
列逻辑式,形成逻辑电路成逻辑电路微:
按微指令格式微:
按微指令格式编写微程序编写微程序指令字长指令字长1616位,采用寄存器型寻址,指令中位,采用寄存器型寻址,指令中给出寄存器号。
给出寄存器号。
(主存容量为(主存容量为64K64K1616位)位)双操作数指令格式:
双操作数指令格式:
46334633操作码操作码寄存器号寄存器号寻址方式寻址方式寄存器号寄存器号寻址方式寻址方式目的地址目的地址源地址源地址单操作数指令格式:
单操作数指令格式:
操作码操作码(可扩展)(可扩展)寄存器号寄存器号寻址方式寻址方式4333343333目的地址目的地址转移指令格式:
转移指令格式:
151211986543210151211986543210转移地址转移地址转移条件转移条件操作码操作码寄存器号寄存器号寻址方式寻址方式方式方式NZVCNZVCCPUCPU可编程访问的寄存器:
可编程访问的寄存器:
寻址方式寻址方式编码编码助记符助记符定义定义2.2.寻址方式寻址方式寄存器寻址寄存器寻址通用寄存器通用寄存器RR、指令计数器、指令计数器PCPC、堆栈指针、堆栈指针SPSP、程序状态字程序状态字PSWPSW000000RR(RR)为操作数)为操作数寄存器间址寄存器间址001001(RR)(RR)为操作数地址)为操作数地址自减型寄存自减型寄存器间址器间址010010-(R)-(R)-(SP)-(SP)(R)-1(R)-1为操作数地址为操作数地址(SP)-1(SP)-1为栈顶地址为栈顶地址寻址方式寻址方式编码编码助记符助记符定义定义101101(PC)+(PC)+(R)+d(R)+d为有效地址为有效地址(RR)为操作数地址,)为操作数地址,立即立即/自增型自增型寄存器间址寄存器间址011011(R)+(R)+访问后访问后(R)+1(R)+1(SP)+(SP)+(SP)(SP)为栈顶地址,为栈顶地址,出栈后出栈后(SP)+1(SP)+1(PC)(PC)为立即数地址,为立即数地址,取数后取数后(PC)+1(PC)+1变址变址X(R)X(R)X(PC)X(PC)(PC)+d(PC)+d为有效地址为有效地址跳步跳步110110SKPSKP跳过下条指令执行跳过下条指令执行操作码操作码助记符助记符含义含义3.3.指令类型指令类型用于数传、堆栈、用于数传、堆栈、I/OI/O操作操作00000000MOVMOV传送传送00010001ADDADD加加01010101EOREOR异或异或双操作数指令双操作数指令01100110COMCOM求反求反10111011SRSR右移右移单操作数指令单操作数指令11001100JMPJMP转移转移11001100RSTRST返回返回11011101JSRJSR转子转子0000000000543210543210转移地址转移地址无条件转无条件转JMPJMP寄寄寻寻方式方式NZVCNZVC0000000011无进位无进位转转(C=(C=00)0000001100无溢出无溢出转转(V=(V=00)0000110000数非零转数非零转(Z=(Z=00)0011000000数为正转数为正转(N=(N=00)1100000011有进位有进位转转(C=(C=11)1100001100有溢出有溢出转转(V=(V=11)1010110000数为零转数为零转(Z=(Z=11)1111000000数为负转数为负转(N=(N=11)条件满足,转转移地址;条件不满足,顺序执行。
条件满足,转转移地址;条件不满足,顺序执行。
隐含约定:
转子时返回地址压栈保存。
隐含约定:
转子时返回地址压栈保存。
1512119865015121198650子程序入口子程序入口RSTRSTSPSP(SPSP)+JSRJSR寄寄寻寻方式方式NZVCNZVC5432105432103.6.2CPU3.6.2CPU总体结构总体结构1.1.寄存器设置寄存器设置(11)可编程寄存器()可编程寄存器(1616位)位)通用寄存器通用寄存器:
RR00(000)(000)、RR11(001)(001)RR22(010)(010)、RR33(011)(011)允许中断(开中断)允许中断(开中断)(可扩展)(可扩展)INZVCINZVC4321043210暂存器暂存器CC(22)非编程寄存器()非编程寄存器(1616位)位)堆栈指针堆栈指针:
SPSP(100)(100)指令计数器指令计数器:
PCPC(111)(111)程序状态字程序状态字:
PSWPSW(101)(101):
暂存来自主存的暂存来自主存的源地址源地址或或源数据源数据。
暂存器暂存器DD:
暂存来自主存的暂存来自主存的目的地址目的地址或或目的数目的数。
指令寄存器指令寄存器IRIR地址寄存器地址寄存器MAR数据寄存器数据寄存器MDRMDR:
存放现行指令。
存放现行指令。
实现实现CPUCPU与主存的接口与主存的接口SN741814SN741814片片SN741821SN741821片片2.2.算逻部件设置算逻部件设置ALUALU选择数据来源选择数据来源选择器选择器AA选择器选择器BB移位器移位器:
实现实现直送直送、左移左移、右移右移、字节交换字节交换3.3.数据通路结构数据通路结构为了使数据传送控制简单、集中,采用为了使数据传送控制简单、集中,采用以以ALUALU为中心的总线结构为中心的总线结构。
(11)组成)组成包括四个部分:
包括四个部分:
ALUALU部件、寄存器组、内总线、部件、寄存器组、内总线、CPUCPU与系统总与系统总线的连接线的连接(1616位)位)R0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑(22)特点)特点ALUALU为内部数据传送通路的中心;为内部数据传送通路的中心;寄存器寄存器采用采用内总线内总线采用单向数据总线采用单向数据总线(16(16位位);分立结构;分立结构;与系统总线与系统总线的连接通过的连接通过MARMAR、MDRMDR实现。
实现。
MDRMDR输入输入输出至输出至DBDB输出至输出至ALUALU的的BB门门输出输出从内总线输入从内总线输入从从DBDB输入输入(打入打入)(置入置入)R0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑4.4.各类信息传送途径各类信息传送途径MM(11)指令信息)指令信息置入置入DBDBIRIR(22)地址信息)地址信息R0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑11)指令地址)指令地址22)指令地址加)指令地址加11PCPC打入打入AAALUALU移移内内MARMARPCPCAAALUALU移移内内PCPCCC00打入打入R0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑33)转移地址)转移地址寄存器寻址:
寄存器寻址:
R0R0打入打入BBALUALU移移内内PCPC寄存器间址:
寄存器间址:
R0R0打入打入BBALUALU移移内内MARMARABABMMDBDB置入置入MDRMDRBB移、移、内内PCPCALUALUR0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑44)操作数地址)操作数地址寄存器间址:
寄存器间址:
R0R0打入打入BBALUALU移移内内MARMARR0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑变址:
变址:
R0R0PCPCAAALUALU移移内内MARMARABABMMDBDB移移内内CCMMMDRMDRBBALUALUALUCCAABB移移内内MARR0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑(33)数据信息)数据信息11)RRRR:
R0R0打入打入BBALUALU移移内内R1R1DBDBMMDBDBMDRMDRBB移、移、内内R2R2ALUALU22)RRMM:
R0R0打入打入BBALUALU内内MDRMDR33)MMRR:
MMR0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑44)MMMM:
MM(源源)R0R0MDRMDRDBDB内内I/OI/OALUALU55)RRI/OI/O:
打入打入DBDBMDRMDR内内CCALUALU(计算目的地址计算目的地址)DBDBMMCALUALU内内MDRMDR(目的目的)R0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑DBDBDBDBDMADMA方式:
方式:
I/OI/O66)I/OI/ORR打入打入I/OI/OMDRMDR内内R0R0ALUALU77)I/OI/OMMMMR0R3R0R3CDCDSPPCPSWMDRA移位器移位器BALUR2R0R1MI/OCB内总线内总线CR3DMARMDRIRPCSPPSWABDB控制控制逻辑逻辑5.5.微命令设置微命令设置
(1)
(1)数据通路数据通路操作:
操作:
ALUALU功能选择:
功能选择:
ALUALU输入选择:
输入选择:
输出移位选择:
输出移位选择:
结果分配:
结果分配:
R0R0AA、R0R0BB、SS33SS22SS11SS00、MM、C0C0不移、左移、不移、左移、CPR0CPR0、CPCCPC、CPMARCPMAR、R0R3R0R3CDCD