一种基于水平线填充的2D图形IP核实现方法技术

技术编号:11061856 阅读:76 留言:0更新日期:2015-02-19 08:55
本发明专利技术公开了一种基于水平线填充的2D图形IP核实现方法,应用于2D图形绘制的硬件加速。直线、三角形、椭圆是二维图形中的基本图元,所有复杂场景的二维图形均可由上述基本图元经过有限叠加来完成。只需向该部件的接口发送基本图元的坐标等属性信息,即可高效的完成整个系统的2D图形绘制与显示工作,基于水平线填充的方式能有效提高图形的生成速度。

【技术实现步骤摘要】
-种基于水平线填充的2D图形IP核实现方法
本专利技术主要涉及图形芯片中2D图形绘制领域,特指一种基于水平线填充的2D图 形IP核实现方法。
技术介绍
图形加速技术是指利用专门的软件或硬件技术来加速图形在整个系统中的处理, 提高整个系统的工作效率。软件加速方法,既包括图形处理算法的不断改进,也包括对软件 代码的优化来提高图形系统中显示处理的效率。硬件加速方法,既是通过软件和硬件工作 的重新划分,将图形绘制部分的工作交由专门的硬件单元进行实现。通过硬件单元实现图 形绘制,将能极大释放系统中处理器的压力,提高图形的生成效率。
技术实现思路
本专利技术要解决的问题就在于:针对现有技术存在的技术问题,本专利技术提出一种结 构相对简单、硬件资源消耗不大、执行效率比较高的基于水平线填充的2D图形绘制的实 现。 与现有技术相比,本专利技术的优点就在于:1、逻辑简单:本专利技术提出的基于水平线 填充的2D图形绘制架构简单,比较利于硬件的实现;2、性能优良:本专利技术提出的2D图形生 成架构中,在图元预处理模块采用全流水的方式,因此可以保证图元生成的快速实现;3、使 用方便:本专利技术提出的基于水平线填充的2D图形绘制策略的可重用性较好,满足OPENGL和 WINDML规范的2D图形绘制,可以在嵌入式或通用图形芯片中很方便的移植。 【附图说明】 图1是本专利技术的2D图形处理IP核结构示意图; 图2是本专利技术中顶点处理模块与命令解析模块、顶点FIFO的逻辑关系图。 【具体实施方式】 如图1所示,为本设计实现的基于水平线扫描方式的二维图形IP核实现结构。由 软件经过编译处理后,将图形绘制的命令和图元的属性参数经由本地总线接口传入命令参 数FIFO中。该命令参数FIFO为一个异步FIFO,数据输入工作在本地总线时钟下,数据输出 工作在绘图时钟下,一边接收图形参数、命令信息,一边将接收的信息送入命令解析模块。 命令解析模块依据信息解码的结果,分别配置好绘图参数寄存器,以及确认命令中绘制图 元的类型,将各图元的顶点参数进行图形的预处理后,按顺序存入图元顶点FIFO中。各相 应二维图形绘制模块从顶点FIFO中得到各自图元顶点信息,依据各图元的绘制算法对外 产生图元的水平线信息,并存入绘图FIFO中。水平线填充模块根据获得的水平线信息,计 算各条水平线相对于帧存的地址,进而将绘制图形的水平线经由高速缓存和DDR2控制器 模块写入帧存。在二维图形的绘制模块中,线段绘制的反走样处理与位图处理则是直接经 由高速缓存,将绘制的图形信息与帧存进行读写。 (1)本地总线接口模块 本地总线接口实现对模块内部的读写操作。模块内部实现读写绘图控制寄存器,实现 中断申请信号,以及命令参数FIFO读写接口。绘图控制寄存器各状态位包括命令参数FIFO 的状态和FIFO的剩余空间、二维IP各模块的忙状态、FIFO产生的中断标志位中断申请信 号由两种状况产生。一种情况是,FIFO状态由超过半满到少于半满,或者由满到非满的状 态切换产生。用于软件判断是否继续下发命令参数。在该种情况下,除了产生中断申请信 号外,还需要置位绘图控制寄存器中相应的中断信号位,由软件读后清除该中断标志位。另 一种情况是,由整个核内各子模块的忙闲状态的判断产生。用于软件绘图时,进行帧切换的 处理。 (2 )命令参数FIFO模块 负责缓存软件发送的命令参数。内部实现深度为1024个字,字宽为32位的双时钟异 步FIFO,写接口工作在本地总线时钟,读接口工作在内部绘图时钟。写接口信号包括写时 钟、写信号、写数据、满信号、半满信号,已使用字数信号。读接口信号包括读时钟、读信号、 读数据、空信号。 (3)命令解析模块 绘图及控制命令按照命令数据包方式组织,命令数据包按照32位字宽的格式组织连 续发送。命令数据包有配置参数设置命令和图形绘制命令两种格式。配置参数命令包,包 含的数据有图形前景色、背景色、线宽、填充模式、填充图案和裁剪区域参数。绘图命令包, 包含的是图元类型命令码、图元顶点以及顶点个数数据。 命令解析模块依据命令参数配置格式,解析出来的数据如果是配置参数命令包, 则将相应参数信息统一配置到一个寄存器参数配置区域,相关参数寄存器与后续各相关模 块关联;如果为绘图命令包,则根据图元类型的不同,将数据包中一个图元所包含的顶点数 据进行组装,在一个时钟节拍内将图元顶点数据发送到顶点预处理模块。图元命令包,分别 包括直线段数据包、三角形填充数据包、矩形填充数据包、椭圆填充数据包、椭圆绘制数据 包,以及位图处理数据包。本模块处理忙的时候,无法读取命令参数FIFO中的数据。 (4 )顶点处理模块及顶点FIFO 图元顶点预处理的目的,是确定所绘制图元是否为一个有效图元,以及根据不同图元 绘图算法的需求,进行图元顶点位置调整。该模块划分为直线顶点预处理模块、三角形顶点 预处理模块、矩形顶点预处理模块、椭圆绘制预处理模块、椭圆填充预处理模块,各图元的 预处理模块采用流水设计,流水线长度已各基本图元中流水线最长的椭圆预处理为基准。 顶点FIFO,在图元绘制模块与命令顶点预处理模块之间缓存图元顶点数据,如此在FIFO未 满没有打断流水线的情况下,将提高整个绘图IP核的工作效率。顶点FIFO的深度设置为 16行,每行代表一个图元数据,每个图元的位宽统一设置为164bits。在FIFO为满的条件 下,将发出流水线中断信号,暂停命令解析模块、顶点预处理模块的工作。 (5)绘图模块 整个绘图模块由线段绘制、矩形填充、三角形填充、椭圆填充、椭圆绘制、位图处理几个 单独的子模块构成。将顶点FIFO中获得的图元数据进行译码,确定当前需要工作的绘制模 块,将图元顶点参数发送至该绘图模块中。当前工作的绘图模块依据绘制算法,生成图元的 每条水平线并由绘图FIFO进行水平线的缓存。 (6)直线段绘制模块 依据给定直线的两端点坐标,进行直线的绘制。该模块有非反走样处理的直线段绘 制,以及反走样处理的直线段绘制两种模式。对于没有反走样处理的直线段绘制,采用 Bresenham算法绘制直线。Bresenham算法的基本思想是通过直线上的当前点以及直线的 方位(不是精确的斜率)以步进的方式确定直线上下一点的位置,直到确定完当前扫描的水 平线结束,才开始下一条水平线的继续生成。确定了当前水平线的起点和终点位置后,写入 水平线FIFO中,并根据直线的宽度参数,进行水平线的扩展并发送至水平线FIFO中。 对于直线的反走样处理,采用多点采样的方式进行处理。该算法的思想,将把线条 当作一个斜向矩形,计算该矩形在所经过的各个像素点上所占的面积比,将该面积比作为 显示的alpha值,利用每个象素前景色与背景色的融合处理,淡化直线边沿的锯齿现象。按 照多点采样的算法,扩展为一定宽度的矩形后,水平逐点扫描象素点,计算线段在该像素的 面积占用比,由高速缓存从帧存中读出该象素对应位置的背景颜色,再经由高速缓存回传 到直线绘制模块中的象素融合模块进行融合处理,融合结束后,重新写回高速缓存,由高速 缓存写入帧存中。由于该算法中进行的矩形扩展和面积比计算需要进行小数的运算,如果 采用浮点运算的方式本文档来自技高网...

【技术保护点】
一种基于水平线填充的2D图形IP核实现方法,其特征在于:将直线、三角形、矩形、椭圆几个基本图元的生成由象素点绘制,转变为将各图元分解成每条水平线,由水平线的起点和终点信息完成水平线的填充;水平线填充的过程,采用全流水的形式,加快图元生成的效率:(1)、将图形绘制的命令和图元的属性参数经由本地总线接口传入异步逻辑的命令参数FIFO中;(2)、经命令解析模块解码,配置好绘图参数寄存器组(主要放置图元的裁剪窗口、线宽、虚实线、前景色、背景色、填充图案、帧存地址定位相关参数),确认绘制图元的类型,将各图元顶点进行图形绘制的预处理(预先确定所绘制图元是否为一个有效图元,提高绘图资源利用率,进行图元顶点位置调整),按顺序存入图元顶点FIFO中;(3)、图形绘制模块从顶点FIFO中得到各自图元顶点信息,依据各图元绘制算法对外产生图元的水平线;(4)、水平线填充模块根据获得的水平线信息,计算各条水平线在帧存中的地址,进而将绘制图形的水平线经由高速缓存和DDR2控制器模块写入帧存;(5)、直线段的反走样处理(多点采样算法实现)和位图处理,需要从帧存中获取数据进行像素处理,直接经由高速缓存,将绘制的图形信息与帧存进行数据交互。...

【技术特征摘要】
1. 一种基于水平线填充的2D图形IP核实现方法,其特征在于:将直线、三角形、矩形、 椭圆几个基本图元的生成由象素点绘制,转变为将各图元分解成每条水平线,由水平线的 起点和终点信息完成水平线的填充;水平线填充的过程,采用全流水的形式,加快图元生成 的效率:(1)、将图形绘制的命令和图元的属性参数经由本地总线接口传入异步逻辑的命 令参数FIFO中;(2)、经命令解析模块解码,配置好绘图参数寄存器组(主要放置图元的裁 剪窗口、线宽、虚实线、前景色、背景色、填充图案、帧存地址定位相关参数),确认绘制图元 的类型,将各图元顶点进行图形绘制的预处理(预先确定所绘制图元是否为一个有效图元, 提高绘图资源利用率,进行图元顶点位置调整),按顺序存入图元顶点FIFO...

【专利技术属性】
技术研发人员:周毅
申请(专利权)人:长沙景嘉微电子股份有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1