《萝卜家园样板》由会员分享,可在线阅读,更多相关《萝卜家园样板(49页珍藏版)》请在金锄头文库上搜索。
1、样板样板20CLS21ADD 3022STA 4023NOP23JMP 213040操作控制器操作控制器时序产生器时序产生器RAMALU时钟时钟状态反馈状态反馈取指控制取指控制执行控制执行控制PC+1ACDRIRIDPCAR PSW 20CLS指令结束指令结束榴悔陇粹凑滑除流珍峨极脆离牡勇颗撑汕十唱披宝唉沉净矩遭壤唾膏碰戌萝卜家园-样板萝卜家园-样板PC AR ABUSDBUS DR IR PC+1译码或测试译码或测试0 ACIR ARIR ARIR PCPC ARAR ABUS DBUS DR DR ALUALU ACAR ABUS AC DR DR DBUSCLAADDSTAJMPNOP5
2、.2.6 用方框图语言表示指令周期用方框图语言表示指令周期鄂扁饯红搔郝厂肆贪亿办缕暇甩掌栖岛营蹦翱霸竹凉惯择置贝蚊鳞眨境叶萝卜家园-样板萝卜家园-样板 5.3.1 时序信号的作用和体制时序信号的作用和体制时序信号的作用时序信号的作用:保证计算机能准确、迅速、有条:保证计算机能准确、迅速、有条 不紊地工作。不紊地工作。 在微程序控制器中在微程序控制器中,时序信号比较简单,一般采,时序信号比较简单,一般采用用节拍电位节拍电位节拍脉冲节拍脉冲二级体制二级体制。就是说,它只有严。就是说,它只有严格节拍电位,在节拍电位中又包含若干个节拍脉冲格节拍电位,在节拍电位中又包含若干个节拍脉冲(时钟周期)。节拍电
3、位表示一个(时钟周期)。节拍电位表示一个CPU周期的时间,周期的时间,而节拍脉冲把一个而节拍脉冲把一个CPU周期划分成几个较小的时间间周期划分成几个较小的时间间隔。根据需要,这些时间间隔可以相等,也可以不相隔。根据需要,这些时间间隔可以相等,也可以不相等。等。5.3 时序产生器和控制方式时序产生器和控制方式斡狮录辩蹭滩朴付婴兹苔法土拘襟搅盐滴烽三因平建刚净米极陪矩浆沼啦萝卜家园-样板萝卜家园-样板5.3.2 时序信号产生器时序信号产生器时序信号产生器的功能时序信号产生器的功能是:用逻辑电路实现时序。是:用逻辑电路实现时序。启停控制逻辑启停控制逻辑节拍脉冲和读写时序译码逻辑节拍脉冲和读写时序译码
4、逻辑环形脉冲发生器环形脉冲发生器时钟脉冲源时钟脉冲源IORQ MREQ RDWRT1T2T3T4IORQOMREQORDOWROT1OT2OT3OT4OIORQ MREQRD WR 停机停机启动启动时序信号产生器框图时序信号产生器框图磕鲸冷爆馈秋抿洼奠鼎跨变杖第列部履扎汰盾孤毒你赶砚撰柯宪杰谍侨索萝卜家园-样板萝卜家园-样板 由石英晶体振荡器和与非门组成的正由石英晶体振荡器和与非门组成的正反馈振荡电路组成。反馈振荡电路组成。 作用产生一组有序的间隔相等或不作用产生一组有序的间隔相等或不 等的脉冲序列。等的脉冲序列。环形脉冲发生器环形脉冲发生器的两种形式:的两种形式:采用普通计数器:在节采用普通
5、计数器:在节拍脉冲上带来毛刺。拍脉冲上带来毛刺。循环移位寄存器循环移位寄存器1.时钟源时钟源2.环形脉冲发生器环形脉冲发生器展揩针铡恃肖卿返奋五涅摘羌权庄鳖矢抗姜纽锡麦喷曹柳消庶傀交呸佛跋萝卜家园-样板萝卜家园-样板脉冲时钟源脉冲时钟源QQC1DQQC2DQQC3DQQC4D23SCLRMREQOMREQIORQRDT1oT2oT3oRDOWEOIORQOT4oWE+5VR环环形形脉脉冲冲发发生生器器与与译译码码逻逻辑辑100QQC1DQQC2DQQC3D0001过100 ns之后001QQC11QQC3D0QQC2D0+5V慢坷靳萤炽钟忙骑裹搔鲸夺夷榨启银贮勒句恍扁寅榜墓外来耕磁锈铭榜拇萝卜
6、家园-样板萝卜家园-样板脉冲时钟源脉冲时钟源QQC1DQQC2DQQC3DQQC4D23SCLRMREQOMREQIORQRDT1oT2oT3oRDOWEOIORQOT4oWE+5VR环环形形脉脉冲冲发发生生器器与与译译码码逻逻辑辑01第二个脉冲来时01QQC11+5V10QQC3D00 0QQC2D1崎维寒萝烹彭拽蕉最庭佰昔咋详淀论停逐钠埔湛泻狐见乍耍凤儿棒烦踞缅萝卜家园-样板萝卜家园-样板脉冲时钟源脉冲时钟源QQC1DQQC2DQQC3DQQC4D23SCLRMREQOMREQIORQRDT1oT2oT3oRDOWEOIORQOT4oWE+5VR环环形形脉脉冲冲发发生生器器与与译译码码逻逻
7、辑辑01第三个脉冲来时01QQC11+5V100QQC2D1 1QQC3D1谨阐聪特即瘁邢生晤舀等瘤摇衍嘎犯雪湛粤咽京听涛笛狗烈讶泅冒传失葵萝卜家园-样板萝卜家园-样板脉冲时钟源脉冲时钟源QQC1DQQC2DQQC3DQQC4D23SCLRMREQOMREQIORQRDT1oT2oT3oRDOWEOIORQOT4oWE+5VR环环形形脉脉冲冲发发生生器器与与译译码码逻逻辑辑101001+5V111QQC1DQQC2DQQC3D000QQC11QQC2D0QQC3D0第四个脉冲来时第五个脉冲来时彬忆平鼻秩胎趟纺铱奎暂狼芒焰规霞嚏竹热争罚魄淘罚租箍饲蹦绿冈陆范萝卜家园-样板萝卜家园-样板脉冲时钟源
8、脉冲时钟源QQC4D23SCLRMREQOMREQIORQRDT1oT2oT3oRDOWEOIORQOT4oWE+5VR环环形形脉脉冲冲发发生生器器与与译译码码逻逻辑辑10样样品品QQC1DQQC2DQQC3D000蜜疙分祭兑撬眼盅并胆脸蛆难似曼诸虽绢鄙昧袍秆燃捻是至搽霞惫贿喻硬萝卜家园-样板萝卜家园-样板3. 节拍脉冲和读节拍脉冲和读 / 写时序的译码写时序的译码根据上图得到,其译码电路逻辑可表示为:根据上图得到,其译码电路逻辑可表示为:T1o= C1* C2T2o= C2 * C2T3o= C3T4o= C1根据上图,节拍电位与节拍脉冲时序关系如下:根据上图,节拍电位与节拍脉冲时序关系如下
9、:读写时序信号的译码逻辑表达式为:读写时序信号的译码逻辑表达式为:RD o= C2* RDWE o= C3* WEIORQ o= C2* IORQMREQ o= C2* MREQ眩切漱乱水编傅漱疫俭逻汀癣瓦估帽哆逮虎儒辊纽账顿毕沉呸捅甲兽轨焕萝卜家园-样板萝卜家园-样板WE12345678910C4C3C2C1MREQORDRDWET1T2T3T4节节拍拍电电位位与与节节拍拍脉脉冲冲时时序序关关系系图图署脑尺甜藏芍颠财询涉巩梢争算菌蒙炔扩折哪细机鞍避墓歇对承庚券筑锚萝卜家园-样板萝卜家园-样板4.启停控制逻辑启停控制逻辑 机器一旦接通电源,就会自动产生原始的节拍脉冲机器一旦接通电源,就会自动产
10、生原始的节拍脉冲信号信号T1OT4O,然而只有在启动机器运行的情况,才允,然而只有在启动机器运行的情况,才允许时序产生器发出许时序产生器发出CPU工作所需的节拍脉冲工作所需的节拍脉冲T1T4 。MREQORDT1T2T3RDOWET4WEOMREQOT2oT3oT4oT1oQQC1DT4o启动启动停机停机CLR启启停停控控制制逻逻辑辑炒助狐碌晒筑意蔫驭珐蹬害初欲桌狸伪异法居胸瘤仟尚埋滚星帚睁颐澄附萝卜家园-样板萝卜家园-样板5.3.3 控制方式控制方式机器指令的指令周期是由多个机器指令的指令周期是由多个CPU周期组成。周期组成。控制方式有如下四种:控制方式有如下四种:1. 同步控制方式同步控制
11、方式:在任何情况下,已定的指令在执行时:在任何情况下,已定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的,称为所需的机器周期数和时钟周期数都是固定不变的,称为同步控制方式。同步控制方式。(1)采用完全统一的机器周期执行各种不同指令。)采用完全统一的机器周期执行各种不同指令。(2)采用不定长机器周期。将大多数操作安排在一个)采用不定长机器周期。将大多数操作安排在一个较短的机器周期内完成,对于某些时间紧张的操作,则较短的机器周期内完成,对于某些时间紧张的操作,则采取延长机器周期的方法。采取延长机器周期的方法。(3)中央控制与局部控制结合。)中央控制与局部控制结合。中央控制中央控制:将大部
12、分指令安排在固定的机器周期内完成。:将大部分指令安排在固定的机器周期内完成。局部控制局部控制:对少数复杂指令(乘、除、浮点运算)采用:对少数复杂指令(乘、除、浮点运算)采用另外时序定时。另外时序定时。根据不同情况,根据不同情况,同步控制方式可选取同步控制方式可选取如下如下方案方案:冶贯雁骑诉辉章慢号铆聪卓府一埂量井踩寅疏磺腑登巫硫粹专仿肤骡鸭肉萝卜家园-样板萝卜家园-样板2. 异步控制方式异步控制方式:每条指令周期可由多少不等的机器周:每条指令周期可由多少不等的机器周期数组成。指令周期数和时针周期数不固定。期数组成。指令周期数和时针周期数不固定。3. 联合控制方式联合控制方式:同步控制和异步控
13、制相结合的方式。:同步控制和异步控制相结合的方式。方式方式1:大部分操作序列安排在固定的机器整齐中,对:大部分操作序列安排在固定的机器整齐中,对某些时间难以确定的操作,以执行部件的某些时间难以确定的操作,以执行部件的“回答回答”信号信号作为操作的结束。作为操作的结束。方式方式2:机器周期的节拍脉冲固定,但指令周期中的机:机器周期的节拍脉冲固定,但指令周期中的机器周期数不固定。器周期数不固定。4. 人工控制方式人工控制方式:为了调试机器和软件开发的需要,:为了调试机器和软件开发的需要,在计算机面板和内部设置一些开关或按键以进行人工在计算机面板和内部设置一些开关或按键以进行人工控制。如控制。如RE
14、SET键,连续执行或单条指令执行的转换键,连续执行或单条指令执行的转换开关,符合停机开关等。开关,符合停机开关等。跟冯讥唇玩砚火疙亢崖隅交肘更铭浴醒员更黄挽止瓜擦兽贾赂咸甚奄旬虚萝卜家园-样板萝卜家园-样板微程序控制器同组合逻辑控制器相比较微程序控制器同组合逻辑控制器相比较:特点特点:具有规整性、灵活性、可维护性。:具有规整性、灵活性、可维护性。 在计算机系统中,在计算机系统中,微程序设计是利用软件方法来设微程序设计是利用软件方法来设计硬件的一门技术计硬件的一门技术。微程序控制器的微程序控制器的基本思想:基本思想: 操作控制信号编成所谓的操作控制信号编成所谓的“微微指令指令”,存放在,存放在R
15、OM中。中。 运行时,一条条地读出这些运行时,一条条地读出这些微指令。微指令。 产生全机所需要的各种操作产生全机所需要的各种操作控制信号。控制信号。 5.4 微程序控制器微程序控制器 佯娱豫乔浊醛惜蓖沈硷衫耪烫趴滇瀑撞僚墙淋馋牵摄苏颐助腰迪焕碧煤痪萝卜家园-样板萝卜家园-样板5.4.1 微命令和微操作微命令和微操作一台数字计算机基本上可以划分为两大部分:一台数字计算机基本上可以划分为两大部分:控制部件控制部件执行部件执行部件控制命令控制命令反馈反馈 测试测试微指令微指令:控制部件通过控制线向执行部件发出的各种:控制部件通过控制线向执行部件发出的各种 控制命令。控制命令。微操作微操作:执行部件接
16、受微命令后所进行的操作。:执行部件接受微命令后所进行的操作。微操作微操作相斥性相斥性:同一个:同一个CPU周期不能并行执行周期不能并行执行 的微操作。的微操作。相容性相容性:同一个:同一个CPU周期可并行执行的周期可并行执行的 微操作。微操作。摇匙赊永拎五我寓锡妈疼微缠掣狐奠群盾全源幂陌钙烷溃搜醒欠龚你欺惩萝卜家园-样板萝卜家园-样板CY+MR1R2R3X468579123Y简单运算器数据通路图简单运算器数据通路图DRALU劈次净擂哺户促羞房训慧转树恳却黍匹确还拉龋琳挂弟吼姆像辐住惺芋豺萝卜家园-样板萝卜家园-样板 上图所示,是一个简单运算器模型,其中上图所示,是一个简单运算器模型,其中ALU
17、为算为算术逻辑单元,术逻辑单元,R1、R2、R3为三个寄存器。为三个寄存器。 CY为最高位为最高位触发器,有进位时该触发器状态为触发器,有进位时该触发器状态为“1”。 微操作微操作1、2、3是可以同时进行的,所以是相容性是可以同时进行的,所以是相容性的微操作。另外,的微操作。另外,ALU的的X输入微操作输入微操作4、6、8分别与分别与Y输入的输入的5、7、9任意两个微操作,也都是相容性的。任意两个微操作,也都是相容性的。 ALU的操作(加、减、传送)在同一个的操作(加、减、传送)在同一个CPU周期中周期中只能选择一种,不能并行,所以以只能选择一种,不能并行,所以以+、M(传送)(传送)三个微操
18、作是互斥性的微操作。类似地,三个微操作是互斥性的微操作。类似地,4、6、8三个三个微操作是互斥性的,微操作是互斥性的,5、7、9三个微操作也是互斥性的。三个微操作也是互斥性的。乔摩子均遭歉飞耶翔鸿巳炽裔杭曼规种诛皑殊伦僵葫驮颠虱燃侗届芳绩螟萝卜家园-样板萝卜家园-样板1234567891011121314151617181920212223LDR2R1XR2XDRXR1YR2YR3YLDR1LDR3RDLDDR+M-LDIRLDARPC+1P1直直 接接 地地 址址P2操作控制操作控制操作控制操作控制顺序控制顺序控制微指令基本格式微指令基本格式每一位表示一个微指令,每一位表示一个微指令,当某一
19、位为当某一位为“1”时,表示发出微命令,若第时,表示发出微命令,若第2位为位为“1”时,表示发出时,表示发出LDD2的微命令。的微命令。在机器的一个在机器的一个CPU周期中,一组实现一定功能的微命令的组合,构成一条周期中,一组实现一定功能的微命令的组合,构成一条微指令微指令。5.4.2 微指令和微程序微指令和微程序微程序微程序:一条指令的功能是由多条微指令组成的序列实现的。:一条指令的功能是由多条微指令组成的序列实现的。甫戚书畏老逾巡骗哼盂宗葱牢躺辑仅嗜苛肛窥弓烧痴魏乾宣学哉枝赴擦约萝卜家园-样板萝卜家园-样板节拍电节拍电位信号位信号节拍脉节拍脉冲信号冲信号“+”LDR1600ns200CPU
20、周期周期LDR1LDR2LDR3LDR1LDR2LDR3T4运算器操作时序与产生逻辑运算器操作时序与产生逻辑扇禁目嗡渴萧场塌许蜗奶冉讨蜡非敏芽匣阜倪祖辗砂凰魏剔裴桶肖壶再狐萝卜家园-样板萝卜家园-样板5.4.3 微程序控制器原理框图微程序控制器原理框图OP控制存储器控制存储器地址译码地址译码微地址微地址寄存器寄存器地址转移地址转移逻辑逻辑P字段字段控制字段控制字段微指令信号微指令信号状态条件状态条件指令寄存器指令寄存器IR微程序控制器组成原理框图微程序控制器组成原理框图拄辫盖妥华腻哪试机盔祟桨融帽渍湍狞烘匆孤女臼二噬俱庶咐划朋顿罩氢萝卜家园-样板萝卜家园-样板5.4.3 微程序控制器原理框图微
21、程序控制器原理框图P字段字段控制字段控制字段微程序控制器组成原理框图微程序控制器组成原理框图OP控制存储器控制存储器地址译码地址译码微地址微地址寄存器寄存器地址转移地址转移逻辑逻辑微指令信号微指令信号状态条件状态条件指令寄存器指令寄存器IR控制存储器控制存储器用来存放实现全部指令系统的微程序,它是一种只读存储器用来存放实现全部指令系统的微程序,它是一种只读存储器微命令微命令寄存器寄存器地址转移地址转移逻辑逻辑地址转移逻辑地址转移逻辑承担自动完成修改微地址的任务承担自动完成修改微地址的任务 如果微程序不出现分支,那么下一条微指令如果微程序不出现分支,那么下一条微指令的地址就直接有微地址寄存器给出
22、。当微程序出的地址就直接有微地址寄存器给出。当微程序出现分支时,意味着微程序出现条件转移。现分支时,意味着微程序出现条件转移。P字段字段控制字段控制字段微地址微地址寄存器寄存器微指令寄存器微指令寄存器:它用来存放由控制存储器读出的一条微指令信息。:它用来存放由控制存储器读出的一条微指令信息。其中微地址寄存器其中微地址寄存器:决定将要访问的下一条微指令的地址决定将要访问的下一条微指令的地址,微指令寄存器微指令寄存器:保存一条微指令的操作控制字段和判别测试字段的信息保存一条微指令的操作控制字段和判别测试字段的信息。指令寄存器指令寄存器再舰轰擦烁租让钨徘蛆袖底拉车书错泊传篓秒苛怠谎靛擂卒丧炔妈拳绅索
23、萝卜家园-样板萝卜家园-样板控制存储器控制存储器:它用来存放实现全部指令系统的微程:它用来存放实现全部指令系统的微程序,它是一种只读存储器。序,它是一种只读存储器。微指令寄存器微指令寄存器:它用来存放由控制存储器读出的一:它用来存放由控制存储器读出的一条微指令信息。其中微地址寄存器决定将要访问的下条微指令信息。其中微地址寄存器决定将要访问的下一条微指令的地址,而微指令寄存器则保存一条微指一条微指令的地址,而微指令寄存器则保存一条微指令的操作控制字段和判别测试字段的信息。令的操作控制字段和判别测试字段的信息。微指令周期微指令周期:是指读出一条微指令并执行微指令的时间:是指读出一条微指令并执行微指
24、令的时间总和称为一个微指令周期。总和称为一个微指令周期。地址转移逻辑地址转移逻辑:如果微程序不出现分支,那么下一条:如果微程序不出现分支,那么下一条微指令的地址就直接有微地址寄存器给出。当微程序出微指令的地址就直接有微地址寄存器给出。当微程序出现分支时,意味着微程序出现条件转移。现分支时,意味着微程序出现条件转移。微地址微地址:微指令由控制存储器读出后直接给出下一条:微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址。微指令的地址,通常我们简称微地址。井冈戴犁胎吭迈字芝泻臻凡爽阜拒历胚常汐际货函甄塑诱审尉呜症引瘫卡萝卜家园-样板萝卜家园-样板例:例:BCD 码相加码相加已知
25、:已知:R1=a , R2=b, R3=6若:若:a+b+R316 不做减不做减6修正修正PCARAUSDBUSDRPC+1 P1 R1 + R2 R2R2 + R3 R2R2 + R3 R2 P2 RD101000001001000000010000CY01 1 1 11 0 0 11 0 0 0 10 1 0 10 1 0 00 1 1 0ab6+5+4=90 1 0 10 1 1 00 1 1 0ab6+5+6=110 1 1 0修正修正大于大于16 不用修正不用修正洱鄙洗锗壶框籽榴淌殉寄操娘慨慷郁嘎扩趴媚樊琐衰魄嚷鳞缅株陨喳嘘护萝卜家园-样板萝卜家园-样板LDR2R1XR2XDRXR1
26、YR2YR3YLDR1LDR3RDLDDR+M-LDIRLDARPC+1P1直直 接接 地地 址址P2操作控制操作控制操作控制操作控制顺序控制顺序控制023456789101112131415161718192021222300000000000011111100000010100100100000000010010100010011000000001000001000100110000000000000第一条微指令第一条微指令挡饲罐凳造盼钱货奥孝狭贰区抒寐对实要唁苗挠扬漠染裸岛边措班芯浊种萝卜家园-样板萝卜家园-样板LDR2R1XR2XDRXR1YR2YR3YLDR1LDR3RDLDDR+M
27、LDIRLDARPC+1P1直直 接接 地地 址址P2操作控制操作控制操作控制操作控制顺序控制顺序控制023456789101112131415161718192021222300000000000011111100000第第16位发出位发出 LDAR 将将PC内容送到地址寄存器内容送到地址寄存器AR第第13位位 发出发出RD第第14位位 发出发出LDDR第第15位位 发出发出LDIR将缓冲器中的将缓冲器中的“十进制加法十进制加法”指令再送到指令再送到IR第第17位位 发出发出PC+1微指令,使程序计数器加微指令,使程序计数器加1微指令的顺序控制字段指明下一条微指令的地址是微指令的顺序控制字段
28、指明下一条微指令的地址是0000,但由于判别字段中第,但由于判别字段中第18位位为为1,表明,表明P1测试,因此测试,因此0000不是下一条微指令的真正地址。不是下一条微指令的真正地址。P1测试的测试的“状态条件状态条件”是指令寄存器的操作码字段,即用是指令寄存器的操作码字段,即用OP字段字段作为形成下一条微指令的地址作为形成下一条微指令的地址,于是微,于是微地址寄存器的内容修改成地址寄存器的内容修改成1010。指令寄存器指令寄存器OP 的操作码为的操作码为1010为加法操作为加法操作第一条微指令第一条微指令毕瘦盗狡滞氨睡蕴狐泞匣课寇丢姥魄堰映亏换饱剩屉磋奶孙汉圭潮盒兜兹萝卜家园-样板萝卜家园
29、-样板LDR2R1XR2XDRXR1YR2YR3YLDR1LDR3RDLDDR+MLDIRLDARPC+1P1直直 接接 地地 址址P2操作控制操作控制操作控制操作控制顺序控制顺序控制023456789101112131415161718192021222301010010010000000001001 操作控制部分发出四个微命令:操作控制部分发出四个微命令:R1 X,R2 Y,+,LDR2 完成完成 R1+R2 R1微指令的顺序控制字段指明下一条微指令的地址是微指令的顺序控制字段指明下一条微指令的地址是0000,但由于判别字段测试但由于判别字段测试P1和和P2均为均为0,表示不进行测试,于是
30、直接给,表示不进行测试,于是直接给出下一条微指令的地址为出下一条微指令的地址为1001。按照按照1010这个微地址读出的第二条微指令这个微地址读出的第二条微指令第二条微指令第二条微指令伞忻撼布咬煤牧乃剂归铬宁厂朝颖通坪沸挤焙娠葵恶晦赌宗凡藉妙撼出棱萝卜家园-样板萝卜家园-样板LDR2R1XR2XDRXR1YR2YR3YLDR1LDR3RDLDDR+MLDIRLDARPC+1P1直直 接接 地地 址址P2操作控制操作控制操作控制操作控制顺序控制顺序控制023456789101112131415161718192021222301000100110000000010000 操作控制部分发出四个微命
31、令:操作控制部分发出四个微命令:R2 X,R3 Y,+,LDR2 完成完成 R2+R3 R2微指令的顺序控制字段中由于判别字段微指令的顺序控制字段中由于判别字段P2 为为1,表明进行,表明进行P2 测试,测试,测试的测试的“状态条件状态条件”为进位位标志为进位位标志 Cy。按照按照1001这个微地址读出的第三条微指令这个微地址读出的第三条微指令第三条微指令第三条微指令 设定:设定: Cy=1 下一条微指令的地址是下一条微指令的地址是 0000 ,Cy=0 下一条微指令下一条微指令的地址是的地址是 0001。 若:若:Cy=0 那么下一条微指令的地址是那么下一条微指令的地址是 0001。既硕怠胆
32、键蹬恼逊鲜孜藩幽仗跋逐跺菱社锭寞滚降丙锅祝擂贼亩趴会踪刺萝卜家园-样板萝卜家园-样板LDR2R1XR2XDRXR1YR2YR3YLDR1LDR3RDLDDR+MLDIRLDARPC+1P1直直 接接 地地 址址P2操作控制操作控制操作控制操作控制顺序控制顺序控制023456789101112131415161718192021222301000100100100000000000 操作控制部分发出四个微命令:操作控制部分发出四个微命令:R2 X,R3 Y,LDR2 完成完成 R2 R3 R2微指令的顺序控制部分直接给出微指令的顺序控制部分直接给出 下一条微指令的地址为下一条微指令的地址为000
33、0 ,按该按该地址取出的微指令是地址取出的微指令是“取指取指”微指令。微指令。按照按照0001这个微地址读出的第四条微指令这个微地址读出的第四条微指令第四条微指令第四条微指令若若:第三条微指令进行测试:第三条微指令进行测试 时时 Cy=1 那么微地址仍保持为那么微地址仍保持为 0000, 将不执行第四条微指令而直接由第三条微指令转向公操作。将不执行第四条微指令而直接由第三条微指令转向公操作。腥猪渊炽诊汉芜近龚鸣姥性肚革晤钝恤儡叭蚌帚台雀买拙瘤蛋奔绕尚曳宅萝卜家园-样板萝卜家园-样板5.4.4 CPU周期与微指令周期的关系周期与微指令周期的关系微指令周期:等于读出微指令的时间加上执行该条微指令周
34、期:等于读出微指令的时间加上执行该条微指令的时间。微指令的时间。T1T2T3T4T1T2T3T4执行微指令执行微指令微指令周期微指令周期微指令微指令读读CPU周期周期CPU周期周期CPU周期与微指令周期的关系周期与微指令周期的关系仁阻悬旭吐祝模壶林眷籽范酉查箍太牟盼误絮完登藉躇矽暖凶敞洪钥豫绕萝卜家园-样板萝卜家园-样板微命令寄存器微命令寄存器 控控 制制 存储器存储器 地址译码地址译码微地址寄存器微地址寄存器指令寄存器指令寄存器 IR地址寄存器地址寄存器AR程序计数器程序计数器PC 地址译码地址译码数据缓冲寄存器数据缓冲寄存器DROP+1微命令微命令1、一条机器指令一条机器指令对应对应一个微
35、程序一个微程序,这个微程序是,这个微程序是由由 若干条微指令若干条微指令序列组成的。序列组成的。2、从指令与微指令,程序与微程序,地址与微地、从指令与微指令,程序与微程序,地址与微地址的一一对应来看,前者与内存储器有关,后者址的一一对应来看,前者与内存储器有关,后者与控制存储器有关。与控制存储器有关。3、指令周期中的每、指令周期中的每一个一个CPU周期周期对应对应着着一条微一条微指令指令。5.4.6 机器指令机器指令 与与 微指令微指令 的的 关系关系兽买光诸沧奏襄征樟疑竟密熏摆涡便钨傈馅然聚言房聂洛埔啃颓讹艾寺闭萝卜家园-样板萝卜家园-样板读读 控控制制写写 控控制制RRA0RA1选择选择W
36、WA0WA1选择选择100R1100R0101R1101R1110R2110R2111R3111R30XX不读出不读出0XX不写入不写入0 1 2 34567891011RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUReset要求:用二进制代码写出如下指令的微程序要求:用二进制代码写出如下指令的微程序(1) “ADD R0,R1”(2) “SUB R2,R2”(3)”MOV R2,R3”芝懂赵到戚裸涛序敝譬爪凶数锗坠饺秘移酗硷酱子碰纪油贺容辊关鸣韧交萝卜家园-样板萝卜家园-样板ALUm2m1读读ROM2us500ns1 us1个微指令周期个微指令周期ALU SA SB
37、4个通用寄存器RA0RA1RA0RA1读选择写选择RWLDSALDSB16位位16位位SB-ALUSB-ALU16位位Rseet(1) “ADD R0,R1”(2) “SUB R2,R2”(3)”MOV R2,R3”呕植见悼讨茬励乱犬单昭几尧喧窍娶腔磅揪菩欠蓄窿椎肯挠羹娶肘郊侗偷萝卜家园-样板萝卜家园-样板 测试测试 R2 SAMOVADDSUB 取指取指 R3 SAR2 SBSA-SB R3R0 SAR1 SB0 SBSA+SB R3SA+SB R1指指 令令微微 程程 序序 代代 码码ADD1. 00XX101000002. 01XX100100003. XX0101001001SUB4.
38、 11XX101000005. 10XX100100006. XX1101000101MOV7. 10XX101000008. XX11010010111 0 X X10100000RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUResetX X 1 101001011RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUResetALU SA SB 4个通用寄存器RA0RA1RA0RA1读选择写选择RWLDSALDSB16位位16位位SB-ALUSB-ALU16位位RseetMOV R2 , R3 指令指令 (R2)+(R3) R3尿云忠毕冉锄流拄栋速揣
39、乏冷毫莱管溉荆魄保碎排涂淳吏抹锤鲜损追衡橙萝卜家园-样板萝卜家园-样板 测试测试 R2 SAMOVADDSUB 取指取指 R3 SAR2 SBSA-SB R3R0 SAR1 SB0 SBSA+SB R3SA+SB R1指指 令令微微 程程 序序 代代 码码ADD1. 00XX101000002. 01XX100100003. XX0101001001SUB4. 11XX101000005. 10XX100100006. XX1101000101MOV7. 10XX101000008. XX11010010110 0 X X10100000RA0 RA1WA0 WA1RWLDSALDSBSB-A
40、WSB-ALUReset0 1 X X10010000RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUResetALU SA SB 4个通用寄存器RA0RA1RA0RA1读选择写选择RWLDSALDSB16位位16位位SB-ALUSB-ALU16位位RseetADD R0 , R1 指令指令 完成完成 (R0)+(R1) R1喻势茫难匪佐弗缺巴酚堤巩科眷坍增磷迫醒啃凯淳齐条兜醛玛故搜癌抒啸萝卜家园-样板萝卜家园-样板 测试测试 R2 SAMOVADDSUB 取指取指 R3 SAR2 SBSA-SB R3R0 SAR1 SB0 SBSA+SB R3SA+SB R1指指 令令
41、微微 程程 序序 代代 码码ADD1. 00XX101000002. 01XX100100003. XX0101001001SUB4. 11XX101000005. 10XX100100006. XX1101000101MOV7. 10XX101000008. XX1101001011X X 0 101001001RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUReset0 1 X X10010000RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUResetALU SA SB 4个通用寄存器RA0RA1RA0RA1读选择写选择RWLDSALDSB16
42、位位16位位SB-ALUSB-ALU16位位RseetADD R0 , R1 指令指令 完成完成 (R0)+(R1) R1浓密贸鞠尺丁决瀑颂晌蓬吝粳图募堰鸡衔姬利要半鹊酬掌看部你娠宦篓阻萝卜家园-样板萝卜家园-样板 测试测试 R2 SAMOVADDSUB 取指取指 R3 SAR2 SBSA-SB R3R0 SAR1 SBR2 SASA+SB R3SA+SB R1指指 令令微微 程程 序序 代代 码码ADD1. 00XX101000002. 01XX100100003. XX0101001001SUB4. 11XX101000005. 10XX100100006. XX1101000101MOV
43、7. 10XX101000008. XX11010010110 1 2 34567891011RA0 RA1WA0 WA1RWLDSALDSBSB-AWSB-ALUReset菜廷坯界颠岳澎缉塞找睡柠萨俱陵牺爽技仟挝盆仗剿泽鹏山卧枉贞扣栖济萝卜家园-样板萝卜家园-样板护脯汕背哄完撤辩颂闲扮旭禁斗矫阁俞盒滩椅璃俭运玄奇函隧涸孤限轨阴萝卜家园-样板萝卜家园-样板设计微指令结构应当追求的目标设计微指令结构应当追求的目标 5.5 微程序设计技术微程序设计技术(1)有利于缩短微指令字长度;)有利于缩短微指令字长度;(2)有利于减小控制存储器的容量;)有利于减小控制存储器的容量;(3)有利于提高微程序的执行
44、速度;)有利于提高微程序的执行速度;(4)有利于对微指令的修改;)有利于对微指令的修改;(5)有利于微程序设计的灵活性。)有利于微程序设计的灵活性。学生教师审目瞄分吞驳块影垃敖现圾此裹窒走舵咸歌窿吸懒篷宋渔噪本圈谱袱懦裙萝卜家园-样板萝卜家园-样板 5.5.1 微指令编码微指令编码 微指令编码微指令编码:对微指令中操作控制字段采用的表示方法。对微指令中操作控制字段采用的表示方法。通常有通常有三种方法三种方法:(1)直接表示法直接表示法 特点特点:操作控制字段中的每一位代表一个微指令。:操作控制字段中的每一位代表一个微指令。优点优点:简单直观,其输出直接用于控制。简单直观,其输出直接用于控制。缺
45、点缺点:微指令字较长,使控制存储器容量较大。:微指令字较长,使控制存储器容量较大。字段字段1字段字段2P字段字段下一个微地址下一个微地址顺序控制顺序控制顺序控制顺序控制译码译码译码译码译码译码微指令微指令P1P2Pn 字段直接译码法字段直接译码法直接表示法直接表示法、编码表示法编码表示法、混合表示法混合表示法 寐厕浊州省彭耳栏捂捶撇署翠榆湃抡井冶肖檬匣矗戊盂饵弘疵思舜藕凭彻萝卜家园-样板萝卜家园-样板(2)编码表示法编码表示法 编码表示法编码表示法:把一组互斥性的微指令:把一组互斥性的微指令信号组成一个小组(即一个字段),然后通过小组译信号组成一个小组(即一个字段),然后通过小组译码器对每一个
46、微命令信号进行译码,译码输出作为操码器对每一个微命令信号进行译码,译码输出作为操作控制信号。作控制信号。特点特点:可用较少的二进制信息位表示较多的微指令可用较少的二进制信息位表示较多的微指令 信号。信号。优点优点:可使微指令字大大缩短。可使微指令字大大缩短。缺点缺点:由于增加了译码电路,使微程序的执行速由于增加了译码电路,使微程序的执行速 度变慢。度变慢。(3)混合表示法混合表示法 把直接表示法与字段编码法相混合使用。把直接表示法与字段编码法相混合使用。3:8 译译 码码 XXX指令字段指令字段微指令信号微指令信号讫粒撤伶恨禄曹部压轮哆隆轮觅牡犹夫码掘砒乓攀郧功荡良乙呆派蒲物梗萝卜家园-样板萝
47、卜家园-样板5.5.2 微地址的形成方法微地址的形成方法产生后继微地址有如下三种方法产生后继微地址有如下三种方法:1.计数器方式计数器方式:单。但多路并行转移功能较弱,速度较慢,灵活单。但多路并行转移功能较弱,速度较慢,灵活 性较差。性较差。在顺序执行微指令时,后继微地址由现行微地址加上在顺序执行微指令时,后继微地址由现行微地址加上增量来产生。增量来产生。在非顺序执行微指令时,必须通过转移方式,使现行在非顺序执行微指令时,必须通过转移方式,使现行微指令执行后,转去执行指定后继微地址的下一条微指微指令执行后,转去执行指定后继微地址的下一条微指令。在这种方法中,微地址寄存器通常改为计数器。令。在这
48、种方法中,微地址寄存器通常改为计数器。 为此,顺序执行的微指令序列就必须安排在控制存为此,顺序执行的微指令序列就必须安排在控制存储器的连续单元中。储器的连续单元中。特点特点:微指令的顺序控制字段较短,微地址产生机构简:微指令的顺序控制字段较短,微地址产生机构简锡创痘蛀桃避储偿饺陆腺绒巫壶唬躲谎树迹羽何瓶猛涎揭独绝罕渴磷埃殊萝卜家园-样板萝卜家园-样板2.增量方式与断定方式结合增量方式与断定方式结合:微指令顺序控制部分分为:条件选择字段和转移地址字段。微指令顺序控制部分分为:条件选择字段和转移地址字段。MUXPC控制存储器控制存储器CM条件条件转移地址转移地址IR外部外部条件条件外部地址外部地址
49、转移地址转移地址打入打入条件选择条件选择控制字段(可编码)控制字段(可编码)纠劫奖涂袍奔奔痘戌情茵铰合篷蔷讯序织当动橡墟欲旦话虾刘蜒坐金审偷萝卜家园-样板萝卜家园-样板3.多路转移方式多路转移方式:多路转移多路转移:一条微指令具有多个转移分支的能力称为:一条微指令具有多个转移分支的能力称为多路转移。多路转移。例如例如:“取指取指”微指令根据操作码微指令根据操作码OP产生多路微程序分产生多路微程序分支而形成多个微地址。在多路转移方式中,当微程序支而形成多个微地址。在多路转移方式中,当微程序不产生分支时,后继微地址直接有微指令的顺序控制不产生分支时,后继微地址直接有微指令的顺序控制字段给出;当微程
50、序产生分支时,有若干字段给出;当微程序产生分支时,有若干“后选后选”微地微地址可供选择:即按顺序控制字段的址可供选择:即按顺序控制字段的“判别测试判别测试”标志和标志和“状态条件状态条件”信息来选择其中严格微地址。信息来选择其中严格微地址。特点特点:能以较短的顺序控制字段配合,实现多路并行:能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度快。但转移地址逻辑需要用组转移,灵活性好,速度快。但转移地址逻辑需要用组合逻辑方法设计。合逻辑方法设计。项冒饥钝巧注壁陆舅侨旁削八懂芽啮匙乍谬喂隘塔燥门膜貌豢烁闭刁摇细萝卜家园-样板萝卜家园-样板5.5.3 微指令格式微指令格式微指令格式大体分为两
51、大类:微指令格式大体分为两大类:1.水平型微指令水平型微指令:控制字段控制字段判别测试字段判别测试字段下地址字段下地址字段水平型微指令的一般格式如下:水平型微指令的一般格式如下:第一种是全水平型(不译码)微指令第一种是全水平型(不译码)微指令第二种是字段译码法水平型微指令;第二种是字段译码法水平型微指令;第三种是直接和译码混合的水平型微指令第三种是直接和译码混合的水平型微指令水平型微指令又分为三种水平型微指令又分为三种:水平型微指令水平型微指令垂直型微指令垂直型微指令一次能定义并执行多个并行操作微命一次能定义并执行多个并行操作微命令的微指令,叫做令的微指令,叫做水平型微指令水平型微指令。驭运是
52、忻丝琅译妆株呻蚜乳遭摈阳俐舅瞅裕太脯命越糠弃鸳傀乐怜泣觉碾萝卜家园-样板萝卜家园-样板2.垂直型微指令垂直型微指令:微指令中设置微操作码字段,采用微操作微指令中设置微操作码字段,采用微操作码编译法,有微操作码规定微指令的功能,称为垂直型微指令。码编译法,有微操作码规定微指令的功能,称为垂直型微指令。15 13 12 8 7 32 00 0 0 原寄存器编码原寄存器编码目标寄存器编码目标寄存器编码其他其他15 13 12 8 7 32 00 0 1 左输入源编码左输入源编码右输入源编码右输入源编码ALU15 13 12 8 7 32 1 00 1 0寄存器编码寄存器编码存储器编码存储器编码读读
53、写写其他其他15 13 12 43 00 0 1D测试条件测试条件(1)寄存器)寄存器-寄存器传送指令寄存器传送指令(2)运算控制指令)运算控制指令(3)访问主存微指令)访问主存微指令(4)条件转移微指令)条件转移微指令垂直型微指令垂直型微指令 比比 水平型微指令编码水平型微指令编码长,但长,但执行一条指令的时间短执行一条指令的时间短例例:郧逼汰机惭卿演奄茧爵卓嚷币黎骆涂氢残糊派竖膀棱屉贱俗跑兄线颈萄每萝卜家园-样板萝卜家园-样板(1)水平型微指令水平型微指令并行操作能力强,效率高,并行操作能力强,效率高,灵活性强;灵活性强;垂直型微指令垂直型微指令则较差。则较差。(2)水平型微指令水平型微指
54、令执行一条指令的时间短;执行一条指令的时间短;垂垂直型微指令直型微指令执行的时间长。执行的时间长。(3)由)由水平型微指令水平型微指令解释指令的微程序,有微解释指令的微程序,有微指令字较长而微程序短的特点;指令字较长而微程序短的特点;垂直型微指令垂直型微指令则相反,微指令字比较短而微程序长。则相反,微指令字比较短而微程序长。(4)水平型微指令水平型微指令用户难以掌握;而用户难以掌握;而垂直型微垂直型微指令指令比较相似,相对来说,比较容易掌握。比较相似,相对来说,比较容易掌握。3. 水平型水平型微指令微指令垂直型微指令垂直型微指令的比较与与严思穿卉编墒修杯冰精榆渠浓淹夕瞄创脂烹署撮镀帅育席家万猿
55、葬亭癸引萝卜家园-样板萝卜家园-样板5.5.4 动态微程序设计动态微程序设计程序设计技术有程序设计技术有两两种:种: 对应与一台计算机的机器指令只有一组微程序,对应与一台计算机的机器指令只有一组微程序,而且这一组微程序设计好之后,一般无需改变而且而且这一组微程序设计好之后,一般无需改变而且也不好改变,这种微程序设计技术称为静态微程序也不好改变,这种微程序设计技术称为静态微程序设计。设计。 1. 静态静态微程序设计微程序设计:2. 动态动态微程序设计微程序设计: 当采用当采用EPROM作为控制存储器时,还可以通作为控制存储器时,还可以通过改变微指令和微程序来改变机器的指令系统,这过改变微指令和微程序来改变机器的指令系统,这种微程序设计技术称为动态微程序设计。种微程序设计技术称为动态微程序设计。胃串抢骄壶袱界章熊卵舶宵有腾陕摊箩潮侵耕陕假黎攻汀晶阐黑庐酣射缩萝卜家园-样板萝卜家园-样板