一种基于单片FPGA的小型非制冷红外机芯的制作方法

文档序号:12554136阅读:371来源:国知局
一种基于单片FPGA的小型非制冷红外机芯的制作方法与工艺
本发明涉及红外成像领域、具体涉及为一种小型化非制冷机芯。
背景技术
:非制冷红外机芯在军民领域都有着广阔的应用前景,但由于长期受西方国家封锁我国在此领域与国际先进水平还存在较大差距。国内许多单位在非制冷机芯开发的时候往往采用基于FPGA+DSP的处理架构。这种机芯由于采用了双处理系统的架构存在体积和功耗过大的问题,同时由于DSP采用多帧缓存处理的方式,这无疑会导致系统延时过长实时性较差,DSP系统还存在算法可移植性差等问题。传统的DSP+FPGA设计往往常用SRAM或者是SDRAM,SRAM的读写速度最高为100MHZ而SDRAM最高位167MHZ,较低的运行速度直接导致了红外系统需要采用4片或更多存储器芯片,增加了系统体积和功耗。这些弊端决定了该处理架构不适用于一些特别的定制领域如手持便携设备、高速图像采集设备等。技术实现要素:本发明图像处理部分采用硬件逻辑语言设计,同时系统采用FPGA内部集成的NIOSII软核作为中央控制器,提出了一种基于控制寄存器组的软硬交互的控制方式,将众多功能控制集成于一组寄存器,通过编址实现控制,具有较高的集成度和可控性。本发明采用DDR3的设计,DDR3有较高的运行速度可达1600MHZ,而红外图像处理的像素时钟频率较低为6MHZ,通过采用DDR3仲裁模块设计可以协调各个图像处理算法的读写需求,只需要一片就能满足系统运行,有效地减小了系统体积和功耗。本发明的技术方案如下:一种基于单片FPGA的小型非制冷红外机芯,其特征在于包括探测器模块(01)、驱动模块(02)、FPGA控制模块(03)和电源模块(04),红外信号及辐射信号与所述的探测器模块(01)连接,同时所述的探测器模块(01)另外一端与所述的驱动模块(02)相连接;所述的驱动模块(02)分别与所述的探测器模块(01)及FPGA控制模块(03)相连接,同时与所述的电源模块(04)连接;所述的FPGA控制模块(03)分别与所述的驱动模块(02)及所述的电源模块(04)相连接;所述的电源模块(04)分别与所述的FPGA控制模块(03)及所述的驱动模块(02)相连接。进一步的,所述的驱动模块(02)包括一探测器配置及校正数据器(021),进一步的,所述FPGA控制模块(03)包括NIOS中央控制器(032)、控制寄存器组(033)和FPGA功能模块组(031)。所述NIOS中央控制器(032)与所述FPGA功能模块组(031)之间通过总线与所述控制寄存器组(033)相连。所述FPGA功能模块组(031)上包探测器驱动时序生成器(0311)、DDR3控制器(0312)、FLASH控制器(0313)、红外图像处理器(0314)。进一步的,所述FPGA功能模块组(031)采用硬件逻辑语言。进一步的,所述控制寄存器组(033)被设定为一独立外设IP核。进一步的,所述的DDR3控制器(0312)包括两片DDR3,作为NIOSⅡ中央控制器运行外部存储器的第一DDR3片,包括DDR3仲裁控制器、用来存储图像及校正数据的第二DDR3片。进一步的,所述DDR3仲裁控制器采用异步时钟缓冲技术。本发明以单片FPGA为核心的电路设计,在功耗体积上以及实时性上相对传统红外机芯有较大优势,该系统充分利用FPGA在设计方面的灵活优势,基于大规模FPGA的片上可编程技,在FPGA芯片上实现嵌入式系统的C语言编程和逻辑程序编程。同时NIOSII中央控制器将驱动程序、图像处理算法以及应用程序与硬件接口有效结合。方便整个系统的裁剪、定制、升级和小型化。附图说明附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:图1基于单片FPGA的小型非制冷红外机芯总体结构;图2FPGA控制模块结构;图3探测器时序驱动模块设计;图4DDR3控制器仲裁模块控制流程图;图5控制寄存器组串口IP核端口示意图;图6NIOSII中央控制器程序流程图。具体实施方式以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。如图1所示,基于单片FPGA的小型非制冷红外机芯由探测器模块(01)、驱动模块(02)、FPGA控制模块(03)和电源模块(04)四部分组成,其中探测器模块(01)采用国产25µm氧化钒探测器。红外信号及辐射信号与探测器模块(01)连接,同时探测器模块(01)另外一端与驱动模块(02)相连接;驱动模块(02)分别与探测器模块(01)及FPGA控制模块(03)相连接,同时与电源模块(04)连接;FPGA控制模块(03)分别与驱动模块(02)及电源模块(04)相连接;电源模块(04)分别与FPGA控制模块(03)及驱动模块(02)相连接;FPGA控制模块(03)包括NIOS中央控制器(032)、控制寄存器组(033)和FPGA功能模块组(031)。NIOS中央控制器(032)与FPGA功能模块组(031)之间通过总线与控制寄存器组(033)相连;FPGA功能模块组(031)上包探测器驱动时序生成器(0311)、DDR3控制器(0312)、FLASH控制器(0313)、红外图像处理器(0314)。FPGA控制模块(03)上的FLASH存储器(0313)用来存储一些非均匀性参数以及其它需要掉电存储的信息供开机后调用,硬件上FPGA芯片选用Cyclone5系列的5CEFA7F31C7NES,DDR3选用MT41J18M16JT-125,FLASH芯片选用M25P64。整个系统中FPGA首先对探测器发送工作时钟、积分时间、TEC参数、OCC参数等配置及校正信号,为探测器正常工作提供正确的时序,在保证探测器能正常工作的情况下对探测器送来的14bit量化图像信号进行红外图像算法处理,这些处理包括单点校正算法、两点校正算法、盲元补偿、直方图均衡图像增强、非均匀性校正等。在完成各项时序控制和实时图像处理后,红外视频信号将在PAL制模拟监视器上显示。如图2所示,FPGA控制模块(03)包括NIOS中央控制器(032)、控制寄存器组(033)和FPGA功能模块组(031)。所述NIOS中央控制器(032)与所述FPGA功能模块组(031)之间通过总线与所述控制寄存器组(033)相连。NIOSII中央控制器(032)为整个系统的控制核心部分主管机芯系统的流程控制。FPGA功能模块组采用硬件逻辑语言(VHDL),满足高实时性的设计要求。控制寄存器组(033)被设定为一独立外设IP核,用来存储各个逻辑模块的数据和控制指令。NIOSII中央控制器(032)与FPGA功能模块组之间通过Avalon总线与控制寄存器组相连进行数据传递和指令下达。如图3所示,探测器模块(01)由FPGA控制模块(03)的探测器驱动时序控制及采集器(0311)提供正确的时序,时序信号包括输入时钟(SCL)、帧使能信号(FS)、上电复位信号(Res_N)、配置信号(SDL、SDH)。像素时钟6MHZ,探测器时钟频率(SCL)为像素时钟频率的6倍。帧使能信号(FS)为高电平期间,配置信号(SDL、SDH)配置图像的行周期、积分时间。帧使能信号(FS)的下降沿表示一帧图像的开始,此时图像校正数据通过配置信号(SDL、SDH)输入到探测器,每行输入一次。上电后驱动模块(02)首先从FPGA控制模块(03)中获得探测器模块(01)配置参数,然后实时对探测器模块进行配置。上电后FPGA模块中的NIOSII控制器从Flash存储器中获取配置参数后将数据传送至驱动模块中的“探测器控制及矫正数据器”(021)进行探测器配制和图像数据矫正,并将矫正后的图像数据传回至FPGA控制模块的“探测器驱动时序控制及采集器”(0311)部件,这里主要指的是图像采集功能,进一步处理主要指的是图像数据交给红外图像处理部分,进行直方图拉升、非均匀性校正、图像增强、视频制式转换、菜单叠加等图像处理。驱动模块(02)的“探测器配制及校正数据器”(021)正常工作前需要为每个像素点寻找最优OCC片上非均匀性校正数据(后面简称OCC数据),调整OCC数据有两种实现方法。一是,本发明通过红外图像处理器进行算法处理,包括基于温区的自动非均匀性校正算法、直方图拉伸算法、图像增强算法、OCC寻优算法,盲元补偿算法。分析红外数据“videodata”的均匀性,不断调整OCC片上非均匀性校正数据输出直至“videodata”达到设定的均匀性指标。二是,通过Avalon总线NIOSII中央控制器相连,NIOSII中央控制器读取实时配置的OCC数据和所对应的图像数据,通过串口传至上位机,利用上位机软件图像处理软件,通过对采集到的多帧不同温度下图像进行像素灰度统计计算寻找单个像素的最佳线性工作区,并根据相关公式求出每个像素点的OCC对应配制值,最后将该配制字加载到探测器上。如图4所示,FPGA功能模块组(031)上的DDR3控制器(0312),共有两片DDR3,其中一片作为NIOSII运行的外部存储器,另一片则用来存储图像及校正数据。DDR3控制器的第二DDR3片,通过总线与DDR3仲裁模块连接,协调各个图像处理算法的读写需求。仲裁模块采用异步时钟缓冲技术,各图像处理模块只需要对仲裁模块提出访问申请并给出数据、地址、时钟等信号就能在周期内完成操作而不影响其他模块的读写。DDR3仲裁模块一端对外提供6组数据、地址与控制总线,供外部模块的数据读写要求,另一端通过中断请求的方式将6组数据总线合并为一组对外输出总线并连接NIOSII中央控制器的Avalon总线,对外传输数据。仲裁模块内部通过数据缓冲FIFO和时间片划分的方式实现6组数据总线的实时读写操作。如图5所示,控制寄存器组(033)串口IP核端口,设计独立的串口IP核,通过硬件加速解决多串口通讯问题。IP核采用Avalon总线架构,内部开设多组读写缓冲寄存器。NIOSII通过Avalon总线对这些寄存器进行读写操作。多组串口IP核,定义不同基地址就可以完成多串口与NIOSII之间的通信。不同于常规设计中的单串口模式,本发明的非制冷机芯需要将多个外部传感器所获得的信息实时加载至图像中显示,这些数据往往规模都较大有的还需要进行复杂校正。传统的基于时间片轮换的串口中断处理机制已不可避免的导致数据丢帧或降级系统响应。如图6所示,NIOSII中央控制器程序流程,红外机芯的NIOSII配置通过软件生成,本实施例中使用的是Qsys软件,Qsys是ALTERA最新一代的可视化SOPC工具。NIOSII程序通过不同地址设定读取各个控制器和外部IP核的数据,并发送指令给他们。NIOSII在上电初始化时负责把探测器参数从Flash中写入SDRAM;初始化完成以后NIOSII等待上位机指令并根据指令调用各个功能逻辑模块更新图像及图像界面中的参数。实验结果显示该红外机芯有着较高的图像均匀性和成像质量,各种功能能够满足正常使用要求。该系统成像质量较高、系统功耗小于2瓦、系统延时小于0.5毫秒,系统具有较强的可拓展性。具体结果见表1表1DM642DSP机芯与FPGA机芯性能对比系统体积/cm3功耗/w实时性/msDM642100×100×604.5W~5.5W80msFPGA40×40×501.4W~2W0.5ms当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1