- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CPU的功能和内部结构
第八章 CPU
本章从分析CPU的功能和内部结构入手, 详细讨论机器完成一条指令的全过程,以及为了进一步提高数据的处理能力,开发系统的并行性所采取的流水技术。此外,本章还进一步概括了中断技术在提高整机系统效能方面的作用。
第一节 CPU的功能和结构
一、CPU的功能 CPU是由运算器和控制器组成的, 在这里我们重点介绍控制器的功能。 对于冯·诺依曼结构的计算机而言,一旦程序进入存储器后,就可由计算机自动完成取指令和执行指令的任务,控制器就是专用于完成此项任务的,它负责协调并控制计算机各部件执行程序的指令序列,其基本功能是取指令、分析指令和执行指令。 1.取指令 控制器必须具备能自动地从存储器中取出指令的功能。为此,要求控制器能自动形成指令的地址,并能发出取指令的命令,将对应此地址的指令取到控制器中。第一条指令的地址可以人为指定,也可由系统设定。 2.分析指令 分析指令包括两部分内容,其一,分析此指令要完成什么操作,即控制器需发出什么操作命令;其二,分析参与这次操作的操作数地址,即操作数的有效地址。 3.执行指令 执行指令就是根据分析指令产生的“操作命令”和“操作数地址”的要求,开成操作控制信号序列(不同的指令有不同的操作控制信号序列),通过对运算器、存储器以及I/O设备的操作,执行每条指令。 此外,控制器还必须能控制程序的输入和运算结果的输出(即控制主机与I/O交换信息)以及对总线的管理, 甚至能处理机器运行过程中出现的异常情况和特殊请求,即处理中断的能力。 总之, CPU必须具有控制程序的顺序执行(称指令控制)、产生完成每条指令所需的控制命令(称操作控制)、对各种操作实施时间上的控制(称时间控制)、对数据进行算术运算和逻辑运算(数据加工)和处理中断等功能。二、CPU结构框图 CPU由四大部分组成:地址寄存器, 用于存放当前指令的地址;指令寄存器,用来存放当前指令和对指令的操作码进行译码;控制部件,能发出各种操作命令序列;ALU, 用来完成算术运算和逻辑运算;为了处理异常情况和特殊请求,还必须有中断系统。其结构如下图所示。
若将其进一点细化,则得到下图:
三、CPU的寄存器 1.用户可见寄存器 通常CPU执行机器语言访问的寄存器为用户可见寄存器, 按其特征又可分为以下几类: (1)通用寄存器。通用寄存器可由程序设计者指定许多功能,可用于存放操作数,也可作为满足某种寻址方式所需的寄存器。基址寻址所需的基址寄存器、变址寻址所需的变址寄存器和堆栈寻址所需的栈指针,都可用通用寄存器代替。寄存器间接寻址时还可用通用寄存器存放有效地址的地址。 (2)数据寄存器。数据寄存器用于存放操作数,其位数应满足多数数据类型的数值范围,有些机器允许使用两个连读的寄存器存放双倍字长的值。还有些机器的数据寄存器只能用于保存数据,不能用于操作数地址的计算。 (3)地址寄存器。地址寄存器用于存放地址,其本身可以具有通用性,也可用于特殊的寻址方式,如用于基址寻址的段指针(存放基地址)、用于变址寻址的变址寄存器和用于堆栈寻址的栈指针。地址寄存器的位数必须足够长,以满足最大的地址范围。 (4)条件代码寄存器。这类寄存器中存放条件码,它们对用户来说是部分透明的。条件码是CPU根据运算结果由硬件设置的位(bits), 如算术运算会产生正、负、零或溢出等结果。条件码可被测试,作为分支运算的依据。此外,有些条件码也可被设置,如最高位进位标志C,可用指令对它置位和复位。将条件码放到一个或多个寄存器中,就构成了条件码寄存器。 在调用子程序前,必须将所有的用户可见寄存器的内容保存起来,这种保存可由CPU自动保存, 也可由程序员编程保存,视不同机器不同处理。 2.控制和状态寄存器 CPU中还有一类寄存器用于控制CPU的操作或运算。在一些机器里,大部分这类寄存器对用户是透明的。如以下四种寄存器在指令执行过程中起重要作用。 ·MAR存储器地址寄存器,用于存放将被访问的存储单元的地址; ·MDR存储器数据寄存器, 用于存放欲存入存储器中的数据或最近从存储器中读出的数据; ·PC程序计数器,存放现行指令的地址,通常具有计数功能。当遇到转移类指令时,PC的值可被修改; ·IR指令寄存器,存放当前欲执行的指令。 通过这四个寄存器,CPU和主存可交换信息。 例如,将现行指令地址从PC送至MAR, 启动存储器作读操作,存储器就可将指定地址单元内的指令读至MDR,再由MDR送至IR。 在CPU内部必须给ALU提供数据,因此ALU必须可直接访问MDR和用户可见寄存器,ALU的外围还可以有另一些寄存器,这些寄存器用于ALU的输入/输出以及用于和MDR及用户可见寄存器交
您可能关注的文档
- 昂贵的2010年公务员面试真题及答案汇总.doc
- 辽宁省丹东七中九年级物理一轮复习《第十五章功和机械能》.doc
- 辽宁省丹东市四校协作体2012届高三摸底测试(零诊)文科综合试题.doc
- 辽宁省五校2013-2014学年高一下学期期末考试物理试题Word版含答案-副本.doc
- 辽宁省五校协作体2013届高三冲刺最后一模文科综合试题Word版含答案.doc
- 辽宁省五校协作体2014届高三上学期期初考试数学(文)试题word版含答案.doc
- 辽宁省五校协作体2012届高三诊断性检测生物试题.doc
- 辽宁省五校协作体2014届高三上学期期中考试化学试题Word版含答案.doc
- copy3商务沟通方法与技能+总复习.doc
- 辽宁省五校协作体学年高二上学期期中考试数学理试题.doc
文档评论(0)