(57)【特許請求の範囲】
【請求項１】
第１の解像度で行および列に配列されるソース・ピクセルを含むソース画像を、第２の解像度で行および列に配列される２進ピクセルの宛先画像に変換するためのスケーリング・システムであって、それぞれのソース・ピクセルは、マルチ・ビットのグレー・レベル値を表しており、
少なくとも１行の前記ソース・ピクセルの一部と、少なくともＷ個のマトリックス・ピクセル値をそれぞれの行が有する複数の行のマトリックスと、前記宛先画像の或る行の初期ピクセル位置を特定するアンカー値と、を記憶するメモリ手段であって、該Ｗは１より大きい整数である、メモリ手段と、
Ｎ個のマルチ・ビット・グレー・レベルのソース・ピクセル値を記憶するスケーリング・レジスタ手段（２００、２１２、２０８）であって、Ｎは１より大きい整数であり、かつＷとは異なることのできる整数である、スケーリング・レジスタ手段と、
１行のＷ個のマトリックス・ピクセル値を記憶し、最大Ｎ個の該マトリックス・ピクセル値をパラレルに出力する閾値レジスタ手段（２２０、２２２）と、
前記メモリ手段および前記閾値レジスタ手段の間に連結され、前記メモリ手段からの前記１行のＷ個のマトリックス・ピクセル値を、前記閾値レジスタ手段に制御可能なように入力する調整論理手段（２１６，２１８）と、
前記調整論理手段に連結された制御手段であって、前記Ｗの値および前記Ｎの値に応じて、前記Ｗ個のマトリックス・ピクセル値を、前記閾値レジスタ手段のＮ個の連続した記憶位置に入力するよう前記調整論理手段を制御し、Ｗ＞Ｎである場合には、前回入力された（Ｗ−Ｎ）個のマトリックス・ピクセル値が出力された後で、該Ｗ個のマトリックス・ピクセル値の超過部分を、前記閾値レジスタ手段の連続した記憶位置に入力するよう前記調整論理手段を制御する制御手段と、
を備える、システム。
【請求項２】
前記スケーリング・レジスタ手段は、Ｎ個のマルチ・ビット・グレー・レベルの宛先画像ピクセルの位置と一致するようスケーリングされたＮ個のマルチ・ビット・グレー・レベルのソース・ピクセル値を記憶し、
前記閾値レジスタ手段および前記スケーリング・レジスタ手段に連結された比較手段（２０６）であって、前記Ｎ個のマルチ・ビット・グレー・レベルのソース・ピクセル値を、前記閾値レジスタ手段から出力された前記Ｎ個のマトリックス・ピクセル値の対応するものと比較し、該比較に従って、Ｎ個の２進値を前記宛先画像に割り当てる比較手段をさらに備える、請求項１に記載のシステム。
【請求項３】
前記メモリ手段は、さらに、前記宛先画像の或る行における初期ピクセル位置を特定するアンカー値を記憶し、
前記制御手段は、前記アンカー値を用いることにより、前記マトリックスの第１の行にある、第１のグレー・レベル閾値であるマトリックス・ピクセルを、前記メモリ手段から前記閾値レジスタ手段に出力させ、該マトリックス・ピクセルが、前記スケーリング・レジスタ手段における第１のソース・ピクセル値に位置合わせされるようにする、請求項２に記載のシステム。
【請求項４】
前記閾値レジスタ手段は、閾値パイプライン・レジスタ（２２０）および閾値レジスタ（２２２）を備えており、
前記調整論理手段は、前記メモリ手段と前記閾値パイプライン・レジスタの間に連結された第１の論理スイッチと、該閾値パイプライン・レジスタと前記閾値レジスタの間に連結された第２の論理スイッチを有しており、
前記閾値パイプライン・レジスタおよび前記閾値レジスタの両方は、Ｎ個の記憶位置を有しており、
前記制御手段は、サイクルごとに、第１のマトリックス・ピクセル値のうちのＮ個が、前記メモリ手段から、前記閾値パイプライン・レジスタに入力され、その後に前記閾値レジスタに入力されるように、モード制御信号を印加し、
前記制御手段は、さらなるクロック・サイクル中に、さらなる前記マトリックス・ピクセル値を、前記メモリ手段から前記閾値パイプライン・レジスタに入力されるようにし、Ｗ＞Ｎである場合には、前記メモリ手段からの前記第１のマトリックス値の超過部分が、前記閾値レジスタの連続した位置に入力されるように、モード制御信号を印加する、請求項２に記載のシステム。
【請求項５】
Ｗ＝Ｎである場合、第１のモード制御信号が前記制御手段により印加され、前記第１および第２の論理スイッチによって、前記Ｎ個のマトリックス・ピクセル値を前記閾値パイプライン・レジスタおよび前記閾値レジスタの両方に入力されるようにする、請求項４に記載のシステム。
【請求項６】
Ｗ＝Ｎ＋１である場合、第２のモード制御信号が前記制御手段により印加され、前記第１および第２の論理スイッチにより、（Ｎ＋１）番目のマトリックス・ピクセル値が、前記閾値パイプライン・レジスタから、前記閾値レジスタの高位側の記憶位置に入力されるようにし、Ｎ個のマトリックス・ピクセル値の次のセットは、前記閾値レジスタの低位側の記憶位置に入力されるようにする、請求項４に記載のシステム。
【請求項７】
前記閾値レジスタからの出力は、無効データを表すことがあり、前記制御手段は、該システムからの該無効データの出力を禁止する、請求項４に記載のシステム。
【請求項８】
前記制御手段は、２つの変数を用いて、前記出力を禁止する場合を判断し、第１の変数は、前記マトリックスの行の終わりに残留するマトリックス・ピクセルの数（＜Ｎ）に等しく、第２の変数は、前記調整論理手段に前記制御手段によって印加されうる切換状態値のうちの１つに等しく、
前記制御手段は、前記第１の変数および前記第２の変数の合計が、前記印加されうる切換状態値の数を超えた時、前記出力を禁止する、請求項７に記載のシステム。
【請求項９】
前記制御手段は、前記合計を用いて、次の切換状態を始める、請求項８に記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、第１の解像度の画像を第２の解像度の画像に変換する、特に、メモリ保護索引アレイの使用によって、受信された画像を宛先画像解像度にスケーリングするシステムに関連する。
【０００２】
【従来の技術】
カラー及びグレー・レベルの画像は、画素（ピクセル）から成り、各ピクセルは、カラーかグレーのどちらかのレベルを定義する複数のビットによって表される。二階調（黒白）プリンタ上で、そのような画像を表すために、データは、まだグレー・レベルでないならば、グレー・レベルのマルチ・ビット構成（例えば８ビット／ピクセル）に変換され、個々のグレー・レベル・ピクセルは、スケーリングとディザリング（dithering）処理を使用して二進レベル・ピクセルに変換される。
【０００３】
ピクセル画像毎のオリジナル・マルチ・ビット中のピクセルは、通常、二階調プリンタ解像度の解像度ではなく、プリンタ解像度に一致させるようにスケーリングをしなければならない。たとえば、多くの現代のプリンタが６００ドット／インチ（ｄｐｉ）解像度を表現できるが、コンピュータは、プリンタ解像度の１／６かそれ以下の解像度でデータを出力する。従って、二階調プリンタは、受信されたグレー・レベル・ピクセルがプリンタ解像度にスケーリングされるように要求される。それから結果として生ずるスケーリングされたグレー・レベル・ピクセルは、グレー・レベルを二階調データの最適なパターンに変換するように制御する閾値マトリックスと、比較される。この処理は、「ディザリング」と呼ばれる。
【０００４】
グレー・レベルを表すために８ビットが使われているとき、２５６個のグレー・レベルを、表わすことができる。閾値マトリックスが、グレー・レベル・ピクセル値を二進ピクセル値に変換するように制御する複数の行配列されたグレー・レベル値を有する。本質的に、閾値マトリックスの各エントリは、画像グレー・レベル・ピクセル値が大きいならば、グレー・レベル画像ピクセルを黒ピクセルに変換する閾値グレー・レベル値である。コントラストによって、画像グレー・レベル・ピクセル値が、対応する閾値マトリックス・グレー・レベル値以下であるならば、それは「白」ピクセルに変換される。
【０００５】
前述の処理は図１で示めされ、ソース・画像10が４×４マトリックスのグレー・レベル・ピクセル値から成っている。また、この例で、閾値マトリックス12は、４×４マトリックスのグレー・レベル閾値を含む。ソース画像10が２倍に拡大（スケーリング）されると仮定して、スケーリング処理は、スケーリングされた画像14の中で示された型式で、ソース画像10のオリジナル・グレー・レベル・ピクセル値の写しを作る。スケーリングすることがピクセル多重化手順によって達成され、スケーリングによって、ピクセルが空の空間を満たすために複写される。複線形スケーリングのような他の方法は、ソース・画像のオリジナル・グレー・レベル・ピクセル値の中で、グレー・レベル値を決めるために使用される。スケーリングによって空間が満されているとき、複線形スケーリングは、隣接したグレー・レベル・ピクセル値を考慮する。
【０００６】
次に、スケーリングされた画像14の全部にかぶせるように、閾値マトリックス12が、「タイル」のように張られる。タイル張りにされた閾値マトリックス12は、図１の16のように示される。次に、比較モジュール20の比較処理によって、スケーリングされた画像14は、宛先二階調データ画像18に変換される。スケーリングされた画像14の各々のグレー・レベル・ピクセルが、タイル張り閾値マトリックス16の対応する位置にあるグレー・レベル値に対して比較され、スケーリングされた画像グレー・レベル・ピクセル値が、タイル張り閾値マトリックスより大きいか、又はそれ以下かに応じて、１又は０ビットを出力し、比較モジュール20は、宛先二階調データ画像18の対応するピクセル領域にそれを記憶する。
【０００７】
図１の中で示される例において、上下左右対象に閾値マトリックス12が、タイル張りにされる。閾値マトリックスのどの部分から開始されるかは、閾値マトリックス「アンカ（anchor）」によって、ソース画像10とページの上で決められる。特に、アンカは、第２画像（即ち、閾値マトリックス）の指定されたポイントが置かれたある画像上のポイントを定義し、それによって、第１画像の既知の位置に第２画像をかぶせる。
【０００８】
図２は、ソース・グレー・レベル画像22を示す。図３は、１．５倍に拡大されたグレー・レベル画像22の拡大バージョン24を示す。図４において、グレー・レベル画像26は、０．７５倍に解像度が縮小されたことを示す。各場合において、従来技術は、水平入力索引アレイ（ＨＩＩＡ）と垂直入力索引アレイ（ＶＩＩＡ）の使用を通じて、そのようなスケーリングを達成した。これは、図５を参照することによって、より理解できる。図５において、ソース画像30が４×４マトリックスの１６ピクセルを含む。ソース画像30が、２．５倍の解像度でスケーリングされた画像32に変換される。従って、スケーリングされた画像32は、１０列のピクセルを含む。
【０００９】
スケーリング作用を達成するために、プロセッサは、スケーリングされた画像32の各列のために、マルチ・ビット値を含むＨＩＩＡ34を計算する。各々ＨＩＩＡ値は、ソース画像30へのオフセットを描写して、ＨＩＩＡ値に対応するピクセル位置でスケーリングされた画像32に挿入されるソース画像30からピクセルを識別する。各々ＨＩＩＡ値は、スケーリングされた画像32の対応する位置に正しいピクセルを挿入させるためのソース画像30に入るピクセルの数を示す。
【００１０】
同じ概念は、垂直方向でも使用される。スケーリングされた画像の行が完了されたあと、ＶＩＩＡ索引ビットは、行がスケーリング係数に対応して複写されるかどうかを決定する。特に、ＶＩＩＡ36は、ソース画像30の第１行に索引を付けられる最初の２つの行を示す。スケーリングされた画像32の第２の２つの行は、ソース画像30の第２行から得られる。２．５のスケーリング係数は、一部のピクセルを３によって、他のピクセルを２によってスケーリングして得ることができる。
【００１１】
図６は、典型的な複線形スケーリング・アルゴリズムを使用する画像のスケーリングに対するＨＩＩＡ及びＶＩＩＡのアプリケーションを図示する。値をソース画像40からコピーしている間、ピクセルが満たされている場合、複線形スケーリング・アルゴリズムは、隣接したピクセルを見ている。図６で示された例で、第１行目において、第２列ピクセル値（１５）は、ソース画像40の第１及び第２列ピクセルの平均結果である。ＨＩＩＡ42を検査することによって、ソース画像40の第１ピクセルがスケーリングされた画像44の第１ピクセルにコピーされていることが解る。ソース画像40の第２ピクセルは、スケーリングされた画像44の３番目のピクセルに移される。スケーリングされた画像44の第２ピクセルは、第１と３番目のピクセルの間に差し込まれた値である。図７において、縮小化例として、ソース画像46が、ＨＩＩＡ50及びＶＩＩＡ52の使用を通じてスケーリングされた画像48に縮小化されることを示している。
【００１２】
上記の従来技術のスケーリング手順の各々において、メモリの相当な量が、ＨＩＩＡとＶＩＩＡを記憶するために必要とされる。例えば、６００ｄｐｉプリンタの上の２１．６ｃｍ（８．５インチ）幅シートのペーパでは、ライン毎に、およそ４，８００ドットのエレメントが必要とされる。スケーリングされた画像の各列を正しくアドレスするために、全１６ビットが、ＨＩＩＡの各エレメントのために使用される。従って、ＨＩＩＡデータに対応するために、９．６キロバイトが必要となる。また、垂直方向の行のスケーリングを容易にするために、ＶＩＩＡが必要となる。６００ｄｐｉプリンタ上の１枚の２７．９ｃｍ（１１インチ）の長さのシート・ペーパのために、垂直次元に、およそ６，０００ドットが必要となる。また、１６ビットが、各ＶＩＩＡ行エレメントをアドレスするために使用される（全部で１２キロバイトを必要とする）。従って、全ページに対して、入力索引アレイを使用するために、合計２１．６キロバイトのメモリが必要となる。
【００１３】
スケーリングされるソース画像に対する閾値アレイ・マトリックスの調整とタイル張りに関して、従来技術の手順は、結果として生ずるタイル張りのような画像の中の各ピクセルの要求によって、コンピュータが使用する有効な時間を費やしている。それは、閾値マトリックスの各エレメントの索引を計算しなければならず、索引をつけられた特定のメモリ・エレメントを検索しなければならない。この結果、この手順は、コンピュータ処理の集中を招き、処理時間がかかるこことなる。従って、従来技術の画像変換手順では、ソフトウェア制御環境で画像を表現するのに時間がかかっている。そのような変換時間は、市場の要求を十分に満たすことができない。
【００１４】
【発明が解決しようとする課題】
従って、本発明の目的は、グレー・レベル・ソース画像を二進中間調宛先画像に変換するための高速システムを提供することである。
【００１５】
本発明の更なる目的は、グレー・レベル・ソース画像を二進中間調宛先画像に変換し、メモリ資源を保護するためのシステムを提供することである。
【００１６】
本発明の他の目的は、第１の解像度のグレー・レベル・ソース画像を第２の解像度の二進宛先画像に変換するためのシステムを提供することである。
【００１７】
本発明の他の目的は、グレー・レベル・ソース画像を二進中間調宛先画像に変換し、閾値マトリックスを、同期をとって高速に調整し、グレー・レベル宛先画像を並べてタイル張りにするシステムを提供することである。
【００１８】
【課題を解決するための手段】
システムは、第１の解像度で配列されたソース・ピクセルを含むソース画像を、二進であって、第２の解像度で配列される宛先画像ピクセルに変換する。このシステムは、少なくともソース・グレー・レベル・ピクセルの一部と、各々の行が少なくともＷ個のピクセル値を含むグレー・レベル・ピクセル値の複数の行の閾値マトリックスの対応している行を記憶するメモリ含む。スケーリング・レジスタが、Ｎ個のグレー・レベル宛先画像ピクセル領域を一致させるためにスケーリングされたＮ個のソース・グレー・レベル・ピクセル値を記憶する。同時に、閾値レジスタが、Ｗ個の閾値ピクセル値のＮ個まで出力する。調整ロジックは、閾値ピクセル値を閾値レジスタに入れる。コントローラは、調整ロジックを、閾値レジスタの中のＮ個の隣接するストレージ位置にＷ個の閾値ピクセル値を入れるために、稼働する。そして、ＮよりＷが大きいならば、コントローラは、（Ｗ−Ｎ）個の前に入れられた閾値ピクセル値が出力されたあと、閾値レジスタの中の隣接するストレージ位置にＷ個の閾値ピクセル値を越えた分を入れることができるようにする。比較器は、Ｎ個のソース・ピクセル値をＮ個の閾値ピクセル値の対応するものと比較して、その比較に応じて、Ｎ個の二進値を宛先画像に割り当てる。
【００１９】
【発明の実施の形態】
図８において、システム60は、第１解像度で複数のグレー・レベル・ピクセル値を含んでいるソース画像を、第２解像度で二進ピクセル宛先画像に、変換する。システム60は、パーソナル・コンピュータ、プリンタ、パーソナル・コンピュータとプリンタの組合せ、又はグレー・レベル・ピクセル・データを異なる解像度の二進ピクセル・データに変換する他の組合せの装置に含まれる。
【００２０】
システム60は、関連ダイナミックＲＡＭ（ＤＲＡＭ）64を有するプロセッサ62を含む。プロセッサ62は、外部ソースからのグレー・レベル・ソース画像66を受信するか、又は内部アプリケーションの処理の結果、グレー・レベル・ソース画像66を生成する。ソース画像66を二進宛先画像に変換するために、制御パラメータが必要となる。スケーリング係数68は、宛先画像ピクセルにソース画像ピクセルの比率を定義する。大部分のプリンタ・アプリケーションにおいて、宛先画像は、ソース画像66より本質的にハイ・レベル解像度である。従って、スケーリング係数68は、ソース画像ピクセルに対して複数の宛先ピクセルがあるのを意味する、２と１０の間の値（例えば６．５）を、一般的に示す。
【００２１】
更に上述したように、制御パラメーターは、位置的に対応する、スケーリングされるソース画像ピクセルを宛先画像の中で白か黒の何れかのドットに変換するように各々命令する閾値グレー・レベル・ピクセル値の複数の行を含む閾値マトリックス70を有する。閾値マトリックス70の構造は、宛先画像の二進データが宛先画像の解像度になるように画像グレー・レベル表示を提供することを保証するようなものである。色々な閾値マトリックス70が従来技術で知られており、これ以上の記述は必要ない。
【００２２】
更に、ＤＲＡＭ64は、スケーリングされるソース画像を「タイル張り」にする前に最初に位置決めをされる閾値マトリックスを、スケーリングされるソース画像の中で定義する閾値マトリックス・アンカを含む。閾値マトリックス・アンカ72は、一般にスケーリングされるソース画像のコーナー・ピクセル値を定義する。画像アンカ74は、二進ピクセル宛先画像にスケーリングされ変換される個々の部分を、ソース画像の中で定義する。
【００２３】
ＤＲＡＭ64は、以下に示す構造のＲＩＩＡ（水平）76を記憶する。ＲＩＩＡ76は、画像宛先の各々の列のための１ビットを含む二進値索引ビットのアレイである。ＲＩＩＡ76は、プロセッサ62によってスケーリング係数68に従って計算される。手短に言えば、ＲＩＩＡ76は、ソース画像ピクセルを宛先画像の解像度にスケーリングするために使用される。従って、スケーリング係数68が６であるならば、各ソース・ピクセルに対して６つの宛先ピクセルが存在する。各々のＲＩＩＡ索引ビットは、対応する宛先ピクセルが現在のソース・ピクセルか次のピクセルのためのものであるかを定義する。この方法によって、宛先画像の列毎の単一ビットは、最小限の索引ビットの使用で、ソース画像を宛先画像解像度に完全にスケーリングすることができる。
【００２４】
同様のことが、ＲＩＩＡ（垂直）78によって実行されるが、ＲＩＩＡ78は、宛先画像データの次の行と同一か又は相違するかを決めるために利用される。索引ビット値から決定し得る関係を基にソース・ピクセル値を決めることができるように、ＲＩＩＡ（水平）76及びＲＩＩＡ（垂直）78の両方が、「関連」入力索引アレイとなる。
【００２５】
以下の記述で明白になるように、ソース画像64の宛先画像への変換は、特定用途向けＩＣ（ＡＳＩＣ）80内に含まれる回路によって、同時に達成され、急速に普及している。ＡＳＩＣ80は、データ・バス82とバス・インターフェース84を通してプロセッサ62とＤＲＡＭ64の両方と通信する。静的ランダム・アクセス・メモリ（ＳＲＡＭ）86が、ＡＳＩＣ80上にあり、ソース画像ピクセルの行の少なくとも一部を記憶する分割された領域88、90、92、94と、閾値マトリックスと、特定のソース画像のためのＲＩＩＡ（水平）と、画像変換機能から生じる宛先画像二進データと、を含む。
【００２６】
スケール・ディザ・モジュール96は、ソース画像ピクセルを宛先画像ピクセル解像度にスケーリングし、二進データへの変換を可能にするために、スケーリングされるソース画像ピクセルを対応する位置の閾値マトリックス・ピクセルと連続的に同期して比較する状態マシーン98を含む。ＳＲＡＭ86とスケール・ディザ・モジュール96のオペレーションは、コントローラ100に制御される。適切なソース画像データと、閾値マトリックス・データと、ＲＩＩＡ索引ビットとが、状態マシーン98内にあるレジスタにロードされたとき、クロック信号は、コントローラ100、及びスケール・ディザ・モジュール96と状態マシーン98に、同期して発生する。ＳＲＡＭ86、状態マシーン98、及びバス・インターフェース84の組合せにおけるコントローラ100の動作は、以下の説明によって理解することができる。
【００２７】
図９は、本発明によって使われるいろいろなデータ・ソースの相互作用を示している論理フローチャートである。更に、図９は、本発明のオペレーションを制御するために状態マシーン98によって使用される複数のポインタを示す図である。ＳＲＡＭ86（図８）は、ソース・データ88、閾値マトリックス90、水平スケーリング情報92（ＲＩＩＡ）、及び宛先二階調データ94を記憶する。各ソース画像ピクセルがスケーリング論理モジュール102でスケーリングされるように、ソース・ポインタは、ソース画像ピクセルからソース画像ピクセルまで増加する。本発明の実施例において、グレー・レベル・ソース・ピクセル・データの４バイト（３２ビット）は、スケーリング論理102に供給され、同時に、４つの索引ビットが水平スケーリング情報92から供給される。スケーリング・スタート・ポインタは、スケーリング論理102に供給されたスケーリング情報の次のサブセットを示す。
【００２８】
図１０において、フローチャートは、ＳＲＡＭアクセスの手順を示す。「サイクル（周期）」によって示された各々のステップは、マシン・サイクルがタスクを達成するために使用されなければならないことを示す。一方、タスクは手順の実行に影響を及ぼすことなく達成される。サイクルが実行されるとき、ＳＲＡＭの中の領域を示すポインタは、増加する。
【００２９】
最初に、閾値データのアクセスが実行される（ステップ150）。ある種の状況（以下で記述される）の下では、出力タイル張り閾値は、無効で、無視される。ステップ152で、閾値データが有効であるならば、手順は下に続く。次に、追加ソース・データが必要ならば（ステップ154）、スケーリング論理102による使用のためにＳＲＡＭからのソース・データのアクセスが実行される（ステップ156）。それから、閾値データとスケーリング・ソース・データの比較が実行され、結果として生ずる二進宛先ピクセル値がラッチされる（ステップ158）。宛先ピクセルのニブル計数（nibble count）は、維持され、４つの宛先ピクセルがラッチされるたびに、増加する（ステップ160）。ニブル計数が８に等しくないならば、３２個の宛先ピクセル値がまだラッチされなかったことを示し、手順が繰り返される（ステップ162）。一方、ラッチされた二階調宛先ピクセル・データが、ＳＲＡＭに記憶され（ステップ164）、追加ＲＩＩＡデータが、ＳＲＡＭから読み出され（ステップ166）、ニブル計数が、クリアされ（ステップ168）、そして、手順が繰り返される。
【００３０】
図９に戻って、スケーリング論理102内で、受け取られた索引ビットが、個々のソース画像ピクセルをスケーリング論理102からの４バイト出力の一つで切換えることを制御する。それらの出力は、比較ラッチ二階調データ・モジュール104に供給される。スケーリング・オペレーションが、一般に、ソース画像データから宛先画像データまでの解像度の相当な増加（例えば、６倍以上）を必要とするので、ピクセル多重化が使用されていると仮定して、各ソース・ピクセルは、しばしば、索引ビットの制御の下、６回以上の複写が行われる。更に、図１１の記載から理解できるように、行単位上のソース画像ピクセル・データの重複化は、ＳＲＡＭ86への多くのアクセスを排除することができる。
【００３１】
同時に、上述のスケーリング・オペレーションにおいて、行スタート・ポインタと、現在の領域ポインタと、行エンド・ポインタとの制御の下、閾値マトリックス・データ90は、閾値タイル張り論理モジュール106に与えられる。そこで、閾値マトリックスは、宛先画像解像度アンカ・ポイントに合わせられ、そして、閾値ピクセル値に対応した位置に置かれるタイル張り閾値マトリックスを生じるために、最後の宛先画像の各々のピクセル位置が複写される。同様に、スケーリング論理102の出力は、宛先画像の中の各ピクセル領域に対して１つのソース画像ピクセルがあるように宛先画像解像度を表す。
【００３２】
スケーリングされるソース画像ピクセルと対応する位置のタイル張り閾値マトリックス画像ピクセル値の各々は、比較ラッチ二階調データ・モジュール104の中で比較される。ソース・ピクセル値が対応する閾値マトリックス・ピクセル値より大きいか、それ以下かに依存して、出力二進ビットがソース・ピクセル値の代わりに提供される。それらの二進ビットは、宛先二階調データ記憶域94に与えられる。二階調ポインタは、ＳＲＡＭ制御モジュール100がＳＲＡＭ86内で宛先二進ビットを正しい宛先画像ピクセル位置に入れることができるようにする。
【００３３】
図９は、本発明が原則として本質的に並列に独立してスケーリングと閾値タイル張りを実行することを示す図である。適当なデータが関連入力レジスタにロードされるならば、そのような両方の機能が、発生したクロック信号の制御の下で同期して実行される。さらに、宛先画像の各々の行が処理されるならば、ＲＩＩＡ（垂直）は、ソース画像のスケーリング係数が与えられ、次の行の対応するソース・ピクセルが以前の行の対応するピクセルに同一であるか否かを示すために使用される。そして、６以上のスケーリング係数が使われていていると仮定するならば、平均して、少くとも５つの後続する行が同一であり、ピクセル多重化プロトコルに使用される。
【００３４】
画像変換機能を達成するために要求されるサイクルを減少するために（図１１参照）、画像は、処理のために複数の垂直帯に区分化される。これは、垂直方向のスケーリング係数は、ソース・データが各々の次の行のためにアクセスされる必要が無く、連続した行のために使用されることができ、従って、関連メモリ・アクセス・サイクルが回避できるという、特徴を示すものである。
【００３５】
図８を参照して、ＳＲＡＭ86は、（費用を理由に）単一ポートＲＡＭが好まれる。本発明は、いろいろな論理モジュールによってＳＲＡＭ86にアクセス割込みを行い（図９参照）、ＳＲＡＭ86がクロック・サイクル毎に正しい領域に単一アドレスでポイントできるようにしている。本発明が処理データである場合は、ＳＲＡＭ86は、各クロック・サイクルでアクティブとなる。
【００３６】
画像がラスタライズされるタイミングで、ＳＲＡＭ86は、分割される。ＳＲＡＭ86の中に４つの可変サイズ・オブジェクト、即ち、閾値アレイ（画像から画像まで変化する場合がある）、ＲＩＩＡ、ソース・ピクセル・データ、及び宛先二階調データ、がある。単一ＳＲＡＭ86の使用を通じて、コントローラ100が、その区分化を成し遂げ、スケーリング係数と一定の閾値マトリックスが与えられ、その記憶容量の最も効果的な使用を成し遂げる。従って、図１２に示されるように、スモール・スケーリング係数があるならば、コントローラ100は、宛先二階調データ（二階調データがピクセル毎に１ビットを含むのに対して、ソース画像データはピクセル毎に８ビットを含む）より本質的に多くのメモリ空間をソース画像データに対して割り当てる。コントラストによって、ラージ・スケーリング係数が使われているならば（図１３参照）、本質的に、ＳＲＡＭ86のより大きい領域が、ＲＩＩＡビットのストレージと二階調データのために割り当てられる。
【００３７】
本発明の特定の実施例を記述する前に、関連入力索引アレイ（ＲＩＩＡ）を説明する。ＲＩＩＡは、ソース画像グレー・レベル・データを宛先画像データの解像度にスケーリングすることを可能にする非常に効率的なデータ・アレイである。ＲＩＩＡフォーマットは、図１４に示されており、４バイト・ヘッダ・フィールド120と、ソース画像を宛先画像の解像度にスケーリングするために各スケーリング機能で使用されるソース画像ピクセルを定義する可変長入力索引フィールド122を含む。６００ｄｐｉプリンタのために、水平ＲＩＩＡの入力索引量122は、６００ｄｐｉ×８インチ（２０．３ｃｍ）＝４，８００ビット又は６００バイトである。
【００３８】
ヘッダ120は、縮小化機能の中で使用される次のソース・ピクセルのサーチ毎に成長するソース・ピクセルの最小数を指定する８ビットＤＳ索引フィールド124を含む。不変又は拡大機能において、このフィールドは、「O」である。ｓｒｃスキップ・フィールド126は、スケーリングされるソース画像の第１ピクセルを見つけることを省略するためのピクセルの数を示す１６ビットである。
【００３９】
入力索引122は、宛先画像の単一ビット／列を含む。それは、スケーリングする際に使用され、宛先ビットマップの中で使用されていた現在のソース・ピクセルをポイントするソース・ピクセル・ポインタと関連する。ソース・ピクセル・ポインタが、ｓｒｃスキップによって指定されたピクセルに初期化される。即ち、第１ピクセルは、スケーリングの間、装置によって考慮される。
【００４０】
入力索引の２つの一般的な形式がある。
【００４１】
不変又は拡大の場合：
そのような場合において、ＤＳ索引フィールド124は、０の値を含む。入力索引122のビット位置の中の「O」は、ソース・ピクセル・ポインタによって示されたピクセルが宛先画像の中で使用されることを示す。入力索引122のビット位置の中の「１」は、（ソース・ピクセル・ポインタ＋１）によって示されたピクセルが宛先画像の中で使用され、ソース・ピクセル・ポインタが続いて増加することを示す。
【００４２】
縮小化の場合：
この場合が、ＤＳ索引フィールド124が１〜２５５の間の値を含む場合を指定する。入力索引122の第１ビットの値に関係なく第１ソース・ピクセルは、第１宛先ピクセルとして使用される。アレイの中の次のエントリのために、「O」値は、対応している宛先ピクセルが（ソース・ピクセル・ポインタ＋ＤＳ索引）によってポイントされたソース・ピクセルであることを示す。「１」は、対応している宛先ピクセルが（ソース・ピクセル・ポインタ＋ＤＳ索引＋１）によってポイントされたソース・ピクセルであることを示す。各々の場合において、ソース・ピクセル・ポインタは、使用される新しいソース・ピクセルに更新される。
【００４３】
ＲＩＩＡ（垂直）は同じ方法で機能するが、列ピクセルの代わりに、行がスケーリングされる。
【００４４】
上述の特定のビット及びバイトの長さが一実施例であり他のデータ長によって代用されることは、当業者にとって明白なことである。しかしながら、入力索引122は、常に、宛先画像行データの列毎に１ビットの位置しか持たない。
【００４５】
図１５において、ＲＩＩＡ（水平）の使用の例を示す。ソース画像データが拡大されると仮定して、ＤＳ索引124の値は０であり、宛先の中で使用するための次のソース・ピクセルを見つける毎に成長するソース・ピクセルの数は０であり、従って、ｓｒｃスキップ＝０である。そして、宛先画像を構築して使用される第１ソース・ピクセルは、第１ソース・ピクセルであり、何も省かれていない。
【００４６】
最初の４つのソース・ピクセルが２３５、１４２、２２８及び２５０のグレー・レベルと等しい各々８ビットの値であると仮定して、ソース画像の中のそれらの位置が、図１５の130で示される。ＲＩＩＡ132内で、宛先画像134中にあらゆるバイトのための入力索引ビットがある。上述の規則を以下に示すと、ＲＩＩＡ索引ビットが「０」であるならば、「現在の」ソース・ピクセルは、宛先画像に入れられ、そのソース・ピクセルは、現在のソース・ピクセルのままである。ＲＩＩＡ索引ビットが「１」であるならば、「次の」ソース・ピクセルが、宛先画像に入れられ、次のピクセルは、「現在の」ピクセルになる。図１５において、ＲＩＩＡ132の中の最初の０は、２３５のソース・ピクセル値が最初の宛先ピクセル・データ位置に入れられることを示している。前述の規則を以下に示すと、現在のソース・ピクセルの位置が増加されなかったように、ＲＩＩＡ132の中の２番目の「０」は、宛先データ134に値２３５を置く。ＲＩＩＡ132の中の次の「１」値は、ソース画像ピクセルに対するポインタが１によって増加させられ、次の利用可能な宛先画像ピクセル位置にポイントされるピクセル値となることを示す。
【００４７】
縮小化オペレーションは、上述された拡大化手順から明白なものである。
【００４８】
本発明のさらに詳細な実施例を、図１６の中で示し、以下において、処理時間当たり８ビット／ピクセル・データで４ピクセルの場合を考える。図示された位相は、いくつかのパラレル・ピクセルの数でデータ・ピクセル長を操作するためにスケーリングされる。
【００４９】
図１６において、コントローラ100（図８）によって、４つの８ビット・ソース・ピクセルが画像ソース・レジスタ200に挿入される。同様に、コントローラ100によって、複数のＲＩＩＡ（水平）索引ビットがＲＩＩレジスタ202に挿入される。また、ＳＲＡＭ86内の閾値マトリックスからの行が、閾値ステージング・レジスタ204に挿入される。システム内の次の処理の間、全ての出力データが次のクロック・サイクル上で有効であると保証する時に、コントローラ100は、レジスタ200、202へ及びＳＲＡＭからデータの書込みを達成する。この機能は、全システムが順に発生したクロック・パルスに従って同期して稼働することを保証する。従って、ソース・ピクセルの宛先解像度へのスケーリング及び閾値マトリックス・ピクセル値の調整とタイル張りは、同時に、発生したクロック信号でのロック・ステップの中で起こる。更に、閾値マトリックス・ピクセル値が比較器206に適用されるとき、スケーリングされた画像ソース・レジスタ208からのスケーリングされるソース画像ピクセルが存在し有効であることが、保証される。
【００５０】
スケーリング及び閾値調整の機能が平行して稼働する間、図１６のオペレーションが、最初にソース画像ピクセルのスケーリングを、次に、閾値マトリックス・ピクセル値の調整とタイル張りを示している。
【００５１】
コントローラ100が画像変換処理を開始するならば、ＲＩＩレジスタ202に発生した各々のクロック信号によって、索引ビット値（４つのグループの中の）がマルチプレクサ210に出力される。マルチプレクサ210に入力される「選択」によって、スケーリング・スイッチ論理212の中の対応する列位置に４つの索引ビットが結合される。同時に、画像ソース・レジスタ200からの４つのソース・ピクセルが、スケーリング・スイッチ論理212に記録される。上述の規則に従って、適用された索引ビットによって、ソース・ピクセルのそれぞれが複数の出力ライン214に発生し、スケーリング画像ソース・レジスタ208に入力される。
【００５２】
画像ソース・レジスタ200の中のソース・バイトが不足した場合、ＳＲＡＭアクセスが要求される。画像ソース・レジスタ200の中に残っている残余ソース・ピクセル値が、ＲＩＩＡ索引ビットに応じてスケーリング画像ソース・レジスタ208にロードされる。次のサイクルで、追加ソース・ピクセルは、アクセスされ、画像ソース・レジスタ200にロードされる。
【００５３】
６以上のスケーリング係数が使われており、ピクセル多重化がスケーリングの方法であると仮定するならば、一つの８ビット・ソース・ピクセルが、各々の出力ライン214上で複写され、同様に、スケーリング画像ソース・レジスタ208の４つのレジスタ位置の各々に入れられる。次のクロック信号によって、それらのソース・ピクセル値の各々が比較器206に出力される。
【００５４】
上記のスケーリング作用と同時に、閾値マトリックス調整とタイル張りが起こる。閾値マトリックスの各行の中の閾値マトリックス・ピクセル値の数が、レジスタ208の中のスケーリングされる画像ソース・ピクセルの数に等しいならば、調整機能は簡単なものとなる。調整は、一対の閾値調整スイッチ216と218に「モード」信号を適用することによって達成される。しかしながら、閾値マトリックスの行の中の閾値マトリックス・ピクセル値の数がスケーリングされるソース画像ピクセルの数に等しいとき、閾値調整スイッチ216と218は、閾値マトリックス・ピクセル値が閾値パイプライン・レジスタ220を通じて流れ、ピクセル位置に対応する閾値レジスタ222の中に置かれるように処理される。
【００５５】
閾値マトリックスの行の中の閾値マトリックス・ピクセル値の数（即ち、＝Ｗ）が、スケーリング画像ソース・レジスタ208からのスケーリングされる画像ソース・ピクセルの数（即ち、Ｎ）と同じものでない場合、調整の問題は、より複雑である。そのような状況のでは、２つの連続する閾値マトリックス・ピクセル行入力からのエレメントが、スケーリングされるソース画像ピクセル値で閾値マトリックス行値の有効な調整を達成するのに使用されなければならない。これが、閾値レジスタ222に加えて閾値パイプライン・レジスタ220を含める理由である。各々の閾値調整スイッチ216と218は、多重型式の中で、スケーリングされる画像ソース値で閾値マトリックス・ピクセル値を調整するために、閾値マトリックス・ピクセル値を一定の方向に向けるように稼働する。閾値調整スイッチ216からの出力が閾値パイプライン・レジスタ220に供給されるだけでなく、直接、閾値調整スイッチ218に供給され、閾値パイプライン・レジスタ220を迂回することに留意されたい。
【００５６】
閾値調整スイッチ216と218の各々が、前述のように、コントローラ100からのモード入力によって、制御される。図１７〜２０の中で示されるように、コントローラ100は、閾値マトリックス行の幅Ｗとレジスタ208からスケーリングされた画像ソース・データまでの関係に従って、Ｎ個の別個のモード信号を発生する。従って、図１７の中で示されるように、ＷがＮ（Ｎはレジスタ208の中のスケーリングされた画像ソース・データのピクセルの数である）と等しいとき、モード０が使用される。図１８、１９、及び２０で示されるように、他のモードの各々は、パイプライン型式で、ＳＲＡＭからＷとＮの差分を考慮に入れた修正調整の中の閾値レジスタ222へ読み出された閾値ピクセル値の切換えを可能にする。
【００５７】
いろいろなモード入力に対応して閾値調整スイッチ216と218の各々の中で起こる切換えは、図２１を参照すると容易に理解することができる。閾値マトリックスが幅Ｗ＝５を持つと仮定すると、それは最少の効率であり、システムが処理できる「最悪の場合」の状況である。それぞれの閾値ピクセル値（Ｗの閾値幅を含む）を、バイトＡ、Ｂ、Ｃ、Ｄ及びＥとしてこの後参照する。図２１に、閾値レジスタ222への調整と挿入の後の閾値ピクセル値の連続したバイトを示す。その後、それぞれの閾値ピクセル値は、比較器206の中でレジスタ208からのスケーリングされるソース画像ピクセルで比較される。
【００５８】
図２１は、閾値ステージング・レジスタ204、閾値パイプライン・レジスタ220、及び閾値レジスタ222の内容をクロック毎に示している。クロック・サイクル１と２の間で、コントローラ100は、閾値調整スイッチ216と218にモード＝０を適用する。この結果、閾値マトリックス・ピクセル値のストレート・スルー・パイプライン化が、ＳＲＡＭから閾値レジスタ220に起こる。
【００５９】
閾値行のエンドのみが、ターゲットとなるモード変更であり、この場合、コントローラ100は、モード＝０からモード＝３へ移行する。そのような状況（クロック・サイクル３）の下に、閾値パイプライン・レジスタ210の中の各々のレジスタ位置が、閾値ピクセル・バイトＤの値を受信し、Ａ、Ｂ及びＣの閾値ピクセル・バイトが、直接、閾値レジスタ222の中の３つの低位のバイト位置へ入力される。直前のクロック・サイクルから、閾値ピクセル・バイトＥは、最も高位のバイト位置に常駐する。従って、後続するクロック・サイクルが起こるとき、閾値ピクセル値Ｅ、Ａ、Ｂ及びＣは、比較器206に書き込まれる。クロック・サイクル４の間、バイトＤが、パイプライン閾値レジスタ220からパイプライン・レジスタ222に入れられ、そして、バイトＥ、Ａ及びＢは、直接ＳＲＡＭ204からロードされる。図示されるように、オペレーションは、クロック・サイクル５〜８の間、モード２と１を実行し、繰り返す。
【００６０】
閾値マトリックスが宛先画像解像度と一致するためにタイル張りであるとき、エンド・バイトにオフセットがある（各々の閾値行が宛先画像の整数サブ並列でないならば）ことに留意する。そのような場合、ＳＲＡＭの中の行エンドでの閾値マトリックス・バイト値は、閾値マトリックス行と宛先画像の両方の同時に起こる終了を保証するために「満たされる」。例えば、クロック・サイクル４の間、バイトＡとＢは、パイプライン・レジスタ222に入れられるワードを満たすために使用される。
【００６１】
個別の欠落のため、閾値ピクセル値は閾値ピクセル行の最後の（５番目の）バイトを含んでいる４バイトと関連し、結果的にストリーム（即ち、閾値レジスタ222の内容）の欠陥が起こる。たとえば、クロック・サイクル４の終わりで、Ｃのバイトは、閾値パイプライン・レジスタ220内で全ての位置を占める。クロック・サイクル５の間にパイプライン・レジスタ222から生ずる有効ワード（４バイト）において、２つの高位バイトがＣとＤであるが、パイプライン・レジスタ222へロードするための閾値パイプライン・レジスタ220の中にＤの値はない。この結果、パイプライン・レジスタ222にロードされたワードは、無効となる。無効なワードが比較器206に送り出されるとき、無効な二階調データが結果として得られる。しかしながら、コントローラ100が、二階調レジスタ230への二階調出力データのラッチングを禁止し、更に、スケーリングされた画像ソース・レジスタ208への新しいスケーリングされるソース・ピクセルの挿入を禁止する。次の有効ワードが閾値レジスタ222から生ずるとき、比較手順が再び始まる。
【００６２】
再び、Ｗが５である閾値マトリックスが最少の効率の場合であり、他のクロック毎にモード信号が変わる。８つのクロック・サイクルの中の３つは、無効データをもたらす。Ｗの他の値のために、モード信号が変わらなく、有効閾値マトリックス４バイト・グループがクロック・サイクル毎に閾値レジスタ222から及びそれより長い閾値行から現れるとき、モード信号としての効率が、行境界上のみでよりよいものに変わる。大部分の共通の閾値マトリックスが１６×１６であり、そのマトリックスを使用し、そして、Ｗが４の倍数である他のマトリックスが、一定のモード信号オペレーションを引き起こす。
【００６３】
図１６を参照して、比較器206が、対応するバイトのそれぞれのグレー・レベル値を比較することによって、閾値レジスタ222とスケーリングされた画像ソース・レジスタ208からの出力に対応する。閾値レジスタ・ピクセル値よりスケーリングされた画像ソース・ピクセル値が大きいならば、１ビットがそれぞれの比較器から生ずる。他の状況では、０ビットは、それぞれの比較器から生じ、３２ビット二階調レジスタ230へ入力される。３２ビット二階調レジスタ230がフルであるとき、その内容が、記憶されるためにＳＲＡＭ86に書かれる。
【００６４】
システムは、ＷとＮが２つの変数を使うことによってお互いに同じもの又は正確な倍数でないときに生成される無効なワードを、処理する。最初の変数は、上で論じられた「モード」であって、閾値ピクセル・データが閾値パイプライン・レジスタ220と閾値レジスタ222に切り換えられる方法を決める。２番目の変数が、「モード・デルタ」と呼ばれており、閾値行が終了し、閾値ピクセル・データの次の行が開始されたとき、「モード」変数を変更するための方法を示す。モード・デルタは、閾値行の最後のバイトが処理された後、「残っている」ワードのバイト数と同じにセットされる。モード・デルタ変数は、閾値行が「再開される」毎に適用される。
【００６５】
前述の変数によって、閾値マトリックスが使われ、Ｎ個の無効なバイトが閾値レジスタ222にあることを決定する。ここで、ＷとＮは等しくない。そのモードとモード・デルタ変数だけを使用して、無効なワードが図１６の中で示された論理からいつ生成されるかを知ることができる。
【００６６】
上述のように、モード・デルタは、閾値行に残った閾値ピクセルの数に等しい。モードの最大値は、Ｎ−１である。モード・デルタが閾値行のエンドでモードに追加され、そして、結果がＮ−１を越えるとき、閾値レジスタ222の中に常駐する最初のワード（例えば４バイト）は、新しい閾値マトリックス行の開始で、無効となる。上述の実施例において、４つのモードの値（即ち、０〜３）があり、モードの最大値が３（即ち、４−１＝３）である。モードとモード・デルタの合計（モジュロＮ）は、次のモード値を決める。例えば、モード・デルタが２で、モードが３であるならば、その合計は１（モジュロ４）であり、モード１が次に適用される制御状態である。モード・デルタ値（即ち、＝３）が現在のモード値に追加され、合計が３の値を越えるとき、閾値レジスタ222から出るワード（４バイト）は無効である。
【００６７】
閾値行の再開始の場合、モードの値が０で、３のモード・デルタが０に追加されるならば、３の最大値を越えない。従って、モード３の場合に生成された最初のワードは有効である。しかしながら、モード・デルタ値が再びそれに追加されるとき、６という最大値を越える結果となるので、最初のワードは無効である。モード値はモジュロ４の機能の結果であるので、２になる。閾値行の初めでラップ（wrap）が生じるたびに、この処理が再び行われる。
【００６８】
以下に、本発明の実施態様の例を示す。
【００６９】
（１）行列の第１の解像度で配列され、各々がマルチ・ビット・グレー・レベル値を明示するソース・ピクセルを含むソース画像を、行列の第２の解像度で配列された二進ピクセルの宛先画像に変換するシステムにおいて、少なくとも前記ソース・ピクセルの行の一部と、マトリックス・ピクセル値の複数の行であって各々が１より大きい整数であるＷ個のマトリックス・ピクセル値を持つ前記行を有するマトリックスと、前記宛先画像の行の初期ピクセル領域を識別するアンカとを記憶するメモリ手段と、１より大きくＷとは異なる整数であるＮ個のソース・マルチ・ビットグレー・レベル・ピクセル値を記憶するスケーリング・レジスタ手段と、Ｗ個のマトリックス・ピクセル値の行を記憶し、同時に、Ｎ個の前記マトリックス・ピクセル値上に出力する閾値レジスタ手段と、前記メモリ手段と前記閾値レジスタ手段との間に接続され、前記Ｗ個のマトリックス・ピクセル値の行を前記メモリ手段から前記閾値レジスタ手段へ入力する調整論理手段と、前記調整論理手段に接続され、前記ＷとＮとの値に応じて、前記調整論理手段が前記Ｗ個のマトリックス・ピクセル値を前記閾値レジスタ手段のＮ個の隣接する記憶位置に入力するように制御し、もしＷ＞Ｎならば、（Ｗ−Ｎ）個の前に入力されたマトリックス・ピクセル値を出力した後に、前記閾値レジスタ手段の隣接する記憶位置に前記Ｗ個のマトリックス・ピクセル値の後続を入力する制御手段と、を有する前記システム。
【００７０】
（２）前記スケーリング・レジスタ手段が、Ｎ個のマルチ・ビット・グレー・レベル宛先画像ピクセル位置に一致させるためにスケーリングされるＮ個のソース・マルチ・ビット・グレー・レベル・ピクセル値を記憶し、更に、前記システムが、前記閾値レジスタ手段と前記スケーリング・レジスタ手段とに接続され、前記Ｎ個のソース・マルチ・ビット・グレー・レベル・ピクセル値を前記閾値レジスタ手段から出力された前記Ｎ個のマトリックス・ピクセル値の対応するものと比較し、その比較に応じて、前記宛先画像にＮ個の二進値を配列する、比較手段を有する、（１）記載のシステム。
（３）更に、前記メモリ手段が前記宛先画像の行の初期ピクセル位置を識別するアンカ値を記憶し、前記制御手段は、前記メモリ手段が前記閾値レジスタ手段に前記マトリックスの最初の行の第１のグレー・レベル閾値であるマトリックス・ピクセルを出力するように前記アンカ値を操作し、前記スケーリング・レジスタ手段に最初のソース・ピクセル値を配置する、（２）記載のシステム。
【００７１】
（４）前記閾値レジスタ手段が、閾値パイプライン・レジスタと閾値レジスタとを有し、前記調整論理手段が、前記メモリ手段と前記閾値パイプライン・レジスタとの間に接続されている第１の論理スイッチと、前記閾値パイプライン・レジスタと前記閾値レジスタとの間に接続されている第２の論理スイッチとを有し、前記閾値パイプライン・レジスタと前記閾値レジスタの両方がＮ個の記憶位置を有し、前記制御手段が、連続するクロック周期の間、前記閾値パイプライン・レジスタと前記閾値レジスタとに前記メモリ手段から最初のＮ個のマトリックス・ピクセル値を入力するようにモード制御信号を適用し、前記制御手段が、次のクロック周期の間、前記閾値パイプライン・レジスタに前記メモリ手段から次の前記マトリックス・ピクセル値を入力するようにモード制御信号を適用し、もしＷ＞Ｎであるならば、前記メモリ手段からの前記最初の閾値の残余の部分を前記閾値レジスタの隣接する位置に入力する、（２）記載のシステム。
【００７２】
（５）前記最初のモード制御信号が、Ｗ＝Ｎのとき前記制御手段によって発生され、前記第１と第２の論理スイッチが前記Ｎ個の閾値ピクセル値を前記閾値パイプライン・レジスタと前記閾値レジスタの両方に入力するようにする（４）記載のシステム。
（６）前記２番目のモード制御信号が、Ｗ＝Ｎ＋１のとき前記制御手段によって発生され、前記第１と第２の論理スイッチが前記Ｎ＋１番目の閾値ピクセル値を前記閾値パイプライン・レジスタから前記閾値レジスタの高位の記憶位置に入力するようにし、Ｎ個のマトリックス・ピクセル値の次のセットの追加したものを前記閾値レジスタの低位の位置に入力するようにする（４）記載のシステム。
（７）前記閾値レジスタからの出力が無効データを示し、前記制御手段が前記システムからの前記無効データの出力を防止する（４）記載のシステム。
【００７３】
（８）前記制御手段が、前記出力を防止する場合を決定するための２つの変数を持ち、第１の変数が、前記マトリックスの低位エンドに残存しているマトリックス・ピクセルのＮより小さい数に等しく、第２の変数が、前記制御手段によって前記調整論理手段に適用されるスイッチ・ステータスの数の１つに等しく、前記制御手段は、前記第１の変数と第２の変数の合計が、前記スイッチ・ステータスの数よりも大きいとき、前記出力を禁止する、（７）記載のシステム。
（９）前記制御手段が、次のスイッチ・ステータスを設定するために前記合計を使用する（８）記載のシステム。
【００７４】
【発明の効果】
上述のように、本発明によって、グレー・レベル・ソース画像を二進中間調宛先画像に変換し、メモリ資源を保護する高速システムを提供することができるようになった。
【図面の簡単な説明】
【図１】ソース画像をスケーリングし、スケーリングされたソース画像を一致させるために閾値マトリックスを整列させ、タイル張りにし、宛先二階調画像にするためにスケーリングされたソース画像とタイル張り閾値マトリックスを比較する処理を図示する概略図である。
【図２】複数のグレー・レベル・ピクセル値を持つソース画像の図である。
【図３】図２のソース画像を１．５倍に拡大した図である。
【図４】図２のソース画像を０．７５倍に縮小した図である。
【図５】マルチ・ビット入力索引アレイとピクセル多重化手順を使用して、ソース画像を拡大する従来技術の方法を示す図である。
【図６】双直線スケーリング・アルゴリズムを含む、マルチ・ビット入力索引アレイを使用しているソース画像を拡大する従来技術の方法を示す図である。
【図７】マルチ・ビット入力索引アレイとサブサンプリング・アルゴリズムを使用してソース画像を縮小化する従来技術の方法を示す図である。
【図８】本発明のシステムのブロック図である。
【図９】グレー・レベル・ソース画像を二階調宛先画像に変換している間のいろいろなデータ・ソースの相互作用を示す本発明の論理フローチャートである。
【図１０】ＳＲＡＭアクセスを制御する方法を示すフローチャートである。
【図１１】本発明によって処理される垂直帯を示す、ラスタ画像ページ表示の概略図である。
【図１２】スモール・スケーリング係数がソース画像に使用される場合の、メモリ区分の概略図である。
【図１３】ラージ・スケーリング係数がソース画像に使用される場合の、メモリ区分の概略図である。
【図１４】「関連」入力索引アレイ・フォーマットを示す図である。
【図１５】関連入力索引アレイの索引ビットの位置の値によって制御されるような、ソース・データと宛先データの間の関係を示す図である。
【図１６】本発明に従って稼働する回路を示す詳細なブロック図である。
【図１７】閾値マトリックス・レジスタと閾値出力レジスタの間の４モード制御相互接続を示す図である。
【図１８】閾値マトリックス・レジスタと閾値出力レジスタの間の４モード制御相互接続を示す図である。
【図１９】閾値マトリックス・レジスタと閾値出力レジスタの間の４モード制御相互接続を示す図である。
【図２０】閾値マトリックス・レジスタと閾値出力レジスタの間の４モード制御相互接続を示す図である。
【図２１】閾値マトリックス調整過程の実行処理を示す図である。
【符号の説明】
２２  ２６  ソース・グレー・レベル画像
２４  グレー・レベル画像の拡大バージョン
６０  システム
８０  ＡＳＩＣ
８２  データ・バス
１３２  ＲＩＩＡ
２００  画像ソース・レジスタ
２０２  ＲＩＩレジスタ
２０４  閾値ステージング・レジスタ
【図１】
0003880680.tif 000002
【図２】
0003880680.tif 000003
【図３】
0003880680.tif 000004
【図４】
0003880680.tif 000005
【図５】
0003880680.tif 000006
【図６】
0003880680.tif 000007
【図７】
0003880680.tif 000008
【図８】
0003880680.tif 000009
【図９】
0003880680.tif 000010
【図１０】
0003880680.tif 000011
【図１１】
0003880680.tif 000012
【図１２】
0003880680.tif 000013
【図１３】
0003880680.tif 000014
【図１４】
0003880680.tif 000015
【図１５】
0003880680.tif 000016
【図１６】
0003880680.tif 000017
【図１７】
0003880680.tif 000018
【図１８】
0003880680.tif 000019
【図１９】
0003880680.tif 000020
【図２０】
0003880680.tif 000021
【図２１】
0003880680.tif 000022