数字通信中的编码(学习笔记)

news2024/11/19 10:44:09

编码种类

RZ(Return Zero Code)编码

也称为归零码,就是在 一个周期内,用二进制传输数据位,在数据脉冲结束后,需要维持一段时间的低电平。
RZ编码又分为两种:

  • 单极性归零码
    低电平表示0,正电平表示1,如下图:

img

红色的线表示数据,只占据一部分的周期,剩下周期部分为归零段

  • 双极性归零码
    高电平表示1,负电平表示0

img

RZ编码特点:能够同时传递 时钟信号和数据信号 ,但由于归零,需要占用一部分的带宽

NRZ(Non Return Zero Code)编码

也称不归零编码,即正电平表示1,低电平表示0。它与RZ码的区别就是它不用归零,也就是说,一个周期可以全部用来传输数据,这样传输的带宽就可以完全利用

使用NRZ编码若想传输高速同步数据,基本上都要带有时钟线,因为本身NRZ编码无法传递时钟信号。但在低速异步传输下可以不存在时钟线,但在通信前,双方设备要约定好通信波特率,例如UART

一般常见的带有时钟线的传输协议都是使用NRZ编码或者差分的NRZ编码

示意图:

img

NRZI(Non Return Zero Inverted Code)编码

反向不归零编码,集成了前两种编码的优点,即既能传输时钟信号,又能尽量不损失系统带宽

编码方式:当电平状态发生变化时,表示的数据为0,信号电平不变表示1 (开始)

USB2.0通信的编码方式就是NRZI编码

波形示意图:(表示00100010)

img
特点:

1)在传输的数据中,很少出现全1的状态,故接收端可以根据发送端的电平变化确定采样时钟频率

2)如出现数据为全1的状态,也就是说信号线一直保持一个状态,这个时候时钟信号就无法传输,接收端就无法同步时钟信号,这该如何解决呢?

解决方式:
在一定数量的1之后强行插入一个0,就是说若信号线状态一直持续一段时间不变的话,发送端强行改变信号线的状态,接收端则只需要将这个变化忽略掉就可以了
USB2.0的协议中规定为传输7个1则在数据中插入一个0
举例发送数据1111 1111 ,如下图:

img

NRZ 和 NRZI 都没有自同步特性,但是可以用一些特殊的技巧解决。比如,先发送一个同步头,内容是 0101010 的方波,让接受者通过这个同步头计算出发送者的频率,然后再用这个频率来采样之后的数据信号,就可以了

曼彻斯特编码

利用信号的 跳变方向来决定数据 的。在位中间,信号由高向低跳变表示数据0,信号由低向高跳变表示数据1 (这个起始也可以反过来,看具体怎么约定)
波形示意图:(数据1001 1010)

img

差分曼彻斯特编码

差分曼彻斯特编码就是在 位起始点 的跳变,来判断数据的高低,每个位中间都会翻转,来保证时钟信号。

img

表现形式

对于以上的编码格式,可以以以下形式表现。

单端信号

单端信号指的是用一个线传输的信号,参考一般为地。单端信号是在一跟导线上传输的与地之间的电平差。当把信号从A点传递到B点时,需保证A点和B点的地电势是一样的(或者通过一根地线来保证)。优点是成本低,缺点是抗干扰能力比较差。

img

1.地电势差的波动影响:一条信号传输线上A点和B点对地电势差应该一致,不一致就会出现问题。假设A点电势高于B点,在信号线上就会形成微小的压差,也就会产生微弱的电流。恰恰就是这微弱的电流使我们的信号发生干扰。

2.地端电流的大小影响信号的幅值波动:地端的电流是动态的,忽大忽小,因此具有一定的波动,所以单端信号对地电压也会发生波动,这种波动会影响信号的幅度,从而信号质量会大大降低。

所以,一般单端信号用于低频电路中,适合于高幅度信号,不适合低幅度信号。

差分信号

差分传输是一种信号传输的技术,区别于传统的一根信号线一根地线的做法,差分传输在这两根线上都传输信号,这两个信号的振幅相等,相位相差180度,极性相反。在这两根线上传输的信号就是差分信号。

img

差分信号常用于高速电路中,例如 LVDS(低电压差分信号)。差分信号如上图的下半部分,顾名思义,差分信号就是两条信号线。差分(difference)又名差分函数或差分运算,差分的结果反映了离散量之间的一种变化,是研究离散数学的一种工具。

它将原函数 f(x) 映射到 f(x+a) - f(x+b) ,根据这个公式可以推出差分输出信号如何计算了,所以看到上面的图片可以推出输出信号的幅度为什么会是那个样子。

  1. 差分信号的两条传输线会随着地端同时变化,因此其差值是固定的,因此证明出差分信号的抗干扰能力比较强,同时噪声也会被同时加载到两条传输线上,其差值也为零。
  2. 两条传输线也会抑制电磁干扰( EMI ),原理为:两根线靠得很近且信号幅值相等,这两根线与地线之间的耦合电磁场的幅值也相等,同时他们的信号极性相反,其电磁场将相互抵消。因此对外界的电磁干扰也小。(右手定则)
  3. 差分信号时序定位准确,差分信号的接受端是两根线上的信号幅值之差发生正负跳变的点,作为判断逻辑0/1跳变的点的。而普通单端信号以阈值电压作为信号逻辑0/1的跳变点,受阈值电压与信号幅值电压之比的影响较大,不适合低幅度的信号。

差分信号也有缺点,其缺点也是其优点造成的:在PCB设计时,单端信号可以只有一根信号线,地线走地平面。然而差分信号一定要走两根等长、等宽、紧密靠近、且在同一层面的线,这样会发生走线密集的情况。

常见的差分信号通信协议有 CAN Bus、RS485和RS422、USB、Ethernet(以太网)、PCI-E、SATA、HDM、LVDS 等

其他

欸,没找到,有没有大佬知道还有其他的,可以在评论区告诉我。。。

参考

RZ、NRZ、NRZ1、曼彻斯特编码_rz波形_bobuddy的博客-CSDN博客

曼彻斯特编码与差分曼彻斯特编码 - zhan_p - 博客园 (cnblogs.com)

单端信号、差分信号、差模信号和共模信号 - 知乎 (zhihu.com)

常用逻辑电平标准总结_夏沫の浅雨的博客-CSDN博客 (多跳转链接,学习量大)

快速理解通信中的编码与调制 - 知乎 (zhihu.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/691720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java用法】windows10系统下修改jar中的文件并重新打包成jar文件然后运行

windows10系统下修改jar中的文件并重新打包成jar文件然后运行 一、背景描述二、操作步骤2.1 解压jar包2.2 修改配置文件2.3 重新打成jar包2.4 确认是否修改成功2.5 运行程序 一、背景描述 测试环境(Linux)的代码(jar包)拉取到本地…

AI数字人:语音驱动面部模型及超分辨率重建Wav2Lip-HD

1 Wav2Lip-HD项目介绍 数字人打造中语音驱动人脸和超分辨率重建两种必备的模型,它们被用于实现数字人的语音和图像方面的功能。通过Wav2Lip-HD项目可以快速使用这两种模型,完成高清数字人形象的打造。 项目代码地址:github地址 1.1…

可再生能源与能源存储技术的结合和互补

在全球对可再生能源的需求日益增长的背景下,如何将可再生能源与能源存储技术相结合,实现能源的高效利用和持续供应成为了一个重要的议题。本文将探讨可再生能源与能源存储技术的结合与互补关系,分析其对能源领域的影响以及未来发展的前景。 …

CSS常用样式

文章目录 字体样式文本样式颜色和背景样式对齐方式下划线、上划线、删除线设置行高 列表样式背景样式背景颜色背景图片背景重复背景大小 鼠标样式伪类样式设置透明度 字体样式 所有样式都写在<style>标签内&#xff0c;里面加选择器 <!DOCTYPE html> <html>…

别小看可拖拽式表单设计器,降本增效就靠它啦!

在经济快速发展的当下&#xff0c;办公已然进入流程化发展阶段。不少企业希望实现降本增效的办公效果&#xff0c;大家不妨可以了解下可拖拽式表单设计器。通过简单的拖拉拽就能实现应用组建&#xff0c;创建属于自己的快速开发框架平台&#xff0c;不仅省下培养专业程序人工的…

安科瑞电化学储能电能管理系统解决方案

1.概述 在我国新型电力系统中&#xff0c;新能源装机容量逐年提高&#xff0c;但是新能源比如光伏发电、风力发电是不稳定的能源&#xff0c;所以要维持电网稳定&#xff0c;促进新能源发电的消纳&#xff0c;储能将成为至关重要的一环&#xff0c;是分布式光伏、风电等新能源…

抖音本地生活团购软件开发

抖音本地生活团购软件开发需要考虑以下几个方面&#xff1a; 功能设计&#xff1a;根据本地生活团购服务特点&#xff0c;设计相应的功能模块&#xff0c;如商家入驻、商品展示、订单管理、支付等。 技术选型&#xff1a;选择适合该项目的技术和框架&#xff0c;如移动…

【MySQL经典练习题】1. 多列数据求最大值

用 SQL 从多行数据里选出最大值或最小值很容易——通过 GROUP BY 子句对合适的列进行聚合操作&#xff0c;并使用 MAX 或 MIN 聚合函数就可以求出。 那么&#xff0c;从多列数据里选出最大值该怎么做呢&#xff1f; 目录 1、建表SQL 2、查询SQL &#xff08;1&…

LabVIEW开发汽车装配挡风玻璃清洗机灌装机

LabVIEW开发汽车装配挡风玻璃清洗机灌装机 挡风玻璃清洗机灌装机用于填充车内的肥皂槽。该项目在汽车行业实施。可编程逻辑控制器用于许多类型的行业&#xff0c;它使系统灵活。以前使用继电器逻辑&#xff0c;但由于其局限性&#xff0c;用PLC代替了。PLC用于模拟和数字逻辑信…

Thymeleaf介绍及其在Spring Boot中的使用

&#x1f4d6; Thymeleaf简介 &#x1f4da; Thymeleaf的定义 Thymeleaf 是一款现代化的服务器端 Java 模板引擎&#xff0c;适用于 Web 和独立应用场景。它具备处理 HTML、XML、JavaScript、CSS 以及纯文本的能力。Thymeleaf 的核心目标是为开发者提供一种优雅且自然的模板设…

vue 图片上传到腾讯云对象存储组件封装(完善版)

vue 上传图片到腾讯云对象存储 1、 引入cos-js-sdk-v52、封装uploadcos.js3、封装图片上传组件、调用上传方法4、页面使用组件 之前总结过 vue 封装图片上传组件到腾讯云对象存储&#xff0c;后来又加了一些功能&#xff0c;在图片过大时进行压缩&#xff0c;压缩完成之后&…

基于NXP i.MX 6ULL——MQTT通信协议的开发案例

前 言 本指导文档适用开发环境&#xff1a; Windows开发环境&#xff1a;Windows 7 64bit、Windows 10 64bit Linux开发环境&#xff1a;Ubuntu 18.04.4 64bit 拟机&#xff1a;VMware15.1.0 U-Boot&#xff1a;U-Boot-2020.04 Kernel&#xff1a;Linux-5.4.70 Linux S…

深入理解ThreadPoolExecutor线程池工作原理源码解析

文章目录 0. 前言1. 生命周期管理1.1 创建1.2 执行1.2.1 任务执行入口1.2.2 addWorker解析1.2.3 Worker类解析 1.3 关闭1.4 终止阶段 2. 总结 0. 前言 背景&#xff1a;最近技术交流群里有个新同学&#xff0c;面试的时候被问到线程池相关的问题&#xff0c;答的不是很好&#…

LinkedIn领英如何创建公司主页?附领英产品专区创建方法

领英常见问题-如何创建公司主页&#xff1f; 领英不仅可以创建个人主页&#xff0c;还可以以企业的身份创建公司主页。 公司主页就相当于自己的官网&#xff0c;可以发布动态&#xff0c;展示公司信息&#xff0c;做官网外链&#xff0c;对公司来讲也是一种品牌形象宣传&…

PDF转换软件有哪些?分享免费好用的PDF转换工具!

PDF是在办公和学习中常用的文件格式&#xff0c;它包含文字、图片、数据等各种信息&#xff0c;可以说是功能丰富。然而&#xff0c;有时我们需要将PDF转换为PPT格式以便于演示&#xff0c;或者将其转换为Word格式以节省内存空间。这时候就需要使用PDF转换软件。下面我将介绍一…

20230618_ISP-pipeline-hdrplus_contrast

原理&#xff1a; global映射曲线&#xff0c;通过这个曲线控制黑的更黑&#xff0c;白的更白 b&#xff1a;黑电平 s&#xff1a;强度&#xff0c;值越大越接近yx&#xff1b;越小对比度越强 代码&#xff1a; 简单的映射表&#xff0c;没什么好讲的 效果&#xff1a; before&…

【Spring】设计思想

一、Spring 是什么&#xff1f; Spring是一个开源的Java框架&#xff0c;有着活跃而庞大的社区&#xff08;例如&#xff1a;Apache&#xff09;&#xff0c;Spring 提供了一系列的工具和库&#xff0c;可以帮助开发者构建高效、可靠、易于维护的企业级应用程序。Spring的核心…

jupyter插件nbextensions及Anaconda安装nbextensions

安装nbextensions 以管理员身份运行Anaconda Prompt&#xff0c;依次敲以下命令 用清华源安装 pip install jupyter_contrib_nbextensions -i https://pypi.tuna.tsinghua.edu.cn/simple pip install jupyter_nbextensions_configurator -i https://pypi.tuna.tsinghua.edu.cn…

如何连接 ONLYOFFICE 文档与Confluence Cloud

在本文中&#xff0c;我们来解释如何将ONLYOFFICE文档编辑器连接至Confluence Cloud。 Confluence Cloud 是什么&#xff1f; Confluence Cloud 是一款 Web 端生产力工具&#xff0c;可帮助用户在共享工作区中创建文档与其他内容&#xff0c;同时还可对其进行共享并开展协作。…

vue多次跳转同一页面不触发created刷新数据

摘要&#xff1a; 今天遇到一个问题&#xff0c;就是vue中跳转同一个详情页面的时候&#xff0c;路由没有变化&#xff0c;但是后面的参数有变&#xff0c;需要重新触发created钩子函数来触发方法来刷新数据&#xff01; 分析&#xff1a; 其实是因为没有触发vue的created或者m…