首页 新闻资讯 技术资料 论坛 网站地图
存储器 AD/DA SOPC 电源系列 安防产品 CPLD/FPGA 计算机外设
电子元器件搜索:
IC库存(8958万) PDF资料(329万) IC价格 IC求购 资讯 技术资料
维库电子市场网是知名的电子元器件交易网站, 为电子生产企业提供IC库存和技术资料查询服务。
位置: 首页 > 详细信息
  FPGA在飞行仪表字符图形产生器设计中的应用
出处:嵌入式技术网 时间: 2007-11-15

摘  要:介绍飞行仪表字符图形产生器的工作原理和实现方法,并提出了一种针对飞行仪表显示图形特点的新型帧存结构,该帧存结构具有双缓冲和自动消隐等特点。文中讨论了采用大规模可编程逻辑器件FPGA设计的视频控制器和帧存控制器的方法。最后,重点介绍自动消隐帧存的原理和设计方法,该方法能大大加快飞行仪表显示画面的生成速度。
  关键词:飞行仪表;图形显示系统;字符产生器;数字信号处理器;现场可编程门阵列



  现代飞机座舱显示系统正在向综合化方向发展,向飞行员传递的飞机参数越来越依赖于图形显示。由于液晶显示器具有对比度高,在阳光下清晰可见及重量轻、视角大等特点,在国外已获得普遍应用[1]。目前,在国内,液晶显示器并没有在飞机上得到真正的应用,所用的几乎都是阴极射线管(Cathode-ray tube,CRT)显示器。作为显示系统核心部件的字符图形产生器,其性能如何,直接影响到整个系统的性能。国内字符图形产生器主要有两种形式,一种图形字符产生方法是用纯硬件产生,字符图形都用直线线段拟合产生,即简单矢量产生器。其优点是作图速度快,但字符图形不光滑,且无亮度补偿,所以,整个画面显得非常粗糙;另一种是用图形处理器产生图形,优点是图形显示美观,可以用软件补偿消除毛刺,但作图速度慢,实时性差,在显示罗盘等画面时出现跳跃感[2]。因此,研制高性能字符图形产生器仍然是一个亟待解决的关键技术,需要从硬件与软件两方面考虑,设计出高性能的字符图形产生器,既要做到图形显示清晰美观稳定,又要实时性强,无延时,无跳变。本文介绍现场可编程门阵列(Field programmable gate array,FPGA)在飞行仪表字符图形产生器设计中的应用:采用液晶显示屏,用FPGA设计了一个视频控制器,并针对飞行仪表所显示画面(如全罗盘画面)的特点,提出了一种新型的显示帧存结构,设计了具有自动消隐功能的帧存控制器。文中详细介绍了这两种控制器的设计方法,该设计方法也可应用于其它类似的民用场合,具有一定的实用参考价值。
1 字符图形产生器
  飞行仪表字符图形产生器结构框图如图1所示。字符图形产生器接收主机的显示信息,经处理后产生在显示屏上所要显示的各种字符和图形[3]。图1中,整个系统基于DSP+FPGA结构,由DSP(AD公司:ADSP21060)作为主图形处理器,FPGA(Xilinx公司:XC2S100)实现所有的控制、译码等逻辑,整个系统结构简单、体积小、可靠性高。主机信息通过一块双口RAM(IDT公司:71V04)来传送,DSP接收到双口 RAM中的参数信息后,进行图形处理(如扫描变换、反走样等),产生所要显示的像素信息,在帧频所允许的时间内,将显示像素送入FPGA。FPGA实现视频控制器和帧存控制器的功能。帧存采用双缓冲轮流切换的方法,在DSP向其中一个帧存写像素时,由FPGA构成的帧存控制器将另一个帧存中的像素顺序读出送给AMLCD(Active matrix liquid crystal display)显示,反之亦然。帧存中读出的像素数据与视频控制器产生的行场扫描时序相配合,在显示屏上显示正确稳定的图形。图中的帧存采用ISSI公司的61LV5128高速异步静态RAM,其读写时间为10 ns。AMLCD采用美国Korry公司的KDM710全彩色液晶显示模块,该模块为1.27 cm×1.27 cm,600×600分辨率彩色液晶显示模块,24位数字RGB输入。

2 视频控制器设计
  视频控制器实现的功能是根据所要驱动的彩色液晶显示屏的时序参数,产生相应行、场同步信号。KDM710显示模块的显示接口类似于常见的VGA接口。不同的是它需要提供像素时钟输入,从图1可以看出,视频控制器需要提供四个控制信号:行同步信号HSYNC、场同步信号VSYNC、数据使能信号DATAEN和像素时钟信号DCLK。根据KDM710所提供的时间参数,确定所要实现的时序如图2所示。图中,像素时钟(DCLK)周期为50 ns(频率为20 MHz),在经过630个像素时钟后产生一个低电平的行同步信号HS,而在经过612个行同步后,产生一个低电平有效的场同步信号VS。AMLCD输入的 RGB像素值只在数据使能DATAEN有效时才有效,也即在行、场消隐信号(HB,VB)电平为高时显示,因此,行场消隐信号的高电平有效期间必须是严格的600像素和600行。一般为了防止每行的第一个像素丢失,行同步脉宽B要与行同步后肩C的宽度一致,图中这两个参数都取为20个像素时钟[4]


  设计行场扫描时序,一般有两种方式:查找表方式和编程逻辑方式。查找表方式主要由存储芯片构成,如SRAM,EPROM,PORM等芯片。使用时,先根据所要产生的时序在存储单元写入相应的数值,查表时再从表内读出对应存储单元的数值,以形成扫描时序。用查找表法形成时序的方法存在硬设备体积大、计算烦琐的缺点。随着大规模逻辑芯片的出现,利用编程逻辑方法产生行场扫描时序是一个发展方向,这种方法具有电路简单、功能强、修改方便和可靠性高等优点[5]。图3为视频控制器的结构框图。在本设计中,点时钟DCLK由图形处理器DSP的系统时钟40 MHz经SpartanII芯片内置的DLL(Delay-locked loop)数字延迟锁相环二分频得到。点时钟驱动行时序生成器,产生行同步信号HS和行消隐信号HB,由行同步信号控制场同步信号的产生。设计中为避免产生毛刺,视频控制器的设计采用同步设计方法,如图3所示。行同步信号HS通过一个微分电路,产生一个点时钟周期宽的场时序生成器使能信号,在使能信号有效时,场时序生成器开始计数,并产生场同步信号VS和场消隐信号VB。行消隐信号HB和场消隐信号VB相与后即为数据使能信号DATAEN,该数据使能信号作为产生帧存地址计数器的计数使能,以保证在DATAEN信号为高时,将像素送给AMLCD模块显示。在DCLK的上升沿,帧存地址计数器加1,帧存SRAM经过一段延时后,像素数据出现在总
线上。在DCLK的下降沿AMLCD将数据读入。

3 帧存控制器设计
3.1 帧存控制器结构
  在飞机座舱综合图形显示系统中,“全罗盘画面”和“导航显示器”等画面都是需要实时变化的画面,这些画面需要根据飞机的参数实时变化。实时完成图形的改变有两个主要途径:(1)完全重画,这不仅意味着复杂的二维计算,而且需要在刷新时间之内,完成对帧存的整个重写,这种方法效率非常低。(2)只改变需要更改的那部分,这种方法需要研究算法,因为在编程中要确保图形操作只改变需要更改的那部分,往往需要对图形显示的状态作一串精确的记录,保持这一串存储记录需要非常大的数据结构,这不利于图形的运算[6]。而且对某个被显示的移动部件来说,实际上是先把它在老的位置擦除,再在新的位置生成,故对图形操作的工作量是加倍的。针对飞行仪表画面的特点,提出一种新的字符图形产生器显示帧存结构,该帧存结构采用两个帧存轮流切换的技术,并通过FPGA设计一个特殊的帧存控制器,使每个帧存具有自动消隐的功能。
  帧存控制器结构如图4所示,图中有两套控制总线:一个是DSP的控制总线,一个是由FPGA产生的控制总线。当DSP对帧存(1)进行写操作时, FPGA所产生的控制总线对帧存(2)进行读操作,将帧存(2)中的像素读出,反之亦然。FPGA对某个帧存进行读操作时,不是简单的读出,而是将读出操作分成两步:(1)将显示数据读入寄存器,(2)将背景数据写入同一地址的帧存,这种操作方式使一个帧存在读出所有的像素后,整个帧存仅存有背景颜色,从而在DSP对帧存进行写操作时,软件上不需要庞大的数据结构,同时也不需要进行消隐操作,这种帧存结构可以节省大量的DSP运算时间,DSP还可以对背景寄存器进行预先的设置,使背景寄存器的内容由用户定义。


3.2 帧存控制器实现方法
  如上节所述,具有自动消隐功能的帧存控制器设计中的一个关键问题是如何在一个像素时钟周期内,既读出数据,又要写入背景数据。为此,本文在系统中引入了多时钟设计,图5为实现自动消隐的时序图,图中有两个时钟,一个为像素时钟,频率为20 MHz,它由DSP的工作时钟40 MHz二分频而得。一个为消隐时钟,频率为80 MHz,它由40 MHz倍频而得。在Xilinx公司的SpartanII系列芯片中内嵌了4个DLL数字延迟锁相环,每个DLL可以倍频和1.5,2,2.5等分频。由 DLL实现的倍频和分频,可以保证在相位上的严格一致[7]。如图5所示,频率为80 MHz的消隐时钟将一个像素周期分为4个节拍,分别定义为S0,S1,S2,S3。其工作过程如下:在像素时钟的上升沿,地址总线addr的地址计数器加1,使帧存SRAM上的地址发生变化。在延时10 ns后,图形数据出现在数据总线上,由FPGA在状态S1读入锁存器,然后,FPGA切换数据总线方向,将背景数据送入数据总线,同时,送出WE负脉冲,在WE的上升沿将数据总线上的背景数据写入同一地址的帧存SRAM。考虑到线延时,设计中,将状态机的有效时钟边沿定义为消隐时钟的下降沿。

3.3 有关自动消隐的讨论
  具有自动消隐功能的帧存控制器,适用于显示图形数据较少且需要动态实时变化的画面,如全罗盘画面,80度罗盘画面等,这类画面所要显示的图形数据远远少于背景数据。如上所述,对于显示这种图形,帧存的自动消隐能大大减少DSP在组织数据结构和消隐老画面的时间。但是对于显示飞行仪表的其它需要大量填充的画面,如飞机座舱的全姿态指示仪(俗称天地球)及数字地图等画面,使用具有自动消隐功能的帧存控制器是不适宜的,因为这些画面需要对不同的区域填充不同的颜色[8],如果用硬件自动消隐前次存入的图形数据,则在下一次需要送入整幅图形数据,即使对于那些没有变化的填充图形,也需要重新送入,自动消隐反而增加了DSP的负担。这些需要大量填充画面的显示,需要在软件上研究算法,研究怎样只消隐变化了的填充区域,而保留没有变化的填充区域,或者研究如何用硬件实现高速的图形填充。
4 结束语
  字符图形发生器是航空综合图形显示系统的重要组成部分,字符图形发生器的性能好坏,直接影响到航空电子综合显示系统的性能。在字符图形发生器中应用FPGA技术,使电路结构简单,实现方式灵活,能实现一些很复杂的电路,同时也提高了整个字符图形产生器的可靠性,减少了设备的体积和重量。本文介绍的视频控制器和帧存控制器,已在实际的显示系统中应用。测试表明,这种设计方式能有效提高飞机全罗盘画面的旋转速度,对其它类似的应用场合也具有实际参考价值。

参考文献

[1] 杜海涛.电子飞行仪表的显示系统[J].南京航空航天大学学报,1998,30(2):229~234.
[2] Runyon K R.Application of an advanced graphicsprocessor[J].SPIE,Cockpit Displays,1994,2219:383~387.
[3] Thomsen SV,Hancock W R.Extending AMLCDtechnology into the space shuttle cockpit[J].SPIE,CockpitDisplays,1994,2219:118~129.
[4] Korry Electronics Corp.Interface controldocument KDM710.5X5 AMLCD[M].2001.12~14.
[5] 苏光大.微机图像处理系统[M].北京:清华大学出版社,2000.21~38.
[6] 孙家广,许隆文.计算机图形学[M].北京:清华大学出版社,1998.178~187.
[7] Xilinx Corp.Spartan-II2.5V FPGA family:func-tionaldescription[M].2001.7~20.
[8] Handley SJ,Allerton D J.The design of an EFISattitude indictor fora flightsimulator[A].ICAS-94-8.1.4[C].1994.282~292.

关闭】 【打印
相关专题  
应用产品
军工/航空航天
嵌入式开发新闻
通信产品
IC设计
存储器
安防产品
开发工具
测试测量
CPLD/FPGA
数控系统
消费电子
AD/DA
嵌入式硬件
汽车电子
电源系列
SOPC
工业控制
嵌入式系统
嵌入式软件
软件开发
医疗电子
传感控制
计算机外设
接口电路

© 2007 百斯嵌入式开发网 网站地图