文献标识码: A
文章编号: 0258-7998(2013)05-0012-03
随着视频技术的不断发展,人们对高清数字视频性能要求日益提升。基于此,2000年10月,NI、DALAS等多家公司基于Channel Link技术推出了旨在简化CCD和采集卡之间连接的Camera Link接口协议[1]。近年来,作为一种高速、高精度数字摄像头的简洁、方便、灵活的串口数据和连接方式,Camera Link接口协议在航空航天、军事、医疗、工矿企业等的视频监控、视频传输、在线非接触式测量等领域应用广泛[2]。
高清晰度多媒体接口HDMI(High-Definition Multimedia Interface)协议是2002年底由日立、飞利浦和SiliconImage等公司联合推出的一种专用数字音视频传输协议标准,在液晶显示器、液晶电视、高清相机及录像机等消费类电子领域已经成为主要的应用标准之一[3]。该接口可传输高达5 Gb/s的数据带宽,是首个支持单线非压缩混合信号传输的接口协议,可直接同时实现全数字高清影音信号及控制命令数据的高性能数字接口。HDMI技术不仅能提供清晰的画质, 而且由于其音频、视频采用同一电缆, 大大简化了系统的设计和安装[4]。
在某视频采集系统设计项目中,前端相机视频分辨率、视频帧率和像素时钟频率分别为1 920×1 080 p@25 f/s及80 MHz。相机视频输出为CameraLink接口的1-tap RGB 8 bit格式。为扩展相机的应用及调试方便,要求视频数据能够转换为HDMI接口输出。目前,在所检索到的文献范围内,未见相关报道。本项目组基于实际需求,在不改变原有相机设计结构的基础上,给出了结合FPGA设计技术的CameraLink-HDMI转换器的设计方案,完成了电路设计,并进行了实际测试。
1 系统总体方案
根据项目要求,本转换器的主要功能是接收高清彩色相机一路BASE配置的Camera Link的视频数据,该数据为1-tap RGB 8 bit格式。在接收到视频数据后,由视频接口转换器实现视频格式的转换处理,最后通过HDMI接口以标准的BT.1120格式输出高清1 080 p@25 f/s的视频信号。基于集约化、低功耗和可靠设计的原则,要求系统一次电源+12 V,并装备备用的异步RS-422通信控制接口,以便紧急情况下PC机对相机的控制。
基于以上设计要求,提出了相应的转换器设计方案,如图1所示。转换器主要由核心处理器、电源转换模块、Camera Link输入接口模块、HDMI输出接口模块、数据缓存模块和异步RS-422收发串口转换模块等6个部分组成。
为满足高集成度、低功耗和高速的设计要求,采用FPGA作为核心处理器,产生Camera Link接口模块和HDMI接口模块的控制时序,对它们进行初始化配置。Camera Link输入接口模块工作时,将视频数据传送给FPGA。由FPGA进行视频数据的缓存、格式的转换、数据的重新组帧和发送。根据转换器技术要求,需要提供外部缓存以保存及处理视频数据,所以转换器采用外部SDRAM存储器作为片外大容量缓存模块。转换器保留Camera Link接口两对差分信号SerTc和SerTfg的接口,可以通过FPGA与RS-422转换模块进行通信,实现控制信号的LVDS到RS-422的协议转换,实现PC机通过RS-422接口对Cameralink相机的控制。
2 模块设计及器件选择
2.1 Camera Link输入接口模块
Camera Link输入接口模块选用NI公司的DS90CR-288A接收器芯片实现设计。DS90CR288A具有高速TTL接口,低功耗,无需外部PLL器件,满足TIA/EIA-644 LVDS标准,采用56脚TSSOP封装,工作温度范围为-10 ℃~+70 ℃[5]。它的作用是将相机输出的4路LVDS数据流转换为28 bit的LVCOMS/LVTTL数据,在传输时钟为85 MHz时28 bit TTL数据的速率可以达到每个LVDS通道595 Mb/s,即4路LVDS通道2.38 G/s的速度。
2.2 HDMI接口设计
HDMI发送接口采用ADI公司的高性能HDMI/DVI传输芯片AD9889B。该芯片兼容HDMI v.1.3版本,单1.8 V供电,视频/音频输入兼容1.8 V~3.3 V,可以工作在165 MHz,支持60帧480 i到1 080 p以及UXGA分辨率,能够满足技术要求[6]。该器件具有两路可编程色度空间转换器,支持RGB、YCbCr和DDR输入方式,且支持ITU656嵌入同步方式。
2.3 外部缓存设计
Cyclone IV支持的外部缓存包括SDRAM、DDRII等。方案中选用了Micron公司的SDRAM芯片MT48LC8M16-A2B。该芯片有128 Mbit容量、16 bit宽数据总线、4个bank,每个bank的容量为2 Mbit[7]。设计采用了两组SDRAM构成乒乓结构的外部缓存。每组由两片16×8 Mbit的SDRAM组成,实现高速大容量的图像缓存,使外部缓存数据总线的读写速率达到133 MHz,总容量达到512 Mbit。
2.4 FPGA处理器设计
实现高清图像的处理需要一款高性能的控制器与处理器,与接口芯片的无缝连接也是需要重点考虑的因素。因此,转换器的核心处理单元采用Altera公司的高性能FPGA器件Cyclone IV系列的EP4CE40F23I7芯片[8]。该芯片是Cyclone IV系列增强型FPGA器件,具有约40K个逻辑单元(LE),4组I/O Bank,核心工作电压1.2 V,1 134 Kbit嵌入式存储器,116个嵌入式18×18乘法器,最高时钟频率437.5 MHz。其工作流程设计如图2所示。
FPGA将CameraLink接收模块输出的28 bit TTL电平的数据信号和一路同步时钟信号数据分拆、解码并组合为R、G、B三路色度信号;接收到的RGB数据经过行缓存后,再对其进行色度空间转换,转换到YCbCr色度空间;之后对数据进行下采样,将 4:4:4采样形式转换为4:2:2采样形式并利用外部SDRAM实现图像帧数据的缓存;最后,对帧数据重新组帧后发送给HDMI接口芯片。
FPGA还完成了RS422接口通信功能、AD9889B HMDI发送接口芯片的I2C配置功能及一系列图像处理功能。设计采用自顶向下的设计方式,开发平台为QuartusII 11.0。
整个FPGA的设计工程包括3个PLL、4个FIFO(2个输入端FIFO和2个输出端FIFO)和7个子模块(camera_rec,ppi,2个sdram,ppo,i2c_config,avalon_i2c)。其中,3个PLL为PLL2、PLL1和PLL0。PLL2和PLL1都是将外部60 MHz钟振发出的时钟变为FPGA需要的频率。PLL0主要接收来自相机Camera Link发送接口输出的80 MHz像素时钟。
avalon_i2c子模块是HDMI发送接口芯片AD9889B的I2C接口控制模块。camera_rec子模块接收Camera Link接收芯片输出的时钟和数据信号,输出R、G、B像素数据,并产生相应的行、帧同步信号和数据有效信号发送至ppi子模块。ppi子模块产生控制输入端FIFO的写使能信号,同时以乒乓输入的方式、80 MHz的速率将奇数和偶数帧数据交替地送入两组输入端FIFO中。数据被写入后,sdram子模块被启动。该模块是外部SDRAM芯片的接口控制模块。sdram子模块产生读使能信号rdreq控制从FIFO中读取数据并写入外部SDRAM。两组sdram子模块以乒乓操作的形式实现连续写入和输出功能。
而ppo子模块通过逻辑控制产生rdreq1和rdreq2两个信号,从两个输出端FIFO中有数据的一个读取数据,按照AD9889B芯片所需的接口时序输出RGB数据和同步信号,完成视频输出。
3 仿真与测试
FPGA最终设计的资源利用情况如表1所示。由于FPGA还完成了一部分图像处理功能,所以用到了嵌入式乘法器,系统的最高时钟频率可以达到119.96 MHz,完全能够满足80 MHz实际使用频率的要求。
系统测试平台由HDMI接口显示器、Camera Link相机和转接器构成。由于尺寸要求,最终转接器的设计由FPGA核心电路板、Camera Link接口电路板和HDMI接口电路板三个电路板通过直插插针连接组成,各电路板尺寸均为5 cm×5 cm。测试结果表明,图像实时性达到设计要求,且颜色和图形基本无失真。
利用单片FPGA结合外部缓存完成了Camera Link接口和HDMI接口不同视频格式之间的转换,实现了Camera Link相机的HDMI接口扩展功能。实际测试结果显示该方案设计合理、可行。
本设计采用了自顶向下的设计理念和IP核技术,缩短了设计周期,通过乒乓存储结构和流水线技术,提高了系统性能和资源利用率。基于FPGA的灵活设计使系统还可以完成一系列扩展功能,为工程应用提供了一种较好的Camera Link-HDMI接口转换解决方案。
参考文献
[1] Camera Link specification-V1.1[EB/OL].(2004-01)[2011-03-17].http://www.machinevisiononline.org.
[2] 李志勇,袁魏华,杨镇华.基于TMS320C6711的Camera Link相机控制的实现[J].电子器件,2007,30(3):972-975.
[3] 徐洪涛.HDMI高速数据传输研究与设计[D].西安:西安电子科技大学,2009.
[4] HDMI Founders.High-definition multimedia interface specification version 1.4[S].CA,USA:[s.n.],2009.
[5] National Semiconductor Corporation.DS90CR287/DS90CR288A datasheet[Z].National Semiconductor Corporation,2004.
[6] Analog Devices,Inc..High performance HDMI/DVI transmitter AD9889B datasheet[Z].Analog Devices,Inc.,2007.
[7] Micron Technology,Inc..MT48LC8M16A2-SYNCHRONOUS DRAM datasheet[Z].Micron Technology,Inc.,2001.
[8] Altera Corporation.Cyclone IV device handbook[Z].Altera Corporation,2012.