版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1CPU的用途字长:8位D70寻址范围:64byte,2的6次方=64,A502确定ISA(包括程序员可访问的寄存器)1)程序员可访问的寄存器AC8位累加器CPU的指令集(共4条)指令操作码操作COMOOXXXXXXACAC'取反)JREL01XXXXXXPCPC+00AAAAAAOR10XXXXXXACACVM00AAAAAASUB111AAAAAAACACM00AAAAAA12)其他寄存器ARr地址寄存器6位由A50向存贮提供地址PCr程序计数器6位指向下一条指令的地址DR数据寄存器8位通过D70从存贮器接收指令和数据IR1指令寄存器2位存放从存贮器中取回的指令的操作码部分3CPU
2、设计状态图为了确定CPU的状态图,对每条指令作以下分析1)从存贮器中取指令(所有指令均相同)原理:在CPU能执行指令之前,它必须从存贮器中取出,CPU通过执行如下的操作序列完成这个任务A)选择存贮单元由A50确定B)对工A50译码,延迟,并向存贮器发一个信号使存贮器将此指令输出到它的输出引脚。这些引脚与CPU的D70相连。CPU从这些引脚读入数据。具体操作:(分为三个状态)A)要取的指令的地址存放在程序计数器(PC)中。第一步就是把PC的内容拷贝到AR中。FETCH1:ARPCB)CPU必须从存贮器中读取指令,为此CPU必须发一个READ信号到器的RD(RDRAM,相对于OEROM)端上使存贮
3、器将数据发送到D70上,存入CPU的DR寄存器中。同时实现PCPC+1,为取下一条指令作准备。FETCH2:DRM,PCPC+1C)作为取指令的一部分,CPU还必须完成两件事。 DR的高2位拷贝到IR,目的是确定指令的功能 DR的低6位拷贝到AR,目的:a. 对于ORT和SUB1指令这6位包含了指令的一个操作数的存贮器地址(一个数已经在AC)b. 对于COM和JREL,它们不需要再次访问存贮器,一旦它们返回到FETCH1周期,FETCH1将把PC的值装到AR,覆盖无用的值。FETCH3:IRDR7,6,ARDR50取指令周期的状态图2)指令译码(每条指令的操作码都是唯一的)本CPU有四条指令,
4、因此有四个不同的执行同期,为此用IR中的值来确定即可。3)指令执行(每条指令的执行周期都是一样的)每条指令的执行周期的状态分析:1. COM指令功能是对AC的内容取反,执行周期的状态是COM1:ACAC'2. JREL指令代码为01AAAAAA,即转移的相对地址由AAAAAA确定,而AAAAAADR50中,所以有JREL1:PCPC+DR503. OR指令为了执行指令,必须完成两件事情OR1:DRM;从存贮器取出一个操作数送到数据寄存器OR2:ACACVDR与AC相或,并把结果存回AC中4. SUB1指令为了执行指令,必须完成两件事情SUB11:DR-M;从存贮器取出一个操作数送到数据
5、寄存器SUB12:AC<-AC+DR'对DR取反,等于DR1综上所述可知CPU的完全状态图如下4设计必要的数据通路和控制逻辑,以便实现这个有限状态机,最终实现这个CPU。状态图以及寄存器的传输说明了实现本CPU所须完成工作(方法和步骤如下)1)与CPU的每个状态相关联的操作(共九个状态)FETCH1:ARPCFETCH2:DR-M,PC-PC+1FETCH3:IRDR7,6,ARDR50COM1:ACAC'JREL1:PC-PC+DR50OR1:DRM;OR2:ACACVDRSUB11:DRM;SUB12:AC<-AC+DR'2)建立数据通路的原理和方法A.
6、存贮器是通过引脚D70将数据送给CPU。B.存贮器的地址是通过地址引脚A50从AR中获得的。于是CPU与存贮器之间要A50(地址)和D70(数据)通路,如下图768y862MD70AR88AC22IRCLK/666A50PCDR783)总线类型的确定方法原理:首先把操作数重新分组,依据是指导修改同一个寄存器的操作分配在同一组。AR:ARPC,ARDR50PC:PCPC+DR50,PCPC+1DR:DRM,IR:IRDR7,6,AC:AC<-AC+DR',ACACVDRACAC'决定每个部件应完成的功能a>AR,DR,IR,AC总是从其他一些部件中装入数据。若数据已在
7、总线上,则需要做的是能够执行并装入操作。(LD端口分别是ARLOAD,DRLOAD,IRLOAD,ACLOAD信号同步装入)b>PC能从其他一些部件中装入数据,还有相应的自增(INC)当前值,所以应创建一个单独的硬件使之能自增。(端口有PCINC,PCLOAD)4)把每个部件都连接到系统总线上三态缓冲区一一原有的寄存器部是把结果输出到系统总线,使CPU内部数据冲突,所以应增加三态缓冲区加以控制,但AR的输出还应与A50相接,这是寻址所需。5)根据实际需要修改上图的设计,并加上适当控制信号名称1. AR:仅向存贮器提供地址,没有必要将它的输出连接到内部总线上,加上ARLOAD实现从BUS装
8、入数据。2. AR-PC:保留三态缓冲器由PCBUS控制同步3. IR:不通过内部总线向任何其他部件提供数据,而IR的输出将直接送到控制器用于确定指令的功能4. AC:本CPU不向其他任何单位提供数据5. DR70:不统一,有6位也有2位宽度,必须确定哪些寄存器从总线的哪些位上接收和发送数据。应有DRBUS实现同步。DRLOAD实现LD6. AC:必须能装载AC+DR'的和,以及ACVDR与AC'的逻辑与结果。CPU必须包含一个能产生这些结果的ALU,并由ACLOAD实现装入。7. PC:必须能装载PC+DR50的和。CPU必须包含一个能产生这些结果的ALU并由PCLOAD实现
9、载入,而PCINC实现PC-PC+1ALU的设计1)ALU1(与PC相连)的设计数据通路的分析:功ALU1必须接收PC和DR作为输入,然后把运算结果输出到PC实现PCJPC+DR50在本CPU中,把PC的导线和ALU的输入输出相连起来,并且利用系统总线把DR和ALU的输入连接起来。用计数器来实现PCJPC+1操作,就可以在FETCH2内完成,因为计数器不必占用总线的时间。D50TOPCFrOmbus62)ALU2(与AC相连)的设计在本ALU的设计中AC和ALU的输入输出连接,并且利用系统总线把DR和ALU和输入相连起来。DRFrombus(ALUS1,ALUS2=0,0,选ACJAC'
10、;,ALUS1,ALUS2=0,1,选ACACVDRALUS1,ALUS2=1,0,选AC<-AC+DR',)用硬布线的方法设计控制器组成:计数器:保存当前状态共有9个状态(四条指令,共有9个状态)所以需要一个四一一16位译码器,译码器中有7个状态没用到。译码器:接收当前状态并为每个状态生成单独的信号逻辑组合:接受单独的状态信号,为每一部件生成控制信号以及计数器的控制信号原理图:计数器与译码器的设计012810121314151. FETCH1状态:规定计数器的0值,使用计数器的CLR=1到达这一状态。(指令执行完毕后,转入的取址状态。)2. 将顺序状态设定为计数器的连续值,用I
11、NC实现。3利用IR映射1IR0来确定指令的执行如下表IR;计数值状态001000COM1011010JREL1101100OR1111110SUB1指令的执行FETCH1FETCH2FETCH3COM1:JREL1:OR1:-0R2:-SUB11:SUB12:-1IR1.00FETCH1FETCH2OR1SUB11/FETCH3COUNTERLDINCCLR0一FETCH11FETCH22FETCH2DECODER8COM110JREL112OR113OR214SUB1115一SUB124COM1JREL1OR2SUB12计数器控制信号的确定LD:在取址周期的FETCH3状态中发出,进入执行
12、周期的第一个状态(装载1IR0进入指令的正确执行周期)FETCH3:IRDR7,6,ARDR50INC:CLR:如上图所示根据译码器的输出信号组合后产生CPU中寄存器的有关信号1 ARLOAD(装载地址寄存器的控制信号)FETCH1:ARPCFETCH3:ARDR502 PCLOADPCINCPCLOAD=JREL1:PCPC+DR50PCINC=FETCH2:PCPC+13 DRLOAD(实现DRM)FETCH2+OR1+SUB114 ACLOAD(实现ACAC'ACACVDR,AC<-AC+DR')ACLOAD=COM1+OR2+SUB125IRLOAD=FETCH3
13、6ALUS1,ALUS2与AC相连的ALU有两个控制信号ALUS1,ALUS2=0,0,ALUS1,ALUS2=0,1ALUS1,ALUS2=1,0ALUS1=SUB12选COM1:ACAC',选OR2:ACACVDR;,选SUB12:AC<-AC+DR'ALUS2=OR2缓冲器控制信号许多操作需从内部总线上获取数据,CPU必须能控制缓冲器以便在合适的时间将正确的数据放到总线上,为此应满足如下逻辑关系。MEMBUS=FETCH2+0R1+SUB11PCBUS=FETCH1READ=FETCH2+0R1+SUB11DRBUS=FETCH3+JREL1+OR2+SUB12部分
14、电路图如下:FETCH1FETCH3JJARLOADJREL1FETCH2FETCH3FETCH2OR1SUB11COM1OR2SUB12OR2SUB12FETCH2OR1SUB11PCLOADPCINCIRLOADDRLOADALUS2ALUS1MEMBUSACLOADOR1SUB11FETCH2READPCBUSFETCH1FETCH3ADRBUSJREL1OR2SUB12设计验证1. 程序段如下所列存贮单元:指令0:COM1:JREL02OR43:SUB5420H5:30H2. CPU遵循状态图并以合适的状态顺序取出、译码和执行每条指令:COM:FETCH1tFETCH2宀FETCH3宀
15、COM1JREL4:FETCH1tFETCH2tFETCH3tJREL1OR5:FETCH1tFETCH2tFETCH3tOR1tOR2SUB6:FETCH1tFETCH2tFETCH3tSUB11tSUB122.对这段程序的一次循环的跟踪情况(所有寄存器的初始值都是0)指令状态有效信号所执行的操作下一个状态COMFETCH1PCBUS,ARLOADAR0FETCH2FETCH2READ,MEMBUS,DRLOAD,PCINCDR00H,PC1FETCH3FETCH3DRBUS,ARLOAD,IRLOADIR00AR00HCOM1COM1ACLOADAC00H'FFHFETCH1指令状
16、态有效信号所执行的操作下一个状态JREL0FETCH1PCBUS,ARLOADAR1FETCH2FETCH2READ,MEMBUS,DRLOAD,PCINCDR40HPC2FETCH3FETCH3DRBUS,ARLOAD,IRLOADIR01,AR00HJREL1JREL1DRBUS,PCLOADPC02H+00H=02HFETCH1OR4FETCH1PCBUS,ARLOADAR2FETCH2FETCH2READ,MEMBUS,DRLOAD,PCINCDR84H,PC3FETCH3FETCH3DRBUS,ARLOAD,IRLOADIR10,AR04HOR1OR1READ,MEMBUS,DRLO
17、ADDR20H;OR2OR2DRBUS,ALUS2ACLOADACFFHV20H=FFHFETCH1SUB5FETCH1PCBUS,ARLOADAR3FETCH2FETCH2READ,MEMBUS,DRLOAD,PCINCDRC5H,PC4FETCH3FETCH3DRBUS,ARLOAD,IRLOADIR11,AR05HSUB11SUB11READ,MEMBUS,DRLOADDR30HSUB12SUB12DRBUS,ALUS1,ACLOADACFFH+30H'=2FHFETCH1用微程序控制器设计一微程序控制器的基本框图两种可能的下址方式(由MUX实现选择)S=1操作码映象(经指令译码
18、进入下一条指令的执行周期)S=0绝对跳转(下一条要执行的微指令在控存内)工作原理分析描述FETCH3,便MAP输入来实1)确定微子程序的第一条指令入口地址。方法是根据取批中的最后一个状态可转入到四条指令中任一条执行周期的第一条微指令入口,但必须通过现2)下址的确定绝对跳转:可直接跳转到FETCH1状态当前地址加1。3)几个参数的设定控存中地址的倍数24=16>9因共有9条微指令,可用四位MUXt微地址寄存器,微地址寄存器t控存24=16>9用四位确定UPOS的位数二生成正确序列并设计映象逻辑1.给有限状态机的每一种状态分配一个控存地址利用IR映射1IRO来确定指令的执行如下表IR十
19、数值状态001000COM1011010JREL1101100OR1111110SUB12其余微指令的地址微程序控制器的状态地址FETCH10FETCH21FETCH32COM1:8JREL1:100R1:120R2:13SUB11:14SUB12:153. 确定微指令中的选择域和地址域,即生成正确的微指令执行顺序1) 一般状态转换设SEL=0,ADDR为下一条指令要执行的控存号,一个微指执行完后,从ADDR中得到下址,转到ADDR指定的微指令2) 特别状态FETCH3下址的确定当FETCH3执行完后,必须到指令执行周期的微子程序入处,根据1IR0所算出的结果三生成正确的微操作及相应的控制信号用水平型微指令生成微操作及用垂直型指令生成微操作本CPU采用水平型微指令生成微操作法微操作及它们的助记符助记符微操作ARPCARPCDRMDRMPCINPCPC+1IRDRIRDR7,6ARDRARDR50NOACACAC'PCPLUSDRPCPC+DR50ACORDRACACVDRACSUBDRACAC+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024石材加工行业标准化及质量管理体系合作协议3篇
- 个人向公司借款详细条款合同版B版
- 专业租车协议范本:2024年版
- 2025年度地质勘查测绘合作协议书8篇
- 2024版销售代表奖励提成协议样本一
- 集合2024年度医疗设备采购及安装服务合同
- 2025年度文化旅游项目合作协议补充协议3篇
- 2024精密波纹管订货及销售协议条款版B版
- 2025年度厂房租赁及品牌授权使用合同4篇
- 二零二五年度汽车后市场销售提成及品牌代理协议
- 矿山隐蔽致灾普查治理报告
- 2024年事业单位财务工作计划例文(6篇)
- 副总经理招聘面试题与参考回答(某大型国企)2024年
- PDCA循环提高护士培训率
- 2024年工程咨询服务承诺书
- 青桔单车保险合同条例
- 车辆使用不过户免责协议书范文范本
- 《狮子王》电影赏析
- 2023-2024学年天津市部分区九年级(上)期末物理试卷
- DB13-T 5673-2023 公路自愈合沥青混合料薄层超薄层罩面施工技术规范
- 河北省保定市定州市2025届高二数学第一学期期末监测试题含解析
评论
0/150
提交评论