计算机组成原理CPU设计

上传人:M****1 文档编号:497392118 上传时间:2023-02-27 格式:DOC 页数:14 大小:599KB
返回 下载 相关 举报
计算机组成原理CPU设计_第1页
第1页 / 共14页
计算机组成原理CPU设计_第2页
第2页 / 共14页
计算机组成原理CPU设计_第3页
第3页 / 共14页
计算机组成原理CPU设计_第4页
第4页 / 共14页
计算机组成原理CPU设计_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《计算机组成原理CPU设计》由会员分享,可在线阅读,更多相关《计算机组成原理CPU设计(14页珍藏版)》请在金锄头文库上搜索。

1、1 CPU的用途字长:8位D70寻址范围:64byte,2 的 6 次方=64, A5 02确定ISA (包括程序员可访问的寄存器)1)程序员可访问的寄存器 AC 8位累加器CPU的指令集(共4条)指令操作码操作COMOOXXXXXXAC AC取反)JREL01XXXXXXPC PC+00AAAAAAOR10XXXXXXAC A CV M00AAAAAASUB111AAAAAAAC AC M00AAAAAA 12)其他寄存器ARr地址寄存器6位由A50向存贮提供地址PCr程序计数器6位指向下一条指令的地址DR数据寄存器8位通过D70从存贮器接收指令和数据IR1指令寄存器2位存放从存贮器中取回的

2、指令的操作码部分3 CPU设计状态图为了确定CPU的状态图,对每条指令作以下分析1)从存贮器中取指令(所有指令均相同)原理:在CPU能执行指令之前,它必须从存贮器中取出,CPU通过执行如下的操作序列完成这个任务A)选择存贮单元由 A50确定B)对工A50译码,延迟,并向存贮器发一个信号使存贮器将此指令输出 到它的输出引脚。 这些引脚与CPU的D70相连。CPU从这些引脚读入 数据。具体操作:(分为三个状态)A )要取的指令的地址存放在程序计数器(PC)中。第一步就是把 PC的内容拷贝到AR中。FETCH1 : AR PCB) CPU必须从存贮器中读取指令,为此 CPU必须发一个READ信号到器

3、的 RD ( RD RAM,相对于OE ROM)端上使存贮器将数据发送到 D70上,存入 CPU的DR寄存器中。同时实现 PC PC+1,为取下一条指令作准备。FETCH2 : DR M , PC PC+1C) 作为取指令的一部分,CPU还必须完成两件事。 DR的高2位拷贝到IR,目的是确定指令的功能 DR的低6位拷贝到AR,目的:a. 对于ORT和SUB1指令这6位包含了指令的一个操作数的存贮器 地址(一个数已经在 AC )b. 对于COM和JREL,它们不需要再次访问存贮器,一旦它们返回到FETCH1周期,FETCH1将把PC的值装到AR,覆盖无用的值。FETCH3 : IR DR7,6,

4、AR DR5 0取指令周期的状态图2)指令译码(每条指令的操作码都是唯一的)本CPU有四条指令,因此有四个不同的执行同期,为此用IR中的值来确定即可。3)指令执行(每条指令的执行周期都是一样的)每条指令的执行周期的状态分析:1. COM指令功能是对AC的内容取反,执行周期的状态是COM1:AC AC2. JREL指令代码为01AAAAAA,即转移的相对地址由 AAAAAA 确定,而 AAAAAA DR50中,所以有JREL1 : PC PC+ DR5 03. OR指令为了执行指令,必须完成两件事情OR1 : DRM ;从存贮器取出一个操作数送到数据寄存器OR2 : AC ACV DR与AC相或

5、,并把结果存回 AC中4. SUB1指令为了执行指令,必须完成两件事情SUB11: DR - M ;从存贮器取出一个操作数送到数据寄存器SUB12 : AC - AC + DR;对 DR 取反,等于 DR 1综上所述可知 CPU的完全状态图如下4设计必要的数据通路和控制逻辑,以便实现这个有限状态机,最终实现这个CPU。状态图以及寄存器的传输说明了实现本CPU所须完成工作(方法和步骤如下)1)与CPU的每个状态相关联的操作(共九个状态)FETCH1 : AR PCFETCH2 : DR- M , PC- PC+1FETCH3 : IR DR7,6,AR DR5 0COM1:AC ACJREL1

6、:PC- PC+ DR5 0OR1 :DR M ;OR2 :AC A CV DRSUB11 : DR M ;SUB12 : AC - AC + DR2)建立数据通路的原理和方法A .存贮器是通过引脚 D70将数据送给CPU。B.存贮器的地址是通过地址引脚A50从AR中获得的。于是CPU与存贮器之间要A50(地址)和 D70(数据)通路,如下图676882MD7 0AR666DR88AC22IRCLKA5 0PC3)总线类型的确定方法 原理:首先把操作数重新分组,依据是指导修改同一个寄存器的操作分配在同一组。AR : AR PC , AR DR5 0PC: PC PC+ DR5 0, PCPC+

7、1DR: DRM,IR: IR DR7,6,AC : AC AR , DR, IR, AC总是从其他一些部件中装入数据。若数据已在总线上,则需要做的是能够执行并装入操作。(LD端口分别是 ARLOAD , DRLOAD , IRLOAD , ACLOAD 信号同步装 入)b PC能从其他一些部件中装入数据,还有相应的自增(INC )当前值,所以应创建一个单独的硬件使之能自增。(端口有PCINC , PCLOAD )6MEMBUSD7 0ALU16A5 0ARARIOADPCPCLOAD PCINCALU26PCBUS6/1 I8DRBUS8DRDRIOADAC864)把每个部件都连接到系统总线

8、上三态缓冲区一一原有的寄存器部是把结果输出到系统总线,使CPU内部数据冲突,所以应增加三态缓冲区加以控制,但 AR的输出还应与 A50相接,这是寻址所需。5)根据实际需要修改上图的设计,并加上适当控制信号名称1. AR :仅向存贮器提供地址,没有必要将它的输出连接到内部总线上,加上 ARLOAD实现从BUS装入数据。2. AR - PC :保留三态缓冲器由 PCBUS控制同步3. IR :不通过内部总线向任何其他部件提供数据,而IR的输出将直接送到控 制器用于确定指令的功能4. AC :本CPU不向其他任何单位提供数据5. DR70:不统一,有6位也有2位宽度,必须确定哪些寄存器从总线的哪些位

9、上接收和发送数据。应有DRBUS实现同步。DRLOAD实现LD6. AC :必须能装载 AC + DR的和,以及 ACV DR与 AC的逻辑与结果。CPU必须包含一个能产生这些结果的ALU,并由ACLOAD实现装入。7. PC:必须能装载PC+ DR50的和。CPU必须包含一个能产生这些结果的ALU 并由PCLOAD实现载入,而 PCINC实现PC-PC+1READ811lALUS1 ALUS2 ACLOADIRCLKIRLOADALU的设计1) ALU1 (与PC相连)的设计数据通路的分析:功 ALU1必须接收PC和DR作为输入,然后把运算结果输出到PC实现 PC J PC+ DR5 0在本

10、CPU中,把PC的导线和ALU的输入输出相连起来,并且利用系统总线 把DR和ALU的输入连接起来。用计数器来实现 PCJPC+1操作,就可以在 FETCH2内完成,因为计数器不必 占用总线的时间。TO PCFrom bus6D5 02) ALU2 (与AC相连)的设计在本ALU的设计中AC和ALU的输入输出连接,并且利用系统总线把 DR和ALU 和输入相连起来。DRFrom bus(ALUS1,ALUS2=0,0, 选 AC J AC,ALUS1,ALUS2=0,1,选 ACACV DRALUS1,ALUS2=1,0,选 AC - AC + DR,)用硬布线的方法设计控制器组成:计数器:保存当

11、前状态共有9个状态(四条指令,共有 9个状态)所以需要一个四一一 16位译码器,译码器中有 7 个状态没用到。译码器:接收当前状态并为每个状态生成单独的信号逻辑组合:接受单独的状态信号,为每一部件生成控制信号以及计数器的控制信号 原理图:计数器与译码器的设计:1. FETCH1状态:规定计数器的 0值,使用计数器的 CLR = 1到达这一状态。(指令执行完 毕后,转入的取址状态。)2. 将顺序状态设定为计数器的连续值,用INC实现。3利用IR映射1 IR0来确定指令的执行 如下表IR;计数值状态001000COM1011010JREL1101100OR1111110SUB1指令的执行FETCH

12、1 0FETCH2 1FETCH3 2COM1: 8JREL1 : 10OR1: 12OR2: 13SUB11 : 14SUB12 : 15OR11IR1.00COUNTERFETCH1FETCH3FETCH2SUB11LD INC CLR0一FETCH11FETCH22FETCH2DECODER8COM110JREL112OR113OR214SUB1115一SUB12COM1JREL1OR2SUB12计数器控制信号的确定LD:在取址周期的FETCH3状态中发出,进入执行周期的第一个状态(装载令的正确执行周期)FETCH3 : IR DR7,6,AR DR50INC : CLR :如上图所示1

13、IR0进入指根据译码器的输出信号组合后产生CPU中寄存器的有关信号1ARLOAD (装载地址寄存器的控制信号 )FETCH1 : AR PCFETCH3 : AR DR5 0PCLOAD PCINCPCLOAD =JREL1 :PC PC+ DR5 0PCINC =FETCH2 : PC PC+1DRLOAD (实现 DR M)FETCH2+OR1+SUB11ACLOAD (实现 AC ACAC AC V DR, AC - AC + DR)ACLOAD = COM1+ OR2+ SUB12IRLOAD = FETCH3ALUS1,ALUS2与AC相连的ALU有两个控制信旦 ALUS1,ALUS2=0,0, ALUS1,ALUS2=0,1 ALUS1,ALUS2=1,0ALUS1= SUB12号选 COM1:选 0R2 :选 SUB12 :AC ACAC AC V DR ;AC - AC + D

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号