基于UVC协议的图像采集系统设计

时间:2019-03-24 22:28:12 来源:延庆资讯网 作者:匿名



基于UVC协议的图像采集系统设计

作者:未知

摘要:USB协议中定义了各种类。它们不仅实现了不同的功能,还促进了USB设备的普及。 USB视频类用于网络摄像头和USB采集卡。优点是它可以即插即用,无需驱动程序开发。通常,使用UVC协议的系统使用USB控制芯片来完成整个设计。为了增加设计的多样性,本文使用FPGA和USB3.0架构来实现基于UVC协议的图像采集系统。

关键词:UVC协议; USB3.0;图像采集;固件

1系统组成和工作流程

系统结构如图1所示。它们是:带OV5642传感器的摄像头模块,Cyclone IV系列的FPGA芯片,赛普拉斯的USB3.0芯片和主机[1]。系统工作流程如下:第一步是配置USB3.0的固件程序,上电后在线下载逻辑程序到FPGA;第二步是在程序加载到FPGA后通过SCCB接口自动配置摄像机的寄存器。完成相机的初始化;第三步,在等待相机模块稳定输出后,接收图像数据并转换为UVC(USB视频类型)格式;在第四步中,数据通过USB DMA通道传输到主计算机以供显示。

2编程

2.1摄像头配置程序设计

USB芯片中的IIC接口不会加载摄像机的配置,而是嵌入FPGA中的功能模块[2]。在FPGA中创建片上系统(SOC),使用Verilog HDL语言设计硬件模块,并使用C语言配置逻辑程序。首先调用Quartus II软件中的Qsys工具来完成硬件项目的创建,根据需要添加功能模块,这里主要添加Nios2处理器,片上存储器,oc_iic和PIO功能模块。然后将时钟信号连接到每个模块,将数据总线连接到相应的接口,并设置中断级别以完成硬件模块的创建。在配置文件逻辑程序设计中,首先调用Eclips完成软件项目创建,并通过手动添加配置文件手动将项目映射到硬件。还要将输出文件配置为片上mm模式,然后写入SCCB读写控制逻辑和配置文件。通过这种方式,可以将软件和硬件逻辑编辑到同一文件中,从而减少配置过程中多个配置的繁琐步骤。最后,Quartus II编译器生成一个包含软件和硬件的sof文件。2.2 USB固件编程

固件是使用赛普拉斯提供的框架和API开发的。通用可编程接口(GPIF II)由GPIF II Designer工具设计,用于生成包含接口配置信息的C头文件[3]。 GPIF II接口是一个具有256个状态的可编程状态机。无论是作为主接口还是作为从接口,它都非常灵活。 EZ-USB FX3数据传输通道通过GPIF II接口模块转换为FIFO,简化了处理器的操作,并允许数据通过DMA通道传输到USB端点。 GPIF II接口数据传输的实际通道是GPIF线程。发送时,发送套接字映射到GPIF物理线程,以便接口数据可以存储在缓冲区中。首先将第一个DMA描述符加载到套接字中,获取第一个DMA缓冲区的信息,然后将数据写入第一个缓冲区。当第一个缓冲区已满时,套接字将基于描述符指针读取第二个DMA描述符信息并继续将数据写入相应的缓冲区以符合描述符链循环操作。当所有缓冲区都满了或收到??信号,数据自动传输到USB端点,避免了CPU操作引起的开销,提高了数据传输速率。在设计中,当VSYNC和HSYNC都有效时,GPIF II状态机必须满足一行数据的连续传输,并确保在每帧开始传输之前更新了报头位。通过乒乓操作连续读写两个缓冲区实现了数据的连续传输。

C头文件被添加到固件框架,并且调用API函数来实现DMA通道。 DMA通道由套接字,DMA描述符和缓冲区组成,主要用于缓冲和传输数据。使用CyFxUVCApplnlnit函数完成DMA通道的启动,函数中的dmaMultiConfig结构描述了DMA通道的特定信息。当固件运行时,通过入口函数CyU3PFirmwareEntry()进入主程序main(),完成硬件初始化并启动实时操作系统,然后执行创建线程和注册回调函数的操作完成USB配置[4]。3系统验证

系统固件必须首先下载USB固件,然后加载FPGA控制逻辑。使用USB-Blaster电缆通过JTAG接口加载配置文件后,程序将立即执行并收集数据。 UVC的驱动程序在PC系统中提供,因此开源应用程序VirtualDub可以直接显示图像。如图2所示,图像采集系统稳定工作。

4。结论

一般UVC模式的图像采集系统仅由USB芯片完成。为了增加设计的多样性,充分利用了开发板的功能组件,并增加了FPGA的参与。在设计中,FPGA主要用于配置摄像头模块。主控制逻辑在FX3中实现,改变了仅使用USB芯片的设计模式。实验结果表明,采用UVC协议的基于USB和FPGA架构的采集系统是可行的,可以满足实时图像采集的要求。

[引用]

[1]尹凯良。基于UVC协议的USB3.0图像采集系统设计[D]。苏州:苏州大学,2014。

[2]李江波,马春婷,王权,等。基于UVC协议的USB3.0视频采集系统设计[J]。微控制器与嵌入式系统,2016(10):31-35。

[3]赛普拉斯半导体。如何在USB视频类(UVC)框架[EB/OL]中使用EZ-USB FX3实现图像传感器接口。(2018-01-11)[2018-06-06] .http: //2018,1-11。

[4]张聪,张涛。基于USB3.0设备控制器的固件设计[J]。电子器件,2013(3):383-388。


  
延庆资讯网版权与免责声明:

凡本网注明“来源:延庆资讯网”的所有文字、图片和视频,版权均属延庆资讯网所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发表。

已经被本网协议授权的媒体、网站,在下载使用时必须注明“来源:延庆资讯网”,违者本网将依法追究责任。