当前位置: 首页 > news >正文

通信原理实验——PCM编译码

PCM编译码

  • 实验目的

  1. 理解PCM编译码原理及PCM编译码性能
  2. 熟悉PCM编译码专用集成芯片的功能和使用方法及各种时钟关系
  3. 熟悉语音数字化技术的主要指标及测量方法
  • 主要仪器设备及软件

硬件:多功能实验箱、示波器、导线

软件:无

  • 实验原理

1. 抽样信号的量化原理

抽样信号的量化是将连续的模拟信号转换为离散的数字信号的过程。其原理如下:

  1. 将连续的模拟信号进行采样,得到一系列的采样值。
  2. 将采样值映射为离散的数字量。具体地,将采样值划分为若干个离散的量化级别,每个量化级别对应一个数字量。例如,将采样值划分为256个量化级别,每个量化级别对应一个8位二进制数字量。
  3. 将每个采样值映射为其所在的量化级别对应的数字量。具体地,将采样值与量化级别进行比较,确定其所在的量化级别,并将该量化级别对应的数字量作为该采样值的量化结果。
  4. 将量化结果编码为数字信号。具体地,将每个量化结果转换为对应的二进制数字,并将这些二进制数字组合为数字信号输出。

2PSK调制具有简单、易实现的优点,但由于只有两个相位角度,传输速率较低,且对于噪声和干扰的抵抗能力较弱。因此,在实际应用中,通常采用更高阶的PSK调制方式来提高传输速率和抗干扰性能。

抽样信号的量化可以分为两种方式:均匀量化和非均匀量化。

1、均匀量化

均匀量化是将量化区间等分为若干个等宽的子区间,每个子区间代表一个量化级别。在均匀量化中,量化器的精度由量化区间的数量来决定。均匀量化的优点是实现简单、易于理解和计算,但是在量化低幅度信号时,存在量化误差较大的问题。

2、非均匀量化

非均匀量化是将量化区间划分为不等宽的子区间,每个子区间代表一个量化级别。在非均匀量化中,量化器的精度由量化区间的宽度来决定。非均匀量化的优点是可以在低幅度信号处提供更高的精度,从而减小量化误差。非均匀量化的常见方法包括:

自适应量化:根据信号的幅度动态调整量化区间的宽度,以提高量化精度。

微分量化:在量化之前,先对信号进行微分,再进行均匀量化,从而在低幅度信号处提供更高的精度。

对数量化:将信号转换为对数形式,再进行均匀量化,从而在低幅度信号处提供更高的精度。

总的来说,非均匀量化相对于均匀量化来说可以提供更高的量化精度,但是实现复杂度较高,需要更多的硬件资源。在实际应用中需要根据具体情况选择合适的量化方式。

2. 脉冲编码调制的基本原理

脉冲编码调制(PCM)是一种将模拟信号转换为数字信号的技术,其基本原理如下:

  1. 采样:对模拟信号进行采样,将连续的模拟信号转换为一系列的离散样本。
  2. 量化:将采样值映射为离散的数字量。具体地,将采样值划分为若干个离散的量化级别,每个量化级别对应一个数字量。例如,将采样值划分为256个量化级别,每个量化级别对应一个8位二进制数字量。
  3. 编码:将每个采样值映射为其所在的量化级别对应的数字量。具体地,将采样值与量化级别进行比较,确定其所在的量化级别,并将该量化级别对应的数字量作为该采样值的量化结果。
  4. 调制:将数字量转换为脉冲信号。具体地,将每个数字量转换为对应的二进制数字,并将这些二进制数字组合为脉冲信号输出。常见的调制方式包括脉冲振幅调制(PAM)、脉冲宽度调制(PWM)和脉冲位置调制(PPM)等。

3. PCM编码硬件实现

PCM编码的硬件实现通常包括以下几个模块:

  1. 采样模块:采样模块通常由模拟信号输入、采样电路和采样保持电路组成。模拟信号通过输入端口进入采样电路,经过采样电路将模拟信号转换为模拟电压值,然后通过采样保持电路将采样值保持在一个电容器或者保持电路中,以便后续的量化和编码处理。
  2. 量化模块:量化模块通常由比较器、参考电压源和编码器组成。比较器将采样值与参考电压进行比较,确定其所在的量化级别,并将该量化级别对应的数字量输出。编码器将数字量转换为二进制数字,并输出到调制模块。
  3. 调制模块:调制模块通常由时钟、计数器、寄存器和输出缓冲器组成。时钟提供时序信号,计数器计算时钟的周期数,寄存器存储采样值的二进制数字,输出缓冲器将二进制数字转换为脉冲信号输出。
  4. 控制模块:控制模块通常由微处理器、控制逻辑和时序控制电路组成。微处理器负责控制整个PCM编码系统的工作流程,控制逻辑负责控制各个模块的工作状态,时序控制电路负责控制时序信号的生成和分配。

这里我们使用TP3057实现PCM编译码。TP3057是一种集成了PCM编码与解码功能的芯片,被广泛应用于计算机音频、数码音频、语音存储、数字通信和音频播放等领域。它内部集成了采样、量化、编码和调制等各种模块,能够实现高质量的数字信号处理。

下面是TP3057实现PCM编码的主要步骤

  1. 采样电路:TP3057内部集成了采样电路,用于对输入的模拟信号进行采样。采样电路的工作频率可通过外部晶振进行设置,通常为8kHz。采样值将被传输到量化模块进行处理。
  2. 量化模块:TP3057内部的量化模块使用了24位的宽动态范围ΔΣ模数转换器。该模块首先将采样值限制到一个固定的量化范围内,然后使用ΔΣ调制算法将其编码成数字信号。ΔΣ调制算法使用高速脉冲序列来表示数字信号,通过计算这些脉冲的密度来提高编码的精度。
  3. 调制器:TP3057内部的调制器使用了PLL锁相环技术生成高精度的时钟信号,并将数字信号转换为高速序列脉冲,输出到输出缓冲器中。
  4. 输出缓冲器:TP3057内部的输出缓冲器负责将二进制码流转换成可输出的数字信号,并提供电平调制信号。将该信号输入到数字信号解调器中将其转换回模拟信号。

此外,TP3057还支持数字信号的解码,可以将数字信号转换成模拟信号。通过相应的接口,TP3057可以方便地与其他数字电路、计算机或音频系统连接起来,实现高质量、可靠的数字信号处理。

  • 实验电路图

节点说明

1.DDS1:模拟信号输出

2.P04:扬声器输入

3.3P1:原始信号的输入铆孔

4.3P3:带限输出铆孔

5.3P4:编码输出

6.3P5:PCM译码输入

7.3P6:模拟信号恢复输出

8.3P7:抽样脉冲

9.3P8:线路时钟

  • 实验步骤和实验结果

1.设置有关实验模块

打开多功能实验箱,了解基础操作,设置实验模块。实验内容选择:实验项目->原理实验->信源编译码实验->PCM编译码原理。

2.导线连接

使用信号连接线按照实验电路图进行连接。

3. 接入示波器

打开示波器开关,将导线接入实验箱的对应要测量的节点。

4. PCM译码观测

用导线连接3P4和 3P5,此时将PCM输出编码数据直接送入本地译码器,构成自环。用示波器同时观测输入模拟信号3TP1和译码器输出信号3TP6,观测信号时以3TP1做同步。定性的观测解码信号与输入信号(1000HZ、2Vpp)的关系:质量、电平、延时。4.PCM频率响应测量

将测试信号电平固定在2Vp-p,调整测试信号频率,定性的观测译码恢复出的模拟信号电平。观测输出信号信电平相对变化随输入信号频率变化的相对关系。用点频法测量。测量频率范围:200Hz~~4000Hz。

5. PCM译码失真测量

将测试信号频率固定在1000Hz,改变测试信号电平(输入信号的最大幅度为5Vp-p),用示波器定性的观测译码恢复出的模拟信号质量(通过示波器对比编码前和译码后信号波形平滑度)。

使用双踪示波器分别观察2P1和2P3,点击“基带设置”按钮,设置基带速率为“15-PN”“64K”,点击“设置”进行修改。观察示波器观测波形的变化,理解并掌握基带数据设置的基本方法。

6. PCM编译码系统增益测量

DDS1产生一个频率为100OHz、电平为2Vp-p的正弦波测试信号送入信号测试端口3P1。用示波器(或电平表)测输出信号端口(3TP6)的电平。将收发电平的倍数(增益)换算为dB表示。

7.关机拆线

实验结束,关闭电源,拆除导线,还原实验箱。

  • 实验成果

1.定性描述PCM编译码的特性、编码规则,并填下表

频率:1kHZ

幅度:2Vpp

样点1

样点2

样点3

样点4

样点5

样点6

样点7

样点8

量化值

466

-269

-860

-951

-492

269

860

951

编码值

11011

110

01010

001

01101

011

01101

110

01011

111

11010

001

11101

011

11101

110

2.描述PCM编码串行同步接口的时序关系

PCM编码串行同步接口的时序关系如下:

1. 主机向PCM编码器发送同步信号,使其处于同步状态。

2. 主机发送时钟信号,使PCM编码器按照指定的采样率进行采样。

3. PCM编码器将采样到的模拟信号转换为数字信号,并将其编码为PCM码。

4. PCM编码器将编码后的PCM码按照位序列的顺序,依次输出到串行数据线上。

5. 主机在时钟信号的边沿上读取串行数据线上的数据,并进行解码和处理。

6. 主机发送同步信号,使PCM编码器进入下一个采样周期,重复以上步骤。

3.填下下表,并画出 PCM的频响特性

输入频率(Hz)

200

500

800

1000

2000

3000

3400

3600

输出幅度(V)

3

5

6

10

12

13

16

19

4.填下下表,并画出PCM的动态范围:输入幅度(V)

输入幅度(V)

1

1.5

2

2.5

3

3.5

4

5

输出幅度

2

2.4

3

3.5

4

5.1

6

9

  • 实验小结

通过本次实验理解PCM编译码原理及PCM编译码性能;熟悉PCM编译码专用集成芯片的功能和使用方法及各种时钟间的关系;熟悉语音数字化技术的主要指标及测量方法;PCM编码原理验证,理解带限滤波器作用、A律编码规则;PCM编译码性能测量,观测编译码电路频响、时延、失真、增益等。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 什么是V2X?
  • Vue+live2d实现虚拟人物互动(一次体验叙述)
  • RocketMQ 的消息存储机制
  • 3.4数组和特殊矩阵
  • Java开发:文件上传和下载
  • 按摩虎口穴位的作用
  • Laravel php框架与Yii php 框架的优缺点
  • 上线前端系统
  • 7.C基础_数组
  • DAP-Seq:解锁转录因子结合位点的新钥匙
  • 眼在手外-机器人坐标系与相机坐标系标定方法
  • CTF-web基础 web服务器
  • 实战项目导航
  • 基于Django框架的挂号诊疗系统(源码+论文+部署讲解等)
  • 基于JAVA的物资管理系统设计与实现
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • canvas 高仿 Apple Watch 表盘
  • CSS 提示工具(Tooltip)
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • javascript面向对象之创建对象
  • Koa2 之文件上传下载
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • text-decoration与color属性
  • TypeScript实现数据结构(一)栈,队列,链表
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 大整数乘法-表格法
  • 翻译:Hystrix - How To Use
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 解析 Webpack中import、require、按需加载的执行过程
  • 爬虫模拟登陆 SegmentFault
  • 前端性能优化--懒加载和预加载
  • 使用docker-compose进行多节点部署
  • 新手搭建网站的主要流程
  • 7行Python代码的人脸识别
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • 阿里云API、SDK和CLI应用实践方案
  • 容器镜像
  • ​决定德拉瓦州地区版图的关键历史事件
  • (1)(1.13) SiK无线电高级配置(五)
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (分布式缓存)Redis哨兵
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (每日一问)操作系统:常见的 Linux 指令详解
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • *上位机的定义
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .NET Framework杂记
  • .NET MVC之AOP
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .net解析传过来的xml_DOM4J解析XML文件
  • .net中应用SQL缓存(实例使用)
  • /proc/interrupts 和 /proc/stat 查看中断的情况
  • [ 2222 ]http://e.eqxiu.com/s/wJMf15Ku