一种多边形填充的硬件加速电路的制作方法

文档序号:12471385阅读:177来源:国知局

本发明属于图形产生技术领域,涉及一种多边形填充的硬件加速实现方法和电路。



背景技术:

多边形填充是计算机图形学的一项重要研究内容,其功能是将显示器屏幕上给定多边形闭合区域内的所有像素单元都修改成指定的颜色数据。现有的多边形填充算法一般采取软件算法方法实现,如种子填充算法、扫描线填充算法、边标志填充算法等。其特征都是由软件计算出需要填充的多边形区域内的所有像素颜色数据并写入帧存。

随着技术的发展,液晶显示器的分辨率越来越高,涉及到的多边形填充需求越来越多,需要显示的画面内容也越来越复杂,这对多边形填充电路提出了更高的要求。而目前已有的软件算法实现多边形填充方法存在以下缺陷:算法复杂、多边形填充效率低、难以满足高分辨率和实时性应用需求。



技术实现要素:

本发明的目的:提供一种易于实现、可扩展性强、效率高、硬件实现的多边形填充电路。

为了适应机载座舱液晶显示器向高分辨率、高画面复杂度发展的趋势,提出一种、高性能、易实现的多边形填充实现方案,采用DSP数字信号处理器1和FPGA可编程逻辑器件2作为主要处理器件,二者对第一帧存8和第二帧存9进行乒乓操作,由DSP数字信号处理器1将待填充的多边形边界的标记信息和颜色信息写入第一帧存8或第二帧存9,由FPGA可编程逻辑器件2按照扫描顺序逐点逐行地读取第一帧存8或第二帧存9中的像素标记和颜色信息,由状态机5对标记信息进行状态转换处理,同时对颜色数据进行处理,并将处理后的颜色数据由帧存控制器3写入第一帧存8或第二帧存9,以此实现多边形的硬件填充。

本发明的技术方案:一种多边形填充的硬件加速电路,所述电路包括:DSP数字信号处理器1、FPGA可编程逻辑器件2、第一帧存8和第二帧存9;

FPGA可编程逻辑器件2包括帧存控制器3、时序模块4、状态机5、标记数据寄存器6、颜色数据寄存器7;

其中,帧存控制器3分别与DSP数字信号处理器1、第一帧存8、第二帧存9、时序模块4、状态机5、标记数据寄存器6、颜色数据寄存器7相连;

时序模块4、标记数据寄存器6、颜色数据寄存器7同时还分别与状态机5相连;

所述DSP数字信号处理器1通过帧存控制器3将像素数据写入第一帧存8或第二帧存9,写入的数据是包含了像素颜色信息和标记信息的综合数据;

所述的DSP数字信号处理器1和所述的FPGA可编程逻辑器件2经由帧存控制器3对第一帧存8和第二帧存9采取乒乓操作方式,并以时序模块4所发出的场同步信号为周期进行交替切换;

所述的FPGA可编程逻辑器件2对第一帧存8或第二帧存9操作期间,按照屏幕扫描顺序,对像素数据进行逐点逐行处理,对每一个地址内的像素数据的处理包括读取和写入两种操作,并且在一个像素时钟周期内外完成;

所述的FPGA可编程逻辑器件2在对第一帧存8或第二帧存9的每一个地址单元操作分两步进行,第一步为读取操作,将帧存中的像素颜色数据读出显示;第二步为写入操作,在同一帧存地址上写入经过处理的颜色数据信息;

所述的FPGA可编程逻辑器件2在读取第一帧存8或第二帧存9中的像素数据时,对读出的像素数据中包含的颜色信息由颜色数据寄存器7进行寄存处理,对读出的标记信息由标记数据寄存器6进行寄存处理;

所述的标记数据寄存器6将像素标记信息发送至状态机5,颜色数据寄存器7将像素颜色信息发送至状态机5,由状态机5根据上一标记状态和当前标记状态信息和上一状态进行状态转移处理,同时将处理后的像素颜色信息送至帧存控制器3,由其写入第一帧存8或第二帧存9。

本发明的有益效果:本发明多边形填充硬件加速电路以DSP数字信号处理器1和FPGA综合可编程器件2作为主要处理芯片,采用FPGA可编程逻辑器件1内部的标记数据寄存器6和颜色数据寄存器7对DSP数字信号处理器2预置入第一帧存8或第二帧存9的多边形边界像素标记信号和颜色信号进行寄存处理,由状态机5对标记和颜色信息作标记状态转移和颜色数据处理,并在相应的多边形内部区域填充上处理后的颜色。本方案采用硬件实现多边形区域填充,方案简单易行,硬件实现效率高,降低了软件算法的复杂度,提高了多边形填充的效率和图形产生和显示的效率。本多边形填充硬件加速电路可满足各种不规则多边形的像素填充需求,并可在一幅画面中完成多个多边形的填充。

附图说明

图1是本发明多边形填充硬件加速电路的原理框图;

其中,1-DSP数字信号处理器、2-FPGA可编程逻辑器件、3-帧存控制器、4-时序模块、5-状态机、6-标记数据寄存器、7-颜色数据寄存器、8-第一帧存、9-第二帧存。

具体实施方式

下面结合附图对本发明做详细的说明。

一种多边形填充的硬件加速电路,所述电路包括:DSP数字信号处理器1、FPGA可编程逻辑器件2、第一帧存8和第二帧存9;

FPGA可编程逻辑器件2包括帧存控制器3、时序模块4、状态机5、标记数据寄存器6、颜色数据寄存器7;

其中,帧存控制器3分别与DSP数字信号处理器1、第一帧存8、第二帧存9、时序模块4、状态机5、标记数据寄存器6、颜色数据寄存器7相连;

时序模块4、标记数据寄存器6、颜色数据寄存器7同时还分别与状态机5相连。

所述的DSP数字信号处理器1,用于进行绘图算法运算,得到多边形边界的像素数据和地址数据,像素数据是包含了标记信息和颜色信息的综合数据,其中标记信息是两位二进制数据,有三种状态,分别为填充标记、结束标记、空标记;颜色信息是RGB三色分量数据。沿画面扫描方向,将开始填充处的多边形边界像素置上填充标记,将结束填充处的多边形边界像素置上结束标记,其余不需填充位置像素置上空标记。

所述的帧存控制器3,用于接受DSP数字信号处理器1和FPGA可编程逻辑器件2对帧存器件的访问请求,对第一帧存8和第二帧存9的访问以乒乓操作方式进行,并以时序模块4产生的场同步信号为周期进行交替切换,某一场周期当DSP数字信号处理器1访问其中一个帧存时,FPGA可编程逻辑器件2访问另一个帧存,下一场周期DSP数字信号处理器1访问前一场FPGA操作过的帧存,FPGA可编程逻辑器件2访问前一场DSP数字信号处理器1操作过的帧存。DSP数字信号处理器1将运算得到的像素地址信号和像素数据信号通过帧存控制器3写入某一帧存,下一场,由FPGA可编程逻辑器件2对该帧存中DSP数字信号处理器1写入的标记数据和颜色数据进行填充加速处理。

所述的FPGA可编程逻辑器件2,按照扫描顺序逐点逐行地对第一帧存8或第二帧存9进行读写操作。FPGA可编程逻辑器件2访问帧存的时钟频率由时序模块4对像素时钟进行倍频产生,是像素时钟频率的两倍。FPGA可编程逻辑器件2对第一帧存8或第二帧存9中每个地址单元的像素数据操作分为两个步骤,第一步骤为读取操作,对应于该地址单元的第一个帧存操作时钟周期,将DSP数字信号处理器1写入帧存的像素数据读出显示,同时对像素数据中的标记信息和颜色信息分别做寄存处理,标记信息由标记数据寄存器6寄存,颜色数据由颜色数据寄存器7寄存;第二个步骤为写入操作,对应于该地址单元的第二个帧存操作时钟周期,根据状态机5对标记数据和颜色数据的处理结果,将相应的颜色数据回写入当前操作的帧存地址单元。

所述的状态机5,包含三种状态,分别为当前像素输出状态、填充状态、结束填充状态,每种状态下相应地输出处理后的像素数据。状态机5的初始状态为当前像素输出状态,根据标记数据寄存器6发出的标记信息,以像素时钟为周期进行状态转移处理。当状态机5处于当前像素输出状态时,如果接收到的像素标记是空标记,则状态机保持在当前像素输出状态,FPGA可编程逻辑器件2读出当前地址的像素颜色信息,并在该帧存地址单元回写入全零数据将其清空;如果接收到的像素标记是填充标记,则状态机5转换为填充状态,FPGA可编程逻辑器件2在读出当前地址的像素颜色信息的同时,将该颜色数据寄存,并将该颜色数据回写入当前帧存地址单元。当状态机5处于填充状态时,如果接收到的像素标记是空标记,则状态机保持在填充状态,FPGA可编程逻辑器件2输出颜色数据寄存器7寄存的颜色数据,并将该颜色数据回写入当前帧存地址单元;如果接收到的像素标记是结束标记,状态机5转换到结束填充状态,FPGA可编程逻辑器件2输出颜色数据寄存器7寄存的颜色数据,并在该帧存地址单元回写入全零数据将其清空。当状态机5为结束填充状态时,如果接收到的像素标记为空标记,状态机5转换到当前像素输出状态,FPGA可编程逻辑器件2读出当前地址的像素颜色信息,并在该帧存地址单元回写入全零数据将其清空。

综上所述本发明多边形填充的硬件加速电路提出一种易实现、可扩展性强、效率高的多边形填充硬件实现方案,采用DSP数字信号处理器1和FPGA可编程逻辑器件2作为主要处理器件,二者对第一帧存8和第二帧存9进行乒乓操作,由DSP数字信号处理器2将待填充的多边形边界的标记信息和颜色信息写入第一帧存8或第二帧存9,由FPGA可编程逻辑器件2按照扫描顺序逐点逐行地读取帧存中的像素标记和颜色信息,由状态机5根据标记信息进行状态转换处理,同时对颜色数据进行处理并将处理后的颜色数据由帧存控制器3写入第一帧存8或第二帧存9,以此实现多边形的硬件填充。

所述的DSP数字信号处理器1,实施时,可选用AD公司或者TI公司的DSP器件。所述的FPGA可编程逻辑器件2,实施时,可选用Altera公司或者Xilinx公司的任一系列FPGA。在选定可编程逻辑器件后,帧存控制器3、标记数据寄存器6、颜色数据寄存器7、时序模块4、状态机5由VHDL或者Verilog硬件描述语言编程实现,也可采用图形输入方式实现。所述的第一帧存8和第二帧存9,可选用常规的随机静态或动态存储器。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1