背景技术
美国专利US5,883,670披露了一种在一个视频处理器中处理图像的集成电路。该电路被连接到计算机上。一种诸如SDRAM那样达到兆字节量级的非永久性存储器被连接到计算机上。该电路包括图像解码装置。当图像被解码的时候,穿过视频通道而抵达的图像序列在内存中被保存和处理。一个PG类型的标准总线被用来使电路访问所述内存。
在所述数字电视领域,诸如图案(图标,字符等)的数据组经常被使用并叠加到图像上。例如,字符通常被用来将一个视频的电影翻译成为外文。为了使用这样的模式来处理图像,执行下述步骤:
-在SDRAM存储器中存储来自视频信道的编码后的图像序列和图形,
-处理一个图像序列:
-从SDRAM非永久性存储器上提取图像序列,
-解码该图像序列,
-在该SDRAM存储器上将已经解码的图像序列写入,
-提取该图像序列,以便利用一个专用的协处理器执行一个纠错步骤(作为一个后处理过程的及时纠错处理),该错误是在对图象进行编码过程中固有的,
-将一经过改进的图像重新写入SDRAM存储器,
-处理图形:
-从SDRAM非永久性存储器上提取图形,
-通过一个专用的图形协处理器处理图形,
-将图形重新写入SDRAM存储器,
-通过视频处理器提取经过处理的图像序列以及图形,
-通过所述的处理器将所述的序列以及所述的图形组合成为将要被显示的图像,-通过一个视频输出协处理器显示图像。
参照ATSC(高级视频标准委员会)标准的一种标准,一个经过解码的图像序列在通常清晰度条件下每秒大约20兆字节(一个兆字节包括8比特),在高清晰度的条件下大约是124兆字节。因此,为了形成如上所述的一个图像序列,在普通清晰度条件下需要100兆字节/秒=(2+2+1)*20的传输带宽,在高清晰度条件下需要620兆字节/秒=(2+2+1)*124的传输带宽(两个提取操作,两个用来解码以及提高的写入操作,一个用来合成的提取操作),而没有考虑处理不同的图形。如果使用上述的系统来处理一个带有图形的图像的话,就会出现多次访问SDRAM存储器,数据总线的级别超载以及因此而造成在传输带宽上的值得注意的混乱这样的风险。
发明概述
本发明所要解决的一个技术问题是提供一种用来处理在一图像内的数据组的集成电路,所述的图像数据包括像素,本发明同时还提供一种方法,尤其适用来降低对存储器的访问次数以及降低传输带宽上所造成的混乱。
根据本发明的第一个目的,一种可以解决刚才提出的技术问题的集成电路具备如下的特征:
-一个仅仅用来存储一组包括一些与另外数据的大小相区别的像素的数据组的存储器,
-控制像素的装置,该装置可以给出一组数据种类指示,
-提取像素的装置,该装置可以选择以及提取所述的数据组,并根据所述指示在所述存储器的输出中提取至少一个所述数据组的像素,并且将该至少一个像素发送到编码装置。
根据本发明的第二个目的,这种方案的特征在于:一种处理数据的方法步骤包括如下步骤:
-将至少一组包括一些带有与另外数据的大小相区别的像素的数据存入到唯
一存储器中,
-给出一组数据种类的指示,
-选择并且提取所述数据组,
-根据所述指示,在所述的存储器的输出中提取至少一个所述数据组的像素,
-将所述的至少一个像素发送到编码装置。
如将在下文看到的那样,利用用于控制、提取像素和编码的装置,通过在所述的集成电路内部的存储器上完成对数据组的提取操作,所述的数据组将被实时处理而不需要使用外部存储器。对存储器的访问次数就可以下降,传输带宽上的混乱也可以因而减少。
通过下文参照下述的非限定性实施例所进行的介绍,本发明的这些和其它特征将变得很清楚。
优选实施例的说明
这里对本发明的说明涉及一个在电视领域使用的电路示例。图1显示了一个CH集成电路的结构框图。在我们的示例中,集成电路CH被包括在一个电视系统,该系统包括一个显示屏、一个时钟CLK以及一个视频输出处理器(未示出)。更佳的是,所说的电路被包含在一个视频输出协处理器内。所述集成电路CH包括用来控制像素的诸如经典控制装置那样的装置CNTRL、唯一一个存储器(onlymemory)RAM、提取像素的装置PE,编码装置CM和一个图像合成装置CO。还可以包括一个用来转换像素的X-BAR装置和用于像素的排队装置LFIFO。所述像素被包含在数据组中,该数据组最好是图案。图像由一定数量的像素组成并且每一个像素都包括一个确定数量的比特。存在多种图形。与图形的种类相对应,像素的比特的数量也是不同的。换句话说,像素能够被编码成为不同的比特数量。从而,对于字符图形来说,每一个像素包括一个比特,然而对于一个图象图形,每一个像素通常可能包括2、4、8或者16个比特。
当一个电视系统被初始化之后,存储在集成电路CH之外的诸如EEPROM可重复写入的非易失性存储器这样的外部存储器上的图形将被传输到所述电路的非永久性存储器RAM上。应该注意的是,通过将图形存储到这样的外部存储器上,从而使得所述外部存储器可以根据该电视系统的供应商或使用者的需求被预先针对不用的图像进行编程。至少一包含一些像素的图形能够被发送并储存在易失性存储器RAM中,该像素的大小与其它类型像素的大小不同。
为了显示显示屏上的图象内图形,最好进行下述操作。
第一步,通过向像素提取装置PE提供一定数量需要处理的图形、并提供由从所述存储器所提取的像素所组成图形的类型的指示、每一种类型的图形所对应的每个图形象素的比特数,控制装置CNTRL控制像素提取装置PE。最好利用参照表来(未示出)进行这种控制,该参照表具体包括存储在存储器RAM中的每个图形的种类和每个图形象素的比特数。应该注意的是,为了形成不同大小的像素,存储器RAM最好包括这样大小的一个输出序列,该序列的大小应该大于或等于能够在图形中发现的每个像素的最大比特数,这里是16比特,存储器的大小例如可以是15兆字节。
第二步,像素提取装置PE在易失存储器RAM上选择一第一图形,提取所述图形并且在所述存储器的输出中提取至少一个所述图形的像素,用于表示图象的类型和存储器RAM的输出序列的大小。然后,所述的提取装置PE就将该至少一个像素发送到编码装置CM上。例如,如果存在一个包含四个像素的图象图形,而每个像素的大小都是8比特,提取装置PE就从存储器RAM的16比特输出序列中提取两个8比特像素。然后,所述装置将这两个像素发送到编码装置CM。
根据本发明的一个非限定性实施例,像素提取装置PE包括诸如移位寄存器这样的比特转换装置SHIFT,还包括允许进行提取和发送像素的逻辑电路。参照图2所示的示例,提取装置PE允许对1、2、4、8比特像素的管理。这些装置包括一可以接收16比特的输入IN,以及都可以接收8比特的两个输出OUTA和OUTB。一个像素可以被发送到这两个输出中任一个输出上。如上所述,控制装置CNTRL向提取装置PE提供一个类型指示。这样的指示被按照下面的方式编码为2比特的SP0和SP1:
SP0=0,SP1=0代表用1比特编码的像素,
SP0=0,SP1=1代表用2比特编码的像素,
SP0=1,SP1=0代表用4比特编码的像素,
SP0=1,SP1=1代表用8比特编码的像素。
根据类型指示,通过变换比特SH,控制装置CNTRL还指示出在输入比特上准备执行的变换以便可以将其变换到提取装置PE的两个输出OUTA和OUTB,并且因此而适应编码装置CM。转换装置SHIFT接收读自易失性存储器RAM上的不同比特并且根据变换比特SH的变化而对其进行变换。在变换装置SHIFT的输出上可以提供最大到16比特的I0到I15。
提取装置PE上的输出OUTA和OUTB所能够保证的比特数如下面两张表所示:
输出OUTA
图形种类(比特/像素数) |
类型指示 |
A0 |
A1 |
A2 |
A3 |
A4 |
A5 |
A6 |
A7 |
1 |
(SP0,SP1)=(0,0) |
I0 | | | | | | | |
2 |
(SP0,SP1)=(0,1) |
I0 |
I1 | | | | | | |
4 |
(SP0,SP1)=(1,0) |
I0 |
I1 |
I2 |
I3 | | | | |
8 |
(SP0,SP1)=(1,1) |
I0 |
I1 |
I2 |
I3 |
I4 |
I5 |
I6 |
I7 |
输出OUTB
图形种类(比特/像素数) |
类型指示 |
A0 |
A1 |
A2 |
A3 |
A4 |
A5 |
A6 |
A7 |
1 |
(SP0,SP1)=(0,0) |
I1 | | | | | | | |
2 |
(SP0,SP1)=(0,1) |
I2 |
I3 | | | | | | |
4 |
(SP0,SP1)=(1,0) |
I4 |
I5 |
I6 |
I7 | | | | |
8 |
(SP0,SP1)=(1,1) |
I8 |
I9 |
I10 |
I11 |
I12 |
I13 |
I14 |
I15 |
因此,我们就能够得到如下的编码逻辑:
A0=I0;A1=I1;A3=I3;A4=I4;A5=I5;A6=I6;A7=I7;
B0=I1.(SP0+SP1)+I2.SP0.SP1+I4.SP0.SP1+I8.SP0.SP1;
B1=I3.SP0.SP1+I5.SP0.SP1+I9.SP0.SP1;
B2=I6.SP0.SP1+I10.SP0.SP1;
B3=I7.SP0.SP1+I11.SP0.SP1;B4=I12;B5=I13;B6=I14;B7=I15。
图2显示出了一个编码逻辑的实例,该实例对应于第一输出OUTA以及第二输出OUTB上的第一元素B0。
例如,如果一个像素的比特数是4,它们就是按照下面的方式被管理的:
-从易失性存储器RAM上读出16个比特,
-控制装置CNTRL向提取装置PE的电路发出类型指示SP0=1,SP1=0
以及转换比特SH的值为0,
-在转换装置SHIFT的输出I0到I3上,相应于第一像素的头四个比特被
发送到输出OUTA上,
-同时,在转换装置SHIFT的输出I4到I7上,相应于第二像素的后续四个
比特被发送到输出OUTB上,
-从易失性存储器RAM上重新提取同样的16个比特,
-控制装置CNTRL向提取装置PE的电路发出类型指示SP0=1,SP1=0
以及转换比特SH的值为8(这里4个变换比特分别被编码为1000)
-在右方变换这八个比特,
-在转换装置SHIFT的输出I0到I3上,相应于第三像素的头四个比特被
发送到输出OUTA上,
-同时,在转换装置SHIFT的输出I4到I7上,相应于第四像素的后续四个
比特被发送到输出OUTB上,等等。
像素被发送到编码装置CM。
应该注意到的是,转换装置SH的目标就是简单化电路的逻辑。此外,应该注意到在这个实施例中,字提取(每个16比特)被这样编码,即首字节包括最少有效比特并且在右边被编码,同时第二字节包括最多有效比特并且在左边被编码。这样的编码被称为是“big-endian”。当然,提取装置PE的采用不同逻辑的字提取编码的不同实施例也是完全可行的。
编码装置CM允许象素部分地按照它们的颜色、它们的透明度等等被编码。通常来说,一定比特数(这是像素的大小)的颜色编码与每一个像素相关联。一个颜色有三个特征,即由CIE所定义的红,绿,蓝。然而,为了允许图象的均匀组合都能够在电视系统的屏幕上被显示出来,每一个像素都被编码。一个像素的颜色就通过一个颜色查表被编码。在这种情况下,每一个像素的颜色都是一个24比特的编码。参照一个非限定性的实施例,编码装置CM包括至少两个颜色查表,所包含的颜色查表的数量最好与图形的不同种类的数量一样多,不包括符号图形,最好还有一个颜色扩展表格以及一个透明度表格ABT。根据这些不同的表格,将像素编码成为不同的大小就成为可能。
如图3所示示例,一个非限定性实施例包括像素大小为1、2、4、8比特的图形种类。编码装置CM包括一个将2比特像素变成24比特像素的第一颜色查表LUT2、一个将4比特像素变成24比特像素的第二颜色查表LUT4、一个将8比特像素变成24比特像素的第三颜色查表LUT8、一个通过将一种颜色标记于其上而将诸如来自于类似字符图形的这样的1比特像素变成24比特像素的第四颜色查表LUT1、一个允许在可能在显示器上被重叠显示的不同图像之间的透明度系数标记的第五透明度查表ABT,该系数相当于“α混合系数”。当然,除了24比特之外的编码也可能使用。在这种情况下,编码装置CM包括一个修正表。
控室装置CNTRL通过向编码装置CM指示与提取的像素关联的不同编码来实现对其的控制,例如,颜色或相关联的扩展表,与扩展表相关的颜色和/或相关透明度系数。应该注意到,字符图形并不带有颜色,因而控制装置CNTRL将一个颜色附加给它们。编码装置CM一次只对一个像素进行编码,因而集成电路CH最好包括N个编码装置CM,N>1。这样的话,就可能同时对多个像素进行编码。这就会带来将处理图形的时间缩短的优点。如图4的示例所示,设有两个编码装置CMI和CMII来同时处理多个像素。
在第三步骤中,控制装置CNTRL将来自编码装置CM的像素进行排序以便避免来自不同图形的像素混淆。转换装置X-BAR接收来自编码装置CM的不同像素并将这些像素转换成为适合于排队装置LFIFO的被排序的像素。这些转换装置可以是诸如倍增器或者“crossbar”这样的互联网络。转换装置X-BAR将相同图形的像素转换至相同的排队装置LFIFO。参照图4所示的实例,第一图形的像素被转换至第一排队装置LFIFO1,同时第二图形的像素被转化至第二排队装置LFIFO2。排队装置LFIFO的数量最好与编码装置CM的数量一致。
参照如图4所示的实施例,当至少存在两个编码装置CM时,集成电路CH最好包括一个用来相对于另外一个像素来说延迟一个像素的排序和转换的延迟装置R。所述的延迟装置诸如是设置在第二编码装置CMII与像素转换装置X-BAR之间的延迟寄存器R。该寄存器R具备这样的优点。当相应于所述图形的像素被转化到排队装置LFIFO时,可以防止来自相同图形的两个像素之间相互拥挤到同一个装置LFIFO。
让我们举这样一个示例,一个第一图形M1包括四个8比特像素P1、P2、P3和P4。如图5所示,在第一时间脉冲CLK1期间,第一和第二像素P1和P2由提取装置PE从存储器RAM的输出提取出来。在第二时间脉冲CLK2期间,所述像素P1和P2被两个编码装置CMI和CMII同时进行编码,同时第三和第四像素被提取装置PE提取出来。在第三时间脉冲CLK3期间,只有第一像素P1被将其辨认为属于第一图形M1的控制装置CNTRL排序,该第一像素P1还通过转换装置X-BAR被转换到第一排队装置LFIFO1。延迟寄存器R将第二像素P2的排序和转换相对于第一像素P1延迟。因此,只有到第四个时间脉冲CLK4时,控制装置才会对第二像素P2进行排序然后转换装置X-BAR才会将其转换至第一排队装置LFIFO1上。通过延迟寄存器R,第一和第二像素P1和P2不会同时被转换至相同的排队装置LFIFO1上,从而避免了在没有所述寄存器R的情况下会出现的相互拥挤现象。
然而,最后还有一个问题。参照图5所示示例,如果四个像素P1、P2、P3和P4同属于第一图形M1,第二像素P2与被提取的第三像素P3还是会在第三时间脉冲CLK3相互拥挤。为了解决这一像素相互拥挤的问题,控制装置CNTRL控制从易失性存储器RAM上提取不同图形的像素,提取交错在不同图形之间。为实现此目的,M个不同图形的M个相关提取操作被执行,其中M为在集成电路CH中存在的编码装置CM的数量。因此,参照图6所示的示例,如果有两个编码装置的话,两个不同图形象素的两个相关提取操作被执行。即第一图形M1的第一像素P1和第二像素P2在第一时间脉冲CLK1期间被提取,同时第二图形M2的第一像素P3和第二像素P4在第二时间脉冲CLK2期间被提取。在第四时间脉冲CLK4期间,由于第一图形M1的第二像素P2被转换至第一排队装置LFIFO1,而第二图形M2的第一像素P3被转换至第二排队装置LFIFO2,所以就不会有拥挤出现。
最后,当一个或多个图形的像素组被按照上述方法进行处理时,在最后一个步骤中,这些不同的图形将被送至组合装置CO。所述的组合装置CO将需要显示的图像进行组合,一方面是来自外部存储器上的图像,另一方面是来自所述的易失性存储器RAM上的图形,该存储器RAM如1999年6月15日提交的美国专利申请09/333,633上所披露的现有技术那样。视频输出协处理器最终将组合的图像在显示器上显示出来。
上面所述的本发明具备这样的优点,该发明可以避免当使用一个处理器或协处理器来处理视频图像的时候对数据进行的管理,进而避免了连接处理器和协处理器之间的总线过载,或是传输频带上的混乱。数据现在在视频输出协处理器这个水平上被管理。此外,该集成电路仅仅包括一个存储器。与带有很多存储器的集成电路相比,集成电路的大小下降。同时带有很多存储器的集成电路必须有数个对其操作来说是必需的存储器界面(存储器访问装置),而这些界面也会增加电路的大小。最后,如上所述,在不增加时钟速度的前提下,由于上文所述的像素实际上是被同时处理这一事实,与其他存储器相比,存储器可以被更长使用并且降低费用。
必须强调的是本发明的技术特征并不受上述实施例的任何限制。
本发明也不仅仅限于电视领域,还适用于那些使用LCD彩色显示器的领域,比方说未来移动电话系统或管理者。