《22mt电子商务中的财务与会计 (15)》由会员分享,可在线阅读,更多相关《22mt电子商务中的财务与会计 (15)(49页珍藏版)》请在金锄头文库上搜索。
1、第四节第四节 模型机设计模型机设计设计步骤:设计步骤:拟定指令系统拟定指令系统确定总体结构确定总体结构安排时序安排时序拟定指令流程和微命令序列。拟定指令流程和微命令序列。形成控制逻辑形成控制逻辑4.4.1 4.4.1 指令系统指令系统1.1.指令格式指令格式格式、寻址方式、格式、寻址方式、指令类型设置指令类型设置寄存器、寄存器、ALUALU、数、数据通路设置据通路设置画流程图画流程图( (寄存器传送级寄存器传送级) )列操作时间表列操作时间表组:列逻辑式,形组:列逻辑式,形成逻辑电路成逻辑电路微:按微指令格式微:按微指令格式编写微程序编写微程序指令字长指令字长1616位,采用寄存器型寻址,指令
2、中位,采用寄存器型寻址,指令中给出寄存器号。给出寄存器号。(主存容量为(主存容量为64K1664K16位)位)双操作数指令格式:双操作数指令格式:4 6 3 34 6 3 3操作码操作码 寄存器号寄存器号 寻址方式寻址方式 寄存器号寄存器号 寻址方式寻址方式源地址源地址目的地址目的地址单操作数指令格式:单操作数指令格式:操作码操作码 (可扩展)(可扩展) 寄存器号寄存器号 寻址方式寻址方式4 3 3 3 34 3 3 3 3目的地址目的地址转移指令格式:转移指令格式:15 12 11 9 8 6 5 4 3 2 1 015 12 11 9 8 6 5 4 3 2 1 0转移地址转移地址转移条件
3、转移条件操作码操作码 寄存器号寄存器号 寻址方式寻址方式 方式方式 NZVC NZVC 天才相师 CPUCPU可编程访问的寄存器:可编程访问的寄存器:寻址方式寻址方式 编码编码 助记符助记符 定义定义2.2.寻址方式寻址方式寄存器寻址寄存器寻址通用寄存器通用寄存器R R、指令计数器、指令计数器PCPC、堆栈指针、堆栈指针SPSP、程序状态字程序状态字PSWPSW000000R R(R R)为操作数)为操作数寄存器间址寄存器间址001001(R R)(R R)为操作数地址)为操作数地址自减型寄存自减型寄存器间址器间址010010-(R)-(R)-(SP)-(SP)(R)-1(R)-1为操作数地
4、址为操作数地址(SP)-1(SP)-1为栈顶地址为栈顶地址立即立即/ /自增型自增型寄存器间址寄存器间址011011(R)+(R)+(R R)为操作数地址,)为操作数地址,访问后访问后(R)+1(R)+1(SP)+(SP)+(SP)(SP)为栈顶地址,为栈顶地址,出栈后出栈后(SP)+1(SP)+1寻址方式寻址方式 编码编码 助记符助记符 定义定义100100(R R)为间接地址,)为间接地址,直接直接/ /自增型自增型双间址双间址101101 (R)+(R)+(PC)+(PC)+PCPC指向有效地址,指向有效地址,(R)+d(R)+d为有效地址为有效地址(R R)为操作数地址,)为操作数地址
5、,立即立即/ /自增型自增型寄存器间址寄存器间址011011(R)+(R)+访问后访问后(R)+1(R)+1(SP)+(SP)+(SP)(SP)为栈顶地址,为栈顶地址,出栈后出栈后(SP)+1(SP)+1(PC)(PC)为立即数地址,为立即数地址,取数后取数后(PC)+1(PC)+1访问后访问后(R)+1(R)+1 (PC)+(PC)+访问后访问后(PC)+1(PC)+1变址变址X(R)X(R)X(PC)X(PC)(PC)+d(PC)+d为有效地址为有效地址跳步跳步110110SKPSKP跳过下条指令执行跳过下条指令执行操作码操作码 助记符助记符 含义含义3.3.指令类型指令类型用于数传、堆栈
6、、用于数传、堆栈、I/OI/O操作操作00000000MOVMOV传送传送00010001ADDADD加加01010101EOREOR异或异或双操作数指令双操作数指令01100110COMCOM求反求反10111011SRSR右移右移单操作数指令单操作数指令11001100JMPJMP转移转移11001100RSTRST返回返回11011101JSRJSR转子转子0 0 0 0 0 0 0 0 0 0 5 4 3 2 1 0 5 4 3 2 1 0转移地址转移地址无条件转无条件转JMP JMP 寄寄 寻寻 方式方式 NZVC NZVC0 0 0 0 0 0 0 0 1 1 无进位无进位转转(C
7、=(C=0 0) )0 0 0 0 0 0 1 1 0 0 无溢出无溢出转转(V=(V=0 0) )0 0 0 0 1 1 0 0 0 0 数非零转数非零转(Z=(Z=0 0) )0 0 1 1 0 0 0 0 0 0 数为正转数为正转(N=(N=0 0) )1 1 0 0 0 0 0 0 1 1 有进位有进位转转(C=(C=1 1) )1 1 0 0 0 0 1 1 0 0 有溢出有溢出转转(V=(V=1 1) )1 1 0 0 1 1 0 00 0 数为零转数为零转(Z=(Z=1 1) )1 1 1 1 0 0 00 0 0 数为负转数为负转(N=(N=1 1) )条件满足,转转移地址;条
8、件不满足,顺序执行。条件满足,转转移地址;条件不满足,顺序执行。隐含约定:转子时返回地址压栈保存。隐含约定:转子时返回地址压栈保存。15 12 11 9 8 6 5 015 12 11 9 8 6 5 0子程序入口子程序入口 RST RST SPSP (SPSP)+ + JSR JSR 寄寄 寻寻 方式方式 NZVC NZVC 5 4 3 2 1 0 5 4 3 2 1 04.4.2 CPU4.4.2 CPU总体结构总体结构1.1.寄存器设置寄存器设置(1 1)可编程寄存器()可编程寄存器(1616位)位)通用寄存器通用寄存器:R R0 0(000)(000)、R R1 1(001)(001)
9、R R2 2(010)(010)、R R3 3(011)(011)允许中断(开中断)允许中断(开中断) (可扩展)(可扩展) I N Z V C I N Z V C 4 3 2 1 0 4 3 2 1 0暂存器暂存器C C(2 2)非编程寄存器()非编程寄存器(1616位)位)堆栈指针堆栈指针:SPSP(100)(100)指令计数器指令计数器:PCPC(111)(111)程序状态字程序状态字:PSWPSW(101)(101): :暂存来自主存的暂存来自主存的源地址源地址或或源数据源数据。暂存器暂存器D D: :暂存来自主存的暂存来自主存的目的地址目的地址或或目的数目的数。指令寄存器指令寄存器I
10、RIR地址寄存器地址寄存器MARMAR数据寄存器数据寄存器MBRMBR: :存放现行指令。存放现行指令。实现实现CPUCPU与主存的接口与主存的接口SN74181 4SN74181 4片片SN74182 1SN74182 1片片2.2.算逻部件设置算逻部件设置ALUALU选择数据来源选择数据来源选择器选择器A A选择器选择器B B移位器移位器: :实现实现直送直送、左移左移、右移右移、字节交换字节交换3.3.数据通路结构数据通路结构为了使数据传送控制简单、集中,采用为了使数据传送控制简单、集中,采用以以ALUALU为中心的总线结构为中心的总线结构。(1 1)组成)组成包括四个部分:包括四个部分
11、:ALUALU部件、寄存器组、内总线、部件、寄存器组、内总线、CPUCPU与系统总与系统总线的连接线的连接(1616位)位) R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 (2 2)特点)特点ALUALU为内部数据传送通路的中心;为内部数据传送通路的中心; 寄存器寄存器采用采用内总线内总线采用单向数据总线采用单向数据总线(16(16位位) );分立结构;分立结构; R0R3 R0R3 C D C D SP PC PSW MBR A移位器
12、移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 与系统总线与系统总线的连接通过的连接通过MARMAR、MBRMBR实现。实现。MBRMBR输出输出输出至输出至DBDB输出至输出至ALUALU的的B B门门输入输入从内总线输入从内总线输入从从DBDB输入输入( (打入打入) )( (置入置入) ) R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 4.4.各
13、类信息传送途径各类信息传送途径M M(1 1)指令信息)指令信息置入置入DBDBIRIR MDB IR(2 2)地址信息)地址信息 R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 1 1)指令地址)指令地址2 2)指令地址加)指令地址加1 1 PC PC AALU移位器移位器内总线内总线MARPCPC打入打入A AALUALU移移内内MARMARPCPCA AALUALU移移内内PCPCC C0 0C C0 0打入打入 R0R3 R0R3
14、 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 3 3)转移地址)转移地址 M IR寄存器寻址:寄存器寻址: R0 R0 BALU移位器移位器内总线内总线 PCR0R0打入打入B BALUALU移移内内PCPC寄存器间址:寄存器间址:R0R0打入打入B BALUALU移移内内MARMARABABM MDBDB置入置入MBRMBRB BMARMBRMBR移、移、 内内PCPCALUALU R0R3 R0R3 C D C D SP PC PSW MBR A移位
15、器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 IR R0 R0 BALU移位器移位器内总线内总线4 4)操作数地址)操作数地址寄存器寻址:寄存器寻址:R0R0R1R1寄存器间址:寄存器间址:R0R0打入打入B BALUALU移移内内MARMARMAR R1 R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 变址:变址: PC AALU移位器移位器内总线
16、内总线MARR0R0PCPCA AALUALU移移内内MARMARABABM MDBDB移移内内C C PC MM MMBRMBR B CMBRMBRB BALUALU R0 R0 CALUALUC CA AB B移移内内MARMAR R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 (3 3)数据信息)数据信息 M IR R0 R0 BALU移位器移位器内总线内总线1 1)R RR R: R0R0打入打入B BALUALU移移内内R1R1
17、DBDBM MDBDBMBRMBRB BMBRMBR移、移、 内内R2R2ALUALU R12 2)R RM M: R0R0打入打入B BALUALU内内MBRMBR3 3)M MR R:R2M M R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 M IR R0 R0 BALU移位器移位器内总线内总线4 4)M MM M: M M( (源源) )R0R0MBRMBRMBRMBRDBDB内内I/OI/OALUALU5 5)R RI/OI/O
18、: C打入打入DBDBMBRMBR内内C CALUALU( (计算目的地址计算目的地址) )DBDBM MC CALUALU内内MBRMBR( (目的目的) ) C AI/O R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 M IR R0 BALU移位器移位器内总线内总线DBDBMBRMBRDBDBDMADMA方式:方式:I/OI/O6 6)I/OI/OR R打入打入I/OI/OMBRMBR内内R0R0ALUALUI/O7 7)I/OI/
19、OM MM M R0R3 R0R3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 5.5.微命令设置微命令设置(1)(1)数据通路数据通路 操作:操作:ALUALU功能选择:功能选择:ALUALU输入选择:输入选择:输出移位选择:输出移位选择:结果分配:结果分配:R0R0A A、 R0R0B B、S S3 3S S2 2S S1 1S S0 0、M M、C0C0不移、左移、不移、左移、CPR0CPR0、CPCCPC、CPMARCPMAR、 R0R3 R0R
20、3 C D C D SP PC PSW MBR A移位器移位器 BALUR2 R0 R1 MI/OCB内总线内总线 C R3 DMARMBR IR PC SPPSWABDB控制控制逻辑逻辑 (2)(2)访访M M、I/OI/O 操作:操作:读读 R R地址使能地址使能 EMAREMAR写写 W W置入置入MBRMBR SMBR SMBR,1 1 MARMAR向向ABAB送地址送地址0 000 00 MBRMBR与与DBDB断开断开, ,MARMAR与与ABAB断开断开R=1R=1读读 W=1 W=1写写置入置入IRIR SIR SIRM M4.4.3 4.4.3 组合逻辑控制器设计组合逻辑控制
21、器设计1.1.时序系统时序系统(1 1)工作周期)工作周期取指周期取指周期FTFT用于指令正常执行用于指令正常执行设置设置6 6个触发器分别个触发器分别作为各作为各周期状态标志周期状态标志源周期源周期STST目的周期目的周期DTDT执行周期执行周期ETET中断周期中断周期ITITDMADMA周期周期DMATDMAT用于用于I/OI/O传送控制传送控制1 1 工作周期开始工作周期开始0 0 工作周期结束工作周期结束在整个指令周期中,任何时候必须、且只能有一在整个指令周期中,任何时候必须、且只能有一个工作周期状态标志为个工作周期状态标志为“1”“1”。1 1)取指周期)取指周期FTFT从从M M取
22、出指令并译码;取出指令并译码;公操作公操作修改修改PCPC。3 3)目的周期)目的周期DTDT4 4)执行周期)执行周期ETET取指结束时,按操作码和寻址方式取指结束时,按操作码和寻址方式(R/(R/非非R R寻址寻址) )转相应工作周期。转相应工作周期。按寻址方式按寻址方式( (非非R R寻址寻址) )形成源地址,从形成源地址,从M M取出源操取出源操作数,暂存于作数,暂存于C C。2 2)源周期)源周期STST按寻址方式按寻址方式( (非非R R寻址寻址) )形成目的地址,或从形成目的地址,或从M M取出取出目的操作数,暂存于目的操作数,暂存于D D。按操作码完成相应操作按操作码完成相应操
23、作( (传送、运算、取转移地址传送、运算、取转移地址送入送入PCPC、返回地址压栈保存、返回地址压栈保存) );后续指令地址送入后续指令地址送入MARMAR。5 5)中断周期)中断周期ITIT关中断、保存断点和关中断、保存断点和PSWPSW、转服务程序入口。、转服务程序入口。由硬件完成由硬件完成1 1)时钟周期时间:)时钟周期时间:ITIT指指CPUCPU响应中断请求后,到执行中断服务程序前。响应中断请求后,到执行中断服务程序前。6 6)DMADMA周期周期DMATDMAT一次从一次从M M读出,并经数据通路传送的操作;读出,并经数据通路传送的操作;或或一次数据通路传送操作;一次数据通路传送操
24、作;或或一次向一次向M M写入的操作写入的操作DMATDMAT指指CPUCPU响应响应DMADMA请求后,到传送完一次数据。请求后,到传送完一次数据。DMADMA控制器接管总线权,控制直传。控制器接管总线权,控制直传。(2 2)时钟周期)时钟周期( (节拍节拍) )T T1 1微秒微秒完成一步操作:完成一步操作:模型机以模型机以访存时间访存时间作为作为一步操作时间一步操作时间。 一个总线一个总线周期周期等于等于一个时钟周期一个时钟周期,可根据需要扩展。,可根据需要扩展。由硬件完成由硬件完成2 2)时钟周期数:)时钟周期数:每个工作周期第一拍每个工作周期第一拍T=0T=0,每开始一个新节拍每开始
25、一个新节拍T T计数计数,工作周期结束时工作周期结束时T T清清0 0。一个工作周期中的时钟数一个工作周期中的时钟数可变可变。用用计数器计数器T T控制节拍数控制节拍数每个时钟结束时设置一个脉冲。每个时钟结束时设置一个脉冲。(3 3)工作脉冲)工作脉冲P P1ST TP P打入寄存器打入寄存器进行时序转换进行时序转换(周期状态设置(周期状态设置/清除清除时钟时钟T T计数计数/清除)清除)将计数值译码,可产生节拍电位。将计数值译码,可产生节拍电位。2.2.控制流程控制流程( (工作周期转换工作周期转换) ) FT FT双双单单转转SRSR ST STDRDR DT DT ET ET DMAT
26、DMATDMADMA请求?请求?中断请求?中断请求? IT ITSRSRDRDRY YN NY YN N3.3.指令流程图与操作时间表指令流程图与操作时间表(1 1)取指周期)取指周期FTFT拟定指令流程:拟定指令流程:初始化时置入初始化时置入FTFT,确定各工作周期中每拍完成的具体确定各工作周期中每拍完成的具体操作(寄存器传送级)。操作(寄存器传送级)。列操作时间表:列操作时间表:列出每一步操作所需的微命令及产列出每一步操作所需的微命令及产生条件。生条件。1 1)进入)进入FTFT的方式和条件的方式和条件FTFTS SR RD DC CQ QQ Q总清总清1 1程序正常运行时同步打入程序正常
27、运行时同步打入FTFT。1 FT1 FTCPFTCPFT1 FT1 FT= = ET(1 DMAT 1 IT)ET(1 DMAT 1 IT)DMAT(1 DMAT 1 IT)DMAT(1 DMAT 1 IT)+ IT + IT + + 2 2)流程图)流程图1 ST1 STFT0FT0:PC+1 PCPC+1 PCM IRM IR3 3)操作时间表)操作时间表FT0FT0:电位型微命令电位型微命令脉冲型微命令脉冲型微命令M IRM IREMAR,EMAR, R,R, SIRSIRPC+1 PCPC+1 PCPC A,PC A,A+1,A+1,DMDMCPPCCPPC1 DT1 DT1 ET1
28、ET或或 或或 CPFT( P)CPFT( P)CPST( P)CPST( P)CPDT( P)CPDT( P)CPET( P)CPET( P)CPT ( P)CPT ( P)工作周期中,每拍结束时发工作周期中,每拍结束时发CPTCPT;工作周期结束时,;工作周期结束时,5 5个时序打入命令都发。个时序打入命令都发。转换转换 4 4)时序关系)时序关系FT0FT0:EMAREMARPC APC AS3S3DMDMS2S2S1S1S0S0M MC0C01 ST1 STCPPCCPPCCPFT( P)CPFT( P)CPST( P)CPST( P)CPDT( P)CPDT( P)CPET( P)C
29、PET( P)T+1T+1FT0FT0:1 FT1 FTCPT ( P)CPT ( P)(2 2)传送指令)传送指令FT0FT0:PC+1 PCPC+1 PCM IRM IR,1 1)流程图)流程图例例1 1:MOV R0MOV R0,R1R1;源数源数ET0ET0:R0 R1R0 R1PC MARPC MARET1ET1:例例2 2:MOV(R0),(R1)MOV(R0),(R1); FT0FT0:M IRM IR,PC+1 PCPC+1 PCST0ST0:R0 MARR0 MARST1ST1:M MBR CM MBR CDT0DT0:R1 MARR1 MAR目的地址目的地址ET0ET0:C
30、 MBRC MBRET1ET1:MBR MMBR MET2ET2:PC MARPC MAR例例3 3:MOV X(R0),X(R1)MOV X(R0),X(R1);FT0FT0: M IRM IRPC+1 PCPC+1 PC形地形地取源操作数,取源操作数,暂存于暂存于C C,需需5 5步。步。PC+1 PCPC+1 PCST0ST0:PC MARPC MARDT1DT1:M MBR CM MBR CDT0DT0:C MBRC MBR源数源数ET0ET0:C+R0 MARC+R0 MARET1ET1:MBR MMBR MET2ET2:PC MARPC MARPC+1 PCPC+1 PC例例3 3
31、:MOV X(R0),X(R1)MOV X(R0),X(R1);FT0FT0: M IRM IRM MBR CM MBR CST1ST1:ST2ST2:ST3ST3:ST4ST4:PC MARPC MARM MBR DM MBR D形地形地PC+1 PCPC+1 PCDT2DT2:DT3DT3:D+R1 MARD+R1 MAR目的地址目的地址取目的地址,取目的地址,暂存于暂存于MARMAR,需需4 4步。步。源数送存储器,源数送存储器,需需3 3步。步。FT0FT0:M IRM IR2 2)操作时间表)操作时间表例:例:MOV(SP)+,(R1)MOV(SP)+,(R1);SP MARSP M
32、ARM MBR CM MBR CPC+1 PCPC+1 PCCPPCCPPCST0ST0:SP+1 SPSP+1 SPEMAREMAR R R SMBRSMBR MBR BMBR B 输出输出B B DMDMCPCCPCSP ASP AA+1A+1 DMDM CPSPCPSPEMAREMARPC APC A A+1A+1R RSIRSIRDMDM1 ST1 STCPFT(P)CPFT(P)CPET(P)CPET(P) CPT(P)CPT(P)DMDM CPMARCPMAR输出输出A ASP ASP AT+1T+1CPT(P)CPT(P)T+1T+1 CPT(P)CPT(P)ST1ST1:ST2
33、ST2:1 DT1 DTCPFT(P)CPFT(P)CPET(P)CPET(P) CPT(P)CPT(P)DT0DT0: R1 MARR1 MARDMDM CPMARCPMAR输出输出A AR1 AR1 AT+1T+1CPT(P)CPT(P)1 ET1 ETCPFT(P)CPFT(P)CPET(P)CPET(P)ET0ET0: C MBRC MBRC BC B 输出输出B B DMDM CPMBRCPMBRCPT(P)CPT(P)ET1ET1: MBR MMBR MPC MARPC MARET2ET2:EMAREMARW WT+1T+1 CPT(P)CPT(P)DMDM CPMARCPMAR输
34、出输出A APC APC A1 FT1 FTCPFT(P)CPFT(P)CPET(P)CPET(P) CPT(P)CPT(P)DT0DT0: R1 MARR1 MARDMDM CPMARCPMAR输出输出A AR1 AR1 AT+1T+1CPT(P)CPT(P)1 ET1 ETCPFT(P)CPFT(P)CPET(P)CPET(P)ET0ET0: C MBRC MBRC BC B 输出输出B B DMDM CPMBRCPMBRCPT(P)CPT(P)(3 3)双操作数指令)双操作数指令取目的数,暂存于取目的数,暂存于D D。例:例:ADD (PC)+,X(R1)ADD (PC)+,X(R1);
35、 FT0FT0:M IRM IR,PC+1 PCPC+1 PC立即数立即数ST0ST0:PC MARPC MARST1ST1:M MBR CM MBR CST2ST2:PC+1 PCPC+1 PCDT0DT0:PC MARPC MARDT1DT1: M MBR DM MBR DDT2DT2: PC+1 PCPC+1 PC形式地址形式地址DT3DT3: D+R1 MARD+R1 MARDT4DT4: M MBR DM MBR D目的数目的数ET0ET0: C+D MBRC+D MBRET1ET1: MBR MMBR MET2ET2: PC MARPC MAR(4 4)单操作数指令)单操作数指令F
36、T0FT0:M IRM IR,例:例:COM -(R0)COM -(R0);DT0DT0:R0-1 R0R0-1 R0 、MARMARDT1DT1:M MBR DM MBR DET0ET0:ET1ET1:MBR MMBR MET2ET2:PC MARPC MARPC+1 PCPC+1 PCD MBRD MBR(5 5)转移)转移- -返回指令返回指令无条件无条件转移转移SKPSKPR R(R R)(R)+R)+ 按按R R指示从指示从M M取转移地址取转移地址, ,修改修改R R。(SP)+SP)+X(PC)X(PC)执行再下条指令。执行再下条指令。从从R R取转移地址。取转移地址。按按R R
37、指示从指示从M M取转移地址。取转移地址。从堆栈取返回地址从堆栈取返回地址, ,修改修改SPSP。以以PCPC內容为基准转移。內容为基准转移。(RSTRST)FT0FT0:M IRM IR,例例1 1:JMP R0JMP R0;SP+1 SPSP+1 SP、MARMARM MBR PCM MBR PCET0ET0:ET1ET1:SP MARSP MARET2ET2:R0 PCR0 PCPC+1 PCPC+1 PC无条件转子:无条件转子: R R(R R) (R)+R)+(SP)+SP)+(PC)+PC)+入口在入口在R R中中例例2 2:RST (SP)+RST (SP)+;FT0FT0:M
38、IRM IR,PC+1 PCPC+1 PCET0ET0:、MARMAR例例3 3:JMP X(PC)JMP X(PC);FT0FT0:M IRM IR,PC+1 PCPC+1 PCET0ET0:PC MARPC MARET1ET1:M MBR CM MBR C位移量位移量ET2ET2:PC+C PCPC+C PC 、MARMAR(5 5)转子指令)转子指令入口在入口在M M中中入口在堆栈中入口在堆栈中SP-1 SPSP-1 SPMBR MMBR MST1ST1:PC MBRPC MBR归纳微命令归纳微命令, ,综合化简条件综合化简条件, ,用组合逻辑电路实现。用组合逻辑电路实现。读令读令R R
39、= =在在STST形成子程序入口;在形成子程序入口;在ETET保存返回地址,并转保存返回地址,并转子程序入口。子程序入口。ST0ST0:、MARMAR例:例:JSRJSR(R2R2);); FT0FT0: M IRM IR,PC+1 PCPC+1 PCET0ET0:R2 MARR2 MARET1ET1:M MBR CM MBR C子程序子程序入口入口C PCC PC、MARMAR返回地返回地址压栈址压栈ET2ET2:ET3ET3:4.4.控制逻辑控制逻辑例:例:FT0FT0 +MOV(ST1+ST4+)+MOV(ST1+ST4+)CPPC CPPC = = FT0FT0+P P +MOV(ST
40、2+DT2) X P+MOV(ST2+DT2) X P +4.4.4 4.4.4 微程序控制器设计微程序控制器设计1.1.时序系统时序系统P P 微指令周期微指令周期 微指令微指令打入打入 IR二级时序:二级时序:控制数控制数据通路据通路操作操作 结果打结果打入目的入目的地,地,读取后续读取后续微指令微指令后续微后续微地址打地址打入入 AR2.2.微指令格式微指令格式按数据通路各段操作划分字段,同类操作中互斥按数据通路各段操作划分字段,同类操作中互斥的微命令放同一字段。的微命令放同一字段。 (1)格式)格式数据通路操作数据通路操作 辅助操作辅助操作 AI BI SM C AI BI SM C0
41、 0 S ZO EMAR R W ST SC S ZO EMAR R W ST SC 3 3 5 2 2 3 1 1 1 2 4顺序控制顺序控制 访存操作访存操作 (2)各字段功能)各字段功能1)数据通路操作)数据通路操作AIAI: A输入选择输入选择 000 无输入无输入 001 Ri ARi A010 C AC A011 D AD A100 PC APC AR0R0R3R3、SPSP、PC PC AI BI SM C AI BI SM C0 0 S ZO EMAR R W ST SC S ZO EMAR R W ST SC 3 3 5 2 2 3 1 1 1 2 4BIBI: B输入选择输
42、入选择 000 无输入无输入 001 Ri BRi B010 C BC B011 D BD B100 MBR BMBR BSMSM: ALUALU功能选择功能选择 S S3 3S S2 2S S1 1S S0 0M M C C0 0: 初始进位选择初始进位选择S S: 移位选择移位选择ZOZO: 结果分配结果分配001 CPRi CPRi R0R0R3R3、PSW PSW R0R0R3R3、SPSP、PCPC、PSW PSW 2)访存操作)访存操作EMAREMAR、R R、W W 3)辅助操作)辅助操作00 无操作无操作 01 开中断开中断 10 关中断关中断 11 SIR SIR AI BI
43、 SM C AI BI SM C0 0 S ZO EMAR R W ST SC S ZO EMAR R W ST SC 3 3 5 2 2 3 1 1 1 2 44)顺序控制)顺序控制增量增量断定断定 0000 顺序执行顺序执行 9种种 指明微地址形成方式指明微地址形成方式 SCSC: 0001 无条件转移无条件转移 0010 按操作码分支按操作码分支 0111 转微子程序转微子程序 1000 返回微主程序返回微主程序 增量增量 断定断定 增量增量 3.3.微程序的编制微程序的编制(1)编写顺序)编写顺序按指令执行顺序编写:按指令执行顺序编写:取机器指令取机器指令 SC=0000SC=0000
44、功能转移功能转移 执行执行 按操作码编码顺序,逐级分类编写:按操作码编码顺序,逐级分类编写:MOVMOV指令、指令、 双操作数指令、双操作数指令、 单操作数指令、单操作数指令、 转移指令转移指令 (2)实现分支)实现分支将同类断定依据所对应的微地址放在相应的将同类断定依据所对应的微地址放在相应的微地址微地址形成表形成表中,用中,用SCSC字段选取。字段选取。 顺序执行顺序执行现行微地址现行微地址+1+1SC=0001SC=0001 无条件转无条件转现行微指令给出转移微地址现行微指令给出转移微地址SC=0111SC=0111 转微子程序转微子程序现行微指令给出微子程序现行微指令给出微子程序入口入
45、口SC=1000SC=1000 返回微主程序返回微主程序 从寄存器取返回微地址从寄存器取返回微地址微地址形成表:微地址形成表:SC=0010SC=0010按操作码分支(按操作码分支(4 4路)路)表内单元地址表内单元地址SC=0011SC=0011(断定依据)(断定依据):MOVMOV执行规定操作执行规定操作后转取指入口后转取指入口双双单元内容单元内容 (微地址)(微地址)单单JMP/JSRJMP/JSR03H03H 取源数、目的地取源数、目的地0CH0CH 取源数、目的数取源数、目的数24H24H 取目的数取目的数按按J J、PCPC分支分支3FH3FH按操作码按操作码 DR DR分支(分支
46、(2424路)进入执行路)进入执行DRDRMOVMOV06H06HDRDRMOVMOV0AH0AH双双单单3DH3DHSC=0100SC=0100SC=0110SC=01101 1)取指微指令代真)取指微指令代真从从60H60H开始开始按按J J、PCPC分支(分支(4 4路)路)40H40H46H46H 顺序顺序/ /转移地址转移地址 PC PC SC=0101SC=0101按源寻址方式分支(按源寻址方式分支(7 7路)路)4DH4DH5EH5EH按目的寻址方式分支按目的寻址方式分支(3)微指令实例)微指令实例 AI BI SM C AI BI SM C0 0 S ZO EMAR R W S
47、T SC S ZO EMAR R W ST SC 3 3 5 2 2 3 1 1 1 2 4M IRM IR:微地址微地址00000 000 000 000 00000 00000 00 00 000 1 1 0 11 000000 00 000 1 1 0 11 0000 AI BI SM C AI BI SM C0 0 S ZO EMAR R W ST SC S ZO EMAR R W ST SC 3 3 5 2 2 3 1 1 1 2 400 00 微地址微地址01100 000100 00010010 10010 01 00 111 0 0 0 00 000001 00 111 0 0
48、 0 00 0000PC+1 PCPC+1 PC:按操作码分支:按操作码分支:微地址微地址02000 000000 00000000 00000 00 00 000 0 0 0 00 00 00 000 0 0 0 00 001000102 2)机器指令的微程序实现)机器指令的微程序实现例:例:MOVMOV(R0R0),),R1R1;按流程写出微地址;按流程写出微地址01 01 02 02 03 03 4C 4C 4E 4E 4F 4F 04 04 60 60 05 05 0A 0A 0B 0B 08 08 09 09 00 00 本章小结本章小结1、建立、建立CPU整机概念整机概念逻辑组成逻
49、辑组成工作机制工作机制(1)逻辑组成)逻辑组成寄存器、寄存器、ALU设置,数据通路结构设置,数据通路结构(2)工作机制)工作机制寄存器传送级:寄存器传送级:微操作控制级:微操作控制级:各类指令的流程各类指令的流程微命令序列微命令序列指令的执指令的执行过程行过程(5.4.2)(5.5.2)拟定流程的关键:清楚了解数据通路结构拟定流程的关键:清楚了解数据通路结构 熟练掌握基本寻址方式熟练掌握基本寻址方式基本寻址方式(模型机)基本寻址方式(模型机)寄存器寄存器寻址寻址 :R 寄存器寄存器间址间址 :(:(R) 自减型寄存器间自减型寄存器间址址 :(R) 自增型寄存器间自增型寄存器间址址 :(:(R)
50、+立即寻立即寻址址 :(:(PC)+ 变址:变址:(R)相对寻相对寻址址 :(PC) (SP) (用于入栈操作)(用于入栈操作) (SP)+ (用于出栈操作)(用于出栈操作)(5.4.1)(1) 微命令的产生方式微命令的产生方式2、有关的基本概念、有关的基本概念组合逻辑控制方式:组合逻辑控制方式:基本思想基本思想 、优缺点、应用场合、优缺点、应用场合微程序控制方式:微程序控制方式:基本思想基本思想 、优缺点、应用场合、优缺点、应用场合(2) 时序控制方式时序控制方式定义、特点、应用场合定义、特点、应用场合同步控制方式同步控制方式 :异步控制方式:异步控制方式: 定义、特点、应用场合定义、特点、
51、应用场合(5.5.4)(5.6.1)(5.8.1)(5.3.1)主设备、从设备主设备、从设备 (3) 主机与外设的信息传送控制方式主机与外设的信息传送控制方式中断方式:中断方式:DMADMA方式:方式:(5.2.2)定义定义 、流程、应用场合、流程、应用场合定义定义 、流程、应用场合、流程、应用场合用寄存器传送语言写出模型机加法指令用寄存器传送语言写出模型机加法指令ADD ADD (R0R0),),X X(PCPC)的流程,并列出该指令)的流程,并列出该指令源周期的操作时间表。源周期的操作时间表。作业:作业:第四章复习提纲第四章复习提纲1.1.CPUCPU组成(重在数据通路结构)。组成(重在数
52、据通路结构)。2.2.指令流程指令流程( (寄存器传送级寄存器传送级),),操作时间表操作时间表( (微命令序列微命令序列) )。3.微指令设计方法微指令设计方法(分段原则、各段功能、编码方法、微分段原则、各段功能、编码方法、微地址形成方法地址形成方法)。4.基本概念如:同步控制与异步控制基本概念如:同步控制与异步控制(含义、应用场合含义、应用场合),组合逻辑控制与微程序控制组合逻辑控制与微程序控制(基本思想、优缺点、应用场基本思想、优缺点、应用场合合),I/O传送控制方式传送控制方式(定义、应用场合定义、应用场合),控制字,状态,控制字,状态字,程序状态字,主设备,从设备字,程序状态字,主设备,从设备等。等。