熵编码电路及其编码方法

文档序号:7691041阅读:237来源:国知局
专利名称:熵编码电路及其编码方法
技术领域
本发明涉及一种数据处理装置与其运算方法,且特别是涉及一种可同时
编码TILE —HIGHPASS和TILE—FLEXBITS的编码电3各及其编码方法。
背景技术
在 一般的图像压缩编码方式,主要是由 一个原始的图像数据经过转换与 编码压缩后产生编码串流(Encoded Stream)的方式,请参照图1所示,包括 步骤110,进行取样及色彩空间转换(Downsampling & Color Space Transform) 的处理。而后,经由步骤120进行重迭转换(Lapped Transform)的处理。接 着如步骤130,进行量化(Quantization)及系数预测(Predict ion)并产生区 块类型信息(Coded Block Pattern)。而后经由步骤140,运用可调式扫瞄 (Adaptive Scan)及进行熵编码(Entropy Coding),以产生编码串流。
以JPEG标准为例,先将色彩转换至YCbCr色彩空间,再经过离散余弦转 换(Discrete Cosine Transform),经过量化处理后,再对DC项系数进行预 测差分,最后再将系数以锯齿形扫描(Zig-Zag Scan)顺序扫描成游程编码 (Run-Length Encoding),再以可变长度编码(Var iable Length Coding)完成 编码。
例如美国微软(Microsoft)公司所推出新的静态图像压缩格式,称为HD Photo格式,目前已进入JPEG国际标准制订过程中,而命名为JPEG-XR。此 HD Photo格式为了减少独立区块转换带来的区块效应,使用了以4乘4区块 为单位的重迭转换(Lapped Transform, LT),其中先对4乘4区块交接处的 4乘4区块进行重迭滤波(Overlap Filter),再对4乘4区块进行核心转换 (Core Transform),重迭滤波与核心转换皆使用了提升式结构(Lif t)来确保 无失真压缩的可能性。
请参照图2,主要是说明符合HD Photo格式的重迭滤波转换与核心转换 流程示意图。此内容揭露在美国专利申请案第2006/013682号公开案 r Reversible Overlap Operator For Efficient Lossless DataCompression」,与美国专利申请案第2007/0036223号公开案「 Efficient Coding And Decoding Of Transform Blocks J 。这些都是提到上述的HD Photo 格式,先将例如图示的2维(2-D)输入数据进行分割(Tiling),而后为了减少 独立区块转换带来的区块效应,因此先进行重迭转换,如图所示的向前重迭 (Forward Overlap)滤波转换。而后再对原切割的区块进行区块转换,也就是 HD Photo格式的核心转换(HD Photo Core Transform, PCT),可以取得一个 DC系数(DC coefficient)与十五个AC系数(AC coefficients)。而此HD Photo 格式采用两阶式的转换,因此再将DC值集合成区块,并再次进行重迭滤波转 换与区块转换。
上述重迭滤波转换与核心转换皆使用了提升式(Li f t i ng)结构来确保无 失真(Lossless)压缩的可能性。由于提升式结构每一步骤都是完全可逆 (Reversible),若编码过程采取无失真的压缩转换领域的信号,则在译码时 先进行逆核心转换,再进行逆重迭滤波转换,就可得到一模一样的原图。在 HD Photo格式可自行选择是否进行第一阶的重迭滤波转换与第二阶的重迭滤 波转换。得到的DC系数与AC系数经过量化(Quantization)与熵编码(Entropy Coding)处理后,经过封包化(Packe t i za t ion)后即可得到压缩比特流 (Compressed Bitstream)。
此HD Photo规格,与以往JPEG标准有许多不同之处,其中包括可以接 受更大范围的像素值域,采用自订的YCoCg色彩空间,自订的两阶重迭转换 (Lapped Transform)运算与系数预测(Prediction)运算。请参照图3,主要 是说明根据HD Photo格式进行两阶段转换后的结果,在熵编码的部分,依转 换之后的不同位置,可以将系数分为不同的类型,例如标号310所指的内容 即属于经由第一阶转换后得到的结果的大区块(Macroblock),而标号320则 是寄存第一阶转换后得到的结果的所有DC值。并且接着进行第二阶转换,而 其结果则如标号330所示的L0WPASS方块内容。而整个转换的结果,则分为 四种不同类型的数据,包括DC、 L0WPASS、 HIGHPASS及FLEXBITS,再才艮据这 些数据进行编码。
如图3经过转换、量化及系K预测后得到一个大区块(Macroblock) 310 的系数,包括16个小方块,每个小方块有4乘4个系数。这些系数包括一个 DC方块(Tile—DC)与十五个AC系数,而这些AC系数则是属于HIGHPASS方块 (Tile—HIGHPASS)类型的系数及FLEXBITS方块(Tile一FLEXB工TS)类型的系数而经过第一阶转换后将所有DC方块(Tile—DC)集合成为标号320所指的4乘 4区块。而标号330内则包括一个DC系数以及其它十五个图示中标示为LP 的LOWPASS方块(Ti le—LOWPASS)。
DC方块(Ti 1 e—DC)中的系数首先会经过系数正规化(No簡1 i za t i on)的动 作,接着进行编码,首先依正规化后的系数是否为零,产生区块类型信息 (Coded Block Pattern),并对其编码,接着将正规化后的系数利用自订的可 调式(Adaptive)可变长度编码来编码,最后则将系数因正规化所余下的位利 用固定长度编码来编码,并依系数是否为零来决定是否对系数的正负号进行 固定长度编码。
LOWPASS方块(Tile丄OWPASS)的编码和TILE—DC类似,在系数经过正规 化后,首先依4乘4区块中15个系数是否全为零产生区块类型信息并对其编 码,接着正规化后的系数将经由可调式扫描(Adaptive Scan)的顺序转成游程 编码,再进行可调式可变长度编码。对正规化所余下的位则依固定的扫描方 式利用固定长度编码来编码,当系数不为零而正规化后为零时,系数的正负 号也会进行固定长度编码。
HIGHPASS方块(Tile—HIGHPASS)和FLEXBITS方块(Ti le—FLEXBITS)的编 码和TILE—LOWPASS类似,同样是对AC系^:部分进^f亍编码,TILE —HIGHPASS 中的串流包括了区块类型信息和正规化后的系数编码,而TILE-FLEXBITS中 的串流则包括了正规化所余下的位和某些系数的正负号固定长度编码。
HD Photo格式提供了两种不同的串流格式,第 一种空间域模式(Spatial Mode)和传统的编码相同,以大区块的串接为主,.每一个大区块中先有DC方 块(Tile—DC)与LOWPASS方块(Tile-LOWPASS)的串流,也就是压缩比特流。 接着,依4乘4区块的顺序,每一个区块中以HIGHPASS方块(Ti le — HIGHPASS) 和FLEXBITS方块(TUe —FLEXBITS)的顺序将编码串起来。
另外一种串流格式为频率域模式(Frequency Mode),以方块(Tile)的串 接为主,将四种不同类性的方块(Ti 1 e)各别依照大区块编码的顺序编码完后, 再将四种不同类性的方块(Tile)的串流串接起来。
根据上述HD Photo格式的编码处理过程,若是以硬件来实现HD Photo 格式的熵编码(Entropy Encoding),由于HD Photo 4各式会对一个系:数进行正 规化的动作,使得对一个系数而言,除了必需对正规化后的系数进行编码外, 正规化后余下的位也必需进行编码,造成了所需运算时钟数的增加,影响处理的效率。

发明内容
本发明提供一种编码电路,适用于同时对编码系数进行第一类编码程序 与第二类编码程序。此第一类编码程序为对编码系数进行可调式扫描,第二 类编码程序为对编码系数进行固定式扫描。此编码电路包括读取与写入控制 电路、第一燏编码器、第二熵编码器与寄存装置。此读取与写入控制电路用 以读取与寄存编码系数,并用以同时输出第 一类编码系数与第二类编码系数。 此第一熵编码器连接到读取与写入控制电路,并且用以接收第一类编码系数, 并对第 一类编码系数进行第 一类编码程序,并据以输出第 一类编码串流数据。 第二熵编码器连接到读取与写入控制电路,此第二熵编码器用以接收第二类 编码系数与正规化判断信号,并据以对第二类编码系数进行第二类编码程序, 并据以输出第二类编码串流数据。上述寄存装置连接到第一熵编码器与第二 熵编码器,用以寄存第一类编码串行数据与第二类编码串行数据,并以时间 上交错的方式输出。
上述的编码电路,在一实施例中,第一类编码程序与第二类编码程序分
别为符合HD Photo规格的TILE—HIGHPASS和T工LE一FLEXBITS的系数熵编码程 序。
本发明提供一种熵编码方法,包括寄存用以进行熵编码的编码系数,并 据以同时提供第一类编码系数与第二类编码系数,其中,第一类编码系数是 对编码系数进行可调式扫描而取得,第二类编码系数是对编码系数进行固定 式扫描而取得。接着根据第一类编码系数进行第一类编码程序,并据以输出 第一类编码串流数据,同时接收正规化判断信号,并根据第二类编码系数该 与该正规化判断信号进行第二类编码程序,据以输出第二类编码串流数据。 寄存第 一类编码串行数据与第二类编码串行数据,并以时间上交错的方式输 出。
为让本发明的上述特征和优点能更明显易懂,下文特举较佳实施例,并 配合附图,作详细说明如下。


图1说明传统的图像压缩编码方式,主要是由一个原始的图像数据经过转换与编码压缩后产生编码串流(Encoded Stream)流程示意图。
图2为说明符合HD Photo格式的重迭滤波转换与核心转换流程示意图。
图3是说明根据HD Photo格式进行两阶段转换后的结果示意图。
图4是说明本发明实施例的可同时编码TI LE — HIGHP A S S和TI LE—FLEXB ITS
的硬件架构的编码电路方块示意图。
图4A与4B是说明本发明图4实施例的可同时编码TILE—H工GHPASS和
TILE-FLEXBITS的硬件架构中,分别采用实时执行正规化运算,或是预先正
规化运算并将结果存在正规化系数判断单元的实施例电路方块示意图。
图5A是i兌明可同时编码TILE-HIGHPASS和TILE-FLEXBITS的编码电路,
运用在编码器时的电路方块示意图。
图5 B是说明本发明的可同时编码TI LE - HI GHPAS S和TI LE - FLEXB ITS的硬
件架构中,采用实时执行正规化运算的实施例电路方块示意图。 附图符号说明
110:进行取样及色彩空间转换的处理模块
120:进4亍重迭转换(Lapped Transform)的处理才莫块
130:进行取样及色彩空间转换的处理模块
140:进行进行量化(Quantization)及系数预测(Prediction)并产生区 块类型信息(Coded Block Pattern)的处理才莫块 400:编码电3各 410:读取/写入控制电路
420: TILE—HIGHPASS熵编码器(Entropy Encoder) 430: TILE —FLEXBITS熵编码器
440:正规化系数(Normalized Coef f icient)判断单元 450: TILE-HIGHPASS和TILE—FLEXBITS位串流緩存单元(Bitstream Buffer)
500:熵编码电,各 510:读取/写入控制电路 511:可调式扫描位置产生器 515:系数緩存单元
520:处理TILE—DC、 TILE—L0WPASS与TILE—HIGHPASS熵编码器 530: TILE-FLEXB工TS熵编码器540:正规化系数判断单元
560:寄存装置
562:TILE一DC、 TILE —L0WPASS与TILE —HIGHPASS位串流緩存单元
564:TILE-FLEXBITS位串流緩存单元
570:写出电路
572:多路复用器
574:内存写入单元
580:内存单元。
具体实施例方式
HD Photo格式的编码处理过程,若是以硬件来实现HD Photo格式的熵 编码(Entropy Encoding),由于HD Photo格式会对一个系数进行正规化的动 作,使得对一个系数而言,除了必需对正规化后的系数进行编码外,正规化 后余下的位也必需进行编码。而这些运算处理过程中,HIGHPASS方块 (Tile—HIGHPASS)和FLEXBITS方块(Tile—FLEXBITS)负责AC部分所有系数的 编码,占整个图像全部系数的90%以上,是硬件进行HD Photo格式熵编码中 最消耗时钟的部份。
本发明针对HD Photo格式的熵编码,提出一套可同时编码TILE—HIGHPASS 和TILE-FLEXBITS的硬件架构,藉以降低硬件编码所需要的运算时钟数。
由于TILE-HIGHPASS和TILE—FLEXBITS是针对同样的系数进行编码,差 别在于编码时系数扫描的顺序不同及负责正规化后产生的不同位区段, TILE —HIGHPASS负责前段,例如最高有效位(Most Significant Bits, MSB) 区段。TILE—FLEXBITS负责后段,例如最低有效位(Least Significant Bi ts , LSB)区段,而经由正规化后的结果就是由此前位区段与后位区段所组成。因 此,本发明针对TILE—HIGHPASS及TILE—FLEXBITS所要编码的系数提供有两 个读取端口的寄存区,使得TILE—HIGHPASS及TILE—FLEXBITS所需的不同位 置系凄t可同时4皮读耳又,配合可以编码TILE—HIGHPASS和TILE—FLEXBITS的电 路及可以同时写入两组串流的串流缓冲区,使两个tile同时进行编码,来下 降硬件编码的时钟数。
最后,编码产生的分属不同类性的方块(Tile)的串流,将可在整个图像 编码完成之后以频率域模式(Frequency Mode)的串流格式,将四个不同类性
l的方块(Tile)的串流进行串接,来完成符合HD Photo规格的串流。
请参照图4A或4B,说明本发明实施例的可同时编码TILE-HIGHPASS和 TILE-FLEXBITS的硬件架构的编码电路方块示意图。在此编码电路400中, 包括用以读取与寄存系数的读取/写入控制电路410、连接到读取/写入控制 电路410的TILE-HIGHPASS熵编码器(Entropy Encoder) 420与TILE一FLEXBITS 熵编码器430 、正规化系数(Normalized Coefficient)判断单元440与 TILE—HIGHPASS和TILE—FLEXBITS位串流緩存单元(Bi tstream Buffer) 450。
在此编码电路400架构中,藉由同时进行TILE-HIGHPASS和 TILE—FLEXBITS的编码,使得硬件进行熵编码时所需要的时钟数。根据HD Photo格式所进行的编码处理过程中,上述两种编码所需要的处理时间占整 个图像处理时间90%以上,因此,若能有效采用此架构,将可有效增加处理 的效率与减少处理的时间。由于TILE—HIGHPASS和TILE一FLEXBITS中对系数进行编码的扫描顺序不 同,TILE —HIGHPASS为可调式扫描(Adaptive Scan),而TILE—FLEXBITS为固 定式扫描。本实施例的读取/写入控制电路410,可以接受两种目前编码的顺 序,依各别的扫描方式转变成正确的系数位置,再同时将两者所需的系数读 出给下一阶的编码器进行编码。
此读取/写入控制电路410包括一个符合HD Photo Mi各的可调式扫描位 置产生器411与系数緩存单元(Coefficient Buffer)415,并可依照底下的任 何一种方式,完成所需的读取与写入正确位置的动作。
其中一种方式为,写入系数至系数緩存单元415时,依不同摆放的顺序 存储两组系数阵列,其中一组依可调式扫描顺序摆放,而另一组则依固定式 扫描顺序摆放。如此,在读取时,只要分别从两组系数阵列,依阵列摆放顺 序读出即可。
另外一种方式为,在写入系数至系数緩存单元415时,依固定式扫描顺 序存储一组系数阵列。如此,在读取时,固定式扫描顺序即为系数阵列中的 系数位置,再利用可调式扫描位置产生器411,将可调式扫描顺序转成系数 位置,再将两个位置的系数由系数阵列中读出即可。
而又另一种方式为,在写入系数至系数緩存单元415时,依可调式扫描 顺序存储一组系数阵列。 如此,在读取时,可调式扫描顺序即为系数阵列 中的系数位置,再利用可反向的可调式扫描位置产生器411,将固定式扫描顺序转成可调式扫描顺序,即系数位置,再将两个位置的系数由系数阵列中 读出即可。
系数缓存单元415必需可以同时读两个以上不同位置的系数,在选^%实
施例中,此系数緩存单元415可以由内存,例如多端口静态随机存取内存 (Static Random Access Memory, SRAM),或由緩存器搭配两组多路复用选择 器来实现。
因为TILE—FLEXBITS在HD Photo规格的规定中,最多只会用到系数中后 段的15个位进行编码,所以,其实,只要系数中后段的15个位可以支持两 个系数同时读取即可。
为了决定系数的正负号是否需要在TILE-FLEXBITS中进行编码,本实施 例利用一个可以得知依TILE_FLEXBITS需求读出的系数,其正规化后是否为 零的电路,来达成此项要求,也就是如图4中的正规化系数(Normalized Coefficient)判断单元440。而其判断正规化系数是否为零的结果,经由信 号442传送乡合TILE—FLEXBITS熵编码器430。
此判断正规化系数是否为零的电路,可以按照不同的方法加以实现。例 如,在选择实施例中,可以提供另一寄存区,在将输入的系数信息写入系数 緩存单元415时,同时以实时的方式计算并依固定式扫描写入系数,并加以 正规化后判断是否为零,编码时再藉由读取此寄存区数据得知系数正规化后 是否为零。
在一实施例中,上述判断正规化系数是否为零的电路,包括运算电路与 緩存器,都可置于正规化系数判断单元440内。此正规化系数判断单元440 的运算电路可进行正规化的运算,而緩存器则用以存储正规化的结果。
另一种作法,是直接自系数緩存单元415中读出给TILE_FLEXBITS熵编 码器430使用的系数,进行正规化是否为零的计算。
TILE_HIGHPASS熵编码器420接收由读取/写入控制电路410所输出,经 由可调式扫描顺序扫描而取得,并且适用于TILE—HIGHPASS熵编码方式的系 数412 (如图所示的Coeff-0),并据以进行TILE—HIGHPASS熵编码处理程序。 除此之外,经由TILE—HIGHPASS熵编码处理程序后,TILE-HIGHPASS熵编码 器420也会输出控制信号422反馈给读取/写入控制电路410,用以调整扫描 方式。而经由TILE—HIGHPASS熵编码处理后的结果经由信号424传送到下一 阶的位串流緩存单元450。而TILE—FLEXBITS熵编码器430接收由读取/写入控制电路410所输出, 经由固定式扫描顺序扫描而取得,并且适用于TILE-FLEXBITS熵编码方式的 系数414(如图所示的Coeff —1),以及正规化系数是否为零的结果的信号442, 并据以进行TILE_FLEXBITS熵编码处理程序。而经由TILE_FLEXBITS熵编码 处理后的结果经由信号434传送到下一阶的位串流緩存单元450 。 TILE-FLEXBITS熵编码器430也会输出控制信号432 (如图所示的Index —1)反 馈给读取/写入控制电路410,用以达成上述可调式扫描位置产生器411与系 数缓存单元415之间所需的读取与写入正确位置的操作依据。
当TILE-HIGHPASS熵编码器420和TILE —FLEXBITS熵编码器4 30同时进 行编码时,为了处理同时产生的两组编码。本实施例利用一个可以同时将两 组编码分别进行连接,再同时将两组串流写入的串流緩沖区以进行緩沖的位 串流缓存单元450。此位串流緩存单元45Q可以利用两个以上的SRAM或緩存 器加以实现。
当上述条件满足时,TILE-HIGHPASS和TILE—FLEXBITS便可以同时进行 编码,并将连接好的编码串流存储于位串流緩存单元45Q中暂时存储。
最后,可以利用一组写出电路,并在时间上以交错的方式,写出位串流 緩存单元450中的数据至内存中。配合其它可进行TILE—DC和TILE—LOWPASS 编码的电^^将编码完成后,将四组串流再进行串接的动作,完成HD Photo中 频率域模式的编码串流处理。
上述正规化系数判断单元44G包括可进行正规化运算的运算电路与用以 存储正规化结果的緩存器。具体实施例中可参照图4A所示,系分别说明采用 实时计算正规化结果的实施例示意图。当TILE-FLEXBITS熵编码器430接收 由读取/写入控制电路41G所输出,经由固定式扫描顺序扫描而取得,并且适 用于TILE—FLEXBITS熵编码方式的系数414(如图所示的Coeff —1)时,这些系 数414(Coeff —1)同时传送到正规化系数判断单元440进行实时的正规化运 算。而正规化系数判断单元440则接着将正规化系数是否为零的结果,经由 信号442传送到TILE—FLEXBITS熵编码器430。
另一正规化的运算的具体实施例可参照图4B所示,直接将系数输入至正 规化系数判断单元440中,并经过正规化运算后,将其结果存在正规化系数 判断单元440内。当TILE—FLEXBITS熵编码器430输出控制信号432 (Index一l) 反馈给读取/写入控制电路410,用以达成可调式扫描位置产生器411与系数緩存单元415之间所需的读取与写入正确位置操作的依据。并同时传送到正 规化系数判断单元440,读出正确位置的正规化运算结果,并经由信号442 传送到TILE-FLEXBITS熵编码器430。
上述实施例所提出可同时编码TILE _ HIG HP AS S和TILE _ FLEXBITS的电路, 运用在熵编码器时,其电路方块示意图如图5A所示,是提出一种具有可以完 成HIGHPASS方块(Tile — HIGHPASS)和FLEXBITS方块(Ti le —FLEXBITS)同时编 码,以降低编码处理时钟数的熵编码电路架构500。
此熵编码电路架构500包括读取与寄存系数的读取/写入控制电路510 的可调式扫描位置产生器511与系数緩存单元515,还包括可处理TILE—DC、 TILE-LOWPASS与 TILE—HIGHPASS熵编码器(Entropy Encoder)520与 TILE—FLEXBITS熵编码器530、正规化系数(Normal ized Coef f icient)判断单 元540、寄存装置560、写出电路570与内存单元580。而此寄存装置560包 括TILE —DC、 TILE—LOWPASS与TILE—HGHPASS位串流緩存单元(Bi ts tream Buffer) 562和TILE—FLEXBITS位串流缓存单元(Bi ts tream Buffer) 564。而 写出电路570则包括一个多路复用器572与内存写入单元574。
此系数緩存单元515可同时读出两个不同位置系数的寄存区,并输出两 种不同位置的系数512(如图的系数Coeff —O)与514 (如图的系数Coef f — l)分 别传送到熵编码器520与TILE-FLEXBITS熵编码器530。而此系数緩存单元 515在选择实施例中可以使用多个緩存器搭配两组多路复用选择器加以实现。
而此读取/写入控制电路510是利用一个符合HD Photo规格的可调式扫 描位置产生器511,在读取时将可调式扫描顺序转成读出的系数位置。如图 中所示的可调式扫描位置产生器511接收熵编码器520所输出的调整控制信 号522,而据以调整输出的地址信号Addr —0,而系数緩存单元515可根据此 地址信号Addr一O将对应的系数(Coeff —O)读出。
为了决定系数的正负号是否需要在TILE-FLEXBITS中进行编码,本实施 例利用一个可以得知依TILE—FLEXBITS需求读出的系数,其正规化后是否为 零的电路,来达成此项要求,也就是正规化系数判断单元540,其用以判断 系数正规化后是否为零。在实施例中,此正规化系数判断单元540可利用多 个緩存器搭配多路复用选择器来实现,緩存器中的内容可以在将系数写入系 数緩存单元515时,同步计算此系数正规化后是否为零,并将此结果传送给 TILE-FLEXBITS熵编码器530。熵编码器520为可以进^亍TILE-DC、 TILE — L0WPASS及TILE — HIGHPASS熵 编码三种运算的的编码器,并输出调整控制信号522到可调式扫描位置产生 器511,以便调整扫瞄的方式。而TILE-FLEXBITS熵编码器530为可以进行 TILE—FLEXBITS熵编码的编码器,可以由读入的系数、系数正规化后是否为 零、及正规化系数进行固定长度的编码。
TILE_FLEXBITS熵编码器5 30输出地址控制信号5 32 (如图所示的Addr — 1) 反馈给读取/写入控制电路510,用以达成上述可调式扫描位置产生器511与 系数緩存单元515之间所需的读取与写入正确位置的操作依据。而同时将此 地址控制信号532 (Addr-1)传送到正规化系数判断单元540,读出正确位置的 正规化运算结果传送到TILE—FLEXBITS熵编码器5 30。
另外,熵编码器520与TILE-FLEXBITS熵编码器530的编码结果,分别 经由信号524与5 34传送到寄存装置560。此寄存装置560为可同时写入两 组编码结果的位串流缓沖区,包括用以寄存TILE—DC、 TILE-L0WPASS与 TILE-HIGHPASS编码后的结果的位串流緩存单元562,以及用以存储 TILE-FLEXBITS编码后的结果的位串流緩存单元564。
上述的寄存装置560在选择实施例中,可以利用两个内存,例如多端口 静态随机存取内存(SRAM)来实现。其中一个SRAM存储TILE_DC、TILE-LOWPASS 及TILE_HIGHPASS编码后的串流,另外一个SRAM存储TILE—FLEXBITS编码后 的串流。
写出电路570可由一个多路复用器572与内存写入单元574所组成。此 多路复用器572的两个输入端分别经由线路56 3与565连接到位串流緩存单 元562与564。而多路复用器572的输出则传送到内存写入单元574。而利用 内存写入单元574,可将多路复用器572的输出575传送到内存单元580。此 写出电路570可以利用时间上交错的方式,将位串流緩存单元562与564所 寄存的数据读出并写出至内存单元580中;亦即,写出电路570 —次仅进行 其中一个串流緩存单元562/564的数据的读出,并且交错地读取不同串流緩 存单元564/562的数据,以将全部数据读取出来。
在图像压缩编码方式,经过HD Photo格式的色彩空间转换、重迭转换、 量化及系数预测后的系数,将依固定式扫描顺序写入至系数緩存单元515中。 同时,经过计算后,写入正规化系数判断单元540中纪录系数正规化是否为 零的緩存器。接着,本实施例会根据输入的区块类型信息(Coded BlockPa Uern)及正M/f匕系l丈(Normalized Coefficient),利用墒编码器520进4亍 TILE—DC及TILE—L0WPASS的编码,并存储到寄存装置560。
接着同时利用熵编码器520及TILE—FLEXBITS熵编码器530分别同时进 行TILE—HIGHPASS及TILE-FLEXBITS的编码,存储到寄存装置560,并藉由 写出电路570交错地将寄存装置560的位串流緩存单元562与564串流位数 据写出到内存单元580。最后,再将内存单元580中的四份分属不同tile的 串流,以频率域模式的方式,进行串流重组,完成符合HD Photo格式的编码。
上述正规化系数判断单元54G包括可进行正规化运算的运算电路与用以 存储正规化结果的缓存器。在此实施例中,是直接将系数输入至正规化系数 判断单元540中,并经过正规化运算后,将其结果存在正规化系数判断单元 540内。当TILE —FLEXBITS熵编码器530输出地址控制信号532 (Add-1)反馈 给系数缓存单元515,用以达成与系数緩存单元515之间所需的读取与写入 正确位置操作的依据。并同时将地址控制信号532 (Add-1)传送到正规化系数 判断单元540,读出正确位置的正规化运算结果,并传送到TILE—FLEXBITS 熵编码器530。
另一具体实施例,可参照图4A所示的电路设计架构,请参照图5B所示, 也就是可以采用具有实时计算正规化的设计。当TILE-FLEXBITS熵编码器 接收由读取/写入控制电路510所输出,经由固定式扫描顺序扫描而取得,并 且适用于TILE—FLEXBITS熵编码方式的系数514(如图所示的Coeff_l)时,这 些系数514 (Coef f 一 1)则同时传送到正规化系数判断单元540进行实时的正规 化运算。而正规化系数判断单元540则接着将正规化系数是否为零的结果传 送到TILE_FLEXBITS熵编码器5 30。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何 所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作 些许的更动与润饰,因此本发明的保护范围当视本发明的申请专利范围所界 定者为准。
权利要求
1.一种编码电路,其用来同时对一编码系数进行第一类编码程序与第二类编码程序,其中,该第一类编码程序为对该编码系数进行可调式扫描,该第二类编码程序为对该编码系数进行固定式扫描,该编码电路包括读取与写入控制电路,用以读取与寄存该编码系数,并用以同时输出第一类编码系数与第二类编码系数;第一熵编码器,连接到该读取与写入控制电路,该第一熵编码器用以接收该第一类编码系数,并对该第一类编码系数进行该第一类编码程序,并据以输出第一类编码串流数据;第二熵编码器,连接到该读取与写入控制电路,该第二熵编码器用以接收该第二类编码系数与一正规化判断信号,并据以对该第二类编码系数进行该第二类编码程序,并据以输出第二类编码串流数据;以及一寄存装置,连接到该第一熵编码器与该第二熵编码器,用以寄存该第一类编码串行数据与该第二类编码串行数据,并以时间上交错的方式输出。
2. 如权利要求1所述的编码电路,还包括一正规化系数判断单元,连接到该读取与写入控制电路,用来对该编码 系数进行正规化处理,判断经过正规化处理后的编码系数是否为零,并据以 输出该正规化判断信号给第二熵编码器。
3. 如权利要求1所述的编码电路,其中,该第一类编码程序与该第二类 编码程序分别为符合HD Photo规格的TILE-HIGHPASS和TILE—FLEXBITS的系 数熵编码程序。
4. 如权利要求1所述的编码电路,其中,该第一熵编码器更接收该编码 系数正规化后的第 一位区段,该第二熵编码器更接收该编码系数正规化后的 第二位区段,其中,该编码系数进行正规化后由该第一位区段与该第二位区 段所组成。
5. 如权利要求4所述的编码电路,其中,该第一位区段为该编码系数进 行正规化后,得到的多个最高有效位,而该第二位区段为该编码系数进行正 规化后,得到的多个最低有效位。
6. 如权利要求1所述的编码电路,其中,该第一熵编码器传送可调控制 信号反馈到该读取与写入控制电路,用以调整该可调式扫描进行的方式。
7. 如权利要求1所述的编码电路,其中,该读取与写入控制电路包括两 读取端口缓存单元,其中,该第一熵编码器与该第二熵编码器可同时经由该 两读取端口分别读取该编码系数不同位置的数据。
8. 如权利要求7所述的编码电路,其中,该读取与写入控制电路緩存单元对接收的该编码系数,依不同摆放的顺序存储在两组系数阵列,其中,该 两组其中的一组依可调式扫描顺序摆放,而该两组其中的另 一组则依固定式 扫描顺序摆放。
9. 如权利要求7所述的编码电路,其中该读取与写入控制电^^緩存单元 还包括可调式扫描位置产生器,其中,对接收的该编码系数,依固定式扫描 顺序存储一组系数阵列,在读取时,该固定式扫描顺序即为该系数阵列中的 固定扫瞄的系数位置,用以提供给该第二熵编码器,而根据可调式扫描顺序 读取时,藉由该可调式扫描位置产生器,将该可调式扫描顺序转成另一系数 位置,再将另 一 系数位置的系数由该系数阵列中读出并提供给该第 一熵编码 器。
10. 如权利要求7所述的编码电路,其中,该读取与写入控制电路緩存单 元还包括可调式扫描位置产生器,其中,对接收的该编码系数,依可调式扫 描顺序存储一组系数阵列,在读取时,该可调式扫描顺序即为该系数阵列中 的可调式扫描的系数位置,用以提供给该第一熵编码器,而根据固定扫瞄顺 序读取时,藉由该可调式扫描位置产生器的反向操作,将该固定式扫描顺序转成另 一 系数位置,再将另 一 系数位置的系数由该系数阵列中读出并提供给 该第二熵编码器。
11. 如权利要求7所述的编码电路,其中,该两读取端口缓存单元为多端 口静态随机存取内存。
12. 如权利要求7所述的编码电路,其中,该两读取端口緩存单元包括多个緩存器与两组多路复用选择器。
13. —种熵编码方法,包括寄存用以进行熵编码的编码系数,并据以同时提供第 一类编码系数与第 二类编码系数,其中该第一类编码系数是对该编码系数进行可调式扫描而取 得,该第二类编码系数是对该编码系数进行固定式扫描而取得;根据该第一类编码系数进行第一类编码程序,并据以输出第一类编码串 流数据,同时接收正规化判断信号,并根据该第二类编码系数该与该正规化判断信号进行第二类编码程序,据以输出第二类编码串流数据;以及寄存该第 一类编码串行数据与该第二类编码串行^:据,并以时间上交错 的方式输出。
14. 如权利要求13所述的熵编码方法,其中,该第一类编码程序与该第 二类编码程序分别为符合HD Photo规格的TILE—HIGHPASS和TILE—FLEXBITS 的系数熵编码程序。
15. 如权利要求13所述的熵编码方法,其中,该第一类编码程序完成后, 传送可调控制信号反馈调整该可调式扫描进行的方式。
16. 如权利要求13所述的熵编码方法,其中,寄存该编码系数并同时提 供该第 一 类编码系数与该第二类编码系数的方式为经由两读取端口寄存区, 可同时经由该两读取端口分别读取该编码系数不同位置的数据。
17.如权利要求16所述的熵编码方法,其中,寄存该编码系数是依不同 摆放的顺序存储在两组系数阵列,其中,该两组其中的一组依可调式扫描顺 序摆放,而该两组其中的另一组则依固定式扫描顺序摆放。
18. 如权利要求16所述的熵编码方法,其中,寄存该编码系数时,还包 括进行可调式扫描位置产生程序,其中,对接收的该编码系数,依固定式扫 描顺序存储一组系数阵列,在读取时,该固定式扫描顺序即为该系数阵列中 的固定扫瞄的系数位置,用以提供作为该第二类编码系数,而根据可调式扫 描顺序读取时,藉由该可调式扫描位置产生程序,将该可调式扫描顺序转成 另 一 系数位置,再将另 一 系数位置的系数由该系数阵列中读出并提供作为该 第一类编码系数。
19. 如权利要求16所述的熵编码方法,其中,寄存该编码系数时,还包 括进行可调式扫描位置产生程序,其中,对接收的该编码系数,依可调式扫 描顺序存储一组系数阵列,在读取时,该可调式扫描顺序即为该系数阵列中 的可调式扫描的系数位置,用以提供作为该第一类编码系数,而根据固定扫 瞄顺序读取时,藉由该可调式扫描位置产生程序的反向搡作,将该固定式扫 描顺序转成另 一 系数位置,再将另 一 系数位置的系数由该系数阵列中读出并 提供作为该第二类编码系数。
20. —种编码电^各,包4舌读取与写入控制电路,用以读取与寄存该编码系数,并用以同时输出第 一类编码系数与第二类编码系数;第一熵编码器,连接到该读取与写入控制电路,该第一熵编码器用以接 收该第一类编码系数,并对该第一类编码系数进行多个第一类编码程序,并据以输出多个编码串流数据;第二熵编码器,连接到该读取与写入控制电路,该第二熵编码器用以接 收该第二类编码系数与正规化判断信号,并据以对该第二类编码系数进行第二类编码程序,并据以输出第二类编码串流数据;以及一寄存装置,连接到该第一熵编码器与该第二熵编码器,用以寄存该些 第 一类编码串行数据与该第二类编码串行数据,并以时间上交错的方式输出。
21.如权利要求20所述的编码电路,其中,该些第一类编码程序为符合 HD Photo规格的TILE一DC、 TILE—LOWPASS与TILE—HIGHPASS的系数熵编码程 序,而该第二类编码程序分别为符合HD Photo规格的TILE—FLEXBITS的系数 熵编码程序。
全文摘要
一种熵编码电路,具有两个熵编码器,分别适用于对编码系数以可调式扫描与固定式扫描方式,读取后进行两类的编码程序。当一熵编码器进行第一类编码程序时,另一熵编码器接收第二类编码系数与正规化判断信号,并据以对第二类编码系数进行第二类编码程序。而上述两类编码程序所产生的第一类编码串行数据与第二类编码串行数据,以时间上交错的方式作为熵编码电路的输出。
文档编号H04N7/36GK101557515SQ20081009100
公开日2009年10月14日 申请日期2008年4月8日 优先权日2008年4月8日
发明者林家平, 黄朝宗 申请人:联咏科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1