微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 消费类电子 > 基于DSP和FPGA的电视观瞄系统设计

基于DSP和FPGA的电视观瞄系统设计

时间:09-02 来源:电子产品世界 点击:

FPGA设计

系统中,FPGA主要完成对视频图像的旋转算法实现、图文混合、逻辑控制和部分I/O操作等工作。正是基于这样的考虑,选用了Altera公司的StratixII系列中的EP2S30F484I4芯片。StratixII FPGA放弃了传统的查找表(LUT)结构,使用一种创新的自适应逻辑模块(ALM)作为FPGA的基本结构单元。与第一代Stratix相比,StratixII FPGA的逻辑密度是前者的2倍,速度也快了50%。EP2S30F484I4有13552个自适应逻辑模块(ALM),33 880等效逻辑单元(LE),片上RAM为1369728bit,还有12个锁相环(PLL)。

FPGA控制单元是在QuartusII 5.0环境下开发的,消像旋处理是软件设计的关键。数字视频由红外热像仪输出,格式为差分输出。包括如下信号:V_CLK(14.5MHz),V_LE(行有效)、V_FE(场有效)、V_EOF(奇偶场标志)、V_SYN(复合同步)、V_D[7..0](8bit数据)。该数字视频经过消像旋处理后仍按原格式输出。图像分辨率为(768×576)像素/帧。

由于旋转后图像像素点坐标不再是整数,故旋转后必须对像素点灰度进行插值运算。但是如果采用高阶数的插值运算,其运算过程复杂,运算量也大。通过对系统显示要求和方位解算器精度的综合估算,本系统进行了8倍硬件插值,在像素的水平方向进行2倍插值,垂直方向上进行4倍插值。为了保证插值和图像显示的连续,本系统利用8片IS61LV12048(1024K×8bit的高速SRAM)芯片作场存储器(奇场和偶场)来交替地存储经过旋转处理后的数字图像数据。用于奇(偶)场操作的四片SRAM的20位地址线和写(WE)、读(OE)是一样的,只有各自的8位数据线和片选则是独立的。在一行像素全部传送到以后,和上一行像素的插值工作,还有行内插值就实时的完成了。

FPGA的基准时钟为来自DSP输出的32MHz时钟,经过片内数字时钟网络(PLL),可以得到系统所需要的多种时钟。

图文混合主要是控制观瞄系统显示屏的显示内容与相应的位置。利用EP2S30F484的内部RAM配置了许多独立的小RAM块,DSP根据不同的控制命令向这些RAM块写入不同的显示内容。FPGA再根据显示位置的分布,以记数的方式在屏幕上控制显示内容输出,达到图文混合。

由于StratixII FPGA使用SRAM来存储配置数据,而SRAM存储器在掉电后数据会丢失,因此每次StratixII FPAG上电时,必须下载一次配置数据。选择正确、合适的配置方案是利用FPGA进行设计的一个重要环节。Altera公司的FPGA共有多种配置方案,其中FPP、AS、PS、PPA和JTAG 配置方案适用于Stratix II系列FPGA。本设计采用了一种Advanced configuration Combine的配置方案。因为在系统研发阶段,考虑到要频繁地向FPGA写入设计文件,和EP2S30F484直接相连的标准JTAG必不可少,ByteMasterMV下载线一端接PC的并口,另一端与板上引出的JTAG底座连接。存储配置数据并完成自动配置的是EPCS16,它是Altera专为StratixII设计的增强型配置器件。当设计完成后,利用ByteMasterMV下载线直接将QuartusII输出的配置信息直接写入增强型配置器件中,以后在独立工作状态下,系统一上电启动,就开始了AS(FAST)方式的自动配置。

使用JTAG配置电路时,主要用到4个必需的管脚:TDI、TDO、TMS和TCK及一个可选的管脚TRST。在电路板上,要根据JTAG 标准的要求,引出2×5的JTAG底座。要注意的是,TMS和TDI管脚必须接1kΩ的上拉电阻。

QuartusII 5.0中一个非常实用的工具是软逻辑分析仪,它通过标准JTAG的方式就提供给用户可视化的在线分析能力。只要把ByteMasterMV电缆连接在EP2S30F484的JTAG头上,添加逻辑分析文件,在里面定义好要观察的信号,触发信号、方式,时钟,采样深度等参数,编译完成后从JTAG下载到FPGA内部,就可以运行,并实时的获得图形化的分析结果。

DSP设计

ADSP2183是的高速增强定点16位数字信号处理芯片。作为主控芯片,ADSP2183的接口主要可分为图像串行传输接口、串行通信接口、TL16C552A控制接口、字节存储区间接口、I/O空间接口、重叠数据存储区间接口、EZ-ICE控制接口及其他一些IO接口。对DSP主要就是设计存储器地址空间,ADSP2183有4个独立的存储空间:数据存储器、程序存储器、字节存储器、I/O存储器。它们都有相应的片选,支持外部访问。其中,字节存储器空间达到4MB,支持从廉价的8位存储器引导和实时存取。如图3所示,ADSP2183的所有数据线、地址线、存储器片选、中断控制和部分I/O都连到了EP2S30F484上。DSP可以像访问内部存储器一样,访问在FPGA内部配置出的RAM块,与FPGA高速的传送数据。DSP的三个外部中断源是有优先级安排的。因为如果在一场的20ms时间里面不能协助完成图像旋转所需要的计算,则会发生图像停滞或者跳变,严重影响观瞄效果。所以场中断是外部中断源中优先级最高的,接下来是UART产生的中断,因为它直接影响实时的图文混合与显示结果,最后才是控制台产生的中断,人手操作的时间和人眼感受变化的时间毕竟和以上两种相比有比较大的差异。



图3 系统硬件结构

工作频率是26.32MHz,所以这里接一个16MHz系统时钟,其内部自动输出一个精确的32MHz时钟到CLKOUT,同时给FPGA作为全局时钟使用。ADSP2183使用一个2×7的Emulator接口进行调试和仿真。
观瞄系统旋转的精确角度值由系统中的方位解算器产生,以粗通道、精通道各高8位的方式表示,其中解算器是36速比的。FPGA通过组合CS0、CS1、INH这三个片选信号发送给方位解算器,然后一次连续从总线上读回粗通道高、粗通道低、精通道高、精通道低总共四个8位二进制值的角度值,DSP按顺序把四个值组合成一个19位的完整角度值。这样的角度值最高精度达到 0.02个密位(6000个密位表示360°),满足系统设计提出的精度要求。由DSP完成消像旋的协同计算,将计算结果通过DSP的数据总线返回至FPGA。

ADSP2183内部没有非易失性存储器,程序和数据必须依靠外部扩展存储器。在系统加电或复位时,如果ADSP2183的BMODE和MMAP都为低,就会以BDMA(字节DMA)的方式通过DSP的引导加载(Boot loader)机制将程序和数据转移到片上存储器中执行。过程是:ADSP2183从字节存储器空间装载最前的32个程序存储器字,然后开始执行。装载程序就在这32个字中。装载程序连续的从字节口装载,直到整个程序装载完成为止。这里使用的是SST公司的SST29LE010,8位的1Mbit EEPROM作为DSP的字节存储器。它是3.3V单电源,可以分页,每页128字节,最多1024页,支持Page-Write(页写)和JEDEC标准的在线编程,使用起来方便可靠。

红外热像仪及其控制电路以RS422方式发送串行数据,TL16C552A按照通信协议接收到,自动转换成并行数据,ADSP2183直接用程序方式从数据总线上读回。DSP发送给热像仪的串行数据也是经过TL16C552A并串转换,再由RS422驱动的。考虑到ADSP2183和外部的通信任务就是控制命令、工作参数的发送和状态字的返回,数据传输需求较低且数据流零散的特点,这里使用德州仪器公司的TL16C552A双异步通信器就可以胜任了。

另外,系统中还加入了一个串行EEPROM器件,Microchip公司93LC66B Microwire 串行EEPROM。因为电视观瞄系统中需要一些动态的参数,来进行不同的处理以适应特殊的场合需求。比如不同光学机构的零位角度不同、命令的调整、系统运行过程对特定参数或者错误信息的记录,等等。都需要系统每次能够记录这些参数,并且在断电以后存储这些参数。由于参数并不多,所以不需要额外设计复杂的FLASH存储空间。93LC66B的使用十分方便,确定好EEPROM的ORG状态,就只需要把93LC66B的DI、DO、SCK和CS这几根引脚与ADSP2183的Flag引脚正确连接,然后在DSP中对Flag编程,就可以实现对EEPROM的各种操作。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top