窗口合成装置制造方法

文档序号:6484787阅读:153来源:国知局
窗口合成装置制造方法
【专利摘要】具有:窗口控制部(7),其以窗口为单位,对像素赋予1个窗口编号;2维绘图引擎(4),其将包含有通过窗口控制部(7)赋予了窗口编号的像素的绘制完成窗口合成至显示窗口中;以及显示控制部(9),其使通过2维绘图引擎(4)合成出的显示窗口进行显示,2维绘图引擎(4)在构成显示窗口的多个绘制完成窗口中的1个发生了更新时,根据发生了更新的窗口的像素中被赋予了表示该像素成为反锯齿处理目标这一主旨的混合标志的像素,计算原始的背景颜色,进行反锯齿处理,并重新合成至显示窗口中。
【专利说明】窗口合成装置
【技术领域】
[0001 ] 本发明涉及对多个窗口进行合成而实施绘制的窗口合成装置。
【背景技术】
[0002]在图像绘制中,通过在矩形等的区域内绘制图形或字形等而生成窗口。已知通过将该生成的、绘制完成的多个窗口合成而生成显示窗口的技术。根据该技术,在生成显示窗口所需的、绘制完成的多个窗口中的某个窗口发生了更新的情况下,能够通过仅对发生了更新的窗口进行重新绘制而生成显示窗口,因此,能够进行高速的绘制。
[0003]在图像绘制中,为了掌握所要绘制的图形或字形等对象的掩盖处理或窗口之间的前后关系,使用模版缓冲。模版缓冲能够在图像绘制中,以像素为单位对由于对象之间的重叠而无需绘制的区域进行控制。通过使用该模版缓冲,能够在显示窗口生成所需的绘制完成窗口中的某个窗口发生了更新的情况下,仅对发生了更新的窗口进行重新绘制,并仅将该重新绘制的窗口合成至显示窗口中而生成显示窗口,因此,通过上述方式能够进行高速的绘制。
[0004]作为相关技术,专利文献I公开了一种窗口合成装置,该窗口合成装置除了使用模版缓冲之外,通过使用称为图像控制平面的多个平面(plane),能够高速地进行绘制。
[0005]专利文献1:日本专利第3413201号公报

【发明内容】

[0006]然而,在图像绘制中,为了平滑地表现对象的轮廓,有时实施反锯齿处理。在数字图像中,由于不能进行比像素单位更小的绘制,因此,会在对象的轮廓上出现被称为锯齿的凹凸。反锯齿处理是通过将像素分割为亚像素而计算覆盖率(对象对像素的覆盖比例),根据覆盖率将背景颜色和对象颜色混合,将混合得到的颜色设为绘制颜色而进行绘制的处理。
[0007]在专利文献I中示出的现有的窗口合成装置中,在显示窗口生成所需的、绘制完成的多个窗口中的某个窗口发生更新,将更新后的窗口合成至显示窗口中的情况下,对于更新后的窗口的对象中的与其他窗口重叠的区域,由于仅绘制位于前面的窗口,因此不绘制背景颜色。因此,存在不能使用反锯齿处理,不能高速地生成高画质的显示窗口的课题。
[0008]本发明就是为了解决上述课题而提出的,目的在于提供一种能够高速地生成高画质的显不窗口的窗口合成装置。
[0009]本发明所涉及的窗口合成装置具有:窗口控制部,其以窗口为单位,对像素赋予I个窗口编号;2维绘图引擎,其将包含有通过窗口控制部赋予了窗口编号的像素的绘制完成窗口合成至显示窗口中;以及显示控制部,其使通过2维绘图引擎合成出的显示窗口进行显示。
[0010]发明的效果
[0011]根据本发明涉及的窗口合成装置,能够高速地生成高画质的显示窗口。【专利附图】

【附图说明】
[0012]图1是表示本发明的实施方式I涉及的包含有窗口合成装置的图像合成装置的结构的框图。
[0013]图2是用于说明本发明的实施方式I涉及的窗口合成装置中进行的窗口绘制的图。
[0014]图3是用于说明本发明的实施方式I涉及的窗口合成装置中进行的显示窗口的合成的图。
[0015]图4是表示本发明的实施方式I涉及的窗口合成装置中进行的显示窗口的合成处理的流程图。
[0016]图5是用于说明本发明的实施方式I涉及的窗口合成装置中进行的显示窗口的重新合成的图。
[0017]图6是用于说明本发明的实施方式I涉及的窗口合成装置中进行的显示窗口的重新合成处理的流程图。
[0018]图7是用于说明本发明的实施方式I涉及的窗口合成装置中使用的像素值的结构的图。
【具体实施方式】
[0019]下面,为了更详细地说明本发明,按照附图对用于实施本发明的方式进行说明。
[0020]实施方式I
[0021]图1是表示本发明的实施方式I涉及的包含有窗口合成装置的图像合成装置的结构的框图。该图像合成装置具有窗口合成装置1、CPU (Central Processing Unit)2、VRAM(Video Random Access Memory) 10 及显不装置 11。
[0022]窗口合成装置I对多个窗口进行合成而实施绘制。该窗口合成装置I的详细内容如后所述。CPU2由例如通用的微型计算机构成,进行针对窗口合成装置I的绘制信息的设定等,对窗口合成装置I整体进行控制。
[0023]VRAMlO是存储从窗口合成装置I发送来的绘制的中间结果及绘制结果等的帧缓冲器。显示装置11按照从窗口合成装置I发送来的显示数据进行显示。
[0024]下面,说明窗口合成装置I的详细内容。窗口合成装置I具有CPU控制部3、2维(2D)绘图引擎4、矢量引擎5、像素运算部6、窗口控制部7、VRAM控制部8以及显示控制部9。
[0025]CPU控制部3对从CPU2发送来的命令进行解码,针对作为命令目标的进行窗口合成所需的2维绘图引擎4、矢量引擎5、像素运算部6、窗口控制部7、VRAM控制部8及显示控制部9,设定各种信息,对这些单元进行控制。
[0026]2维绘图引擎4对应于来自CPU控制部3的控制,进行BitBLT (bit blocktransfer)或Fi 11等2维图像绘制。矢量引擎5将图像从以点的坐标、对点进行连接的线或面的方程式的参数、以及填充或特殊效果等绘图信息的形式表现的数据,转换为以带有颜色的像素排列的形式表现的位图数据。
[0027]像素运算部6对像素实施色键测试、α测试、颜色转换、α混合及抖动等像素运算。窗口控制部7对窗口编号进行控制。
[0028]VRAM控制部8统一管理由窗口合成装置I的各构成要素进行的对VRAMlO的访问。显示控制部9经由VRAM控制部8从VRAMlO读取显示数据并发送至显示装置11。
[0029]此外,在图1所示的图像合成装置中,CPU2、VRAMlO及显示装置11独立于窗口合成装置I而设置,但它们也可以与窗口合成装置I 一体地构成。
[0030]对如上所述构成的窗口合成装置I的动作进行说明。CPU控制部3按照从CPU2发送来的命令,起动2维绘图引擎4以及矢量引擎5,进行多个窗口的绘制。通过该绘制而生成的绘制数据经由VRAM控制部8存储至VRAM10。另外,窗口控制部7在进行窗口绘制时,以窗口为单位赋予所要绘制的像素I个窗口编号。
[0031]在生成显示窗口的情况下,2维绘图引擎4读取在VRAMlO中存储的绘制完成窗口,仅将赋予了窗口编号的像素合成至显示窗口中。此时,针对成为反锯齿处理目标的像素,赋予表示其为反锯齿处理目标的混合标志。
[0032]在构成显示窗口的绘制完成窗口中发生了更新的情况下,2维绘图引擎4从VRAMlO中读取更新后的绘制完成窗口,将针对显示窗口的像素赋予的窗口编号和针对绘制完成窗口的像素赋予的窗口编号进行比较,仅在一致的情况下对像素值进行更新。在该情况下,对于发生了更新的窗口的像素,只有在显示面上出现的像素成为重新合成至显示窗口中的目标。另外,对于窗口编号一致的像素,仅对赋予了混合标志的像素实施混合处理。
[0033]图2是用于说明在窗口合成装置I中进行的窗口绘制的图。大矩形表示窗口整体,小矩形表示像素。小矩形内的数字表示各像素的窗口编号。在绘制之前,全部像素的窗口编号为“O”。在绘制时,仅对构成所要绘制的窗口的像素的窗口编号进行更新。在该窗口合成装置I中,对应于绘制的窗口赋予同一窗口编号。在图2所不的例子中,将窗口 I的窗口编号设为“ I ”。因此,绘制出的像素的窗口编号变为“ I ”。
[0034]图3是用于说明在窗口合成装置I中进行的显示窗口合成的图。图4是表示在窗口合成装置I中进行的显示窗口合成处理的流程图。在显示窗口的合成中,首先,窗口I通过BitBLT合成至显示窗口中。然后,将窗口 2 (未图示)通过BitBLT合成至显示窗口中,从而完成显示窗口。在该BitBLT时,对全部像素应用图4所示的流程图。
[0035]在显示窗口的合成处理中,首先,进行SRC像素的读取(步骤STlI)。S卩,从VRAM(帧缓冲器)10中读取SRC (source)像素,该SRC像素是作为BitBLT传送源的绘制完成窗口的像素。
[0036]接着,检查在步骤STll中读取出的像素的窗口编号(绘制SW)是否与BitBLT中的窗口所分配的窗口编号(SW)—致(步骤ST12)。在该步骤ST12中,如果判断为不一致,则无需绘制该像素,因此程序(sequence)进入步骤ST17。
[0037]另一方面,在步骤ST12中,如果判断为一致,则检查α值是否是“I”(步骤ST13)。即,检查在步骤STll中读取出的像素的透明度信息即α值是否是“I”。在该步骤ST13中,如果判断为α值是“1”,则程序进入步骤ST16。即,在反锯齿处理中,在α值是“I”的情况下,无需实施背景颜色和绘制颜色的α混合,因此,SRC像素值直接作为DST(destination)像素值而被绘制在显示窗口上。
[0038]另一方面,在步骤ST13中,如果判断为α值不是“ 1”,则进行混合合成(步骤ST14)。即,通过反锯齿处理而进行背景颜色和绘制颜色的混合合成,计算DST像素值。接着,更新窗口编号(步骤ST15)。即,为了对进行混合合成后的像素值赋予混合标志,更新窗口编号。在图3所示的例子中,为了对进行混合合成后的像素赋予混合标志,将窗口编号更新为“3”。其后,程序进入步骤ST16。
[0039]在步骤ST16中,进行DST像素写入(Pixel Write)。即,将DST像素值绘制在显示窗口上。其后,程序进入步骤ST17。
[0040]在步骤ST17中,检查是否完成了对全部像素的处理。在该步骤ST17中,如果判断为没有完成对全部像素的处理,则程序返回步骤ST11,重复进行上述处理。另一方面,如果判断为完成了对全部像素的处理,则结束显示窗口的合成处理。
[0041]在这里,在上述步骤ST14中进行的混合合成例如能够以下式(I)表示。
[0042]Dr,=SrX a + DrX (I — α )
[0043]Dg’ =SgX α + DgX (I— α)...(I)
[0044]Db,=SbX α +DbX (I — α )
[0045]其中,Dr:DST像素R成分,
[0046]Dg:DST 像素 G 成分,
[0047]Db:DST 像素 B 成分,
[0048]Sr: SRC 像素 R 成分,
[0049]Sg: SRC 像素 G 成分,
[0050]Sb: SRC 像素 B 成分,
[0051]Dr’:DST像素R成分(运算后),
[0052]Dg’:DST像素G成分(运算后),
[0053]Db’ =DST像素B成分(运算后)。
[0054]通过执行上述图4的流程图所示的窗口合成处理,能够判别显示窗口的各像素使用了哪个绘制完成窗口的像素值。而且,对于显示窗口的多个像素,能够判别出其中通过反锯齿处理而应用了混合的像素。
[0055]图5是用于说明在窗口合成装置I中进行的显示窗口的重新合成的图,示出在作为显示窗口而合成的多个窗口中更新了窗口I的情况的例子。
[0056]图6是表示在窗口合成装置I中进行的显示窗口的重新合成处理的流程图。在显示窗口的重新合成处理中,首先,进行SRC像素的读取(步骤ST21 )。S卩,从VRAM(帧缓冲器)10中读取窗口 I的像素即SRC像素。
[0057]接着,检查在步骤STll中读取出的SRC像素的窗口编号(绘制SW)和更新后的窗口的窗口编号(SW)是否一致(步骤ST22)。在该步骤ST22中判断为不一致的情况下,程序进入步骤ST28。在图5所示的例子中,由于是窗口 I的合成,因此“SW=1”。因此,在SRC像素的窗口编号不是“I”的情况下,程序进入步骤ST28。
[0058]另一方面,在步骤ST22中判断为一致的情况下,进行DST像素值的读取(步骤ST23)。即,读取显示窗口的像素值即DST像素值。
[0059]接着,检查DST像素的窗口编号(DW)是否与赋予了混合标志的窗口编号(BW) —致,即,检查是否针对DST像素赋予了混合标志(步骤ST24)。在图5所示的例子的情况下,赋予了混合标志的像素是窗口编号变为“3”的像素。
[0060]在该步骤ST24中,如果判断为针对DST像素赋予了混合标志,则接着进行混合处理(步骤ST25)。即,通过反锯齿处理而进行背景颜色和绘制颜色的混合合成,计算DST像素值。其后,程序进入步骤ST27。
[0061 ] 另一方面,在步骤ST24中,如果判断为针对DST像素没有赋予混合标志,则接着判断DST像素的窗口编号(DW)与绘制完成窗口的窗口编号(SW)是否一致(步骤ST26)。在图5所示的例子的情况下,检查显示窗口的像素的窗口编号是否是“I”。
[0062]在该步骤ST26中,如果判断为不一致,则取消绘制,程序进入步骤ST28。另一方面,在步骤ST26中,如果判断为一致,则窗口 I的像素值被设为DST像素值,程序进入步骤ST27。
[0063]在步骤ST27中,进行DST像素值写入。即,将DST像素绘制在显示窗口上。其后,程序进入步骤ST28。
[0064]在步骤ST28中,检查是否完成了对全部像素的处理。在该步骤ST28中,如果判断为没有完成对全部像素的处理,则程序返回步骤ST21,重复进行上述处理。另一方面,如果判断为完成了对全部像素的处理,则结束显示窗口的重新合成处理。
[0065]通过上述处理,能够将反锯齿处理应用于窗口合成。
[0066]在这里,在上述步骤ST25中进行的重新合成的混合处理例如能够以下式(2)表示。该式(2)是将通过反向混合运算而计算原始背景颜色的算式和通过混合生成绘制颜色的算式合为I个而得到的。
[0067]Dr,=Dr + (Sr,一 Sr) X α
[0068]Dg,=Dg + (Sg,一 Sg) X α...(2)
[0069]Db,=Db + (Sb,一 Sb) X α
[0070]其中,Dr:DST像素R成分,
[0071]Dg:DST 像素 G 成分,
[0072]Db:DST 像素 B 成分,
[0073]Sr:SRC像素R成分(更新前窗口),
[0074]Sg:SRC像素G成分(更新前窗口),
[0075]Sb:SRC像素B成分(更新前窗口),
[0076]Dr’:DST像素R成分(运算后),
[0077]Dg’:DST像素G成分(运算后),
[0078]Db’:DST像素B成分(运算后),
[0079]Sr ’: SRC像素R成分(更新后窗口),
[0080]Sg’:SRC像素G成分(更新后窗口),
[0081 ] Sb ’: SRC像素B成分(更新后窗口)。
[0082]如上所述,对于更新后的窗口的对象的轮廓中存在窗口重叠的像素,能够通过反向混合运算而计算背景颜色,重新进行背景颜色和对象颜色的混合,从而计算正确的绘制颜色。
[0083]图7是用于说明在窗口合成装置I中使用的像素值的结构的图。此处使用的通常的像素格式是ARGB格式。A是α值,R、G及B是颜色值,分别表示颜色成分的红、蓝及绿。通过应用WARGB格式,能够使得窗口合成时针对帧缓冲器的地址生成变得容易。
[0084]在将像素值设为ARGB格式的情况下,在α值及颜色值(ARGB)的地址生成之外,还需要生成存储有窗口编号(W)的地址。例如,在现有的窗口合成装置中具有颜色缓冲器和模版缓冲器,且二者为不同的缓冲器,因此,存在地址解码变得复杂,进而窗口的合成处理变得困难的课题。与此相对,根据本发明的实施方式I的结构,能够通过应用WARGB格式而I次性地生成地址,能够使窗口的合成处理容易。
[0085]此处,对于作为VRAM 使用的 SDRAM — SDRM、DDR2 — SDRM、DDR3 — SDRAM 等,其大部分是数据宽度为16位或32位。因此,通过将I个像素设为32位,将32位分配给WARGB格式的各成分,从而使地址生成进一步变得简单。例如,分割为W=4位、A=4位、R=8位、G=8位、B=8位。此外,分割方式并不限于此,也可以任意分割。
[0086]此外,本发明可以在其发明范围内进行实施方式的任意构成要素的变形,或省略实施方式的任意构成要素。
[0087]工业实用性
[0088]本发明涉及的窗口合成装置适用于显示画面由多个窗口构成的个人计算机画面的生成、进行图像重叠显示的装置、或者内建设备的显示画面的生成等。
[0089]标号的说明
[0090]I窗口合成装置、2CPU、3CPU控制部、42维绘图引擎、5矢量引擎、6像素运算部、7窗口控制部、8VRAM控制部、9显示控制部、10VRAM、11显示装置。
【权利要求】
1.一种窗口合成装置,其具有: 窗口控制部,其以窗口为单位,对像素赋予I个窗口编号; 2维绘图引擎,其将包含有通过所述窗口控制部赋予了窗口编号的像素的绘制完成窗口合成至显示窗口中;以及 显示控制部,其使通过所述2维绘图引擎合成出的显示窗口进行显示。
2.根据权利要求1所述的窗口合成装置,其特征在于, 2维绘图弓I擎在将绘制完成窗口合成至显不窗口中时,仅将绘制完成窗口中的赋予了窗口编号的像素合成至显示窗口中。
3.根据权利要求2所述的窗口合成装置,其特征在于, 该窗口合成装置具有帧缓冲器,该帧缓冲器将用于形成窗口的像素作为像素值而进行存储, 存储在所述帧缓冲器中的像素值由颜色值、α值及窗口编号构成,并由I个地址指定。
4.根据权利要求2所述的窗口合成装置,其特征在于, 2维绘图引擎在将绘制完成窗口中的赋予了窗口编号的像素合成至显示窗口时,针对成为反锯齿处理的目标的像素赋予表示这一主旨的混合标志。
5.根据权利要求4所述的窗口合成装置,其特征在于, 在构成显示窗口的多个绘制完成窗口中的I个发生了更新时,2维绘图引擎仅将发生了更新的窗口的像素中的出现在显示面上的像素,重新合成至显示窗口中。
6.根据权利要求5所述的窗口合成装置,其特征在于, 2维绘图引擎根据显示窗口中的赋予了混合标志的像素,计算原始的背景颜色,在重新合成时进行反锯齿处理。
【文档编号】G06T11/00GK103608858SQ201180071556
【公开日】2014年2月26日 申请日期:2011年6月10日 优先权日:2011年6月10日
【发明者】春日隆文, 加瀬隆明, 加藤义幸, 加藤圣崇, 鸟居晃, 滨田雅树, 米泽荣齐 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1