编解码芯片范文
编解码芯片范文(精选8篇)
编解码芯片 第1篇
ISO/IEC 14443 与ISO/IEC 15693 标准都是针对13.56 MHz无源式RFID标签的设计标准,前者是近耦合标签,最大识别距离只有20 cm;后者是疏耦合标签,最大识别距离可达1.5 m[2]。ISO/IEC 14443 标准的RFID标签芯片应用局限于会员管理、人员考勤、购物卡、一卡通等标签卡。而ISO/IEC 15693 标准的RFID标签芯片应用广泛,可以用于开放式门禁、开放式会议签到、贵重物品管理、数字化图书馆的图书管理、医药管理、资产管理、产品防伪、物流及供应链等诸多领域。 此外,ISO/IEC 15693 协议与ISO/IEC 18000-3 协议兼容,适用范围广,市场前景广阔。
本文对ISO/IEC 15693 标准的RFID标签的编解码过程进行分析,给出了编解码系统设计的方法,并进行了仿真结果分析、FPGA下载验证。
1 VICC通信过程及传输数据格式
ISO/IEC 15693 标准的阅读器(VCD ) 与标签(VICC )之间的通信通过ASK调制方式进行, 分别使用了10%和100% 两种调制指数[3]。 VCD通过脉冲位置编码(PPM ) 的方式将数据发送到VICC, 而VICC又通过曼彻斯特编码的方式将数据发送到VCD。 在VCD与VICC的通信过程中,VICC是被动的。 VICC正确对VCD的请求进行解码,才能够做出正确的处理。 另外,返回的响应格式也由请求标志决定,所以解码过程是非常重要的。 响应编码也同样重要,它关系到VCD对VICC的状态的判断,这关系到之后的通信能否正确进行。 VICC的工作过程如图1 所示。
VICC收到的请求数据格式以及返回的响应数据格式如表1、表2 所示,每种方式可以任意组合。 表1 中的数据是对解码的要求, 按任意组合可以有4 种情况,其中10%调制与256 取1 的编码结合,适合要求识别距离相对远的情况; 表2 中的数据对应的是编码的要求,按任意组合也有4 种情况。
由于VICC是被动的, 返回的数据速率和格式由请求数据的第一个字节中的低2 位决定,最低位决定是单幅载波还是双副载波格式,次低位决定是高速率传输还是低速率传输[4],如表3 所示。
2 编解码系统的设计方案
对编解码系统进行设计时,由于VICC是被动的,采取VICC进入场之后,复位VICC解码使能置1,当解码处理完成之后,等待VICC的操作处理,当返回响应时,解码使能置0,编码使能置1。 返回结束后,编码使能置0 , 解码使能置1 , 等待下一次的VCD请求。 这样解码和编码不会冲突,而且降低了功耗。
2 . 1 解码设计的方案
对前端模拟信号传过来的波形按ISO15693 协议规定进行解码。 模拟前端传送过来的数据是4 取1 或256取1 的脉冲调制编码,对其进行解码时要抓住PPM的特点,确保这两种编码都支持。解码的流程图如图2 所示,两种编码的识别和数据的解码都是通过判断两个相邻凹槽的距离来判断。 最先识别开始帧(SOF),把256 取1模式的初始化数据定为 “255d”, 因为如果将它的SOF的后一个槽算作之前的一个数据,则它所在凹槽的位置就是“255d”;同样可以得到4 取1 模式的初始化数据为“ 10b ” 。 数值通过相邻凹槽的时间差来判断。 由于数据信号的凹槽宽度为9.44 μs, 解码的计时取9.44 μs为1,可以准确识别每个数据,并且采用此方法可以识别的最小信号宽度达到700 ns, 比协议中要求的2.1 μs~9.44 μs[3]识别的宽度范围要广。 处理更加灵活,同时减小了射频前端模拟解调的压力。 此外,ASK调制系数有10 % 和100 % 两种, 信号与时钟进行 “ 与” 运算, 并将两种情况统一, 则可使处理更加简单, 资源利用率更高。协议中提到的所有数据格式都能满足,最终确保解码完全准确。
2 . 2 编码设计的方案
在VICC收到正确的请求处理完成之后, 要响应VCD , 响应的数据要通过特殊的编码处理。 为保证控制命令高速长距离传输的稳定性, 对其进行平衡编码,采用曼彻斯特编码将消除直流分量,从而使控制系统具有良好的抗干扰性能[5]。 低速模式持续的时间和脉冲个数是高速模式的4 倍, 而且不同模式的载波对应的编码方式不同。 时钟由不同的速率模式控制,高速与低速对应的编码是一致的,不同的只是编码时间,因此低速的时钟分频系数是高速的4 倍。 根据曼切斯特编码的特点,“0”就是1 到0 的跳变,“1”就是0 到1 的跳变,1 是32 分频的时钟, 而0 在单副载波情况下是无调制的, 双副载波调制下是28 分频的时钟, 因此只要加一个选择器,对应的模式就选择对应的副载波,两种副载波调制也就完成了。 整个的编码状态转换如图3 所示。 进入场复位之后编码模块处于空闲状态,当编码使能信号置1时开始传输响应,先发送开始帧,之后传输数据,数据传输结束后发送结束帧, 最后编码使能置0 回到空闲状态。 这样确保了响应的安全可靠。
3 仿真验证
采用Verilog HDL语言编写程序并进行了测试,用ModelSim进行了功能仿真验证; 同时选用CycloneIVE系列开发板进行FPGA验证。 此处选用4 取1 的PPM编码方式,从输入的第一个字节为“02h”可以看出,响应编码是高速率传输,单幅载波模式。由两波形图可以看出,编码与解码的功能得到实现,数据完整可靠。
图4 中“i_dec_clk”是解码模块的时钟信号;“i_dec_nrst ” 是解码模块的复位信号; “i_dec_data ” 是射频输入信号;“o_trans256_sof”是接收数据为256 取1(PPM方式)的标志;“o_trans4_sof” 是接收数据为4 取1 的标志,此处是4 取1 的PPM编码,有置 “1”;“o_dec_byte”是接收完一个整字节的标志, 每个字节输出时都有置 “1”;“o_dec_byte_num ” 是接收数据的字节数, 共9 B ; “ o_dec_e-of ” 是接收数据的结束帧标志; “o_dec_command ” 是接收的数据解码之后按十六进制显示的结果。
图5 中“i_en”是编码模块的使能信号;“i_mod”是编码模式,即低位是副载波形式,高位是传输的数据速率;“i_tx_end”是响应数据,包括16 bit的CRC传输完成标志;“ i_data ” 是要编码的数据, 按位显示; “ o_rd ” 是编码完成的数据;“o_end”是编码完成的标志,包括EOF;“o_tx_en”是传输编码数据的使能信号,不包括SOF与EOF。
网络音视频编解码器讲解 第2篇
南京易之讯科技有限公司 二○○六年四月
TVSENSE 视频编解码器使用手册 目录
一、产品简介..........................................................................................3 技术特点..................................................................................................................................3
二、产品结构..........................................................................................4 2.1内部布置:......................................................................................................................4 2.2外形尺寸:..........................................................................................................................4
三、技术指标..........................................................................................5
四、接口说明..........................................................................................6 4.1前面板...............................................................................................................................6 4.2后面板...............................................................................................................................6 4.3接口指示说明:.............................................................................................................6
五、接线说明..........................................................................................7 5.1网络接线...........................................................................................................................7 5.2音频接线...........................................................................................................................7 5.3视频接线...........................................................................................................................7 5.4控制接线...........................................................................................................................8
六、串口定义..........................................................................................9 6.1 串口定义:.........................................................................................................................9 6.2 内部跳线:.......................................................................................................................10
七、调试软件.........................................................................................11 7.1硬件准备:....................................................................................................................11 7.2硬件连接:....................................................................................................................11 7.3软件准备:....................................................................................................................11 7.4设备IP 配置DevNetSet.............................................................................................12 7.5设备管理DevManager................................................................................................13 7.5.1设备配对.....................................................................................................................13 7.5.2串口配置.....................................................................................................................15 7.6网络浏览
DevVideoBrowser.....................................................................................16
八.典型应用........................................................................................17
九、产品装箱清单................................................................................18 序 言 ● 简介
本音视频编解码器是为适应基于TCP/IP协议和10M/100M以太网传输通道而设计的,采用MPEG2压缩方式,具有强大的即时图像捕捉和图像压缩功能。它利用以太网通道实现实时视频音频传输,并同时提供RS232/485串行数据通信端口,满足远程视频监控、视频会议等系统需要。
注意事项
本说明书提供给用户安装调试、参数设置及操作使用的有关注意事项,务请妥善保管,并为了您的正确、高效地使用本产品,请仔细阅读本说明书。
一、产品简介 技术特点
● 基于MPC860T+OSE(RTOS)的嵌入式设计;
● 采用最新MPEG-2优化技术,最小带宽支持1024Kbps ; ● 以太网传输端到端延时小于180ms ;
● 提供10M/100M以太网接口,带宽适应范围宽,支持多点对多点同时访问; ● 具备同时发送单播包及组播包功能,可支持临时用户加入访问,同时在某些不支持组播功
能的特殊网段中通过单播方式访问;
● 双向语音对讲,支持回音抵消功能,独特的以太网方式下双向语音对话设计,适合监控中
心与前端对讲;
● 提供两路RS-485/232双向透明串口,可用于远端设备控制及监控数据采集; ● 可选集中式机箱,提高集成度;
● 与多家同类设备实现互联互通,适应大规模联网监控; ● 在各种高温、高尘等恶劣环境下,产品能够正常工作; ● 提供相关系统软件,实现网络浏览、虚拟矩阵等功能;
● 提供应用程序开发接口(包括WINAPI 和ActiveX),方便进行二次开发; ● 产品设计生产符合ISO9001标准。
TVSENSE 视频编解码器使用手册
二、产品结构 2.1内部布置:
2.2外形尺寸:
(外观仅供参考)
三、技术指标
TVSENSE 视频编解码器使用手册
四、接口说明 4.1前面板
4.2后面板
4.3接口指示说明:
(后面板正面放置,顺序依次自左向右)1.RS232/485 透明串口 2.LAN 以太网口
3.Vin、Vout 视频输入、输出(BNC 座)
4.Lin、Lout 音频左声道输入、输出(RCA 座)5.Rin、Rout 音频右声道输入、输出(RCA 座)6.AC220V 电源插座 电源开关
状态指示 电源开关 状态指示
立体声输入 视频输入 型号标签 电源插座
立体声输出 视频输出 型号标签 电源插座
五、接线说明 5.1网络接线
备注:
● 传输介质为5类或更高类双绞线; ● 与编解码器的接口为RJ45接口; ● 若编、解码器背对背连接或PC 与之连接,注意需采用交叉双绞线。5.2音频接线
备注:可单向立体声音频传输 或 双向对讲传输。5.3视频接线
备注:双向视频设备可选。TVSENSE 视频编解码器使用手册 5.4控制接线
编解码器可提供两路RS232/485接口,两台设备串口号相互对应,详见
六、串口定义。示例1:
以一台主控键盘控制若干PTZ 摄像机为例:
◆ 控制键盘的485接口与解码器的485接口连接,在编码器端接入云台解码器即可。示例2:
以两台计算机利用串口远程透明传输数据为例:
◆ 利用串口工具程序,分别打开两台PC 的对应串口,便可以透明传输数据。计算机RS232 DB9 计算机RS232 DB9
六、串口定义
音视频编、解码器提供两路RS232/485(com1、com2 串口,从后面板正视DB9公头(编码器和解码器的串口定义相同)。在作透明串口通道传输数据时串口1与串口1对应,串口2与串口2对应,使用如下:
6.1 串口定义:
● RS232工作方式(非标准引脚):
串口1: 1(发)、2(收)、5(地)串口2: 3(发)、4(收)、5(地)● RS485工作方式:
串口1: 6(B、7(A 串口2: 8(B)、9(A)编码器和解码器的串口定义相同
注意事项:
◆ 传输波特率≤19200bps,串口的相关设置详见二 串口配置;
◆ 当编码器和解码器两端串口工作方式不一致时,只能以单工方式传输数据: 例如:编码器串口1设置成RS485,解码器串口1设置成RS232,此时两端只能以单工方式传输数据。反之亦然。
RS485-1 RS485-2 编、解码器串口定义
TVSENSE 视频编解码器使用手册 6.2 内部跳线:
◆ RS232与RS485工作方式通过内部电路板上的跳线选择, 见下图:
◆ 视频编码器、解码器出厂缺省设置为RS485接口。RS2322 RS4852 RS2321 RS4851
七、调试软件 7.1硬件准备:
1. 一台PIII 配置以上的电脑,win98/win2k/winxp操作系统; 2. 一台网络交换机或HUB(集线器); 3. 一台或数台视频编、解码器; 4. 一台或数台摄像机、监视器; 5. 相应线缆(电源线、网线、视频线)。
7.2硬件连接:
1. 将电脑、编解码器分别通过网线接入交换机;
2. 若无交换机可用一根交叉网线将电脑与编解码器直接连接;
3. 摄像机视频信号接入编码器Vin,解码器视频输出信号V out 接入监视器; 4. 各设备上电。
7.3软件准备:
1. 将随机光盘软件“编解码器管理”压缩包安装至硬盘任意盘符下; 2. 缺省为路径:C:Program Files编解码器管理;
3. 安装完毕后,安装路径C:Program Files编解码器管理下DevVideoBrowser文件夹内应包含以下
应用程序: 1 设备IP 地址配置软件 DevNetSet.exe 2 设备管理软件 DevManager.exe 3 PC 网络浏览软件
DevVideoBrowser.exe 4 浏览软件应用设置工具 DevVideoSet.exe 5 设备加载升级工具
DevUpdate.exe 6 设备调试信息接收工具 DevDebugInfo.exe 7 设备串口调试工具 DevComDebug.exe 其中1)、2)项是本设备调试中必须所用,3-7项作为辅助调试用,本说明书中不作详述。
TVSENSE 视频编解码器使用手册 7.4设备IP 配置DevNetSet
运行DevNetSet.exe,如下图界面:
本编、解码器开机后会通过网口不间端地发送广播包,DevNetSet 程序自动解析出编、解码器的信息。
修改设备IP 地址须在列表中选你要修改的视频编、解码器:
1.物理地址:唯一且必需的硬件识别码,出厂时已设置好,不可修改; 2.设备ID :硬件识别码,出厂时已设置好,不可修改; 3.版本:设备Flash 板载程序,可升级;
4.IP 地址:若网络管理员无指定IP 地址,用户只需将编、解码器设置成同一网段内的任
意地址即可;如通常与当前PC 同网段,192.168.0.11。
5.子网掩码:设置为自身网段相同的子网掩码。如:255.255.255.0。6.网关:若网络管理员无指定网关,用户可设为自身IP 地址,不能为空....,如:192.168.0.11。以上配置按要求修改好以后,先点击“配置IP 地址”,再点击“复位”使之生效,然后点击“退出”即退出网络配置程序。
调试过程中可能会碰到的问题:配置IP 地址不成功
◆ 重新启动该程序DevNetSet.exe; ◆ 关闭防火墙或“解除阻止”; ◆ 能否正常Ping 通,检查网线;
◆ 注意操作时间勿过长,否则程序会自动刷新界面,导致配置不成功。7.5设备管理DevManager 该程序是将编、解码器进行配对,运行DevManager.exe,如下图界面:
本产品仅需对解码器进行相关设置即可,便于网络中心集中管理!7.5.1设备配对
1. 选中“设备列表”中的“视频解码器”,点击右上角“连接”按钮,出现如下界面:
2. 在“编码设备IP ”右边空档中填写本解码器对应编码器的IP 地址; 3. 用户级别:设置此解码器的用户级别,常用为数值“31”;
4. 传输方式:设置解码器以单播或多播方式接受编码器的视频流,通常选用“单播”;声音选
中表示编、解码器之间有双向音频传输,“声音”通常不选;
5. 图像格式:根据网络通道负载情况适当选择传输的码率大小,在1——8M 线性调节;通常
选用“3072kbps “;
6. 单击“应用”按钮,稍候单击“复位”按钮,待设备自动重新启动后即可!TVSENSE 视频编解码器使用手册 调试过程中可能遇到的现象:
1. 选中设备后单击“连接”按钮,提示:
◆ 确定本台PC 与视频编、解码器为同一网段; ◆ 检查网络。2. 配置不成功:
◆ 能否正常Ping 通,检查网线; ◆
重新连接再配置,注意操作时间勿过长,否则程序会自动刷新界面,导致配置不成功。
编码器连接:
本产品编码器出厂已经设置好,除IP 地址修改外,无需再对其配置。
7.5.2串口配置
本产品只需通过解码器即可完成所有串口配置!
编、解码器的串口作透明数据传输通道使用时,须注意两端的串口工作方式,主要包括:波特
选中“设备列表”中的“视频解码器”,“连接”成功后,点击右边“串口”按钮,如下图:
串口缺省配置如下:
串口配置属性修改:
注意:编、解码设备对应串口的波特率应当一致!(两设备的串口1相对应、串口2相对应)
TVSENSE 视频编解码器使用手册 7.6 网络浏览 DevVideoBrowser 网络浏览属于软件解码器,运行浏览软件 DevVideoBrowser.exe,界面如下: 输入“编号” :100001、“口令” :123,点击“确定”后进入视频浏览窗口,如下图: 确定” 确定 步骤一: 选中某编码器 步骤二: 点击连接 从“设备地址列表”栏选中接有摄像机的编码器,点击“ 接成功的视频图像图像。浏览程序退出: ”连接,即可看到连 输入“编号” :100001、“口令” :123,退出浏览程序。TEL: 025-52419198 81792088
南京易之讯科技有限公司 网络视频编解码器使用手册 八.典型应用 本产品适合于通信带宽大于 2M 的所有以太网络,支持跨路由(网段)使用。一. 高速公路 某分中心编码器 4×E1 或 LAN 省中心解码器 高速 公路 通信 系统 4×E1 或 LAN 某分中心编码器 省中心解码器 省中心 视频矩阵 利用高速公路通信系统 SDH 中的多个 E1 通道捆绑(如 4×E1)组成 LAN,在分中心将图像 接入编码器,省中心解码还原视频进入矩阵系统。二. 路口编码器 城市监控 中心解码器 监控中心 视频
矩阵 城 域 网 中心解码器 路口编码器 中心软件解码器(图像业务台)向城域网运营商租用通道,如电信、网通、联通、移动等,实现城市道路、安全防范等监控 指挥系统。TEL: 025-52419198 81792088
TVSENSE 视频编解码器使用手册
一款基于硬解码芯片的解码引擎设计 第3篇
虽然二维条码相对于一维条码有着信息容量大, 安全性高、误码率低的优势, 但是传统的二维码解码设备一般采用高速ARM核的SOC、专用CMOS芯片及其配套光学镜头的设计方案。其中ARM核SOC承担图像的获取和处理以及解码算法的实现。该方案要求SOC具备较强的计算能力, 因此存在引擎尺寸偏大功耗高成本高等问题, 给二维条码的应用普及带来一定困难。如何降低解码设备的成本和体积, 对二维码应用推广有着重要的意义。而本设计的解码引擎 (型号为NL-E9) 就很好的解决了以上问题。
一、NL-E9系统总体设计
NL-E9的设计目标为体积尽量小, 使解码引擎可以适应各种解码设备的需要;成本控制在与一维码解码引擎相当, 相对传统二维码解码引擎具有明显价格优势;同时性能在个别指标上超过传统二维码解码引擎。
解码引擎的功能模块包括环境补光、光学镜头、图像采集、图像解码、系统控制和数据传输、机械结构几部分组成。具体结构和各功能模块如图1所示。
首先需要设计合适的光学镜头, 使条码能够清晰地在CMOS感光元件上成像, 这是条码能够成功解码的重要前提。为了让解码引擎在环境光较弱的地方也能成功解码, 所以需要有补光LED设计。另外为了指示当前引擎识读的范围, 还需要有瞄准LED。其次需要选择分辨率合适、体积足够小、成像清晰、功耗足够低的CMOS芯片, 作为成像器件。再次在清晰成像以后, 需要有能够进行图像分析和处理的解码器件, 能够提取出图像中的条码部分, 还原成原始码词。最后需要有个微处理器能够对以上功能器件进行统一控制, 以及实现与上位机进行码词传输和命令响应。
二、NL-E9光学部分设计
光学部分设计的目的是要让被解条码能够在CMOS感光元件上清晰成像, 同时在景深范围内能够有足够的分辨率让图像解码模块能够成功解码, 还原条码中包含的信息。
(一) 光学镜头
光学镜头设计在解码引擎应用中需要注意以下几个技术参数[1]:
1、光学分辨率:影响成像的清晰度。依据选取的CMOS感光元件中像素点的大小, 设计需要的光学分辨率。
2、镜头光圈大小:光圈越大通光量越大, 成像亮度充足, 曝光时间越短, 成像越不容易模糊。光圈越小光学景深越长, 能够清晰成像的范围越大、用户体验越好。
3、视场角:光学视场角越大, 解码引擎的可扫描面积越大、用户体验越好, 无须准确对准就能成功解码。但视场角过大, 会照成条码在CMOS中成像的分辨率 (每个条或者模块所占的像素点个数) 不足, 对解码照成困难。
综合以上因素考虑, 最终光学镜头设计成3片玻璃球面镜的形式, 光学参数见表1。
(二) 补光灯及瞄准灯
补光灯的作用是使解码引擎在较昏暗的环境以及较远距离部分的成像亮度足够, 对环境亮度进行补偿的做法。由于选择的CMOS是彩色的, 所以选择白色LED作为补光灯源。又因为避免局部补光照成被摄条码局部过曝, 因此选择发射角较大的LED。
瞄准灯的作用是给用户指示当前解码引擎识读范围, 增强用户体验。由于要和补光灯效果有明显区别, 所以选用蓝色发射角度较小的LED灯。同时补光灯和瞄准灯都采用了双对称设计。指示效果见图2。
三、NL-E9硬件部分设计
NL-E9硬件设计框图如图3所示。
第一块PCB板包括CMOS感光元件, 分辨率为640*480, 最高传输速度为60帧/秒, 可输出8位的YUV和RGB格式的彩色图像。另一个主要元器件为本人参与制定和开发的二维码硬解码芯片IOTC-0370, 它是解码引擎能够实现低成本、小体积、低功耗、高性能的关键因素[2], 功能参数见表2。由于采用了单芯片硬件解码方案, 替代了传统高端CPU软件解码的方式, 成本方面至少有10美金的降幅, 芯片面积减少了70%以上, 功耗减少50%以上, 解码速度提高5-10倍。在本解码引擎的应用中解码芯片通过IIC接口对CMOS芯片进行初始化和解码过程中的调光控制。同时通过UART对解码芯片进行设置和把解码完成的码词进行对外传输。
第二块电路板为照明和瞄准LED灯板, 解码芯片有功能管脚可以对这两组LED进行实时控制, 可实现常亮、常灭、解码时亮等多种工作模式。
第三块电路板为MCU主控制板, 选用ST公司的CORTEX-M0 32位微处理器, 它的优点是体积小、成本低、性能合适、功耗低、可靠性高。它的作用是上电后对解码芯片进行初始化配置;系统工作模式控制 (低功耗模式) ;通过UART接口接收上位机下发的指令, 上传解码后的码词等;
三块电路板之间通过焊接方式进行信号互连, 省去连接器的使用, 可以有效减小解码引擎体积和降低成本。利用锌压铸合金基座进行定位, 避免焊接造成的结构位置偏差。同时金属基座有利于设备散热以及电气可靠性。
四、NL-E9软件部分设计
软件部分设计是基于微处理器进行[3], 软件功能模块框图见图4, 主要实现了以下几个功能:
1、当解码引擎上电复位或者从低功耗模式唤醒时, 对解码芯片的寄存器进行初始化, 让解码引擎进入预定的工作模式。
2、通过UART接口接收上位机下发给解码引擎的命令, 命令有一定的包格式以及应答机制, 根据接收到的命令进行相应设置, 包括引擎功能设置和条码应用相关设置, 同时设置的相关信息保存在微处理器的FLASH中, 当解码引擎重新上电或从低功耗模式唤醒时, 根据保存的设置对整个系统进行初始化操作;另外还可通过UART接口把解码成功后的码词上传。
3、当解码引擎接收到上位机发来的硬件 (按键管脚被拉低) 或软件解码指令时, 进行相应的控制, 让解码芯片进入解码状态, 同时等待接收解码芯片成功解码后上传的码词。对码词进行后处理和打包后转发给上位机, 完成一次解码操作。
4、当解码引擎进入低功耗模式时, 微处理器关断除自身以外的解码引擎上的所有电源, 同时微处理器进入低功耗模式, 这时解码引擎的功耗达到最低。并且可以通过外部引脚、以及串口指令实现休眠唤醒功能, 使解码引擎立即进入正常工作状态。
5、微处理器硬件引脚功能控制输出, 包括音长、音调、音量可调的蜂鸣器PWM控制输出;硬件引脚指示目前解码引擎的工作模式;硬件引脚电平跳变作为解码成功的指示, 可在解码引擎外部接LED灯进行人机交互。
6、硬件看门狗功能, 当解码引擎出现死机等异常状况时, 系统能够及时自行复位, 使对整体系统正常工作的影响降到最低。
软件使用无操作系统方案, 有效保证了系统操作的实时性和可靠性。操作流程如图5所示。
五、测试验证
综合以上设计, 特别是新大陆公司自主研发的二维码硬件解码芯片的应用, 对比国际上其他公司的解码引擎, NL-E9的个别性能指标超出的同时, 在体积、功耗、成本方面都有了大幅度降低。通过全面测试验证, 测试过程中使用了机械手臂, 排除由人工测试引入的误差。得出NL-E9对比某国外著名品牌解码引擎性能参数见表3。
摘要:本文提出了一种基于专用硬件解码芯片 (IOTC-0370) 的设计方案, 实现了该方案的光学设计, 硬件电路设计和软件设计。通过对工程样机的测试分析, 证实了该设计方案有效解决了传统解码引擎尺寸大功耗高成本高的问题。
关键词:物联网,解码芯片,二维码,解码引擎,自动识别
参考文献
[1]毛文炜.《光学镜头的优化设计》, 清华大学出版社, 2009.06
[2]新大陆IC设计中心.《IOTC-0370芯片规格书》, 新大陆IC设计中心, 2012.08.25
编解码芯片 第4篇
随着半导体工艺进入深亚微米,且芯片功能越来越复杂,芯片规模和集成密度越来越大,使得现代芯片设计中,芯片验证成本不断提高,甚至占到总设计成本的70%以上[1]。由于缺乏通用的高层次芯片验证流程,且专用测试设备价格高昂,测试技术滞后,更加导致芯片测试成为整个芯片设计的瓶颈[2]。
传统的人工测试和穷举测试方法[2]通过从芯片外部输入测试向量,比较测试响应和期望响应,来验证芯片功能。但是对于规模较大的设计,如MPEG-2解码芯片[3],这种方法难以有效覆盖测试空间。采用其他可测性设计方法,如自动测试图形生成技术和扫描技术[4,5],虽然能有较高的故障覆盖率,但额外增加的硬件资源太多,约为系统资源的10%~30%,而且即使能有效压缩测试向量,测试时间还是随测试覆盖率呈指数增长,导致测试时间太长,功耗消耗过大。在可测性设计中,针对不同芯片结构,一般采用多种可测性技术结合的办法来提高测试的效率,如文献[6]中采用了内建自测试(Built-in SelfTest,BIST)和全扫描测试结合的方法,文献[7]中采用了边界扫描(Joint Test Action Group,JTAG)、BIST和全扫描测试结合的方法。
笔者以一款应用于数字电视系统的MPEG-2解码芯片为研究对象,进行可测性设计研究。该设计按照测试类型对系统进行模块划分,结合BIST和JTAG[8,9]对各模块进行并行测试。
2 MPEG-2的可测性设计方案
在ASIC芯片的可测性设计中,针对不同的芯片结构或不同的模块特性,通常采取不同的可测性技术,例如:对于存储器模块,通常采用BIST[7,8]测试方法;对于时序逻辑电路,通常采用扫描链技术;对于芯片引脚,为提高其可控性和可观察性,通常采用JTAG技术。随着SoC集成度的提高,结构化设计思想使IP核复用趋于普遍,每个SoC系统由几十至成百上千个模块组成。为保证整个SoC系统的功能正确,多模块芯片测试是可测性技术发展的新趋势[10,11]。
2.1 MPEG-2解码器可测性设计方案
笔者采用基于模块划分方法的可测性设计,把MPEG-2解码器中的功能模块划分为三种类型,包括存储器型模块、信号相关型模块和信号不相关型模块。存储器模块类型包括Buffer,RAM,FIFO,占系统比重最大,这在媒体处理系统中是比较普遍的现象[6,12]。信号相关模块与信号不相关模块[12]的区别在于:在有限输入向量的前提下,信号不相关模块输入信号之间的相互关系不影响各模块的单独测试效率,而信号相关模块输入信号之间的相互关系则影响各模块的单独测试效率。测试效率定义为:在相同测试模块的前提下,达到覆盖率要求,测试时间越短,测试向量越少,则效率高。在系统中,根据模块的测试效率需求划分信号相关模块与信号不相关模块。实验表明,模块划分粒度越细,模块信号相关性越明显。
笔者设计的三种类型模块划分粒度如图1所示,存储器类型模块有FIFO和Buffer,IDCT为信号不相关模块,其他模块为信号相关模块。图2为解码器中这三类模块所占比例。可见,各类模块在系统中的比重是不相等的,其中存储模块所占的比重最大,超过55%。对于不同类型模块,需要根据其特性进行专门的BIST设计。
针对MPEG-2解码系统,笔者提出如图3所示的可测性设计方案,采用BIST和JTAG相结合的方法。三种模块之间的向量产生电路(Test Pattern Generator,TPG)和响应分析器(Output Response Analyzer,ORA)独立设计,各模块间并行测试,测试结果通过JTAG输出。该方案可使系统工作在3个不同模式下:正常工作模式下,测试模块对于核心解码系统是可忽略的,系统处于正常工作状态;JTAG模式下,核心解码系统也处于正常工作状态,但是JTAG引脚会将关键时刻的关键信号串行输出,增加系统可控性和可观性;BSIT工作模式下,系统运行在测试状态而非正常工作状态,以逐步排查各模块故障。
2.2 MPEG-2解码器中不同类型模块的BIST设计
2.2.1 存储器型模块的BIST实现
为存储类型模块所设计的BIST测试框图如图4所示。BIST测试模式下,控制电路启动测试,向量产生电路生成测试向量对存储器进行测试,响应分析器对测试响应进行分析。
存储模块的类型有Buffer,FIFO,RAM等。针对存储模块,BIST设计领域有成熟的算法实现其向量产生电路,如MSCAN算法,Working算法,March算法[9,10,11,12]。本文采用行March算法实现存储模块的TPG。March算法是当前应用广泛的存储测试向量生成算法之一,具有快速高效的特点。
March算法的实现步骤如图5所示,其中W表示对存储器进行写操作,R表示对存储器进行读操作,向上或向下的箭头分别表示按照地址的升序或降序对存储器进行读写操作。各操作描述如下:M1表示存储器按照升序从地址0到最大地址依次写入;M2表示存储器按照升序从地址0到最大地址依次进行读出0,再写入1,再读出1;M3表示存储器按照升序从地址0到最大地址依次进行读出1,再写入0,再读出0;M4表示存储器按照降序从最大地址到0地址依次进行读出0,再写入1,再读出1;M5表示存储器按照降序从最大地址到0地址依次进行读出1,再写入0,再读出0;M6表示存储器按照降序从最大地址到0地址依次读出0。
考虑到不同存储模块的并行性和差异性,笔者针对每个存储模块进行独立测试,使各个存储模块的TPG电路相对独立。
存储模块的ORA电路框图如图6所示。被关注时刻的关键信号响应即期望响应预先存储在ROM中。系统运行的过程中,响应比较器对相应时刻的实际响应与期望响应进行比较,比较结果存于BIST寄存器中,可供测试模式下的JTAG模块读取。
2.2.2 信号相关模块与信号不相关模块的BIST设计
以MPEG-2解码系统中Register File模块(如图1所示)为例说明信号相关模块与信号不相关模块的BIST设计:Register File模块为系统主要控制功能的模块,在设计模块的BIST测试向量生成器[13]时可以挖掘模块的相关信号,提高有效测试向量的比例,减少冗余测试向量,从而提高测试效率,降低测试成本。在传统测试时,此模块的有效故障覆盖率在80%。把此模块TPG设计归类为信号不相关模块,其TPG采用一般LFSR(Linear Feedback Shit Register)设计,当其故障覆盖率在46%以上时,故障覆盖率每增加1%,所有测试向量个数呈指数增长。在实验中,考虑到信号相关性,Register File模块的2个输入信号之间有相关特性(仅信号之间01顺序变化)。在单独设计这2个信号的生产方式,其他参数不变,模块测试时间和测试向量个数相同的情况下,故障覆盖为96%,如图7所示。
表1列举出MPEG-2系统中各模块信号相关设计和信号不相关设计的故障覆盖率以及设计中相应相关信号个数。信号不相关模块的测试向量冗余小,测试向量有效压缩有限,覆盖率无明显下降。对于信号相关模块,根据信号相关性,测试向量能有效压缩,去除冗余测试向量,在相同测试时间下,测试覆盖率能明显提高。对于信号相关模块,根据信号的相关性压缩测试向量,在TPG设计时,需要单独设计相关信号生成电路,与信号不相关模块通常TPG采用LFSR方法实现相比,增加了设计复杂度和资源。
图8为信号不相关与信号相关模块类型ORA实现框图。在该电路的实现中,使用跳变计数的压缩算法:针对每一个模块的输出响应,仅在特定时刻统计输出数据流中的0到1和1到0的跳变次数,以验证设计的正确性。
2.2.3 模块间BIST模块设计
分模块测试的优点在于各模块的测试相互独立,可以并行执行。这种测试方法能保证模块的故障覆盖率,但不能保证模块间的互连故障覆盖率。为了检测互连故障,本文还采用一套应用于MPEG-2解码器的系统级BIST测试方案,如图3所示,以检测模块间的互连故障。其TPG设计为确定性信号,针对MPEG-2标准的有限个视频向量模拟信号。ORA设计根据模块间输入输出相应的跳变统计,设计参考图8。
2.3 MPEG-2解码器的JTAG设计
本文采用JTAG IEEE 1149.1标准[8,14],为MPEG-2解码系统实现了JTAG扫描电路。该JTAG电路可在测试模式下串行输出MPEG-2解码系统运行过程中的关键信号以及系统中BIST测试电路提供的相关测试数据,提高测试的针对性和有效性。
2.3.1 MPEG-2解码器的关键信号提取
在对MPEG-2码流进行解码的过程中,主要有3个数据层次:Sequence level,Picture level和Macroblock level。在每个层次的解码过程中,都有很多解码控制信号。这3个数据层次的关键控制信号对于系统功能验证起决定性的作用。因此,这些关键信号的提取对于MPEG-2解码系统排查故障有着重要意义。若可以将关键信号提取到管脚,进行实时监视,便可以实现在线并行测试。但是需要付出的代价就是为这些关键信号分配测试管脚。在解码系统中,VGA显示控制模块的28个引脚只须在显示解码视频时使用。因此,若在测试模式下,不使用这28个引脚进行视频输出,便可利用它们输出关键信号。本设计对这3个主要数据层次的关键信号进行分类,通过对VGA模块的管脚复用,把这些关键信号引到芯片管脚。
2.3.2 JTAG与BIST结合的可测性设计
在笔者设计的JTAG与BIST结合的测试方案下,MPEG-2解码芯片的测试流程如图9所示。以JTAG为整个测试控制基础,BIST测试模式内嵌于JTAG中,输入BIST测试指令Runbist,系统进行BIST测试,在BIST测试中由于不需要从外设输入测试向量,能全速测试,确保芯片初步测试正常,结合功能测试通过JTAG对测试结果输出可以直接判断芯片是否有桥接故障。具体为陪测试设备完成之后,系统进入测试状态,首先是对系统进行BIST测试排查固定故障,确保芯片初步正常,如果出现问题,进入JTAG模式,进行故障排查,直至通过BIST测试;之后系统进行特定的功能测试,如果出现故障,进入JTAG模式,进行故障排查,如果功能测试未达到设计要求,测试继续,如果达到设计要求,测试完毕。
3 实验和分析
用硬件描述语言Verilog HDL编程,系统RTL级代码在Synopsys综合优化工具Design Compiler和ModelSim仿真平台下实现仿真,FPGA验证是基于Xilinx Spartan-3系列FPGA XC3S2000开发板。
JTAG与BIST相结合的测试方案所需增加的硬件代价如表2所示。测试所需硬件资源约为系统资源的3%,对MPEG-2解码系统不会带来过多的资源开销,完全在可接受范围内。
表3为传统整体测试结果和BIST分模块测试结果的对比笔者所设计的BIST分模块测试方案与传统测试方法相比,在存储器类型模块和信号相关模块的测试覆盖率上都有明显提高,总的测试效率也得以提高。
表4为传统测试与BIST分模块测试所需时钟周期数的比较。传统测试模块间的测试向量是串行输入,测试时间随着测试覆盖率的需求呈指数增长。系统分模块并行测试,测试时间取决于RAM,Buffer或FIFO的大小;信号相关类型模块可以根据覆盖率的要求优化测试向量,缩短测试时间。系统所需的测试周期数取决于测试时间最长的模块这与并行粒度有关。在此实验中,系统分模块测试所需的时间取决于信号相关模块类型测试时间,仅为传统测试的1/160。
4 小结
编解码芯片 第5篇
1 旋变解码芯片
基本的旋转变压器分经典旋变和可变磁阻式旋变等, 它们在结构和绕组的要配方式上各不相同, 但无论何种形式的旋变, 其旋变输出电压 (S3-S1, S2-S4) 的计算公式均相同, 即
式中, θ为转子转角, sinωt为转子激励频率, E0激励幅度。旋转变压器的两个转子绕组机械错位90°, 如图1所示。其中Vp为励磁电压峰值, Vr为励磁电压, Vs为变比后的电压, Va、Vb分别为S2-S4, S3-S1感应电压, 初级绕组采用交流基准源激励, 随后在定子次级绕组上耦合的幅度是转子轴相对于定子的函数。因此, 旋变产生由轴角的正弦和余弦调制的两个输出电压S3-S1, S2-S4, 旋变输出信号格式如图2所示。
本设计的旋转变压器采用日本多摩川或上海赢双电机公司的三对极旋转变压器, 旋变的转子转动一周, 其电角度变化为1080度, 其变压比为0.286±10%, 激励频率范围为10KHz~20KHz, 激励电压峰-峰值为20V, 输入阻抗180Ω, 激励电流典型值为50m A。
2 AD2S1205的工作原理
AD2S1205是一款12位分辨率旋变数字转换器, 集成片上可编程正弦波振荡器, 可以将激励频率设置为10 k Hz、12 k Hz、15 k Hz或20 k Hz。为旋变器提供正弦波激励。转换器的正弦和余弦输入端允许3.15 V p-p±27%输入信号。采用Type II跟踪环路跟踪输入信号, 并将正弦和余弦输入端的信息转换为输入角度和速度所对应的数字量。最大跟踪速率取
决于外部时钟频率。AD2S1205的工作频率为8.192 MHz±25%, 最大跟踪速率为1250rps。支持增量式编码仿真输出, 输出脉冲数1204脉冲/转。增量式编码器仿真采用标准A-quad-B格式, 并提供方向输出。
2.1 工作理论
AD2S1210按照跟踪闭环原理, 能跟踪恒定速度输入, 输出连续跟踪变变位置不存在固有误差。无需外部转换和等待状态, 且没有转换延迟。它还可以抑制噪声, 并提供参考和输入信号的谐波失真容限。从而提高精度, 当旋变的位置经过最低有效位的角度时, AD2S1205输出1 LSB的分辩率。
转换器跟踪轴角的原理为:由EXC、激励源向旋转变压器提供励磁信号, 承载着位置信息的两路旋转变压器模拟信号送入到解码电路的SIN、SINL、COS、COSL输入端。分别经过AD采样后送入乘法器, 分别经过乘法运算, 转换器将产生反馈角φ与输入角θ、反馈角θ与输入角φ相比较, 当转换器正确跟踪输入角度时, 二者之间的误差将为0, 为了测量误差, 将S3-S1乘以cosφ, 将S2-S4乘以sinφ, 可得到
二者的差值为:
利用内部产生的合成基准信号来解设该信号, 得到下式:
当角度误差θ-φ值很小时, 有:
则E0 (θ-φ) 值表示转子的角度误有效期与转换器的数字角度输出二者的差值。
一个闭环系统由一个相位敏感的解调器、一些积分器和一个补偿滤波器形成, 它可以将误差信号归零。当该目标得以实现时, 在转换器的额定精度范围内, φ等于旋转角θ。之所以使用Type II跟踪环路, 是因为它能跟踪恒定速度输入, 而不存在固有误差。
2.2 AD2S1205接口电路设计
AD2S1205外围电路如图3所示。采用模拟、数字电路隔离, 旋变解码电路控制与数据读取通过磁隔离电路ADu M1400和ADu M1401与数字信号处理器TMS320F28335进行通讯, 实现信号隔离。输入电路激励频率为10KHz。
AD2S1205片上振荡器向旋变器提供正弦波激励信 (EXC) 及其互补信号 () 。该基准信号的频率可通过FS1和FS2引脚设置为四个标准频率 (10k Hz、12k Hz、15k Hz或20k Hz) (见表1) 。FS1和FS2具备内部上拉电阻, 因此默认频率为10KHz。这一信号的幅度围绕2.5V变化, 峰值幅度为3.6Vp-p。, 模式配置如表1所示。基准信号的频率是CLKIN频率的函数。通过降低CLKIN频率可以降低激励频率的最小值。因此, 当CLKIN频率为6.144 MHz时, 激励频率为7.5 k Hz, 同时将最大跟踪速率降至750 rps, 如表1所示。
AD2S1205的基准输出需要一个外部缓冲放大器来提供增益和额外电流, 以驱动旋变。设计的缓冲电路见图4。
此外, AD2S1205还提供一个相位锁定至其正弦和余弦输入的内部合成基准信号。旋变初级绕组与次级绕组之间的相位误差会降低RDC的精度, 而该同步基准信号可以补偿这一相位误差。此外, 它还能补偿温度变化和传输线缆所引起的相移, 从而不需要在外部预设相位补偿电路。AD2S1205的输入信号SIN (COS) 与SINL (COSL) 两者典型的压差是3.15VP-p, 输入差分信号不能低于零电位, 使用一个上接和下拉电阻, 来改善系统的噪声性能。如图5所示。
2.3 外部接口
输出移位寄存器为16位宽。数据以16位字格式, 通过串行时钟输入 (SCLK) 从器件输出。图6为这一操作的时序图。
3 系统测试及应用
系统采用TI公司的TMS320F28335做为控制处理器, TMS320F28335型数字信号处理器是TI公司的一款TMS320C28X系列浮点DSP控制器。TMS320F28335具有150MHz的高速处理能力, 具备32位浮点处理单元, 6个DMA通道支持ADC、有多达18路的PWM输出, 其中有6路为TI特有的更高精度的PWM输出 (HRPWM) , 其浮点运算单元, 性能较前代DSP相比提高50%, 用户可快速编写控制算法而无需在处理小数操作上耗费过多的时间和精力, 并与定点C28x控制器软件兼容, 从而简化软件开发, 缩短开发周期, 降低开发成本。
根据前述AD2S1205外围电路, 激励调理电路及旋变返回信号调理电路搭建硬件平台, 根据表1, 通过软件设置激励频率为10k Hz, 进行系统试验, 实测激励波形如图7所示, 该激励信号的频率为10k Hz, 峰值为11V, 得出此时激励的有效值为, 满足旋变对激励信号的要求。通过调整激励输出反馈电容的值, 可以优化激励波形。
电机以980rpm的固定速度旋转时, 其激励波形如图7所示, 测得的AD1205输出的相位相差90°的旋变的输出波形如图8所示。
4 总结
本系统采用了TMS320F28335控制器为核心, 以AD2S1205输出信号为旋变激励信号, 将旋变输出信号引入到AD2S1205内部进行解码, 使用磁隔离芯片ADu M14xx, 通过SPI接口方式, 读出12位的数字信号量, 得到当前的电机角度和速度信号, 并成功应用于安凯公司的HFF6140K07CHEV插电式混合动力客车中, 该方案设计简单实用, 省去了大量复杂的数据通讯接口。经实际测试, 与旋转变压器配合良好, 取得了良好的应用效果。
摘要:介绍了一种适用于新能源汽车交流异步电机转子位置解码系统的设计方案, 应用旋转变压器/数字转换器AD2S1205, 将旋转变压器输出的模拟信号转化为数字信号, 以便于DSP进行处理。介绍了旋转变压器的基本原理, 设计了AD2S1205与旋转变压器及TMS320F28335数字信号处理器的接口电路, 并在安凯HFF6140K07CHEV插电式混合动力客车上投入使用, 取得了非常好的实际应用效果。实验证明, 该设计方法精度高, 可靠性好, 抗干扰能力强, 完全能够满足高速电机控制系统及车辆环境的应用要求。
关键词:旋转变压器,AD2S1205,信号转换,数字解码器
参考文献
[1]旋转变压器原理及其应用[J].电气时代, 2005, (10) :98-99.
[2]薛山, 温旭辉, 徐志捷.基于AD2S90的数字旋转变压器[J].电工技术杂志, 2003 (9) :102-104.
[3]储海燕, 许刚.基于AD2S1200的旋转变压器解码电路设计[J].科学与技术工程, 2012 (20) :5044-5047.
[4]李耀海, 胡文艳等.基于AU6802N1的旋转变压器信号接口电路设计和应用[J].电子设计应用, 2006 (02) :11-114.
[5]12-Bit RDC With Reference Oscillator AD2S1205[Z].Analog Devices Company, 2007-2010.
[6]TMS320F28335, TMS320F28334, TMS320F28332 Digital Signal Controllers Data Manual[Z].TI Company, 2007.
[7]Evaluation Board for the AD2S1200/AD2S1205 Resolver-to-Digital Converters[Z].Analog Devices Company, 2007-2010.
[8]旭辉, 张立伟.新型永磁同步电机控制用旋转变压器/数字转换器及其应应用[J].中小型电机, 2005, (08) :51-54.
英威:力推面向融合的编解码产品 第6篇
多屏互动是融合网络的典型业务,而完善的码流适配方案及产品成为该业务实现的坚实基础,不但要求能够兼容多种格式的编解码方案,覆盖最新的编解码标准,更要有快速响应的能力,以满足不同用户的需求。英威(Envivio)正是这一领域的杰出代表。
在CCBN2014 上,英威展示了最新的视频处理创新技术、HEVC 4K和HEVC 1 080p@60 Hz编码技术。其中,En⁃vivio Muse编码器集成了统计码流控制技术,能够高效利用带宽提供5∶1 MPEG-2 高清统计复用功能;HEVC vs AVC vs MPEG-2:用3 种编解码技术对相同视频进行实时编码对比,能够在保证相同视频质量的同时有效节省码率;En vivio Halo TV Anytime高级解决方案,可提供网络PVR、追看电视和电视重播,以及停播、定向广告插入、字幕和准时打包(JITP)等功能。
据悉,英威还是中国CMMB工作组、AVS工作组正式会员,将继续带着先进的编解码技术、产品深耕中国三网融合的视频市场。
基于FPGA的JPEG编解码设计 第7篇
JPEG是联合图像专家小组的缩写,负责静态图像压缩标准的制定。这个小组开发研制出连续色调、多级灰度、静态数字图像压缩编码方法,即JPEG算法。用此算法压缩出来的图片文件为JPEG文件,后缀名通常为* . jpg或* . jpeg。它是以DCT变换和变长编码为基础的。具有优良的压缩解码性能,而且要求低存储量和相对较低的复杂度使其很适合硬件实现。JPEG解码过程与其压缩过程正好相反。
1 系统概述
本系统基于DLP数字视频实验板,其上有Altera Cyclone III FPGA( EP3C16F) ,两片32 位DDR2,Si I 7171 i TMDS接收和发送芯片。在此平台上实现了编码和解码。在编码过程中,将一帧BMP图像保存到DDR2 中,再按照8 × 8 像素块逐一送到FPGA编码器,编码的数据通过串口传输到PC。在解码过程中,JPEG图像数据通过串口传输给解码器,解码后的8 × 8 数据传输到DDR2 中保存并且重新排列成一幅图像。系统框架如图1 所示。
2 算法介绍
2. 1 JPEG编码过程
2. 1. 1 色空变换
输入的未压缩图像数据是24bit的RGB格式,每个红、绿、蓝分别对应8bit,这就是人们常说的三基色。RGB彩色空间的优点在于表达色彩直观,容易理解。但是研究表明,人眼对亮度比色度更敏感,因此考虑将RGB色彩空间转变到亮度/色度空间,如YUV、YCr Cb,进而对色度信号进行二次取样,去掉一些人眼不敏感的色度信号量从而提高数据压缩率。RGB向YCb Cr信号的转换公式如下:
Y = 0. 299R + 0. 587G + 0. 114B
Cb=-0.1687R-0.3313G+0.5B+28
Cr=0.5R-0.4187G-0.0813B+128
由于JPEG里的数据都是无符号8 比特数据,因此色度信号在这里都被加上128。在通过对色度分量进行二次采样来减少色度分量后,肉眼将察觉不到图像质量的变化。
2. 1. 2 重采样
JPEG定义了最小编码单位( Minimum Coded Unit) ,简称MCU,其值不能大于10。通常对图像数据的取样有三种方式: YCb Cr4∶ 4∶ 4、YCb Cr4∶ 2∶ 2和YCb Cr4∶ 1∶ 1。它们所代表的含义是指Y、Cb和Cr三个成分的数据取样比例。举例而言,子像素的排列为{ Y、Cb、Cr、Y、Y、Y} 的称为4: 1: 1 格式,因为对于每4 个连续采样点取4 个Y,1 个Cb,1 个Cr。通过去掉人眼不敏感的色差信号( Cb Cr) 信号,能够降低图像带宽。
2. 1. 3 离散余弦变换( DCT)
离散余弦变换( DCT,Discrete Cosine Transform)是一种经典谱分析方法。此变换利用这样一个事实: 人眼对图像的低频分量比对高频分量更加敏感。DCT将像素点值由空间域变换到频率域,之后若对高频部分略微进行消减,人眼也不容易辨认出来,从而达到了缩小图像信号频带,减少图像数据容量的目的。DCT变换公式如下:
经过DCT变换之后,整个8 × 8 输入像素块中,低频分量集中在DCT数据块的左上角,而高频分量集中在右下角,这样就为下一步的量化做好准备。
2. 1. 4 量化
在8 × 8 像素块完成DCT变换之后,为了在压缩比方面获得大的提高,需要进行量化。该过程是用DCT之后的数据除以一组预定的数值,再取整。量化的目的是减小非“0”系数的幅度以及增加“0”值系数的数目。量化是造成图像损失以及图像质量下降的最主要的原因。
一般情况下,亮度使用一张量化表,色度使用一张量化表。
从图2 中可以看到图中左上角的量化步距要比右下角的量化步距小。这样在量化后,每个8 × 8 数据块在右下角会出现大量的“0”。
2. 1. 5 Z字形编码
量化后的系数要重新排列,目的是为了增加连续“0”系数的个数。图3 所示为Z字形编码。
Z字形变换后就把一个8 × 8 的矩阵变成了一列数据,频率较低的系数在数列的前端,高频的数据在数列的后面,并且高频部分有许多连续的“0”。
2. 1. 6 DC系数编码
DC系数代表每个8 × 8 像素块的亮度( 一般数值比较大) ,而且相邻像素块之间的DC值相关性很大,即相邻两个像素块的DC值差别不大。因此可以用前一个DC值去预测当前的DC值。通常使用差分预测技术对相邻图像块之间的DC值的差值进行编码,从而变成对一个较小的数进行编码,提高编码率和压缩率。
2. 1. 7 熵编码
经过DCT编码以及量化之后大大降低了图像信息的相关性。熵编码的作用是进一步降低表达信息所需的数据量。在JPEG算法中,熵编码包括游程编码和霍夫曼编码。
( 1) 游程编码
在压缩过程中,对8 × 8 模块中的63 个AC系数使用游程编码。由于经过量化后许多AC系数都变成了0,所以此处通过对0 的个数进行编码而不是对每个0 进行编码来提高压缩率。
( 2) Huffman编码
压缩的最后一步是Huffman编码,Huffman编码是一种变长编码,其基本思想是: 将信源符号出现概率高的用较少的码字编码,出现概率低的用较长的码字编码。根据量化系数的统计特性,对量化后的DC和AC系数做Huffman编码,以进一步获得附加的压缩。Huffman编码将对相邻DC的差值的位宽以及AC系数的游程长度和位宽值进行编码。Huffman编码表分为亮度信号的DC和AC表以及色度信号的DC和AC表共四张表。这四张表可以事先定义好,从而省去对原始数据做出现频率的统计。
2. 2 JPEG解码过程
J PEG的解码过程是上述压缩过程的逆过程,并且有些模块可以共用。
2. 2. 1 读取JPEG头文件
JPEG文件数据分为头文件和图像数据两大部分,其中头文件记录了图像的大小,采样因子,量化表,Huffman表等重要信息。所以在解码前必须将头文件读出,并且需要解码Huffman表,记录量化表和采样因子。
2. 2. 2 反量化和反Zig - zag编码
不同的颜色分量使用不同的量化表,这个可以从JPEG头文件标记段中的颜色分量信息字段查得。一般是Y分量使用量化表0,而Cr、Cb两个分量共同使用量化表1。反量化的过程比较简单。只需要对8 × 8 的颜色分量单元的64 个值逐一乘以对应的量化表内位置相同的值即可。图像内全部的颜色分量单元都要进行反量化。
在反量化完成之后,再对数据进行反Zig - zag编码,即对数据进行重新排列,排列顺序是压缩中Zig - zag编码过程排列的逆。
2. 2. 3 反量DCT变换
文件中的数据是在编码时通过正向离散余弦变换得到的结果,所以现在解码就必须将其反向离散余弦变换( IDCT) ,就是把颜色分量单元矩阵中的频率域数值向时空域转换。由于DCT变换是可逆的,故此过程和压缩过程一样。
2. 2. 4 YCb Cr向RGB变换
要想在屏幕上显示图像,就必须以RGB模式表示图像的颜色。在还原图像之前,还要对图像采样因子进行分析,即将在压缩中使用不同采样因子的图像都变成4∶ 4∶ 4的格式。另外,由于DCT变换要求定义域对称,所以在编码时把RGB数值范围从[0,255]统一减去128,因此解码时必须每个分量加上128,具体公式如下:
通过以上变换公式得出的RGB值有可能超出定义域[0,255]。如果大于255,则截断为255; 如果小于0,则截断为0。
3 系统实现
3. 1 Huffman解码
Huffman码是变长编码,压缩后的码字长度不固定。并且和容易造成计数器本身的“0”值与Huffman码中的“0”值混淆。比如: 如果Huffman码为4位的1000,由于寄存器清零,使得当读入两位二进制10 时,会误认为是3 位010,从而造成解码错误。因此,在Huffman查找表又添加了一个5 位的位宽标记位,即读入数据码字的长度和码字一起去对应Huffman查找表。如图4 所示。
例如若应读入的Huffman码为1000,则通过Huffman码和码位宽的附加,则可以查找到第四行数据,而不会误查到第二行的数据。
3. 2 DCT和IDCT的设计
DCT和IDCT是可逆的,即在设计中,压缩和解码时此模块可以复用。以压缩为例,DCT模块设计时通过使用Verilog中模块间参数传递这个技巧,使8 × 8 数据模块以并行方式处理,从而提高了处理速度。DCT并行算法如图5 所示。
有64 个独立的查找表,每一个查找表对应着固定的( u,v) 值,从( u,v) = ( 0,0) 到( u,v) = ( 7,7) ,而每一个查找表又有64 个元素,每个元素对应着固定的( x,y) 值,从( x,y) = ( 0,0) 到( x,y) = ( 7,7) 。所有查找表处于并行的关系,以提高计算速度。查找表的结果连接到一个累加器上,实现公式中的两个连加功能,因此,在此模块运行中,每个8 × 8 模块的处理完成只需要64 + 3 个CLK。
4 结束语
本设计按照VLSI自顶向下设计的一般流程,首先进行C语言建模,得到JPEG编码和解码器的总体框架,并且用C语言得到各个模块的输出数据,为硬件调试提供参考。之后完成了各个模块的接口定义,最后实现了此系统。
摘要:JPEG(Joint Photographic Experts Group)作为一个基本的图像压缩方式,已经得到了广泛的运用。而FPGA具有的并行计算特点,使得越来越多的设备利用FPGA对jpeg文件进行编解码。从整体上介绍JPEG编解码的基本算法,并着重介绍了在DCT和Huffman两个模块中使用的方法。在DCT/IDCT模块中,为了提高处理速度,充分利用FPGA并行处理的特点。对于Huffman解码模块,采用附加码位宽的查找表方法,并利用综合工具将查找表综合到片内存储器中这一特点来减少资源。
一款无线控制的编解码门铃设计 第8篇
无线编解码门铃设计原理
无线编解码门铃利用编解码技术和无线遥控技术, 采用具有编解码功能的遥控发射接收专用集成芯片, 构成数字编解码系统, 从而实现发射与接收的功能。
发射系统构成
无线门铃发射系统的基本原理如图2所示。发射系统由控制按键采集信号, 经过调制振荡电路转换为高频信号, 经过稳频后送到高频振荡电路无线发射出去。
无线门铃发射电路如图3所示, 由型号为9018的三极管以及相应的外围电路元件可调电容C1 (4-27p) 、瓷片电容C2 (15p) 、电路板印制电感L1、色环电感L2 (4.7µH) 等构成高频振荡电路, 从而产生载波信号, 编码芯片IC1 (PT2262) 的17脚输出的编码信号对该载频进行调制, 直接由振荡线圈L1发射出去, L1起到天线作用。
接收系统构成
无线门铃接收系统的基本原理如图4所示。接收系统接收到信号后, 送到超再生接收电路进行解调, 之后送到放大电路进行放大, 再送到解码电路解码, 解码后的信号送到声音电路发出声音。
无线门铃接收电路如图5示, 由型号为9018的三极管VT2以及相应的外围电路元件电路板印制电感L3、色环电感L4 (4.7µH) 、瓷片电容C5 (8p) 、瓷片电容C6 (5p) 等构成超再生检波电路, 该电路接收发射电路发送来的高频信号, 并且对该信号进行解调, 还原出原始的编码信号, 再经过由VT3、VT4、VT5三个相同型号的三极管9014构成的三级放大电路放大, 之后送入解码芯片IC2 (PT2272) 的14脚, 进行信号解码, 解码后的信号从PT2272的17脚输出, 该信号为高电平, 可以触发音乐芯片IC3 (KDT9300) 工作, 信号通过低频功放推动扬声器发出声音。
声音电路
KDT9300音乐芯片可内存音乐曲子或铃声, 这是一种CMOS系列的大规模集成电路, 包括振荡器、只读存储器、音色发生器、地址计算器和控制、输出、节拍等。触发一次就进行一次内存循环, 工作电压是3V, 静态工作电压小, 耗电低。
编码与解码电路原理
无线门铃电路的核心器件采用了带数据、地址编解码功能的遥控发射接收芯片PT2262/PT2272。
无线遥控发射电路的编码信号从PT2262的17脚输出, 14脚为发射指令端, 14脚接地时, 芯片的输出端就会发射出一组编码脉冲。15脚、16脚为内置振荡器, 通过外接一定阻值的电阻来产生振荡。当编码芯片PT2262发射的编码信号与解码芯片PT2272预置的信号相同时, PT2272的17脚就输出高电平。15脚、16脚是振荡器, 外接一定阻值的电阻即可。14脚为输入端。
电路制作与调试过程
根据设计的电路图制作电路板, 整理所有电路的元器件, 检测安装焊接。插装时要注意极性元器件的方向, 如电解电容、发光二极管、三极管、集成电路插座的方向等。
发射电路和接收电路安装完成后, 仔细检查电路是否存在焊接问题, 发现问题并修正后, 可对电路进行测试与调试。将无线编解码门铃接上电源, 测量各点的静态电压参数, 接收电路各三极管集电极的电压参数:VT2≈1.3V、VT3≈0.8V、VT4=0V、VT5≈2.4V;接收电路各三极管基极电压参数:VT2≈0.8V、VT3≈0.6V、VT4≈0.6V、VT5=0V。电路各级的静态电压正常后, 可以调整发射信号的载频。
无线门铃近距离发射接收信号正常后, 按下按键能正常发音, 则可以进行远距离调试, 要仔细调整可调电容C1, 可以将控制距离调节到40m以上。该门铃可以实现一对一或一对多信号控制, 也可实现多对一或多对多信号控制, 但是必须保持发射电路和接收电路的编解码方式是一致的, 才能够实现信号的正常传输。
结束语
编解码芯片范文
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。


