四川大学汇编课程设计(郑成明)第3章(ZCM2011).ppt_第1页
四川大学汇编课程设计(郑成明)第3章(ZCM2011).ppt_第2页
四川大学汇编课程设计(郑成明)第3章(ZCM2011).ppt_第3页
四川大学汇编课程设计(郑成明)第3章(ZCM2011).ppt_第4页
四川大学汇编课程设计(郑成明)第3章(ZCM2011).ppt_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章 计算机系统模型 3.1 计算机系统的基本结构 汇编语言是面向硬件的语言,是和计算机硬件系统的工作机制密不可分的。 学习汇编语言的目的除了掌握其编程方法,获得使用汇编语言编写程序、阅读程序的能力外,更重要的是结合硬件工作机制理解计算机系统的基本原理,为深入底层进一步理解计算机系统打好基础。 因此,在这里必须理解计算机硬件系统的基本工作原理。,这里所说的计算机系统结构是指硬件结构,主要包括中央处理器(CPU)、总线(BUS)、内部存储器(memory)、外部设备接口(interface)、外部设备(device)这5种功能部件。 计算机系统的基本结构如下图所示。,中央处理器,总线(包括数据总线、地址总线、控制总线),内部存储器,外部设备接口,外部设备接口,外部设备接口,外部设备,外部设备,外部设备,一、中央处理器(CPU) 计算机系统的中央处理部件,控制整个计算机系统的运转过程,其功能相当于人类的大脑。 主要功能: 1、从内存单元中读取机器指令、解释机器指令,按时序产生所需要的控制信号,按照指令的功能要求执行指令; 2、按照指令的功能要求,对存储单元进行数据读取或数据写入操作; 3、按照指令的功能要求,使用ALU执行所要求算术或者逻辑运算;,4、按照指令的要求向外部设备接口发送数据或者获取数据; 5、控制计算机系统的时序过程,分两个方面: 在执行指令时,分时间片段按顺序、分步骤执行指令所要求的操作; 除执行指令外,通过接收外部设备接口发来的请求信号,响应外部设备的请求信号,通过向外部设备接口发送控制信号来完成对外部设备的控制。 6、提供一定数量的存储单元,称为寄存器,对正在处理的数据进行暂时存储,或者存放一些逻辑地址,例如下一条指令的地址。,CPU读写寄存器中的数据比读写内存和外部设备接口中的数据快得多。 二、总线(BUS) 连接计算机系统中其他主要功能部件的桥梁,是计算机系统中信息输送的枢纽,只有通过总线,计算机系统的各部件才能实现相互通信。 主要功能: 1、传输数据:各功能部件通过总线可以进行数据交换,例如CPU把数据写入到内存单元,或从内存单元读取数据,这些功能都需要使用总线来传输数据。,用于完成数据传输功能的这组总线称为数据总线。 2、发送地址: 计算机系统中的各功能部件中都有若干个存储单元。 例如CPU中存在若干个寄存器,外部设备接口中都有若干个端口,内存中则包含了大量的内存单元。 在进行数据传输时必须指明针对哪个存储单元进行的,这就需要在总线上提供地址信号。用于完成地址发送功能的这组总线称为地址总线。 地址:存储单元的编号。,3、传送控制信号和状态信号: 通过控制信号的发送,CPU能够控制其他功能部件完成所指定的操作; 其他功能部件通过向CPU发出自己的请求信号(状态信号的一种)或提供自己的状态信号,向CPU汇报自己的工作状态。 用于传送控制信号和状态信号的这组总线称为控制总线。,三、内部存储器(memory) 计算机系统的内部存储部件,用于存放当前运行的程序和程序所使用的数据,是计算机系统的存储中心。 任何程序如果要取得CPU控制权并得到运行,必须先被操作系统装入内存。 内部存储器能够通过地址总线上传送来的地址和控制总线上发来的控制信号判断CPU是否选中自己进行操作。 通过控制总线上发来的控制信号决定是将数据总线上的数据写入内存单元(写数据),还是将内存单元中的数据放到数据总线上(读数据)。,四、外部设备接口(interface) 接口是计算机系统中用于连接外部设备和总线的桥梁。 只有通过接口,外部设备才能从总线接收数据或者向总线上发送数据,才能从总线上接收控制信号或者发送控制和状态信号。 使用接口的必要性: 为什么外部设备不能直接连接到总线上? 因为计算机系统的外部设备在功能、形式、处理速度、信号标准等多方面千差万别。而计算机系统的总线则是按照严格的工业标准设计的,对所使用的信号名称、各信号的含义、信号形式、信号的传送速度等方面都有严格的规定。这就决定了外部设备不能直接连接到总线上。,外部设备的生产厂家必须提供相应的接口电路来完成外部设备信号和总线所定义信号之间的相互转换; 以及为CPU处理速度、总线信号传送速度和外部设备处理速度之间的差距提供缓冲,使数据不致丢失。 举例来说,显示器连接到总线上需要显卡,音箱连接到总线上需要声卡,键盘连接到总线上需要键盘接口(现在的键盘接口是固化到主板上了,因为其结构较简单)。,外部设备接口所提供的主要功能如下: 1、数据缓冲功能 接口中一般都有数据锁存器,对数据进行暂时存储,避免因为CPU和外部设备处理速度不一致而丢失数据。 举例来说,输入设备的接口提供输入琐存器,对设备输入数据进行缓冲,以免CPU由于处理其他事务或者速度跟不上输入设备而没来得及取走输入数据,避免输入数据丢失; 输出设备的接口提供输出锁存器,对CPU输出的数据进行缓冲,以免输出设备速度跟不上CPU而没来得及接收输出数据,避免输出数据丢失。,2、信号转换功能 外部设备所使用的信号往往和系统总线上定义的信号不兼容,因此接口电路必须提供两套信号之间的转换功能。 外部设备可能使用模拟信号: 设备输入的模拟信号必须经过接口进行模数转换(A/D)后变成数字信号才能被CPU正确解释(麦克风提供的声音信号); CPU输出数据也必须经过数模转换(D/A)后变成模拟信号才能被外部设备使用(模拟显示器、音箱使用模拟信号);,外部设备也可能使用数字信号,但是这些数字信号在工业上的标准并不是和总线、CPU使用的信号一致。 例如某些数字设备规定+8V电压作为二进制1,-8V电压作为二进制0,定义较高电压以抗干扰,因为外部设备中的干扰信号可能比计算机系统内部大得多。 但是总线上规定的一般是+3V作为1,+0.8V作为0,这同样需要接口电路提供信号间的相互转换。,3、片选功能 能够通过地址译码器对地址总线上发来的地址高位部分进行解释,判断是否该地址是针对自己的,即自己是否被CPU选中进行当前指定的操作。,4、和CPU进行信息交换的功能 通过总线,接口可以和CPU交换数据(数据字节),可以接收CPU发来的控制信号,也可以向CPU发送请求信号或者为CPU提供状态信号; 可以从CPU接收命令字节并完成该命令对应的功能,可以向CPU提供状态字节满足CPU的查询需求。(如何区分接口处理的数据、命令、状态完全由CPU提供的地址决定),5、可编程功能 接口中提供一定数量的存储单元,分别用于存放输入或输出数据、CPU发来的命令信息、为CPU提供的状态信息等。 这些存储单元由于位于接口中,所以被称为端口,分为数据端口、状态端口、命令端口。 CPU可以使用指令访问端口(读端口或写端口),从而完成CPU与接口的信息交换。,如果把这些访问端口的指令组织起来,编制一个完整的程序来控制接口使它正确完成对外部设备的数据输入或输出功能,那么这样的程序称为接口的驱动程序。 一般操作系统中都为程序设计人员提供各类硬件接口的系统调用,这些系统调用就是通过驱动程序来完成的。,五、外部设备(I/O device) 也称输入输出设备,是计算机系统与外部世界进行交互所必须的功能部件,同时也是人机交互的必要工具。 外部设备的形式、功能和它具体针对的输入输出应用有很大的关联,因为所处理的外部信息种类很多,所以相应设备的形式和功能也多样化,很难统一。,例如,操作人员通过键盘输入命令行或者正在编辑的文本内容,通过显示器查看命令执行的结果或者已输入的文本内容。 通过扫描仪可以输入图象信息,通过显示器可以查看已输入的图象信息或者查看软件生成的图形信息,可以通过打印机打印图象或者图形信息等等。 外部设备的主要功能是完成从外部世界输入所需要的数据,或者把计算机系统处理的结果数据输出到外部世界,完成计算机系统与外部世界的交互功能。,3.2 计算机系统中的存储单元 寄存器:位于CPU内部的存储单元通常称为寄存器。 寄存器间的数据交换,内存单元:位于内部存储器中的存储单元通常称为内存单元。 端口:位于设备接口中的存储单元通常称为端口 。 寄存器与内存单元间的数据交换,3.3 控制信号与时序过程 一、计算机系统中的基本信号 1、时钟信号(clock) 这是一个周期性的方波信号,由CPU通过控制总线发出。 时钟信号的每一个周期称为一个时钟周期(节拍),节拍是计算机系统中最小的时间单位。 其示意图如下所示:,时钟信号图示,T,time,时钟信号的功能相当于人的脉搏,是最基础的控制信号,是时序控制的基础,其它控制信号维持的时间都是节拍的整数倍。 节拍的长短是衡量计算机系统运转速度的一个关键指标,一般说来,节拍越短则说明主频越高,系统的运行速度也就越快。 例如A和B两个计算机系统,完成从内存中读取一个字节数据都需要6个节拍,但A的节拍比B短,A系统原则上就比B系统快。 计算机系统中的每个部件都会接收到CPU发出的时钟信号,并且每个部件都以这个信号为时间基准进行时序操作。,2、读信号(read)和写信号(write) CPU对其它功能部件实施的操作都可以概括为完成数据的读和写,无论是读写内存单元还是读写端口,其基本性质都是一样的。 如果CPU要对CPU以外的存储单元进行读写操作,则通过控制总线发出读写信号,具体在哪一个节拍发出控制信号由CPU来决定。,3、片选信号(chip select) CPU对任何一个功能部件中的存储单元实施读写操作时必须向地址总线发送该存储单元准确地址,否则读写操作无法正确完成。 地址译码器会对高位地址进行译码,其位置在不同的系统中可能不相同,可以在总线上,也可以在内存和接口中。 地址译码器产生针对某一个部件片选信号,选中该部件,只有接收到片选信号的部件才会对总线上的其它控制信号作出响应。,输入:n,输出:=2n,一个部件被选中后会自行解释低位地址,定位要操作的存储单元,根据收到的控制信号是读信号还是写信号决定对该存储单元进行读或写操作。 片选信号是一个控制信号,但是它和其它控制信号不同,它不是由控制总线发送的,而是由地址总线上的地址产生的。,4、中断(请求)信号(interrupt)和中断响应信号(interrupt accept) 中断信号是一种状态信号(属于控制总线中的信号),由外设接口向CPU发出。 一般发出中断信号的原因可能有多种,包括输入设备接收到输入数据,请求CPU读取输入数据;输出设备的输出数据已经输出完毕,请求CPU发送新的输出数据;设备出现了故障等等。,这些情况都要求CPU暂时中断正在执行的程序,调用中断服务程序(设备驱动程序的一部分)去处理外设接口提出的请求。 在接收到中断信号后,CPU会根据当前的情况决定是否给出响应,如果CPU不响应,则外设接口始终在总线保持它的中断信号,直到CPU同意处理该信号,发出中断响应信号以后,外设才从总线上撤消它的中断信号。 处理完毕以后再恢复以前被中断的程序继续往下执行。,二、计算机系统中的基本时序过程 1、CPU从内存单元或者端口读取一个数据的基本过程如下(每一步占用一个节拍): 1) CPU发送存储单元地址到地址总线。 2) CPU发送读信号到控制总线,这时地址总线上的信号已经稳定。 3) 由地址译码器产生的片选信号选通要操作的部件,同时读信号稳定地加在所有连接在总线的部件上。,4) 被选中的部件按低位地址选中要读取的存储单元,把该单元的数据发送到数据总线上并等待总线上的数据稳定。 5) CPU把数据总线上的数据存放到指定的内部寄存器。 2、CPU把一个数据写入内存单元或者端口的基本过程如下: 1) CPU发送存储单元地址到地址总线,发送要写入的数据到数据总线。,2) CPU发送写信号到控制总线,这时地址总线和数据总线上的信号已经稳定。 3) 由地址译码器产生的片选信号选通要操作的部件,同时写信号稳定地加在所有连接在总线的部件上。 4) 被选中的部件按低位地址选中要写入数据的存储单元,等待数据总线上的数据稳定的加在存储单元上(此时数据刚从总线上到存储单元的输入端,还未保存)。 5) 被选中的部件把数据保存到该存储单元。,读和写是最基本的时序过程,理解了这两个过程,其它的时序过程可以按照相同的原理逐步理解。 这里是为了尽快给大家搭建一个能反映计算机系统工作原理的基本框架,所以其它较复杂的时序过程,例如中断过程、DMA过程将放在后面的教学内容中讨论。 上面描述的读写过程只是为了说明原理,比实际计算机系统中的读写过程简单一些,省略了一些细节,读写过程均占用5个节拍,读写过程占用的时间片段称为读写周期。,3.4 机器指令系统 机器指令就是一种二进制代码,代码与指令功能是一一对应的。 每一种计算机都有自己的一套指令系统,每条指令代表一种固定的功能。 机器指令的一般构成 :,指令经过CPU的指令译码器译码后,会转换为各种控制信号,再经过逻辑电路和时序电路的处理,和时钟信号结合后按照先后顺序向控制总线发送这些控制信号,从而控制计算机系统其它部件的动作。 由于每种计算机的指令系统可能各不相同,指令译码器也各不相同,所以机器指令总是和某种具体的计算机系统结合在一起的,没有脱离具体硬件的机器指令。,执行一条指令所占用的时间片段称为指令周期,它是节拍的整数倍。 除去算术运算和逻辑运算等计算功能在CPU内部完成外,指令中经常出现的操作就是读写操作,所以指令周期内经常包含读写周期。 应当注意,读写周期不是一定包含在指令周期内,即在没有执行指令的时候也可能出现读写周期。,计算机系统中的时序过程比指令的级别更底层,除执行指令外,CPU常常使用这些时序过程来完成对硬件的控制。 和读写周期的定义一样,用于在CPU内部完成数据运算的时间片段称为运算周期。 指令具有原子性,虽然指令周期由多个节拍构成,但是一条指令的执行过程是不允许被打断的,即便是处理中断信号,也必须等到当前指令执行完毕后CPU才会去处理。 一条指令的功能要么被CPU完全执行,要么完全不执行,不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论