高光谱红外成像系统的乒乓缓存设计

2017-05-25 00:37杨宏海
宇航计测技术 2017年2期
关键词:数据流红外光谱

周 阳 杨宏海 刘 勇 傅 强

(北京航天计量测试技术研究所,北京 100076)

高光谱红外成像系统的乒乓缓存设计

周 阳 杨宏海 刘 勇 傅 强

(北京航天计量测试技术研究所,北京 100076)

通过比较三种常用缓存方式的异同,介绍了高光谱成像系统中一种协调数据传输与处理速度的乒乓缓存结构,讨论了乒乓缓冲结构的运行和控制原理。以高速大容量的SRAM以及高性能FPGA器件为平台,设计了一种适应于高光谱成像数据处理系统的乒乓缓存结构,并进行RTL仿真和板级验证。实验表明,该方案可以高效完成大量实时视频数据的缓冲和处理,有效提高了系统工作效率,且稳定可靠。

高光谱成像 乒乓 缓冲存储器 FPGA

1 引 言

在高光谱成像系统中,需要实时处理和传输庞大的高光谱数据立方体,通过算法对图像实现增强的同时保留其光谱信息的真实性,因此对探测系统的视频处理部分提出了很高的要求,需要采用高速处理器,并建立快速有序的视频输入输出机制。本系统采用凝视型中波红外高光谱成像方式,在前端光学系统中利用可调谐声光滤光器(AOTF)进行分光,根据驱动频率的调谐对入射光进行波长选择性透过,实现高光谱分辨率的成像探测[1]。

高光谱红外成像系统的三维立体数据算法复杂,数据量大,需要高速的处理能力。本系统采用基于单FPGA的高光谱视频处理硬件平台,采用一块高性能FPGA来完成实时数据处理和控制任务。在高光谱视频处理系统中,主处理器的视频算法实现时间往往不是固定不变的,而后端的图像输出接口却是使用均匀速度对外传输视频数据,因此在FPGA和视频输出端口之间,会存在时间上的不同步,这样就会导致视频数据的丢失,影响数据的完整性,因此需要在二者之间增加缓存结构[2]。本文主要对乒乓缓存结构原理进行分析,在此基础上结合高光谱红外视频处理系统,设计适用于FPGA系统的乒乓缓存输入输出结构,给出了具体设计方法。

2 高光谱红外视频处理系统简介

高光谱红外探测组件为数据处理系统提供原始三维红外光谱数据。一定时序下红外焦平面完成红外视频信号的积分输出,同步A/D 转换,将处理完的数据输出到下一级FPGA图象处理电路单元。信号处理电路根据外部指令将上级的数字视频信号进行一系列的视频处理(主要包括:非均匀性校正,盲元替代,视频增强,亮度调节等),处理后的数字视频信号将通过数字视频接口(Cameralink)输出,同时也可经过视频转换电路转换成标准PAL制模拟视频。

系统以FPGA为视频处理核心,辅以外围信号调理、AD转换、控制接口、视频传输接口以及电源变换等电路完成高光谱红外探测的驱动、信号采集、功能控制、视频处理、视频输出等功能。原理框图如图1所示。

3 乒乓缓存结构

乒乓缓存是一种用于数据流控制的处理技巧,在FPGA时序设计中使用非常广泛,是一种典型的以面积换速度的设计思想。乒乓缓存主要通过输入输出数据选择单元,控制两个数据缓冲区中输入输出数据的走向,基本原理如图2所示。其基本处理流程为:在第一个缓存周期,将输入的数据流缓存至数据缓存区1中;在第二个缓存周期,通过输入数据选择单元的切换,将输入的数据流缓存至数据缓存区2中,同时将先前存入数据缓存区1的数据通过输出数据选择单元送至后续模块进行处理;在第三个缓存周期,重新切换数据输入输出数据选择单元,将输入数据流缓存值数据缓存区1的同时对数据缓存区2中的数据进行读取;之后按照前面的流程反复进行操作[3,4]。乒乓缓存的最大特点是,通过输入输出数据选择单元按照节拍相互配合切换,将经过缓存的数据流不停的发送到后续处理模块,将加入了乒乓缓存的两个数据缓存模块当作一个整体,对这个整体的输入输出端进行观察可以发现输入输出数据都是连续不断的,实现了数据流无缝缓冲和实时存取的流水线式处理,非常适合于对实时性要求较高的应用场合[4]。

4 乒乓缓存与其他缓存方式的对比

乒乓缓存结构与双口RAM较为相似,但它与普通双口RAM又有着本质区别,主要表现在以下几个方面:1)普通双口RAM是单个存储体构成的芯片,具有两套完全独立的数据线、地址线、读写控制线,乒乓缓存则由包含两个相互独立存储体的多片IC构成,从而使其在结构、速度、容量等方面具有更大的灵活性;2)双口RAM允许两个独立的系统同时对该存储器进行随机访问,而从两个端口访问同一地址时,指向的必定是存储体内的同一存储单元,而乒乓缓存结构则分别指向属于SRAM1和SRAM2的两个不同的存储单元;3)乒乓缓存结构双口指向的存储区(SRAM1还是SRAM2)可以由外部信号来控制,而普通双口RAM则必须由地址线来控制[5]。

FIFO可以进行双端操作,但是数据必须先进先出,不能进行随机性的访问,从容量大小来看,双口RAM比FIFO要大一些,但总的来说,这两种缓冲结构的存储容量还是相对较小,并不适合于高速视频处理系统[6]。乒乓缓存结构的上述特点决定了可以用相对便宜的高速大容量SRAM、外围逻辑器件构成比双口RAM以及高速FIFO更适合高光谱视频处理系统所需要的缓冲存储器。

5 乒乓缓存结构设计

实现乒乓缓存结构的关键是SRAM的选择以及控制器的设计。通常两片SRAM都选用两个速度、容量以及其它特性完全相同的静态存储器,这是由乒乓缓存结构实际工作时电路状态转换的对称性决定的。SRAM器件的速度应高于外部电路所要求的数据输入、输出速度,其容量应不小于需要缓存的数据量[7]。

在高光谱红外视频处理系统设计中,经过视频处理操作之后的光谱图像数据需按照特定时序,利用Cameralink接口传输至后续处理单元。由于红外光谱图像像素处理时钟与Cameralink工作时钟是不相同的,而乒乓缓存结构是两个异步时钟域间的数据传输的一种有效解决方案。

FPGA把经过视频处理操作之后的数据缓存于外接的SRAM,使用两片SRAM对数据实现乒乓,利用控制逻辑按照一定的节拍对两片SRAM进行反复切换操作,使输入输出两端的数据连续不断。

乒乓缓存控制原理如图3所示。经过处理后的光谱图像数据端总是写入SRAM进行缓存,因此该端口只控制写使能而禁止读使能;同理,要生成Cameralink时序的数据总是从SRAM进行读取,该端口只需控制读使能而禁止写使能。

本系统中的乒乓缓存周期设定为一帧光谱图像时间。乒乓结构初始设置SRAM1可写,在第一个缓存周期,图像处理后数据将写入SRAM1。在写入的同时,对写入像素数进行计数,本系统的红外光谱图像分辨率为320×256,当计数器等于320×256,即一帧图像数据完成写入时,对数据选择单元进行切换,将SRAM1置于可读,将SRAM2置于可写。此时启动Cameralink时序生成模块,将SRAM1中的缓存数据读出并按照标准Cameralink时序发送出去;同时,可以启动第二帧光谱图像数据写入,将之缓存入SRAM2中。此后重复上述过程,即可实现数据的格式转换和连续传输。

如前所述,图像像素处理时钟与Cameralink工作时钟是不同的,因此乒乓缓存结构的输入和输出端分属两个异步时钟域。而数据选择单元的切换信号是在图像像素处理时钟域中生成,因此在Cameralink时钟域中使用该切换信号之前需要先进行同步化处理。

6 仿真验证与实验分析

本系统中,乒乓缓存控制器与SRAM驱动器采用Verilog HDL编写,并编写相应Testbench,利用Modelsim软件进行RTL仿真,仿真波形如图4所示。当控制信号wr_switch信号为0时,FPGA向SRAM1中写入经过处理后的光谱图像数据,Cameralink模块从SRAM2中读取上一帧光谱图像数据(第一帧除外);当wr_switch为1时,FPGA改向SRAM2中写入处理后的光谱图像数据,Cameralink从SRAM1中读取上一帧光谱图像数据,此后反复循环此过程。

将该程序模块加入高光谱红外图像处理系统程序中进行联调,通过JTAG端口下载入FPGA,实验表明,乒乓缓存结构工作稳定可靠,系统运行正常。

7 结束语

本文重点分析了乒乓缓存结构的工作原理和实现方法,并结合高光谱红外视频处理系统的高实时性、大数据量等特点,讨论了基于乒乓缓存结构的高光谱红外图像Cameralink输出的实现方法。经过仿真和实验说明,该乒乓结构非常适合对视频数据流进行流水线式处理,可以高效完成大量实时视频数据的无缝缓冲和处理,对提升高光谱视频处理系统的工作效率具有重要作用。

[1] 赵慧洁,周鹏威,张颖等.声光可调谐滤波器的成像光谱技术[J].红外与激光工程,2009,38(2):189~193.

[2] 李武森,迟泽英,陈文建.高速DSP图像处理系统中的乒乓缓存结构研究[J].光电子技术与信息,2005(3):76~79.

[3] 王智,罗新民.基于乒乓操作的异步FIFO设计及VHDL实现[J].电子工程师,2005,31(6):13~16.

[4] 周如辉.实时视频处理系统中乒乓缓存控制器的设计[J].电子元器件应用,2006(4):66~68.

[5] 刘书明,罗军辉.双口RAM在DSP系统中的应用[J].国外电子元器件, 2002(11):64~66.

[6] 唐跃平,韩存兵,李咏强.双口RAM与FIFO芯片在数据处理系统中应用的比较[J].微机与应用,2000(9):27~28.

[7] 杨朋林,张晓飞.FPGA控制实现图像系统视频图像采集[J].计算机测量与控制,2003,11(6):451~454.

Design of Ping-pong Buffer Structure for HyperspectralInfrared Imaging System

ZHOU Yang YANG Hong-hai LIU Yong FU Qiang

(Beijing Aerospace Institute for Metrology and Measurement Technology, Beijing 100076,China)

A ping-pong buffer structure belonging to the hyperspectral imaging system is introduced which can effectively coordinate data transmission and processing speed by comparing with two other common ways of caching. The operation and control principle of ping-pong buffer structure is discussed. Based on the platform which consists of high-speed large-capacity SRAM and high-performance FPGA device,a ping-pong buffer structure to adapt to the hyperspectral imaging data transmission system is designed. Also the RTL simulation and the board-level verification are completed. Experiments show that this structure is efficient at seamless buffering and processing the real-time video data, and effectively improves the efficiency of the system,and proved to be stable and reliable.

Hyperspectral imaging Ping-pong Buffer structure FPGA

周阳( 1991-) ,男,主要研究方向: 光谱成像系统设计及图像处理系统设计。

2017-02-26,

2017-03-02

1000-7202(2017) 02-0001-04

10.12060/j.issn.1000-7202.2017.02.01

TN219

A

猜你喜欢
数据流红外光谱
优先级驱动的泛化航电网络实时性能分析
基于三维Saab变换的高光谱图像压缩方法
网红外卖
基于3D-CNN的高光谱遥感图像分类算法
闪亮的中国红外『芯』
汽车维修数据流基础(上)
汽车维修数据流基础(下)
基于XML的数据流转换在民航离港系统中应用
8路红外遥控电路
TS系列红外传感器在嵌入式控制系统中的应用