在远程通讯和电脑科学中,串行通讯(英语:Serial communication)是指在电脑总线或其他数据通道上,每次传输一个位元数据,并连续进行以上单次过程的通讯方式。与之对应的是并行通讯,它在串行端口上通过一次同时传输若干位元数据的方式进行通讯。串行通讯被用于长距离通讯以及大多数电脑网络,在这些应用场合里,电缆和同步化使并行通讯实际应用面临困难。凭借着其改善的讯号完整性和传播速度,串行通讯总线正在变得越来越普遍,甚至在短程距离的应用中,其优越性已经开始超越并行总线不需要串行化组件(serializer),并解决了诸如时钟偏移(Clock skew)、互联密度(interconnect density)等缺点。PCI到PCI Express的升级就是其中一个例子。
串行总线[编辑]
如果集成电路具有更多的引脚的话,那么它的价格通常会更加昂贵。为了减少封装中的引脚数,许多集成电路在速度不是特别重要的情况下,使用串行总线来传输数据。这样的低价串行总线的例子有串行周边接口(Serial Peripheral Interface Bus,SPI)[1]、I²C[2]、UNI/O[3]、1-Wire[4]等。
串行通讯与并行通讯的比较[编辑]
在电脑之间、电脑内部各部分之间,通讯可以以串行和并行的方式进行。一个并行连接通过多个通道(例如导线、印制电路布线和光纤)在同一时间内传播多个数据流;而串行在同一时间内只连接传输一个数据流。
虽然串行连接单个时钟周期能够传输的数据比并行数据更少,前者传输能力看起来比后者要弱一些,实际的情况却常常是,串行通讯可以比并行通讯更容易提高通讯时钟频率,从而提高数据的传输速率。有以下一些因素允许串行通讯具有更高的通讯时钟频率:
无需考虑不同通道的时钟脉冲相位差(英语:clock skew);
串行连接所需的物理介质,例如电缆和光纤,少于并行通讯,从而减少占用空间的体积;
串扰的问题可以得到大幅度缓解。
在许多情况里,串行通讯都凭借其更低廉的部署成本成为更佳的选择,尤其是在远距离传输中。许多集成电路都具有串行通讯接口来减少引脚数量,从而节约成本。
串行通讯架构的例子[编辑]
摩尔斯电码(用于电报)
RS-232(低速,用于串行接口)
RS-422
RS-423
RS-485
I²C
SPI
ARINC 818(英语:ARINC 818)Avionics数码视频总线
通用串行总线(中速,用于连接多种外部装置)
IEEE 1394
以太网
纤维管路(高速,用于连接电脑和大容量存储器)
InfiniBand(超高速)
MIDI数码乐器控制
DMX512(英语:DMX512)舞台灯光控制
SDI-12(英语:SDI-12)工业传感器协议
串行SCSI
SATA
SpaceWire(英语:SpaceWire)航天器通讯网络
HyperTransport
PCI Express
QPI
同步光网络(光纤高速传输)
T-1(英语:T-carrier)和E-1(英语:E-carrier)变体(通过铜线对的高速通讯)
MIL-STD-1553A/B
参考文献[编辑]
^ 易志明,林凌,郝丽宏,李树靖. SPI串行总线接口及其实现. 自动化与仪器仪表. 2002, (6).
^ 王博,郭玉忠. 基于CPLD的LBE总线与I2C总线接口的实现. 航空计算技术. 2009, 39 (5).
^ UNI/O Bus Specification (PDF). [2011-11-10]. (原始内容存档 (PDF)于2018-10-05) (英语).
^ 郑宏军,黎昕,孟祥国. 1-Wire单总线器件技术规范及应用研究. 电子技术学报(工科版). 2004, 31 (9).
外部链接[编辑]
Serial Interface Tutorial for Robotics(页面存档备份,存于互联网档案馆) (contains many practical examples)
Serial interfaces listing (with pinouts)
Wiki: Serial Ports(页面存档备份,存于互联网档案馆)
Visual studio 2008 coding for Serial communication
查论编电脑连接端口方法串行通讯 · 并行通讯连接端口PS/2接口 · 串口 · 并行端口 · IEEE 1394接口 · RJ-45接口 · 游戏端口VGA端子 · DVI · HDMI · DisplayPort · USB Type-A · USB Type-C标准RS-232 · RS-485 · IEEE 1394 · RJ-45 · Thunderbolt