EMU-ZONE 电子DIY

 
首页制作硬件资料开发资料购买
 
原创稿件 - 《微型计算机》 - 电脑是如何工作的?——总线
电脑是如何工作的?——总线

注:请勿转载,如有需求请与刊登的杂志社联系.

  翻开中国地图,可以看到大大小小的许多城市,在这些城市之间,有铁路线使它们联通,人和货物可以通过铁路线从一个城市到达另外一个城市。铁路线的建设也是有其科学性的,如果在每两个城市之间都建立单独的铁路线,那么线路的总长度会变得很长,并且如果有了新的城市要和现有的城市通火车的话,又要费劲的建立一堆的铁路线,这显然是不现实的。实际上有更好的办法,我们把铁路线分为干线和支线。像我们的京广线和陇海线就是干线,它们贯通了我国领土的东西方向和南北方向,这两条线路的吞吐能力非常大,可以允许大量的人和货物的运输。其它的城市则通过一些支线铁路与干线相联通,由于支线连接的城市少,其运输能力也不必很大。
  从地图中可以看出,要从东边一个城市到达西边一个城市,其过程是这样的:支线→干线→支线。干线是最繁忙的,所有的人和货物都要经过干线。这样的好处是如果有一个新城市要加入这个铁路网络,只需建一条支线连接到干线上即可,而铁路网络的总长也大大减小。
  在计算机领域,也广泛采用了类似的结构,不过不叫干线,而是叫总线。

  一、计算机为何需要采用总线结构

  我们知道,计算机是一种非常复杂的设备,它的最大特点是各部分功能电路的模块化和可扩充性。在各功能模块之间要建立一些电气连接来完成数据交换,如我们前面所述,采用总线结构可大大简化这些连接,尤其是当模块比较多的时候。另一方面,当需要扩展模块时,只要将模块挂在总线上即可,作为主机部分无需进行任何改动。还需要指出的是,总线自身都有一定的标准,而我们知道计算机由于其复杂性,各个功能模块往往是不同生产厂商设计生产的,而计算机是采用总线结构的,不同厂商生产的模块只要按同一总线标准来设计,就可保证兼容性,使它们能够很好的在一起工作。
  随着半导体加工工艺的提高,各个模块、芯片内部的结构越来越复杂化,元件密度越来越高,这使得芯片和模块已经能够达到很高的工作频率,但是按照现行的标准而言,总线的速度还是很有限的。而总线速度决定了各部件之间的传输通道的速度或者带宽。当各个部件的性能已经发展到一定高度时,总线就变成了一个“瓶颈”,它限制了各个部件直接的通讯速度,此时就是总线结构该变革的时候。因此,在近三十年的发展过程中,总线结构不断地发展变化,成为衡量计算机系统性能的重要指标之一。

  二、总线的定义

  概括来说,总线就是连接两个以上数字电路系统之间的信息传输通道。微机系统中使用的各种芯片、各种板卡内元器件之间、各板卡之间的连接,都是通过总线进行的。
  采用总线结构,可以简化系统设计、减少信息传送线的数量,便于实现系统积木化、标准化,从而使众多厂商能根据标准生产各种具有兼容性的外部设备;面向总线的设计使系统的运行、维护、扩充等工作更加灵活。所以在我们现在的电脑中就有了针对某种总线接口设计的一些板卡,比如使用AGP总线接口的显卡、使用PCI总线接口的声卡等,而你只需根据需要更换这些板卡就可以提升电脑的性能。
  
            
                      //图:总线结构示意图

  三、总线的工作原理

  总线归根结底是要用来传送数据的,但是由于不同的总线具有不同的标准,其具体的工作原理也不尽相同,但总的来说还是有其相似之处。
  作为总线,它通常要包括地址线、数据线、时钟线、控制线。地址线表示了寻址范围,数据线表示了传输数据的带宽,时钟线用来同步数据传输,控制线用来协调整个数据传输过程。
  当两个设备之间要通过总线进行数据传送时,首先要知道总线是否空闲,是否可以使用,所以要通过控制线申请总线的使用权,当得到允许后,就可以进行数据传输了。但是要进行数据传输,就要知道目的地。就是说需要知道数据要送到哪里去,这就需要知道它们的地址,地址线的作用就是表示数据所在的存储器的位置或者数据将要到达的存储器的位置。数据线是用来传送数据的,越多的数据线就能同时传输越多位的数据,8位的数据线同时能够传送一个字节的数据,16位的数据线能同时传送两个字节的数据。当要开始进行传送时,需要两个设备都准备好,这就需要通过控制线发送信号来通知接收方开始数据传输,当数据传送结束后,也需要通过控制线发送数据接收完成的信号。在数据的传输过程中,要保证接收方能够准确的分辨数据的每一位,这就需要时钟信号来同步,比如在时钟信号的上升沿开始一组数据的传送,在下降沿开始另一组数据的传送。时钟线就是负责向双方设备发送这种同步时钟信号的。
  因为总线所连接的部件有多个,而总线同时只能允许两个模块之间进行通讯,这中间就存在一个先后次序的问题。所以总线上就存在一个总线判优控制机构。当某个模块需要使用总线进行数据传输时,都要先发送一个“请求”信号,就是告诉总线控制器,我要使用总线,如果此时,总线处于空闲状态,那么总线控制器就会发送一个“总线可用”的信号,那么发送请求的模块就知道自己现在可以使用总线了。否则模块会收到一个“总线忙”的信号,表示别人正在使用总线,自己要等一等了。
  总线上的数据传输分为同步传输和异步传输。对于同步传输方式,采用了一个统一的时钟信号来控制数据的传送,各个部件之间同时在时钟信号的上升沿或下降沿发送或接收数据。但对于工作速度不同的部件之间,则采用异步通信方式。
  在异步通讯方式,总线上通讯的两个模块直接是利用“握手”信号来协调总线上的数据传输。首先发送方要先将数据放在总线上,然后在控制线上发出“数据准备好”的信号,接收方发现有“数据准备好”的信号就把总线上的数据接收下来,然后利用控制线发出“数据接收”的信号,发送方识别到“数据接收”信号后,就撤销总线上的数据和控制信号,这样就完成了一次数据的传送。   四、总线的速度

  总线的速度跟两个参数有关,一个是总线的时钟频率,一个是总线的数据带宽。要提升总线速度,就要对这两个参数进行提升。数据带宽就是可同时传输的数据的位数,也就是我们常说的8位、16位、32位、64位,数据带宽的提高要求有更多的数据线,电气连接也要相应增加。总线频率的提升则是时钟信号频率的提升。但是总线是有一定的标准规范的,改变这两个参数就意味着改变总线的标准规范,这就需要在整个行业内达成共识才能够做到。

  五、总线的分类

  根据总线的定义,我们知道总线是一个相当广泛的称谓。凡是涉及信号传递和控制的线路基本都有总线的味道。根据计算机系统的层次结构,总线也按层次结构分为CPU总线、存储总线、系统总线和外部总线。

  1.CPU总线
  主要是指微处理器内部各功能单元的连线,但它延伸到CPU外。其中在处理器内部负责寄存器、运算器和控制器之间传输数据的总线部分可以称之为片内总线,也称作内部总线。CPU总线还延伸到单个处理器外部,包括CPU、ROM、RAM、控制芯片组和各种I/O接口芯片之间的连接以及多个CPU之间的连接,它还定义了与系统总线的接口规范。我们常常提到的前端总线、处理器频率、以及同步缓存、二级缓存等概念和它们的工作方式都属于内部总线定义范畴。现在主流计算机的内部总线标准是由CPU设计者制定的,没有统一的规范。比如AMD和Intel的CPU采用的内部总线结构就不是统一标准。

  2.存储总线
  这是内存控制器与内存DRAM相连的总线。在电脑中,有存储器的地方都有存储总线,比如主板上内存和北桥芯片之间连接的存储总线、显卡上显示控制器和显存之间连接的存储总线。

  3.系统总线
  这是主板扩展槽上各扩展卡之间相连的总线,也可以称之为I/O总线。电脑上的系统总线使你可以很容易的扩充电脑的功能,比如插上声卡就可以使用多媒体功能,插上内置MODEM卡就可以上网等。随着电脑系统总线标准的不断发展,流行过以及正在使用的流行总线标准有ISA、MCA、EISA、VESA和PCI等,它们都有相应的扩展槽。

  4.外部总线
  这是电脑用于连接外围设备的辅助总线,或者说是外设的接口标准。随着电脑的发展,电脑的外设也在不断的发展,为了使不同的外设都能够方便的连接到电脑上,这些外设都根据不同的接口标准设置了接口。这些接口标准有IDE、SCSI、USB和IEEE 1394等。前两种接口标准都是老一代的标准,而后两种作为新型的接口标准,具有更多的优点,比如:可以连接更多的外设、允许同时连接多种不同的外设、支持热插拔等。 ======================
  5.新型的内部总线
  我们都可以明显感觉到这两年外部设备的飞速变化,从速度上将,都有了非常大的提高。但是作为内部总线的咽喉南北桥之间的连接,一直采用了PCI总线,它在结构上并没有太大的变化,速度上也没有太大的提高,这就限制了计算机整体速度的提高。所以,几大芯片组厂商都提出了自己的一些解决方案,采用新型的总线来代替原先在南北桥之间的PCI总线。下面我们来看一看。

  HUB LINK
  这是芯片组的老大INTEL的方案。HUB LINK的时钟频率为66M,数据带宽为8位,但在每个周期可传送四次数据,所以其传送速率为66x4=266MB/s,这比PCI总线的133MB/s要高一倍。其它的一些设备例如IDE\USB等都挂接在新的HUB LINK上,这样外部设备的传输速率就不必受133MB/s的限制了。

  V-LINK
  V-LINK是威盛提出的解决方案。V-LINK的时钟频率为133MB/s,数据带宽为8位,每个周期可传送两次数据,其传送速率为133x2=266MB/s,同样比PCI总线的133MB/s要高一倍。外部设备都挂接在新的V-LINK上,这样外部设备的传输速率就不必受133MB/s的限制了。

  Multi-Threaded I/O Link
  Multi-Threaded I/O Link是矽统的解决方案。这与上面的两者有所不同,它并没有去提高数据传输通道的速度,而是同时提供了8条通道。这样虽然每条通道的传输速率仍然是133MB/s,但是8条一起使用,就是133x8=1064MB/s即1.04GB/s,显然这明显高于前两者。不过具体的每一通道仍然是133MB/s。不同的外部设备使用独立的通道,当多个设备同时使用时,由于它们使用不同的通道,所以传输速率不会受到限制。

======================

//注:扩展槽(Slot)有时也称为I/O通道。一般主板上都带有5~8个扩展槽,它们实际上是系统总线的扩充,连接到扩展槽上的信号除了CPU的地址线、数据线、控制线外,还有+5V、-5V、+12V、-12V四种电源信号以及地线。扩展槽实现了PC机的开放体系结构,为用户提供了扩展电脑性能的手段,用户可以根据自己的需要,购买不同厂家生产的不同功能的板卡来扩充或者升级自己的电脑。

  六、系统总线详解

  1.ISA
  时光倒流到20世纪80年代初,IBM推出第一台PC/XT机,使用了Intel 8088CPU,机器主板附带的扩展槽有8个,每个槽中的信号线管脚有两排,每排31个脚,共62个脚,即有62条信号线,通常把这种扩展槽称为XT总线扩展槽。XT总线数据宽度为8位,地址线有20条。国产的长城0520系列就是PC/XT兼容机。后来Intel推出80286之后,IBM随之推出了PC/AT机,也有8个扩展槽。其中的两个是8位数据总线扩展槽,与XT机扩展槽相同。另外的6个是16位数据总线扩展槽,称为AT总线扩展槽。对应80286的机能,AT总线数据宽度为16位,地址线有24条。AT总线扩展槽由两个相邻的插槽组成,大的有62条信号线(兼容XT槽),小的有36条信号线,两排各18条,其中包括高8位数据线和高8位地址线。AT总线的结构保证了与XT总线的兼容,为XT机设计的板卡也能插入AT总线扩展槽,受到用户的欢迎,随之PC机开始大行其道,开创了PC机的广阔天地。至今我们所使用的PC依然是IBM PC/AT一脉相传发展而来的,PC为全世界IT业界的发展创造了无数的财富和商业、工作机会。AT总线后来被称为工业标准结构总线(Industry Standard Architecture Bus),简称ISA总线。ISA总线的最高工作频率为8MHz,虽然后来Intel推出了80386,但受ISA总线的设计所限,频率超过8MHz时,信号噪声变的很严重,于是,AT机(286)终于被淘汰了。但由于ISA作为工业标准结构总线,它的应用范围很广,以至于现在还有很少主板保留了ISA总线的扩展槽。

  2.MCA
  微通道结构总线(Mico Channel Architecture),简称MCA总线,是1987年IBM推出其32位机PS/2时建立的,MCA总线数据宽度为32位,能提供较高的工作频率,性能比ISA总线优越,但由于它与ISA总线不兼容,IBM公司为了吃独食,保证其在微机领域的领导地位,采取了技术保密政策,因此MCA总线没有被广泛接受,很快就自然死亡了。

  3.EISA
  为了与IBM的MCA的垄断抗衡,COMPAQ公司联合了HP、AST、DEC、Tandy等九家PC兼容机制造商,推出了一种与ISA总线完全兼容的32位总线标准,称为扩展工业标准结构总线(Extended Industry Standard architecture),简称为EISA总线。EISA总线有32位数据线、32位地址线,工作频率与MCA总线差不多,造价比MCA总线便宜,最主要的是它与ISA总线兼容,允许ISA接口的板卡直接插到EISA总线上,维护了广大用户的利益,所以当时比较受欢迎,在市场上成功的阻击了IBM的MCA标准的产品。并且由于EISA总线的公开性,使EISA总线得到了众多厂商的支持,推出有多种EISA总线接口的板卡。EISA总线扩展槽的外形、长度都与ISA总线扩展槽完全一样,但槽的深度比ISA槽深,槽内接触簧片为双层结构,上一层连接ISA板卡,而下一层和上一层一起与EISA接口的板卡连接。EISA扩展槽的底部有一个凸出部位,用来顶住ISA接口的板卡,使得ISA板卡只能与槽的上层接触簧片接触。EISA接口的板卡PCB底部有一个对应的凹口,装入插槽时可以插入槽的底部,从而使EISA板卡的两层金属插脚分别与槽内上下两层接触簧片连接。EISA总线的信号线在ISA的基础上增加了100条,除了数据线、地址线、控制线外,还有电源线等。

  特定的板卡并不一定需要所有可以从总线上得到的连接线,所以,板卡制造商自然不会在那些不用的连接位置上刻蚀出连接线了。另外,EISA总线能够通过软件来实现板卡的配置,去掉了卡上用于功能设置的DIP开关,这被称之为POS(Programable Option Select)。但EISA只是一个过渡性的总线,因为它很快就被VESA取代了,所以EISA板卡并不多见。

  4.VESA
  虽然EISA总线工作频率比ISA总线提高了很多,但对于高性能的显示卡以及一些带高速存储器的板卡来说,仍然显得速度太慢,尤其是显示性能的提高明显受总线速度的限制。为此,有的厂家提出了一些解决方法,如将外设直接挂到CPU的局部总线上并以CPU的频率运行。但由于没有这样的局部总线标准,各个厂家的产品不能互相兼容。为了改善这种情况,视频电子标准协会(Video Electronic Standard Association)推出了一个开放的通用局部总线标准,并用该协会的名字命名为VESA总线标准。VESA总线的数据宽度为32位,可以扩展到64位,与CPU同步运行。VESA总线最多能支持三个VESA扩展槽,主要用于显卡、硬盘控制卡以及扩展存储器卡。在实际生产的 VESA的主板上,大多具有两个VESA扩展槽,32位的VESA扩展槽位于ISA槽的同一直线上,与ISA槽合并使用,因此我们见到的VESA板卡PCB底端的连接部分很长,比ISA板卡的接口部分长了大约8cm。

  5.PCI
  PCI(Peripheral Component Interconnect)是外部设备互连总线的简称。它也是目前最流行的电脑系统总线。PCI总线是一种高性能局部总线,他相对于VISA、ISA总线性能上有了极大的提高,它支持多个外部设备,在CPU和外设之间充当一个独立的处理器,在各总线之间负责数据传输管理,加速数据的传输。PCI总线具有自动配置功能,保证板卡插入系统即可工作,不必设置开关或跳线。PCI总线数据宽度为32位,可以扩充到64位,最大传输速率可达132MB/s。在主板上,PCI扩展槽一般都是白色的,长度约8cm。32位的PCI扩展槽内有124个插脚,分为两排,64位的PCI扩展槽增加了60个插脚,为184个,增加的插脚位于延长的一段插槽内,长度约12cm,与32位PCI槽相兼容。

  七、外部总线详解

  1.IDE
  IDE接口是由COMPAQ开发并由Western Digital公司生产的控制器接口,它的全称是Intergrated drive electronics。IDE接口使用40芯的电缆连接设备,它可以同时连接2个硬盘,支持的硬盘容量最大为528M。它作为早期的接口标准已经没有用武之地了,现在常见的IDE标准是EIDE和Ultra ATA/IDE。
  EIDE和Ultra ATA/IDE一般用来连接硬盘和光驱。EIDE是由Western Digital公司开发生产的接口标准,EIDE相对于IDE标准具有很多优点:支持最大容量为8.4G的硬盘;支持硬盘以外的其他设备,比如CD-ROM,最多可以同时连接四个设备;最大突发数据传输率为16.6MB/S(PIO模式4)。
  Ultra ATA/IDE是由Quantium和Intel共同设定的接口新标准,他的最大特点是外部数据传输率提高到了33Mbps,而最新的Ultra ATA/IDE 66和Ultra ATA/IDE 100接口标准分别把外部数据传输率提高到了66Mbps和100Mbps。可以看到Ultra ATA/IDE标准比EIDE和IDE具备更快的速度。所以目前的电脑中均采用了Ultra ATA/IDE接口。

  2.SCSI
  SCSI接口的全称为:Small Computer System Interface,及小型计算机系统接口。它是由美国国家标准协会(ANSI)发布的接口标准。它可以连接硬盘、磁带机、光驱、扫描仪等多种设备,它具备速度快、智能化、兼容性好、扩充能力强(至少能同时连接7个设备,使用ID号来区分)的特点,并且对于CPU的占用率只有IDE的一半。所以长期以来SCSI标准很收欢迎。SCSI标准由于不断发展现在具有多种规格,第一代的标准只有5Mbps的数据传输速率,它使用50线的电缆来连接设备,而最新的Ultra2 SCSI把总线的数据宽带扩展到了16位,最大的数据传输率达到了80Mbps。Ultra2 SCSI使用68线的电缆连接设备,支持同时连接16个设备。但由于SCSI接口的成本较高,他主要是面向商业级应用,所以在PC机上的应用不如IDE广泛。

  3.USB
  说起USB外部总线,大家应该都不会陌生,他已经成为电脑外部总线的基本配备了,在一般的计算机后面都可以看到两个USB接口。USB的全称是:Universal Serial Bus,即通用串行总线,是由Intel、IBM、Microsoft、Compaq、Digital、NEC、Northern Telecom七家公司共同开发的。它作为新一代的外部总线,它具备了更多的性能优点:
  ●它以菊花链形式扩展端口,可以同时最多连接127个设备。现在新一些的设备基本上都有带有USB接口的版本,比如:音箱、CDROM、游戏杆、MODEM、键盘、鼠标、扫描仪、数码照相机等等,这些都可以同时连接到USB总线上。
  ●支持热插拔技术,这样你可以不关闭电脑,就可以随时插上USB设备,系统会自动识别该设备并开始工作。并且USB接口只有4根连接线,插接十分方便。
  ●具有高数据传输速度,USB有1.5Mbps和12Mbps两种标准,远远高于电脑串行口和并行口的速度。
  ●可以给USB设备提供电源。USB接口中的4根连接线其中两根就是电源和地,根据USB总线标准,USB接口可以给USB设备提供500MA的电流,这样对于一般的设备来说已经完全够用了,使你使用时只需要插上一根USB连接线就行了,不用给设备多带一个电源。

  4.IEEE 1394
  IEEE 1394总线标准是由Apple公司开发的,Apple把它起了一个响亮的名字FireWire(火线)。Apple在开发IEEE 1394时首先考虑的是这种总线的性能,而不像USB总线首先考虑的是成本,这样的结果使得IEEE 1394成为了一种高性能但成本较高的一种新型总线。它比USB总线具备了更高的传输速度(IEEE 1394允许总线上的设备最大传输速度可以达到400Mbps,而USB只有12Mbps),并且IEEE 1394具有USB所具备的各种优点(热插拔即插即用、可以同时连接多个设备(62个)、可以给总线上的设备提供电源等)。由于IEEE 1394具备的高传输速度,它很适合于对速度要求严格的场合,比如视频图像的传输。但由于IEEE 1394的成本,现在还没有被电脑厂商广泛采用,但其在数字图形处理领域已经备受世人的关注。SONY公司已经在数码相机、数码摄像机等产品中加入了IEEE 1394接口,而且在新出现一些外置硬盘中也具有IEEE 1394的接口,使用这些接口使得这些设备具备了新的活力。

 



 
 
【模拟器硬件DIY】版权所有 Copyright(C) 2000-2006 本站资料未经许可,请勿转载,如有需求,请联系