数据转换装置 本发明涉及一种按照用户要求将诸如图象数据或声音数据那样的输入数据加以转换的数据转换装置,更具体地是涉及一种采用许多查询表(LUT)来转换数据的数据转换装置,这些查询表(LUT)包括对应于输入数据的转换数据。
在例如彩色打印机或传真机那样的常用图象输出装置中,当使用LUT来对图象质量例如亮度、对比度或斜度进行补偿时,用于对由每个补偿模式所定义的每个图象质量进行补偿的那些LUT必须存储在离散型ROM中。例如,当图象质量由三种补偿模式进行补偿时,需要三个存储装置来存储三种LUT。
图1中的框图显示了在常用彩色打印机中使用LUT的数据转换装置。第一、第二和第三ROM12、14和16是用于为每一种转换模式存放LUT数据的存储装置。第一、第二和第三锁存器11、13和15将输入到每个锁存器的数据加以锁存,以便根据时钟信号输出所锁存数据。第一和第二延迟器17和18产生延迟的时钟信号,用于控制连接至每个ROM输出端的锁存器13和15。
当输入数据101周期地输入时,第一锁存器将输入数据101锁存并根据时钟信号110将所锁存数据输出至第一ROM12。从第一锁存器11输出的数据102变为第一ROM12中的低地址。第一修正数据107根据存放在第一ROM12中的LUT来确定转换级,并变为第一ROM12中的高低址。也即,同时访问第一ROM12的地址包括一个低地址和一个高地址,该低地址就是第一锁存器11的输出数据102,该高地址就是第一修正数据107。第一ROM12地输出数据103是由第一LUT根据输入数据101和第一修正数据107进行转换后所得数据。
第一延迟器17将时钟信号110延迟的时间正等于第一ROM12的输入和输出间的时间延迟,所产生的延迟时钟信号111输出至第二锁存器13。连接至第一ROM12的一个输出端的第二锁存器13根据延迟的时钟信号111将自第一ROM12输出的锁存数据103输出至第二ROM14。用于访问第二ROM14的地址包括一个低地址和一个高地址,该低地址就是第二锁存器13的输出数据104,而该高地址就是第二修正数据108。自第二ROM14输出的数据105是由第二LUT根据第二修正数据108和由第一LUT第一次转换所得的数据104而进行第二次转换所得的数据。
第二延迟器18、第三锁存器15和第三ROM16如上所述地进行操作。于是,由第三LUT根据第二次转换所得数据106和第三修正数据109进行第三次转换所得的数据113就最后输出了。
第一、第二和第三修正数据107、108和109以及存放于第一、第二和第三ROM12、14和16中的LUT之间的关系可如下解释。第一修正数据根据第一LUT的转换模式来确定转换级,并通常由用户给出。例如,如输入数据是8位图象数据,存放在第一ROM12中的第一LUT是用于控制图象的亮度级,和亮度级可分四级控制,则输入数据的数量为28=256,也即为0到255,第一LUT包括256个字节(256×8位)按级划分的数据,和第一修正数据包括2位,这代表四级。
图2A至图2C描述了常用数据转换装置中使用的ROM的数据结构。每个LUT可按照每个转换模式的四个级别对数据进行补偿,和每个ROM的存储容量分成四个区域,以及对应于每一级的转换数据存放在每个划分开的区域中。
如上所描述,常用数据转换装置将ROM串连起来,ROM的数量等于所需LUT的数量,该装置顺序地读取存放在每个ROM中的LUT数据,就这样完成数据转换。一般说来,包括在ROM的外部控制线路中的众多装置可缩小体积成为一个单芯片,例如ASIC,但用于存储LUT的ROM并不包括在ASIC内,这是考虑到必要时会修改ROM内容。
因此,缩小装置体积是受到限制的,同时所需硬件的体积和制造费用将增加,因为对应于根据转换模式的种类的LUT数量增加时,就需增加存储装置。
因此,本发明的一个目的是提供一种数据转换装置,它用来将许多用于转换数据的LUT存放在单一的存储装置中。
为达到上述目的,提供了一种数据转换装置,用于顺序地参照两个或更多LUT并对应于输入数据和由每个LUT选定的转换级来产生转换后的数据输出,数据转换装置包括:
用于根据数据转换模式的数量将两个或更多个LUT按块单元形式存储的单一存储装置,每个块包括对应于由每个相应的转换模式所定义的转换级的数量的那么多的子LUT;以及
用于产生供下列数据访问存储装置用的地址的地址发生器,这些数据是输数据、从自存储装置读出的输出数据中选择的数据、以及用于在每个转换模式中选择转换级的数据,存储在存储装置中的LUT有多少个,就重复地产生多少次地址。
本发明的上述目的和其他优点在参照附图详细地描述一个最佳实施例后将变得更清楚,附图中有:
图1是显示常用数据转换装置的组成的框图;
图2A至图2C是图1所示ROM的数据结构图;
图3是本发明所使用ROM的数据结构图;
图4是本发明的数据转换装置的框图;
图5是图4所示数据转换装置的详细框图;以及
图6A至图6I是用于解释图5所示的数据转换装置的操作的时序图。
图3是本发明所使用ROM的数据结构图。
存储装置的整个存储容量划分成块,块的数量等同于转换模式种类所需LUT的数量,每个划分的块的存储容量再根据相应的LUT的转换级的数量划分成子块。根据相应的转换模式和转换级,转换数据存放在划分的块和子块内。
本发明实施例的情况是:输入数据是由八位组成的图象数据,每个LUT由转换模式(例如,亮度,对比度等)所决定,用于控制图象质量,在每个转换模式内图象质量可由四个转换级来控制。
在应用本发明时,如果输入数据的位数、转换模式的种类和转换级的数量和本发明实施例的数值不同,则存储装置的块和子块的存储容量可以恰当地加以划分。此外,如果每个LUT所占用的存储容量不同,则每个LUT所用存储块可划分为相同容量,或者为了有效利用存储容量,也可以不等同地划分,在后一情况中,由于存储容量的不等同组成而造成的数据访问中的问题应予考虑解决。
还有,存储装置中存放的LUT数据包括可能使用本发明的装置所需要的不同转换数据,例如,声音或温度补偿数据以及图象补偿数据。
图4是本发明的数据转换装置的框图。该数据转换装置包括一个用于按图3所示形式存放众多LUT的ROM49,一个用于产生为根据转换模式顺序地选择LUT而用的第一地址453的第一地址发生器45,一个用于产生为根据转换级选择LUT中的子块而用的第二地址433的第二地址发生器43,其中LUT由第一地址453所选择,一个用于产生为在由第一和第二地址453和433所选择的子块中选择转换数据而用的第三地址413的第三地址发生器41,以及一个用于产生为使输入到ROM49的第一、第二和第三地址453、433和413得到同步的同步信号473的同步控制器47。
时钟信号451是一个脉冲信号,其周期等于单一输入数据411的输入和经过存放在ROM49内的所有LUT的转换最后所得数据输出之间的时间间隔。时钟信号451和输入数据411保持同步,并输入到第一地址发生器45和同步控制器47,以便使地址453、433和413保持同步来访问ROM49。
第一地址发生器45接收时钟信号451并产生第一地址453,用于顺序地选择存储在ROM49中的所需LUT。根据用于确定由每个LUT定义的转换级的修正数据431,第二地址发生器43产生第二地址433,用于在由第一地址453选择的LUT中选择子块。第三地址发生器41接收输入数据411和反馈的输出数据493,并产生第三地址413,用于在所选子块内选择转换数据。换言之,当数据由第一LUT转换时,输入数据411用于产生第三地址413,而在其他情况下反馈输出数据用于产生第三地址413。因此,用于访问ROM49的数据的地址具有第一、第二和第三地址453、433和413的顺序。
图5是图4所示数据转换装置的详细框图。本实施例的情况是有三个LUT存放在ROM59中。
第一地址发生器55包括一个计数器551,后者用于在输入时钟信号561的一个周期内产生四个脉冲。所产生的信号输出到ROM59,第二MUX531和译码器515。
第二地址发生器53包括一个第二MXU531和一个第二锁存器532,该第二MUX531具有一个三至一的多路转换器,用于根据自计数器551输入的脉冲信号550来在修正数据541、542和543的三种类型中选择一个并将它输出,该第二锁存器用于将自第二MUX531输出的数据545加以锁存,并根据同步信号570将所锁存数据输出至ROM59。
第三地址发生器51包括一个译码器515、一个第一MUX511和一个第一锁存器513,该译码器用于根据自计数器551输入的脉冲信号550产生用于控制第一MUX511的信号525,该第一MUX由一个二至一多路转换器组成,其中输入数据521和反馈输出数据590被输入,用于根据自译码器515产生的控制信号525来选择输入信号521和590中的一个并加以输出,以及该第一锁存器513用于将自第一MUX511输出的数据523加以锁存,并根据同步信号570将所锁存数据输出至ROM59。
同步控制器57包括第一、第二和第三延迟器571、572和573以及一个或门575,该第一、第二和第三延迟器571、572和573用于输出延迟的时钟信号561,后者延迟的时间决定于ROM59的数据访问时间,该或门575用于对时钟信号561和延迟信号582、583和 584完成逻辑或操作,从而产生同步信号570。所产生同步信号570输入到第二地址发生器53的第二锁存器532和第三地址发生器51的第一锁存器513。
图6A至图6I解释了图5所示数据转换装置的操作时序。该装置的操作将根据时序和参照图5所参考数字来加以解释。
图6解释了时钟信号561的波形,6B解释了输入数据信号521的波形,6C解释了同步信号570的波形,6D解释了自计数器551输出的第一地址信号550的波形,6E解释了自第一锁存器513输出的第三地址信号510的波形,6F解释了自第二锁存器532输出的第二地址信号530的波形,6G解释了第一延迟器571的输出信号582的波形,6H解释了第二延迟器572的输出信号583的波形,和6I解释了第三延迟器573的输出信号584的波形。
将时钟信号561和第一、第二和第三延迟信号582、583和584进行逻辑或操作,即可产生同步信号570,其中第一、第二和第三延迟信号582、583和584相对于时钟信号561延迟一个预定的时间值。在输入数据信号521的一个周期内产生四个脉冲,后者用于和ROM59的地址输入进行同步。
同步信号570的第一个周期中的操作解释如下。计数器551输出第一地址信号550,后者用于根据时钟信号来访问ROM59的第一LUT。第二MUT531对应于第一LUT的转换级来选择第一修正数据541并将所选数据输出至第二锁存器532。所锁存的数据作为第二地址信号530加以输出,用于访问ROM59。译码器515产生一个控制信号,后者使第一MUX511来选择输入数据521,而第一MUX511是根据译码器515的控制信号来选择输入数据521的,它并将结果输出给第一锁存器513,而所锁存数据作为第三地址信号加以输出,用于访问ROM59。因此,ROM59的第一LUT的数据由第一、第二和第三地址信号550、530和51 0进行访问,同时输入数据由第一LUT加以转换,第一次转换所得的数据再反馈回去并输入至第一MUX511。
同步信号570的第二周期中的操作可解释如下。计数器551输出第一地址信号550,用于根据时钟信号对ROM59的第二LUT进行访问。第二MUX531对应于第二LUT的转换级来选择第二修正数据542,并将所选数据输出至第二锁存器532,所锁存数据作为第二地址信号加以输出,用于访问ROM59。译码器515产生一个使第一MUX511选择反馈的第一次转换所得数据590的控制信号,而第一MUX511是根据译码器515的控制信号来选择反馈的第一次转换所得数据590,并将结果输出至第一锁存器513,而所锁存数据作为第三地址信号输出,用于访问ROM59。因此,ROM59的第二LUT的数据由第一、第二和第三地址信号550、530和51O进行访问,以及反馈的第一次转换所得数据由第二LUT加以转换,同时第二次转换所得数据反馈回来并输入至第一MUX511。
同步信号的第三周期中的操作和同步信号第二周期中的操作是一样的。ROM59的第三LUT的数据由第一、第二和第三地址信号550、530和510进行访问,和反馈的第二次转换数据由第三LUT进行转换,而第三次转换所得数据反馈回来并输入到第一MUT511。
在同步信号的第四个周期中,第一MUX511选择反馈的第三次转换所得数据590并将所选择数据输出至第一锁存器513。所锁存数据即作为最后转换所得数据510加以输出。
根据本发明,在一个时钟周期内,输入数据顺序地由全部LUT加以转换,因而产生最后的输出数据。相应地,当用于数据转换的LUT数量增加时,输出数据即反馈回来以便通过全部LUT来转换数据。因此,时钟周期与ROM的延迟时间成比例地增加。然而,这个问题可通过减小ROM的访问时间来解决。
如上所描述,众多的LUT存放在一个单个的存储装置内,并提供了一个采用存储装置的数据转换装置,因而可通过减小存储装置的体积来缩小数据转换装置的尺寸。