问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

同步通信与异步通信详解

创作时间:
作者:
@小白创作中心

同步通信与异步通信详解

引用
CSDN
1.
https://blog.csdn.net/hengbao4/article/details/146982856

在计算机通信领域,同步通信与异步通信是两种基本的数据传输方式。它们在时钟信号的使用、数据传输效率以及应用场景等方面存在显著差异。本文将详细介绍这两种通信方式的特点,并通过具体案例和例题帮助读者深入理解。

前言

前面我们介绍过编码规则,强调了时钟对于收发双方的重要性。有单独的时钟信号,称作同步,无单独的时钟信号称作异步。

1. 同步通信

同步通信是一种数据传输方式,其中发送方和接收方使用相同的时钟信号来协调数据的发送和接收。
发送方和接收方共享同一个时钟信号,这个时钟信号可以是外部提供的,也可以由发送方生成并随数据一起传输。
由于不需要额外的起始位和停止位来标记每个字符的边界,同步通信可以实现更高的数据传输效率。
USB是一个很好的例子,通常,主机负责生成时钟信号,并通过这个时钟信号来协调外设的数据传输。

2. 异步通信

在异步通信中,我们除了需要区分波特率,还要知道字符的起始和终止位置。整个异步通信领域,基本上都采用了在字符之间插入同步信息的方式,也就是插入起始位、停止位来实现异步通信。
这里,我们举两例。

2.1 ModbusRTU

这是一个简单的工业上的通讯协议,它在传输每个字符的时候可以指定起始位、数据位、停止位、奇偶校验

2.2 HDLC

HDLC(高级数据链路控制)是一种链路层协议的国际标准,旨在实现远程用户间资源共享以及信息交互。
HDLC的起始标志和终止标志都是特殊的八位序列
01111110
(十六进制为
0x7E
),这个序列用于界定HDLC帧的开始和结束。
至于为什么是
01111110

7E
) 也有个说法,它包含六个连续的“1”,这在正常的数据流中出现的概率相对较低,所以拿它作为一中标志。
为啥它在当时出现的概率相对较低呢?因为在
ASCII
编码中可显示字符的最后一个,也就是波浪号 ~ 的ASCII编码对应
7E
,再往后就是一个不可见的控制字符
DEL
,也就是
7F
了。故采用
7E
是颇为合理的选择。
决定了使用
7E
,也就是6个连续的1之后,HDLC不得不进行零比特填充,不过这都是后话了,咱们之后再详细讨论HDLC。

3. 例题

在异步通信中,每个字符包含1个起始位,7个数据位,1个奇偶校验位和1个终止位,每秒传输100个字符,采用DPSK调制,则码元速率为?有效数据速率为多少?
解:
使用奈奎斯特定理
R = B ⋅ log ⁡ 2 N 100 ⋅ ( 1 + 7 + 1 + 1 ) = B ⋅ log ⁡ 2 2 B = 1000 B a u d R = B \cdot \log_2N \ 100 \cdot (1+7+1+1) = B \cdot \log_2{2} \ B = 1000 BaudR=B⋅log2 N100⋅(1+7+1+1)=B⋅log2 2B=1000Baud
由于除数据位以外,都是为了同步、差错校验而存在,所以要乘以一个数据位占整个字符的比值:
1000 b p s × 7 10 = 700 b / s 1000 bps \times \frac{7}{10} = 700 b/s1000bps×107 =700b/s

后记

读者也可以参考郭天祥老师的3分钟短视频来熟悉这种同步、异步的感觉:认识异步通信和同步通信
文中有任何错误、遗漏,欢迎在评论区指出,共同学习进步。

修改记录

更新日期 修改内容
2025年4月5日 完成初稿

本文原文来自CSDN

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号
同步通信与异步通信详解