数字计算机是典型的数字系统之一。它能对输入的信息进行处理、运算。为了分析它的功能,确定其模块结构,首先让我们看一个用算盘进行运算的例子。
用算盘计算上式,首先要有一个算盘作为运算工具,其次还要有纸和笔来记录数据,包括原始数据、中间结果以及最后运算结果。用算盘计算的过程是在人的控制下进行的。第一步计算(15+5),并把中间结果(20)记在纸上;第二步计算20×2,再将中间结果(40)记在纸上;最后计算(40-30)并将结果记录在纸上。上述每一步运算都是由大脑指挥完成的。大脑将全题分解成若干演算细节并指挥手指,通过手指拨动算珠完成每一步运算,每步运算完成后大脑又发出指令将中间结果从算盘上取下然后转存到纸上。
如果设计一台计算机完成上述运算过程,那么计算机必须具备如下主要部件。
(1)运算器
它的作用相当于算盘。它是在控制器控制下进行运算的。实际计算机中的运算器不仅能进行算术运算,还能进行逻辑运算,所以计算机中的运算器又叫做算术逻辑单元。
(2)存储器
它的作用相当于纸和笔,用来记录原始题目、原始数据、中间结果以及使机器能自动完成各种为运算而编制的程序。
(3)控制器
它的作用相当于人的大脑。它能按事先规定的顺序发出各种控制信号,协调整个运算过程,使之一步步有序地进行。在时钟脉冲的控制下,控制器按照一定的时序不断地向机器各部件发出命令,指示各部件按规定的时序完成规定的动作。例如从存储器哪个单元取出数据,取出的数据送到什么地方去,什么时候进行什么运算,中间结果暂存到什么地方,最终结果存到存储器哪个单元等。
(4)输入/输出设备
除上述三部分外还要有输入原始数据和命令的输入设备及输出计算结果的输出设备。
有了上述几部分就构成了一台完整的计算机。其结构如图11.50所示。
图11.50 计算机基本结构
图中的运算器、存储器和控制器叫做计算机的主机,而输入/输出设备叫做外部设备。通常把主机中的运算器和控制器合在一起称为中央处理器,简称CPU。由于输入/输出设备在结构上是独立的,为简化起见,将它们和计算机主体分开,下面讨论时只考虑计算机的主机部分。
通过上述分析,明确了组成计算机的三大基本模块,即运算器、存储器、控制器及各模块所要完成的功能。在此基础上就可以进行逻辑框图的设计了。
1)存储器模块
存储器模块的作用是用来存储指令代码和数据,并按控制器发出的命令将指令代码和数据顺序取出。所以存储模块必须有一个能按顺序存放指令代码和数据的存储器,存储器每个存储单元都是一个地址号。为了从存储器中取出指令代码或数据,必须有一个寄存器存放当前要访问的存储单元的地址,这个寄存器称为存储器地址寄存器。当存储器内容被取出后,首先要放到数据寄存器中暂存起来,然后按控制命令将数据寄存器所存内容传送到指定的部件中去。因此,存储器模块包括以下三个逻辑部件:
(1)存储器(M)
它的作用是按一定顺序存放指令代码和数据。
(2)存储器地址寄存器(MAR)
存放当前要访问的存储单元的地址,当MAR中接收到一个地址码时,即可按该地址将存储器中的内容取出。
(3)数据寄存器(DR)
用来暂时存放从存储器中读出的指令代码或数据。
2)算术逻辑单元
简易计算机中,算术逻辑单元(ALU)只完成两个数相加的运算。完成两个数相加必须有一个加法器和三个寄存器。这三个寄存器分别存放两个加数和一个和数。其中一个加数寄存器可用数据寄存器DR代替。所以算术逻辑单元应包括:
(1)累加器(A)(www.daowen.com)
用于保存参与运算的一个加数及运算结果。
(2)加法器(FA)
用于完成两个数的即时相加运算。
3)控制器
控制器的作用就是在时钟脉冲控制下定时向各部件发出控制指令,所以它所完成的功能是按规定的节拍产生一系列不同的命令,由这些命令控制各部件完成所规定的动作。例如,什么时候应从存储器中取哪条指令并确定该指令的含义是什么,在这个指令周期内计算机各部件应完成哪几个动作等。所以控制器就包括:
(1)程序寄存器(PC)
用来指示要执行的那条指令的地址,每次操作时PC将其中存放的地址传送到MAR中,根据MAR中的地址将存储器中的内容读出,再传到DR,同时PC加1以指向下一步将要取出的指令(或数据)的地址。
(2)指令寄存器(IR)和译码器
用来寄存取自存储器的指令代码,并将其翻译成相应的指令。对应于不同的指令代码,译码器有不同的输出端为1,用这一信号控制一条指令进行的操作。
(3)控制电路(CON)
产生各种控制信号用以控制各逻辑部件在每个时钟周期内所要完成的动作。
(4)节拍发生器
用于产生一系列定时节拍,使各部件在规定节拍内完成规定的动作。
(5)时钟信号源
计算机是由各种数字电路组成的数字系统,各部件只有在统一的时钟控制下,才能一个时钟周期接一个时钟周期地工作,它是协调整个机器操作的重要信号。时钟信号源就是用于产生所需要的时钟信号。
根据上述分析可设计出简易计算机框图如图11.51所示。
图11.51 简易计算机框图
应当注意,各寄存器之间、寄存器与组合电路之间既可以用专用线直接连接,也可以用共用线即总线连接。众多的专用线直接连接使连接线繁杂、体积增加,所以简易计算机中用总线结构。在总线结构中,根据操作顺序,在不同时刻、不同控制命令下,将相应的寄存器“挂”到总线上,所以必须用三态门(又称作三态缓冲器)输出。各部件的工作是受控制电路发出的微控制命令控制的,这些命令包括:
IMAR:地址寄存器寄存命令;
IDR:DR寄存命令;
IIR:IR寄存命令;
IPC:PC+1命令;
IA:累加器A寄存命令;
EDR:DR输出命令;
I∑:和数寄存器寄存命令;
E∑:和数寄存器输出命令;
ICP:时钟脉冲控制命令。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。