摘要:为了解决标准清晰度监控系统中存在的一些问题,设计了一个基于TMS320DM365的高清视频压缩系统。采用ITU-T的H.264(DM365内嵌硬件压缩器)视频压缩算法,高清模拟视频信号通过专用视频解码芯片TVP7002转换成数字视频信号,在DM365中进行数据压缩,内嵌ARM把数据打包后传到internet,通过PC机软件解码,进行视频播放。实践证明,本编码方案很好的完成了数据压缩及传输,符合设计要求。
目录
在视频监控应用中,传统视频监控由于图像清晰度不高(CIF~D1分辨率)、管理和维护诸多线缆难度大、配置众多设备结构复杂、扩展不便,这些因素严重制约了安保管理效能的提升,同时也为高清视频监控的发展带来了契机,本文论述了基于DM365的高清视频编码器的硬件设计。

1 硬件平台整体设计
    TMS320DM365延续了DavinciTM家族DM355处理器的架构,集成了一颗ARM926EJ-S内核,一个图像处理子系统(VPSS),一个H.264高清编码器协处理器HDVICP和一个MPEG-4/JPEG高清编码器协处理器MJCP,支持多格式H.264、MPEG-4、MPEG-2、MJPEG以及VC1等编解码器,可实现高度的视频灵活性。DM365可以同时输出720P,D1,CIF三个码流,或者更多的组合方式,并且编码速率可调,并且支持硬件OSD。该处理器有丰富的外围接口,用户可以方便的外接子系统,本文采用TMS320DM365作为主CPU,对输入视频数据进行采集并进行相应的压缩网络传输处理,设计了基于DM365架构的数字视频编码器。系统除了DM365以外,还有高清视频A/D转换器、音频CODEC、存储、以太网、串口等模块。系统运行于Linux操作系统,具有实时性好、通讯速率快、图象质量高、性能稳定、价格便宜、防病毒等特点。
    系统整体框图如图1所示,系统选用DM365为主CPU,DM365外接音频模块、视频输入模块、存储模块、串口及网络传输模块。本平台由两部分构成:视频输入及图像处理部分和视频输出部分。

视频输入及图像处理部分:高清晰度模拟视频信号输入TVP7002,经过A/D编码以后变成高清数字视频信号,此数字信号输出给DM365。本模块DM365主要对输入视频数据进行H.264压缩,并可实现噪声过滤、视频稳定、面部检测、自动白平衡、自动对焦、自动曝光以及边缘增强等功能,此外,还对系统上所有I2C设备初始化,实现音频语音对讲等功能。

视频输出部分:DM365内嵌ARM微处理器,该处理器核心功能是对数据流进行转发,外接存储器模块、以太网模块、串口模块等。ARM先完成压缩数据的RTP、UDP、IP封装,然后经过MAC成帧,最后通过以太网控制器PHY完成数据包的发送。此外ARM还负责解析接收数据,对PC机发来的相关参数命令进行转发,进行相应的运算设置(视频压缩码率、帧率等),通过串口实现对外设的控制(云台控制器、镜头等),通过GPIO对报警输入输出的处理等等。

2 模块设计
2.1 视频音频输入模块
    在DM365上有VPFE接口,能支持多种格式的视频输入格式。系统实现1路高清视频输入,高清A/D转换芯片采用TVP7002。TVP7002能实现R/Pr、C/Y、B/Pb信号的数字转换,转换率高达165 MHz,在很多高清数字视频环境中被使用,分辨率高达1080P。DM365通过IIC总线对其配置,对TVP7002内部寄存器进行适当配置,可以处理720P分辨率的视频源,A/D以后的视频数据从TVP7002数字视频口输出到DM365的VPFE。系统同时提供高清数字视频输入接口,HDVICP协处理器可以在1 280X720P30的格式下提供H.264标准的视频编码或解码,而MJCP协处理器除了支持JPEG标准,还可以在1 920x1 080P24的格式下提供MPEG-4的视频编码或解码。
    系统实现1路LINEIN和立体声输出通过AIC23实现,DM365通过IIC总线对其配置,AIC23连接在DM365的MCBSP口。DM365的MCBSP被用作双向数据通道,所有的音频数据流都通过此通道传输,并支持不同的数据格式。
2.2 以太网模块
    系统含有I路10/100M网络接口,DM365内带MAC控制器,在EMAC接口外接一片以太网PHY芯片,PHY采用RTL8201,RTL8201与DM365的MII接口相连。DM365通过MDIO接口实现对RTL8201寄存器的配置及控制,其他握手信号依次连接,通过上拉下拉电阻对RTL8201进行适当的配置(设置PHY地址等),RTL8201在上电初导入这些配置信息,并进行相应的工作。在RTL8201的时钟接口外接一个25 MHz晶体,作为RTL8201的时钟源。RTL8201外接网络变压器,进行信号隔离,通过RJ45连接到网络。
2.3 存储、USB、串口、RTC、报警模块
    系统提供1路USB接口,支持OTG模式和HOST模式,支持USB2.0 High Speed(480 Mb/s)、Full Speed(12 Mb/s),可设置的FIFO。DM36 5片载USB Controler和USB PHY,通过相关配置完成其初始化,在USB上可以外接USB-SATA硬盘等外设。
    系统外接DDR2 SDRAM和NAND Flash作为片外存储器,通过设置BTSEL[2:0]为000来选择启动方式为NANDFlash BOOT模式。DM365的AEMIF接口可以支持NANDFlash和NOR Flash,因为NAND Flash存储容量大,价格便宜,本设计选用NAND Flash。
    DM365提供了专门的DDR2控制接口,16位数据线,14位地址线和3根块选择信号,可以支持256 MByte的存储空间,系统选用DDR2 SDRAM芯片K4T1G164QQ。
    DM365有2个UART接口,系统外接两路串口,一路RS232,用做调试,一路RS485外设进行通讯(云台镜头等)。并通过GPIO提供2路开关量报警输入和2路开关量报警输出,报警输入通过光藕来实现,当报警信号输入时,光藕导通,输出低电平至DM365 GPIO,当没有报警信号输入时,光藕截止,输出高电平至DM365 GPIO,DM365通过检测GPIO电平来判断报警输入信号的有无,报警输出通过控制继电器的开合来实现。系统还通过IIC扩展了一路RTC。
    系统通过外部晶体为DM365提供24 MHz时钟输入,DM365内部PLL来产生模块时钟。
2.4 电源部分
    系统提供5 V电源输入接口,通过电源转换芯片提供+1.35 V、+1.8 V和+3.3 V的电源。其中1.35 V和1.8 V采用TPS62040DGQ产生。TPS62040DGQ是TI公司推出的一款高效率低纹波的DC-DC芯片,其输出电压通过电阻进行调节。3.3 V电压采用TPS5430实现,其最高输入电压可以达到36 V,最大提供3 A的电流。
    对系统的上电顺序是:先给内核上电(1.35V),然后对PLL等模块上电(1.8V)。即先通过TPS5430得到3.3V的电源,然后通过TPS62040DGQ产生1.35 V,通过1.35 V连接到另一片TPS62040DGQ的EN上1.8 V,产生1.8 V以后,通过开关管导通先前产生的3.3 V,3.3 V最后加载到DM365上。产生下电顺序与上电顺序相反。

3 结束语
    为测试设计是否达到预定要求,对系统性能进行了较为完备的测试,选用了多种高清视频输入源在不同的环境中进行测试,有测试运动快慢及剧烈程度的画面,有测试黑自图像效果的全黑与全白,还有测试亮度等级的阶梯图案等。
    实验结果表明,系统能实时的进行编码,解码图像画面清晰流畅,没有马赛克以及动画现象,没有曝光过度、人像曝光不足、偏色、曝光和白平衡不准确等问题,色彩鲜艳,亮度分明。克服了标准清晰度监控系统中存在的不足。
    此设计方案经济使用,符合设计初衷,在可视电话、高清监控系统、车载监控领域有广泛的市场前景

DM365的视频编码器的硬件设计相关推荐

  1. 用stm32开发时是直接买现成的开发板还是芯片?开发板学习,芯片硬件设计

    视情况而言,买开发板用于评估和学习,然后买芯片做硬件设计 开发板 开发板上手即可使用,并附带很多模块. 拿到开发板后即可直接根据开发板提供的原理图进行程序编写,学习. 优点:简单快捷,上手快,拿到手就 ...

  2. allegro差分信号走线_浅谈硬件设计中的一些思路和方法(5)—信号系统,又学到了...

    房价在涨,客户需求在涨,体重在涨,房租在涨,火气在涨,唯一不涨的大概只有薪资了??? 现在客户好套路啊~我们卖的A+B,他非要让我在B上开一个兼容C的口子,然后他用C+B.问题是C不是我们的产品啊~让 ...

  3. systemverilog硬件设计及建模_Chisel引领敏捷硬件开发浪潮

    转载一篇18年6月的旧文 众所周知,近来开源处理器项目RISC-V在半导体业界掀起了一片新的潮流.这股潮流同时带来的,还包括了敏捷芯片开发. "敏捷开发"对于IC设计工程师来说似乎 ...

  4. 简述可编程控制器硬件组态及网络通信的核心思想_智能硬件设计报价诚信经营...

    智能硬件设计报价诚信经营,江苏创品工业设计有限公司,也是少数可以进行产品外观设计,结构设计,硬件软件设计,产线工艺设计及小批定制化生产服务的工业设计公司. 智能硬件设计报价诚信经营, AI-CPS O ...

  5. SoC嵌入式软件架构设计之二:虚拟内存管理原理、MMU硬件设计及代码分块管理...

    程序的大部分代码都可以在必要的时候才加载到内存去执行,运行完后可以被直接丢弃或者被其他代码覆盖.我们PC上同时跑着很多的应用程序,每个应用程序使用的虚拟地址空间几乎可以整个线性地址空间(除了部分留给操 ...

  6. python控制modem的at指令_硬件设计MCU架构+Python命名空间和作用域

    硬件设计-MCU架构 CISC结构的单片机 其数据线和指令线分时复用,称为冯-诺伊曼结构 优点:指令丰富,功能较强,但确定取指令和取数据不能同时进行,速度受限,且价格也很高:属于CISC结构的单片机有 ...

  7. 什么是硬件设计?——成功的硬件设计需要什么?

    硬件设计就是根据产品经理的需求PRS(Product Requirement Specification),在COGS(Cost of Goods Sale)的要求下,利用目前业界成熟的 芯片方案或者 ...

  8. 基于CC1310的915MHz硬件设计

    一.概述 CC1310内部结合了超低功耗 RF 收发器和超强48MHz Cortex®-M33微控制器,使用ARM® Cortex®-M0专业无线控制器来处理 ROM 或 RAM 中存储的低层 RF ...

  9. rs232串口驱动_电脑主板RS232串口硬件设计

    更多硬件设计培训视频, 欢迎加入微信公众号"陈苍硬件设计" RS232属于一种电平标准,采用UART异步通信串行数据总线协议.工业电平标准RS422和RS485同样采用UART协议 ...

最新文章

  1. 摘之知乎网友...PHYTIN学习
  2. 把java当爱好_(观点)如果把爱好做成职业 把职业做成事业
  3. Boost:排序的bimap双图的测试程序
  4. 哈希运算python实现_一致性哈希算法 python实现
  5. 今天去团省委维护网站
  6. Facebook 竟然把服务 27 亿人的 AI 硬件系统开源了?!
  7. silverlight Image Source URI : 一个反斜杠引发的血案
  8. Oracle 更新Opatch、打补丁
  9. 全国计算机vb二级题型,全国计算机二级考VB机试常见题型汇总.doc
  10. 微信小程序:调用API接口
  11. PCI-E 1x, 4x, 8x, 16x 接口定义
  12. 【Typecho插件】SakuraLoad
  13. 《派派APP》实现方式、运营模式、盈利手段
  14. Arduino串口通信
  15. 巧妙使用vscode绘制mindmap
  16. Fortify代码扫描问题及修复
  17. Git配置本地分支、远程分支、合并分支、撤销合并分支
  18. 东华大学专业英语 词汇学习
  19. python 统计.txt中比较句个数,五元组的个数、以及有多少重复的op(以五元组为统计单位)
  20. 华南理工大学php,华南理工大学网络教育平台v3

热门文章

  1. 资本频频下注,为什么是江小白?
  2. 计算机组成与系统结构——期末复习
  3. 在Ubuntu系统上安装Windows 10(真实有效)
  4. thonny和python有什么关系_学习用 Thonny 写代码: 一个面向初学者的Python IDE
  5. 基于谷歌油猴脚本观看视频
  6. IIS伪静态URL重写规则入门
  7. 《遗传算法原理及应用》笔记—遗传算法的高级实现技术
  8. heritrix mysql_heritrix的简单使用以及在后台调用heritrix
  9. 八.java入门【方法】
  10. 数据库第一范式、第二范式、第三范式、BCNF范式