新闻  |   论坛  |   博客  |   在线研讨会
让我握住你的手——计算机接口基础知识(2)
张阳 | 2008-05-13 16:54:56    阅读:1473   发布文章

上次谈到,握手信号是联系主机与外设的纽带,主机通过握手信号获得外设必要信息,为数据传输做好准备。那么,握手信号是不是在所有的计算机接口中都是必须的呢?回答是否定的。在鼠标和键盘使用PS/2接口中,就没有握手信号。键盘和鼠标也需要跟主机之间进行数据传输,没有握手信号,这些设备又是怎样与主机建立联系的呢?

我们先考察一下PS/2鼠标端口(3)。PS/2端口用作鼠标接口时,只用6个插针中的4个,Pin1用于传送数据,Pin3接地,Pin4向鼠标供电,Pin5为鼠标提供时钟信号。与串行口、并行口相比,PS/2接口没有握手信号,但是有时钟信号,两者的差别就在这里。

 

3  PS/2鼠标接口

难道说,时钟信号能够代替握手信号的一些功能吗?也不可以这么说。合理的解释是,这是两种完全不同的通信方式。并行口和串行口使用的通信方式称作“异步通信”,而PS/2接口则使用“同步通信”。

通信接口中是否使用时钟信号是区别同步通信还是异步通信的标志,同步通信的双方使用同一个时钟,而异步通信中无须这么做。尽管如此,无论同步通信还是异步通信,通信双方都必须相互协调,以一定的约定(协议)保持双方同步,否则就会造成数据的错误与混乱。

在异步通信方式中,收发双方取得同步的办法是采用在字符格式中设置起始位和停止位。在一个有效字符正式发送前,先发送一个起始位,而在字符结束时再发送一个停止位。接收器不断地检测或监视线路上信号的变化,当检测到有起始位时,便知道紧随其后的是有效字符位的到来,这才开始接收字符;当检测到停止位时,便停止接收。使用该方式进行通信时,发送器与接收器不需要相同的时钟,所以称之为异步通信。

而在同步通信方式中,传输信息的每一位都必须在收发两端严格保持同步,即所谓的“位同步”。因此,在同步通信中,收发两端需要同一个时钟源作为同步信号。

进行同步传送时,发送端须先发送一个同步字符去通知接收端串行数据的第一位何时到达,接着便以连续的形式发送信息,传输效率较高。而异步通信每传送一个字符要增加大约20%的附加信息位,传输效率较低。

同步通信除了具有通信效率高的优点之外,接口电路的结构也比较简单,而且更加易于管理。正因为如此,同步通信的应用也十分广泛。SMBusSystem Management Bus,系统管理总线)就是一种同步通信接口,它只有两根信号线:一根双向数据线和一根时钟信号线。Windows中显示的各种设备的制造商名称和型号等信息,都是通过SMBus总线收集的。

图4  基于SMBus的CPU温度监控电路

SMBus的数据传输率为100kbps,虽然速度较慢,却以其结构简洁造价低廉的特点,成为业界普遍欢迎的接口标准。主板监控系统中传送各种传感器的测量结果,以及BIOS向监控芯片发送命令,都是利用SMBus实现的。PCI插槽上也给SMBus预留了两个引脚(A40为SMBus 时钟线,A41为SMBus 数据线),以便于PCI接口卡与主板设备之间交换信息。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客