免费智能真题库 > 历年试卷 > 嵌入式系统设计师 > 2011年下半年 嵌入式系统设计师 上午试卷 综合知识
  第26题      
  知识点:   存储器   控制器   运算器   总线   计算机的组成   输出设备   输入输出设备   系统总线   中央处理器
  关键词:   存储器   控制器   输出设备   数字计算机   运算器   中央处理器   总线   处理器        章/节:   计算机组成及主要部件的基本工作原理       

 
数字计算机的组成一般如图所示,主要包括运算器存储器控制器以及各种外部输入输出设备的适配器,它们之间由系统总线进行互连。通常把(26)称为中央处理器
 
 
  A.  存储器和运算器
 
  B.  适配器和系统总线
 
  C.  控制器和适配器
 
  D.  运算器和控制器
 
 
 

 
  第3题    2020年下半年  
   39%
下列属于CPU中算术逻辑单元的部件是(3)。
  第3题    2019年下半年  
   54%
(3)不是采用MVC(模型-视图-控制器)体系结构进行软件系统开发的优点。
  第1题    2011年下半年  
   63%
若某条无条件转移汇编指令采用直接寻址,则该指令的功能是将指令中的地址码送入(1)。
 
  第38题    2020年下半年  
   46%
以下不属于改进Cache性能的方法的是(38)。
  第37题    2009年下半年  
   56%
下列计算机总线属于串行总线的是(37)。
  第1题    2016年下半年  
   42%
(1)用来区分在存储器中以二进制编码形式存放的指令和数据。
   知识点讲解    
   · 存储器    · 控制器    · 运算器    · 总线    · 计算机的组成    · 输出设备    · 输入输出设备    · 系统总线    · 中央处理器
 
       存储器
        计算机系统中包括各种存储器,如CPU内部的通用寄存器组和Cache(高速缓存)、CPU外部的Cache、主板上的主存储器、主板外的联机(在线)磁盘存储器以及脱机(离线)的磁带存储器和光盘存储器等。不同特点的存储器通过适当的硬件、软件有机地组合在一起形成计算机的存储体系层次结构,位于更高层的存储设备比较低层次的存储设备速度更快、单位比特造价也更高。其中,Cache和主存之间的交互功能全部由硬件实现,而主存与辅存之间的交互功能可由硬件和软件结合起来实现。
               存储器的分类
                      按存储器所处的位置分类
                      按存储器所处的位置可分为内存和外存。
                      (1)内存。也称为主存(Main Memory),设在主机内或主机板上,用来存放机器当前运行所需要的程序和数据,以便向CPU提供信息。相对于外存,其特点是容量小、速度快。
                      (2)外存。也称为辅存,如磁盘、磁带和光盘等,用来存放当前不参加运行的大量信息,而在需要时调入内存。
                      按存储器的构成材料分类
                      按构成存储器的材料可分为磁存储器、半导体存储器和光存储器。
                      (1)磁存储器。磁存储器是用磁性介质做成的,如磁芯、磁泡、磁膜、磁鼓、磁带及磁盘等。
                      (2)半导体存储器。根据所用元器件又可分为双极型和MOS型;根据数据是否需要刷新又可分为静态(Static memory)和动态(Dynamic memory)两类。
                      (3)光存储器。利用光学方法读/写数据的存储器,如光盘(Optical Disk)。
                      按存储器的工作方式分类
                      按存储器的工作方式可分为读/写存储器和只读存储器。
                      (1)读/写存储器(Random Access Memory,RAM)。它指既能读取数据也能存入数据的存储器。按照存储单元的工作原理,随机存储器又分为静态随机存储器(Static RAM,SRAM)和动态随机存储器(Dynamic RAM,DRAM)。SRAM比DRAM更快,也贵得多。
                      (2)只读存储器。工作过程中仅能读取的存储器,根据数据的写入方式,这种存储器又可细分为ROM、PROM、EPROM和EEPROM等类型。
                      ①固定只读存储器(Read Only Memory,ROM)。这种存储器是在厂家生产时就写好数据的,其内容只能读出,不能改变。一般用于存放系统程序BIOS和用于微程序控制。
                      ②可编程的只读存储器(Programmable Read Only Memory,PROM)。其中的内容可以由用户一次性地写入,写入后不能再修改。
                      ③可擦除可编程的只读存储器(Erasable Programmable Read Only Memory,EPROM)。其中的内容既可以读出,也可以由用户写入,写入后还可以修改。改写的方法是写入之前先用紫外线照射15~20分钟以擦去所有信息,然后再用特殊的电子设备写入信息。
                      ④电擦除可编程的只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)。与EPROM相似,EEPROM中的内容既可以读出,也可以进行改写。只不过这种存储器是用电擦除的方法进行数据的改写。
                      ⑤闪存(Flash Memory)。闪存是一种非易失性存储器,基于EEPROM,已成为重要的存储技术,为大量电子设备包括数码相机、手机、PDA、笔记本、台式机和服务器等计算机系统提供快速且持久的存储能力。
                      存储在ROM设备中的程序通常称为固件(Firmware)。例如,当计算机加电后,它会运行存储在ROM中的固件。
                      按访问方式分类
                      按访问方式可分为按地址访问的存储器和按内容访问的存储器。
                      按寻址方式分类
                      按寻址方式可分为随机存储器、顺序存储器和直接存储器。
                      (1)随机存储器(Random Access Memory,RAM)。这种存储器可对任何存储单元存入或读取数据,访问任何一个存储单元所需的时间是相同的。
                      (2)顺序存储器(Sequentially Addressed Memory,SAM)。访问数据所需要的时间与数据所在的存储位置相关,磁带是典型的顺序存储器。
                      (3)直接存储器(Direct Addressed Memory,DAM)。介于随机存取和顺序存取之间的一种寻址方式。磁盘是一种直接存取存储器,它对磁道的寻址是随机的,而在一个磁道内则是顺序寻址。
               相联存储器
               相联存储器是一种按内容访问的存储器。其工作原理就是把数据或数据的某一部分作为关键字,按顺序写入信息,读出时并行地将该关键字与存储器中的每一单元进行比较,找出存储器中所有与关键字相同的数据字,特别适合于信息的检索和更新。
               相联存储器的结构如下图所示。
               
               相联存储器的结构框图
               相联存储器中,输入检索寄存器用来存放要检索的内容(关键字),屏蔽寄存器用来屏蔽那些不参与检索的字段,比较器将检索的关键字与存储体的每一单元进行比较。为了提高速度,比较器的数量应很大。对于位比较器,应每位对应一个,应有2m×N个,对于字比较器应有2m个。匹配寄存器用来记录比较的结果,它应有2m个二进制位,用来记录2m个比较器的结果,1为相等(匹配),0为不相等(不匹配)。
               相联存储器可用在高速缓冲存储器中,在虚拟存储器中用来作为段表、页表或快表存储器,用在数据库和知识库中。
               高速缓存
               高速缓存(Cache)由快速半导体存储器构成,用来存放当前最活跃的程序和数据,其内容是主存局部域的副本,对程序员来说是透明的。
                      高速缓存的组成
                      Cache存储器中控制部分的功能是判断CPU要访问的信息是否在Cache存储器中,若在即为命中,若不在则没有命中。命中时直接对Cache存储器寻址;未命中时,要按照替换原则决定主存的一块信息放到Cache存储器的哪一块里。
                      现代CPU中Cache分为了多个层级,如下图所示。
                      
                      三级Cache示意图
                      在多级Cache的计算机中,Cache分为一级(L1 Cache)、二级(L2Cache)、三级(L3 Cache)等,CPU访存时首先查找L1 Cache,如果不命中,则访问L2Cache,直到所有级别的Cache都不命中,才访问主存。通常要求L1 Cache的速度足够快,以赶上CPU的主频。如果Cache为两级,则L1 Cache的容量一般都比较小,为几千字节到几十千字节;L2 Cache则具有较高的容量,一般为几百字节到几兆字节,以使高速缓存具有足够高的命中率。
                      高速缓存中的地址映像方法
                      在CPU工作时,送出的是主存单元的地址,而应从Cache存储器中读/写信息。这就需要将主存地址转换成Cache存储器的地址,这种地址的转换称为地址映像。Cache的地址映像有如下3种方法。
                      (1)直接映像。直接映像是指主存的块与Cache块的对应关系是固定的,如下图所示。
                      
                      直接映像示意图
                      在这种映像方式下,由于主存中的块只能存放在Cache存储器的相同块号中,因此,只要主存地址中的主存区号与Cache中记录的主存区号相同,则表明访问Cache命中。一旦命中,由主存地址中的区内块号立即可得到要访问的Cache存储器中的块,而块内地址就是主存地址中给出的低位地址。
                      直接映像方式的优点是地址变换很简单,缺点是灵活性差。例如,不同区号中块号相同的块无法同时调入Cache存储器,即使Cache存储器中有空闲的块也不能利用。
                      (2)全相联映像。全相联映像如下图所示。同样,主存与Cache存储器均分成大小相同的块。这种映像方式允许主存的任一块可以调入Cache存储器的任何一个块的空间中。
                      
                      全相联映像示意图
                      例如,主存为64MB,Cache为32KB,块的大小为4KB(块内地址需要12位),因此主存分为16384块,块号从0~16383,表示块号需要14位,Cache分为8块,块号为0~7,表示块号需3位。存放主存块号的相联存储器需要有Cache块个数相同数目的单元(该例中为8),相联存储器中每个单元记录所存储的主存块的块号,该例中相联存储器每个单元应为14位,共8个单元。
                      在地址变换时,利用主存地址高位表示的主存块号与Cache中相联存储器所有单元中记录的主存块号进行比较,若相同即为命中。这时相联存储器单元的编号就对应要访问Cache的块号,从而在相应的Cache块中根据块内地址(上例中块内地址是12位,Cache与主存的块内地址是相同的)访问到相应的存储单元。
                      全相联映像的主要优点是主存的块调入Cache的位置不受限制,十分灵活。其主要缺点是无法从主存块号中直接获得Cache的块号,变换比较复杂,速度比较慢。
                      (3)组相联映像。这种方式是前面两种方式的折中。具体方法是将Cache中的块再分成组。例如,假定Cache有16块,再将每两块分为1组,则Cache就分为8组。主存同样分区,每区16块,再将每两块分为1组,则每区就分为8组。
                      组相联映像就是规定组采用直接映像方式而块采用全相联映像方式。也就是说,主存任何区的0组只能存到Cache的0组中,1组只能存到Cache的1组中,以此类推。组内的块则采用全相联映像方式,即一组内的块可以任意存放。也就是说,主存一组中的任一块可以存入Cache相应组的任一块中。
                      在这种方式下,通过直接映像方式来决定组号,在一组内再用全相联映像方式来决定Cache中的块号。由主存地址高位决定的主存区号与Cache中区号比较可决定是否命中。主存后面的地址即为组号。
                      替换算法
                      替换算法的目标就是使Cache获得尽可能高的命中率。常用算法有如下几种。
                      (1)随机替换算法。就是用随机数发生器产生一个要替换的块号,将该块替换出去。
                      (2)先进先出算法。就是将最先进入Cache的信息块替换出去。
                      (3)近期最少使用算法。这种方法是将近期最少使用的Cache中的信息块替换出去。
                      (4)优化替换算法。这种方法必须先执行一次程序,统计Cache的替换情况。有了这样的先验信息,在第二次执行该程序时便可以用最有效的方式来替换。
                      Cache性能分析
                      Cache的性能是计算机系统性能的重要方面。命中率是Cache的一个重要指标,但不是最主要的指标。Cache设计的目标是在成本允许的条件下达到较高的命中率,使存储系统具有最短的平均访问时间。设Hc为Cache的命中率,tc为Cache的存取时间,tm为主存的访问时间,则Cache存储器的等效加权平均访问时间ta为:
                      ta=Hctc+(1-Hc)tm=tc+(1-Hc)(tm-tc
                      这里假设Cache访问和主存访问是同时启动的,其中,tc为Cache命中时的访问时间,(tm-tc)为失效访问时间。如果在Cache不命中时才启动主存,则
                      ta=tc+(1-Hc)tm
                      Cache的命中率与Cache容量的关系如下图所示。Cache容量越大,则命中率越高,随着Cache容量的增加,其失效率接近0%(命中率逐渐接近100%)。但是,增加Cache容量意味着增加Cache的成本和增加Cache的命中时间。
                      
                      Cache容量与命中率的关系
                      在指令流水线中,Cache访问作为流水线中的一个操作阶段,Cache失效将影响指令的流水。因此,降低Cache的失效率是提高Cache性能的一项重要措施。当Cache容量比较小时,容量因素在Cache失效中占有比较大的比例。降低Cache失效率的方法主要有选择恰当的块容量、提高Cache的容量和提高Cache的相联度等。
               虚拟存储器
               在概念上,可以将主存存储器看作一个由若干个字节构成的存储空间,每个字节(称为一个存储单元)有一个地址编号,主存单元的该地址称为物理地址(physical address)。当需要访问主存中的数据时,由CPU给出要访问数据所在的存储单元地址,然后由主存的读写控制部件定位对应的存储单元,对其进行读(或写)操作来完成访问操作。
               现代系统提供了一种对主存的抽象,称为虚拟存储(virtual memory),使用虚拟地址(virtual address,由CPU生成)的概念来访问主存,使用专门的MMU(Memory Management Unit)将虚拟地址转换为物理地址后访问主存。设主存容量为4GB,则其简化后的访问操作和内存模型如下图所示。
               
               内存模型及使用虚拟地址访存示意图
               虚拟存储器实际上是一种逻辑存储器,实质是对物理存储设备进行逻辑化的处理,并将统一的逻辑视图呈现给用户。因此,用户在使用时,操作的是虚拟设备,无需关心底层的物理环境,从而可以充分利用基于异构平台的存储空间,达到最优化的使用效率。
               外存储器
               外存储器用来存放暂时不用的程序和数据,并且以文件的形式存储。CPU不能直接访问外存中的程序和数据,只有将其以文件为单位调入主存才可访问。外存储器主要由磁表面存储器(如磁盘、磁带)、光盘存储器及固态硬盘(采用Flash芯片或DRAM作为存储介质的存储器)构成。
                      磁盘存储器
                      硬盘是最常见的外存储器。一个硬盘驱动器内可装有多个盘片,组成盘片组,每个盘片都配有一个独立的读/写头。
                      为了正确地存储信息,将盘片划成许多同心圆,称为磁道(track)。将一个磁道沿圆周划分为若干段,每段称为一个扇区(sector),每个扇区内可存放一个固定长度的数据块,如512字节。一组盘片的所有记录面上相同序号的磁道构成一个柱面(cylinder)。
                      硬盘的寻址信息由硬盘驱动号、柱面号、磁头号(记录面号)、数据块号(或扇区号)以及交换量组成。
                      磁盘以扇区大小的块来读写数据。对扇区的访问时间(access time)主要包括以下三个部分:寻道时间(seek time)、旋转时间(rotational latency)和传送时间(transfer time)。
                      (1)寻道时间。为了读取某个目标扇区的内容,需要将读/写头移动到包含目标扇区的磁道上,这称为寻道时间Tseek。显然,寻道时间与读/写头的移动速度以及其之前的位置有关。通过数千次对随机扇区的寻道操作求平均值来测得平均寻道时间,一般为3~9ms。
                      (2)旋转时间。一旦读/写头定位至期望的磁道,就等待目标扇区旋转到读/写头的下方,该时间依赖于读/写头到达目标扇区前盘面的位置和旋转速度。在最坏情况下,读/写头刚好错过目标扇区,就必须等待磁盘旋转一周。因此,最大旋转延迟时间Tmax rotaion为磁盘旋转速度的倒数,平均旋转时间Tavg rotaion为最大旋转延迟时间的一半。
                      (3)传送时间。当目标扇区的第一个位位于读/写头下方时,就可以开始读或写该扇区的内容了。一个扇区数据的传送时间依赖与旋转速度和每磁道的扇区数目,因此可以粗略估算一个扇区的平均传送时间Tavg transfer为磁盘旋转速度的倒数乘以每磁道扇区数的倒数。
                      现代磁盘构造复杂,大容量磁盘采用多区记录技术,将柱面的集合分割成不相交的子集,每个子集称为一个记录区。每个记录区包含一组连续的柱面,一个及记录区中每个柱面的每条磁道有相同数量的扇区,扇区数由最靠近盘片中心的磁道所能包含的扇区数决定。
                      一个磁盘上可以记录的最大位数称为其最大容量。最大容量由记录密度、磁道密度和面密度决定。
                      记录密度是指每英寸磁道的段中可以存储的位数。磁道密度是盘片半径方向上每英寸的磁道数。面密度则是记录密度与磁道密度的乘积。
                      磁盘最大容量等于每扇区字节数×每磁道平均扇区数×每盘面磁道数×每盘片记录面数×盘片数。
                      磁盘通常以千兆字节(GB)或兆兆字节(TB)为单位来表示磁盘容量,且1GB=109B,1TB=1012B。
                      磁盘控制器必须对磁盘进行格式化后才能存储数据。格式化后的容量通常小于最大容量。
                      光盘存储器
                      根据性能和用途,光盘存储器可分为只读型光盘(CD-ROM)、只写一次型光盘(WORM)和可擦除型光盘。只读型光盘是由生产厂家预先用激光在盘片上蚀刻不能再改写的各种信息,目前这类光盘的使用很普遍。只写一次型光盘是指由用户一次写入、可多次读出但不能擦除的光盘,写入方法是利用聚焦激光束的热能,使光盘表面发生永久性变化而实现的。可擦除型光盘是读/写型光盘,它是利用激光照射引起介质的可逆性物理变化来记录信息。
                      光盘存储器由光学、电学和机械部件等组成。其特点是记录密度高、存储容量大、采用非接触式读/写信息(光头距离光盘通常为2mm)、信息可长期保存(其寿命达10年以上)、采用多通道记录时数据传送率可超过200Mb/s、制造成本低、对机械结构的精度要求不高、存取时间较长。
                      固态硬盘
                      固态硬盘(Solid State Disk,SSD)的存储介质分为两种,一种是采用闪存(FLASH芯片)作为存储介质;另一种是采用DRAM作为存储介质。
                      基于闪存的固态硬盘是固态硬盘的主要类别,其主体是一块PCB板,板上最基本的配件就是控制芯片、缓存芯片和用于存储数据的闪存芯片。主控芯片是固态硬盘的大脑,其作用有两个:一是合理调配数据在各个闪存芯片上的负荷;二是承担数据中转的作用,连接闪存芯片和外部SATA或USB接口。不同主控芯片差异很大,在数据处理能力、算法,对闪存芯片的读写控制方面会有非常大的不同,直接会导致固态硬盘产品在性能上差距很大。
                      一个闪存由多个块、每块由多页组成,通常页的大小为512B~4KB,块的大小为32~128页。在闪存中,数据是以页为单位读写的。只有在一个页所在的块被整体擦除后,才能写入该页。写一个块重复写入限定次数(例如100000)后,该块就会磨损坏而不能再使用。如果一个固态硬盘的主控芯片中磨损逻辑处理得好,就可以用很多年。
                      SSD的读操作比写操作要快,顺序读写操作比随机读写操作要快。进行随机写操作时,要擦除整块,因此需要较长的时间。另外,如果写操作试图修改一个包含其他有用数据的块,则需要将有用数据复制到一个新擦除的块中,然后才能进行写入操作。
                      固态硬盘的接口规范和定义、功能及使用方法上与普通硬盘基本相同,外形和尺寸也基本与普通的2.5英寸硬盘一致。
                      固态硬盘虽然价格仍较为昂贵,容量较低,但是由于具有传统机械硬盘不具备的快速读写、质量轻、能耗低以及体积小等特点,因此常作为传统机械式硬盘的替代品使用。
               磁盘阵列技术
               磁盘阵列是由多台磁盘存储器组成的一个快速、大容量、高可靠的外存子系统。现在常见的磁盘阵列称为廉价冗余磁盘阵列(Redundant Array of Independent Disk,RAID)。
               虽然RAID包含多块硬盘,但从用户视角看则是一个独立的大型存储设备。RAID可以充分发挥出多块硬盘的优势,实现远超出任何一块单独硬盘的速度和吞吐量。除了性能上的提高之外,RAID还可以提供良好的容错能力。RAID技术分为几种不同的等级,分别可以提供不同的速度、安全性和性价比。
               目前,常见的RAID如下表所示。
               
               廉价冗余磁盘阵列
               除此之外,上述各种类型的RAID还可以组合起来,构成复合型的RAID,此处不再赘述。
               存储域网络
               存储域网络是连接服务器与存储设备的网络,它能够将多个分布在不同地点的RAID组织成一个逻辑存储设备,供多个服务器共享访问,如下图所示。通过网络将一个或多个服务器与多个存储设备连接起来,每个存储设备可以是RAID、磁带备份系统、磁带库和CD-ROM库等,构成了存储域网络(Storage Area Network,SAN)。这样的网络不仅解决服务器对存储容量的要求,还可以使多个服务器之间可以共享文件系统和辅助存储空间,避免数据和程序代码的重复存储,提高存储器的利用率。另外,SAN还实现了分布式存储系统的集中管理,降低了大容量存储系统的管理成本,提高了管理效率。
               
               SAN的结构
 
       控制器
        运算器只能完成运算,而控制器用于控制整个CPU的工作,它决定了计算机运行过程的自动化。它不仅要保证程序的正确执行,而且要能够处理异常事件。控制器一般包括指令控制逻辑、时序控制逻辑、总线控制逻辑和中断控制逻辑等几个部分。
        指令控制逻辑要完成取指令、分析指令和执行指令的操作,其过程分为取指令、指令译码、按指令操作码执行、形成下一条指令地址等步骤。
        (1)指令寄存器(IR)。当CPU执行一条指令时,先把它从内存储器取到缓冲寄存器中,再送入IR暂存,指令译码器根据IR的内容产生各种微操作指令,控制其他的组成部件工作,完成所需的功能。
        (2)程序计数器(PC)。PC具有寄存信息和计数两种功能,又称为指令计数器。程序的执行分两种情况,一是顺序执行,二是转移执行。在程序开始执行前,将程序的起始地址送入PC,该地址在程序加载到内存时确定,因此PC的内容即是程序第一条指令的地址。执行指令时,CPU自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单地对PC加1。当遇到转移指令时,后继指令的地址根据当前指令的地址加上一个向前或向后转移的位移量得到,或者根据转移指令给出的直接转移的地址得到。
        (3)地址寄存器(AR)。AR保存当前CPU所访问的内存单元的地址。由于内存和CPU存在着操作速度上的差异,所以需要使用AR保持地址信息,直到内存的读/写操作完成为止。
        (4)指令译码器(ID)。指令包含操作码和地址码两部分,为了能执行任何给定的指令,必须对操作码进行分析,以便识别所完成的操作。指令译码器就是对指令中的操作码字段进行分析解释,识别该指令规定的操作,向操作控制器发出具体的控制信号,控制各部件工作,完成所需的功能。
        时序控制逻辑要为每条指令按时间顺序提供应有的控制信号。总线逻辑是为多个功能部件服务的信息通路的控制电路。中断控制逻辑用于控制各种中断请求,并根据优先级的高低对中断请求进行排队,逐个交给CPU处理。
 
       运算器
        运算器由算术逻辑单元(Arithmetic and Logic Unit,ALU)、累加寄存器、数据缓冲寄存器和状态条件寄存器等组成,它是数据加工处理部件,用于完成计算机的各种算术和逻辑运算。相对控制器而言,运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部件。运算器有如下两个主要功能。
        (1)执行所有的算术运算,例如加、减、乘、除等基本运算及附加运算。
        (2)执行所有的逻辑运算并进行逻辑测试,例如与、或、非、零值测试或两个值的比较等。
        下面简要介绍运算器中各组成部件的功能。
        (1)算术逻辑单元(ALU)。ALU是运算器的重要组成部件,负责处理数据,实现对数据的算术运算和逻辑运算。
        (2)累加寄存器(AC)。AC通常简称为累加器,它是一个通用寄存器,其功能是当运算器的算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区。例如,在执行一个减法运算前,先将被减数取出暂存在AC中,再从内存储器中取出减数,然后同AC的内容相减,将所得的结果送回AC中。运算的结果是放在累加器中的,运算器中至少要有一个累加寄存器。
        (3)数据缓冲寄存器(DR)。在对内存储器进行读/写操作时,用DR暂时存放由内存储器读/写的一条指令或一个数据字,将不同时间段内读/写的数据隔离开来。DR的主要作用为:作为CPU和内存、外部设备之间数据传送的中转站;作为CPU和内存、外围设备之间在操作速度上的缓冲;在单累加器结构的运算器中,数据缓冲寄存器还可兼作为操作数寄存器。
        (4)状态条件寄存器(PSW)。PSW保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,主要分为状态标志和控制标志,例如运算结果进位标志(C)、运算结果溢出标志(V)、运算结果为0标志(Z)、运算结果为负标志(N)、中断标志(I)、方向标志(D)和单步标志等。这些标志通常分别由1位触发器保存,保存了当前指令执行完成之后的状态。通常,一个算术操作产生一个运算结果,而一个逻辑操作产生一个判决。
 
       总线
        计算机系统中的总线(Bus)是指计算机设备和设备之间传输信息的公共数据通道,是连接计算机硬件系统内多种设备的通信线路,它的一个重要特征是由总线上的所有设备共享,因此可以将计算机系统内的多种设备以总线方式进行连接。
               总线的分类
               按照所传输的信号类型可将总线分为数据总线、地址总线和控制总线3类。不同型号的CPU芯片,其数据总线、地址总线和控制总线的条数可能不同。
               .数据总线(Data Bus,DB)用来传送数据信息,是双向的。CPU既可通过DB从内存或输入设备读入数据,也可通过DB将内部数据送至内存或输出设备。DB的宽度决定了CPU和计算机其他设备之间每次交换数据的位数。
               .地址总线(Address Bus,AB)用于传送CPU发出的地址信息,是单向的。传送地址信息的目的是指明与CPU交换信息的内存单元或I/O设备。存储器是按地址访问的,所以每个存储单元都有一个固定地址,要访问1MB存储器中的任一单元,需要给出220个地址,即需要20位地址(220=1M)。因此,地址总线的宽度决定了CPU的最大寻址能力。
               .控制总线(Control Bus,CB)用来传送控制信号、时序信号和状态信息等。其中有的信号是CPU向内存或外部设备发出的信息,有的是内存或外部设备向CPU发出的信息。显然,CB中的每一条线的信息传送方向是单方向且确定的,但CB作为一个整体则是双向的。所以,在各种结构框图中,凡涉及到控制总线CB,均是以双向线表示。
               总线的性能直接影响到整机系统的性能,而且任何系统的研制和外围模块的开发都必须依从所采用的总线规范。总线技术随着微机结构的改进而不断发展与完善。
               在计算机的概念模型中,CPU通过系统总线和存储器之间直接进行通信。实际上在现代的计算机中,存在一个控制芯片的模块。CPU需要和存储器,I/O设备等进行交互,会有多种不同功能的控制芯片,称之为控制芯片组。对于目前的计算机结构来说,控制芯片集成在主板上,典型的有南北桥结构和单芯片结构。与芯片相连接的总线可以分为前端总线(FSB)、存储总线、I/O总线、扩展总线等。
                      南北桥芯片结构
                      北桥芯片直接与CPU、内存、显卡、南桥相连,控制着CPU的类型、主板的总线频率、内存控制器、显示核心等。前端总线(FSB)是将CPU连接到北桥芯片的总线。内存总线是将内存连接到北桥芯片的总线。用于和北桥之间的通信,显卡则通过I/O总线连接到北桥芯片。
                      南桥芯片主要负责外部设备接口与内部CPU的联系,其中,通过I/O总线连接外部I/O设备连接到南桥,例如USB设备、ATA和SATA设备以及一些扩展接口,扩展总线则指是主板上提供的一些PCI、ISA等插槽。
                      单芯片结构
                      单芯片组方式取消了北桥。由于CPU中内置了内存控制器,不再需要通过北桥来控制,这样就能提高内存控制器的频率,减少延迟。还有一些CPU还集成了显示单元,使得显示芯片的频率更高,延迟更低。
               常见总线
               (1)ISA总线。ISA是工业标准总线,只支持16位I/O设备,数据传输率大约是16Mb/s,也称为AT标准。
               (2)EISA总线。EISA是在ISA总线的基础上发展起来的32位总线。该总线定义32位地址线、32位数据线以及其他控制信号线、电源线、地线等共196个接点。总线传输速率达33MB/s。
               (3)PCI总线。PCI总线是目前微型机上广泛采用的内总线,采用并行传输方式。PCI总线有适于32位机的124个信号的标准和适于64位机的188个信号的标准。PCI总线的传输速率至少为133MB/s,64位PCI总线的传输速率为266MB/s。PCI总线的工作与CPU的工作是相互独立的,也就是说,PCI总线时钟与处理器时钟是独立的、非同步的。PCI总线上的设备是即插即用的。接在PCI总线上的设备均可以提出总线请求,通过PCI管理器中的仲裁机构允许该设备成为主控设备,主控设备与从属设备间可以进行点对点的数据传输。PCI总线能够对所传输的地址和数据信号进行奇偶校验检测。
               (4)PCI Express总线。PCI Express简称为PCI-E,采用点对点串行连接,每个设备都有自己的专用连接,不需要向整个总线请求带宽,而且可以把数据传输率提高到一个很高的频率。相对于传统PCI总线在单一时间周期内只能实现单向传输,PCI Express的双单工连接能提供更高的传输速率和质量。
               PCI Express的接口根据总线位宽不同而有所差异,包括X1、X4、X8以及X16(X2模式将用于内部接口而非插槽模式),其中X1的传输速度为250MB/s,而X16就是等于16倍于X1的速度,即是4GB/s。较短的PCI Express卡可以插入较长的PCI Express插槽中使用。PCI Express接口能够支持热拔插。同时,PCI Express总线支持双向传输模式,还可以运行全双工模式,它的双单工连接能提供更高的传输速率和质量,它们之间的差异与半双工和全双工类似。因此连接的每个装置都可以使用最大带宽。
               (5)前端总线。微机系统中,前端总线(Front Side Bus,FSB)是将CPU连接到北桥芯片的总线。需要注意主板和CPU的搭配问题。一般来说,如果CPU不超频,那么前端总线是由CPU决定的,如果主板不支持CPU所需要的前端总线,系统就无法工作。
               通常情况下,一个CPU默认的前端总线是唯一的。北桥芯片负责联系内存、显卡等数据吞吐量最大的部件,并与南桥芯片连接。CPU通过前端总线(FSB)连接到北桥芯片,进而通过北桥芯片与内存、显卡交换数据。FSB是CPU和外界交换数据的最主要通道,因此FSB的数据传输能力对计算机整体性能作用很大,如果没足够快的FSB,再强的CPU也不能明显提高计算机整体速度。
               (6)RS-232C。RS-232C是一条串行外总线,其主要特点是所需传输线比较少,只需三条线(一条发、一条收、一条地线)即可实现全双工通信。传送距离远,用电平传送为15m,电流环传送可达千米。有多种可供选择的传送速率。采用非归零码负逻辑工作,电平≤-3V为逻辑1,而电平≥+3V为逻辑0,具有较好的抗干扰性。
               (7)SCSI总线。小型计算机系统接口(SCSI)是一条并行外总线,广泛用于连接软硬磁盘、光盘、扫描仪等。该接口总线早期是8位的,后来发展到16位。传输速率由SCSI-1的5MB/s到16位的Ultra2 SCSI的80MB/s。今天的传输速率已高达320MB/s。该总线上最多可接63种外设,传输距离可达20m(差分传送)。
               (8)SATA。SATA是Serial ATA的缩写,即串行ATA。它主要用作主板和大量存储设备(如硬盘及光盘驱动器)之间的数据传输之用。SATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。串行接口还具有结构简单、支持热插拔的优点。
               (9)USB。通用串行总线(USB)当前风头正劲,近几年得到十分广泛的应用。USB由4条信号线组成,其中两条用于传送数据,另外两条传送+5V容量为500mA的电源。可以经过集线器(Hub)进行树状连接,最多可达5层。该总线上可接127个设备。USB 1.0有两种传送速率:低速为1.5MB/s,高速为12MB/s。USB 2.0的传送速率为480MB/s。USB总线最大的优点还在于它支持即插即用,并支持热插拔。
               (10)IEEE-1394。IEEE-1394是高速串行外总线,近几年得到广泛应用。IEEE-1394也支持外设热插拔,可为外设提供电源,省去了外设自带的电源,能连接多个不同设备,支持同步和异步数据传输。IEEE-1394由6条信号线组成,其中两条用于传送数据,两条传送控制信号,另外两条传送8~40V容量为1500mA的电源,IEEE-1394总线理论上可接63个设备。IEEE-1394的传送速率从400MB/s、800MB/s、1600MB/s直到3.2GB/s。
               (11)IEEE-488总线。IEEE-488是并行总线接口标准。微计算机、数字电压表、数码显示器等设备及其他仪器仪表均可用IEEE-488总线连接装配,它按照位并行、字节串行双向异步方式传输信号,连接方式为总线方式,仪器设备不需中介单元直接并联于总线上。总线上最多可连接15台设备。最大传输距离为20m,信号传输速度一般为500Kb/s,最大传输速度为1MB/s。
 
       计算机的组成
        在一台计算机中,主要有6种部件,分别是控制器、运算器、内存储器、外存储器、输入设备和输出设备,它们之间的合作关系如下图所示。
        
        计算机各功能部件之间的合作关系
        (1)控制器:是分析和执行指令的部件,也是统一指挥并控制计算机各部件协调工作的中心部件,所依据的是机器指令。控制器的组成包括程序计数器、指令寄存器、指令译码器、时序部件、微操作控制信号形成部件和中断机构。
        (2)运算器:也叫做算术逻辑单元(Arithmetic and Logic Unit, ALU),对数据进行算术运算和逻辑运算。通常由ALU(算术/逻辑单元,包括累加器、加法器等)、通用寄存器(不包含地址寄存器)、多路转换器、数据总线组成。
        (3)内存储器(内存,主存):存储现场操作的信息与中间结果,包括机器指令和数据。
        (4)外存储器(外存,辅存):存储需要长期保存的各种信息。
        (5)输入设备:接收外界向计算机输入的信息。
        (6)输出设备:将计算机中的信息向外界输送。
        现在的控制器和运算器是被制造在同一块超大规模集成电路中,统称为中央处理器(Central Processing Unit, CPU)。
 
       输出设备
        (1)打印机。
        打印机是计算机系统中最基本的输出设备。由于打印机打印结果直观、易阅读,便于永久保存,且由于目前打印机的打印质量不断提高,能打印单色或彩色的高清晰度的文字、图形或图像。目前使用的打印机,以印字原理可以分成击打式打印机和非击打式打印机两类,以输出方式又可分为串行打印机和并行打印机两种。
        ①击打式打印机。
        击打式打印机是以机械力量击打字锤从而使字模隔着色带在纸上打印出字来的设备,这是最早研制成功的计算机打印设备。该类设备按字锤或字模的构成方式来分,又可以分成整字形击打印设备和点阵打印设备两类。
        整字形击打设备利用完整字形的字模每击打一次印出一完整字形。这类设备的优点是印字美观自然,可同时复印数份。缺点是噪音大,印字速率低,字符种类少,无法打印汉字或图形,且易磨损,这类打印设备若按字模载体的形态分,又可以分成球形、菊花瓣形、轮式、鼓式等打印机。点阵式击打设备是利用多根针经色带在纸上打印出点阵字符的印字设备,它又称为针式打印机。目前有7针、9针、24针或48针的印字头。这类打印设备结构简单,印字速度快,噪声小,成本低,且可以打印汉字或图形、图像,是目前仍在广泛使用的一类打印设备。
        ②非击打式印字机。
        非击打式印字机是一种利用物理的(光、电、热、磁)或化学的方法实现印刷输出的设备。与击打式打印设备不同,这类设备的印字头不与纸或其他媒体接触,或虽接触但无击打动作。这类设备打印无噪声,印字速度快,可以打印汉字、图形与图像等,不少设备还可以实现彩色打印。由于该类设备价格已逐步降低,所以深受用户欢迎。
        非击打式印字机还可以分成多种类型:
        .激光印字机:是利用激光打印出精美文字和图片的一种输出设备。激光印字机印刷速度快,印字质量好,噪音低,分辨率高,印刷输出成本低,这是目前应用最广泛的一种非击打式印字机。
        .喷墨打印机:是利用喷墨头喷射出可控的墨滴从而在打印纸上形成文字或图片的一种设备。这也是目前应用较多的一种打印输出设备。
        .热敏打印机:有热印纸式和热转印式两种。利用印字头上多个电热元件在特殊的热敏纸上瞬时加热形成字符的设备叫热敏纸打印机;利用转印色带将字符转印到纸上的设备叫热转印打印机。热敏打印机可以印刷出色彩精美逼真的图像。
        (2)显示器。
        显示器是用来显示数字、字符、图形和图像的设备,它由监视器和显示控制器组成,是计算机系统中最常用的输出设备之一。
        监视器由阴极射线管(CRT)、亮度控制电路(控制栅)、以及扫描偏转电路(水平/垂直扫描偏转线圈)等部件构成,工作原理如下图所示。
        
        监视器工作原理
        由热发射产生的电子流在真空中在几千伏高压的影响下射向CRT前部,控制栅的电压决定有多少电子被允许通过,经过聚焦的电子束在水平与垂直偏转电路控制下射向屏幕,轰击涂有荧光粉的CRT屏幕,产生光点。通过控制栅电压强弱的控制,达到控制光点有无的目的,从而形成显示图像。
        在光栅扫描显示器中,为了保证屏幕上显示的图像不产生闪烁,图像必须以50帧/秒至70帧/秒的速度进行刷新。这样,固定分辨率的图形显示器其行频、水平扫描周期、每像素读出时间,均有一定要求。例如当分辨率为640 × 480时,且假定水平回扫期和垂直回扫期各占水平扫描周期和垂直扫描周期的20%。
        则行频为480线 ÷ 80/100×50帧/s=30kHz
        水平扫描周期HC=1/30kHz=33μs
        每一像素读出时间为33μs×80%÷ 640=40~50ns
        若分辨率提高到1024 × 768,帧频为60帧/秒,则行频提高到57.6kHz,水平扫描周期HC=17.4μs,每像素读出时间减少到13.6μs。从这里可以清楚看到,分辨率越高,为保证图像不闪烁,则时间要求越高(每一像素读出、显示的时间越短),成本也随之迅速上升。另外,光栅扫描显示器的扫描方式还可以分成逐行扫描与隔行扫描方式两种。
 
       输入输出设备
        1)输入设备
        输入设备用来接收用户输入的原始数据和程序,并将它们变为计算机能识别的形式存放到计算机中。输入设备主要完成输入数据和操作命令等功能,也是进行人机对话的主要部件。常用的输入设备有键盘、鼠标、扫描仪等。
        (1)键盘。键盘是人们向计算机输入信息的最主要设备,各种程序和数据都可以通过键盘输入到计算机中。键盘是由一组排列成阵列形式的按键开关组成,每按一个键,就产生一个相应的扫描码,通过键盘将扫描码送到主机,再由主机将键盘扫描码转换成ASCII码。
        (2)鼠标。鼠标是计算机不可缺少的标准输入设备。随着Windows图形操作界面的流行,很多命令和要求已基本上不需要再用键盘输入,只需操作鼠标即可。鼠标移动方便,定位准确。目前使用的鼠标,根据其工作原理可分为机械鼠标、光学鼠标和光学机械鼠标3种。鼠标还可以根据外形分为两键鼠标、三键鼠标、滚轴鼠标和感应鼠标。随着科学技术的发展,又新出现了无线鼠标和3D振动鼠标。
        (3)扫描仪。扫描仪是一种图形、图像专用输入设备,利用它可以将图形、图像、照片、文本等从外部环境输入到计算机中。如果是文本文件,扫描后需要用文字识别软件进行识别,识别后的文字以.txt文件格式保存。
        常见的其他输入设备还有摄像头、光笔、条形码读入器、麦克风、数码相机、触摸屏等。
        2)输出设备
        输出设备是指将计算机处理和计算后所得的结果以一种人们便于识别的形式(如字符、数值和图表等)记录、显示或打印出来的设备。常用的输出设备有显示器和打印机等。
        (1)显示器。显示器是计算机不可缺少的输出设备。用户通过它可以很方便地查看送入计算机的程序、数据和图形等信息,以及经过计算机处理后的中间结果、最后结果,它是人机对话的主要工具。它由一根视频电缆与主机的显示卡相连。目前,显示器主要由两种显示管构成,它们是CRT(Cathode Ray Tube,阴极射线管显示器)和LCD(Liquid Crystal Display,液晶显示器)。衡量显示器的主要性能指标有点距和分辨率,目前常用的CRT的像素间距有0.28mm、0.26mm、0.25mm和0.24mm等。CRT的分辨率是指显示设备所能表示的像素个数,像素越密则分辨率越高,图像就越清晰。例如,某显示器的分辨率为1024×768,就表明该显示器在水平方向能显示1024个像素,在垂直方向能显示768个像素,即整屏能显示1024×768个像素。显示器必须配置正确的适配器(俗称显示卡)才能构成完整的显示系统。显示卡较早的标准有CGA(Color Graphic Adapter)标准(320×200,彩色)和EGA(Enhanced Graphics Adapter)标准(640×350,彩色)。目前常用的是VGA(Video Graphics Array)标准。VGA适用于高分辨率的彩色显示器,其图形分辨率在800×600像素以上,能显示16M种颜色。在VGA之后,又不断出现SVGA和TVGA卡等,分辨率提高到800×600像素和1024×768像素,而且有些显示卡具有32M种彩色,称为"真彩色"。
        (2)打印机。打印机与显示器一样,也是一种常用的输出设备,用于把文字或图形在纸上输出,供阅读和保存。它通过一根并口电缆与主机后面的并行口相连。打印机按工作原理可分为两类,即击打式打印机和非击打式打印机。其中计算机系统常用的点阵打印机属于击打式打印机。非击打式的打针机有喷墨打印机和激光打印机等。
 
       系统总线
        系统总线有时也称为内总线,其性能直接影响计算机的性能。常见的内总线标准有以下3种。
        (1)ISA(Industry Standard Architecture)总线。它是工业标准总线,向上兼容更早的PC总线,在PC总线62个插座信号的基础上,再扩充另一个36个信号的插座构成ISA总线。它主要包括24个地址线、16条数据线等。
        (2)EISA(Extended Industry Standard Architecture)总线。它是在ISA总线的基础上发展起来的36位总线。该总线定义32位地址线、32位数据线以及其他控制信号线、电源线等共196个连接点。总线传输速率达33Mb/s。该总线利用总线插座与ISA总线相兼容。
        (3)PCI(Peripheral Component Interconnection,外部设备组件互连)总线。当前最流行的总线之一,它是由Intel公司推出的一种局部总线。它定义了32位数据总线,且可扩展为64位。PCI总线的传输速率至少为133Mb/s,64位PCI总线的传输速率为266Mb/s。PCI总线的工作与处理器相互独立。PCI总线上的设备是即插即用的。
 
       中央处理器
        中央处理器,即CPU,是运算器和控制器的合称。
               CPU的功能
               CPU的功能如下。
               (1)程序控制。CPU通过执行指令来控制程序的执行顺序。
               (2)操作控制。一条指令功能的实现需要若干操作信号来完成,CPU产生每条指令的操作信号并将其送往不同的部件,控制相应部件的操作。
               (3)时序控制。CPU通过时序电路产生的时钟信号进行定时,以控制各种操作按指定时序进行。
               (4)数据处理。完成对数据的加工处理。
               CPU的组成
               1)运算器
               运算器主要完成算术运算、逻辑运算和移位操作,主要部件有算术逻辑单元(ALU)、累加器(ACC)、标志寄存器、寄存器组、多路转换器和数据总线等。
               2)控制器
               控制器实现指令的读入、寄存、译码和在执行过程有序地发出控制信号。控制器主要由指令寄存器(IR)、程序计数器(PC)、指令译码器、状态/条件寄存器、时序产生器、微操作信号发生器组成。
               3)寄存器
               寄存器用于暂存寻址和计算过程的信息。CPU中的寄存器通常分为存放数据的寄存器、存放地址的寄存器、存放控制信息的寄存器、存放状态信息的寄存器和其他寄存器等类型。
               流水线技术
               流水线技术把CPU的一个操作进一步分解成多个可以单独处理的子操作(如取指令、指令译码、取操作数、执行),使每个子操作在一个专门的硬件站上执行,这样一个操作需要顺序地经过流水线中多个站的处理才能完成。在执行的过程中,前后连续的几个操作可以依次流入流水线中,在各个站间重叠执行。其工作原理如下图所示。
               
               流水线技术
               设某流水线技术分为n个基本操作,操作时间分别是△tii=1,2,…,n)。
               (1)操作周期。取决于基本操作时间最长的一个,即操作周期为
               
               (2)吞吐率。流水线的吞吐率为
               
               (3)流水线的建立时间。即第一条指令完成的时间,即
               
               (4)执行m条指令时间,即
               
               或
               
   题号导航      2011年下半年 嵌入式系统设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第26题    在手机中做本题