在数据处理系统内的位图字形数据存储的制作方法

文档序号:7534261阅读:352来源:国知局
专利名称:在数据处理系统内的位图字形数据存储的制作方法
技术领域
本发明涉及在数据处理系统中的位图字形数据的存储。
在数据处理系统中文本数据一般被存储为字符码序列,在要求向用户提供文本数据时,例如在屏幕上显示它或打印它,则必须将每个字符码转换成能够提供给用户的象形文字的形式。这种转换使用了字形数据,它对每一个字符码指定一个象形文字的形式。一种字形数据是对每个字符码存储该字符的位图的表示法。对于显示和打印,这种位图处理起来可以相对地简单一些。
在此种系统中发生的问题是在存储字形数据和用于访问这些字形数据的任何相关的数据时所使用的存储容量的总量。在象形文字字符(例如中文、朝鲜文和日文字符)的情况下所占用的存储器资源的总量能够成为一将特殊的问题。在这些场合,需要被表示的字符的数量可能非常之高,例如中国的象形文字字形可能包括13,000个不同的象形文字字符。
人们强烈地期待能够减少为处理字形数据所需的存储容量的方法。
从一个方面看,本发明提供的装置用于将一个A位代码与一个表示所说的A位代码的可变长度代码数据的存储器中的一个存储单元相映射,所说的装置包括(i)第一查询逻辑,对所说的A位代码中的B位域字段响应,用于在第一查询表中访问与B位域相对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表的偏置值其指示在包含着大量第二查询表入口的第二查询表内的一个区域,一个可变长度代码偏置值和一个平均长度值;(ii)第二查询逻辑,对所说的A位代码里的C位字段响应,用于访问与所说的C位字段相对应的第二查询表入口,该入口在用所说的第二查询表偏置值指示的所说的第二查询表的所说的区域内,所说的第二查询表入口包括一个误差值;(iii)存储单元计算逻辑,用于计算在所说的存储单元的存储器中的地址,其依据是(iv)所说的可变长度代码偏置值;
(v)所说的平均长度值和与所说的C位字段匹配的在所说的第二查询表的所说区域内的一个位置的函数;(vi)所说的误差值,以及(vii)存储器存取逻辑,用于从所说的存储器中的所说的地址上读取所说的可变长度数据。
本发明的这方面追求的是减少与存取表示为可变长度代码数据形式例如,字符的像素位图的数据有关的开销。当着像素位图的可变长度编码能够产生一个高度的压缩时,就会引起一个困难即如何识别这种可变长度编码的数据的哪一具体部分表示给定的字符。本发明提供一种改进的机制以一种有利于降低这些查询表所需求的存储容量总量的方式利用第一查询表和第二查询表用于识别可变长度编码的数据这个部分,具体讲,本发明利用了这样的认识,即对应于一个具体的字符的可变长度编码的数据的位置能够只以这样的误差来推算,在这种推算中必须以单个字符被存储,因而减少了用于这种查询操作所需要的总的存储容量。
在本发明的优选实施例中,所说的第二查询表的所说的区域包含一个按照所说的A位代码值所存储的第二查询表的入口系列,因此,用所说的第二查询表的所说的区域,所说的第二入口按照所说的C位段被存储。
根据A位代码值的第二查询表的分类区域给出数据在第二查询表内被安排的方式的可预测性,这能被利用来在通过所涉及的区域进行检索时更有效地识别在第二查询表内的特殊的入口。
将附加的信息编码变成第二表的一个特别方便的方法是使用将符合于在第二表区域中正被寻找的匹配字符的入口的位置用作指示符,在其处对应的可变长度编码数据整个地位于字形数据内。更具体地讲,如果在第二表中的入口是在该区域内的第N个入口并且关于字形字符的可变长度编码数据的平均长度是从第一表已知的,则这两个值的乘积能够给出一个附加的偏置进入可变长度编码数据,就其整体来说通过更精确的位置。
判读字符码以对第一表和第二表进行存取的优选方法是利用该码的B个最高效位去检索第一表并且然后利用该码的C个最低有效位去检索一个在由第一表内所检索的入口指定的第二表的区域内的匹配的入口。
本发明的方法能通常被用于许多不同类型的字形,但在字形是象形字形时特别有用。象形文字字形通常包含大量的不同的字符,因此数据存储的要求是一个更关键的事。此外,在字符代码系列中通常存在着许多间隙,这使得表的查询更为困难。
字形数据可以以不同的方式被存储。例如字形数据可能被存储在非易失的磁存储媒质上,比如计算机的硬盘。但是,本发明特别适用于在其中字形数据被存储在集成电路的存储器里的系统,因为此类集成电路存储器一般相对费用较昂贵,因此降低所需数量的措施是非常优越的。
应该理解的是,特殊用途的逻辑电路可能被提供来完成为实现本发明的方法所需要的各种功能,同时,在许多情况中具体实现该方法的最好途径将是利用在软件控制下的数据处理逻辑操作,因此软件使得数据处理逻辑具体化以起到上面指出的各种不同的逻辑单元的作用。
从一个附加的方面看,本发明提供产生映像数据的装置用来将一个A位代码映像到一个描述所说的A位代码的可变长度编码的数据的存储器中的存储单元,所说的装置包括(i)第一查询表产生逻辑用于产生第一查询表,也即在所说的A位代码里的B位字段指示一个在第一查询表内与所说的B位字段对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表偏置值其指定包含有许许多多第二查询表入口的第二查询表内的一个区域,一个可变长度代码偏置值和一个平均长度值;并且(ii)第二查询表产生逻辑用于产生第二查询表使得在所说的A位代码里的C位字段指示在由所说的第二查询表偏置值所指示的所说的第二查询表的所说区域内与所说的C位段相对应的第二查询表的一个入口,所说的第二查询表的入口包括一个误差值;其中(iii)在所说的存储单元的所说的存储器中的一个地址可以被计算,其依据是(iv)所说的可变长度代码偏置值;(v)所说的平均长度值和在所说区域内的位置的函数;(vi)所说第二查询表其与所说的C位字段相匹配;以及所说的误差值。
从另一个方面来看,发明提供一种将A位代码映射到表示所说A位代码的可变长度代码数据的存储器内一个存储单元的方法,所说的方法包括的步骤有(i)根据在所说的A位代码中的B位字段,访问在第一查询表中与所说的B位字段相对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表偏置值其指向在包含有大量第二查询表入口的第二查询表内的一个区域,一个可变长度代码的偏置值和一个平均长度值;(ii)根据在所说的A位代码里的C位字段,访问在由所说的第二查询表偏置值所指示的所说的第二查询表的所说区域内的与所说的C位字段相对应的一个第二查询表的入口,所说的第二查询表入口包括一个误差值;(iii)计算在所说的存储单元的存储器中的地址,依据(iv)所说的可变长度代码偏置值;(v)所说的平均长度值和在所说的第二查询表的所说区域内的一个位置的函数,该位置与所说的C位字段相匹配;以及(vi)所说的误差值;并且(vii)从所说存储器的所说地址上读取所说的可变长度数据。
从另一个方面看,本发明提供一个生成映像数据的方法,用来将一个A位代码映射到表示所说A位代码可变长度代码数据的存储器的一个存储单元,所说的方法包括的步骤有(i)生成第一查询表使得在所说的A位代码里的B位字段指示在第一查询表中的与所说的B位段相对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表偏置值指向在包含有大量第二查询表入口的第二查询表内的一个区域,一个可变长度代码偏置值和一个平均长度值;以及(ii)生成第二查询表使得在所说A位代码里的C位字段指示在由所说的第二查询表偏置值所指示的所说第二查询表的所说区域内与所说C位字段对应的一个第二查询表入口,所说第二查询表入口包括一个误差值;其中(iii)所说存储单元的所说存储器中的地址可以被计算,其依据是(iv)所说的可变长度代码偏置值;
(v)所说平均长度值和在所说第二查询表的所说区域中的与所说C位字段相匹配的位置的函数;以及所说的误差值;本发明的进一步的目标是提供分解象形文字字符的象形文字字形数据的装置,所说的象形文字字符的非压缩数据以N乘M像素位图的形式出现,所说的装置包括(i)一个熵译码器,用于将熵译码成许多个熵代码,每个表示一幅P乘Q个像素的位图,从而生成许多幅关于所说的象形文字的字符的P乘Q像素的位图;以及(ii)用于将许多幅P乘Q像素位图合并的逻辑,以生成关于所说象形文字字符的M乘N像素的位图。
如上述,象形文字字形一般有非常多数目的字符。进一步讲,每个单独的字符可能在形状上是非常之复杂以致于为了适当地表示它需要相对细化的位图。本发明考虑到,在象形文字字符可能在形状上非常复杂的同时,实际上在它们的形式中存在着相当大的冗余部分,如果字符被分为较小的小片(tile),则某些形式的小片比其他小片许多倍更为频繁地出现。本发明的通过应用熵编码表示每个图标来利用这个现象,使得通常出现的图标可被给予较小的熵代码而不经常出现的图标被给予较大的熵代码。用这种方式,只要比较光栅扫描字符位图,就能够达到增大了的数据压缩度并由此得到压缩的比特流。赫夫曼(Huffman)编码是一种特别适合于用作此种目的的熵编码形式。
对于P乘Q像素位图,二比一的高宽比已被发现是特别适合的。具有16×16或24×24像素大小的单个的象形文字字符位图较好地兼顾了所能显示的细节和所需的存储容量的总量。
在与上面提及的讨论相类似的方法中,可以体会到,通过一个受软件控制工作的通用数据处理器可以方便地提供本发明的解压缩技术所需要的赫夫曼译码器和合并逻辑。
从一个附加的方面来看,本发明提供用于压缩象形文字字符的象形文字字形数据的装置,所说的象形文字字符的非压缩数据以N×M像素位图的形式出现,所说的装置包括(i)用于划分所说象形文字字符的所说的N×M像素的位图以产生许多幅P×Q像素位图的逻辑;以及(ii)熵编码器,用于将所说的象形文字字符的所说的许多P×Q
像素位图的每一幅熵编码为熵代码以生成表示所说象形字符的大量的熵代码。
从另一方面看,本发明提供一种将象形文字字符的象形文字字形数据进行解压缩的方法,所说象形文字字符的非压缩数据以N×M像素位图的形式出现,所说的方法包括的步骤有(i)对每个表示一个P×Q像素位图的大量的熵代码进行熵译码,以产生对于所说象形文字字符的大量的P×Q像素位图;以及(ii)将所说的大量的P×Q像素位图合并以生成所说的象形文字字符的所说的M×N像素的位图。
从另一个方面看,本发明提供一个压缩象形文字字符的象形文字字形数据的方法,所说的象形文字字符的非压缩数据以N×M像素的位图的形式出现,所说的方法包括的步骤有(i)划分所说的象形文字字符的所说N×M像素的位图以生成许多P×Q像素的位图;以及(ii)将所说象形文字字符的所说的许多P×Q像素位图的每一个进行熵编码成为熵代码,以产生表示所说象形文字字符的许多个熵编码。
将会理解到,当按索引排列的表以及具有熵代码的小片能够分别被使用时,它们一起提供一个特别改进了的系统。
本发明的以上的和其它的目的,特性和优点将从下面的说明性实施例的详细描述中明显地看到,该实施例应与附图结合起来理解。


图1说明一个字形符代码和该字形符代码的可变长度编码数据以及该字形符的图像表示之间的关系;图2说明将一个A位字形符代码映像于在保存表示该字符的一个像素位图的可变长度编码的数据的存储器内的一个存储单元的方法;以及图3是说明图2的系统的工作的流程图;图4说明一个象形文字字符位图以及在赫夫曼编码之前它的成小片状的划分;图5和6分别是说明象形文字字符的压缩和解压缩的流程图;以及图7图示一个用于完成关于图1至图6所描述的方法的通用数据处理系统。
图1说明表示在一种象形文字字形中的一个字形符的字符代码2,该象形文字字形是一个中文字符字形并且一般可能包括大约13,000字符。为此,采用双字节字符代码。
字符代码2可以被映射到表示所涉及的中文象形文字字符6的位图可变长度编码数据4。当着这个可变长度编码数据4被译码时(例如赫夫曼译码的,映射到组分小片并组合成字符形式),则所表示的中文象形文字字符6可以被显示和打印。
当着表示象形文字字符的像素位图数据是可变长度编码的,系统必须确定在此可变长度编码的数据流中在何处将会找到与特定字符代码6相对应的特定数据4。图2说明完成这种映像的方法。
两字节字符代码2需要被映射至表示该字形中所有象形文字字符的像素位图的赫夫曼编码的数据流10里的起始位置8。有关特定字符的可变长度编码数据4形成总的可变长度编码数据10的一小部分。
该处理的第一阶段是利用字符代码(A位字符代码)的9个最重要的位(B位段)去检索表1。表1是一个512入口的表,每行中有6字节数据。因此,字符码2的9个最高有效位9MSB能被用来直接检索表1内的行入口。
表1中所检索行的最初两个字节提供一个偏置值TB20ff指示在第二表表2里的一个位置。表1中该行里的随后三个字节提供一个赫夫曼偏置值Huffoff,指示在赫夫曼编码的数据流10里的一个起始偏置值。表1的所检索的行里的最后一个字节给出一个与具有对应于表1中该行的9个最高有效位的这些象形文字字符有关的平均长度值ArSz。
表2偏置值TB2off被用来指示表2内与9MSB值相对应的区域18的开始位置14。表2内的入口包括两字节的行,两字节行的前面7位被用来与字符代码2的相应的最低7个有效位7LSB匹配。表2的行中的剩余9位提供一个带符号的误差值Err。
知道了表2中的起始点14、表2中下一区域的起始点也能从表1中的下一个入口读出。这在表2里产生一个范围,在其中可以找到任何匹配的入口。于是通过将字符代码2的最低7个有效位与正在搜索的范围中点处表2中入口的最高有效的7位相比较,这个范围就被二进制地搜索。中点入口可能匹配或者换句话说能够确定无论如何匹配的入口将在正被试验的当前中点的上方或下方。如果中点不匹配,则在上方或下方的被识别范围的新的中点将被用来作下一次试验。这个过程被重量直到匹配被发现,或者确定对于该代码在表2中不存在有效的入口为止。
换句话说,从表2中的起始点14开始,向下对表2的入口进行搜索直到找到一个入口,该入口的7个最高有效的位与字符码2的最低7个有效位相匹配。
在表中产生匹配的入口将在第N行。表2里的诸入口可以在每个范围内对应于字符码2的9个最重要的位被分类以按照可能的有效字符码的最低的7个有效位的顺序进行,当着对应于字符码2,表2中的行被找到,则关于此行的误差值Err可以被读出。
如果赫夫曼编码的数据流10被存储在起始地址为Huff Date Start的存储器中,则为寻找与字符代码2相对应的数据的位置的一级近似通过将赫夫曼偏置值加到起始地址上来达到。这指向一个位置16,从此位置开始具有与字符代码相同的9个最高有效位的那些字符的赫夫曼编码数据被存储。表1还给出关于具有这9个最高有效位的字符代码的平均长度值AvSz,因此,当在表2中进行搜索并确定在区域18中的第N行是匹配于字符代码的最低7个有效位的行时,则数据4的起始地址的二级近似可以通过在地址16上加(AvSz*N)以得到地址20来作到,通过将地址20加上从表2读出的关于该字符代码2的误差值Err就能获得最终的地址8。
图3是说明图2所示过程的流程图。在步骤22上,利用字符码2的最高9个最高有效位完成了在表1中的查表操作以检索表1里的一行。
在步骤24上,表2偏置值TB2off,赫夫曼偏置值Huffoff以及平均长度值AvSz全部被从表1中所检索的行读出。
在步骤26上,为找出与字符码2的最低7位有效位匹配的入口,从由TB2off给定的位置开始在表2中进行搜索(从由表1指示的区域的顶部开始第N个)。
在步骤27,按照是否在表2中已经找到有效的匹配入口来进行试验,如果有效的匹配入口没有被找到,则过程中止。
在步骤28,从已在步骤26识别了的第N个入口读出误差值Err。
在步骤30,利用赫夫曼数据流10的存储器中的起始地址Huff DataStart加上值Huffoff,(AvSz*N)和Err计算赫夫曼编码的可变长度数据的地址。这个计算值指出关于字符码2的赫夫曼编码数据4的起始地址8。
在步骤32,从所计算的地址读出赫夫曼编码数据4。
在步骤34,赫夫曼编码数据4被分解并且绘制出字符的象形文字位图表示。
图4显示一幅表示象形文字字符6的N×M位图36。在此例中位图是一幅16×16像素的位图。在较高分辨率的系统中24×24像素的位图可以被使用。
像素位图36被分成32个4×2像素小片38。这些小片的每一个能用一个8位码唯一地标识,因为在小片中有256个可能的变化。
本发明利用了这样一种认识即一些小片图样比起其它的更为常用得多。因此,表示小片的8位码38可以用赫夫曼代码来代替,经常出现的小片被给予短的赫夫曼代码。用这种方式,象形文字像素位图字形数据能够被有效地压缩。
图5是一个说明象形文字字符的压缩的流程图。在步骤40,16×16像素位图被分成32个4×2像素的小片。在步骤42,这些小片的每一个被分配一个在0到255之间的与其对应的代码值,在步骤44,在0到255之间的32个值是使用对整个字形的赫夫曼编码表作赫夫曼编码的,以产生相应的赫夫曼代码流。这个赫夫曼代码流即是16×16像素位图36的可变长度编码表示。
图6是说明关于象形文字字符的像素位图的赫夫曼编码的字形数据的解压缩流程图。在步骤46,赫夫曼代码流被译码以产生在0到255之间的32个值的流。这些8位值每个对应于一个4×2像素小片的特定的像素图样。在步骤48,这些像素图样被查找并且以预置的顺序被合并(例如8个水平行的水平光栅,每行包括4个小片)。这组合成16×16像素的位图36并可以在步骤50被绘制(例如显示或打印)。
图7图示一个典型的数据处理系统,它可以被用来完成上述的方法。公用总线52连接中央处理器54,随机存取存储器56,只读存储器58和显示驱动电路60。显示器62,比如液晶显示板,是由显示驱动电路60驱动的。
在工作时,存储在只读存储器58中的软件可以由中央处理单元54执行以实现上述的方法。图7所示系统工作时完成先前所描述的各个逻辑单元的任务。
只读存储器58还存储赫夫曼编码字形数据10,第一表表1和第二表表2。
当着象形文字字符的像素位图36已被中央处理单元54译码时它可以被送至显示驱动电路60,该电路将依次提供必需的信号给显示器62,以向用户显示象形文字字符6。
虽然本发明的说明性的实施例已经在这里参照附图被详细说明,应该理解,本发明并不局限于这些明显的实施例,在那些由精通本专业的人员所作的不偏离本发明的领域和精神的各种各样的变化和修改亦能够是有效的,就象附加权利要求所规定的一样。
权利要求
1.将一个A位代码映射至表示所说A位代码的可变长度代码数据的存储器中的一个存储单元的装置,所说的装置包括(i)对所说A位代码里的B位字段响应的第一查询逻辑,用于在第一查询表内存取与所说B位字段相对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表偏置值其指向包含有许多第二查询表入口的第二查询表里的一个区域,一个可变长度码偏置值和一个平均长度值;(ii)对所说A位代码里的C位字段响应的第二查询逻辑,用于存取由所说的第二查询表偏置值指示的所说第二查询表的所说的区域内的与所说C位段相对应的第二查询表的入口,所说的第二查询表入口包括一个误差值;(iii)存储单元计算逻辑,用于计算在所说存储单元的所说存储器内的地址,依据(iv)所说可变长度代码偏置值;(v)所说平均长度值和在所说的第二查询表的所说区域内的位置的函数;其与所说的C位段相对应;以及(vi)所说的误差值;以及(vii)存储器存取逻辑,用于从所说的存储器的所说地址读取所说的可变长度数据。
2.按照权利要求1要求的装置,其中所说的A位代码是一个字符的A位字形字符代码。
3.按照权利要求2要求的装置,其中所说的可变长度代码数据表示一个所说字符的像素位图。
4.按照权利要求1要求的装置,其中所说的第二查询表的所说区域包含有一系列的按照所说的A位代码值存储的第二查询表入口,也即对于所说第二查询表的所说区域所说的第二入口是按照所说的C位段被存储的。
5.按照权利要求4要求的装置,其中所说的第二查询表入口是在所说的第二查询表的所说区域内的第N个入口。
6.按照权利要求5要求的装置,其中所说的函数是所说的平均长度值被N乘。
7.按照权利要求6要求的装置,其中所说的地址取决于所说的可变长度码偏置值以及所说函数和所说误差值之和。
8.按照权利要求7要求的装置,其中所说的地址由所说可变长度代码数据的与所说存储器有关的起始地址、所说可变长度代码偏置值、所说函数以及所说误差值之和给出。
9.按照权利要求3要求的装置,其中每个像素位图是由大量的可变长度代码来表示的。
10.按照权利要求1所要求的装置,其中所说的可变长度代码是赫夫曼代码。
11.按照权利要求1要求的装置,其中A=B+C。
12.按照权利要求1要求的装置,其中所说的B位字段是所说的A位代码的B个最高有效位。
13.按照权利要求1要求的装置,其中所说的C位段是所说的A位代码的最低C个有效位。
14.按照权利要求2要求的装置,其中所说的字符是象形文字字符。
15.按照权利要求1要求的装置,其中所说的存储器是集成逻辑存储器。
16.按照权利要求1要求的装置,其中所说的第一查询逻辑,所说的第二查询逻辑,所说的存储单元计算逻辑以及所说的存储器存取逻辑是通过软件控制下的数据处理逻辑操作来提供的。
17.产生映像数据的装置,用于将A位代码映射至在表示所说的A位代码的可变长度代码数据的存储器内的一个存储单元,所说的装置包括(i)第一查询表产生逻辑,用于产生第一查询表使得所说A位代码里的B位字段指示一个在第一查询表内与所说的B位字段对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表偏置值其指向在包含有大量第二查询表入口的第二查询表内的一个区域,一个可变长度代码偏置值和一个平均长度值;以及(ii)第二查询表产生逻辑,用于产生第二查询表使得在所说A位代码里的C位字段指示一个在由所说第二查询表偏置值指示的所说第二查询表的所说区域内的与所说的C位字段对应的第二查询表的入口,所说的第二查询表入口包括一个误差值;其中(iii)在所说存储单元的所说存储器中的一个地址可以被计算,其依据是(iv)所说的可变长度代码偏置值;(v)所说的平均长度值和在所说的第二查询表的与所说的C位码相匹配的所说区域内的位置的函数;以及(vi)所说的误差值。
18.将A位代码映射至表示A位代码的可变长度代码数据的存储器内的一个存储单元的方法,所说的方法包括的步骤有(i)响应在所说的A位代码里的B位字段,访问在第一查询表中对应于B位字段的第一查询表入口,所说第一查询表入口包括指向在包含有大量第二查询表入口的第二查询表内的一个区域的第二查询表偏置值,可变长度码偏置值和平均长度值;(ii)响应在所说的A位代码里的C位字段,访问在由所说的第二查询表偏置值指示的第二查询表的所说区域内与所说的C位字段对应的第二查询表入口,所说的第二查询表入口包括一个误差值;(iii)计算在所说的存储单元的所说存储器内的一个地址,其依据是(iv)所说的可变长度代码偏置值;(v)所说平均长度值和所说第二查询表的所说区域内的与所说的C位字段相匹配的位置的函数;以及(vi)所说的误差值;以及(vii)从所说存储器中的所说地址处读取所说的可变长度数据。
19.产生映像数据的方法,用于将A位代码映射至表示所说的A位代码的可变长度代码数据的存储器内的一个存储单元,所说的方法包括的步骤有(i)产生第一查询表,使得在所说A位代码里的B位字段指示在第一查询表内的与所说的B位字段对应的第一查询表入口,所说的第一查询表入口包括第二查询表偏置值其指向在包含有大量第二查询表入口的第二查询表内的一个区域,可变长度代码偏置值和平均长度值;以及(ii)产生第二查询表,使得在所说A位代码里的C位字段指示一个在由所说的第二查询表偏置值指示的所说的第二查询表的所说区域内与所说的C位字段对应的第二查询表入口,所说的第二查询表入口包括一个误差值;其中(iii)在所说存储单元的所说存储器中的一个地址可以被计算,其依据是(iv)所说的可变长度代码偏置值;(v)所说的平均长度值和在所说第二查询表的所说区域内的与所说C位字段匹配的位置的函数;以及(vi)所说的误差值。
20.用于将象形文字字符的象形文字字形数据解压缩的装置,所说的象形文字字符的非压缩数据以N×M像素位图的形式出现,所说的装置包括(i)用于对许多熵代码进行熵译码的熵译码器,每个熵代码表示一个P×Q像素位图,产生用于所说象形文字字符的许多P×Q像素位图;以及(ii)用于将大量的P×Q像素位图合并产生用于所说的象形文字字符的所说的N×M像素的位图的逻辑。
21.按照权利要求20所要求的装置,其中所说熵译码器是一个赫夫曼译码器并且所说的熵代码是赫夫曼代码。根据关于所说的象形文字字形数据的赫夫曼编码表,每个代码表示一个所说的P×Q像素位图。
22.按照权利要求20中所要求的装置,其中所说的P×Q像素位图为高宽比不等于1比1的矩形。
23.按照权利要求22中所要求的装置,其中所说的P×Q像素位图具有2比1的高宽比。
24.按照权利要求23要求的装置,其中P是4而Q为2。
25.按照权利要求20要求的装置,其中N为24且M为24。
26.按照权利要求20要求的装置,其中N为16且M为16。
27.按照权利要求20所要求的装置,其中所说的熵译码器和所说的关于合并的逻辑是由受软件控制的数据处理器逻辑操作所提供的。
28.用于压缩关于象形文字字符的象形文字字形数据的装置,所说的象形文字字符的非压缩数据以N×M像素位图的形式出现,所说的装置包括(i)用于划分所说象形文字字符的N×M像素位图产生许多P×Q像素位图的逻辑;以及(ii)熵编码器,用于将对所说的象形文字字符的所说的许多P×Q像素的位图中的每个进行熵编码成为熵代码以产生大量的表示所说象形文字字符的熵代码。
29.将象形文字字符的象形文字字形数据解压缩的方法,用于所说的象形文字字符的非压缩数据以N×M像素位图的形式出现,所说的方法包括的步骤有(i)对大量的每个表示一P×Q像素位图的熵代码进行熵译码以产生大量的用于所说的象形文字字符的P×Q像素的位图;以及(ii)合并所说的大量P×Q像素位图生成用于所说的象形文字字符的所说的N×M像素的位图。
30.压缩关于象形文字字符的象形文字字形数据的方法,用于所说的象形文字字符的非压缩数据以N×M像素位图的形式出现,所说的方法包括的步骤有(i)划分用于所说象形文字字符的所说的N×M像素位图以产生许多的P×Q像素位图,以及(ii)将用于所说象形文字字符的所说的许多个P×Q像素的位图的每一个进行熵编码成为熵代码以生成表示所说的象形文字字符的许多的熵代码。
31.用于将A位代码映射至表示所说A位代码的可变长度代码数据的存储器内的一个存储单元的装置,所说装置包括(i)对所说A位代码里的B位字段响应的第一查询逻辑,用于访问在第一查询表内与所说的B位字段对应的第一查询表入口,所说的第一查询表入口包括一个第二查询表偏置量,其指向在包含有许多的第二查询表入口的第二查询表内的一个区域,一个可变长度代码偏置值和一个平均长度值;(ii)对所说的A位代码里的C位字段响应的第二查询逻辑,用于访问在由所说的第二查询表偏置值所指示的所说的第二查询表的所说区域内的与所说的C位字段相对应的第二查询表入口,所说的第二查询表入口包括一个误差值;(iii)存储单元计算逻辑,用于计算所说存储单元的存储器内的一个地址,其依据是(iv)所说的可变长度代码偏置值;(v)所说平均长度值和在所说第二查询表的所说区域内与所说C位字段匹配的一个位置的函数;以及(vi)所说的误差值;以及(vii)存储器存取逻辑,用于从所说存储器内的所说地址读取所说的可变长度数据,进一步包括按照权利要求20所要求的装置。
全文摘要
表示象形文字字形的字符6的字符代码2可以被用来确定在与所涉及字符6有关的全部字形的像素数据的可变长度编码数据流10中的地址8。这个存取经过两级表查询,第一级表表1返回一个在编码的数据流内的初始偏置Huffoff,一个字符数据的平均长度AvSz和对第二表表2的一个指针TB2off。于是第二表被用来查询一个误差值Err,利用该误差Err来修正由表1中的信息所产生的地址的估计值以及在第二表表2内的位置N该位置导致匹配。象形文字字符6的像素位图36能够被划分成较小的小片38并且每块这样的小片给定一个码。该小片代码于是可以被赫夫曼编码以提供像素位图字形数据的高效压缩。
文档编号H03M7/42GK1263306SQ99108958
公开日2000年8月16日 申请日期1999年7月5日 优先权日1999年2月5日
发明者D·H·塞姆斯 申请人:Arm有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1