计算机基础
在对CPU、缓存、内存、硬盘等概念进行详细介绍之前,先通过一个流程图来直观了解一下这几个组件之间的关系。
主存就是狭义上的内存,广义上的内存包括主存和缓存。
按照与CPU的接近程度,存储器分为内存储器与外存储器,简称内存与外存。内存储器又常称为主存储器(简称主存),属于主机的组成部分;外存储器又常称为辅助存储器(简称辅存),属于外部设备。CPU不能像访问内存那样,直接访问外存,外存要与CPU或I/O设备进行数据传输,必须通过内存进行。在80386以上的高档微机中,还配置了高速缓冲存储器(cache),这时内存包括主存与高速缓存两部分。对于低档微机,主存即为内存。
为解决高速的CPU与速度相对较慢的主存的矛盾,还可使用高速缓存。它采用速度很快、价格更高的半导体静态存储器,甚至与微处理器做在一起,存放当前使用最频繁的指令和数据。当CPU从内存中读取指令与数据时,将同时访问高速缓存与主存。如果所需内容在高速缓存中,就能立即获取;如没有,再从主存中读取。高速缓存中的内容是根据实际情况及时更换的。这样,通过增加少量成本即可获得很高的速度。
CPU核内部包含了多个执行单元。例如,现代Intel CPU包含了6个执行单元,可以组合进行算术运算,逻辑条件判断及内存操作。每个执行单元可以执行上述任务的某种组合。这些执行单元是并行执行的,这样指令也就是在并行执行。但如果站在另一个CPU角度看,这也就产生了程序顺序的另一种不确定性。
1 CPU核
2 |
3 V
4 寄存器
5 |
6 V
7 执行单元 -> Load/Store缓冲区->L1 Cache --->L3 Cache-->内存控制器-->主存
8 | |
9 +-> Write Combine缓冲区->L2 Cache ---+
代码顺序并不是真正的执行顺序,只要有空间提高性能,CPU和编译器可以进行各种优化。缓存和主存的读取会利用load, store和write-combining缓冲区来缓冲和重排。这些缓冲区是查找速度很快的关联队列,当一个后来发生的load需要读取上一个store的值,而该值还没有到达缓存,查找是必需的,上图描绘的是一个简化的现代多核CPU,从上图可以看出执行单元可以利用本地寄存器和缓冲区来管理和缓存子系统的交互。
CPU是以缓存行(大小是64字节)为单位先将内存中的数据读取到缓存(先放到L3中,再从L3中读取某些缓存行放到L2中,再从L2中读取某些缓存行到L1中)中,再从缓存中读取数据到寄存器中,最后再从寄存器中读取数据放到ALU(Arithmetic Logic Unit,算术逻辑运算单元)中执行。
计算机中存储单位之间的关系:(GB、MB、KB依次简写为G、M、K)
1T=1024G,1G=1024M,1M=1024K,1K=1024B(B是Byte的简写),1B=8b(b是bit的简写)。计算机中一个0或1就表示一个二进制位(bit),一个字节(Byte)用8个二进制位(bit)表示,即1B=8b。
1、中央处理器cpu
中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。
物理结构:CPU包括运算逻辑部件(运算器)、寄存器部件和控制部件(控制器)等。
1.1、逻辑部件
英文Logic components;运算逻辑部件。可以执行定点或浮点算术运算操作、移位操作以及逻辑操作,也可执行地址运算和转换。
寄存器部件,包括寄存器、专用寄存器和控制寄存器。 通用寄存器又可分定点数和浮点数两类,它们用来保存指令执行过程中临时存放的寄存器操作数和中间(或最终)的操作结果。 通用寄存器是中央处理器的重要部件之一。
寄存器是距离CPU最近、访问数据速度最快的存储介质,用来做一些最基本的指令和地址存储。寄存器从内存中获取数据,然后在CPU中进行处理,处理完后又将数据暂时存放在寄存器中,再从寄存器传输到内存中。寄存器不需要很大容量,但是必须有匹配CPU的数据传输速度,所以它被集成在了CPU内部以节省数据传输的时间,是CPU的一部分。寄存器具有高性能、高耗电的特点,所以造价成本较高。
英文Control unit;控制部件,主要是负责对指令译码,并且发出为完成每条指令所要执行的各个操作的控制信号。
其结构有两种:一种是以微存储为核心的微程序控制方式;一种是以逻辑硬布线结构为主的控制方式。
微存储中保持微码,每一个微码对应于一个最基本的微操作,又称微指令;各条指令是由不同序列的微码组成,这种微码序列构成微程序。中央处理器在对指令译码以后,即发出一定时序的控制信号,按给定序列的顺序以微周期为节拍执行由这些微码确定的若干个微操作,即可完成某条指令的执行。
简单指令是由(3~5)个微操作组成,复杂指令则要由几十个微操作甚至几百个微操作组成。
1.4、工作过程
CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码。它把指令分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。指令是计算机规定执行操作的类型和操作数的基本命令。指令是由一个字节或者多个字节组成,其中包括操作码字段、一个或多个有关操作数地址的字段以及一些表征机器状态的状态字以及特征码。有的指令中也直接包含操作数本身。
机器指令(Machine Instructions)是CPU能直接识别并执行的指令,它的表现形式是二进制编码。机器指令通常由操作码和操作数两部分组成,操作码指出该指令所要完成的操作,即指令的功能,操作数指出参与运算的对象,以及运算结果所存放的位置等。
2、存储器(内存、外存、缓存)
存储器(Memory)是现代信息技术中用于保存信息的记忆设备。其概念很广,有很多层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM(通常所说的内存)、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。计算机中全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,计算机才有记忆功能,才能保证正常工作。
计算机中的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
存储器的主要功能是存储程序和各种数据,并能在计算机运行过程中高速、自动地完成程序或数据的存取。
分类方式 | 存储器 | 功能 | 寻址方式 | 断电后是否丢失 |
按存储介质分类 | 读、写 | 随机寻址 | 数据丢失 | |
读、写 | 随机寻址 | 数据丢失 | ||
按存储方式分类 | 读、写 | 随机寻址 | 数据丢失 | |
读、写 | 顺序寻址 | 数据丢失 | ||
按读写功能分类 | 只读存储器(ROM) | 读 | 随机寻址 | 数据不丢失 |
随机读写存储器(RAM) | 读、写 | 随机寻址 | 数据丢失 | |
按信息保存分类 | 非永久记忆的存储器 | 读、写 | 随机寻址 | 数据丢失 |
永久记忆性存储器 | 读、写 | 随机寻址 | 数据不丢失 | |
按用途分类 | 主存储器(主存) | 读、写 | 随机寻址 | 数据丢失 |
辅助存储器(外存) | 读、写 | 随机寻址 | 数据丢失 | |
高速缓冲存储器(缓存) | 读、写 | 随机寻址 | 数据丢失 |
用途特点
高速缓冲存储器(缓存):高速存取指令和数据,存取速度很快,存储容量很小,成本很高
主存储器(主存):存放计算机运行期间的大量程序和数据,存取速度较快,存储容量不大,成本较高
辅助存储器(外存):存放系统程序和大型数据文件及数据库,存取速度很慢,存储容量很大,成本低
按照与CPU的接近程度,存储器分为内存储器与外存储器,简称内存与外存。内存储器又常称为主存储器(简称主存),属于主机的组成部分;外存储器又常称为辅助存储器(简称辅存),属于外部设备。CPU不能像访问内存那样,直接访问外存,外存要与CPU或I/O设备进行数据传输,必须通过内存进行。在80386以上的高档微机中,还配置了高速缓冲存储器(cache),这时内存包括主存与高速缓存两部分。对于低档微机,主存即为内存。
主存就是狭义上的内存,广义上的内存包括主存和缓存。
把存储器分为几个层次主要基于下述原因:
1、合理解决速度与成本的矛盾,以得到较高的性能价格比。半导体存储器速度快,但价格高,容量不宜做得很大,因此仅用作与CPU频繁交流信息的内存储器。磁盘存储器价格较便宜,可以把容量做得很大,但存取速度较慢,因此用作存取次数较少,且需存放大量程序、原始数据(许多程序和数据是暂时不参加运算的)和运行结果的外存储器。计算机在执行某项任务时,仅将与此有关的程序和原始数据从磁盘上调入容量较小的内存,通过CPU与内存进行高速的数据处理,然后将最终结果通过内存再写入磁盘。这样的配置价格适中,综合存取速度则较快。
为解决高速的CPU与速度相对较慢的主存的矛盾,还可使用高速缓存。它采用速度很快、价格更高的半导体静态存储器,甚至与微处理器做在一起,存放当前使用最频繁的指令和数据。当CPU从内存中读取指令与数据时,将同时访问高速缓存与主存。如果所需内容在高速缓存中,就能立即获取;如没有,再从主存中读取。高速缓存中的内容是根据实际情况及时更换的。这样,通过增加少量成本即可获得很高的速度。
2、使用磁盘作为外存,不仅价格便宜,可以把存储容量做得很大,而且在断电时它所存放的信息也不丢失,可以长久保存,且复制、携带都很方便。
2.1、缓存
高速缓冲存储器就是我们常说的“缓存”。
如果你的程序要获取的数据刚好在寄存器中,则你可以直接获得该数据。如果在内存中,则需50-200个周期。可见速度差别非常大。如果每次寄存器都从内存中去读取数据,则耗费时间将会相当多。为了弥补这一速度差异,工程师们设计了“缓存”这一工作方式。CPU频繁访问的数据被存储在了缓存中。CPU要获取数据时,首先访问缓存,如果命中则得到数据,如果没有命中则再去访问内存。至于缓存怎么判断哪些数据是会被频繁访问的,这就涉及到相关的算法问题了。
缓存使用的是比一般的RAM(Random Access Memory)存取速度更快的SRAM(Static Random Access Memory)。RAM一般分为静态RAM(static RAM, SRAM)和动态RAM(dynamic RAM, DRAM)。SRAM的速度虽然比DRAM快,但成本高得多,所以不可能将DRAM全部替换成SRAM。但是为了扩大缓存容量,工程师增加了多个高速动态RAM,将原来的SRAM叫做一级缓存,新增的DRAM叫做二级缓存。CPU访问数据先是在一级缓存中找,找不到再到二级缓存中找,再没有就去内存中找。
注意:只有一级缓存是在CPU中的,一级缓存的读取需要2-4个时钟周期;二级缓存的读取需要10个左右的时钟周期;而三级缓存需要30-40个时钟周期,但是容量依次增大。
2.2、主存
主存储器(简称主存)就是我们常说的(狭义的)“内存”,使用的是动态RAM(dynamic RAM, DRAM)。
它之所以叫动态,是因为将数据写入DRAM后,一段时间过后数据会丢失,需要一个额外的电路不断对其进行刷新操作才行。因为DRAM储存数据利用的是电容中是否有电荷,有代表1,无代表0。但是电容会放电或吸电,刷新操作会对其进行检查。如果电量大于满电量的1/2,则将电充满,否则将电全部放掉。
SRAM虽然不需要刷新操作,但是断电后仍会丢失数据。所以RAM都要在有电源时工作。
主存和缓存在广义上整体被称为内存储器(简称内存),而其他外部不依赖电存储数据的设备(如磁盘、光盘等)统称外存储器或辅助存储器。内存是CPU和外部存储设备之间的桥梁,用来存放那些将要被CPU处理的数据,以及与外部设备交换数据。
除了RAM,还有一种内存被称为ROM(Read Only Memory)。ROM的速度要远远慢于RAM,只能读取,不能写入,可在断电后保存数据。ROM一般用来存储一些固定的系统软件或字库,PC的BIOS芯片就是ROM。由于ROM不能改写、不能升级,现在已经很少使用。早期的游戏卡带也是ROM。
需要指出的是,由于ROM断电后可存储数据,很多人将ROM和硬盘混为一谈,实际上两者完全不同。ROM是内存储器,硬盘是外存储器。
2.3、磁盘存储器
磁盘存储器就是“磁盘”、“硬盘”或“机械硬盘”,是长期联机存储数据的主要介质,如电脑中的C盘、D盘等。为了能够访问数据,系统必须将数据从磁盘移到内存。完成处理后,数据要写回磁盘。由于访问磁盘非常耗时,而且频繁操作磁盘也会造成磁盘损伤,所以有了“磁盘缓存”这一设计。
移动硬盘是机械硬盘还是固态硬盘?
两者都有,即移动硬盘既有机械硬盘,也有固态硬盘。固态的移动硬盘一般较贵,容量较小。
固态硬盘(Solid State Disk, SSD)不是磁盘,固态硬盘并没有可以移动的部分,外形也不像唱片,并且数据是存储在存储器(闪存)中,与磁盘唯一的相似之处就是它也存储了大量即使在电源关闭也不会丢失的数据。
磁盘同 RAM 相比,每个二进制位的成本低了两个数量级,而且经常也有两个数量级大的容量。磁盘唯一的问题是随机访问数据时间大约慢了三个数量级。磁盘访问慢的原因是因为磁盘的构造不同。
磁盘是一种机械装置,在一个磁盘中有一个或多个金属盘片,它们以 5400rpm、7200rpm、10800rpm 或更高的速度旋转。从边缘开始有一个机械臂悬横在盘面上,这类似于老式播放塑料唱片 33 转唱机上的拾音臂。信息会写在磁盘一系列的同心圆上。在任意一个给定臂的位置,每个磁头可以读取一段环形区域,称为磁道(track)。把一个给定臂的位置上的所有磁道合并起来,组成了一个柱面(cylinder)。
每个磁道划分若干扇区,扇区的值是512字节。在现代磁盘中,较外部的柱面比较内部的柱面有更多的扇区。机械臂从一个柱面移动到相邻的柱面大约需要 1ms。而随机移到一个柱面的典型时间为5ms至10ms,具体情况以驱动器为准。一旦磁臂到达正确的磁道上,驱动器必须等待所需的扇区旋转到磁头之下,就开始读写,低端硬盘的速率是50MB/s,而高速磁盘的速率是160MB/s。
2.4、快闪存储器
快闪存储器即是我们常说的“闪存”。不同于内存,它在电源关闭时(或故障时)数据可保存下来。
它是一种外部存储器,多用于照相机、音乐播放器、手机等设备(如SD卡,Secure Digital Memory Card)。现在的游戏卡一般都是闪存。U盘用的也是快闪技术。另外,快闪存储器也在作为磁盘存储器的替代品越来越多地被使用,即所谓的“固态硬盘(ssd,solid state disk)”。
2.5、光学存储器
光学存储器最流行的形式就是光盘(Compact Disk, CD)。CD一般容量较小,数字视频光盘(Digital Video Disk, DVD)容量较大一些,可以存储任何数字数据。蓝光DVD拥有更高的容量。
2.6、磁带存储器
磁带存储器主要用于备份数据和归档数据,个人一般很少用到。
磁带存储器比磁盘便宜,访问数据比磁盘更慢,容量更大。
最快的存储介质,如缓存和内存,被成为基本存储;磁盘被称为辅助存储或联机存储;磁带、光盘等被称为三级存储或脱机存储。
3、物理内存、虚拟内存
内存条就是内存。电脑里的装机内存是有限的,内存容量一般有2GB(2010年左右)、4GB(2014年左右)、8GB(2018年左右),还有16GB甚至更大的内存。内存容量越大,计算机运行速度就越快,但是成本也越高。
内存条区是计算机内部(在主板上)的一些存储器,用来保存CPU运算的中间数据和计算结果。内存条是电脑的一个中转站,从硬盘那里取出数据或运行程序提供给中央处理器,电脑上任何一种输入(来自外存、键盘、鼠标、麦克风、扫描仪,等等)和任何一种输出(显示、打印、音像、写入外存,等等)都需要通过内存才可以运行和使用,内存是程序与CPU之间的桥梁。
物理内存也是指的内存条。虚拟内存,又称页面文件。
硬盘--也叫磁盘,一般都是用来存储数据的,相当于数据仓库,比如系统,都是安装在硬盘里面,下载的软件和文件也都保存在硬盘里,如果电脑里没有安装硬盘,电脑开机后一样可以显示,只是不能进入操作系统,只能显示出BIOS英文的界面
内存条与硬盘的区别:
1.内存条都远比硬盘容量小,目前主流装机内存都是8GB了,硬盘容量比较大,目前市场机械硬盘大小为500G以上最大的机械硬盘能达到了10多TB。
2.内存条运行速度比硬盘快很多。
物理内存指通过物理内存条而获得的内存空间,而虚拟内存则是指将硬盘的一块区域划分来作为内存,即虚拟内存是硬盘的一块区域。当物理内存不足时,可以用虚拟内存代替。
虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。
4、总线
总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束, 按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。
工作原理:
如果说主板(Mother Board)是一座城市,那么总线就像是城市里的公共汽车(bus),能按照固定行车路线,传输来回不停运作的比特(bit)。这些线路在同一时间内都仅能负责传输一个比特。因此,必须同时采用多条线路才能传送更多数据,而总线可同时传输的数据数就称为宽度(width),以比特为单位,总线宽度愈大,传输性能就愈佳。总线的带宽(即单位时间内可以传输的总数据数)为:总线带宽 = 频率 x 宽度(Bytes/sec)。当总线空闲(其他器件都以高阻态形式连接在总线上)且一个器件要与目的器件通信时,发起通信的器件驱动总线,发出地址和数据。其他以高阻态形式连接在总线上的器件如果收到(或能够收到)与自己相符的地址信息后,即接收总线上的数据。发送器件完成通信,将总线让出(输出变为高阻态)。
在计算机中用于连接各种功能部件并在它们之间传送数据的公用线路或通路。在计算机系统中按其所连接的对象,总线可分为:片总线,又称器件级总线,它是中央处理器芯片内部的总线。内总线,又称系统总线或板级总线,它是计算机各功能部户之间的传输通路,微型计算机总线通常称为内总线。外总线,又称通信总线,它是计算机系统之间,或者是计算机主机与外围设备之间的传输通路 [1] 。
总线是一种共享型的数据传送设备。虽然总线上可联接多个设备,但任一时刻通常只能有一对设备参与数据传输。按信息传输的形式,总线可分为并行总线和串行总线两种。并行总线对n位二进制信息用n条传输线同时传送,其特点是传输速度快,但系统结构较复杂,它用于计算机系统内的各部件之间的连接;串行总线对多位二进制信息共用一条传输线,多位二进制信息按时间先后顺序通过总线,它的特点是结构简单,但其传输速度较慢。总线必须有明确的规范: 总线定时协议,即在总线上传送信息时必须遵守一定的定时规则,例如同步总线定时,异步总线定时,半同步总线定时等。总线的物理特性,包括信号、电源、地址的电气特性,以及连线、接插件的机械特性。总线带宽,它是总线所能达到的最高传输率,其单位是MB/S。
由于总线是连接各个部件的一组信号线。通过信号线上的信号表示信息,通过约定不同信号的先后次序即可约定操作如何实现。总线的特性如下
(1)物理特性:
物理特性又称为机械特性,指总线上部件在物理连接时表现出的一些特性,如插头与插座的几何尺寸、形状、引脚个数及排列顺序等。
(2)功能特性:
功能特性是指每一根信号线的功能,如地址总线用来表示地址码。数据总线用来表示传输的数据,控制总线表示总线上操作的命令、状态等。
(3)电气特性:
电气特性是指每一根信号线上的信号方向及表示信号有效的电平范围,通常,由主设备(如CPU)发出的信号称为输出信号(OUT),送入主设备的信号称为输入信号(IN)。通常数据信号和地址信号定义高电平为逻辑1、低电平为逻辑0,控制信号则没有俗成的约定,如WE表示低电平有效、Ready表示高电平有效。不同总线高电平、低电平的电平范围也无统一的规定,通常与TTL是相符的。
(4)时间特性:
时间特性又称为逻辑特性,指在总线操作过程中每一根信号线上信号什么时候有效,通过这种信号有效的时序关系约定,确保了总线操作的正确进行。
为了提高计算机的可拓展性,以及部件及设备的通用性,除了片内总线外,各个部件或设备都采用标准化的形式连接到总线上,并按标准化的方式实现总线上的信息传输。而总线的这些标准化的连接形式及操作方式,统称为总线标准。如ISA、PCI、USB总线标准等,相应的,采用这些标准的总线为ISA总线、PCI总线、USB总线等。
总线按功能和规范可分为五大类型:
数据总线(Data Bus):在CPU与RAM之间来回传送需要处理或是需要储存的数据。
地址总线(Address Bus):用来指定在RAM(Random Access Memory)之中储存的数据的地址。
控制总线(Control Bus):将微处理器控制单元(Control Unit)的信号,传送到周边设备。
扩展总线(Expansion Bus):外部设备和计算机主机进行数据通信的总线,例如ISA总线,PCI总线。
局部总线(Local Bus):取代更高速数据传输的扩展总线。
三类总线在微机系统中的地位和关系:
其中的数据总线DB(Data Bus)、地址总线AB(Address Bus)和控制总线CB(Control Bus),也统称为系统总线,即通常意义上所说的总线。
有的系统中,数据总线和地址总线是复用的,即总线在某些时刻出现的信号表示数据而另一些时刻表示地址;而有的系统是分开的。51系列单片机的地址总线和数据总线是复用的,而一般PC中的总线则是分开的。
“数据总线DB”用于传送数据信息。数据总线是双向三态形式的总线,即他既可以把CPU的数据传送到存储器或I/O接口等其它部件,也可以将其它部件的数据传送到CPU。数据总线的位数是微型计算机的一个重要指标,通常与微处理的字长相一致。例如Intel 8086微处理器字长16位,其数据总线宽度也是16位。需要指出的是,数据的含义是广义的,它可以是真正的数据,也可以是指令代码或状态信息,有时甚至是一个控制信息,因此,在实际工作中,数据总线上传送的并不一定仅仅是真正意义上的数据。
常见的数据总线为ISA、EISA、VESA、PCI等。
“地址总线AB”是专门用来传送地址的,由于地址只能从CPU传向外部存储器或I/O端口,所以地址总线总是单向三态的,这与数据总线不同。地址总线的位数决定了CPU可直接寻址的内存空间大小,比如8位微机的地址总线为16位,则其最大可寻址空间为2^16=64KB,16位微型机(x位处理器指一个时钟周期内微处理器能处理的位数(1 、0)多少,即字长大小)的地址总线为20位,其可寻址空间为2^20=1MB。一般来说,若地址总线为n位,则可寻址空间为2^n字节。
“控制总线CB”用来传送控制信号和时序信号。控制信号中,有的是微处理器送往存储器和I/O接口电路的,如读/写信号,片选信号、中断响应信号等;也有是其它部件反馈给CPU的,比如:中断申请信号、复位信号、总线请求信号、设备就绪信号等。因此,控制总线的传送方向由具体控制信号而定,(信息)一般是双向的,控制总线的位数要根据系统的实际控制需要而定。实际上控制总线的具体情况主要取决于CPU。
按照传输数据的方式划分,可以分为串行总线和并行总线。串行总线中,二进制数据逐位通过一根数据线发送到目的器件;并行总线的数据线通常超过2根。常见的串行总线有SPI、I2C、USB及RS232等。
按照时钟信号是否独立,可以分为同步总线和异步总线。同步总线的时钟信号独立于数据,而异步总线的时钟信号是从数据中提取出来的。SPI、I2C是同步串行总线,RS232采用异步串行总线。
合理搭配:
前端总线(Front Side Bus,通常用FSB表示)是将CPU连接到北桥芯片的总线。计算机的前端总线频率是由CPU和北桥芯片共同决定的。主板北桥芯片负责联系内存、显卡等数据吞吐量最大的部件,并和南桥芯片连接。CPU就是通过前端总线(FSB)连接到北桥芯片,进而通过北桥芯片和内存、显卡交换数据。前端总线是CPU和外界交换数据的最主要通道,因此前端总线的数据传输能力对计算机整体性能作用很大,如果没足够快的前端总线,再强的CPU也不能明显提高计算机整体速度。数据传输最大带宽取决于所有同时传输的数据的宽度和传输频率,即数据带宽=(总线频率×数据位宽)÷8。PC机上所能达到的前端总线频率有266MHz、333MHz、400MHz、533MHz、800MHz几种,前端总线频率越大,代表着CPU与北桥芯片之间的数据传输能力越大,更能充分发挥出CPU的功能。CPU技术发展很快,运算速度提高很快,而足够大的前端总线可以保障有足够的数据供给给CPU,较低的前端总线将无法供给足够的数据给CPU,这样就限制了CPU性能得发挥,成为系统瓶颈。
总线操作:
总线一个操作过程是完成两个模块之间传送信息,启动操作过程的是主模块(如CPU或DMA等),另外一个是从模块(如RAM内存)。某一时刻总线上只能有一个主模块占用总线。
总线的操作步骤:主模块申请总线控制权,总线控制器进行裁决。主模块得到总线控制权后寻址从模块,从模块确认后进行数据传送。