外部总线与上述的微机系统总线相比,有些概念是类似的。比如总线的标准化,外部总线也是标准化的,信号含义、电特性与机械、物理性特性等有严格的定义。但也有不同的地方,最大的区别是在总线的表现形式上,外总线不像系统总线那样以主机板扩展槽形式出现,而是通过某种特殊形状的连接器来互连两个系统,并且通过接口电路形成总线信号。
外部总线有些是专为微型计算机外设而开发的总线标准,如IDE、SCSI等,有些是借用了其他行业的总线标准,如电子通信等行业的串行总线RS-232-C、并行总线IEEE 488等。现在使用最广泛的外部总线当属USB。
IEEE 488由HP公司于1972年开发出来,称HP接口总线为HP-IB,1975年美国电气电子学会据此制定了程控设备标准接口总线GP-IB,即IEEE 488,1977年被国际电气标准委员会IEC认定为国际标准,称为IEC-IB。IEEE 488为程控设备研发和按需灵活配置各种控制系统带来了较大的方便,被广泛采用。
· 数据在标准总线上按字节(8位)并行传输,字节之间以三线应答方式异步传送,数据传输速率可按设备设定,最高不超过1Mbps。
· 总线信号电平采用负逻辑,逻辑电平与TTL兼容,即逻辑“1”电平≤0.8V,逻辑“0”电平≥2V。
· 总线上挂接的设备数不超过15台。
· 电缆总长度小于挂接的设备数×2m,最长不得超过20m。任何两个设备之间的电缆长度不得超过4m。
IEEE 488电缆的接头是既有插头又有插座的组合式插头座。它有两种标准:GP-IB采用美国57系列24针/脚插头座,IEC-IB采用欧洲F161系列25针/脚插头座,如图5-6所示。因为有两种不同结构和引脚排列的插头座,又产生了两者之间的转换插头座。
图5-6 488插座信号引脚
IEEE 488总线插头座插入仪器设备的IEEE插座时,它本身所带的插座又可供其他电缆插头插入,这样每个设备只要装配一个IEEE 488插座,利用两头带有组合插头座的电缆线就可把各个设备按串联方式或者星型方式连接成系统。
IEEE系统中每个设备按如下3种方式中的一种或几种工作。
(1)“听者”方式:从数据总线上接收数据。同一时刻可以有多个听者在工作。
(2)“讲者”方式:向数据总线发送数据。总线上可以有多个讲者,但同一时刻只能有一个讲者工作。
(3)“控者”方式:响应总线设备的服务请求,对总线设备进行初始化,控制总线上设备的工作方式和数据传送操作。系统中可以有不止一个控者,但任一时刻只能有一个控者工作。
总线上的设备都被分配有唯一的地址,控者可根据需要选择一个讲者和几个听者。
SCSI是一个成功的外设接口,广泛用于Macintosh和IBM-PC兼容机系统及众多的工作站中。SCSI支持多I/O任务并行操作,可选择8位、16位、32位数据线,用作硬盘、光驱、刻录机等大容量外部存储设备的标准接口。
SCSI接口总线在美国Shagart公司的SASI基础上增加了磁盘管理功能,于1986年推出,称为SCSI-1标准;SCSI-1提供8位数据线,时钟频率5MHz,数据传输速率5Mbps。SCSI-1最多允许7个设备以菊花链形式连接到主机上。
1990年推出SCSI-2标准,数据线可有选择地扩大到16位或32位,时钟频率增加到10MHz,数据传输速率最高可达40Mbps。
支持更高传输速率的SCSI-3规范也已开发。
SCSI总线可以连接单个/多个主机与外设构成SCSI系统,如图5-7所示。
图5-7 SCSI系统结构
一般把直接和SCSI总线连接的适配器或外设控制器称为SCSI设备,它具有智能作用,每个外设控制器可以控制一个或多个外设,控制器连接外设的总线称为设备级局部总线。由图5-8可以看出,SCSI系统分为4个层次,通过3类不同总线连接起来。
图5-8 SCSI系统
SCSI设备实际上常采用菊花链相互连接。每个SCSI设备有两个连接端口,一个用于输入,一个用于输出,全部设备依次连接在一起,开始端接主机;所有SCSI设备独立起作用,可与主机交换信息,也可以互相交换数据。例如,一个硬盘数据可备份到另一个硬盘或磁带机上,而不用主处理器参与。
SCSI总线上的设备(模块)分为主设备(又称启动设备)和目标设备,主设备请求一个I/O过程,发出命令;目标设备接收命令,执行I/O过程。通常与主机相连的适配器是主设备,与外设相连的外设控制器是目标设备,主设备接受主机的I/O任务,用SCSI命令告知目标设备执行I/O任务。一般主设备是起始端,外设控制器是目标端,所有的数据交换在起始端和目标端之间进行。在SCSI系统中,主设备与目标设备并不是固定不变的,随两者在I/O操作中所起的作用而定,一个设备既可以作为主设备,也可以作为从设备。
SCSI总线包括并行数据线和控制信号线。并行数据线用于传输命令、消息、状态、数值等,控制信号线控制总线操作的时序变化、阶段更迭等活动。
SCSI-1是8位数据总线传输,有单端信号和差分信号两种传输形式,两者采用相同的传输线:50芯扁平电缆或25对双绞线电缆,称为A电缆。定义的信号线有18条:9条控制线、8条数据线和1条奇偶校验线。
SCSI-2用于超过8位宽度的数据传输,在A电缆之外再加一根68线的B电缆。B电缆是68芯扁平电缆或34对双绞线电缆,包括DB0~DB7之外的DB8~DB31及相应的奇偶校验信号P1~P3,以及请求REQB/应答ACKB等信号。
数据线如下所示。
· DB0~DB7、DB8~DB31:并行传输数据、命令、状态等。
· DBP、DBP0~DBP3:总线校验位,DBP/DBP0对应DB0~DB7的校验位,DBP1对应DB8~DB15的校验位,其余类推。
控制信号如下所示。
· BSY:忙(busy),为真表示该SCSI设备处于“忙”状态,DB总线被占用,由起始端或目标端设置,各设备“互连”。
· SEL:选择(select),主设备用来选择目标设备,以执行一条命令;或断开连接后由目标设备重新选择主设备,恢复原先由起始端启动而被目标端挂起的操作。有关设备“或连”。
· REQ:请求信号(request),由目标设备置为真,用来请求进行一次数据传输。
· ACK:应答信号(acknowledge),起始端响应目标端的REQ请求,由主设备置为真。
· REQB:与REQ信号功能一样,在B电缆中。
· ACKB:与ACK信号功能一样,在B电缆中。
· ATN:注意信号(attention),起始端用来通知目标端,它有消息要传送,由主设备驱动为真。
· MSG:消息(message),目标端用来向起始端表示正在传送的信息是消息。
· I/O:传输方向(Input/Output),目标端用来控制数据线上数据传输的方向。
· C/D:命令/数据(Control/Data),目标端用来表示数据总线上传输的是控制类信息(命令、状态或消息,C/D=1)还是数据信息(C/D=0)。
· RST:复位(reset)信号,用来使总线回复到初始状态。
其他信号如下所示。
· TERMPWR:终端电源(terminator power),SCSI设备外部电源供电电路接入线。
· TERMPWRB:与TERMPWR端功能一样,在B电缆中。
· GND:地线(ground)。
(1)总线状态。
SCSI总线连接多主系统,总线上连接有多个主控制器和SCSI设备。任何设备使用总线要经仲裁,获得总线的设备先要进行选择(或重新选择)来确定目标端,然后在起始端和目标端之间传送信息(包括命令、数据、状态或消息等)。因此SCSI总线状态有空闲期、仲裁期、选择(或重新选择)期、信息传输期,其流程如图5-9所示。
图5-9 SCSI总线状态及流程
(2)SCSI工作过程。
上电或复位时总线进入空闲期,所有信号线都无效。
当有一个或多个设备争用总线时进入仲裁期。每个设备有一个唯一的标识号ID,并与数据总线中的一条相对应连接(因此SCSI设备数不能超过SCSI总线的位数),每个ID的优先级确定:0最小,31(或15或7)最大。经仲裁,高优先级设备获得总线使用权,其他设备退出。
获得总线的设备为主设备,成为起始端,启动SEL进入选择阶段,在对应的两条数据线上使自身ID和目标端D有效,选中目标端设备。在BSY和I/O信号协调下,目标端识别ID。
接着,目标端使C/D信号为“C”,进入命令阶段。目标端使REQ有效,请求起始端发送命令的第一个字节(操作码)。起始端和目标端使用REQ/ACK握手信号传送命令的操作代码及其后的附加字节。
目标端接受和解释命令后,使C/D信号为“D”,使总线处于数据传输阶段,并启动I/O线,在起始端和目标端之间用REQ/ACK握手信号线协调在数据线上传输数据。
所有的请求数据传输之后,目标端使C/D信号为“C”,把状态字节传送到起始端。
最后,目标端使MSG信号有效,使总线处于消息输入阶段,传送命令完成的有关消息。起始端收到消息字节,释放总线,使总线处于空闲状态。
SCSI默认的传输方式是异步传送,如上所述。在数据输入和数据输出阶段,SCSI也支持同步传送。同步传送的系统开销较少,发送端在得到接收端对REQ的响应后,能发送一个连续的字节(或字)流。
(3)消息。
发送端和接收端之间交换消息,以此来管理SCSI接口。消息有单字节、双字节和多字节3种格式。常用的消息例子如下。
· 命令完成:目标端送到发送端,表示一个命令的终止/有效状态已发给起始端。
· 断开:目标端送到起始端,表示中断连接。
· 起始端检测到错误:起始端送目标端,目标端需要重新操作。
· 终止:起始端送发送端,消除当前操作。
· 同步数据传输:在起始端和目标端交换,建立同步数据传输。
(4)命令。
不管如何连接以及连接的对象属性(特性、结构)怎样,SCSI都具有相同的物理特性和逻辑特性,SCSI自身具有与设备、主机无关的高级命令系统。
SCSI协议的核心和重点是SCSI命令集。命令包括从目标端读数据、向目标端写数据以及适合特定外设的操作。每条命令都由起始端发送、使目标端产生某些相应动作。SCSI命令集提供了一种标准方法用来处理连接到个人计算机和工作站上的各种公共设备,简化在主机系统中编制I/O程序的任务。
命令在命令描述块(CDB)中定义。CDB由6~11个字节组成,包括操作代码(一个字节)、逻辑单元号(标识一个连接到目标端的物理设备或虚拟设备)、逻辑块地址(2~4个字节,读/写的逻辑起始地址)、传送长度(1~4个字节,指定传送逻辑块的数目,这些逻辑块相连)或参数列表长度或分配长度(指定起始端为返回数据而分配的最大字节数),以及连接的控制。
起始端在数据总线上将CDB传送到目标端,并开始执行命令。执行命令包括如下一些步骤:目标端获得命令并对其译码——数据传输(送到目标或从目标读出,或不执行此步)——目标端产生并回送状态信息。
SCSI命令大多数用于具体设备。SCSI-2标准包括如下设备类型的命令:处理器、通信设备、直接存取设备、顺序存取设备、打印机、一次写设备、只读光盘、扫描仪、光存储设备、媒体转换设备等。
SCSI有17条命令适用所有类型设备,其中有4条是所有设备必须执行的强制命令。
· 查询:请求目标端及其所连外设向起始端发送有关参数。
· 读请求:请求目标端将读出的数据(错误信息、定位信息、逻辑状态等)传送到起始端。
· 发送诊断:请求目标端对自己或所有控制的外设做出诊断。
· 测试单元就绪:报告检测逻辑单元是否就绪。
IDE(Integreted Driver Electronics,集成驱动器电子部件)是由Compaq公司开发、Western Digital公司生产的控制器接口。IDE接口在ST 506的基础上进行了改进,把控制器集成到驱动器内,这样做的最大好处是可以消除驱动器和控制器之间的数据丢失问题,提高数据传输的可靠性。由于控制电路并入驱动器内,从驱动器中引出的信号线已不再是控制器和驱动器之间的接口信号线,而是通过简单处理后可与主系统连接的信号线。
IDE采用了40线单组电缆连接,除了对总线上的信号做必要的控制之外,其余信号基本上是原封不动地送往硬盘驱动器。由此可见,IDE实际上是系统级的接口,有的资料上因此也称IDE为AT嵌入式(AT-Attachment,ATA)接口。
IDE由于具有多种优点,且成本低廉,因此在微型计算机中得到了广泛的应用。
IDE接口虽然有上述优点,但它只能管理容量在512MB以下的硬盘,不能满足技术的快速发展。Western Digital在原有基础上开发了新的EIDE(增强型IDE)接口,它已经成为新一代的标准。与IDE相比,EDIE有以下几个方面的特点。
(1)支持大容量的硬盘。
(2)EIDE允许连接更多的外设。IDE通常只提供一个IDE插座,最多只能挂主从两个硬盘。EIDE通常提供两个插座,称为主插座和辅插座,每个插座可连接主从两个设备,一共可连接4个设备。
(3)EIDE具有更高的数据传输速率。原有的IDE驱动器的最大突发数据传输速率(burst data transfer rate)仅为3Mbps。而标准EIDE驱动器的最大突发数据传输速率可达16Mbps。
(4)为了支持大容量硬盘,EIDE支持3种硬盘工作模式:普通模式(normal)、逻辑块寻址模式(logical block addressing)、大硬盘模式(large)。
IDE/EIDE接口的引脚定义如表5-8所示。
表5-8 IDE/EIDE硬盘驱动器40线缆信号
引脚 |
信号 |
含义 |
引脚 |
信号 |
含义 |
1 |
REST |
复位 |
21 |
未用 |
未用 |
2 |
GND |
信号地 |
22 |
GND |
信号地 |
3 |
HD7 |
数据线D7 |
23 |
硬盘写 | |
4 |
HD8 |
数据线D8 |
24 |
GND |
信号地 |
5 |
HD6 |
数据线D6 |
25 |
硬盘读 | |
6 |
HD9 |
数据线D9 |
26 |
GND |
信号地 |
7 |
HD5 |
数据线D5 |
27 |
IOCHRDY |
通道就绪 |
8 |
HD10 |
数据线D10 |
28 |
HALE |
地址锁存允许 |
9 |
HD4 |
数据线D4 |
29 |
未用 |
未用 |
10 |
HD11 |
数据线D11 |
30 |
GND |
信号地 |
11 |
HD3 |
数据线D3 |
31 |
IRQ14 |
中断请求线 |
12 |
HD12 |
数据线D12 |
32 |
16 |
I/O片选16 |
13 |
HD2 |
数据线D2 |
33 |
HA1 |
地址1 |
14 |
HD13 |
数据线D13 |
34 |
未用 |
未用 |
15 |
HD1 |
数据线D1 |
35 |
HA0 |
地址0 |
16 |
HD14 |
数据线D14 |
36 |
HA2 |
地址2 |
17 |
HD0 |
数据线D0 |
37 |
0 |
片选0 |
18 |
HD15 |
数据线D15 |
38 |
1 |
片选1 |
19 |
GND |
信号地 |
39 |
SLVACT |
激活 |
20 |
未用 |
未用 |
40 |
GND |
信号地 |
通用串行总线(Universal Serial Bus,USB)是一种应用在PC领域的新型接口技术。虽然早在1995年就已经有PC带有USB接口了,但由于缺乏软件及硬件设备的支持,这些PC的USB接口都闲置未用。1998年后,随着微软在Windows 98中内置了支持USB接口的模块,加上USB设备的日渐增多,USB接口才逐步走进了实用阶段。
这几年,随着大量支持USB的PC的普及,USB逐步成为PC的标准接口已经是大势所趋。在主机端,最新推出的PC几乎100%支持USB;而在外设端,使用USB接口的设备也与日俱增,例如数码相机、扫描仪、游戏杆、磁带和软驱、图像设备、打印机、键盘、鼠标等。
对于全速操作,数据传输率速率为12Mbps,而慢速操作则为1.5Mbps。对于全速接口,电缆长度被限制在最长5m,而对于慢速接口则限制在最长为3m。这些电缆可使用的功率限制最大电流为100mA,电压为5V。如果电流值超过100mA,则Windows将在该设备旁显示一格黄色的惊叹号。
USB设备之所以会被大量应用,主要因其具有以下优点。
· 热插拔:用户在使用外接设备时,不需要“关机”将并口或串口电缆接上,再“开机”这样的动作,而是直接在PC开机时就可以将USB电缆插上使用。
· 携带方便:USB设备大多以小、轻、薄见长,对用户来说,同样20GB的硬盘,USB硬盘只有IDE硬盘一半的重量。在想要随身携带大量数据时,当然USB硬盘会是首选了。
· 标准统一:大家常见的是IDE接口的硬盘、串口的鼠标键盘、并口的打印机扫描仪,可是有了USB之后,这些应用外设统统可以用同样的标准与PC连接,这时就有了USB硬盘、USB鼠标、USB打印机等。
· 可以连接多个设备:USB在PC上往往具有多个接口,可以同时连接几个设备。如果接上一个有4个端口的USB 集线器时,就可以再连上4个USB设备,以此类推,尽可以连下去,将所有设备都同时连在一台PC上而不会有任何问题(最多可连接127个设备)。
图5-10给出了USB连接器的引线图,每种连接器有4个引线,包含如表5-9所示的信号。USB总线电源线的供电标准为+5V下100mA电流,其电压最低不低于4.4V。如果设备自备电源,则实际上只使用两根差分数据线。
图5-10 A型、B型USB连接器
表5-9 USB引线
线号 |
缆线颜色 |
意义 |
1 2 3 4 |
红 白 绿 黑 |
VCC(+5V) D- D+ GND |
众所周知,相对于单端信号而言,双端差分平衡信号的最大特点是对共模信号的抑制等极高,理想情况下为无穷大。因而在同等条件下,双端结构比单端结构的传输距离远得多,换言之,双端比单端的传输速率高得多。
图5-11是USB接口电路的数据发送与接收原理框图,它也同时说明了USB数据的转换过程。USB的数据信号为双相,发送的单极性信号一方面正相传送,另一方面经过反相器形成倒相的另一路,原路与倒相这两路信号都通过由OE控制的三态门输出,SN75240是噪声抑制电路,此后即将这种差分的USB数据信号发送到线路上。接收时其差分的USB信号进入比较器,直接转换为单极性的逻辑电平信号。
图5-11 USB接口电路的数据发送与接收原理框图
差分线之间的状态转换阈值为200mV,即D+端的电位高于D-端的电位200mV时,对应逻辑1;D-端的电位高于D+端的电位200mV时,对应逻辑0;差分信号处于-200~+200mV的范围时,则是无法识别的盲区。德州仪器的75773集成芯片与图5-11中的差分线路的驱动器与接收器的功能相同。
USB串行数据采用常用传输编码中反相非归零(NRZI)编码。图5-12描绘了此种NRZl编码数据的理想波形。这一编码方法在传送逻辑1时不改变信号的电平,但在传送逻辑0时信号电平要反相。所传送的实际数据包含同步位,它们是用称为位填充的方法产生的,如果在一行中传送的逻辑1多于6位,则位填充在一行6个连续的逻辑1后增加一个额外的位(逻辑0)。数据传送总是首先从最低有效位开始的。
传统的接口电路每增加一种设备就需要为它准备一种接口或插座,还要为它们准备各自的驱动程序。这些接口、插座、驱动程序各不相同,给使用和维护带来了困难。由Intel等公司开发的通用串行总线(Universal Serial Bus,USB)采用通用的连接器,使用热插拔技术以及相应的软件,使得外设的连接、使用大大简化了,受到了普遍的欢迎,已经成为流行的外设接口。
图5-12 USB使用的NRZI编码
USB协议目前的版本是USB 2.0,它允许3种规格的传输速度:高速(high-speed)480Mbps、全速(full-speed)12Mbps以及低速(low-speed)1.5Mbps。后两种传输速度兼容USB l.1标准(1.1版本中的高速在2.0版本中改称为全速)。不同传送速度的设备可以相互通信。
USB总线使用一个4针的标准插头,信号定义如表5-10所示。VBUS为USB设备提供电源(4.75V~5.25V),+5V时最大可提供500mA的电流。D+和D-是一对差分信号线,连接到总线上的主机和所有设备。USB总线采用半双工方式传送信号,任何一个时刻,要么信号从主机发往USB设备,要么从USB设备发往主机,不能同时在两个方向上传输。
表5-10 USB信号定义
引脚 |
信号名称 |
导线颜色 |
引脚 |
信号名称 |
导线颜色 |
1 |
VBUS |
红 |
4 |
GND |
黑 |
2 |
D- |
白 |
外壳 |
信号屏蔽层 |
|
3 |
D+ |
绿 |
|
|
|
USB总线上的传输是以主从方式进行的。任何一次传输都由USB主机发起,USB设备只能被动地根据主机的要求,或者接收主机发来的信息,或者回送主机所要求的信息,或者对主机发来的信息做出应答。传输只能在USB主机和设备之间进行,USB设备之间不能直接进行信号传输。
为了满足不同特点的外部设备的需要,USB总线有4种不同的传输类型。
(1)控制传输:一个USB设备接入总线后,USB主机询问该设备的类型,为该设备分配地址,这个配置设备的过程称为控制传输。
(2)中断传输:键盘、鼠标等低速设备的数据传输是断续进行的,这些设备的信号传输使用中断传输方式。USB主机通过定时查询的方法了解这些设备有无传输要求。通过设置查询时间间隔可以把对设备响应的延迟控制在允许范围之内。中断传输仅仅使用于输入设备,打印机这样的设备使用下面叙述的批量传输。USB设备没有主动向主机申请中断的权利。
(3)批量传输:供打印机、数码相机、扫描仪等中高速设备使用,这些设备传输的数据通常是成批的,而且是不定期的。
(4)实时传输:主要用于视频、音频等对传输速度有严格要求的外部设备。对于这一类设备来说,传输的实时性比正确性更显得重要。为了提高速度,它宁可部分地牺牲传输的正确性。
控制传输的数据格式在USB规范中有明确的规定,而其他传输的数据格式由具体的应用决定。
所有的USB设备都必须支持控制传输,除此之外,只支持它所需要的传输类型,不一定要支持所有的传输类型。低速设备除了支持控制传输外,只支持中断传输方式。
各种传输类型的传输速度/数据包大小如表5-11所示。
表5-11 各种传输类型的速度/数据包大小
传输类型 |
每个端点最大数据传输速度(Kbps)/数据包大小(B) | ||
低速 |
全速 |
高速 | |
控制 |
24/8 |
832/8、16、32、64 |
15872/64 |
中断 |
0.8/(1~8) |
64/(1~64) |
24576/(1~1024) |
批量 |
不支持 |
1216/8、16、32、64 |
53248/512 |
实时 |
不支持 |
1023/(1~1023) |
24576/(1~1024) |
(1)USB容易使用。用户将USB设备连接到计算机上后,系统会自动检测该设备,安装相应的驱动程序。只有当系统找不到适当的驱动程序时,才会要求用户提供驱动程序。系统安装驱动程序时,用户不用设置任何选项。
(2)USB支持热插拔,用户不用关闭计算机就可插拨USB设备。
(3)不同的USB设备使用相同的接口。USB接口的价格低、能耗低并且稳定性好。
(4)USB总线可以提供+5V、最大500mA的电源给USB设备,大部分的USB设备可不用自带电源。
(5)传输速度快,USB提供3种传输速度,最高速度可达480Mbps。
(6)富有弹性,USB有4种传输类型,可以满足不同特点外部设备的需要。
(7)由于USB协议比较复杂,在USB设备中需要使用USB通信控制芯片来处理底层的信号传输。
IEEE 1394原为Apple公司开发的一种计算机接口,称为火线(firewire)。1995年美国电气和电子工程师学会(IEEE)在这个基础上制定了IEEE 1394标准。IEEE 1394是一个串行接口,广泛应用于视频、音频领域,连接数码相机、数字摄像机及数字录像机等设备。在计算机硬盘和网络互联等方面,IEEE 1394技术也有着广阔的发展空间。
IEEE 1394的前身即firewire是1986年由苹果电脑公司针对高速数据传输所开发的一种传输界面,并于1995年获得美国电机电子工程师协会认可,成为正式标准。现在大家看到的IEEE 1394、firewire和i.LINK,其实指的都是这个标准。通常,在PC领域将它称为IEEE 1394;在电子消费品领域更多地将它称为i.LINK;而对于苹果机则仍以最早的firewire 称之。
IEEE 1394 也是一种高效的串行接口标准,功能强大,性能稳定,而且支持热插拔和即插即用。IEEE 1394可以在一个端口上连接多达63个设备,设备间采用树型或菊花链拓扑结构。
IEEE 1394标准定义了两种总线模式,即Backplane模式和Cable模式。其中Backplane 模式支持12.5、25、50Mbps的传输速率;Cable模式支持100、200、400Mbps的传输速率。目前,最新的IEEE 1394b标准能达到800Mbps的传输速率。
IEEE 1394是横跨PC及家电产品平台的一种通用界面,适用于大多数需要高速数据传输的产品,如高速外置式硬盘、CD-ROM、DVD-ROM、扫描仪、打印机、数码相机、摄影机等。
IEEE 1394分为有供电功能的6针A型接口和无供电功能的4针B型接口。A型接口可以通过转接线兼容B型,但是B型转换成A型后则没有供电的能力。6针的A型接口在苹果电脑和周边设备上使用很广,而在消费类电子产品以及PC上多半都是采用简化过的4针B型接口,需要配备单独的电源适配器。IEEE 1394接口可以直接当作网卡联机,也可以通过Hub扩展出更多的接口。没有IEEE 1394接口的主板也可以通过插接IEEE 1394扩展卡的方式获得此功能。
· 数字接口:数据以数字形式传输,无须进行数/模转换,同时支持同步和异步两种数据传输模式。同步传输模式特别适合于传输音频、视频这些与时间严格相关的信号及数据。
· 点对点总线技术:不同的数字设备之间通过1394接口直接连接而无须计算机的干预,例如可以不通过计算机在两台摄像机之间直接传递数据。
· 连接方便:IEEE 1394采用设备自动配置技术,允许热插拔操作。IEEE 1394支持星型和环型布局,允许电缆自由连接。
· 速度快:IEEE 1394数据传送速度高,能够以200Mbps、400Mbps甚至大于800Mbps的速率来传送音频、视频信息等大容量数据,并能在同一网络中用不同的速度进行传输。
· 物理体积小:制造成本低,易于安装。
· 非专利性:使用IEEE 1394串行总线不存在专利问题。
IEEE 1394采用树型或菊花链拓扑结构,图5-13就是它的一种连接。
IEEE 1394总线上的通信有异步和同步两种模式。
对于异步传输,数据发送方和接收方互换地址,然后进行数据传输,接收方收到数据包后向发送方传回确认信息,接收方没有收到数据包则启动错误修复机制。
图5-13 IEEE 1394的扩展连接
对于同步传输,发送方首先要获得一个特定带宽的数据通道,然后将标志接收方的通道标识(ID)附加在所要传输的数据中一起发送。接收方对数据流进行检测,对具有特定ID信号的数据进行接收。同步数据传输模式的优先级高于异步传输模式。
IEEE 1394接口的传输通过分层协议实现,分为物理层、数据链路层、处理层和串行总线管理4个部分。
(1)物理层。
物理层主要提供设备和线缆之间的电气和机械连接,处理数据传输和接收,确保在同一时刻只有一个节点传输数据,以使所有的设备对总线能进行良好的存取操作。
(2)数据链路层。
数据链路层提供同步和异步模式下的数据包确认、定址、数据校验及数据分帧等。其中异步传送与大多数计算机应答式协议相似;而同步传送为实时带宽保证式协议。
(3)处理层。
处理层负责处理异步数据包,支持异步协议写、读和锁定指令。写即是将发送者的数据送往接收者;读即是将有关数据返回到发送者;锁定即是写、读指令功能的组合。
(4)串行总线管理。
串行总线管理提供全部总线的控制功能,包括确保向所有总线连接设备供应电力、优化定时机制、分配同步通道ID、处理基本错误提示等。
IEEE 1394接口有6针和4针两种类型。六角形的接口为6针,小型四边形接口为4针。最早苹果公司开发的IEEE 1394接口是6针的,后来,SONY公司看中了它数据传输速率快的特点,将早期的6针接口进行改良,重新设计成为现在大家所常见的4针接口,并且命名为i.Link。
两种接口的区别在于能否通过连线向所连接的设备供电。6针接口中有4针是用于传输数据的信号线,另外2针是向所连接的设备供电的电源线,电压一般为8V~40V,最大电流1.5A,设备之间距离最大4.5m,连接总长度为50m~100m。6针接口常使用于台式计算机,而4针接口多用于DV或笔记本电脑等设备。
图5-14是IEEE 1394接口插座的外观。
图5-14 IEEE 1394的6针插座
USB和IEEE 1394都是串行接口,支持热插拔,但两者有不少区别。首先,USB要求CPU来控制数据的传输,也即有一定的CPU占用率,而且只支持异步传输。IEEE 1394不需要CPU控制,CPU的占用率极低,它不仅支持异步数据传输,也支持同步数据传输。IEEE 1394的每个设备的数据传输率都能够达到400Mbps,而且将来要达到800Mbps,甚至更高的3.2Gbps。
IEEE 1394不需要集线器(Hub)就可连接63台设备。IEEE 1394总线的传输并不一定要通过PC,可以直接将采用IEEE 1394总线的设备连接在一起。在USB的拓扑结构中,必须通过Hub来实现多重连接,整个USB网络中最多可连接127台设备,而且一定要有计算机的存在。因为IEEE 1394设备有专门的数据传输处理芯片,所以对CPU占用率相对要小些,这在实际使用中就可以了解,USB 2.0的移动硬盘在传输数据时CPU占用率是IEEE 1394的10倍。
另外,USB 2.0的传输速率与IEEE 1394a(400Mbps)大致相当,但最新设计的IEEE 1394b即将出台,USB 2.0的480Mbps传输速率与IEEE 1394b的3.2Gbps相比,差距是很明显的。
IEEE 1394接口现在已经逐渐成为计算机的标准配置,因其兼容性好、高速且数据传输速率可扩展、支持热插拔、支持点对点传输以及拓扑结构灵活多样等优点而迅速占领局域网组建、数字视频、消费者音频以及硬盘等市场。IEEE 1394新标准的扩展工作也一直在继续进行。如IEEE 1394b的传输速率可以提升到800Mbps、1.6Gbps甚至3.2Gbps,传输距离可以相应延长至50m~100m。在无线传输方面也已越来越接近于实用。随着备有该接口的设备的不断增多,有望建立易于使用的系统环境,IEEE 1394也将会成为新的总线标准。