原创 【博客大赛】RISC CPU设计

2012-4-2 14:33 2515 11 11 分类: FPGA/CPLD

CPU是计算机的核心部件。他的作用是协调并控制计算机的各个部件执行程序的指令序列,使其有条不紊的进行。因此他必须具有以下基本功能。

1.取指令,当程序已在存储器中时,首先根据程序入口地址取出一条程序,为此要发出指令地址及控制信号。

2.分析指令,即指令译码。是对当前取得的指令进行分析,之处它要求什么操作,并产生相应的操作控制信号。

3.执行指令,根据分析指令时产生的操作命令形成相应的操作控制信号序列,通过运算器、存储器和输入输出设备的执行,实现每条指令的功能。

将其功能细化,概括如下:
能对指令进行译码并执行规定的动作;可以进行算术和逻辑运算;能与存储器、外设交换数据;提供整个系统所需的控制。

由功能分析知道,CPU应至少包括以下部件:

alu;累加器;pc;指令寄存器、译码器;时序和控制部件

RISC是20世纪80年代才出现的CPU,与一般CPU相比,不仅只是简化了指令系统,而且是通过简化指令系统使计算机的结构更加简单合理,从而提高了运算速度。从实现的途径看,RISC CPU与一般CPU的不同之处在于:他的时序控制信号形成部件是用硬布线逻辑实现的而不是用微程序控制的方式。所谓硬布线逻辑也就是用触发器和逻辑门直接连线所构成的状态机和组合逻辑,故产生控制序列的速度比用微程序控制方式快得多,因为这样省去了读取微指令的时间。

在这个设计中,我们把CPU分成8个基本部件:

1.时钟发生器

用于产生cpu所需的各种时钟信号。

2.指令寄存器

寄存指令,每条指令16bit,数据总线8bit,所以每条指令需要取两次。先取高8bit,后取低8bit。

3.累加器

存放alu运算结果,并作为alu的一个输入。

4.算术运算器

执行各种算术和逻辑运算。

5.数据控制器

控制累加器数据输出。当数据需要输出到ram时才允许输出,否则呈高阻态。

6.状态控制器

CPU的核心控制部分,用于产生一系列控制信号。

7.程序计数器

提供指令地址。

8.地址多路器

用于选择输出的地址是PC地址还是数据/端口地址。

cpu.jpg

 

附件是整个CPU的原理图,参考夏宇闻· 数字系统设计

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
11
关闭 站长推荐上一条 /3 下一条