JPH0774973A - データ変換装置 - Google Patents
データ変換装置Info
- Publication number
- JPH0774973A JPH0774973A JP5216030A JP21603093A JPH0774973A JP H0774973 A JPH0774973 A JP H0774973A JP 5216030 A JP5216030 A JP 5216030A JP 21603093 A JP21603093 A JP 21603093A JP H0774973 A JPH0774973 A JP H0774973A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bits
- stored
- bit
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Record Information Processing For Printing (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
(57)【要約】
【目的】 ルックアップテーブルを用いた色変換装置に
おいて外部メモリからのパッキングされたデータをその
ままの状態で受付けこれを復元して用いることを可能と
すること。 【構成】 カウンタ104は9カウント周期で動作し、
カウンタ104の値が0のときに端子102に入力する
パッキングされた8ビットデータはシフトレジウタ10
3にロードされる。それ以降に端子102に入力する8
個のパッキングされた8ビットデータは、シフトレジス
タ103から順次出力される1ビットデータがその最上
位に付加されて9ビットデータに復元され、端子101
のアドレスデータに従いLUT107に格納される。
おいて外部メモリからのパッキングされたデータをその
ままの状態で受付けこれを復元して用いることを可能と
すること。 【構成】 カウンタ104は9カウント周期で動作し、
カウンタ104の値が0のときに端子102に入力する
パッキングされた8ビットデータはシフトレジウタ10
3にロードされる。それ以降に端子102に入力する8
個のパッキングされた8ビットデータは、シフトレジス
タ103から順次出力される1ビットデータがその最上
位に付加されて9ビットデータに復元され、端子101
のアドレスデータに従いLUT107に格納される。
Description
【0001】
【産業上の利用分野】本発明は、ルックアップテーブル
(以下、LUTともいう)を用いて色変換等を行うデー
タ変換装置に関する。
(以下、LUTともいう)を用いて色変換等を行うデー
タ変換装置に関する。
【0002】
【従来の技術】ディジタル化された画像信号の非線形変
換(γ変換,log変換等)は、一般にLUTで行われ
ることが多い。これは、非線形変換を演算により行おう
とすると、その演算が比較的複雑になり、また、演算の
ためのハードウェアの規模が大きくなるためである。こ
れに対して、LUTを用い、例えば8ビットの画像信号
に対する任意の非線形変換を行う場合、この変換処理
は、256バイトの比較的少ない容量のメモリで実現可
能となる。このような変換は1つの画像信号を別の性質
の他の1つの画像信号に変換するものであるため、そこ
で使用されるLUTは1次元LUTと呼ばれている。
換(γ変換,log変換等)は、一般にLUTで行われ
ることが多い。これは、非線形変換を演算により行おう
とすると、その演算が比較的複雑になり、また、演算の
ためのハードウェアの規模が大きくなるためである。こ
れに対して、LUTを用い、例えば8ビットの画像信号
に対する任意の非線形変換を行う場合、この変換処理
は、256バイトの比較的少ない容量のメモリで実現可
能となる。このような変換は1つの画像信号を別の性質
の他の1つの画像信号に変換するものであるため、そこ
で使用されるLUTは1次元LUTと呼ばれている。
【0003】一方、最近のディスクトップパブリッシン
グ(以下、DTPともいう)環境の普及等に伴ない、カ
ラー画像の扱われる機会が増しつつある。DTPにおけ
るカラー画像の入力機器は、スキャナ,ビデオカメラで
あり、一方、出力機器はインクジェット,染料熱昇華型
あるいは電子写真等の各方式のカラープリンタである。
グ(以下、DTPともいう)環境の普及等に伴ない、カ
ラー画像の扱われる機会が増しつつある。DTPにおけ
るカラー画像の入力機器は、スキャナ,ビデオカメラで
あり、一方、出力機器はインクジェット,染料熱昇華型
あるいは電子写真等の各方式のカラープリンタである。
【0004】これらのカラー入,出力機器は、それぞれ
固有の色空間を有しており、例えば、あるスキャナによ
って得たカラー画像データをそのままカラープリンタに
入力してプリント画像を出力した場合、そのプリント画
像の色がスキャナで読取ったオリジナルの画像の色と一
致することはほとんどあり得ない。両者の色を一致させ
るには、いわゆる入力デバイス(スキャナやビデオカメ
ラ等)の色空間を出力デバイス(前述の各種カラープリ
ンタ)の色空間に変換するといった処理が必要になる
(以下では、この処理を色変換処理と称す)。
固有の色空間を有しており、例えば、あるスキャナによ
って得たカラー画像データをそのままカラープリンタに
入力してプリント画像を出力した場合、そのプリント画
像の色がスキャナで読取ったオリジナルの画像の色と一
致することはほとんどあり得ない。両者の色を一致させ
るには、いわゆる入力デバイス(スキャナやビデオカメ
ラ等)の色空間を出力デバイス(前述の各種カラープリ
ンタ)の色空間に変換するといった処理が必要になる
(以下では、この処理を色変換処理と称す)。
【0005】この色変換処理は、例えば入力デバイスの
3色の画像信号を同時に参照して、出力デバイス側の3
色あるいは4色の画像信号に変換するものである。ただ
し、出力デバイス側の3色あるいは4色の画像信号を同
時に得ることは、ハードウェアが比較的大規模になるた
め、通常は、点順次または面順次で1色ずつ画像信号を
出力する。従って、色変換処理は、3色の画像信号を1
色の画像信号に変換する処理を出力デバイスの色数分だ
け行うことになる。
3色の画像信号を同時に参照して、出力デバイス側の3
色あるいは4色の画像信号に変換するものである。ただ
し、出力デバイス側の3色あるいは4色の画像信号を同
時に得ることは、ハードウェアが比較的大規模になるた
め、通常は、点順次または面順次で1色ずつ画像信号を
出力する。従って、色変換処理は、3色の画像信号を1
色の画像信号に変換する処理を出力デバイスの色数分だ
け行うことになる。
【0006】このような、例えば、3色の画像信号を1
色の画像信号に変換する処理をLUTだけを用いて行お
うとすると、画像信号1色当り8ビットの場合、入力2
4ビット,出力8ビットのLUTとなり、16Mバイト
ものメモリ容量が必要になり、さらに、出力デバイスの
色数分だけ上述のメモリが必要になる。このため実際の
メモリ容量は48〜64Mバイトといった大容量になっ
てしまう。このようなLUTはコスト的に実用に適さな
いため、LUTによる色変換処理では補間を用いるのが
一般的である。これにより、比較的小メモリ容量で実用
に適した色変換を行うことができる。
色の画像信号に変換する処理をLUTだけを用いて行お
うとすると、画像信号1色当り8ビットの場合、入力2
4ビット,出力8ビットのLUTとなり、16Mバイト
ものメモリ容量が必要になり、さらに、出力デバイスの
色数分だけ上述のメモリが必要になる。このため実際の
メモリ容量は48〜64Mバイトといった大容量になっ
てしまう。このようなLUTはコスト的に実用に適さな
いため、LUTによる色変換処理では補間を用いるのが
一般的である。これにより、比較的小メモリ容量で実用
に適した色変換を行うことができる。
【0007】LUTを用いた色変換の構成を図1を用い
て説明する。
て説明する。
【0008】端子201,202および203から、そ
れぞれ赤(R),青(B)および緑(G)成分の8ビッ
トの画像信号が入力される。これら画像信号R,B,G
各8ビットの上位4ビット信号は3次元LUT210に
入力され、入力色空間の部分空間である補間空間が選択
される。また、下位4ビット信号は補間演算部220に
入力され、補間対象点の補間空間内における局所座標を
規定する。
れぞれ赤(R),青(B)および緑(G)成分の8ビッ
トの画像信号が入力される。これら画像信号R,B,G
各8ビットの上位4ビット信号は3次元LUT210に
入力され、入力色空間の部分空間である補間空間が選択
される。また、下位4ビット信号は補間演算部220に
入力され、補間対象点の補間空間内における局所座標を
規定する。
【0009】すなわち、R,B,G8ビット信号の上位
4ビットをそれぞれrh,bh,gh、下位4ビットを
それぞれrl,bl,glとするとき、信号rh,b
h,ghによって3次元LUT210から読出されるデ
ータ211〜218は、次段の補間演算部220で用い
られる補間空間を規定する8個の格子点を示す。具体的
には、信号線211には(rh,bh,gh)に対応し
たLUTの内容、信号線222には(rh+1,bh,
gh)に対応したLUTの内容、信号線223には(r
h,bh+1,gh)に対応したLUTの内容、信号線
224には(rh+1,bh+1,gh)に対応したL
UTの内容、信号線225には(rh,bh,gh+
1)に対応したLUTの内容、信号線226には(rh
+1,bh,gh+1)に対応したLUTの内容、信号
線227には(rh,bh+1,gh+1)に対応した
LUTの内容、信号線228には(rh+1,bh+
1,gh+1)に対応したLUTの内容、がそれぞれ出
力される。
4ビットをそれぞれrh,bh,gh、下位4ビットを
それぞれrl,bl,glとするとき、信号rh,b
h,ghによって3次元LUT210から読出されるデ
ータ211〜218は、次段の補間演算部220で用い
られる補間空間を規定する8個の格子点を示す。具体的
には、信号線211には(rh,bh,gh)に対応し
たLUTの内容、信号線222には(rh+1,bh,
gh)に対応したLUTの内容、信号線223には(r
h,bh+1,gh)に対応したLUTの内容、信号線
224には(rh+1,bh+1,gh)に対応したL
UTの内容、信号線225には(rh,bh,gh+
1)に対応したLUTの内容、信号線226には(rh
+1,bh,gh+1)に対応したLUTの内容、信号
線227には(rh,bh+1,gh+1)に対応した
LUTの内容、信号線228には(rh+1,bh+
1,gh+1)に対応したLUTの内容、がそれぞれ出
力される。
【0010】以上読出された8つのデータは、例えばr
h=5,bh=10,gh=13としたとき、図2に示
すように、3次元立方体の各頂点の座標、すなわち補間
空間を規定する8個の格子点を表わす。また、このと
き、入力信号の下位4ビットにより、前述のように、図
2に示す3次元立方体内の補間対象点が規定される。な
お、この補間対象点は、下位4ビットの信号rl,b
l,glのうちどれか1つが0の場合には、上記立方体
を構成する面内に存在し、さらに、2つが0の場合は立
方体の辺上に位置し、3つとも0の時は(5,10,1
3)の頂点に位置する。このような入力信号の下位4ビ
ットにより規定される補間対象点の位置に対応して補間
演算を行うことにより目的の出力信号が端子221から
出力される。
h=5,bh=10,gh=13としたとき、図2に示
すように、3次元立方体の各頂点の座標、すなわち補間
空間を規定する8個の格子点を表わす。また、このと
き、入力信号の下位4ビットにより、前述のように、図
2に示す3次元立方体内の補間対象点が規定される。な
お、この補間対象点は、下位4ビットの信号rl,b
l,glのうちどれか1つが0の場合には、上記立方体
を構成する面内に存在し、さらに、2つが0の場合は立
方体の辺上に位置し、3つとも0の時は(5,10,1
3)の頂点に位置する。このような入力信号の下位4ビ
ットにより規定される補間対象点の位置に対応して補間
演算を行うことにより目的の出力信号が端子221から
出力される。
【0011】上記のように、LUT210から出力され
る信号が8ビットの場合、
る信号が8ビットの場合、
【0012】
【外1】
【0013】すなわち4kバイトとなる。このメモリ容
量は1色分を出力するためのものであり、3色あるいは
4色を出力するには112k〜16kバイトのメモリ容
量が必要になる。
量は1色分を出力するためのものであり、3色あるいは
4色を出力するには112k〜16kバイトのメモリ容
量が必要になる。
【0014】
【発明が解決しようとする課題】ところで、図1に示さ
れる構成の色変換によって得られる8ビットデータに
は、補間誤差や演算誤差が畳重され、これにより信号が
比較的劣化することが多い。この劣化を防ぐ一手法とし
て補間演算部220の演算精度を上げることや、補間演
算部220に入力される8個のデータのビット数を増す
こと(補間空間の格子点間隔を細かくすることが考慮さ
れる。このうち、例えば、補間演算部に入力されるデー
タのビットの数、つまり3次元LUTの出力データビッ
ト数を8ビットではなく、9ビットもしくは10ビット
に増す手法を採る場合、8ビット構成をとるデータ転
送,メモリの構成上の理由等でデータの扱い方が問題に
なる。
れる構成の色変換によって得られる8ビットデータに
は、補間誤差や演算誤差が畳重され、これにより信号が
比較的劣化することが多い。この劣化を防ぐ一手法とし
て補間演算部220の演算精度を上げることや、補間演
算部220に入力される8個のデータのビット数を増す
こと(補間空間の格子点間隔を細かくすることが考慮さ
れる。このうち、例えば、補間演算部に入力されるデー
タのビットの数、つまり3次元LUTの出力データビッ
ト数を8ビットではなく、9ビットもしくは10ビット
に増す手法を採る場合、8ビット構成をとるデータ転
送,メモリの構成上の理由等でデータの扱い方が問題に
なる。
【0015】本発明はかかる9ビットもしくは10ビッ
トのデータを良好に取り扱うことができるデータ変換装
置を提供することを目的とする。
トのデータを良好に取り扱うことができるデータ変換装
置を提供することを目的とする。
【0016】
【課題を解決するための手段】そのために本実施例で
は、ルックアップテーブルを用いてデータの変換を行う
データ変換装置において、前記ルックアップテーブルに
書込まれるテーブルデータを当該データサイズと異なる
サイズの複数のパッキングデータとして格納したメモリ
から当該データ変換装置に入力する前記複数のパッキン
グデータの1つを一時的に保持する保持手段と、該保持
手段に保持されるパッキングデータの全部または一部
を、当該データ変換装置に入力する前記複数のパッキン
グデータの他のデータに連結する連結手段と、該連結手
段によって連結されたデータを前記テーブルデータとし
て前記ルックアップテーブルに格納する格納手段と、を
具えたことを特徴とする。
は、ルックアップテーブルを用いてデータの変換を行う
データ変換装置において、前記ルックアップテーブルに
書込まれるテーブルデータを当該データサイズと異なる
サイズの複数のパッキングデータとして格納したメモリ
から当該データ変換装置に入力する前記複数のパッキン
グデータの1つを一時的に保持する保持手段と、該保持
手段に保持されるパッキングデータの全部または一部
を、当該データ変換装置に入力する前記複数のパッキン
グデータの他のデータに連結する連結手段と、該連結手
段によって連結されたデータを前記テーブルデータとし
て前記ルックアップテーブルに格納する格納手段と、を
具えたことを特徴とする。
【0017】
【作用】以上の構成によれば、データ変換装置における
ルックアップテーブルのテーブルデータを格納する際、
テーブルデータより小さなサイズの複数のパッキングデ
ータの1つが入力すると、そのデータはレジスタ等を有
した保持手段によって保持され、そのデータの一部また
は全部と、入力される他のパッキングデータの一部また
は全部と連結されることにより、ルックアップテーブル
に格納すべきテーブルデータが復元される。これによ
り、データ変換装置はパッキングされたデータをそのま
まの状態で受付けて復元し、これを用いることが可能と
なる。
ルックアップテーブルのテーブルデータを格納する際、
テーブルデータより小さなサイズの複数のパッキングデ
ータの1つが入力すると、そのデータはレジスタ等を有
した保持手段によって保持され、そのデータの一部また
は全部と、入力される他のパッキングデータの一部また
は全部と連結されることにより、ルックアップテーブル
に格納すべきテーブルデータが復元される。これによ
り、データ変換装置はパッキングされたデータをそのま
まの状態で受付けて復元し、これを用いることが可能と
なる。
【0018】
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。
に説明する。
【0019】ここで、まず本実施例の対比例について説
明する上述の9ビットや10ビット等、8ビットの整数
倍でないデータの扱い方には、2種類の方法が考えられ
る。
明する上述の9ビットや10ビット等、8ビットの整数
倍でないデータの扱い方には、2種類の方法が考えられ
る。
【0020】第1の方法は上位ビットにダミーデータ
(“0”)を付加し、16ビット化する方法である。こ
の方法は、1つ1つのデータが独立したままなので扱い
易いが、データを格納するために必要なメモリの容量が
増し、また、このメモリ容量の増大によってコストの上
昇を招く。
(“0”)を付加し、16ビット化する方法である。こ
の方法は、1つ1つのデータが独立したままなので扱い
易いが、データを格納するために必要なメモリの容量が
増し、また、このメモリ容量の増大によってコストの上
昇を招く。
【0021】第2の方法は、データのパッキングを行う
方法である。例えば、9ビットデータの場合、8個の9
ビットデータから最上位ビット(あるいは最下位ビッ
ト)のみを取出して、それを8個集めこれらを配列して
8ビットのデータとし、残りの8ビットは、そのまま8
ビットのデータとする。
方法である。例えば、9ビットデータの場合、8個の9
ビットデータから最上位ビット(あるいは最下位ビッ
ト)のみを取出して、それを8個集めこれらを配列して
8ビットのデータとし、残りの8ビットは、そのまま8
ビットのデータとする。
【0022】第2の方法によれば、8個の9ビットデー
タは9つの8ビットデータになり、、第1の方法で問題
となったデータを格納するためにメモリ容量が増すとい
うこは無く、必要最小限のメモリ容量で済む。ただし、
個々のデータが独立していないので、テーブルとして用
いられる上記LUT用データを格納しているROM等か
ら、LUTへ直接データをロードすることができなくな
る。この場合、ROMから読出したデータを一旦CPU
に取込み、CPU内部の処理で、パッキングデータを元
の独立したデータに戻し、それからLUTへ該データを
ロードする必要がある。
タは9つの8ビットデータになり、、第1の方法で問題
となったデータを格納するためにメモリ容量が増すとい
うこは無く、必要最小限のメモリ容量で済む。ただし、
個々のデータが独立していないので、テーブルとして用
いられる上記LUT用データを格納しているROM等か
ら、LUTへ直接データをロードすることができなくな
る。この場合、ROMから読出したデータを一旦CPU
に取込み、CPU内部の処理で、パッキングデータを元
の独立したデータに戻し、それからLUTへ該データを
ロードする必要がある。
【0023】すなわち、LUTから9ビット等、8ビッ
トよりビット数を増したデータを出力するためには、L
UTの内容であるテーブルの各データを例えば9ビット
としなければならず、このようなデータを、前述のよう
に標準色空間に対応してLUT用データをロードする場
合、上記のようなCPUによるパッキングデータの復元
が必要となる。
トよりビット数を増したデータを出力するためには、L
UTの内容であるテーブルの各データを例えば9ビット
としなければならず、このようなデータを、前述のよう
に標準色空間に対応してLUT用データをロードする場
合、上記のようなCPUによるパッキングデータの復元
が必要となる。
【0024】以上のように、LUTを用いてデータを変
換する装置において、LUTにロードするテーブル用デ
ータのビット数が8ビットの整数倍でない値、例えば9
ビットの場合、このような8ビットの整数倍でないLU
T用データを他のメモリ(ROM等)に予め格納する
際、このメモリの容量を節約するため、格納データをパ
ッキングすることを行う。
換する装置において、LUTにロードするテーブル用デ
ータのビット数が8ビットの整数倍でない値、例えば9
ビットの場合、このような8ビットの整数倍でないLU
T用データを他のメモリ(ROM等)に予め格納する
際、このメモリの容量を節約するため、格納データをパ
ッキングすることを行う。
【0025】この場合において、上記他のメモリに格納
された個々のデータは互いに独立していないので、この
他のメモリから読出したデータを直接LUTに転送して
格納することができず、一旦CPUにデータを取込みC
PU内で元の独立したデータ(パッキングする前のデー
タ)に復元し、その後、LUTに転送して格納しなけれ
ばならない。
された個々のデータは互いに独立していないので、この
他のメモリから読出したデータを直接LUTに転送して
格納することができず、一旦CPUにデータを取込みC
PU内で元の独立したデータ(パッキングする前のデー
タ)に復元し、その後、LUTに転送して格納しなけれ
ばならない。
【0026】しかし、以上の構成では、パッキングしな
いで他のメモリに格納したデータをLUTに転送する構
成に比較して、これら転送等に数倍の時間を要し、ま
た、CPUに対して一時的ではあるが、負荷の増大をも
たらすことになる。
いで他のメモリに格納したデータをLUTに転送する構
成に比較して、これら転送等に数倍の時間を要し、ま
た、CPUに対して一時的ではあるが、負荷の増大をも
たらすことになる。
【0027】以下説明する実施例では、LUTを用いた
色変換装置等のデータ変換装置においてパッキングされ
たデータをそのままの状態で受付けこれを復元して用い
ることが可能なデータ変換装置が開示される。
色変換装置等のデータ変換装置においてパッキングされ
たデータをそのままの状態で受付けこれを復元して用い
ることが可能なデータ変換装置が開示される。
【0028】(第1実施例)図3は本発明の第1実施例
に係る色変換装置の構成を示すブロック図である。
に係る色変換装置の構成を示すブロック図である。
【0029】同図においては、3次元LUTの1次元的
構成が示される。すなわち、図1に示したように、端子
101を介して入力する8ビットデータ以外にも、他の
2個の8ビットデータが入力するが、これらの図示は省
略されている。これと同様に、端子109に出力データ
以外にも他の7個の9ビットデータの出力も省略され、
さらに、補間演算部の図示も省略されている。以下に示
す各実施例においても同様である。
構成が示される。すなわち、図1に示したように、端子
101を介して入力する8ビットデータ以外にも、他の
2個の8ビットデータが入力するが、これらの図示は省
略されている。これと同様に、端子109に出力データ
以外にも他の7個の9ビットデータの出力も省略され、
さらに、補間演算部の図示も省略されている。以下に示
す各実施例においても同様である。
【0030】図3に示す色変換装置が受取り、LUT用
データとしてLUTにロードするためのデータは不図示
のROMに格納されており、図4に示すようにパッキン
グされている。
データとしてLUTにロードするためのデータは不図示
のROMに格納されており、図4に示すようにパッキン
グされている。
【0031】すなわち、図4には、LUT用データの先
頭の8個の9ビットデータのパッキング状態が示され、
これら8個のデータをa8 〜a0 ,b8 〜b0 ,c8 〜
c0,d8 〜d0 ,e8 〜e0 ,f8 〜f0 ,g8 〜g0
,h8 〜h0 とするとき、各データは、それらの最上
位ビットだけが、ROMの0番地に集められ格納され、
それぞれの下位8ビットはROMの1番地以降に順次格
納されている。
頭の8個の9ビットデータのパッキング状態が示され、
これら8個のデータをa8 〜a0 ,b8 〜b0 ,c8 〜
c0,d8 〜d0 ,e8 〜e0 ,f8 〜f0 ,g8 〜g0
,h8 〜h0 とするとき、各データは、それらの最上
位ビットだけが、ROMの0番地に集められ格納され、
それぞれの下位8ビットはROMの1番地以降に順次格
納されている。
【0032】以下、図3に示す動作について説明する。
【0033】まず、不図示のリセット信号により、カウ
ンタ104が0にクリアされる。カウンタ104は9カ
ウント周期で動作し、値が0のときにレジスタ103に
ロード信号を出力する。このとき、端子102に図4に
示したROMの0番地から読出された8ビットデータa
8 b8 c8 d8 e8 f8 g8 h8 が入力され、レジスタ
103に入力するクロックに応じて、上記8ビットデー
タがレジスタ103にロードされる。
ンタ104が0にクリアされる。カウンタ104は9カ
ウント周期で動作し、値が0のときにレジスタ103に
ロード信号を出力する。このとき、端子102に図4に
示したROMの0番地から読出された8ビットデータa
8 b8 c8 d8 e8 f8 g8 h8 が入力され、レジスタ
103に入力するクロックに応じて、上記8ビットデー
タがレジスタ103にロードされる。
【0034】このロードによりレジスタ103から出力
される1ビット信号105は最上位ビットであるa8 と
なる。このとき、端子101にLUT107の先頭アド
レス:0番地を指定する8ビットのアドレス信号(実際
は、図1に示すように3個の4ビットデータ)が入力さ
れると共に、端子102にはROMの1番地の内容(a
7 〜a0 :8ビット)が入力される。これにより、この
8ビットの入力データの上位にシフトレジスタ103の
出力(a8 )が付加され、9ビットの信号106(a8
〜a0 )となる。この9ビット信号は、不図示のライト
制御信号によりLUT107に書込まれる。
される1ビット信号105は最上位ビットであるa8 と
なる。このとき、端子101にLUT107の先頭アド
レス:0番地を指定する8ビットのアドレス信号(実際
は、図1に示すように3個の4ビットデータ)が入力さ
れると共に、端子102にはROMの1番地の内容(a
7 〜a0 :8ビット)が入力される。これにより、この
8ビットの入力データの上位にシフトレジスタ103の
出力(a8 )が付加され、9ビットの信号106(a8
〜a0 )となる。この9ビット信号は、不図示のライト
制御信号によりLUT107に書込まれる。
【0035】その後、シフトレジスタ103にクロック
が入力されて、データが1ビットシフトし、次のサイク
ルではb8 がシフトレジスタから出力される。この時、
端子101にはLUTの1番地を指定する8ビットの信
号が入力され、端子102にはROMの2番地の内容
(b7 〜b0 :8ビット)が入力される。この時の9ビ
ット信号106の内容はb8 〜b0 となり、前述のよう
にライト制御信号により、LUT107に書込まれる。
以下同様に処理され、LUTの0番地から7番地には図
5に示す値が格納され、8個の1組のデータの格納が終
了する。
が入力されて、データが1ビットシフトし、次のサイク
ルではb8 がシフトレジスタから出力される。この時、
端子101にはLUTの1番地を指定する8ビットの信
号が入力され、端子102にはROMの2番地の内容
(b7 〜b0 :8ビット)が入力される。この時の9ビ
ット信号106の内容はb8 〜b0 となり、前述のよう
にライト制御信号により、LUT107に書込まれる。
以下同様に処理され、LUTの0番地から7番地には図
5に示す値が格納され、8個の1組のデータの格納が終
了する。
【0036】この8個のデータの格納が終了すると、カ
ウンタ104の値が0に戻り、ROMの9番地に格納さ
れている次の8個の9ビットデータの最上位ビットのみ
のデータが、端子102を経由してシフトレジスタ10
3にロードされ、次の8個1組のデータの格納が始ま
り、同様の処理が順次繰り返され、全データがLUT1
07に格納される。
ウンタ104の値が0に戻り、ROMの9番地に格納さ
れている次の8個の9ビットデータの最上位ビットのみ
のデータが、端子102を経由してシフトレジスタ10
3にロードされ、次の8個1組のデータの格納が始ま
り、同様の処理が順次繰り返され、全データがLUT1
07に格納される。
【0037】LUT107へのLUT用データの格納が
終了すると、色変換装置としての本来の動作が可能にな
り、そのモードへ移行し、端子101から入力された8
ビットのデータは所定の9ビットのデータ群に変換され
て補間演算部へ転送される。
終了すると、色変換装置としての本来の動作が可能にな
り、そのモードへ移行し、端子101から入力された8
ビットのデータは所定の9ビットのデータ群に変換され
て補間演算部へ転送される。
【0038】なお、本実施例では、最上位ビットとそれ
以下の8ビットとを分離する構成としたが、最下位ビッ
トとそれより上位の8ビットとに分離する構成も容易に
実現できる。この場合は、シフトレジスタ103から出
力される1ビットの信号は端子102から入力される8
ビットデータの下位に付加される。
以下の8ビットとを分離する構成としたが、最下位ビッ
トとそれより上位の8ビットとに分離する構成も容易に
実現できる。この場合は、シフトレジスタ103から出
力される1ビットの信号は端子102から入力される8
ビットデータの下位に付加される。
【0039】(第2実施例)図6は本発明の第2実施例
に係る色変換装置の構成を示すブロック図である。
に係る色変換装置の構成を示すブロック図である。
【0040】本実施例と前記第1実施例との構成上の違
いは以下の通りである。
いは以下の通りである。
【0041】 本例では、カウンタ104が無いのに
対し、端子101から入力される8ビットアドレス信号
の下位3ビットが“000”であることを検出するため
のブロック201が設けられる。ブロック201は“0
00”を検出するとシフトレジスタ103のロード信号
を発生する。
対し、端子101から入力される8ビットアドレス信号
の下位3ビットが“000”であることを検出するため
のブロック201が設けられる。ブロック201は“0
00”を検出するとシフトレジスタ103のロード信号
を発生する。
【0042】 シフトレジスタ103にロードする信
号は、端子102から入力される8ビットデータではな
く、先行してLUT107に格納しておいた8ビットデ
ータであり、LUT107からこれを読出してロードす
る。このロード動作は前述のブロック201で“00
0”を検出した時に行う。
号は、端子102から入力される8ビットデータではな
く、先行してLUT107に格納しておいた8ビットデ
ータであり、LUT107からこれを読出してロードす
る。このロード動作は前述のブロック201で“00
0”を検出した時に行う。
【0043】本例の以上の構成に対応して、ROMに格
納するデータの順序も図7に示すものとなる。前記第1
実施例では、8個1組のデータを用いてその実施例の動
作の全体を説明できたが、本実施例の動作の説明には4
組(32個)のデータを必要とする。すなわち、図7,
図8において、8個(各9ビット)1組のデータは、組
毎にその表示が区別され、1組目は、「′」を付さず、
2組目の8個のデータは、a′,b′,…,h′のよう
に、3組目8個のデータはa′′,b′′,…,h′′
のように、4組目の8個のデータはa′′′,
b′′′,…,h′′′のように区別して表記される。
納するデータの順序も図7に示すものとなる。前記第1
実施例では、8個1組のデータを用いてその実施例の動
作の全体を説明できたが、本実施例の動作の説明には4
組(32個)のデータを必要とする。すなわち、図7,
図8において、8個(各9ビット)1組のデータは、組
毎にその表示が区別され、1組目は、「′」を付さず、
2組目の8個のデータは、a′,b′,…,h′のよう
に、3組目8個のデータはa′′,b′′,…,h′′
のように、4組目の8個のデータはa′′′,
b′′′,…,h′′′のように区別して表記される。
【0044】前記第1実施例では、8個1組のデータは
ROMに格納される状態で連続する9個の番地で1かた
まりになっていたが、本実施例では最上位ビットだけの
データと下位8ビットだけのデータを番地において完全
に分離して格納する(図7参照)。
ROMに格納される状態で連続する9個の番地で1かた
まりになっていたが、本実施例では最上位ビットだけの
データと下位8ビットだけのデータを番地において完全
に分離して格納する(図7参照)。
【0045】以下に、本実施例の動作説明を行う。
【0046】本実施例では、最上位ビットからなるデー
タを先行してLUT107に格納する。すなわち、図7
に示すように、ROMのN番地の内容をLUT107の
0(=8×0)番地へ、ROMのN+1番地の内容をL
UT107の8(=8×1)番地へ、ROMのN+i番
地の内容をLUT107の8×i番地へ、順次格納す
る。これによる格納後のLUT107の内容は図8に示
すものとなる。
タを先行してLUT107に格納する。すなわち、図7
に示すように、ROMのN番地の内容をLUT107の
0(=8×0)番地へ、ROMのN+1番地の内容をL
UT107の8(=8×1)番地へ、ROMのN+i番
地の内容をLUT107の8×i番地へ、順次格納す
る。これによる格納後のLUT107の内容は図8に示
すものとなる。
【0047】最上位ビットのみのデータの格納が終了す
ると、次に、ROMの0番地から格納されている下位8
ビットのデータの格納を行う。
ると、次に、ROMの0番地から格納されている下位8
ビットのデータの格納を行う。
【0048】まず、端子101にLUT107の0番地
を指定する8ビットのアドレス信号を入力する。このと
き、このアドレス信号の下位3ビットは全て0であり、
“000”検出ブロック201でそれが検出されてLU
Tの0番地からすでに格納済みの8ビットデータa8 b
8 c8 d8 e8 f8 g8 h8 が読出され、シフトレジス
タ103にロードされる。そして、端子102にROM
の0番地から読出したa1 …a0 の8ビットデータを入
力し、シフトレジスタ103から出力されているa8 を
上位に付加し、LUTの0番地に再格納する。この時、
この番地にあらかじめ格納してあった最上位ビットの集
まりのデータは消えてしまうが、シフトレジスタ103
がその内容を保持しているので、全く問題無い。
を指定する8ビットのアドレス信号を入力する。このと
き、このアドレス信号の下位3ビットは全て0であり、
“000”検出ブロック201でそれが検出されてLU
Tの0番地からすでに格納済みの8ビットデータa8 b
8 c8 d8 e8 f8 g8 h8 が読出され、シフトレジス
タ103にロードされる。そして、端子102にROM
の0番地から読出したa1 …a0 の8ビットデータを入
力し、シフトレジスタ103から出力されているa8 を
上位に付加し、LUTの0番地に再格納する。この時、
この番地にあらかじめ格納してあった最上位ビットの集
まりのデータは消えてしまうが、シフトレジスタ103
がその内容を保持しているので、全く問題無い。
【0049】以下、第1実施例と同様に、シフトレジス
タ103にクロックが入力されデータが1ビットシフト
すると共に端子101から1番地を指定するアドレス信
号が入力され、端子102にはROMの1番地の内容で
あるb7 〜b0 が入力されてこのデータにb8 が付加さ
れた後LUT107に格納される。この処理は、最初の
1組目の8個のデータがLUT107に格納されるまで
連続して続けられる。
タ103にクロックが入力されデータが1ビットシフト
すると共に端子101から1番地を指定するアドレス信
号が入力され、端子102にはROMの1番地の内容で
あるb7 〜b0 が入力されてこのデータにb8 が付加さ
れた後LUT107に格納される。この処理は、最初の
1組目の8個のデータがLUT107に格納されるまで
連続して続けられる。
【0050】次に、2組目の8個のデータをLUT10
7に格納する処理に進む。
7に格納する処理に進む。
【0051】端子101には8番地を指定する8ビット
のアドレス信号が入力される。この時、再びアドレス信
号の下位3ビットが全て0になるので、“000”検出
ブロック201でそれが検出され、LUT107の8番
地から、すでに格納済みの8ビットデータa8 ′b8 ′
c8 ′d8 ′e8 ′f8 ′g8 ′h8 ′が読出され、そ
れがシフトレジスタ103にロードされる。そして、端
子102にROMの8番地から読出したa7 ′…a0 ′
の8ビットデータを入力し、シフトレジスタ103から
出力されているa8 ′を上位に付加して、LUT107
の8番地に再格納する。このように、2組目の8個のデ
ータもLUT107に格納されて行き、以下、3組目,
4組目,…と続いて行き、全データの格納が終了する。
のアドレス信号が入力される。この時、再びアドレス信
号の下位3ビットが全て0になるので、“000”検出
ブロック201でそれが検出され、LUT107の8番
地から、すでに格納済みの8ビットデータa8 ′b8 ′
c8 ′d8 ′e8 ′f8 ′g8 ′h8 ′が読出され、そ
れがシフトレジスタ103にロードされる。そして、端
子102にROMの8番地から読出したa7 ′…a0 ′
の8ビットデータを入力し、シフトレジスタ103から
出力されているa8 ′を上位に付加して、LUT107
の8番地に再格納する。このように、2組目の8個のデ
ータもLUT107に格納されて行き、以下、3組目,
4組目,…と続いて行き、全データの格納が終了する。
【0052】本実施例のように、最上位ビットデータと
下位8ビットデータを分離してROMに格納し、最上位
ビットデータを先行してLUT107に格納する構成
は、次のような特徴を有する。
下位8ビットデータを分離してROMに格納し、最上位
ビットデータを先行してLUT107に格納する構成
は、次のような特徴を有する。
【0053】先行して格納する最上位ビットデータは、
LUTへの格納時に番地において連続にならないが、そ
の後に格納する下位8ビットデータはROMアドレスお
よびLUTアドレスが連続になるので、DMA(ダイレ
クトメモリアクス)転送が可能となり、ROMから本例
の色変換装置へのデータ転送を高速に行うことができ
る。
LUTへの格納時に番地において連続にならないが、そ
の後に格納する下位8ビットデータはROMアドレスお
よびLUTアドレスが連続になるので、DMA(ダイレ
クトメモリアクス)転送が可能となり、ROMから本例
の色変換装置へのデータ転送を高速に行うことができ
る。
【0054】以下の、第3,第4の実施例では、下位8
ビットデータのみでなく、最上位ビットデータの先行格
納においても、アドレスが見かけ上もしくは実際に連続
になるようにしたものである。
ビットデータのみでなく、最上位ビットデータの先行格
納においても、アドレスが見かけ上もしくは実際に連続
になるようにしたものである。
【0055】(第3実施例)図9は本発明の第3実施例
に係る色変換装置の構成を示すブロック図である。
に係る色変換装置の構成を示すブロック図である。
【0056】上述のように、本実施例は、第2実施例に
おいて先行してLUTに格納していた最上位ビットデー
タのアドレスを見かけ上連続にするものである。これを
実現するために、8ビットのアドレス信号を3ビット上
位へシフトするシフタ301とセレクタ302を設け
る。最上位ビットデータを先行してLUT107に格納
する時は、セレクタ302は1−a側を選択し、これに
より端子101からアドレス信号として0,1,2,
3,…(10進数表示)を入力すると、シフタ301に
よりこのアドレス値は0,8,16,24,…(10進
数表示)に変換される。この結果、外部から色変換装置
に入力するアドレスが連続アドレスであるにもかかわら
ず、第2実施例と同様、図8に示すような格納が可能と
なる。下位8ビットデータをLUTに格納する時と、色
変換処理を行う際には、セレクタ302は1−b側を選
択する。
おいて先行してLUTに格納していた最上位ビットデー
タのアドレスを見かけ上連続にするものである。これを
実現するために、8ビットのアドレス信号を3ビット上
位へシフトするシフタ301とセレクタ302を設け
る。最上位ビットデータを先行してLUT107に格納
する時は、セレクタ302は1−a側を選択し、これに
より端子101からアドレス信号として0,1,2,
3,…(10進数表示)を入力すると、シフタ301に
よりこのアドレス値は0,8,16,24,…(10進
数表示)に変換される。この結果、外部から色変換装置
に入力するアドレスが連続アドレスであるにもかかわら
ず、第2実施例と同様、図8に示すような格納が可能と
なる。下位8ビットデータをLUTに格納する時と、色
変換処理を行う際には、セレクタ302は1−b側を選
択する。
【0057】以上の構成によれば、その動作は、第2実
施例と同一となるので、以後の説明を省略する。
施例と同一となるので、以後の説明を省略する。
【0058】本実施例により、最上位ビットデータの先
行格納および下位8ビットデータの格納の両方が見かけ
上連続アドレスのアクセスとなるため、両方でDMAが
可能となり、一段とデータ転送時間を短縮できる。
行格納および下位8ビットデータの格納の両方が見かけ
上連続アドレスのアクセスとなるため、両方でDMAが
可能となり、一段とデータ転送時間を短縮できる。
【0059】(第4実施例)図10は本発明の第4実施
例に係る色変換装置の構成を示すブロック図である。
例に係る色変換装置の構成を示すブロック図である。
【0060】本実施例は、前述の第2,第3の実施例に
おいて、先行してLUTに格納する最上位ビットデータ
のアドレスを色変換装置に対して見かけ上ではなく、そ
の装置内において実際に連続にするものである。これを
実現するために、アドレス変換部401とその出力を選
択するセレクタ402を設けた。
おいて、先行してLUTに格納する最上位ビットデータ
のアドレスを色変換装置に対して見かけ上ではなく、そ
の装置内において実際に連続にするものである。これを
実現するために、アドレス変換部401とその出力を選
択するセレクタ402を設けた。
【0061】アドレス変換部401は、端子101から
入力されたアドレス信号を3ビット下位へシフトしてか
らオフセット値を加算するものである。加算するオフセ
ット値は先行して格納した最上位ビットデータの先頭番
地の値であり、この値は、実際に先行して最上位ビット
データを格納している時にアドレス信号上に現れるた
め、それをラッチして保持すればよい。
入力されたアドレス信号を3ビット下位へシフトしてか
らオフセット値を加算するものである。加算するオフセ
ット値は先行して格納した最上位ビットデータの先頭番
地の値であり、この値は、実際に先行して最上位ビット
データを格納している時にアドレス信号上に現れるた
め、それをラッチして保持すればよい。
【0062】最上位ビットデータを先行して連続アドレ
スに格納する際には、アドレス変換器401は用いられ
ないので、セレクタ402は2−b側を選択する。すな
わち、最上位ビットデータを格納する連続アドレスは端
子101から入力する。ところで、この連続するアドレ
スというのは、どのアドレスを始点としたらよいのかと
いう問題が出てくる。これまでの上記実施例の説明から
明らかなように、先行して格納した最上位ビットデータ
は、最終的に9ビットのテーブルデータが上書きされて
消えてしまう。従って、未使用の最上位ビットデータが
消えないようにデータを格納する必要がある。そのた
め、一番最後の組の最上位ビットデータをLUT107
の最終アドレスに格納するようにする。
スに格納する際には、アドレス変換器401は用いられ
ないので、セレクタ402は2−b側を選択する。すな
わち、最上位ビットデータを格納する連続アドレスは端
子101から入力する。ところで、この連続するアドレ
スというのは、どのアドレスを始点としたらよいのかと
いう問題が出てくる。これまでの上記実施例の説明から
明らかなように、先行して格納した最上位ビットデータ
は、最終的に9ビットのテーブルデータが上書きされて
消えてしまう。従って、未使用の最上位ビットデータが
消えないようにデータを格納する必要がある。そのた
め、一番最後の組の最上位ビットデータをLUT107
の最終アドレスに格納するようにする。
【0063】上述の方法により、最上位ビットアドレス
を先行して格納すると、次に、下位8ビットデータの格
納を行う。
を先行して格納すると、次に、下位8ビットデータの格
納を行う。
【0064】まず、端子101にLUT107の0番地
を指定するアドレスを入力する。すでに説明した第2,
第3の実施例と同様、各組の一番最初の下位8ビットデ
ータを格納する前には、必ず、対応する組の最上位ビッ
トデータをシフトレジスタ103にロードする必要があ
る。このデータは、第2,第3の実施例のように0番地
にあるわけではなく、まったく別の番地にあるが、その
番地はアドレス変換器401で求められる。よって、シ
フトレジスタ103にロードするデータをLUT107
から読出す時だけ、セレクタ402は2−a側を選択
し、その他の場合はすべて2−b側を選択する。
を指定するアドレスを入力する。すでに説明した第2,
第3の実施例と同様、各組の一番最初の下位8ビットデ
ータを格納する前には、必ず、対応する組の最上位ビッ
トデータをシフトレジスタ103にロードする必要があ
る。このデータは、第2,第3の実施例のように0番地
にあるわけではなく、まったく別の番地にあるが、その
番地はアドレス変換器401で求められる。よって、シ
フトレジスタ103にロードするデータをLUT107
から読出す時だけ、セレクタ402は2−a側を選択
し、その他の場合はすべて2−b側を選択する。
【0065】以上説明した制御を行うことにより、シフ
トレジスタ103に所定のタイミングで必要な最上位ビ
ットデータをロードし、その後は、前述した第2,第3
の実施例と同じようにしてROMから下位8ビットのデ
ータを順次本例色変換装置に転送し、LUT107へ9
ビットのテーブル用データを格納することができる。
トレジスタ103に所定のタイミングで必要な最上位ビ
ットデータをロードし、その後は、前述した第2,第3
の実施例と同じようにしてROMから下位8ビットのデ
ータを順次本例色変換装置に転送し、LUT107へ9
ビットのテーブル用データを格納することができる。
【0066】なお、これまで説明してきた4つの実施例
はLUTの入力データサイズがすべて9ビットであった
が、この4つの実施例はデータサイズが8+2k (k=
1,2)に対しても容易に拡張できる。
はLUTの入力データサイズがすべて9ビットであった
が、この4つの実施例はデータサイズが8+2k (k=
1,2)に対しても容易に拡張できる。
【0067】具体的には、k=1すなわちLUTの出力
データビット数が10ビットの時は1組のデータが4個
になり、シフトレジスタから出力するデータは上位2ビ
ットとなり、それを端子102から入力されたデータの
上位ビットに付加して、10ビットにした後LUTに格
納すればよい。
データビット数が10ビットの時は1組のデータが4個
になり、シフトレジスタから出力するデータは上位2ビ
ットとなり、それを端子102から入力されたデータの
上位ビットに付加して、10ビットにした後LUTに格
納すればよい。
【0068】この時のシフトレジスタの1データ当たり
のシフト数は2ビットになる。これは、4ビットのシフ
トレジスタを2個使い、一方のシフトレジスタには最上
位ビットのみを、もう一方のレジスタには最上位から2
番目のビットのみをロードして、上記動作を実現しても
良いし、あるいは通常のシフトレジスタにクロックを2
回入力して2ビットシフトを実現してもよい。
のシフト数は2ビットになる。これは、4ビットのシフ
トレジスタを2個使い、一方のシフトレジスタには最上
位ビットのみを、もう一方のレジスタには最上位から2
番目のビットのみをロードして、上記動作を実現しても
良いし、あるいは通常のシフトレジスタにクロックを2
回入力して2ビットシフトを実現してもよい。
【0069】また、上位2ビットデータを4つ集めて8
ビットにしたデータを下位8ビットデータに先行してL
UTに格納する際は、第2,第3の実施例に従えば4番
地ごとに格納すればよく、第3の実施例に出てくるシフ
タ301のシフト量は2ビットとなる。
ビットにしたデータを下位8ビットデータに先行してL
UTに格納する際は、第2,第3の実施例に従えば4番
地ごとに格納すればよく、第3の実施例に出てくるシフ
タ301のシフト量は2ビットとなる。
【0070】さらに、k=2、すなわちLUTの出力デ
ータビット数が12ビットの時は、1組のデータが2個
となるが、この場合の構成については9ビット,10ビ
ットの場合から理解できる。
ータビット数が12ビットの時は、1組のデータが2個
となるが、この場合の構成については9ビット,10ビ
ットの場合から理解できる。
【0071】LUTの出力データビット数が8+2k
(k=0,1,2)ビットにならない場合、例えば11
ビットの時は以下のようになる。
(k=0,1,2)ビットにならない場合、例えば11
ビットの時は以下のようになる。
【0072】これには2つの方法があり、第1は、11
ビットデータにダミーの1ビットを最上位に付加して、
12ビットとし第1〜第4の実施例と同様の構成で処理
し、LUTにデータを格納する時に有効な下位11ビッ
トのみを格納するという方法である。
ビットデータにダミーの1ビットを最上位に付加して、
12ビットとし第1〜第4の実施例と同様の構成で処理
し、LUTにデータを格納する時に有効な下位11ビッ
トのみを格納するという方法である。
【0073】第2は、別のパッキング方法を用いて処理
する方法であり、第5,第6の実施例で述べる。この方
法はすべてのビット数、すなわち9〜15ビットに対し
ても有効な方法である。
する方法であり、第5,第6の実施例で述べる。この方
法はすべてのビット数、すなわち9〜15ビットに対し
ても有効な方法である。
【0074】(第5実施例)図11は本発明の第5実施
例に係る色変換装置の構成を示すブロック図である。
例に係る色変換装置の構成を示すブロック図である。
【0075】本実施例が、これまでに説明した第1〜第
4の実施例と大きく異なる点は、外部メモリであるRO
Mに格納するパッキングデータのパッキング形式であ
る。本実施例で用いるパッキング形式を図12に示す。
4の実施例と大きく異なる点は、外部メモリであるRO
Mに格納するパッキングデータのパッキング形式であ
る。本実施例で用いるパッキング形式を図12に示す。
【0076】この図から明らかなように、各々11ビッ
トのLUT用データを先頭データから順に連結(先頭デ
ータの最下位ビット(LSB)のすぐ右に、次のデータ
の最上位ビット(MSB)を配置して1次元のビット列
とする)して並べ、これを先頭から8ビット単位で切出
し、前記のROMの0番地から順に格納するものであ
る。
トのLUT用データを先頭データから順に連結(先頭デ
ータの最下位ビット(LSB)のすぐ右に、次のデータ
の最上位ビット(MSB)を配置して1次元のビット列
とする)して並べ、これを先頭から8ビット単位で切出
し、前記のROMの0番地から順に格納するものであ
る。
【0077】このようなパッキング形式のデータに対応
するため、図11に示すように、本実施例の色変換装置
はシフト機能を持たない10ビットのレジスタ501
と、レジスタ501の入力データを選択するセレクタ5
02、端子102から入力される8ビットデータとレジ
スタ501から出力される10ビットデータを合わせた
18ビットのデータの中から所望の11ビットのデータ
を出力するためのシフタ503、シフタ503のシフト
量を制御するシフト量制御部504、および選択信号出
力端子505を有する。また、本実施例のLUT107
の入力データビット幅は、もちろん11ビットである。
するため、図11に示すように、本実施例の色変換装置
はシフト機能を持たない10ビットのレジスタ501
と、レジスタ501の入力データを選択するセレクタ5
02、端子102から入力される8ビットデータとレジ
スタ501から出力される10ビットデータを合わせた
18ビットのデータの中から所望の11ビットのデータ
を出力するためのシフタ503、シフタ503のシフト
量を制御するシフト量制御部504、および選択信号出
力端子505を有する。また、本実施例のLUT107
の入力データビット幅は、もちろん11ビットである。
【0078】他の入出力端子については、これまでの第
1〜第4実施例と同一の機能である。
1〜第4実施例と同一の機能である。
【0079】本実施例の基本的な処理は、まず、端子1
02から入力された8ビットデータをレジスタ501に
取込み、その後に入力された8ビットデータへレジスタ
から出力される8ビットデータを上位に連結し、その中
から11ビットのテーブルデータをシフタ503で選択
してLUT107に格納する。
02から入力された8ビットデータをレジスタ501に
取込み、その後に入力された8ビットデータへレジスタ
から出力される8ビットデータを上位に連結し、その中
から11ビットのテーブルデータをシフタ503で選択
してLUT107に格納する。
【0080】しかし、シフタ503の出力には、常に所
望の11ビットデータが揃っているわけではなく、11
ビット中の8ビットもしくは9ビットあるいは10ビッ
トしかない場合がある。こういった場合には、シフタ5
03から出力される上記8,9または10ビットを再度
レジスタ501に取込み、それを保持し、次の入力に備
える。上述の動作では、セレクタ502はH側の入力を
選択し、その他の場合にはL側の入力を選択するよう、
セレクタ502を制御する必要があるが、この制御はシ
フト量制御部504によって行われる。さらに具体的に
説明すると、シフト量制御部504からシフタ503へ
送られるシフト量制御値が8以上の時(後述のようにシ
フト量制御部504によるシフト量制御値の上限は8に
リミットしているので、8以上と言っても実際は8しか
ありえない)、シフタ503から出力される有効なビッ
トデータは10ビット以下になってしまう。シフタ50
3の動作は、シフト量がmビットの時入力される全18
ビットデータの上位mビットを取除き、それに続く(1
8−m)ビットを出力するからである。このような場合
には、LUT107に11ビットのデータを格納するこ
とができないので、再度、レジスタ501にデータを保
持する必要がある。従って、シフト量制御部504から
出力されるシフト量制御値が8以上の時にセレクタ50
2の制御信号がHighとなり、セレクタ502はH側
の入力を選択する。一方、シフト量制御値が7以下の時
はセレクタの制御信号はLowになり、セレクタ502
はL側の入力を選択する。
望の11ビットデータが揃っているわけではなく、11
ビット中の8ビットもしくは9ビットあるいは10ビッ
トしかない場合がある。こういった場合には、シフタ5
03から出力される上記8,9または10ビットを再度
レジスタ501に取込み、それを保持し、次の入力に備
える。上述の動作では、セレクタ502はH側の入力を
選択し、その他の場合にはL側の入力を選択するよう、
セレクタ502を制御する必要があるが、この制御はシ
フト量制御部504によって行われる。さらに具体的に
説明すると、シフト量制御部504からシフタ503へ
送られるシフト量制御値が8以上の時(後述のようにシ
フト量制御部504によるシフト量制御値の上限は8に
リミットしているので、8以上と言っても実際は8しか
ありえない)、シフタ503から出力される有効なビッ
トデータは10ビット以下になってしまう。シフタ50
3の動作は、シフト量がmビットの時入力される全18
ビットデータの上位mビットを取除き、それに続く(1
8−m)ビットを出力するからである。このような場合
には、LUT107に11ビットのデータを格納するこ
とができないので、再度、レジスタ501にデータを保
持する必要がある。従って、シフト量制御部504から
出力されるシフト量制御値が8以上の時にセレクタ50
2の制御信号がHighとなり、セレクタ502はH側
の入力を選択する。一方、シフト量制御値が7以下の時
はセレクタの制御信号はLowになり、セレクタ502
はL側の入力を選択する。
【0081】図13はシフト量制御部504の内部構成
の一例を示す回路ブロック図である。
の一例を示す回路ブロック図である。
【0082】加算器601,比較器602,ゲート回路
603,減算器604およびレジスタ605により、レ
ジスタ605の出力値(初期値)に、1サイクルごとに
定数‘3’がモジュロ11の演算で加算される。ここ
で、モジュロ11の演算とは、加算結果が11以上の
時、その値から11を減算して、演算結果が0以上10
以下に収まるようにすることである。
603,減算器604およびレジスタ605により、レ
ジスタ605の出力値(初期値)に、1サイクルごとに
定数‘3’がモジュロ11の演算で加算される。ここ
で、モジュロ11の演算とは、加算結果が11以上の
時、その値から11を減算して、演算結果が0以上10
以下に収まるようにすることである。
【0083】また、比較器606およびセレクタ607
により、レジスタ605の出力はさらに8以下に制限
(リミット)され、その値はシフト量制御値として端子
608から出力される。
により、レジスタ605の出力はさらに8以下に制限
(リミット)され、その値はシフト量制御値として端子
608から出力される。
【0084】端子609には、比較器606の比較結果
が出力され、この出力値は、レジスタ605の出力値が
8以上の時はHigh、8未満の時はLowとなる。な
お、レジスタ605には、初期値として10が設定され
る。
が出力され、この出力値は、レジスタ605の出力値が
8以上の時はHigh、8未満の時はLowとなる。な
お、レジスタ605には、初期値として10が設定され
る。
【0085】その後のレジスタの値、および端子60
8,609の出力は図14に示した値となる。
8,609の出力は図14に示した値となる。
【0086】以上説明した、シフト量制御部504の動
作から、本実施例である図11に示す構成の動作が理解
できる。以下、その動作を説明する。
作から、本実施例である図11に示す構成の動作が理解
できる。以下、その動作を説明する。
【0087】なお、本実施例では11バイトのデータ
(11ビット×8ケ)が1組になっているため、本実施
例の動作を完全に説明するには、11バイト、すなわち
11クロック周期分の動作を説明しなければならない
が、ここでは、最初の2クロック周期分のみ説明し、後
は各周期におけるシフタ503の入力データと出力デー
タならびにレジスタ501の入力データを図15に示
し、以後の説明を省略する。
(11ビット×8ケ)が1組になっているため、本実施
例の動作を完全に説明するには、11バイト、すなわち
11クロック周期分の動作を説明しなければならない
が、ここでは、最初の2クロック周期分のみ説明し、後
は各周期におけるシフタ503の入力データと出力デー
タならびにレジスタ501の入力データを図15に示
し、以後の説明を省略する。
【0088】図11において、まず、端子102に、外
部メモリ(ROM)の0番地の内容a10a9 …a4 a3
が、端子101にはLUT107の0番地を指定するア
ドレス信号がそれぞれ入力される。シフト量制御部50
4の内部レジスタ605は初期値10にセットされてい
るため、セレクタ502の制御信号はHigh、シフタ
503のシフト量は8ビットになっている。従って、端
子102から入力されたデータは、上位に10ビットの
データが付加された後シフタ503にて上位8ビットが
除去され、その結果XXa10a9 …a4 a3 (Xは不定
信号を示す、以下同様)の10ビットがレジスタ501
に入力される。上記データ入力時、端子505から出力
される信号はHighであるが、これはLUT107へ
のデータの格納が行われていないことを示している。
部メモリ(ROM)の0番地の内容a10a9 …a4 a3
が、端子101にはLUT107の0番地を指定するア
ドレス信号がそれぞれ入力される。シフト量制御部50
4の内部レジスタ605は初期値10にセットされてい
るため、セレクタ502の制御信号はHigh、シフタ
503のシフト量は8ビットになっている。従って、端
子102から入力されたデータは、上位に10ビットの
データが付加された後シフタ503にて上位8ビットが
除去され、その結果XXa10a9 …a4 a3 (Xは不定
信号を示す、以下同様)の10ビットがレジスタ501
に入力される。上記データ入力時、端子505から出力
される信号はHighであるが、これはLUT107へ
のデータの格納が行われていないことを示している。
【0089】端子101に入力するアドレス信号は、一
般的にはCPUもしくはDMAコントローラから与えら
れる。ここで、もしCPUから与えられるのであれば、
端子505の出力信号をCPUにモニタさせ、この出力
信号がHighのときにはアドレス信号をインクリメン
トせずに前の値を保持するようにする。また、出力信号
がLowの時にはアドレス信号をインクリメントさせる
ことにより、LUT107の番地指定は正確に管理でき
る。
般的にはCPUもしくはDMAコントローラから与えら
れる。ここで、もしCPUから与えられるのであれば、
端子505の出力信号をCPUにモニタさせ、この出力
信号がHighのときにはアドレス信号をインクリメン
トせずに前の値を保持するようにする。また、出力信号
がLowの時にはアドレス信号をインクリメントさせる
ことにより、LUT107の番地指定は正確に管理でき
る。
【0090】次のサイクルでは、アドレス信号が0番地
のまま、ROMの1番地目の内容a2 a1 a0 b10…b
6 が端子102から入力される。この時、シフト量制御
部504の内部レジスタ605の値は‘2’であるため
(図14参照)、セレクタ502の制御信号、および端
子505の出力信号はLowになっており、シフタ50
3のシフト量は2ビットとなる。
のまま、ROMの1番地目の内容a2 a1 a0 b10…b
6 が端子102から入力される。この時、シフト量制御
部504の内部レジスタ605の値は‘2’であるため
(図14参照)、セレクタ502の制御信号、および端
子505の出力信号はLowになっており、シフタ50
3のシフト量は2ビットとなる。
【0091】これにより、端子102から入力された8
ビットデータa2 a1 a0 b10…b6 の上位に、XXa
10…a3 の10ビットが付加されて、XXa10…a0 b
10…b6 の18ビットになり、最上位の2ビット(X
X)が除去された後の上位11ビットa10…a0 がLU
T107の0番地に格納される。この時、レジスタ50
1には、端子201から入力された8ビットデータに上
位2ビット(XX)が付加された10ビットの信号がセ
レクタ502を経由して入力される。
ビットデータa2 a1 a0 b10…b6 の上位に、XXa
10…a3 の10ビットが付加されて、XXa10…a0 b
10…b6 の18ビットになり、最上位の2ビット(X
X)が除去された後の上位11ビットa10…a0 がLU
T107の0番地に格納される。この時、レジスタ50
1には、端子201から入力された8ビットデータに上
位2ビット(XX)が付加された10ビットの信号がセ
レクタ502を経由して入力される。
【0092】この後は、図15に示したリストどうり
に、各部の信号が推移し、11バイト1組のデータがL
UT107に格納される。以後のデータ格納も上述の1
1バイトを11組とした周期の繰返しで行われる。
に、各部の信号が推移し、11バイト1組のデータがL
UT107に格納される。以後のデータ格納も上述の1
1バイトを11組とした周期の繰返しで行われる。
【0093】本実施例は11ビットデータ(LUTの出
力ビット数が11ビットと同じ意味)のみに対応した構
成を示したが、9〜15ビットのいずれにも容易に拡張
できる。具体的には、図16に示すパラメータに基づい
てレジスタ501のビット数やシフト量制御部504に
おける各部の値を定めればよい。
力ビット数が11ビットと同じ意味)のみに対応した構
成を示したが、9〜15ビットのいずれにも容易に拡張
できる。具体的には、図16に示すパラメータに基づい
てレジスタ501のビット数やシフト量制御部504に
おける各部の値を定めればよい。
【0094】また、レジスタ501を最大の14ビット
長確保し、シフト量制御部504における各部の値をプ
ログラマブルに設定できるようにすれば、同一の構成で
9〜15の任意のビットに対応できる。
長確保し、シフト量制御部504における各部の値をプ
ログラマブルに設定できるようにすれば、同一の構成で
9〜15の任意のビットに対応できる。
【0095】(第6実施例)図17は、本発明の第6実
施例に係る色変換装置の構成を示すブロック図である。
施例に係る色変換装置の構成を示すブロック図である。
【0096】本実施例におけるデータのパッキング形式
は前述の第5実施例と同様とする。このパッキング形式
において、LUTの入力データビット幅が8+2k (k
=0,1,2)の場合は、他の場合と異なり、制御の方
法が比較的単純になる。それを示したのが、本実施例で
ある。
は前述の第5実施例と同様とする。このパッキング形式
において、LUTの入力データビット幅が8+2k (k
=0,1,2)の場合は、他の場合と異なり、制御の方
法が比較的単純になる。それを示したのが、本実施例で
ある。
【0097】本例の場合、第5実施例に係る図11の構
成においてセレクタ502が不要となり、また、図13
に示す比較的複雑な構成のシフト量制御部504の替り
に3ビットのカウンタ701を使用するだけでよい。
成においてセレクタ502が不要となり、また、図13
に示す比較的複雑な構成のシフト量制御部504の替り
に3ビットのカウンタ701を使用するだけでよい。
【0098】本実施例は、k=1すなわちLUTの入力
データビット幅が10ビットの場合を示している。この
場合の外部メモリ(ROM)の内容を図18に示す。1
0ビットの場合は、5バイトのデータが1組となるの
で、5バイト分のみ示した。第5実施例に係る図11と
異なる要素ブロックは3ビットカウンタ701のみであ
り、この動作について説明する。
データビット幅が10ビットの場合を示している。この
場合の外部メモリ(ROM)の内容を図18に示す。1
0ビットの場合は、5バイトのデータが1組となるの
で、5バイト分のみ示した。第5実施例に係る図11と
異なる要素ブロックは3ビットカウンタ701のみであ
り、この動作について説明する。
【0099】図17において、カウンタ701は初期値
として4がセットされ、このとき、3ビットの出力の最
上位ビットのみが‘1’その他は‘0’になる。この最
上位ビットは、端子505に出力されると共に、カウン
タ701のクリア信号としても用いられる。よって、次
のサイクルではカウンタの値は‘0’に戻り、その後1
つづつカウントアップして再度‘4’に達すると、また
0に戻る動作をする。
として4がセットされ、このとき、3ビットの出力の最
上位ビットのみが‘1’その他は‘0’になる。この最
上位ビットは、端子505に出力されると共に、カウン
タ701のクリア信号としても用いられる。よって、次
のサイクルではカウンタの値は‘0’に戻り、その後1
つづつカウントアップして再度‘4’に達すると、また
0に戻る動作をする。
【0100】カウンタ701の下位2ビットは、シフタ
503へ送られるが、本実施例におけるシフタ503の
シフト量制御信号の入力ビット数は3ビットであり、そ
の上位2ビットへ前記カウンタ出力の2ビットを入力す
る。残りの入力端子には0を入力する。よって、シフタ
503のシフト量は、0,2,4,6ビットの4種類と
なる。
503へ送られるが、本実施例におけるシフタ503の
シフト量制御信号の入力ビット数は3ビットであり、そ
の上位2ビットへ前記カウンタ出力の2ビットを入力す
る。残りの入力端子には0を入力する。よって、シフタ
503のシフト量は、0,2,4,6ビットの4種類と
なる。
【0101】図17において、端子505の出力信号と
端子101から入力されるアドレス信号の関係は、前述
の第5実施例と同一であるためその説明を省略する。
端子101から入力されるアドレス信号の関係は、前述
の第5実施例と同一であるためその説明を省略する。
【0102】端子102に入力されたROMの0番地の
内容a9 …a2 は、レジスタ501に取込まれ最初のサ
イクルは終了する。次のサイクルでは、レジスタ501
からa9 …a2 が出力され、端子102にROMの1番
地の内容a1 a0 b9 …b4が入力される。この2つの
データは連結されてa9 …a2 a1 a0 b9 …b4 とな
り、シフタ503へ入力される。この時、シフタ503
のシフト量は0ビット、すなわち最上位ビットからは何
も除去されず、a9 から始まる10ビットのデータすな
わちa9 a8 …a1 a0 がシフタ503から出力されL
UT107に格納される。
内容a9 …a2 は、レジスタ501に取込まれ最初のサ
イクルは終了する。次のサイクルでは、レジスタ501
からa9 …a2 が出力され、端子102にROMの1番
地の内容a1 a0 b9 …b4が入力される。この2つの
データは連結されてa9 …a2 a1 a0 b9 …b4 とな
り、シフタ503へ入力される。この時、シフタ503
のシフト量は0ビット、すなわち最上位ビットからは何
も除去されず、a9 から始まる10ビットのデータすな
わちa9 a8 …a1 a0 がシフタ503から出力されL
UT107に格納される。
【0103】その後、レジスタ501に現在の入力デー
タa1 a0 b9 …b4 が取込まれ2サイクル目が終了す
る。
タa1 a0 b9 …b4 が取込まれ2サイクル目が終了す
る。
【0104】次のサイクルでは、データ:a1 a0 b9
…b4 がレジスタ501から出力され、端子102から
はROMの2番地のデータ:b3 …b0 c9 …c6 が入
力される。前のサイクル同様、この2つのデータは連結
されてa1 a0 b9 …b4 b3 …b0 c9 …c6 とな
り、シフタ503へ入力される。この時のシフタ503
によるシフト量は2ビットであるため、最上位の2ビッ
ト:a1 a0 が除去され、残されたデータの上位10ビ
ット:b9 b8 …b1 b0 がシフタ503から出力され
てLUT107へ格納される。その後、レジスタ501
に、現在の入力データb3 …b0 c9 …c6 が取込ま
れ、3サイクル目が終了する。
…b4 がレジスタ501から出力され、端子102から
はROMの2番地のデータ:b3 …b0 c9 …c6 が入
力される。前のサイクル同様、この2つのデータは連結
されてa1 a0 b9 …b4 b3 …b0 c9 …c6 とな
り、シフタ503へ入力される。この時のシフタ503
によるシフト量は2ビットであるため、最上位の2ビッ
ト:a1 a0 が除去され、残されたデータの上位10ビ
ット:b9 b8 …b1 b0 がシフタ503から出力され
てLUT107へ格納される。その後、レジスタ501
に、現在の入力データb3 …b0 c9 …c6 が取込ま
れ、3サイクル目が終了する。
【0105】以後、同様に処理が行われ、図19はこの
処理においてレジスタ501の出力、シフタ503の入
出力がどのように変化するかを説明するものである。
処理においてレジスタ501の出力、シフタ503の入
出力がどのように変化するかを説明するものである。
【0106】本実施例ではLUTの入力データビット数
が10ビットの場合を示したが、他のビット、例えば9
ビットの場合には、カウンタ701が3ビットから4ビ
ットになり、シフタ503へ送られる信号が下位の3ビ
ットとなる。
が10ビットの場合を示したが、他のビット、例えば9
ビットの場合には、カウンタ701が3ビットから4ビ
ットになり、シフタ503へ送られる信号が下位の3ビ
ットとなる。
【0107】(第7実施例)図20は、本発明の第7実
施例に係る色変換装置の構成を示すブロック図である。
施例に係る色変換装置の構成を示すブロック図である。
【0108】これまでに説明した6つの実施例は、すべ
て9〜15ビットのデータを8ビット単位でパッキング
し、その単位でLUTを含むデータ変換装置へデータを
転送するものであったが、本実施例では16ビット単位
でパッキングし、その単位でデータの転送を行うもので
ある。本実施例の基礎となる実施例は前述の第6実施例
であり、パッキングの単位とデータ転送単位が異なるだ
けで、他の条件は第6実施例と同様のものである。パッ
キングとデータ転送の単位が16ビットになることによ
り、それに応じてレジスタ,シフタ等のサイズが変わ
る。
て9〜15ビットのデータを8ビット単位でパッキング
し、その単位でLUTを含むデータ変換装置へデータを
転送するものであったが、本実施例では16ビット単位
でパッキングし、その単位でデータの転送を行うもので
ある。本実施例の基礎となる実施例は前述の第6実施例
であり、パッキングの単位とデータ転送単位が異なるだ
けで、他の条件は第6実施例と同様のものである。パッ
キングとデータ転送の単位が16ビットになることによ
り、それに応じてレジスタ,シフタ等のサイズが変わ
る。
【0109】レジスタ803の最上位ビットは、レジス
タ801のクロック端子に入力される。この結果、この
最上位ビット信号がLowからHighへ変化する時に
端子102から入力された16ビットデータをレジスタ
801に取込む。端子102へのデータ供給を制御する
外部のCPU等は、端子805に出力される信号をモニ
タし、この信号がHighになったときに、次の16ビ
ットデータをROM等の外部メモリから読出し、端子1
02に入力する。
タ801のクロック端子に入力される。この結果、この
最上位ビット信号がLowからHighへ変化する時に
端子102から入力された16ビットデータをレジスタ
801に取込む。端子102へのデータ供給を制御する
外部のCPU等は、端子805に出力される信号をモニ
タし、この信号がHighになったときに、次の16ビ
ットデータをROM等の外部メモリから読出し、端子1
02に入力する。
【0110】LUT107の入力データビット数より、
端子102から入力されるデータのビット数の方が多い
場合、LUT107へのデータ格納は毎サイクル実行さ
れるが、端子102へのデータ入力は断続的に行わなけ
ればならない。端子805に出力される信号は、その制
御に用いられる。
端子102から入力されるデータのビット数の方が多い
場合、LUT107へのデータ格納は毎サイクル実行さ
れるが、端子102へのデータ入力は断続的に行わなけ
ればならない。端子805に出力される信号は、その制
御に用いられる。
【0111】以下、図20を参照し、本例色変換装置の
初期状態からの動作を説明する。
初期状態からの動作を説明する。
【0112】まず、レジスタ803の出力は初期値
‘7’に設定され、端子102には一番先頭の16ビッ
トデータ:a8 …a0 b8 …b2 が入力される。これが
初期状態(最初のサイクル)となる。
‘7’に設定され、端子102には一番先頭の16ビッ
トデータ:a8 …a0 b8 …b2 が入力される。これが
初期状態(最初のサイクル)となる。
【0113】次のサイクルでは、上記初期値‘7’に
‘9’が加算され、‘16’がレジスタ803から出力
される。この時、最上位ビットがHighになるので、
直前のサイクルで端子102に入力されていた16ビッ
トデータがレジスタ801に取込まれる。また、端子8
05にHighが出力されるため次の16ビットデー
タ:b1 b0 c8 …c0 d8 …d4 が端子102に入力
される。このサイクルから、LUT107へのデータの
格納が開始されるため、端子101にはLUTの0番地
を指定するアドレス信号が入力される。
‘9’が加算され、‘16’がレジスタ803から出力
される。この時、最上位ビットがHighになるので、
直前のサイクルで端子102に入力されていた16ビッ
トデータがレジスタ801に取込まれる。また、端子8
05にHighが出力されるため次の16ビットデー
タ:b1 b0 c8 …c0 d8 …d4 が端子102に入力
される。このサイクルから、LUT107へのデータの
格納が開始されるため、端子101にはLUTの0番地
を指定するアドレス信号が入力される。
【0114】シフタ802には、レジスタ801から上
位16ビット、端子102から下位16ビットの合計3
2ビットが入力され、シフタ802のシフト量を指定す
る4ビットの信号がレジスタ803から与えられる。こ
の4ビットは、レジスタ803が出力する5ビットの内
の下位4ビットで、現サイクルでは値が0である。従っ
て、シフタ802に入力された32ビットの上位9ビッ
トであるa8 …a0 がシフタ802から出力され、LU
T107に格納される。
位16ビット、端子102から下位16ビットの合計3
2ビットが入力され、シフタ802のシフト量を指定す
る4ビットの信号がレジスタ803から与えられる。こ
の4ビットは、レジスタ803が出力する5ビットの内
の下位4ビットで、現サイクルでは値が0である。従っ
て、シフタ802に入力された32ビットの上位9ビッ
トであるa8 …a0 がシフタ802から出力され、LU
T107に格納される。
【0115】さらに次のサイクルでは、レジスタ803
の下位4ビットの前サイクルでの出力‘0’に‘9’が
加算され、その結果である‘9’がレジスタ803から
出力される。この時、最上位ビットはLowに戻る。従
って、このサイクルでは16ビットレジスタ801への
データの取込みや端子102からの新たなデータ入力が
無く、シフタ802には前サイクルと同一の32ビット
信号が入力される。ただし、LUT107へは毎サイク
ル格納が行われるため、アドレス信号だけはインクリメ
ントされる。
の下位4ビットの前サイクルでの出力‘0’に‘9’が
加算され、その結果である‘9’がレジスタ803から
出力される。この時、最上位ビットはLowに戻る。従
って、このサイクルでは16ビットレジスタ801への
データの取込みや端子102からの新たなデータ入力が
無く、シフタ802には前サイクルと同一の32ビット
信号が入力される。ただし、LUT107へは毎サイク
ル格納が行われるため、アドレス信号だけはインクリメ
ントされる。
【0116】シフタ802に入力される信号が同一で
も、シフト量が‘0’から‘9’変化しているため、前
サイクルで出力されたa8 …a0 の9ビットはシフタ8
02で除去されて、残りのデータの上位9ビット、すな
わちb8 …b0 がシフタ802から出力され、LUT1
07の1番地に格納される。
も、シフト量が‘0’から‘9’変化しているため、前
サイクルで出力されたa8 …a0 の9ビットはシフタ8
02で除去されて、残りのデータの上位9ビット、すな
わちb8 …b0 がシフタ802から出力され、LUT1
07の1番地に格納される。
【0117】以下、同様にLUTの2番地,3番地,…
へと9ビットデータが格納される。初期状態および各サ
イクルにおける、シフタ802の入力信号、シフト量、
5ビットレジスタ803の最上位ビットの値等を図21
に示す。
へと9ビットデータが格納される。初期状態および各サ
イクルにおける、シフタ802の入力信号、シフト量、
5ビットレジスタ803の最上位ビットの値等を図21
に示す。
【0118】なお、本発明は、LUTを用いたデータ変
換装置において、特にLUTへのデータの格納方法に関
するものであり、本発明は上記各実施例で説明した3次
元LUTに限られず、従来例で述べた1次元LUT等、
全てのLUTに適用され得るものであることは勿論であ
り、また、LUTに入力するデータのビット数が上記実
施例に示す9〜11ビットに限らないことは明らかであ
る。さらに、上記各実施例では3次元LUTと補間演算
部とからなるデータ変換装置について説明したが、本発
明は補間演算部の有無に左右されるものでは無く、広く
LUTを用いたデータ変換装置に適用されるものであ
る。
換装置において、特にLUTへのデータの格納方法に関
するものであり、本発明は上記各実施例で説明した3次
元LUTに限られず、従来例で述べた1次元LUT等、
全てのLUTに適用され得るものであることは勿論であ
り、また、LUTに入力するデータのビット数が上記実
施例に示す9〜11ビットに限らないことは明らかであ
る。さらに、上記各実施例では3次元LUTと補間演算
部とからなるデータ変換装置について説明したが、本発
明は補間演算部の有無に左右されるものでは無く、広く
LUTを用いたデータ変換装置に適用されるものであ
る。
【0119】
【発明の効果】以上説明したように、本発明によれば、
データ変換装置におけるルックアップテーブルのテーブ
ルデータを格納する際、ルックアップテーブルに格納す
るパッキングデータを入力すると、そのデータはレジス
タ等を有した保持手段によって保持され、そのデータの
一部または全部と新たに入力されたパッキングデータの
一部または全部が結合されることにより、ルックアップ
テーブルに格納すべきテーブルデータが生成される。こ
れにより、データ変換装置はパッキングされたデータを
そのままの状態で受付けて復元し、これを用いることが
可能となる。
データ変換装置におけるルックアップテーブルのテーブ
ルデータを格納する際、ルックアップテーブルに格納す
るパッキングデータを入力すると、そのデータはレジス
タ等を有した保持手段によって保持され、そのデータの
一部または全部と新たに入力されたパッキングデータの
一部または全部が結合されることにより、ルックアップ
テーブルに格納すべきテーブルデータが生成される。こ
れにより、データ変換装置はパッキングされたデータを
そのままの状態で受付けて復元し、これを用いることが
可能となる。
【0120】この結果、テーブルデータを記憶するため
の外部メモリの容量を必要最小限の量で済ますことがで
きると共にテーブルデータの転送等の処理を短縮するこ
とができる。
の外部メモリの容量を必要最小限の量で済ますことがで
きると共にテーブルデータの転送等の処理を短縮するこ
とができる。
【図1】3次元LUTと補間演算部とからなる従来の色
変換装置の構成を示すブロック図である。
変換装置の構成を示すブロック図である。
【図2】3次元LUTから出力される8個のデータの位
置関係を示す説明図である。
置関係を示す説明図である。
【図3】本発明の第1実施例に係る色変換装置の構成を
示すブロック図である。
示すブロック図である。
【図4】第1実施例における外部メモリ(ROM)の内
容を示す模式図である。
容を示す模式図である。
【図5】第1実施例においてLUTに格納される9ビッ
トデータの内容を示す模式図である。
トデータの内容を示す模式図である。
【図6】本発明の第2実施例に係る色変換装置の構成を
示すブロック図である。
示すブロック図である。
【図7】第2実施例における外部メモリ(ROM)の内
容を示す模式図である。
容を示す模式図である。
【図8】第2実施例においてLUTに先行して格納され
る8ビットデータを示す模式図である。
る8ビットデータを示す模式図である。
【図9】本発明の第3実施例に係る色変換装置の構成を
示すブロック図である。
示すブロック図である。
【図10】本発明の第4実施例に係る色変換装置の構成
を示すブロック図である。
を示すブロック図である。
【図11】本発明の第5実施例に係る色変換装置の構成
を示すブロック図である。
を示すブロック図である。
【図12】第5実施例における外部メモリ(ROM)の
内容を示す模式図である。
内容を示す模式図である。
【図13】図11におけるシフト量制御部504の構成
の一例を示すブロック図である。
の一例を示すブロック図である。
【図14】図13に示すシフト量制御部における主要部
の出力値の推移を示す説明図である。
の出力値の推移を示す説明図である。
【図15】図11に示す第5実施例における主要部の入
出力値の推移を示す説明図である。
出力値の推移を示す説明図である。
【図16】第5実施例を他へ応用(LUTのビット数を
9〜15の任意と)した時の各種パラメータを示す説明
図である。
9〜15の任意と)した時の各種パラメータを示す説明
図である。
【図17】本発明の第6実施例に係る色変換装置の構成
を示すブロック図である。
を示すブロック図である。
【図18】第6実施例における外部メモリ(ROM)の
内容を示す模式図である。
内容を示す模式図である。
【図19】第6実施例における主要部の入出力値の推移
を示す説明図である。
を示す説明図である。
【図20】本発明の第7実施例に係る色変換装置の構成
を示すブロック図である。
を示すブロック図である。
【図21】第7実施例における主要部の入出力値の推移
を示す説明図である。
を示す説明図である。
101 LUT用アドレス信号の入力端子 102 パッキングデータ入力端子 103 シフトレジスタ 104 カウンタ 107 LUT 109 変換データ出力端子 201 ‘000’検出ブロック 301,503,802 シフタ 401 アドレス変換器 302,402,502,607 セレクタ 501,605,801 レジスタ 504 シフト量制御部 601,804 加算器 602,606 比較器 604 減算器 701 3ビットカウンタ 803 5ビットレジスタ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G06T 5/00 H04N 1/46 8420−5L G06F 15/66 310 9191−5L 15/68 310 A 4226−5C H04N 1/46 Z 8125−5L G06F 15/62 310 A
Claims (8)
- 【請求項1】 ルックアップテーブルを用いてデータの
変換を行うデータ変換装置において、 前記ルックアップテーブルに書込まれるテーブルデータ
を当該データサイズと異なるサイズの複数のパッキング
データとして格納したメモリから当該データ変換装置に
入力する前記複数のパッキングデータの1つを一時的に
保持する保持手段と、 該保持手段に保持されるパッキングデータの全部または
一部を、当該データ変換装置に入力する前記複数のパッ
キングデータの他のデータに連結する連結手段と、 該連結手段によって連結されたデータを前記テーブルデ
ータとして前記ルックアップテーブルに格納する格納手
段と、 を具えたことを特徴とするデータ変換装置。 - 【請求項2】 前記保持手段は、1つまたは複数のシフ
トレジスタを有することを特徴とする請求項1に記載の
データ変換装置。 - 【請求項3】 複数の前記パッキングデータの1つをそ
のまま前記ルックアップテーブルに先行して格納し、当
該格納されたデータを読出して、前記シフトレジスタに
保持させることを特徴とする請求項2に記載のデータ変
換装置。 - 【請求項4】 前記複数のパッキングデータの1つを前
記ルックアップテーブルに先行して格納する際には、当
該ルックアップテーブルのアドレス信号をビットシフト
し、前記格納しない場合には、前記アドレス信号のビッ
トシフトを行わないことを特徴とする請求項3に記載の
データ変換装置。 - 【請求項5】 前記複数のパッキングデータの1つを前
記ルックアップテーブルに先行して格納する際には、当
該ルックアップテーブルの連続したアドレスに格納し、
当該格納されたデータを読出して前記シフトレジスタに
保持させる時の読出しアドレスを、当該ルックアップテ
ーブルの書込みアドレスから生成するアドレス変換手段
を有することを特徴とする請求項3に記載のデータ変換
装置。 - 【請求項6】 前記保持手段は、レジスタを有し、およ
び前記ルックアップテーブルに格納するための前記テー
ブルデータを、前記連結されたデータから選択するため
のシフタを有することを特徴とする請求項1に記載のデ
ータ変換装置。 - 【請求項7】 前記レジスタに保持されるデータが、前
記入力されたパッキングデータまたは前記シフタの出力
データであることを特徴とする請求項6に記載のデータ
変換装置。 - 【請求項8】 ルックアップテーブルを用いてデータの
変換を行うデータ変換装置において、前記ルックアップ
テーブルの数に格納すべきデータをパッキングして予め
別のメモリに蓄積しておくことを特徴とするデータ変換
装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5216030A JPH0774973A (ja) | 1993-08-31 | 1993-08-31 | データ変換装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5216030A JPH0774973A (ja) | 1993-08-31 | 1993-08-31 | データ変換装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0774973A true JPH0774973A (ja) | 1995-03-17 |
Family
ID=16682199
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5216030A Pending JPH0774973A (ja) | 1993-08-31 | 1993-08-31 | データ変換装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0774973A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1169141A (ja) * | 1997-08-25 | 1999-03-09 | Fuji Photo Film Co Ltd | 画像生成方法および装置 |
| JP2006178546A (ja) * | 2004-12-20 | 2006-07-06 | Canon Inc | データ処理装置 |
| JP2009141576A (ja) * | 2007-12-05 | 2009-06-25 | Ricoh Co Ltd | 画像処理装置、画像処理方法及びプログラム |
| US10302950B2 (en) | 2015-09-03 | 2019-05-28 | 3M Innovative Properties Company | Head-mounted display |
-
1993
- 1993-08-31 JP JP5216030A patent/JPH0774973A/ja active Pending
Cited By (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1169141A (ja) * | 1997-08-25 | 1999-03-09 | Fuji Photo Film Co Ltd | 画像生成方法および装置 |
| JP2006178546A (ja) * | 2004-12-20 | 2006-07-06 | Canon Inc | データ処理装置 |
| US8022957B2 (en) | 2004-12-20 | 2011-09-20 | Canon Kabushiki Kaisha | Apparatus and method for processing data |
| JP2009141576A (ja) * | 2007-12-05 | 2009-06-25 | Ricoh Co Ltd | 画像処理装置、画像処理方法及びプログラム |
| US8149460B2 (en) | 2007-12-05 | 2012-04-03 | Ricoh Company, Ltd. | Image processing apparatus, image processing method, and computer-readable encoding medium encoded with a computer program |
| US10338393B2 (en) | 2015-09-03 | 2019-07-02 | 3M Innovative Properties Company | Optical system and magnifying device |
| US10330930B2 (en) | 2015-09-03 | 2019-06-25 | 3M Innovative Properties Company | Optical system |
| US10338380B2 (en) | 2015-09-03 | 2019-07-02 | 3M Innovative Properties Company | Optical stack and optical system |
| US10302950B2 (en) | 2015-09-03 | 2019-05-28 | 3M Innovative Properties Company | Head-mounted display |
| US10444496B2 (en) | 2015-09-03 | 2019-10-15 | 3M Innovative Properties Company | Convex multilayer reflective polarizer |
| US10670867B2 (en) | 2015-09-03 | 2020-06-02 | 3M Innovative Properties Company | Optical stack and optical system |
| US10747003B2 (en) | 2015-09-03 | 2020-08-18 | 3M Innovative Properties Company | Optical system and head-mounted display |
| US10747002B2 (en) | 2015-09-03 | 2020-08-18 | 3M Innovative Properties Company | Optical system |
| US10754159B2 (en) | 2015-09-03 | 2020-08-25 | 3M Innovative Properties Company | Optical system |
| US10921594B2 (en) | 2015-09-03 | 2021-02-16 | 3M Innovative Properties Company | Method of making optical films and stacks |
| US11325330B2 (en) | 2015-09-03 | 2022-05-10 | 3M Innovative Properties Company | Optical system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2519000B2 (ja) | 画像表示装置及びその操作方法 | |
| US5719956A (en) | Image processing apparatus with separate color conversion for CMY signals and K signal | |
| JP2572373B2 (ja) | カラ−デイスプレイ装置 | |
| CN100409305C (zh) | 颜色转换装置与其方法 | |
| US7679619B2 (en) | Data outputting method, data outputting device, liquid crystal panel driving device, and liquid crystal display device | |
| US6967660B2 (en) | Image processing apparatus and image processing system | |
| JPH0243688A (ja) | 画像処理装置 | |
| US5272468A (en) | Image processing for computer color conversion | |
| JPH0774973A (ja) | データ変換装置 | |
| JP2004038693A (ja) | データ変換方法および画像処理装置 | |
| US6064367A (en) | Bit expander | |
| US5337409A (en) | Parallel/serial data conversion system | |
| US6744439B1 (en) | Reconfigurable color converter | |
| JP2003101806A (ja) | 画像処理装置および画像処理方法 | |
| JPH05211659A (ja) | ガンマ補正回路及び方法 | |
| US6933949B1 (en) | Method for interpolation of tristimulus color data | |
| JPH10173945A (ja) | データ変換装置およびデータ変換方法 | |
| JP2009010532A (ja) | 色変換処理装置及び色変換方法 | |
| JP3952804B2 (ja) | データ処理方法およびデータ処理装置 | |
| JP3320088B2 (ja) | 画像処理装置 | |
| JP3189873B2 (ja) | 色変換装置 | |
| JPS6334623A (ja) | ルツクアツプテ−ブル | |
| JPH01303488A (ja) | 表示制御装置、表示色数削減方法および回路 | |
| JPH06161409A (ja) | ルックアップテーブルメモリ書換え方法およびルックアップテーブルメモリを持つディスプレイ装置 | |
| JP2002135571A (ja) | 画像伸長装置 |