当前课程知识点:电子信息科学与技术导引(1) > 第五讲:程序与处理器 > 第五节:处理器的工作原理 > 第五节:处理器的工作原理
那么接下来
我们讨论的问题是
一个程序怎么样子
处理器上工作换句话说
处理器是怎么样去
实现程序执行的
这就是我们
第五部分内容处理器的
工作原理正如
我们前面所介绍的
处理器是计算机的
核心它执行
算术运算逻辑判断
控制存储器访问以及
激活I/O设备等操作
如果从设计的角度去看
那么处理器呢
它包含两个主要的
组成部分一个是
数据通路再有
一个就是控制器
我们先来了解
数据通路数据通路的
设计有两种方法
一种叫做专用通路结构
专用通路结构呢是
在源部件和目标部件之间
通过引入专用的
信号线来实现数据传送的
一种结构那么采用
专业通路的计算机他的
工作速度更快但是
设计起来电路结构
更加的复杂另外一种
就是总线结构总线呢
是一种多个源部件和
多个目标部件之间
按分时复用的方式
传送数据的一组
公用信号线用
总线结构去设计
数据通路他的优点
是结构比较简单
但是由于多个部件分时
用总线所以总线结构的
数据通路它的工作速度
会比较慢控制器它的
任务是提供控制信号
指挥和控制计算机所有
部件协调工作从而
使计算机能够按照
程序规定的指令执行
次序自动地连续执行
指令的这样一个器件在
一个处理器内部我们
可以分成数据通路和
控制器两大部分这
两部分的关系可以通过
这张图来解释数据通路
会将指令通过控制
单元的输入信号提供
给控制器控制器会
对当前的指令进行
义卖从而了解当前指令
要做什么样的操作
根据当前指令来产生
相应的控制信号
从而控制数据通路上数具有
序地从原部件到
目标部件之间进行
传送这就是控制器和
数据通路的关系那么
计算机怎样执行程序的
我们通过一个简单的
例子来说明这个问题
比如说我们想计算
1+2=几针对这样
一个简单的问题我们
可以用MIPS汇编语言编写
出如下的程序左边
这一列是汇编语言的
代码中间这一列是
对应的机器语言代码
我们使用16进制来
表示的因为把它表示
成2进制那么这个
代码会比较长所以
我们通常会用16进制
作为2进制的缩减的
形式最右边的这一列
是对每行代码的注释
那么第一行语句实现的
功能就是把0号寄存器
和1这个常数进行相加
结果写入1号寄存器
第二行指令呢是把
1号寄存器的当前内容
也就是1与2这个常数
相加把相加的结果
也就是三写入到
目标寄存器也就是
1号寄存器中第三行指令
就是把1号寄存器的内容
也就是三存放到
存储器中存储器的
地址是什么呢这个
是8000加上0号寄存器的
内容而得到的
在mips处理器中0号寄存器
永远返回0所以目标地址
实际上就是8000也就是
说我们这段程序实现了
1+2这样一个简单的
加法计算并将结果存放到
了8000的这个内存单元中
好这是实现了1+2
这么一个简单任务的
程序那么这个程序在
处理器中是如何执行的呢
我们考虑一个非常
简单的单总线mips处理器
在这个处理器中只有
一条总线处理器内部
包括32个通用处理器
它有一个叫做pc的
程序处理器有
内存地址处理器内存数据
寄存器指令寄存器
这些都是数据通路的
组成部分在控制器中
包括指令译码器和
控制信号发生器控制器
通过对指令进行
译码由控制信号
发生器发出各种控制信号
从而控制数据通路的
数据传送这是一个
单总线mips处理器结构
那接下来我们就来看
这样一个单总线mips处理器
怎么样来实行
刚才三条指令的计算
假设我们三条指令
在内存中存放的地址
是从0000开始对mips而言
每条指令的长度都是
32个比特323位也就是
4个字节所以在
内存中3条指令的地址分
别是0000 0004 0008
在程序开始执行之前
把pc的直制成0000
那么pc中保存的是
当前要执行的
这条指令在内存中的
地址那么在第0的
节拍数据通路上的
操作是这样的由
控制器发出相应的
控制信号使得pc的
当前直能够送到
总线上同时发出
对ma2的这个寄存器的
读信号从而就可以使
pc的当前值通过
总线传到内存寄存器
中与此同时pc的
值加4从而使pc指向
下一条将要取的
指令在内存中的
地址这时t0节拍
或者说使t0周期
608那么在t1节拍
pc的直已经修改成了
4从而使得它指向
下一条指令而
利用0000这个内存寄存器的
直经过地址译码器可以
选中内存中的0000
这个内存单元而
这个内存单元中保存的
正是我们三条指令中的
第一条指令选中
这个内存单元的
时刻控制器会发出
对内存的读控制信号
使得他的读有效于是
内存中的0000这个指令将
送到数据通路中的
内存数据寄存器中也就是
md2寄存器里在t1节拍
完成了这样一些操作在
t2节拍控制器会发出
控制信号使得内存数据
寄存器的当前值可以
送到内部总线上
与此同时控制信号也会
使得指令寄存器也就是
i2寄存器能够从
总线上接收数据于是
在t2节拍就完成了
md2到i2传送也就是说
从内存中取出的
第一条指令现在已经
传送到了指令寄存器当中
在t3节拍控制器会
对指令寄存器中的
指令进行译码从而
就能知道当前是
一条加法指令
他实现的是0号寄存器
与常数一相加
这样一个操作在
t4节拍控制器会
发出控制信号是
通用寄存器中的
0号寄存器当前的
内容也就是0送到
总线上与此同时让
a这个寄存器在总线上
能够获取数据所以
t4节拍完成的工作
就是把0号寄存器传送到
a这个寄存器中在
t5节拍控制器会发出
控制信号让运算器
也就是alu做加法
那么加数的来源一个
是来自a寄存器
另一个来源则来自
指令寄存器中的1
也就是说我们需要
通过总线实现从
i2寄存器到算数逻辑单元的
另一个端的
数据传送aru做的
运算的结果会写入
c这个寄存器而
我们知道0和1相加
结果是1所以
c寄存器在t5节拍
会保存1这样一个
直在t6节拍控制器会
发出控制信号使得
c可以把数据送到
总线上与此同时
控制信号也会
使得通用寄存器中的
1号寄存器能够
接收来自总线上的
数据那么在t6节拍
也就完成了1这个
结果投入到1号寄存器的
工作至此第一条指令的
工作就结束了
接下来是第二条指令的
t0节拍同样
我们还是利用
pc寄存器的
当前值送到
ma2寄存器再由
ma2 寄存器经过
地址译码取出
第二条指令
第二条指令再送到
md2寄存器等等
这样一直运行下去
总结一下处理器是
一个复杂的数字系统
在他的内部主要由
这些部件组成
他有一个算术逻辑单元
也就是运算器它能够
实现算术和
逻辑运算他有
一个数据通路数据通路
由处理器内部的
各种连线和
各种辅助性质的
寄存器组成此外
处理器内部还包括
一个控制器它的
主要任务是提供控制信号
指挥和控制计算机
所有部件协调工作
在这三个组成部分中
算术逻辑单元一般是
组合逻辑运算来实现的
数据通路和控制器
既包含组合电路
也包含时序逻辑电路
至于什么是
组合逻辑电路
什么事时序逻辑电路
我们在比特与逻辑
那一节课已经做过了
介绍好这就是
处理器怎么样执行
程序的也就是
处理器的工作原理
-第一节 序言
--第一节 序言
-第二节 电磁学和分析数学发展史:磁学
-第三节 电磁学与分析数学发展史:静电
-第四节 电磁学和分析数学发展史:动电
-第五节 电子器件的发明及电子技术的发展
-第六节 电磁学的广泛应用
-第七节 电磁系统理论
-第八节 电子科学技术各学科间的关系
-第九节 电子科学技术的学科体系
-第一讲:电磁学与分析数学史概览--第一次作业
-第一节 序言
--第一节 序言
-第二节 电磁场(一)
-第三节 电磁场(二)
-第四节 物质
--第四节 物质
-第五节 电磁场与物质的相互作用:非共振作用
-第六节 电磁场与物质的相互作用:共振作用
-第七节 电磁场理论与电路理论
-第一节 空间离散化
-第二节 静场电路分析
-第三节 非静场电路抽象
-第三讲:电路抽象--电路抽象 练习题
-第四节 电路元件抽象
-第五节 非线性元件抽象
-第六节 电路抽象三原则
-第七节 分层抽象思想
-第八节 电路基本问题
-第九节 数字化抽象
-第三讲:电路抽象--Quiz 3
-第一节 序言
--第一节 序言
-第二节 什么是比特
-第三节 比特与编码
-第四节 比特与信息
-第五节 比特的用途示例
-第六节 什么是逻辑
-第七节 逻辑的用途示例
-第八节 与数字电路的关系
-第九节 小结
--第九节 小结
-第四讲:比特与逻辑--Quiz4
-第一节:从算盘到ENIAC
-第二节:通用计算机模型
-第三节:指令集体系结构
-第四节:程序和程序设计语言
-第五节:处理器的工作原理
-第六节:性能问题
--第六节:性能问题
-第七节:小结
--第七节:小结
-第一节:数据与数据处理技术的发展
-第二节:数据处理举例
-第三节:数据模型和算法的概念
-第四节:问题的抽象和建模
-第五节:数值分析问题研究
-第六节:数据和算法的关系I
-第七节:数据和算法的关系II
-第八节:大数据
--第八节:大数据
-第九节:数据挖掘技术和数据算法的展望
-第六讲:数据与算法--Quiz6
-第一节:基本内容简介
-第二节:信息的基本概念和传输的几种方式
-第三节:交换的概念和网络的几种形式
-第四节:模拟与数字通信
-第五节:调制和解调
-第六节:传输涉及的基本理论
-第七节:信息论和几种相关的编码方式
-第八节:多址方式
--第八节:多址方式
-第九节:交换的基本概念
-第十节:网络分层的基本概念
-第十一节:互联网的基本原理和有限状态机模型
-第七讲:通讯与网络--Quiz7
-第一讲:内容简介
--第一讲:内容简介
-第二讲:信息与媒体
-第三讲:人类感知与认知
-第四讲:智能信息处理
-第五讲:媒体与认知相互作用
-第六讲:媒体认知应用
-第七讲:总结
--第七讲:总结
-第八讲:媒体与认知--Quiz8
-期末考试--Final Exam