一种军用机载座舱显示系统中基于fpga的图形加速器的制造方法
【技术领域】
[0001]本发明属于视频显示技术领域,尤其涉及一种军用机载座舱显示系统中基于FPGA的图形加速器。
【背景技术】
[0002]军用机载座舱显示系统为飞行员与飞行器系统、周围作战环境之间最重要的人机界面接口之一,根据不同的飞行阶段、飞行任务,为飞行员提供他们最需要的信息。
[0003]目前军用机载座舱显示系统的图形处理采用DSP+FPGA的架构,如图1所示,其中DSP进行顶点坐标的计算、部分图元的光栅化,而FPGA里仅执行填充图元的光栅化、视频叠加和显示功能。所述DSP是数字信号处理器,优点是有很强大的定点和浮点运算能力,对复杂的数学运算可以很短时间内完成;在该方案中,DSP负责将FPGA传输过来的需要进行顶点计算的图元数据进行计算,将输入坐标系的顶点坐标转换为屏幕坐标系中的顶点坐标,然后对点、直线、多边形的边进行光栅化后再传输给FPGA进行显示。所述FPGA是现场可编程门阵列,优点对大量数据采集、流水线操作和逻辑译码有很强大处理能力;在该方案中,FPGA负责将筛选需要复杂计算的图元数据并传输给DSP,同时接收DSP处理后的数据进行显示,还有采集输入视频信号并与自生成的图元画面进行叠加显示。
[0004]此方案中,需要DSP和FPGA两个核心器件来完成所有功能,DSP作为一个协处理器专门负责运算,由此整个数据流需要通过DSP传输一个来回,虽然运算时间缩短,但是增加了数据通过总线传输的时间,使设计复杂化;需要软件开发人员和逻辑开发人员来协同完成开发,增加了人力成本。
【发明内容】
[0005]本发明要解决的问题是提供一种军用机载座舱显示系统中基于FPGA的图形加速器,通过FPGA实现图元的顶点的计算、光栅化、视频叠加与显示功能,具有简化设计复杂度,减小开发成本的特点。
[0006]为解决上述问题,本发明采用如下的技术方案:
[0007]一种军用机载座舱显示系统中基于FPGA的图形加速器,包括:FPGA芯片、分别与FPGA芯片连接的第一帧存、第二帧存、第三帧存、第四帧存、字符存储器,所述FPGA芯片包括:中断检测模块、图像生成模块、时钟管理模块以及显示控制模块,其中,
[0008]所述中断检测模块,用于检测外部DPRAM发送中断为绘图中断时,读取本中断对应地址空间的绘图命令,并将所述绘图命令缓存在命令缓冲区,所述绘图命令包括:状态设置指令、图形绘制指令和字符显示指令,所述状态设置指令包含设置颜色空间指令、设置背景颜色指令和设置视频叠加指令;
[0009]所述图像生成模块,用于按照顺序读取并解析命令缓冲区中的图形绘制指令和字符显示指令,并调用预存的图元绘制模块和字符读取控制模块执行相应的图元绘制和字符读取,将绘制完成的图元数据和读取的字符数据存入第一、二帧存中,同时读取并解析命令缓冲区中的设置颜色空间指令和设置背景颜色指令,将得到的天地球参数信号发送给所述显示控制模块,读取并解析命令缓冲区中的设置视频叠加指令,将得到的视频叠加信号和视频叠加因子发送给所述显示控制模块;
[0010]所述显示控制模块,用于读取第一、二帧存中绘制完成的图元数据,并根据获取的天地球参数信号对绘制完成图元数据中的天地球图元进行颜色的填充;同时根据获取的视频叠加信号,将第一帧存或第二帧存的图元数据与第三帧存或第四帧存的视频数据之间进行画面的同步,并将绘图帧存的数据与外部视频帧存的数据根据视频叠加因子加权相加后,将最终的数据发送给显示屏;
[0011]所述时钟管理模块为FPGA芯片的工作提供时钟信号。
[0012]作为优选,所述FPGA芯片还包括:自检模块,用于根据所述中央处理器发送的检测指令对军用机载座舱显示系统中进行上电中断清除和上电自检。
[0013]作为优选,字符存储器用于存储一、二级汉字库的点阵数据,所述第一帧存和第二帧存用来存储绘制图像的所有像素点的对应的颜色信息,所述第三帧存、第四帧存用来存储外视频的图像的所有像素点的颜色信息。
[0014]作为优选,所述图形绘制指令包含绘制点、绘制线、绘制多边形、绘制圆、绘制圆弧、绘制全罗盘、绘制天地球,所述字符显示指令包含字符编码和字符大小;所述图元绘制模块根据图元绘制指令进行图元顶点坐标的计算、基本图元的光栅化,生成图元像素点的位置和颜色数据,所述字符读取为字符读取控制模块根据字符显示指令中的字符编码和字符大小,查找对应的字符数据存放首地址,然后读取字符存储器里面的该字符所有的数据。
[0015]作为优选,所述FPGA芯片还包括外部视频采集模块,分别与第三帧存和第四帧存连接,用于采集外部视频数据,将每一帧的外视频画面的像素点的颜色数据按照顺序依次存入到第三帧存或第四帧存中。
[0016]作为优选,所述中断检测模块用于检测中断为位图中断时,读取外部DPRAM里存放的位图位置和颜色数据,缓存到位图RAM中。
[0017]作为优选,若图形生成模块读取并解析的命令为显示位图时,将位图RAM中的数据读取并缓存到第一、二帧存
[0018]本发明的军用机载座舱显示系统中基于FPGA的图形加速器采用FPGA芯片根据收到的绘图命令进行图元顶点坐标的计算、光栅化以及视频叠加,并在显示屏上显示相应的画面;具有简化设计复杂度,减小开发成本的特点。
【附图说明】
[0019]图1为现有技术中军用机载座舱显示系统中图形处理的结构示意图;
[0020]图2为本发明实施例军用机载座舱显示系统中基于FPGA的图形加速器的结构示意图;
[0021]图3A、3B为本发明实施例图形加速器的时钟管理模块的时序图,其中,图3A为行同步信号时序图,图3B为场同步信号时序图。
【具体实施方式】
[0022]下面结合附图和具体实施例对本发明做进一步的说明。
[0023]如图2所述本发明实施例提供一种军用机载座舱显示系统中基于FPGA的图形加速器包括:FPGA芯片、分别与FPGA芯片连接的第一帧存、第二帧存、第三帧存、第四帧存、字符存储器,所述FPGA芯片包括:中断检测模块、图像生成模块、时钟管理模块以及显示控制模块,其中,
[0024]字符存储器用于存储一、二级汉字库的点阵数据,第一帧存和第二帧存用来存储绘制图像的所有像素点的对应的颜色信息,第一帧存和第二帧存为绘图帧存,第三帧存、第四帧存用来存储外视频的图像的所有像素点的颜色信息,第三帧存、第四帧存为外部视频帧存。每个屏幕像素的点对应帧存的一个存储地址,这个地址存放的就是这个点的颜色信息。
[0025]帧存之间的操作方法,以第一帧存和第二帧存为例,:第一帧存和第二帧存两个帧缓存之间通过乒乓操作的方式运行,同一时间段内(16.67ms),第一帧存运行在写模式,即将当前帧的画面中解析好的像素颜色写入第一帧存里;与此同时第二帧存运行在读模式,即将第二帧存中上一帧的颜色信息读出进行显示。在下一个时间段内(16.67ms)第一帧存和第二帧存的操作模式调换,第一帧存将当前帧的颜色读出显示,第一帧存存储下一个帧的画面颜色。这样周期性的交替运行保证了一个连续的画面能够正常显示。
[0026]所述中断检测模块,用于检测外部DPRAM发送中断为绘图中断时,读取本中断对应地址空间的绘图命令,所述绘图命令为中央处理器对一个帧画面的全部绘图命令,并将所述绘图命令缓存在命令缓冲区fifo_layerO或者fifo_layerl中,由于命令缓冲区有两个,用于乒乓操作,一个命令缓冲区存放上一帧的所有绘图指令提供给图形生成模块解析绘图;另一个缓冲区存放下一个帧的绘图指令,间断性将中央处理器对下一个帧的绘图指令按先后顺序存放在里面。
[0027]另外,当所述中断检测模块检测外部DPRAM发送中断为位图中断时,读取外部DPRAM里存放的位图位置和颜色数据,缓存到位图RAM中。
[0028]其中,所述外部DPRAM为双端口,一端口通过PCI总线桥接器与中央处理器连接,另一端口直接与FPGA芯片连接。所述外部DPRAM两端都提供一个中断信号,当中央处理器通过PCI总线桥接器给DPRAM传输绘图指令,传输完了以后中央处理器会给所述DPRAM的一个特定地址一个写操作,然后DPRAM就会有相应的中断信号给FPGA,表示当前帧所有的绘图命令已经发送完毕,FPGA检测到这个中断以后就会读取DPRAM中的数据,即为所有的绘图指令。
[0029]所述绘图命令包括:状态设置指令、图形绘制指令和字符显示指令,所述状态设置指令包