最近在看计算机网络物理层部分,涉及到异步通信和同步通信,这个和通信知识相关。
异步通信和同步通信都是为了解决时钟同步问题,这个和编程中的同步和异步是不一样的概念。
时钟同步
我的理解是,发送者发送一系列信号,接收者接收相应的信号,但是从哪里开始接收,哪里结束,通信双方需要进行约定,如果时钟同步出现问题,则读取到的信息就会出现偏差。
异步通信
发送者发送的一系列信息之间的间隔是不确定的,每段信息只发送一个字符,每个字符5-8各比特,标明起始位和结束位,这样接收者就知道了从何处开始接收,从何处开始停止。
这样做的好处是不需要单独的时钟信号,但是因为每段信息存储了开始和结束标志,因此浪费了带宽。
同步通信
发送者每次传输一大块数据,且没有起始位和结束位。
时钟同步要么将时钟信号整合进数据信号的来保证,要么发送单独的时钟信号来保证。
发送单独的时钟信号
适用于短距离传输,且浪费带宽。
如下为归零编码信号传输例子,需要额外的时钟信号,否则存在时钟同步问题。
将时钟信号整合进数据信号
可满足长距离传输,带宽利用率高。
将时钟信号整合进数据信号的编码方式包括归零编码、曼切斯特编码、差分曼切斯特编码