基于USB2.0的视频图像处理芯片实现方案

发布者:lqs1975最新更新时间:2013-08-06 来源: DZSC关键字:USB2.0  视频图像处理  FPGA技术 手机看文章 扫描二维码
随时随地手机看文章

  1 引言

  随着计算机技术、微电子技术的高速发展,实时图像处理在多媒体、图像通信等领域有着非常广泛的应用。FPGA 芯片在集成度、容量和速度方面都达到了较高的水平,是实时图像处理的理想选择,基于FPGA 的图像处理芯片的研究已成为信息产业的新热点。USB2.0 接口是一个传输速率可以达到480Mb/s的串行接口,并由不同类型的外围设备共享这个接口总路线,基于USB2.0 的视频图像处理芯片是按照USB协议进行设计的。USB2.0 接口的面世,推动了高清数码摄像头的普及应用,加上同期宽带的飞速发展,电脑摄像头的本地和远程视频效果都有了大幅度提升。国内USB2.0 的视频图像处理芯片现在发展迅速,比如深圳的艾科创新、珠海的炬力等公司都相继推出了各自的产品。本文介绍了一种基于USB2.0 的视频图像处理芯片的实现方案,并在搭建的仿真和验证平台上,对系统进行了功能仿真和FPGA 验证,结果证实本设计达到了设计要求。

  2 基于USB2.0的视频图像处理芯片的整体实现方案

  基于USB2.0 视频图像处理芯片在硬件上由8 个模块组成:微处理器模块(MCU)、MCU 总线接口模块(MCU Bus Interface)、USB2.0 收发器模块(USB2.0PHY)、USB2.0 串行接口引擎模块(USB2.0 SerialInterface Engine,简称USB2.0 SIE)、数据缓冲模块(Data Buffer)、DMA 传输控制器模块(DMA)、图像处理单元 (PU) 、图像预处理单元(PPU)。其结构框图如下图1 所示。

图1 基于USB2.0 的视频图像处理芯片结构框图

  其中,MCU模块、USB2.0 PHY模块和USB2.0 SIE模块使用已有的IP 核,而其它模块均采用硬件描述语言(Verilog HDL)自行设计。

  MCU 模块负责协调控制整个系统的运作;MCUBus Interface 模块负责各模块的部分地址译码及相关数据的选通,以便于MCU 统一管理。USB2.0 PHY 模块负责USB 物理层的链接,并将USB2.0 的总线信号变成标准的UTMI 接口信号;USB2.0 SIE 模块负责处理USB 协议层的操作,完成USB 协议包生成和解析,以及接收来自DMA 的图像数据,并将其保存在数据缓冲模块,完成与MCU 进行的互动;DataBuffer 负责将处理后的图像数据缓存起来,以备USB 同步帧传输时取出后发送至PC;DMA 模块完成将PU 处理后的图像数据传送给USB2.0 SIE;PPU 模块完成获取来自Sensor传感器输出的图像数据,并且对数据进行各种图像方面的处理,然后将处理后的图像数据发送至PU.

  3 PPU模块中核心部件的设计

  PPU 模块所完成的功能主要是:(1) YCbCr4:2:2格式到YCbCr4:4:4 格式的转换;(2) RGB565 格式到RGB888 格式的转换;(3) Bayer 数据坏点修正及Bayer格式到RGB888 格式的转换。其中第三个功能是本模块的最重要的功能,本方案中采用了"两条线伪双端口+六级流水线"的方案来实现,其原理图如图2所示。

图2 Bayer 数据坏点修正及格式转换的硬件原理图。

  从图2 可以知道,在本方案中把坏点修正算法与格式转换算法做在了一个模块中。坏点地址存储模块,主要是用来接收从MCU 输出的坏点信息。伪双端口RAM1、RAM2 是用来临时存储Bayer 图像中的前两行数据。而右端的六级流水线模块,它的作用是完成相应的坏点修正和格式转换。其中,六级流水线的前面五级的作用是完成3×5 窗口的坏点修正,而后面三级是为了完成3×3 窗口的格式转换。

  逻辑管理模块的主要作用是统一管理六级流水线的相应操作,其内部包含一些计数器、比较器。从图中还可以看到,P24、P34 分别把数据写入了RAM1、RAM2,这主要是为了更新RAM 中的数据,使得3×6 窗口能够漫游Bayer 图像的每一个像素点。同时本设计对图像的边缘也做了很好的处理,采用镜像技术对边缘做了很好的修正。[page]

    4 PU模块中核心部件的设计

  图像处理单元所要完成的功能主要有:(1)图像滤波(Image Filte);(2)对比度(Contrast);(3)亮度(Brightness);(4)饱和度(Saturation);(5)色相(Hue);(6)锐化(Sharpness);(7)伽马校正(Gamma)等。图3 给出了PU 模块中核心部件的结构,其中图像滤波功能是通过一个1×5 窗口在图像上的遍历来完成,伽马校正主要是通过对ROM 的查表来实现。

图3 PU 模块中核心部件结构图。

  5 设计的仿真和验证

  5.1 模块的功能仿真

  主要给出了对图像预处理模块中核心部件Bayer模块的仿真验证方法,其他模块的仿真验证与此类似。

  由于图像处理模块所涉及的数据量非常庞大,仅凭单一的一种或两种软件无法独立完成,所以这里仿真验证的工作是通过三个软件Xilinx ISE + ModelSim +Matlab 共同完成,图4 给出了Bayer 模块TestBench示意图,其实现的步骤主要分为以下三步:

图4 Bayer 模块TestBench 模型示意图。

  (1)由MATLAB 从10 张有共同坏点位置的不同JPEG 图像中读取8bit 无符号RGB 数据,然后由相应的RGB 数据生成对应的Bayer 数据,并以10个。txt 文本文件来保留这10 张图像的Bayer 数据,这十张文本文件同坏点位置信息一起作为测试输入激励。

  (2)把测试输入激励,分别输入Bayer 模块和MATLAB 模拟Bayer 模块功能的程序中,可以分别得到大量的信息,这些信息都是由。txt 文本文件来保存,其中MATLAB 模拟程序完成的功能与Bayer 模块完成的功能相同,只是两者运行的平台不同。

  (3)比较由MATLAB 模拟程序与Bayer 模块所生成的大量。txt 文本文件,由于模拟程序和硬件模块具体实现的机制不同(模拟程序采用了矩阵运算,而硬件模块采用2 条线的行缓冲+六级流水线的方式实现),如果它们产生的数据一致,则可以很好的说明硬件模块完成了预期的功能, 然后再运用MATLAB 显示函数,把原始图像数据与修正后的数据以图像的形式显示出来,这样能以更加直观的形式来观察对应的图像效果。

[page]

    图5 所示的三张图片是仿真验证的过程中所涉及到图片,从图中可以看到Bayer 模块的设计达到了预期的目的。

图5(a) 用于生成Bayer 数据的原始图像。

图5(b) 由Bayer 数据未作坏点修正直接复原出的图像。

图5(c) 由做了坏点修正的Bayer 数据复原出的图像。

  5.2 FPGA 上的验证

  5.2.1 FPGA 上验证平台的搭建

  图6 所示为本设计的FPGA 验证平台示意图。

图6 FPGA 验证平台示意图。

  PC 与一块USB2.0 PHY板通过USB2.0 总线连接,USB2.0 PHY 板与FPGA 开发板由标准UTMI 接口连接。Sensor 板主要是采用美光的MT9V112 sensor 板,I2C 接口主要是用于MCU 对Sensor 的控制,Data 总线包括数据总线和数据控制总线。而硬件MCU 模块、MCU Bus Interface 模块、USB2.0 SIE 模块、DMA 模块、PPU 模块和PU 模块均已综合生成FPGA 下载程序下载到FPGA 中。

[page]

    5.2.2 验证过程及结果

  首先在PC 端需要安装几个工具软件,用于观察USB设备描述符信息的USBViewer,用于捕捉USB 枚举信息的工具软件BusHund.按图6 所示连接所有硬件,然后,将USB2.0 PHY 板的USB 接口插入到PC的USB 插口,并打开USB 视频管理工具软件,能够看到流畅的视频图像。专用测试工具软件可以测试图像帧速率。在验证的过程中,可以看到本方案所设计的芯片支持的最大分辨率为 640×480(VGA),最大分辨率时的帧速率约为15~20fps,基本达到了设计要求。

  图7 所示为PC 机上安装的USB 数据捕捉软件工具捕捉的视频图像数据,经分析这些数据证明图像数据正常传送至PC 用户。

图7 BusHound 捕捉的图像数据。

  图8 是通过本系统在PC 机上使用USB 视频工具软件Cyberlink YouCam 捕捉到的图像。

图8 在本系统基础上捕捉到的图像。

  由上图可以看出本设计能够稳定地输出图像,能够稳定地实现设计要求。并且经过反复的测试和评估,表明本设计达到了设计要求。表1 为经测试能够实现的主要技术指标。

表1 实现的主要技术指标

  6 结束语

  本文设计了一种基于USB2.0 的视频图像处理芯片,通过功能仿真和FPGA 验证,表明达到了设计要求,完成了设计任务。随着FPGA 技术不断发展,使用FPGA 处理图像信息已成为图像处理领域中的一个发展趋势,特别是在对图像处理速度有较高要求的实时图像处理系统中,FPGA 将更能体现其在速度与灵活性方面的优势。

参考文献:

[1]. ROM  datasheet http://www.dzsc.com/datasheet/ROM+_1188413.html.
[2]. PC  datasheet http://www.dzsc.com/datasheet/PC+_2043275.html.
[3]. VGA datasheet http://www.dzsc.com/datasheet/VGA_2568786.html.

关键字:USB2.0  视频图像处理  FPGA技术 引用地址:基于USB2.0的视频图像处理芯片实现方案

上一篇:基于 Android 平台的 USB 数据采集系统
下一篇:快速领略USB 3.0问题症结与解决方案

推荐阅读最新更新时间:2024-05-02 22:44

基于Modelsim FLI接口的FPGA仿真技术
  1. xHDL仿真器   常用的硬件描述语言的仿真器有很多种,例如,VCS,Ncsim,Affirima,Verilog-XL,SpeedWave,Finisim和ModelSim.个人认为比较流行的就是ModelSim和Ncsim,像opencores提供的源码大部分都含有Ncsim仿真支持,或者ModelSim仿真支持。   1.1 ModelSim简介   ModelSim仿真器在FPGA/CPLD设计中的使用得到了广泛的应用,这是因为Model Technology公司为各个FPGA/CPLD厂家都提供了OEM版本的ModelSim工具。ModelSim仿真原理是基于事件驱动的,它可支持Verilog和VH
[嵌入式]
硅晶片融合技术助力 SoC FPGA设计架构脱颖而出(二)
活用现场可编程门阵列   现场可编程门阵列(FPGA)是系统设计人员的第三种方案(图1)。在很多方法中,FPGA一直是以软体为中心採用CPU架构的方法,与以硬体为中心的ASIC方法之间的一种做法。在FPGA中实现的演算法,并不像软体那么容易进行修改,但是修改FPGA配置要比投入生产新版ASIC容易得多,即使这种修改只是在几个金属层上。      图1 现场可编程门阵列发展蓝图   相反地,与在软体中运行任务相比,在FPGA中运行相同的任务会非常快,而且功率消耗也很低。但是FPGA通常要比相等价格的ASIC速度慢,功能效率也要低一些。   因此,当一种仅採用软体的解决方案无法满足速度和功率消耗要求,无法找到能够突出产品优势
[模拟电子]
硅晶片融合<font color='red'>技术</font>助力 SoC <font color='red'>FPGA</font>设计架构脱颖而出(二)
基于FPGA/CPLD和USB技术的无损图像采集卡
  现场图像采集技术发展迅速,各种基于ISA、PCI等总线的图像采集卡已经相当成熟,结合课题设计了一款USB外置式图像采集卡。该图像采集卡已成功应用于一个图像处理和识别的项目中,由于图像 信号 不经过压缩处理,对后续处理没有任何影响,因此图像处理和识别的效果比一般的图像采集卡要好,满足了特殊场合的特殊需要。   1 外置式无损图像采集卡的系统构成   整个无损图像采集卡由图像采集、图像信号的处理和控制、USB 传输 和控制、PC机端的图像还原和存储等几部分组成。   本文介绍的图像采集卡采集的一帧图像是720×576象素,如果取彩色图像,每象素用2个字节表示,每帧图像是720×576×16=6480kbps,分
[手机便携]
AT91SAM7X的多路USB2.0数据采集系统
   目前工业和医疗上使用的USB设备,绝大部分是使用专用的USB芯片与微处理器相连的,特别是USB数据采集系统。根据不同的需求,通常也需要外扩一定数量的A/D转换器,接口非常复杂。有时甚至需要为了协调不同的时钟而外扩FIFO,这样的设计不但成本大幅提高,而且系统的稳定性受到了严重的威胁。本文使用Atmel公司开发的基于ARM的闪存微控制器AT91SAM7X芯片。芯片内部集成了8路10位ADC和USB2.O设备接口,单芯片即可完成设计任务,避免了复杂的接口电路设计,不但有效地解决了以上这些问题,而且在很大程度上提高了系统的稳定性。   1 AT91SAM7X数据采集主控芯片介绍   AT9lSAM7X是基于32位ARM
[医疗电子]
基于总线的嵌入式高速图像通信系统设计
   1 引言   随着现代的图形采集技术发展迅速,各种基于ISA,PCI,USB1.1等总线的图形采集卡速度已经不能满足用户的需求,而采用 USB2.0以后就可以解决这个传输速度上的瓶颈,USB2.0的速度是480Mbits/s,完全可以满足图像采集、传输以及后续处理的要求。系统中采用 DSP+CPLD的硬件设计方案,采用现场可编程芯片 CPLD及两片 SRAM构成的图像采集和存储系统,可以根据不同的需要进行现场编程,具有通用性好、价格相对便宜,易于系统调试,升级等特点。系统中 CPLD选择的型号是 ALTERA公司的MAX7000系列低功耗芯片EPM7128A。片外大容量 SRAM是DSP与 CPLD的联系桥梁,系统设计也
[嵌入式]
基于USB2.0接口的语音采集系统设计
   引言   语音信号的采集和处理在网络、通信、智能仪表、工业控制、医疗卫生、公共安全等领域得到了越来越广泛的应用,而这些工作都需要一套高速的语音信号采集系统来完成,要对语音进行采集就需要一种高速的,能进行长时间、大吞吐量数据传送的计算机接口。USB2.0接口就是一种符合语音采集要求的计算机接口,同时,它还具有支持热插拔、占用系统资源少、易于扩展、使用方便等优点。DSP是利用专门或通用的数字信号处理芯片,以数字计算的方法对信号进行处理,具有处理速度快、灵活、精确、抗干扰能力强、体积小及可靠性高等优点,可满足对信号快速、精确、实时处理及控制的要求,本采集卡采用TI公司高精度浮点DSP芯片TMS320C6713作为主控制器,采用高
[安防电子]
英特尔全新Stratix® 10 DX FPGA出货,三大技术提升服务器性能
英特尔今天宣布出货全新英特尔® Stratix® 10 DX FPGA (现场可编程逻辑门阵列)。这款新的FPGA支持两个高性能、以处理器为核心的接口,即英特尔超路径互连(UPI)和PCI-Express (PCIe) Gen4 x16,同时还支持特定的英特尔®傲腾™数据中心级持久内存双列直插式内存模块(DIMM)。VMware是众多早期使用计划参与者之一。 “英特尔Stratix 10 DX FPGAs率先整合了关键功能,与英特尔数据中心解决方案产品组合一起使用时 ,可显著提升云和企业中的负载加速。目前还没有其它FPGA能够为基于未来特定的英特尔至强可扩展处理器的服务器设计提供这样的功能组合。” ——David
[嵌入式]
英特尔全新Stratix® 10 DX <font color='red'>FPGA</font>出货,三大<font color='red'>技术</font>提升服务器性能
基于FPGA和USB 2.0的数字图像采集系统设计
0 引言     在当今信息化的时代,在机器获取现实世界信息方面,图像由于具有信息面全、直观、方便直接的特点而受到广泛的研究。图像采集与处理系统在工业检测、智能控制、医学成像、安全监控、航空航天等方面得到了广泛的应用。人们在图像获取渠道上不断的提升图像传感器的性能,改进图像获取的硬件组件与系统结构;同时在图像的处理上提出一系列的新型或是改进的处理技术来改进图像的处理质量与处理速度,以便能够满足当前应用对图像质量、实时性能、精准控制等方面的要求。     现有的图像传感器芯片有CCD和CMOS两种类型。CCD图像传感器具有良好的性能,但其外部电路复杂,不适合于低成本系统;而随着CMOS集成电路工艺技术的发展,CMOS图像传感器得
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved