CPU的设计规范
CPU的设计规范
CPU的设计规范
CPU的设计规范
确定CPU的用途
字长:8位 D[7……0]
寻址范围:64Byte,2的6次方=64,A[5……0]
确定ISA(包括程序可访问的寄存器,又称通用寄存器
OR1:DR←M
ﻩOR2:AC←AC∨DR
SUB1指令(执行周期)
功能为将AC中的数减去M的数再减一送到AC,可等价为AC中的数减到M中的数的反码,其中M的地址由A[5……0]确定,执行周期的状态为
ﻩSUB1:DR←M
ﻩ SUB2:AC←AC+DR'
综上所述可知CPU的完全状态图如下
CPU的设计规范
CPU的设计规范
CPU的设计规范
FETCH1
FETCH2
FETCH3
IR=00
IR=01
IR=10
IR=11
COM1
JREL1
OR1
SUB1
SUB2
OR2
图三
建立所需的数据通路
与CPU的每个状态相关联的操作是(共九个状态)
FETCH1:AR←PC
FETCH2:DR←M,PC←PC+1
FETCH3:IR←DR[6,7],AR←DR[5……0]
COM1 :AC←AC’
JREL1 :PC←PC+DR[5……0]
OR1 :DR←M
OR2 :AC←AC∨DR
SUB1 :DR←M
SUB2 :AC←AC+DR’
建立数据通路的原理和方法
CPU的设计规范
CPU的设计规范
CPU的设计规范
存贮器数据通路的原理
存贮器是通过引脚D[7……0]数据送给CPU
存贮器的地址确定是通过地址引脚A[5……0]从AR中获得的。
于是CPU与存贮器之间需要A[5……0](地址)和D[7……0](数据)通路
8
AR
PC
DR
AC
IR
M
A[5……0]
CLK
6
6
2
8
8
8
8
8
2
2
8
6
6
6
6
6
6
8
D[7……0]
6
8-bit bus
图四
CPU内部的数据通路(两种方案)
直接通路(direct path)
CPU的设计规范
CPU的设计规范
CPU的设计规范
所有需要传送数据的部件之间创建一条直接通路。
当然,可用多路选择器或缓存器为那些有多个数据源的寄存器从多个
输入中选择一个。本设计可以是AR←DR[5……0]基AR←PC(2选1)
缺点:仅适用于简单CPU
总线(BUS,目前常用,为提高CPU速度可取用双总线、三总线)
在CPU的内部创建一条总线,并且在各个部件之间使用总线传递数据
优点:不但可满足数据传送的需要,还减少数据通路。
缺点:对于单总线要分时使用.
CPU内部寄存器的控制信号的定义方法
原理:首先把操作重新分组,依据是把修改同一个寄存器的操作分配在同一组。
本设计CPU共9个状态,有5个寄存器的分配情况如下:
ﻩ AR:AR←PC;AR←DR[5……0]
ﻩPC:PC←PC+1;PC←PC+DR[5……0]
ﻩDR:DR←M
ﻩﻩIR :IR←DR[6,7]
AC:AC←AC’; AC←AC∨DR;AC←AC+DR’
决定每个部件应完成的功能(见图五)
AR、DR、IR
CPU的设计规范
CPU的设计规范
CPU的设计规范
总是从其他一些部件中装入数据。若数据已在总线上,则需要做的就是能够执行并装入操作。(LD端分别由ARLOAD、DRLOAD、IRLOAD信号同步装入)
PC、AC
能从其他一些部件中装入数据。还有自增当前值。所以应创建一个单独的硬件使之能自增当前值。(见图五中INC有PCINC,其他有PCLOAD、ACLOAD)也可用计数器方法实现PC←PC+1自增操作,可在寄存器内部单独完成,并行装载用来实现其他功能。
把每个部件都连接到系统总线上(见图四)
三态缓冲区――原有的寄存器总是把结果输出到系统总线,使CPU内部数据冲突,所以应增加三态缓冲区加以控制。但AR的输出还应与A[5……0]相连,这是寻址所需。
根据实际需要修改图四的设计,并加上适当控制信号名称
AR:仅向存贮器提供数据(地址),没必要将它的输出连接到内部总线上.
(可删除)。加上ARLOAD实现从BUS装入数据.
AR←PC:保留三态缓冲器由PCBUS控制同步
IR:不通过内部总线向任何其他部件提供数据(所以可删 除)而IR的输出将直接送到控制器用于确定指令的功能。
CPU的设计规范
CPU的设计规范
CPU的设计规范
AC:本CPU不向其他任何单位提供数据(可删除)
D[7……0]:不统一,有6位也有2位宽度,各部件所需的数据位
CPU的设计规范 来自淘豆网m.daumloan.com转载请标明出处.