JP3210053B2 - Sorting equipment - Google Patents

Sorting equipment

Info

Publication number
JP3210053B2
JP3210053B2 JP03415892A JP3415892A JP3210053B2 JP 3210053 B2 JP3210053 B2 JP 3210053B2 JP 03415892 A JP03415892 A JP 03415892A JP 3415892 A JP3415892 A JP 3415892A JP 3210053 B2 JP3210053 B2 JP 3210053B2
Authority
JP
Japan
Prior art keywords
data
area
address
reference value
memory
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.)
Expired - Fee Related
Application number
JP03415892A
Other languages
Japanese (ja)
Other versions
JPH05189203A (en
Inventor
達也 藤井
尚人 白石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP03415892A priority Critical patent/JP3210053B2/en
Priority to US07/978,925 priority patent/US5465371A/en
Publication of JPH05189203A publication Critical patent/JPH05189203A/en
Application granted granted Critical
Publication of JP3210053B2 publication Critical patent/JP3210053B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】この発明は、ソーティング装置に
かかり、特に複数の基準値データに基づきデータをソー
ティングする装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a sorting apparatus, and more particularly to an apparatus for sorting data based on a plurality of reference value data.

【0002】画像処理装置は、外部から供給される画像
情報に基づき、CRT表示用の各種画像信号を合成出力
するものであり、単に2次元的な平面画像ばかりではな
く、立体的な合成出力することができることから、例え
ば3次元画像用のビデオゲーム、コンピュータグラフィ
ックス、CAD装置のディスプレイ及びその他の用途に
幅広く用いられている。
An image processing apparatus synthesizes and outputs various image signals for CRT display based on image information supplied from the outside, and outputs not only a two-dimensional planar image but also a three-dimensional synthesized image. For example, they are widely used in video games for three-dimensional images, computer graphics, displays of CAD devices, and other uses.

【0003】ところで、画像処理装置を用いて奥行きを
もった3次元画像をリアルタイムで合成する場合には、
各標体の3次元データを画像奥行き方向の座標値、即ち
Z軸データに基づき、1/60秒間に処理対象のポリゴ
ンに対して高速でソーティングする必要がある。
When a three-dimensional image having depth is synthesized in real time using an image processing apparatus,
It is necessary to sort the three-dimensional data of each target object at a high speed in 1/60 seconds based on the coordinate values in the image depth direction, that is, the Z-axis data.

【0004】このため、複数の3次元データを所定のZ
軸データに基づき、高速ソーティングできる装置の開発
が望まれていた。
For this reason, a plurality of three-dimensional data are
It has been desired to develop a device capable of high-speed sorting based on axis data.

【0005】しかし、従来このようなソーティングは、
各データに含まれるZ軸データの隣接するものどうしを
逐次比較してその都度並べ変えるという作業を、全デー
タに対して行っていた。
However, conventionally, such sorting is
The operation of successively comparing adjacent data of the Z-axis data included in each data and rearranging the data each time is performed on all data.

【0006】この処理を行なうためには、メモリ間にお
ける全Z軸データのデータ転送を、多数回に渡って繰返
し行わなければならない。従って、データのソーティン
グ作業を高速で行うことがでないという問題があった。
In order to perform this processing, the data transfer of all the Z-axis data between the memories must be repeated many times. Therefore, there is a problem that data sorting cannot be performed at high speed.

【0007】特に、この従来技術では、比較対象とする
Z軸データの個数が多くなると、ソーティング作業に時
間と手間がかかりすぎる。従って、これを高速ソーティ
ングしようとする場合には、比較的大型のコンピュータ
を用いなければならず、装置全体が複雑かつ高価なもの
となってしまうという問題があった。
[0007] In particular, in this conventional technique, if the number of Z-axis data to be compared increases, the sorting operation takes too much time and effort. Therefore, in order to perform high-speed sorting, a relatively large computer must be used, and there is a problem that the entire apparatus becomes complicated and expensive.

【0008】そこで、複数のデータのソーティングを簡
単な構成で高速に行うことができ、特にソーティング対
象となる基準軸データの個数が多いような場合でもソー
ティングを高速で行うことが可能なソーティング装置
が、特開平2−224018号公報(国際特許分類G0
6F 7/24)に提案されている。
Therefore, there is a sorting apparatus which can sort a plurality of data at a high speed with a simple configuration, and can perform the sorting at a high speed even when the number of reference axis data to be sorted is large. JP-A-2-222018 (International Patent Classification G0
6F 7/24).

【0009】このソーティング装置は、ソーティングの
対象となる基準軸データをそのデータ番号順に、ファー
ストバッファメモリおよびラストバッファメモリへ入力
する。
This sorting apparatus inputs reference axis data to be sorted to a first buffer memory and a last buffer memory in the order of their data numbers.

【0010】そして、ファーストバッファメモリは、そ
のファーストデータ番号記憶エリアに、対応する基準軸
データが最初に入力されたときのデータ番号を記憶す
る。
The first buffer memory stores, in the first data number storage area, the data number when the corresponding reference axis data is first input.

【0011】同様にして、ラストバッファメモリは、そ
のラストデータ番号記憶エリアに、対応する基準軸デー
タが読み出される毎に、そのデータ番号順次更新記憶す
る。従って、各ラストデータ番号には、対応する基準軸
データが最後に読み出されたときのデータ番号が記憶さ
れる。
Similarly, each time the corresponding reference axis data is read out, the last buffer memory sequentially updates and stores the data number in the last data number storage area. Therefore, each last data number stores the data number when the corresponding reference axis data was last read.

【0012】また、ラストデータ番号記憶エリアに記憶
されているデータ番号が更新記憶されるとその記憶エリ
アに記憶されていたデータ番号と新たに記憶されるデー
タ番号とがチェインバッファメモリへ向け入力される。
When the data number stored in the last data number storage area is updated and stored, the data number stored in the storage area and the newly stored data number are input to the chain buffer memory. You.

【0013】そして、チェインバッファメモリは、ラス
トデータ番号記憶エリアのデータが更新される毎に、更
新前のデータ番号で指定されるチェインデータ番号記憶
エリアに、更新後の新たなデータ番号を書込む。従っ
て、値が同じでかつデータ番号のみ異なる基準軸データ
が繰返して入力された場合は、その基準軸データの履
歴、すなわち、その基準軸データがどのようなデータ番
号順で入力されたかがチェインデータ番号記憶エリアに
書込まれることになる。
Each time the data in the last data number storage area is updated, the chain buffer memory writes a new data number after the update to the chain data number storage area designated by the data number before the update. . Therefore, if reference axis data having the same value but different data numbers is repeatedly input, the history of the reference axis data, that is, the data number order of the reference axis data indicates the chain data number. It will be written to the storage area.

【0014】このような一連のファーストバッファメモ
リ、ラストバッファメモリおよびチェインバッファメモ
リへのデータ書込み終了後、ラストデータ番号記憶エリ
アに記憶されたデータ番号で指定されるチェインデータ
番号記憶エリアに、このラストデータ番号と記憶エリア
所定の対応関係にあるファーストデータ番号エリアに記
憶されたデータ番号が順次書込まれる。このようにし
て、チェインデータ番号記憶エリアの各記憶エリアに
は、基準軸データが昇順または降順に連鎖するようデー
タ番号が書込まれることになる。
After the series of data is written to the first buffer memory, the last buffer memory, and the chain buffer memory, the last data is stored in the chain data number storage area designated by the data number stored in the last data number storage area. The data numbers stored in the first data number area having a predetermined correspondence relationship with the data numbers are sequentially written. In this way, data numbers are written in the respective storage areas of the chain data number storage area so that the reference axis data is chained in ascending or descending order.

【0015】そして、このソーティング回路では、チェ
インデータ番号記憶エリア内に書込まれたデータ番号を
所定の読み出し規則に従って読み出すことにより、入力
された基準軸データを、データ番号順に出力する。
The sorting circuit reads the data numbers written in the chain data number storage area in accordance with a predetermined read rule, and outputs the input reference axis data in the order of the data numbers.

【0016】このようにすることにより、入力された基
準軸データが昇順または降順にソーティング出力される
ことになる。
In this manner, the input reference axis data is sorted and output in ascending or descending order.

【0017】ところで、画像処理装置は、図46に示す
ように、スクリーンよりZ軸データの小さいポリゴン及
び境界限界よりZ軸データの大きいポリゴンを除外する
3Dクリッピング、また図47に示すように、任意のZ
データ領域のポリゴンを除外する3Dクリッピング、更
に、図48に示すように、任意の任意のZデータ領域の
ポリゴンだけを残す3Dピッキング等が行われる。
By the way, as shown in FIG. 46, the image processing apparatus performs 3D clipping for eliminating polygons having smaller Z-axis data than the screen and polygons having larger Z-axis data than the boundary limit. Z
3D clipping that excludes polygons in the data area, and 3D picking that leaves only polygons in any arbitrary Z data area, as shown in FIG. 48, are performed.

【0018】[0018]

【発明が解決しようとする課題】しかしながら、上述し
た方式では、スクリーン面よりZ値の小さいポリゴンと
視界限界よりZ値の大きいポリゴンを除外するいわゆる
3Dクリッピング処理や、任意のZ領域のポリゴンだけ
を残す3Dピッキング処理などを行うためには全体のソ
ートを行った後、ある制限のZ値を必要とし、複数デー
タを所定の基準軸に基づきソートを行うため、余分なデ
ータ転送を行うという問題があった。
However, according to the above-described method, a so-called 3D clipping process for excluding a polygon having a smaller Z value than the screen surface and a polygon having a larger Z value than the field of view, or a polygon in an arbitrary Z region is used. In order to perform the remaining 3D picking processing or the like, after performing the entire sort, a certain limit Z value is required, and since a plurality of data are sorted based on a predetermined reference axis, extra data transfer is performed. there were.

【0019】この発明は、3Dクリッピング処理や3D
ピッキング処理などを行う場合でも、簡単な構成で高速
に処理が行えるソーティング装置を提供することをその
課題とする。
The present invention provides 3D clipping processing and 3D
It is an object of the present invention to provide a sorting apparatus that can perform high-speed processing with a simple configuration even when performing a picking processing or the like.

【0020】[0020]

【課題を解決するための手段】この発明のソーティング
装置は、入力される複数の基準値データをソーティング
するソーティング装置であって、入力される各基準値デ
ータに対応したデータ番号を発生するデータ番号発生手
段と、入力された基準値データを上位と下位のデータに
分割して夫々のデータの値に対応するアドレスにそのデ
ータと等しい値のデータ群のチェーンリストの先頭のア
ドレスを保持する第1の記憶手段と、分割された夫々の
データの値に対応するアドレスにそのデータ値と等しい
値のデータ群のチェーンリストの終点データのアドレス
を保持する第2の記憶手段と、分割された夫々のデータ
に付随する基準値データと同値のデータ群を示すチェー
ンリストのポインタを格納する第3の記憶手段と、上記
基準値データの分割された上位データよりソートを行い
同値のデータのみ分割された下位データを処理するよう
に制御する手段とを備える。更に、この発明のソーティ
ング装置は、入力される複数の複数桁からなる基準値デ
ータをソーティングするソーティング装置であって、入
力される各基準値データに対応したデータ番号を発生す
るデータ番号発生手段と、入力された基準値データを2
つ以上のデータ群に分割して夫々のデータ番号に対応し
たアドレスに記憶する複数桁の基準値データ記憶領域
と、分割された各データ群の基準値データに基づきアド
レスが指定されるデータ群に対応した記憶領域を有し、
各領域に対応する前記基準値データが最初に入力された
とき、この記憶領域にデータ番号発生手段の発生するデ
ータ番号を記憶するカウントスタート領域と、前記基準
値データに基づきアドレスが指定される第2の記憶領域
を有し、各領域に対応する前記基準値データが入力され
る毎に、この記憶領域にデータ番号発生手段の発生する
データ番号を更新記憶するカウントエンド領域と、デー
タ番号に基づきアドレスが指定される次のアドレスを指
定するためのポインタ領域と、前記カウントエンド領域
のデータ番号が更新される毎に、更新前のデータ番号で
指定されるポインタ領域に、更新される新たなデータ番
号を書き込む第1の制御手段と、ソート結果を格納する
前記分割されたデータ群に対応したソートアドレス領域
を有するソートメモリと、前記分割されたデータ群の上
位側の基準値データに従い上位側のカウントスタート領
域及び上位側のカウントエンド領域へのデータ番号の書
き込み終了後、上位側のカウントスタート領域に書き込
まれたデータ番号、上位側のポインタ領域に書き込まれ
たデータ番号並びに上位側のカウントエンド領域に書き
込まれたデータ番号を連鎖づけてソートメモリに書き込
む第2の制御手段と、前記上位側の基準値データのソー
トの終了後、上位側の基準値データの同値のデータの前
記上位側の基準値データに対応する下位側の基準値デー
タ記憶領域からの基準値データを下位側のカウントスタ
ート領域及び下位側のカウントエンド領域へ書き込み終
了後、下位側のカウントスタート領域に書き込まれたデ
ータ番号、下位側のポインタ領域に書き込まれたデータ
番号並びに下位側のカウントエンド領域に書き込まれた
データ番号を連鎖づけてソートメモリに書き込む第3の
制御手段と、を備えてなる。
SUMMARY OF THE INVENTION A sorting apparatus according to the present invention is a sorting apparatus for sorting a plurality of input reference value data, wherein a data number for generating a data number corresponding to each input reference value data. Generating means for dividing input reference value data into upper and lower data, and holding the first address of a chain list of a data group having a value equal to that data at an address corresponding to each data value; Storage means for storing the address of the end point data of the chain list of the data group having a value equal to the data value at the address corresponding to the value of each divided data; and Third storage means for storing a pointer of a chain list indicating a data group having the same value as the reference value data accompanying the data; And means for controlling to process the low-order data divided only equivalent data to sort from the host data. Further, the sorting apparatus of the present invention is a sorting apparatus for sorting input reference value data consisting of a plurality of digits, and a data number generating means for generating a data number corresponding to each input reference value data. , Input reference value data to 2
A multi-digit reference value data storage area that is divided into one or more data groups and stored at addresses corresponding to respective data numbers, and a data group whose address is specified based on the reference value data of each divided data group. Has a corresponding storage area,
When the reference value data corresponding to each area is input for the first time, a count start area for storing a data number generated by a data number generation means in this storage area, and an address designated based on the reference value data A count end area for updating and storing the data number generated by the data number generating means in this storage area each time the reference value data corresponding to each area is input; A new data area to be updated is stored in a pointer area for specifying the next address to which the address is specified and a pointer area specified by the data number before the update each time the data number in the count end area is updated. First control means for writing a number, and a sort method having a sort address area corresponding to the divided data group for storing the sort result. After the data number has been written to the upper count start area and the upper count end area according to the upper reference value data of the divided data group, the data written to the upper count start area Second control means for linking the number, the data number written in the upper pointer area and the data number written in the upper count end area and writing them in the sort memory, and sorting the upper reference value data After completion of the above, the reference value data from the lower reference value data storage area corresponding to the upper reference value data of the same value data of the upper reference value data is transferred to the lower count start area and the lower count. After writing to the end area, the data number written to the lower count start area and the lower pointer area And third control means for writing the sort memory data number written in the data number and the lower count end regions incorporated come in association chain consisting comprise.

【0021】更に、この発明は、前記カウントスタート
領域に夫々対応する第1のフラグ領域と、前記カウント
エンド領域に夫々対応する第2のフラグ領域とを備え、
前記第1のフラグ領域はカウントスタート領域にデータ
が格納されている場合にセットされ、第2のフラグ領域
はカウントエンド領域のデータが更新されている場合に
セットされるように構成すると良い。
Further, the present invention includes a first flag area corresponding to the count start area, and a second flag area corresponding to the count end area, respectively.
The first flag area may be set when data is stored in the count start area, and the second flag area may be set when data in the count end area is updated.

【0022】更に、この発明は、上位側の基準値データ
に基づくアドレスに対応するフラグ群を有し、クリッピ
ング又はピッキング処理を行なう領域に対応したアドレ
スの上記フラグ群のフラグを設定する手段を備え、上位
側の基準値データのソートの終了後、クリッピング対応
のアドレスの上位側の基準値データに対しては、第3の
制御手段は下位側の基準値データのソートを省略するよ
うに構成すると良い。
Further, the present invention has a flag group corresponding to an address based on the upper-level reference value data, and includes means for setting a flag of the flag group of an address corresponding to an area where clipping or picking processing is performed. After the sorting of the upper reference value data, the third control means is configured to omit the sorting of the lower reference value data for the upper reference value data of the address corresponding to the clipping. good.

【0023】この発明のソーティング装置は、入力され
る複数の複数桁からなる基準値データをソーティングす
るソーティング装置であって、入力される各基準値デー
タに対応したデータ番号を発生するデータ番号発生手段
と、入力された基準値データを上位桁と下位桁のデータ
に分割して夫々のデータ番号に対応したアドレスに記憶
する上位桁及び下位桁の基準値データ記憶領域と、上位
桁の基準値データに基づきアドレスが指定される第1の
記憶領域を有し、各領域に対応する上位桁の基準値デー
タが最初に入力されたとき、この記憶領域にデータ番号
発生手段の発生するデータ番号を記憶する上位桁カウン
トスタート領域と、前記基準値データに基づきアドレス
が指定される第2の記憶領域を有し、各領域に対応する
上位桁の基準値データが入力される毎に、この記憶領域
にデータ番号発生手段の発生するデータ番号を更新記憶
する上位桁カウントエンド領域と、データ番号に基づき
アドレスが指定される次のアドレスを指定するための上
位桁ポインタ領域と、下位桁の基準値データに基づきア
ドレスが指定される第3の記憶領域を有し、各領域に対
応する下位桁の基準値データが最初に入力されたとき、
この記憶領域にデータ番号発生手段の発生するデータ番
号を記憶する下位桁カウントスタート領域と、前記基準
値データに基づきアドレスが指定される第4の記憶領域
を有し、各領域に対応する下位桁の基準値データが入力
される毎に、この記憶領域にデータ番号発生手段の発生
するデータ番号を更新記憶する下位桁カウントエンド領
域と、データ番号に基づきアドレスが指定される次のア
ドレスを指定するための下位桁ポインタ領域と、前記上
行桁又は下位桁カウントエンド領域のデータ番号が更新
される毎に、更新前のデータ番号で指定される上位桁又
は下位桁ポインタ領域に、更新される新たなデータ番号
を書き込む第1の制御手段と、ソート結果を格納する上
位桁及び下位桁に対応したソートアドレス領域を有する
ソートメモリと、前記上位桁の基準値データに従い上位
桁カウントスタート領域及び上位桁カウントエンド領域
へのデータ番号の書き込み終了後、上位桁カウントスタ
ート領域に書き込まれたデータ番号、上位桁ポインタ領
域に書き込まれたデータ番号並びに上位桁カウントエン
ド領域に書き込まれたデータ番号を連鎖づけてソートメ
モリに書き込む第2の制御手段と、前記上位桁の基準値
データのソートの終了後、上位桁の基準値データと同値
のデータの前記上位桁の基準値データに対応する下位桁
基準値データ記憶領域からの基準値データを下位桁カウ
ントスタート領域及び下位桁カウントエンド領域へ書き
込み終了後、下位桁カウントスタート領域に書き込まれ
たデータ番号、下位桁ポインタ領域に書き込まれたデー
タ番号並びに下位桁カウントエンド領域に書き込まれた
データ番号を連鎖づけてソートメモリに書き込む第3の
制御手段と、を備えてなる。
The sorting apparatus according to the present invention is a sorting apparatus for sorting a plurality of input reference value data having a plurality of digits, and a data number generating means for generating a data number corresponding to each input reference value data. And an upper digit and lower digit reference value data storage area for dividing the input reference value data into upper digit and lower digit data and storing them at addresses corresponding to the respective data numbers, and an upper digit reference value data A first storage area in which an address is specified based on the data number, and when the upper-order reference value data corresponding to each area is first inputted, the data number generated by the data number generation means is stored in this storage area. And a second storage area in which an address is specified based on the reference value data. The upper-order reference value data corresponding to each area is provided. Each time a data is input, an upper digit count end area for updating and storing the data number generated by the data number generating means in this storage area, and an upper digit count end area for specifying the next address whose address is specified based on the data number. A digit pointer area, and a third storage area to which an address is specified based on lower-order reference value data, and when lower-order reference value data corresponding to each area is first input,
This storage area has a lower digit count start area for storing a data number generated by the data number generating means, and a fourth storage area in which an address is specified based on the reference value data. Each time reference value data is input, a lower digit count end area for updating and storing the data number generated by the data number generating means in this storage area and a next address to which an address is specified based on the data number are specified. Whenever the data number of the lower digit pointer area and the upper row digit or the lower digit count end area is updated, the new upper digit or lower digit pointer area specified by the data number before the update is updated. First control means for writing a data number, a sort memory having a sort address area corresponding to upper and lower digits for storing a sort result, After the data number has been written to the upper digit count start area and upper digit count end area according to the upper digit reference value data, the data number written to the upper digit count start area and the data number written to the upper digit pointer area Second control means for linking the data number written in the upper digit count end area to the sort memory and writing the data number into the sort memory; and after the sorting of the upper digit reference value data, data having the same value as the upper digit reference value data. After the reference value data from the lower digit reference value data storage area corresponding to the upper digit reference value data is written to the lower digit count start area and the lower digit count end area, the data written to the lower digit count start area Number, data number written in lower digit pointer area and lower digit count end And third control means for writing the sort memory data number written in frequency in association chain consisting comprise.

【0024】[0024]

【作用】この発明によれば、基準値データを2つ以上の
データ群に分割してソート処理を行う。即ち、上位側の
基準値データに対して、分布カウントソートを行う。基
準値データのアドレスの小さいものから、同じ値の基準
値データのデータ群に対して下位側の基準値データだけ
の分布ソートを行い、ソートされたデータをソートメモ
リのアドレスに順次書き込むことにより、大きなビット
長のデータに対しても高速にソートが実行できる。
According to the present invention, the reference value data is divided into two or more data groups and the sorting process is performed. That is, distribution count sorting is performed on the reference value data on the upper side. By performing a distribution sort of only the lower-order reference value data with respect to the data group of the same reference value data from the smaller reference value data address, and sequentially writing the sorted data to the sort memory address, Sorting can be performed at high speed even for data having a large bit length.

【0025】また、この発明は、上位側の基準値データ
のソートの終了後、クリッピング対応のアドレスの上位
桁の基準値データに対しては、下位桁の基準値データの
ソートを省略するように構成することができるので、、
任意の基準値データのポリゴンを除外する3Dクリッピ
ング、3Dピッキングを余分なデータ転送を行うことな
く可能となり、3Dクリッピング、3Dピッキング等を
高速にできる。
Further, according to the present invention, after the sorting of the upper-order reference value data is completed, the sorting of the lower-order reference value data is omitted for the upper-order reference value data of the address corresponding to clipping. Can be configured,
3D clipping and 3D picking that exclude polygons of arbitrary reference value data can be performed without performing extra data transfer, and 3D clipping, 3D picking, and the like can be performed at high speed.

【0026】[0026]

【実施例】以下、この発明の実施例につき図面に従い説
明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0027】図1は、この発明を用いた疑似3次元画像
処理装置の全体構成を示すブロック図であり、この装置
は例えば、レーシングゲームや飛行機の操縦シュミレー
ションなどのゲーム用機器に用いて好適な1例が示され
ている。図1に従いこの発明の全体構成について説明す
る。
FIG. 1 is a block diagram showing the overall configuration of a pseudo three-dimensional image processing apparatus using the present invention. This apparatus is suitable for use in game machines such as racing games and airplane control simulations. One example is shown. The overall configuration of the present invention will be described with reference to FIG.

【0028】この実施例において、画像情報供給装置5
は、運転中における各種条件のシュミレーション画像を
演算し、このシュミレーション画像を複数のポリゴンの
情報として、ポリゴン座標メモリ20に出力すると共
に、視点からの距離の代表値を決定し、代表値の小さい
即ち優先度の高いポリゴンとしてZ値を決定し、そのZ
値をソート処理装置100に転送するものである。
In this embodiment, the image information supply device 5
Calculates a simulation image of various conditions during driving, outputs the simulation image as information of a plurality of polygons to the polygon coordinate memory 20, determines a representative value of the distance from the viewpoint, and The Z value is determined as a polygon having a high priority, and the Z value is determined.
The value is transferred to the sort processing device 100.

【0029】画像情報供給装置5の構成について説明す
ると、この装置には、ワールドメモリ1、幾何変換回路
2、操作部3及びメインCPU回路4を備える。
The configuration of the image information supply device 5 will be described. This device includes a world memory 1, a geometric conversion circuit 2, an operation unit 3, and a main CPU circuit 4.

【0030】ワールドメモリ1には、あらゆる物体が複
数のポリゴンの集合体として表現され、このポリゴンの
各端点を示す端点情報が格納されている。
The world memory 1 represents all objects as a set of a plurality of polygons, and stores end point information indicating each end point of the polygon.

【0031】操作部3は、ハンドル、アクセル、ブレー
キなどで構成され、その操作内容は電気信号に変換さ
れ、メインCPU回路4へ出力される。
The operation section 3 is composed of a steering wheel, an accelerator, a brake and the like, and the operation content is converted into an electric signal and output to the main CPU circuit 4.

【0032】メインCPU回路4は、操作部3から出力
される各種の状態信号、例えば「自動車が加速した」
「自動車がガードレールに激突した」「道に沿って自動
車が曲がった」等の情報を受け取り、これに応じた状況
データを演算し、幾何変換回路2へ出力する。
The main CPU circuit 4 outputs various status signals output from the operation unit 3, for example, "the vehicle has accelerated."
It receives information such as “the car has hit the guardrail”, “the car has turned along the road”, etc., calculates the situation data according to the information, and outputs it to the geometric transformation circuit 2.

【0033】幾何変換回路2は、メインCPU4の演算
する自動車の現在位置に従い、ワールドメモリ1に格納
されている各種ポリゴンデータを参照しながら、運転者
が見える光景を演算し、その光景に応じて幾何変形され
たポリゴンの端点情報をポリゴン座標メモリ20に出力
する。即ち、透視投影変換により、各ポリゴンの頂点座
標を幾何変換し、そのX,Yの2次元座標をポリゴン座
標メモリ20に出力する。
The geometric conversion circuit 2 calculates a scene that the driver can see according to the current position of the vehicle calculated by the main CPU 4 while referring to various polygon data stored in the world memory 1, and according to the scene. The end point information of the geometrically deformed polygon is output to the polygon coordinate memory 20. That is, the vertex coordinates of each polygon are geometrically transformed by the perspective projection transformation, and the two-dimensional X and Y coordinates are output to the polygon coordinate memory 20.

【0034】また、この様な透視投影変換を行うに当
り、視点と各ポリゴンとの距離を求めておく。そして、
透視投影変換により求めた各ポリゴンを運転者の視野即
ち画面の視野に入るか否かのチェックを行う。視野に入
るポリゴンに対し、視点からの距離の代表値を決定し、
代表値の小さい即ち優先度の高いポリゴンとしてZ値を
決定し、そのZ値の小さいポリゴンから順に、優先度の
高いポリゴンとしてポリゴン座標メモリ20及びソート
処理装置100に出力する。
In performing such perspective projection conversion, the distance between the viewpoint and each polygon is determined in advance. And
It is checked whether or not each polygon obtained by the perspective projection conversion falls within the driver's visual field, that is, the visual field of the screen. For the polygons in the field of view, determine the representative value of the distance from the viewpoint,
The Z value is determined as a polygon having a small representative value, that is, a polygon having a high priority, and is output to the polygon coordinate memory 20 and the sort processing device 100 as polygons having a high priority in order from a polygon having a small Z value.

【0035】この発明が用いられるソート処理装置10
0には、画像情報供給装置5にて演算された各ポリゴン
ごとのZ値が転送される。このソート処理装置100は
すべてのポリゴンのZ値を受け取った後、図2に示すよ
うに、スクリーンに近い、即ちZ値の小さい順にソート
処理を行う。そして、Z値の小さい順に並んだポリゴン
アドレスをソートアドレス領域に書き込む。
A sorting apparatus 10 according to the present invention.
To 0, the Z value for each polygon calculated by the image information supply device 5 is transferred. After receiving the Z values of all the polygons, the sort processing device 100 performs a sort process closer to the screen, that is, in ascending order of the Z value, as shown in FIG. Then, the polygon addresses arranged in ascending order of the Z value are written in the sort address area.

【0036】また、ソート処理装置100のポリゴン座
標演算は各ポリゴンの情報を内部メモリに書き込みその
ソート処理したデータをポリゴン画像処理回路30に送
る。ポリゴン画像処理回路30が、ソート処理装置10
0のソートアドレス領域からZ値の小さい順のポリゴン
のアドレスを受け取り、そのアドレスの示すポリゴン座
標メモリ20のXYアドレスの情報を用いて、画像処理
を行ないCRT40にポリゴンを表示する。
In the polygon coordinate calculation of the sort processing device 100, information of each polygon is written into an internal memory, and the sorted data is sent to the polygon image processing circuit 30. The polygon image processing circuit 30 is
The address of the polygon having the smallest Z value is received from the sort address area of 0, and image processing is performed using the information of the XY address of the polygon coordinate memory 20 indicated by the address to display the polygon on the CRT 40.

【0037】次に、この発明の第1の実施例におけるソ
ーティング装置につき説明する。図2はソーティング装
置の全体構成を示すブロック図である。このソーティン
グ装置は、データメモリ10、ソート回路100及び分
布カウントメモリ11、ソートメモリ12を備える。
Next, a sorting apparatus according to a first embodiment of the present invention will be described. FIG. 2 is a block diagram showing the overall configuration of the sorting device. This sorting device includes a data memory 10, a sort circuit 100, a distribution count memory 11, and a sort memory 12.

【0038】データメモリ10は、アドレス生成回路1
3によって指定される1〜N迄のZ値データを格納する
記憶領域を有する。この記憶領域は、図5に示すよう
に、大きくH領域とL領域とに領域が分けられている。
この各領域は、Z値データを格納するZ値領域とそれに
付随するNEXTアドレスを格納するNEXTポインタ
領域に分けられ、H領域には基準値データの上位のデー
タが、L領域には、基準値データの下位のデータが格納
される。ここで、Z値データが、図18に示すように1
6ビットデータで構成されているとすれば、H領域に
は、基準値データの上位の8ビットのデータが、L領域
には、下位の8ビットのデータが格納される。このデー
タメモリ10入力されるZ値データに対応したデータ番
号発生手段により発生させたデータ番号が格納される。
The data memory 10 includes the address generation circuit 1
3 has a storage area for storing Z value data of 1 to N specified by 3. As shown in FIG. 5, the storage area is largely divided into an H area and an L area.
Each of these areas is divided into a Z value area for storing Z value data and a NEXT pointer area for storing an associated NEXT address. Higher data of the reference value data is stored in the H area, and a reference value is stored in the L area. Lower data of the data is stored. Here, as shown in FIG.
Assuming that the data is composed of 6-bit data, the upper 8 bits of the reference value data are stored in the H area, and the lower 8 bits of data are stored in the L area. The data number generated by the data number generating means corresponding to the Z value data input to the data memory 10 is stored.

【0039】ソートメモリ12は、図5に示すように、
ソート結果を格納するソートアドレス領域を有し、この
ソートメモリ12もデータメモリ10と同じH領域とL
領域とに領域が分けられている。このソートメモリ12
にソートされたデータ番号がソート順に格納される。
The sort memory 12, as shown in FIG.
The sort memory 12 has a sort address area for storing the sort result.
The region is divided into regions. This sort memory 12
Are stored in the sorted order.

【0040】上記データメモリ10のNEXTポインタ
領域は、同じ値のデータのアドレスを示すポインタ値が
格納され、ソートメモリ12のソートアドレス領域に
は、アドレスの小さい順にZ値の小さいデータのアドレ
スの値が格納される。
The NEXT pointer area of the data memory 10 stores a pointer value indicating the address of the data having the same value. The sort address area of the sort memory 12 stores the address value of the data having the smallest Z value in the order of the address. Is stored.

【0041】ソート回路100は、データメモリ10か
らマルチプレクサ14を介して入力されるZ値に対し
て、分布カウントメモリ11をワーキングとして用い、
ソートメモリ12にマルチプレクサ14を介してZ値の
H領域とL領域に夫々ソートされたアドレスをH領域と
L領域のソートアドレス領域に書き込む。
The sorting circuit 100 uses the distribution count memory 11 as a working for the Z value input from the data memory 10 via the multiplexer 14,
The addresses sorted into the H value area and the L value area of the Z value are written to the sort memory 12 via the multiplexer 14 in the sort address areas of the H area and the L area.

【0042】分布カウントメモリ11は、図6に示すよ
うに、データメモリ10と同様にH領域とL領域に分か
れており、そして、この領域は分布カウントスタート領
域と分布カウントエンド領域とに分かれている。分布カ
ウントメモリ11は、この実施例では、データメモリ1
0の夫々のZ値領域に格納された8ビットのデータに対
応して0から255のアドレスを持ち、分布カウントス
タート領域にそのアドレスの値のデータの先頭アドレス
を持つ。そして分布カウントエンド領域にそのアドレス
の値の終点アドレスを持つ。
As shown in FIG. 6, the distribution count memory 11 is divided into an H area and an L area as in the data memory 10, and this area is divided into a distribution count start area and a distribution count end area. I have. In this embodiment, the distribution count memory 11 is the data memory 1
It has addresses from 0 to 255 corresponding to the 8-bit data stored in the respective Z value areas of 0, and has the head address of the data of the address value in the distribution count start area. The distribution count end area has the end point address of the address value.

【0043】クリップ制御回路16は前述した3Dクリ
ッピング又はピッキング処理をするために、予め削除す
るZ値領域が指定されており、その指定領域をHソート
処理回路15に送る。
The clip control circuit 16 specifies a Z value area to be deleted in advance to perform the above-described 3D clipping or picking processing, and sends the specified area to the H sort processing circuit 15.

【0044】Hソート処理回路15はデータメモリ10
に格納されたH領域のソート処理として、分布カウント
メモリ11のH領域、データメモリのH領域のNEXT
ポインタ領域に夫々データを書き込む。更に、Hソート
処理回路15は、ソートした領域がクリッピング処理の
対象になっているか否か判断し、対象になっている領域
に対しては、Lソート処理回路18におけるソート処理
が行わないように制御される。また、L側ソート処理回
路間はデータメモリ10に格納されたL領域のソート処
理として、分布カウントメモリ11のH領域、データメ
モリのL領域のNEXTポインタ領域に夫々データを書
き込む。
The H sort processing circuit 15 includes a data memory 10
As the sort processing of the H area stored in the storage area, NEXT of the H area of the distribution count memory 11 and the H area of the data memory
Write data to each of the pointer areas. Further, the H sort processing circuit 15 determines whether or not the sorted area is a target of clipping processing, and controls the L sort processing circuit 18 not to perform the sort processing on the target area. Controlled. In addition, between the L-side sort processing circuits, data is written to the H area of the distribution count memory 11 and the NEXT pointer area of the L area of the data memory as the sort processing of the L area stored in the data memory 10, respectively.

【0045】次にこの発明のソート動作につき説明す
る。図3はこのソート動作を示すフローチャート図であ
る。画像情報供給装置5からソーティング対象となる複
数の基準軸データ(Z値データ)が入力されると、その
入力順に1〜Nのその基準値データに対応したデータ番
号が割り振られ、アドレス生成回路にてデータ番号ポイ
ンタによってアドレス指定される1〜NのH領域に基準
値データの上位の8ビットのデータが、1〜NのL領域
に基準値データの下位の8ビットのデータが順次格納さ
れる(ステップS1)。
Next, the sorting operation of the present invention will be described. FIG. 3 is a flowchart showing this sort operation. When a plurality of reference axis data (Z value data) to be sorted is input from the image information supply device 5, data numbers 1 to N corresponding to the reference value data are assigned in the input order, and the data numbers are assigned to the address generation circuit. The upper 8 bits of the reference value data are sequentially stored in the 1 to N H areas addressed by the data number pointer, and the lower 8 bits of the reference value data are sequentially stored in the 1 to N L areas. (Step S1).

【0046】このようにして、データメモリ10内へソ
ーティング対象となる複数のZ値データの格納が終了す
ると、Hソート処理回路15によりH領域のソート処理
を行う(ステップS2)。このH領域のソート処理は、
データメモリ10からH領域に格納されたZ値データが
1〜Nのデータ番号順に順に読み出され、分布カウント
メモリ11の分布カウントスタート領域とエンド領域に
向け出力される。
When the storage of the plurality of Z-value data to be sorted in the data memory 10 is completed in this way, the H sort processing circuit 15 sorts the H area (step S2). This H area sorting process
The Z value data stored in the H area is sequentially read from the data memory 10 in the order of data numbers 1 to N, and output to the distribution count start area and the end area of the distribution count memory 11.

【0047】この実施例において、Z値データの読み出
しは、データ番号ポインタ読み出しアドレスとしてデー
タ番号が1〜Nの順で順次出力されることにより行われ
る。そして、データ番号によりアドレスが指定される
と、指定されたZ値データのH領域から分布カウントメ
モリ11の分布カウントスタート領域とエンド領域に向
けZ値データが読み出される。
In this embodiment, the reading of the Z value data is performed by sequentially outputting the data numbers in the order of 1 to N as the data number pointer read address. Then, when an address is specified by the data number, the Z value data is read from the H area of the specified Z value data to the distribution count start area and the end area of the distribution count memory 11.

【0048】分布カウントメモリ11の分布カウントス
タート領域とエンド領域は、Z値データが取り得る値の
全てに1対1に対応する領域を有する。
The distribution count start area and the end area of the distribution count memory 11 have areas corresponding one-to-one to all possible values of the Z value data.

【0049】実施例のように、Z値データのHビットが
8ビットで構成されている場合には、0,1,2…25
5の合計256個の値を取り得る。従って、分布カウン
トメモリ11の分布カウントスタート領域とエンド領域
は0,1,2…255の各アドレスで指定される256
個の記憶エリアが夫々設けられている。
When the H bits of the Z value data are composed of 8 bits as in the embodiment, 0, 1, 2,.
5 for a total of 256 values. Therefore, the distribution count start area and the end area of the distribution count memory 11 are designated by the addresses 0, 1, 2,.
Storage areas are provided.

【0050】分布カウントメモリ11の分布カウントス
タート領域とエンド領域には、データメモリ10から出
力されるZ値データのデータ番号が書き込まれる。この
実施例において、データ番号は1〜Nで表され、その最
大値はNである。
The data number of the Z value data output from the data memory 10 is written in the distribution count start area and the end area of the distribution count memory 11. In this embodiment, the data numbers are represented by 1 to N, and the maximum value is N.

【0051】そして、データメモリ10から分布カウン
トメモリ11の分布カウントスタート領域とエンド領域
にZ値が入力されると、これら分布カウントスタート領
域とエンド領域は対応するアドレス生成回路17のアド
レスポインタによって指定される記憶領域にそのZ値の
データ番号の書き込みを行う。
When the Z value is input from the data memory 10 to the distribution count start area and the end area of the distribution count memory 11, the distribution count start area and the end area are designated by the address pointer of the corresponding address generation circuit 17. The data number of the Z value is written in the storage area to be written.

【0052】この実施例において、データの書き込みは
次のように行われる。即ち、データメモリ10から、ア
ドレス生成回路13のデータ番号ポインタによって指定
されるデータ番号のZ値データが出力されると、そのZ
値データはアドレス生成回路17のアドレスポインタに
セットされ、このアドレスポインタからは、セットされ
たZ値データが書き込みアドレスとして出力される。そ
して、この書き込みアドレスによって指定される分布カ
ウントメモリ11の分布カウントスタート領域とエンド
領域に、データ番号ポインタによって指定されるデータ
番号(Z値に対応するデータ番号)が書き込まれること
になる。
In this embodiment, data writing is performed as follows. That is, when the Z value data of the data number designated by the data number pointer of the address generation circuit 13 is output from the data memory 10,
The value data is set in an address pointer of the address generation circuit 17, and the set Z value data is output from the address pointer as a write address. Then, the data number (data number corresponding to the Z value) specified by the data number pointer is written in the distribution count start area and the end area of the distribution count memory 11 specified by the write address.

【0053】ここにおいて、分布カウントメモリ11の
分布カウントスタート領域は一旦データ番号が記憶され
ると、データメモリ10から同じ値の新たなZ値データ
が順次出力されても、新たなデータ番号は重ね書きされ
ないように構成されている。これに対して、分布カウン
トエンド領域は、一旦データ番号が記憶されても、次に
データメモリ10から同じ値のZ値が出力されると、そ
のZ値のデータ番号が新たに更新記憶されるように構成
されている。
Here, once the data number is stored in the distribution count start area of the distribution count memory 11, even if new Z-value data of the same value is sequentially output from the data memory 10, the new data number overlaps. It is configured not to be written. On the other hand, even if a data number is once stored in the distribution count end area, when the same Z value is output from the data memory 10 next time, the data number of the Z value is newly updated and stored. It is configured as follows.

【0054】分布カウントスタート領域には、このZ値
が始めて出現した時のデータ番号が記憶される。これに
対し分布カウントエンド領域には、各Z値が最後に出現
した時のデータ番号が記憶されることになる。
In the distribution count start area, a data number when the Z value first appears is stored. On the other hand, in the distribution count end area, the data number at the time when each Z value appears last is stored.

【0055】そして分布カウントエンド領域の内容が更
新記録されると、更新記録前のデータ番号がアドレスポ
インタに設定されデータメモリ10のNEXTポインタ
領域のアドレス指定が行われる。そして、指定されたN
EXTポインタ領域には更新後の新たなデータ番号が書
き込まれる。
When the contents of the distribution count end area are updated and recorded, the data number before the update recording is set in the address pointer, and the address of the NEXT pointer area of the data memory 10 is specified. And the specified N
A new data number after the update is written in the EXT pointer area.

【0056】このためデータメモリ10内には次にアク
セスするアドレスを保有する領域であるNEXTポイン
タ領域が設けられている。
For this reason, a NEXT pointer area is provided in the data memory 10 as an area holding an address to be accessed next.

【0057】データメモリ10より、Z値を読み出し、
分布カウントメモリの分布カウントスタート領域又は分
布カウントエンド領域若しくはデータメモリ100NE
XTポインタ領域に夫々データ番号を設定する。すなわ
ち、NEXTポインタ領域はZ値データ読出し、そのデ
ータ番号を書き込み時、分布カウントメモリ11の分布
カウントスタート値がすでに設定されている時に分布カ
ウントエンド領域の値の示すアドレス値に設定する。こ
のNEXTポインタ領域の設定は分布カウントスタート
領域、エンド領域の設定時に行われる。
The Z value is read from the data memory 10,
Distribution count start area or distribution count end area of distribution count memory or data memory 100NE
A data number is set in each of the XT pointer areas. That is, the NEXT pointer area reads out the Z value data, writes the data number, and sets the distribution count end value to the address value indicated by the value of the distribution count end area when the distribution count start value of the distribution count memory 11 has already been set. The setting of the NEXT pointer area is performed when the distribution count start area and the end area are set.

【0058】そして、ソート処理は、分布カウントメモ
リ11の最小アドレスから分布カウントスタート領域の
データ値を読み出し、もし、NEXTポインタが設定さ
れていれば、NEXTポインタ値を連鎖し、読み出すも
のである。
In the sorting process, the data value of the distribution count start area is read from the minimum address of the distribution count memory 11, and if the NEXT pointer is set, the NEXT pointer values are chained and read.

【0059】更に、この実施例における、データメモリ
10、分布カウントメモリ11のH側及びL側の領域の
夫々の関係は、まず、H側領域の分布カウントスタート
領域、エンド領域並びにNEXTポインタ領域に夫々デ
ータを格納した後、H側領域を上記ソート処理により処
理し、そのソートされたデータをL側領域の分布カウン
トスタート領域、エンド領域並びにNEXTポインタ領
域に夫々前述した様にデータを設定する。
Further, in this embodiment, the respective relationships between the H-side and L-side areas of the data memory 10 and the distribution count memory 11 are as follows: the distribution count start area, the end area, and the NEXT pointer area of the H side area. After storing the respective data, the H-side area is processed by the above-described sort processing, and the sorted data is set in the distribution count start area, the end area, and the NEXT pointer area of the L-side area as described above.

【0060】このため分布カウントスタート領域及びエ
ンド領域の同じアドレスには、データメモリ10から同
じ値のZ値が一回しか出力されない場合には同じデータ
番号が書き込まれることになるが、同じ値のZ値が複数
回にわたって出力されると、最終的には異なるデータ番
号が記憶されることになる。
Therefore, when the same value Z is output from the data memory 10 only once at the same address in the distribution count start area and the end area, the same data number is written. When the Z value is output a plurality of times, different data numbers will be finally stored.

【0061】従って、分布カウントメモリ11の分布カ
ウントエンド領域の値が、複数回にわたって更新記録さ
れた場合に、この更新がどのように行なわれたかが判れ
ば、基準値データを昇順又は降順にソーティングした時
の各基準値データのデータ番号の並びが判明する。
Therefore, when the value of the distribution count end area of the distribution count memory 11 is updated and recorded a plurality of times, if it is known how this update is performed, the reference value data is sorted in ascending or descending order. The sequence of the data numbers of each reference value data at the time is determined.

【0062】このようにして分布カウントエンド領域が
更新記録されるとその更新履歴はデータメモリ10内の
NEXTポインタ領域に順次書き込まれることになる。
When the distribution count end area is updated and recorded in this way, the update history is sequentially written to the NEXT pointer area in the data memory 10.

【0063】以上説明したようにこの実施例によれば、
データメモリ10からデータ番号順にZ値データが出力
されると、出力されたZ値データを書き込みアドレスと
して、そのデータ番号が分布カウントスタート領域、分
布カウントエンド領域に書き込まれ、更にこれに付随し
て分布カウントエンド領域からデータメモリ10のNE
XTポインタ領域へのデータ転送書き込みが行われる。
As described above, according to this embodiment,
When the Z-value data is output from the data memory 10 in the order of the data numbers, the output Z-value data is used as a write address, and the data numbers are written into the distribution count start area and the distribution count end area. NE of data memory 10 from distribution count end area
Data transfer writing to the XT pointer area is performed.

【0064】このようなデータ転送が開始されると、H
ソート回路15は次のような転送制御を行う。
When such data transfer is started, H
The sort circuit 15 performs the following transfer control.

【0065】分布カウントエンド領域に記憶されたデー
タ番号がアドレス生成回路13にセットされる。このア
ドレス生成回路13によりアドレス指定されるNEXT
ポインタ領域にその指定アドレスと所定の対応関係にあ
る分布カウントスタート領域のデータ番号を書き込む。
The data number stored in the distribution count end area is set in the address generation circuit 13. NEXT addressed by this address generation circuit 13
The data number of the distribution count start area having a predetermined correspondence with the designated address is written in the pointer area.

【0066】このようなデータ番号の書き込みはデータ
を昇順にソーティングする場合と、降順にソーティング
する場合とでは若干異なるが、ここではデータを昇順に
ソーティングする場合を例にとり説明する。
The writing of the data numbers is slightly different between the case where the data is sorted in ascending order and the case where the data is sorted in descending order. Here, the case where the data is sorted in ascending order will be described as an example.

【0067】例えば、アドレス0で指定される分布カウ
ントエンド領域にデータ番号が記憶されている時には、
まずアドレス0番地に記憶されているデータ番号がアド
レスポインタにセットされる。
For example, when a data number is stored in the distribution count end area specified by the address 0,
First, the data number stored at address 0 is set in the address pointer.

【0068】そして、アドレス1で指定される分布カウ
ントスタート領域からデータ番号が読み出され、このデ
ータ番号が、アドレスポインタで指定されるデータメモ
リ10のNEXTポインタ領域に書き込まれる。
Then, the data number is read from the distribution count start area specified by the address 1, and this data number is written to the NEXT pointer area of the data memory 10 specified by the address pointer.

【0069】また、この時アドレス1で指定される分布
カウントスタート領域にデータ番号が記憶されていない
場合には、アドレス2で指定される記憶エリアからデー
タ番号を読み出し、データメモリのNEXTポインタ領
域に書き込む。また、アドレス2で指定される分布カウ
ントスタート領域にもデータ番号が記憶されていない場
合には、データが見つかるまで同様にアドレス3、アド
レス4、………と順次アドレスをインクリメントしてい
く。
At this time, if the data number is not stored in the distribution count start area specified by the address 1, the data number is read from the storage area specified by the address 2 and is stored in the NEXT pointer area of the data memory. Write. If no data number is stored in the distribution count start area designated by address 2, the address is sequentially incremented in the same manner as address 3, address 4,... Until data is found.

【0070】そしてアドレスKで指定される記憶エリア
からデータ番号が読み出されると、このデータ番号がア
ドレスポインタで指定されるデータメモリ10のNEX
Tポインタ領域に書き込まれる。
When the data number is read from the storage area specified by the address K, the data number is stored in the NEX of the data memory 10 specified by the address pointer.
It is written to the T pointer area.

【0071】このような読み出し書き込みが完了する
と、次にアドレスKで指定される分布カウントエンド領
域からデータ番号が読み出され、それを書き込みアドレ
スとして前回と同様ようにしてデータメモリ10のNE
XTポインタ領域へのデータの書き込みが行われる。
When such reading and writing are completed, the data number is read from the distribution count end area designated by the address K, and the data number is used as the write address in the same manner as the previous time.
Data is written to the XT pointer area.

【0072】この実施例における装置は、このようなチ
ェインデータ番号を記録するNEXTポインタ領域への
データの書き込みを繰り返して行う。
The device in this embodiment repeatedly writes data in the NEXT pointer area for recording such a chain data number.

【0073】データメモリ10の上位8ビット、すなわ
ちH領域のソーティングが終了すると、そのソート結果
をソートメモリ12のH領域にソートアドレスとして格
納する。
When the sorting of the upper 8 bits of the data memory 10, ie, the H area, is completed, the result of the sorting is stored in the H area of the sort memory 12 as a sort address.

【0074】そして、この実施例においてはクリップ制
御回路16によって指定された領域があるか否かが判断
される。(ステップS3)例えばH側の0〜Nまでの範
囲で昇順にソーティング処理され、そして、そのH側の
0番地のデータを読み出し、そのデータがクリッピング
されるか否か判断される。そして、クリッピングされる
場合には、そのデータの下位8ビットすなわちL領域の
ソーティングは行わず、次のH領域のZ値に対応する処
理が行われる。
Then, in this embodiment, it is determined whether or not there is an area designated by the clip control circuit 16. (Step S3) For example, sorting processing is performed in ascending order in the range of 0 to N on the H side, and the data at address 0 on the H side is read, and it is determined whether or not the data is clipped. When clipping is performed, the lower 8 bits of the data, that is, sorting of the L area is not performed, and processing corresponding to the Z value of the next H area is performed.

【0075】そのソートメモリ12のH領域のソートア
ドレス領域から読み出したアドレスがデータメモリ10
のデータ番号に相当する。今、H領域より0番地のデー
タが読み出されその領域がクリッピング対象とならない
場合にはL領域のソーティング処理が行われる(ステッ
プS4)。
The address read from the sort address area in the H area of the sort memory 12 is
Data number. Now, data at address 0 is read from the H area, and if that area is not to be clipped, the L area is sorted (step S4).

【0076】そして、L側ソート処理回路18におい
て、前述したデータメモリ10の今度はL領域に格納さ
れたZ値データが読み出され、そのデータが分布カウン
トメモリ11の分布カウントスタート領域及び分布カウ
ントエンド領域に格納され、同じくデータメモリ10の
NEXTポインタ領域、すなわちL領域のNEXTポイ
ンタ領域に格納される。この動作は前述のH領域のデー
タ書き込み処理と同様にして行われる。すなわちH領域
の処理はデータメモリ10のH領域、分布カウントメモ
リ11の分布カウントスタート領域、分布カウントエン
ド領域のH領域を使い、データメモリ10のNEXTポ
インタ領域へチェィンデータの書き込みが行われる。こ
れに対して、L領域のデータについては、H側のソート
処理によりソートされたデータを用いてデータメモリ1
0のL領域のZ値データを読み出し、そのデータに従っ
て分布カウントメモリ11のL領域の分布カウントスタ
ート領域、分布カウントエンド領域に夫々データ番号を
格納し、そしてデータメモリ10のL領域のNEXTポ
インタ領域に、そのチェィンデータを書き込む。そし
て、分布カウントメモリ11の最小アドレスから分布カ
ウントスタート値を読み出し、もしNEXTポインタ領
域にデータが設定されていれば、NEXTポインタ値を
チェインして、ソート処理が行われる。
Then, in the L side sort processing circuit 18, the Z value data stored in the L area of the data memory 10 described above is read out, and the data is distributed to the distribution count start area and the distribution count area of the distribution count memory 11. The data is stored in the end area, and is similarly stored in the NEXT pointer area of the data memory 10, that is, the NEXT pointer area of the L area. This operation is performed in the same manner as the above-described H area data write processing. That is, the processing of the H area uses the H area of the data memory 10 and the H area of the distribution count start area and the distribution count end area of the distribution count memory 11 to write the chain data to the NEXT pointer area of the data memory 10. On the other hand, for the data in the L area, the data stored in the data memory 1 using the data sorted by the sorting process on the H side.
The Z value data of the L area of 0 is read out, the data numbers are stored in the distribution count start area and the distribution count end area of the L area of the distribution count memory 11 according to the data, and the NEXT pointer area of the L area of the data memory 10 is stored. The chain data. Then, a distribution count start value is read from the minimum address of the distribution count memory 11, and if data is set in the NEXT pointer area, the NEXT pointer value is chained and sorting is performed.

【0077】即ち、この発明においては、まずH領域す
なわちデータの上位8ビットに関してソーティング処理
を行い、そして、そのソーティング処理が行われた段階
でクリッピングする必要があるデータか否かを判断し、
そのデータがクリッピングする必要がないものに関し、
次のL側ソート処理を行うものである。そして、L側ソ
ート処理も同じくH側領域と同様の処理を行ってソーテ
ィングが完了するわけである。そしてソーティングされ
た結果を同じくソートメモリのL領域のソートアドレス
領域に書き込んで(ステップS5)、そして、全てのデ
ータに対してソートされたか否か判断し、全てのデータ
がソーティングされるまでクリッピングが必要か否かと
いう処理判断からL側ソートを繰り返す。
That is, in the present invention, sorting processing is first performed on the H area, that is, the upper 8 bits of data, and it is determined whether or not the data needs to be clipped at the stage when the sorting processing has been performed.
For those whose data does not need to be clipped,
The next L-side sorting process is performed. In the L-side sorting process, the same processing as that for the H-side area is performed, and the sorting is completed. Then, the sorted result is similarly written into the sort address area of the L area of the sort memory (step S5), and it is determined whether or not all the data has been sorted. Clipping is performed until all the data is sorted. The L-side sorting is repeated from the processing determination as to whether or not it is necessary.

【0078】全てのソーティングが終了すると、動作が
終了するものである。
When all sorting is completed, the operation is completed.

【0079】次に、このようなソーティング回路を用い
て画像情報供給装置5から出力される16個のZ値デー
タを昇順にソーティングする場合を例に取り説明する。
Next, a case where 16 sorts of Z value data output from the image information supply device 5 are sorted in ascending order using such a sorting circuit will be described as an example.

【0080】この実施例においては、16個のZ値デー
タをソーティング対象とするためデータメモリ10は1
〜16のデータ番号で指定されるH領域のZ値領域とL
領域のZ値領域を有するように形成すれば良い。また、
Z値データは前述したように8ビット×2、即ちH領域
に8ビット、L領域に8ビットのデータで構成されてい
る。
In this embodiment, since 16 pieces of Z value data are to be sorted, the data memory 10 has one
Z value area and L value of H area specified by data numbers
What is necessary is just to form so that it may have a Z value area | region. Also,
As described above, the Z value data is composed of 8 bits × 2, that is, 8 bits in the H area and 8 bits in the L area.

【0081】まず画像情報供給装置5からデータメモリ
10に向け、上位の8ビット、即ちH値のデータが、
1、2、4、5、3、0、0、1、5、6、7、9、1
0、1、2、1の順で入力されると、入力されたZ値デ
ータは順次1、2、3…のデータ番号をアドレスするH
領域の記憶エリアに書き込まれることになる。
First, from the image information supply device 5 to the data memory 10, the upper 8 bits, that is, the data of the H value,
1, 2, 4, 5, 3, 0, 0, 1, 5, 6, 7, 9, 1,
When input is performed in the order of 0, 1, 2, 1, the input Z value data sequentially addresses data numbers 1, 2, 3,.
It will be written to the storage area of the area.

【0082】また下位8ビット即ちL領域のデータが
5、6、3、1、5、4、10、2、8、5、7、1、
1、2、7、5の順で入力されると、入力されたZ値デ
ータは順次L領域の1、2、3、4、5…のデータ番号
をアドレスする記憶エリアに書き込まれることになる。
The lower 8 bits, that is, the data in the L area is 5, 6, 3, 1, 5, 4, 10, 2, 8, 5, 7, 1,.
When the data is input in the order of 1, 2, 7, and 5, the input Z value data is sequentially written to the storage areas addressing the data numbers of 1, 2, 3, 4, 5,... In the L area. .

【0083】このようにして、データメモリ10内のL
領域、H領域にZ値データが書き込まれると、このZ値
データのソーティングをZ値データそのものではなくデ
ータ番号を用いて行う。
As described above, L in the data memory 10 is
When the Z value data is written in the area and the H area, the sorting of the Z value data is performed using the data number instead of the Z value data itself.

【0084】このようにすることにより、ソーティング
対象となるZ値データの桁数が多い場合でも、このZ値
データのソーティングを簡単な回路で高速に行うことが
できる。
Thus, even when the Z-value data to be sorted has a large number of digits, the Z-value data can be sorted at a high speed with a simple circuit.

【0085】この実施例においては、このようにZ値デ
ータメモリ10内にZ値が書き込まれると、このデータ
メモリ10からそのデータ番号順にZ値が順次読み出さ
れる。図19はデータメモリ10に画像供給装置50か
ら転送されたZ値データが書き込まれた状態を示す模式
図である。
In this embodiment, when the Z value is written in the Z value data memory 10 as described above, the Z value is sequentially read from the data memory 10 in the order of the data number. FIG. 19 is a schematic diagram showing a state in which the Z-value data transferred from the image supply device 50 has been written into the data memory 10.

【0086】この実施例においては、このようにデータ
メモリ10内にZ値データが書き込まれると、このデー
タメモリ10からデータ番号順に順次読み出される。ま
ずH領域のみ読み出され、図20〜図35に示すように
H領域のソート処理が行なわれる。
In this embodiment, when the Z value data is written in the data memory 10 as described above, the data is sequentially read from the data memory 10 in the order of the data number. First, only the H area is read out, and the H area is sorted as shown in FIGS.

【0087】図20に示すように、データメモリ10か
らまずデータ番号1、即ちアドレス1で特定されるZ値
データ1が出力されると、このZ値データ1をアドレス
として分布カウントスタート領域及びエンド領域にデー
タ番号1が書き込まれる。
As shown in FIG. 20, when data number 1, that is, Z-value data 1 specified by address 1 is output from data memory 10, the distribution count start area and the end of distribution count are set using this Z-value data 1 as an address. Data number 1 is written in the area.

【0088】H領域のソート処理が続行され、図21に
示すように、データ番号2で特定されるZ値データ2を
アドレスとして、分布カウントスタート領域及び分布カ
ウントエンド領域にデータ番号2が入力される。続い
て、図22に示すように、データ番号3で特定されるZ
値データ4が出力されると、このZ値データ4をアドレ
スとして、分布カウントスタート領域及びエンド領域に
データ番号3が入力される。
The sort processing of the H area is continued, and as shown in FIG. 21, the data number 2 is input to the distribution count start area and the distribution count end area using the Z value data 2 specified by the data number 2 as an address. You. Subsequently, as shown in FIG.
When the value data 4 is output, the data number 3 is input to the distribution count start area and the end area using the Z value data 4 as an address.

【0089】図23〜図25に示すように、データ番号
4〜6まで、順次同様に分布カウントスタート領域及び
エンド領域に夫々のデータ番号が格納される。
As shown in FIGS. 23 to 25, data numbers 4 to 6 are sequentially stored in the distribution count start area and the end area in the same manner.

【0090】図26に示すように、データ番号7で特定
されるZ値データ0をアドレスとして、分布カウントス
タート領域及び分布カウントエンド領域にデータ番号2
が入力される。この時分布カウントスタート領域には既
にデータ番号が書き込まれているために、新たなデータ
番号の書き込みは行われない。これに対して、分布カウ
ントエンド領域には前のデータ番号6を新たなデータ番
号7に更新記録する。このためデータメモリ10のNE
XTポインタ領域には更新前のデータ番号6をアドレス
として、更新後のデータ番号7が書き込まれることにな
る。
As shown in FIG. 26, with the Z value data 0 specified by the data number 7 as an address, the data number 2 is stored in the distribution count start area and the distribution count end area.
Is entered. At this time, since a data number has already been written in the distribution count start area, no new data number is written. On the other hand, the previous data number 6 is updated to the new data number 7 in the distribution count end area. Therefore, NE of the data memory 10
The updated data number 7 is written in the XT pointer area using the data number 6 before the update as an address.

【0091】次に、図27に示すように、データ番号8
で特定されるZ値データ0をアドレスとして、分布カウ
ントスタート領域及び分布カウントエンド領域にデータ
番号1が入力される。この時分布カウントスタート領域
には既にデータ番号が書き込まれているために、新たな
データ番号の書き込みは行われない。これに対して、分
布カウントエンド領域には前のデータ番号1を新たなデ
ータ番号8に更新記録する。このためデータメモリ10
のNEXTポインタ領域には更新前のデータ番号1をア
ドレスとして、更新後のデータ番号8が書き込まれるこ
とになる。
Next, as shown in FIG.
The data number 1 is input to the distribution count start area and the distribution count end area using the Z value data 0 specified by the address as an address. At this time, since a data number has already been written in the distribution count start area, no new data number is written. On the other hand, the previous data number 1 is updated to the new data number 8 in the distribution count end area. Therefore, the data memory 10
In the NEXT pointer area, the updated data number 8 is written using the data number 1 before update as an address.

【0092】次に、図28に示すように、データメモリ
10からデータ番号9で特定されるZ値データ5が読み
出される。このZ値データ5をアドレスとして分布カウ
ントスタート領域及び分布カウントエンド領域にそのデ
ータが書き込まれる。この時分布カウントスタート領域
には既にデータ番号が書き込まれているため、新たなデ
ータ番号の書き込みは行われず、これに対しエンド領域
には前のデータ4を新たなデータ番号9に書替え、更新
記録する。そしてデータメモリ10のNEXTポインタ
領域には更新前のデータ番号4をアドレスとして更新後
データ番号9が書き込まれる。
Next, as shown in FIG. 28, the Z value data 5 specified by the data number 9 is read from the data memory 10. Using the Z value data 5 as an address, the data is written to the distribution count start area and the distribution count end area. At this time, since a data number has already been written in the distribution count start area, a new data number is not written. On the other hand, the previous data 4 is rewritten to a new data number 9 in the end area, and update recording is performed. I do. Then, the updated data number 9 is written in the NEXT pointer area of the data memory 10 using the data number 4 before the update as an address.

【0093】以下同様にして、図29〜図35に示すよ
うに、データメモリ10のデータ番号9〜6までデータ
を読み出し、そして分布カウントスタート領域及び分布
カウントエンド領域に夫々データを書き込むと共に、既
に分布カウントスタート領域にデータが書き込まれてい
る場合には、そのデータは書き替えずに更新前のデータ
の番号をアドレスをして、更新後のデータ番号をNEX
Tポインタ領域に書き込んでいく。このようにH領域の
みソートした結果を図35に示す。
Similarly, as shown in FIGS. 29 to 35, data is read from data numbers 9 to 6 of the data memory 10, and data is written in the distribution count start area and the distribution count end area, respectively. If data has been written to the distribution count start area, the data is not rewritten and the data number before update is addressed, and the data number after update is NEX.
Writing is performed in the T pointer area. FIG. 35 shows the result of sorting only the H region in this manner.

【0094】このような一連の書き込み作業により、Z
値データをアドレスとする分布カウントスタート領域に
は各Z値が最初に出現した時のデータ番号が書き込まれ
ることになる。
By such a series of writing operations, Z
The data number at the time when each Z value first appears is written in the distribution count start area having value data as an address.

【0095】またZ値データをアドレスとする分布カウ
ントエンド領域には各Z値の値が最後に出現した時のデ
ータ番号が記憶されることになる。
In the distribution count end area having the Z value data as an address, the data number when the value of each Z value appears last is stored.

【0096】更に、データ番号をアドレスとするNEX
Tポインタ領域にはカウントエンド領域のデータが更新
記憶される毎に、更新前のデータ番号をアドレスとして
更新後のデータ番号が順次書き込まれることになる。従
って、データメモリ10aから同じZ値データが複数回
出力されると、このNEXTポインタ領域にはそのZ値
データがどのようなデータ番号順に出力されたかの履歴
が記録されることになる。
Further, NEX using a data number as an address
Each time the data in the count end area is updated and stored in the T pointer area, the updated data number is sequentially written using the data number before update as an address. Therefore, when the same Z value data is output from the data memory 10a a plurality of times, a history of the data number order of the Z value data is recorded in the NEXT pointer area.

【0097】このようにして、Z値データが読み出され
ると、読み出されたZ値をアドレスとして対応するデー
タ番号が分布カウントメモリの分布カウントスタート領
域及びエンド領域に書き込まれる。従ってデータメモリ
10からまずデータ番号1、即ちアドレス1で特定され
るZ値データ1が出力されると、このZ値データ1をア
ドレスとして分布カウントスタート領域及びエンド領域
にデータ番号1が書き込まれる。
When the Z value data is read in this way, the corresponding data number is written into the distribution count start area and the end area of the distribution count memory using the read Z value as an address. Accordingly, when the data number 1, that is, the Z value data 1 specified by the address 1 is output from the data memory 10, the data number 1 is written in the distribution count start area and the end area using the Z value data 1 as an address.

【0098】次に、H領域のZ値が0の値のものに対し
て、ソートを行う場合につき、図36を参照して説明す
る。まずH領域の分布カウントスタートメモリのアドレ
ス0の領域のデータ番号を読み出す。この場合アドレス
0は、データ番号は6であるのでソートアドレスに6が
書き込まれる。
Next, the case where the Z value of the H area is a value of 0 will be described with reference to FIG. First, the data number of the address 0 area of the distribution count start memory of the H area is read. In this case, since the data number of address 0 is 6, 6 is written in the sort address.

【0099】そして、Hデータ6の領域のNEXTポイ
ンタを読み出し、そのNEXTポインタ領域が7を示す
ので、そのデータ番号7のNEXTポインタを読みだ
す。この場合7のNEXTポインタには何も書かれてい
ないので、ソートアドレスにはそのデータ番号7を書き
込み、H領域0に相当する全てのデータが書き込まれる
ことになり、カウンタ値(CNTX)にソートアドレス
データ数2がセットされ、L領域の処理へ移る。
Then, the NEXT pointer of the area of the H data 6 is read, and since the NEXT pointer area indicates 7, the NEXT pointer of the data number 7 is read. In this case, since nothing is written in the NEXT pointer of 7, the data number 7 is written in the sort address, and all data corresponding to the H area 0 is written, and the data is sorted into the counter value (CNTX). The address data number 2 is set, and the process proceeds to the L area.

【0100】まずデータ番号6のデータメモリ10で特
定されるL値のデータ番号4が読み出されると、このデ
ータ番号4をアドレスとして分布カウントスタート領域
4に6を分布カウントエンド領域に6を書き込む。
First, when the data number 4 of the L value specified by the data memory 10 of data number 6 is read, 6 is written in the distribution count start area 4 and 6 is written in the distribution count end area using the data number 4 as an address.

【0101】次にデータメモリ10のL領域からデータ
番号7で特定されるデータ番号10が出力されると、こ
のデータ番号10をアドレスとして分布カウントスター
ト領域及び分布カウントエンド領域に7のデータを書き
込み、CNTXだけのデータを処理したので、H領域0
に対するL領域のソートを終了し、CNTX2にソート
アドレスL領域のデータ数をセットする。
Next, when the data number 10 specified by the data number 7 is output from the L area of the data memory 10, the data of 7 is written into the distribution count start area and the distribution count end area using the data number 10 as an address. , CNTX only, the H area 0
Is completed, and the number of data items in the sort address L area is set in CNTX2.

【0102】次に、H領域が1の場合のL領域のソート
につき図38を参照して説明する。
Next, the sorting of the L area when the H area is 1 will be described with reference to FIG.

【0103】分布カウントスタート領域のアドレス1で
指定するデータ番号1をソートアドレス1に書き込み、
そしてそのアドレス1に書き込まれているNEXTポイ
ンタを読み出す。この場合NEXTポインタにはデータ
番号8が書き込まれているので、データ番号8をソート
アドレスに書き込むと共にアドレス8に書き込まれたN
EXTポインタ領域のデータ番号14を読み出す。そし
てデータ番号14をソートアドレスに書き込むと共にそ
のデータ番号14が示すNEXTポインタのデータ番号
16をソートアドレスに書き込むと共に、そのアドレス
16のNEXTポインタには何も書かれていないので、
H領域1に相当する全てのデータがソートアドレスに書
き込まれたことになる。
The data number 1 designated by the address 1 of the distribution count start area is written to the sort address 1,
Then, the NEXT pointer written at the address 1 is read. In this case, since the data number 8 is written in the NEXT pointer, the data number 8 is written in the sort address and the N
The data number 14 in the EXT pointer area is read. Then, the data number 14 is written in the sort address, the data number 16 of the NEXT pointer indicated by the data number 14 is written in the sort address, and nothing is written in the NEXT pointer of the address 16.
This means that all data corresponding to the H area 1 has been written to the sort address.

【0104】そして、まずH領域のソートアドレス1に
書き込まれたデータ番号1のL領域を読み出す。データ
番号1に書き込まれたLデータ5をアドレスとする分布
カウントスタート領域5にデータ番号1を書き込む。そ
して、H領域のアドレス2に書き込まれたデータ番号8
のL領域を読み出す。アドレス8を示すZ値2をアドレ
スとする分布カウントスタート領域及び分布カウントエ
ンド領域にデータ番号8を書き込む。そして、14をア
ドレスとするZ値2を呼出し、そのZ値2をアドレスす
る分布カウントスタート領域及び分布カウントエンド領
域にそのデータ番号14を書き込む。分布カウントスタ
ート領域には既にデータが書き込まれているので書き替
えられず、これに対して、分布カウントエンド領域には
前のデータ番号8を新たなデータ番号14に書き替え
る。このためデータメモリ8のNEXTポインタ領域に
は更新前のデータ番号8をアドレスとして、更新後のデ
ータ番号16が書き込まれる。
Then, first, the L area of data number 1 written in the sort address 1 of the H area is read. The data number 1 is written in the distribution count start area 5 using the L data 5 written in the data number 1 as an address. Then, the data number 8 written at the address 2 in the H area
Is read out. The data number 8 is written in the distribution count start area and the distribution count end area having the Z value 2 indicating the address 8 as an address. Then, the Z value 2 having the address 14 is called, and the data number 14 is written in the distribution count start area and the distribution count end area addressing the Z value 2. Since the data has already been written in the distribution count start area, it is not rewritten. In contrast, in the distribution count end area, the previous data number 8 is rewritten with a new data number 14. Therefore, the updated data number 16 is written in the NEXT pointer area of the data memory 8 using the data number 8 before the update as an address.

【0105】そして、ソートアドレス16に示す分布カ
ウントスタート領域に呼び出す。分布カウントスタート
領域16のデータ番号は5であるのでそれをアドレスと
して、そのデータを分布カウンタスタート領域及びエン
ド領域に書き込む、分布カウンタスタート領域には、既
にデータが書き込まれているので、書き替えられず、こ
れに対して、分布カウントエンド領域には前のデータ番
号1を新たなデータ番号16に書き込まれる。このため
データメモリ1のNEXTポインタ領域には、更新前の
データ番号1をアドレスとして、更新後のデータ番号1
6が書き込まれる。
Then, a call is made to the distribution count start area indicated by the sort address 16. Since the data number of the distribution count start area 16 is 5, it is used as an address and the data is written to the distribution counter start area and end area. Since the data has already been written to the distribution counter start area, the data is rewritten. Instead, the previous data number 1 is written to the distribution count end area as a new data number 16. Therefore, in the NEXT pointer area of the data memory 1, the data number 1 before update is used as an address, and the data number 1 after update is used.
6 is written.

【0106】そして、ソートアドレスのL領域には、ア
ドレス3に分布カウントスタート領域のアドレス2に書
き込まれているデータ8をそして、このエンド領域が1
4を示しているため、データメモリの8のNEXTポイ
ンタ領域に書き込まれているデータ番号14を読み出
し、ソートアドレスのL領域のアドレス4にデータ14
を書き込む。そして次の分布カウントスタート領域のア
ドレス5に書き込まれているデータ番号1をソートアド
レス5に書き込み、分布カウントエンド領域が16を示
しているため、データメモリのアドレス1のNEXTポ
インタ領域に書き込まれていデータ番号16、ソートア
ドレスのアドレス6に書き込み、カウンタCNTX2に
ソートアドレスのL領域のデータ数6をセットする。こ
のようにしてH領域1に対するL領域のソート処理が終
了する。
In the L area of the sort address, the data 8 written in the address 3 of the distribution count start area is stored in the address 3, and the end area is 1
4, the data number 14 written in the NEXT pointer area 8 of the data memory is read, and the data 14 is stored in the address 4 of the L area of the sort address.
Write. Then, the data number 1 written in the address 5 of the next distribution count start area is written in the sort address 5, and since the distribution count end area indicates 16, the data number 1 is written in the NEXT pointer area of the address 1 in the data memory. The data number 16 is written to the address 6 of the sort address, and the number of data 6 in the L area of the sort address is set to the counter CNTX2. Thus, the sorting process for the L region with respect to the H region 1 is completed.

【0107】図39はH領域が2の場合のL領域のソー
トの処理場合を示す。ソートアドレスのH領域にデータ
番号2、15を書き込み、このデータ番号のデータメモ
リのL領域のアドレス2、15を読み出し、前述と同様
にソート処理が行なわれ、図39に示すようにソート処
理したデータが書き込まれる。
FIG. 39 shows a case of sorting the L region when the number of H regions is two. The data numbers 2 and 15 are written in the H area of the sort address, the addresses 2 and 15 in the L area of the data memory of this data number are read, and the sort processing is performed in the same manner as described above, and the sort processing is performed as shown in FIG. Data is written.

【0108】図40には、H領域3の場合のL領域のソ
ート処理が、図41にはH領域4の場合のL領域のソー
ト処理が、図42にはH領域6の場合のL領域のソート
処理が、図43にはH領域7の場合のL領域のソート処
理が、図44にはH領域9の場合のソート処理が示され
る。
FIG. 40 shows a sort process for the L region in the case of the H region 3, FIG. 41 shows a sort process for the L region in the case of the H region 4, and FIG. 43 shows the sorting process for the L region in the case of the H region 7, and FIG. 44 shows the sorting process for the H region 9 in FIG.

【0109】図45には、H領域10の場合、すなわち
全てのソート処理が終了した結果を示す。
FIG. 45 shows the result in the case of the H area 10, that is, the result when all the sort processes have been completed.

【0110】そして、ソートメモリ12のL領域のソー
トアドレスのアドレス1から順に、データの昇順にソー
ト処理が終了して書き込まれる。すなわち、ソートアド
レス12のL領域のアドレス1から順次読み出すことに
より、Z値の小さい順にソーティングされたデータを読
み出すことができる。
Then, the sort processing is completed and written in ascending order of the data in order from address 1 of the sort address in the L area of the sort memory 12. That is, by sequentially reading data from address 1 in the L area of the sort address 12, data sorted in ascending order of the Z value can be read.

【0111】図7は、この発明のソーティング処理装置
の具体的実施例を示すブロック図である。
FIG. 7 is a block diagram showing a specific embodiment of the sorting apparatus according to the present invention.

【0112】図7において、52は第3カウンタであ
り、分布カウントメモリ11のL領域とフラグ2のアク
セスを行う。53は第1カウンタであり、分布カウント
メモリ11のH領域とフラグ1のアクセスを行う。54
はマルチプレクサであり、第1、第3カウンタ53、5
2及びデータメモリ10からマルチプレクサ68を介し
て入力されるデータ入力の中から所定のデータを選択
し、第1レジスタ58へ与える。
In FIG. 7, reference numeral 52 denotes a third counter, which accesses the L area of the distribution count memory 11 and the flag 2. A first counter 53 accesses the H area of the distribution count memory 11 and the flag 1. 54
Is a multiplexer, and the first and third counters 53, 5
2 and predetermined data is selected from the data input input from the data memory 10 via the multiplexer 68 and is supplied to the first register 58.

【0113】67は第3レジスタであり、分布カウント
メモリ11から読み出されたH領域L領域からのデータ
が与えられる。この第3レジスタ67からマルチプレク
サ59にデータが転送される。このマルチプレクサ59
には、第2アドレス変換部66からの出力及びマルチプ
レクサ64で選択されて与えられる第2、第4、第5カ
ウンタ61、62、63からの出力が与えられる。そし
て、マルチプレクサ59は入力された各データの中から
所定のデータを選択して第2レジスタ55に与える。
Reference numeral 67 denotes a third register, to which data from the H area and the L area read from the distribution count memory 11 is given. Data is transferred from third register 67 to multiplexer 59. This multiplexer 59
, The output from the second address converter 66 and the outputs from the second, fourth, and fifth counters 61, 62, and 63 selected and provided by the multiplexer 64. Then, the multiplexer 59 selects predetermined data from the input data and supplies the selected data to the second register 55.

【0114】第2レジスタ55に与えられたデータはデ
ィマルチプレクサ69を介して、データメモリ10及び
ソートメモリ12の所定領域に転送される。
The data given to the second register 55 is transferred to a predetermined area of the data memory 10 and the sort memory 12 via the demultiplexer 69.

【0115】第1アドレス変換部56は、マリィプレク
サ60より送られてくるデータに基づきデータメモリ1
0及びソートメモリ12のH領域(上位アドレス)、L
領域(下位アドレス)のアドレスを出力する。
The first address conversion unit 56 is configured to store the data in the data memory 1 based on the data sent from the multiplexer 60.
0, H area (upper address) of the sort memory 12, L
Outputs the address of the area (lower address).

【0116】この第1アドレス変換部56は、図15に
示すように、レジスタ71、73、74、75とマルチ
プレクサ72を備え、マルチプレクサ60より送られて
くるデータを下位アドレスとして出力し、コントローラ
65により、レジスタ73に与えられるZ値アドレス
値、レジスタ74に与えられるNEXTポインタアドレ
ス値、レジスタ75に与えられるソートアドレス値をマ
ルチプレクサ72で選択することにより、上位アドレス
としてZ値アドレス、NEXTポインタアドレス、ソー
トアドレス値が選択して出力される。
As shown in FIG. 15, the first address conversion section 56 includes registers 71, 73, 74, and 75 and a multiplexer 72, outputs data sent from the multiplexer 60 as a lower address, and By selecting the Z value address given to the register 73, the NEXT pointer address given to the register 74, and the sort address given to the register 75 by the multiplexer 72, the Z value address, the NEXT pointer address, A sort address value is selected and output.

【0117】第2アドレス変換部66は、第1レジスタ
58より送られてくるデータに基づき分布カウントメモ
リ11のH領域(上位アドレス)、L領域(下位アドレ
ス)のアドレスを出力する。
The second address converter 66 outputs the addresses of the H area (upper address) and the L area (lower address) of the distribution count memory 11 based on the data sent from the first register 58.

【0118】この第2アドレス変換部66は、図16に
示すように、レジスタ80、82、83とマルチプレク
サ81を備え、第1レジスタ58より送られてくるデー
タを下位アドレスとして出力し、コントローラ55によ
り、レジスタ82に与えられる分布カウントスタート領
域、レジスタ83に与えられる分布カウントエンド領域
の値を上位アドレスとしてマルチプレクサ81で選択し
て出力する。この第2アドレス変換部66は第1レジス
タ58から転送されたデータを分布カウンタメモリ11
の下位アドレスとして、H/L領域指定と分布カウント
スタートアドレス/分布カウントエンドアドレスの切り
替えを行う。
As shown in FIG. 16, the second address conversion unit 66 includes registers 80, 82, 83 and a multiplexer 81, outputs data sent from the first register 58 as a lower address, and As a result, the value of the distribution count start area given to the register 82 and the value of the distribution count end area given to the register 83 are selected and output by the multiplexer 81 as upper addresses. The second address conversion unit 66 stores the data transferred from the first register 58 in the distribution counter memory 11.
H / L area designation and distribution count start address / distribution count end address are switched.

【0119】57はフラグ検出部であり、第1レジスタ
58の出力に基づいて、分布カウントメモリ11がフラ
グを持っているか否か検出する。
Reference numeral 57 denotes a flag detection unit which detects whether or not the distribution count memory 11 has a flag based on the output of the first register 58.

【0120】このフラグ検出部57は,図14に示すよ
うに、0から255のフリップフロップ群153、16
3、173、183を4群持ち、フリップフロップ群1
53はフラグ1LはH領域の分布カウントメモリ11に
対応し、フリップフロップ群173はフラグ2LはL領
域の分布カウントメモリ11に対応し、0から255の
それぞれの分布カウントメモリ11が値を持っているか
を示す。即ちコントローラ65よりの出力C1がマルチ
プレクサ150を介してデコーダ151又は171に与
えられ、デコーダ151又は171にてデコードされた
フリップフロップ群153又は173がセットされてい
るかにより、そのフリップフロップからの出力がセレク
タ152又は172にて選択され、マルチプレクサ16
0を介して出力される。
As shown in FIG. 14, the flag detecting section 57 includes flip-flop groups 153 and 16 of 0 to 255.
3, 173 and 183, and flip-flop group 1
53 indicates a flag 1L corresponding to the distribution count memory 11 in the H region, a flip-flop group 173 indicates a flag 2L corresponding to the distribution count memory 11 in the L region, and each of the distribution count memories 0 to 255 has a value. To indicate That is, the output C1 from the controller 65 is provided to the decoder 151 or 171 via the multiplexer 150, and the output from the flip-flop is determined depending on whether the flip-flop group 153 or 173 decoded by the decoder 151 or 171 is set. Selector 152 or 172 selects multiplexer 16
0 is output.

【0121】また、フリップフロップ群163は分布カ
ウントメモリ11のフラグ1Hに,フリップフロップ群
183は分布カウントメモリ11のフラグ2Hに対応
し、そのアドレス値が1つだけか、複数かを示す。即ち
コントローラ65よりの出力C1がマルチプレクサ15
0を介してデコーダ161又は181に与えられ、デコ
ーダ161又は181にてデコードされたフリップフロ
ップ群163又は183がセットされているかにより、
そのフリップフロップからの出力がセレクタ162又は
182にて選択され、マルチプレクサ160を介して出
力される。
The group of flip-flops 163 corresponds to the flag 1H of the distribution count memory 11, and the group of flip-flops 183 corresponds to the flag 2H of the distribution count memory 11, and indicates whether the address value is only one or plural. That is, the output C1 from the controller 65 is
0 to the decoder 161 or 181 and whether the flip-flop group 163 or 183 decoded by the decoder 161 or 181 is set.
The output from the flip-flop is selected by the selector 162 or 182 and output via the multiplexer 160.

【0122】そして、コントローラ65からのC1信号
により、H領域を選択し、第3レジスタ67の値によ
り、上記フリップフロップを選択し、コントローラ65
からのW信号により、フリップフロップのセットが行な
われる。
The H area is selected by the C1 signal from the controller 65, and the flip-flop is selected by the value of the third register 67.
, The flip-flop is set.

【0123】61は第2カウンタであり、データメモリ
10のH領域のZ値領域とソートメモリ12のソートア
ドレス領域をアクセスする。
Reference numeral 61 denotes a second counter for accessing the Z value area of the H area of the data memory 10 and the sort address area of the sort memory 12.

【0124】62は第4カウンタであり、ソートメモリ
12のH領域のソートアドレス領域をアクセスする。
Reference numeral 62 denotes a fourth counter, which accesses the sort address area in the H area of the sort memory 12.

【0125】63は第5カウンタであり、ソートメモリ
12のL領域のソートアドレス領域をアクセスする。
Reference numeral 63 denotes a fifth counter, which accesses the sort address area in the L area of the sort memory 12.

【0126】70はクリップフラグ検出部であり、図1
7に示すように、0から255のフリップフロップ群7
03を持ち、フリップフロップにセットされるフラグC
LはH領域の分布カウントメモリ11に対応し、フリッ
プフロップが”1”であれば、その値に対応する領域は
処理する必要がないため、この値を持つアドレスにはL
領域のソート処理を行わないように制御する。即ち入力
されたデータをデコーダ702でデコードし、その対応
するフリップフロップ群703のフリップフロップの出
力がセレクタ704のより出力され、フリップフロップ
の出力が”1”であれば、その値に対応する領域は処理
する必要がないため、この値を持つアドレスにはL領域
のソート処理を行わないように制御する。
Numeral 70 denotes a clip flag detecting unit, which is shown in FIG.
As shown in FIG. 7, a flip-flop group 7 of 0 to 255
03 and the flag C set in the flip-flop
L corresponds to the distribution count memory 11 in the H area, and if the flip-flop is “1”, the area corresponding to that value does not need to be processed, so that an address having this value has L
Control not to perform area sorting. That is, the input data is decoded by the decoder 702, the output of the flip-flop of the corresponding flip-flop group 703 is output from the selector 704, and if the output of the flip-flop is "1", the area corresponding to that value is output. Since it is not necessary to perform the processing, the address having this value is controlled not to perform the sort processing of the L area.

【0127】また、コントローラ15は図8ないし図1
3に示すフローチャートに従い全体の動作を制御する。
Also, the controller 15 is shown in FIGS.
The entire operation is controlled according to the flowchart shown in FIG.

【0128】この実施例を図7ないし図12のフローチ
ャートに従い更に説明する。まず動作を開始すると、ス
テップS10において、クリッピングしたい領域を設定
するためにクリッピングフラグ検出部57の所望のCL
フラグを”1”にセットする。
This embodiment will be further described with reference to the flow charts of FIGS. First, when the operation is started, in step S10, a desired CL of the clipping flag detection unit 57 is set to set an area to be clipped.
Set the flag to "1".

【0129】次に、ステップS11において、第2、第
3カウンタの値をリセットし、ステップS12に進む。
ステップS12においては、第2カウンタの値をカウン
トアップしステップS13へ進む。
Next, in step S11, the values of the second and third counters are reset, and the flow advances to step S12.
In step S12, the value of the second counter is counted up, and the process proceeds to step S13.

【0130】ステップS13においては、第2カウンタ
の示すデータメモリ10のH領域のZ値領域からZ値を
読み出し、第1レジスタにセットする。そしてステップ
S14に進む。
In step S13, the Z value is read from the Z value area of the H area of the data memory 10 indicated by the second counter, and is set in the first register. Then, the process proceeds to step S14.

【0131】ステップS14において、第1レジスタに
示すフラグ1の値が”0”であるか否か判断される。フ
ラグ1の値が”0”である場合にはステップS20に進
み、”0”でない場合には、ステップS15に進む。
In step S14, it is determined whether the value of the flag 1 indicated in the first register is "0". When the value of the flag 1 is “0”, the process proceeds to step S20, and when it is not “0”, the process proceeds to step S15.

【0132】ステップS15では第1レジスタの示すフ
ラグ1の値が”1”であるか否か判断される。”1”の
場合には、ステップS16に進み、”1”でない場合に
はステップS35へ進む。
In step S15, it is determined whether the value of the flag 1 indicated by the first register is "1". If "1", the process proceeds to step S16, and if not "1", the process proceeds to step S35.

【0133】ステップS14でフラグ1の値が”0”で
あると判断された場合、ステップS20へ進み、ステッ
プS20において、第1レジスタの示すH領域の分布カ
ウントスタート領域へ第2カウンタの値を書き込む。そ
して、第1レジスタの示すフラグ1の値を”1”にセッ
トし、ステップS19へ進む。
If it is determined in step S14 that the value of the flag 1 is "0", the flow advances to step S20. In step S20, the value of the second counter is transferred to the distribution count start area of the H area indicated by the first register. Write. Then, the value of the flag 1 indicated by the first register is set to "1", and the process proceeds to step S19.

【0134】一方、ステップS16では、第1レジスタ
の示すH領域の分布カウントエンド領域から終点ポイン
ト値をリードし、第3レジスタへセットする。そして、
ステップS17へ進む。ステップS17においては、第
3レジスタの示すH領域のポインタ領域へ第2カウンタ
の値を書き込み、ステップ18へ進む。
On the other hand, in step S16, the end point value is read from the distribution count end area of the H area indicated by the first register, and is set in the third register. And
Proceed to step S17. In step S17, the value of the second counter is written in the pointer area of the H area indicated by the third register, and the process proceeds to step 18.

【0135】ステップS18において、第1レジスタの
示すH領域の分布カウンタエンド領域へ第2カウンタの
値を書き込む。そして、ステップS19へ進む。ステッ
プS19において、第2カウンタの値とデータ数とが比
較され、第2カウンタの値の方がデータ数より小さい場
合には全てのH領域の処理が終わっていないので、ステ
ップS12へ戻り、前述の動作を繰り返す。第2カウン
タの値がデータ数より大きくなるとステップS21へ進
む。
In step S18, the value of the second counter is written to the distribution counter end area of the H area indicated by the first register. Then, the process proceeds to step S19. In step S19, the value of the second counter is compared with the number of data. If the value of the second counter is smaller than the number of data, the processing of all the H areas has not been completed. Is repeated. When the value of the second counter becomes larger than the number of data, the process proceeds to step S21.

【0136】ステップS21では、第1カウンタの値を
カウントアップし、ステップS22へ進む。ステップS
22においては、第1カウンタの値を第1レジスタへセ
ットし、ステップS23へ進む。
In step S21, the value of the first counter is counted up, and the flow advances to step S22. Step S
At 22, the value of the first counter is set in the first register, and the process proceeds to step S23.

【0137】ステップS23では、第1レジスタの示す
CLフラグの値が”1”であるか否か、あるいは第1レ
ジスタの示すフラグ1の値が”0”であるか否か判断さ
れる。第1レジスタに示すCLフラグの値が”1”また
は”0”である場合には、ステップS32へ進み、”
0”または”1”でない場合には、ステップS24へ進
む。
In step S23, it is determined whether the value of the CL flag indicated by the first register is "1" or whether the value of flag 1 indicated by the first register is "0". If the value of the CL flag indicated in the first register is “1” or “0”, the process proceeds to step S32, where “
If not “0” or “1”, the process proceeds to step S24.

【0138】ステップS24においては、第1レジスタ
に示すH領域の分布カウンタスタート領域から終点ポイ
ント値を読み出し、その領域から終点ポイント値を読み
出して第3レジスタへセットする。そして、ステップS
25へ進む。ステップS25においては、第4カウンタ
のカウント値をカウントアップし、ステップS26へ進
む。ステップS26において、第4カウンタの示すソー
トメモリ12のH領域に第3レジスタの値をセットす
る。
In step S24, the end point value is read from the distribution counter start area of the H area shown in the first register, and the end point value is read from that area and set in the third register. And step S
Proceed to 25. In step S25, the count value of the fourth counter is counted up, and the process proceeds to step S26. In step S26, the value of the third register is set in the H area of the sort memory 12 indicated by the fourth counter.

【0139】そしてステップ27へ進む。ステップS2
7において、第3レジスタの示すデータメモリ10のH
領域のポインタ領域の値を読み出し、第1レジスタにセ
ットする。そしてステップS28へ進む。
Then, the process proceeds to a step S27. Step S2
7, the H of the data memory 10 indicated by the third register
The value of the pointer area of the area is read and set in the first register. Then, the process proceeds to step S28.

【0140】ステップS28においては、第1レジスタ
の値が”0”であるかないかを判断する。”0”の場合
にはステップS32に進み、”0”でない場合にはステ
ップS29へ進む。ステップS29においては、第4カ
ウンタの値をカウントアップし、ステップS30へ進
む。
In step S28, it is determined whether the value of the first register is "0". If “0”, the process proceeds to step S32, and if not “0”, the process proceeds to step S29. In step S29, the value of the fourth counter is counted up, and the process proceeds to step S30.

【0141】ステップS30において、第4カウンタの
示すソートメモリのH領域に第1レジスタの値をセット
し、ステップS31へ進む。ステップS31において
は、第1レジスタの示すデータメモリのH領域のポイン
タ領域の値を読み出し、第1レジスタにセットする。そ
してステップS28に戻る。第1レジスタの値が”0”
と等しくなるまでこの動作は繰返し、第1レジスタの値
が”0”になるとステップS32に進む。
In step S30, the value of the first register is set in the H area of the sort memory indicated by the fourth counter, and the flow advances to step S31. In step S31, the value of the pointer area in the H area of the data memory indicated by the first register is read and set in the first register. Then, the process returns to step S28. The value of the first register is "0"
This operation is repeated until the value becomes equal to, and when the value of the first register becomes "0", the flow proceeds to step S32.

【0142】そして、ステップS32において、第4カ
ウンタの値が”0”であるかないか判断され、”0”で
ない場合には、ステップS33へ進む。ステップS33
では、L領域のソートを行うサブルーチンを呼び出す。
Then, in step S32, it is determined whether or not the value of the fourth counter is "0". If not, the flow advances to step S33. Step S33
Then, a subroutine for sorting the L area is called.

【0143】また、第4カウンタの値が、”0”の場合
には、ステップS34へ進み、第1カウンタの値が25
5より大きいか否か判断され、255より小さい場合に
はステップS21に戻り、前述の動作を繰り返す。そし
て、第1カウンタの値が255より大きくなった場合に
は全部の動作が終了したので動作を終了する。
If the value of the fourth counter is "0", the flow advances to step S34 to set the value of the first counter to 25.
It is determined whether the value is greater than 5, and if it is less than 255, the process returns to step S21 and the above-described operation is repeated. When the value of the first counter becomes greater than 255, the operation is terminated because all the operations have been completed.

【0144】次に、L領域のソート処理を行うサブルー
チンについて説明する。このサブルーチンがスタートす
るとステップS50において、第2、第3カウンタのリ
セットを行いステップS51に進む。ステップS51に
おいて、第2カウンタのカウント値をカウントアップ
し、そしてステップS52へ進む。
Next, a subroutine for performing the sorting process for the L area will be described. When this subroutine starts, in step S50, the second and third counters are reset, and the flow advances to step S51. In step S51, the count value of the second counter is counted up, and the process proceeds to step S52.

【0145】ステップS52において、第2カウンタの
示すソートメモリのH領域のソートアドレス領域から、
ソートアドレスを読み出し第1レジスタにセットする。
In step S52, from the sort address area in the H area of the sort memory indicated by the second counter,
The sort address is read and set in the first register.

【0146】続いてステップS53に進み。ステップS
53において、第1レジスタの示すデータメモリのL領
域のZ値領域から読み出し第1レジスタにセットする。
Subsequently, the flow advances to step S53. Step S
At 53, the data is read from the Z value area of the L area of the data memory indicated by the first register and set in the first register.

【0147】次に、ステップS54において、第1レジ
スタの示すフラグ2の値が”0”であるかないか判断さ
れ、”0”の場合にはステップS60へ進み、ステップ
S60において、第1レジスタの示すL領域の分布カウ
ンタスタート領域の第2カウンタの値を書き込む。そし
て、第1レジスタの示すフラグ2の値を”1”にセット
し、ステップS59へ進む。
Next, in step S54, it is determined whether or not the value of the flag 2 indicated by the first register is "0". If the value is "0", the flow advances to step S60. The value of the second counter in the distribution counter start area of the indicated L area is written. Then, the value of the flag 2 indicated by the first register is set to “1”, and the process proceeds to step S59.

【0148】ステップS54において、第1レジスタの
値が示すフラグ2の値が”0”でない場合には、ステッ
プS55へ進み、ステップS55において、第1レジス
タの示すフラグ2の値が”1”であるか否か判断され
る。”3”でない場合には図13に示すステップS39
に進む。”1”の場合にはステップS56へ進み、第1
レジスタの示すデータメモリ10のL領域の分布カウン
タエンド領域から終点ポイント値をリードし、第3レジ
スタへセットする。そして、ステップS57へ進む。
If it is determined in step S54 that the value of the flag 2 indicated by the value of the first register is not "0", the flow advances to step S55. In step S55, the value of the flag 2 indicated by the first register is "1". It is determined whether there is. If not "3", step S39 shown in FIG.
Proceed to. If “1”, the process proceeds to step S56, and the first
The end point value is read from the distribution counter end area in the L area of the data memory 10 indicated by the register, and is set in the third register. Then, the process proceeds to step S57.

【0149】ステップS57では、第3レジスタの示す
データメモリのL領域のポインタ領域へ、第2カウンタ
の値を書き込み、ステップS58へ進む。ステップS5
8においては、第1レジスタの示すL領域の分布カウン
トエンド領域へ第2カウントの値を書き込みステップS
59へ進む。
In step S57, the value of the second counter is written in the pointer area of the L area of the data memory indicated by the third register, and the flow advances to step S58. Step S5
In step S8, the value of the second count is written to the distribution count end area of the L area indicated by the first register.
Go to 59.

【0150】ステップS59では、第2カウンタのカウ
ント値と第4カウンタのカウント値が比較され、第4カ
ウンタのカウント値が大きい場合にはステップS51に
戻り前述の動作が繰り返す。そして、第2カウンタのカ
ウント値が大きくなるとステップS61に進む。
In step S59, the count value of the second counter and the count value of the fourth counter are compared. If the count value of the fourth counter is larger, the process returns to step S51 and the above-described operation is repeated. When the count value of the second counter increases, the process proceeds to step S61.

【0151】ステップS61において、第3カウンタの
カウント値をカウントアップし、そして、ステップS6
2へ進む。ステップS62において、第3カウンタの値
を第1レジスタへセットし、ステップS63へ進む。
In step S61, the count value of the third counter is counted up, and in step S6
Proceed to 2. In step S62, the value of the third counter is set in the first register, and the flow advances to step S63.

【0152】ステップS63において、第1レジスタの
示すフラグ2の値が”1”であるか否か判断され”1”
の場合には、ステップS64へ進み、”1”でない場合
にはステップS72へ進む。
In step S63, it is determined whether or not the value of the flag 2 indicated by the first register is "1".
In this case, the process proceeds to step S64, and if not “1”, the process proceeds to step S72.

【0153】ステップS64において、第1レジスタの
示すL領域の分布カウンタスタート領域から始点ポイン
タ値を読み出し、第3レジスタへセットし、ステップS
65へ進む。ステップS65において第5カウンタの値
をカウントアップし、ステップS66に進む。
In step S64, the start point pointer value is read from the distribution counter start area in the L area indicated by the first register, and is set in the third register.
Proceed to 65. In step S65, the value of the fifth counter is counted up, and the process proceeds to step S66.

【0154】ステップS66にて、第5カウンタの示す
ソートメモリ12のL領域に、第3レジスタの値をセッ
トし、ステップS67に進む。
In step S66, the value of the third register is set in the L area of the sort memory 12 indicated by the fifth counter, and the flow advances to step S67.

【0155】ステップS67にて、第3レジスタの示す
データメモリ10のL領域のポインタ領域の値を読み出
し、第1レジスタにセットし、ステップS68に進む。
In step S67, the value of the pointer area in the L area of the data memory 10 indicated by the third register is read and set in the first register, and the flow advances to step S68.

【0156】ステップS68にて、第1レジスタの値
が”0”であるか否か判断され、”0”の場合には、ス
テップS72に進み、”0”でない場合にはステップS
69に進む。
In step S68, it is determined whether the value of the first register is "0". If the value is "0", the flow advances to step S72; if not, the flow advances to step S72.
Go to 69.

【0157】ステップS69においては、第5カウンタ
の値をカウントアップし、ステップS70に進む。ステ
ップS70では、第5カウンタに示すソートメモリ12
のL領域のソートアドレスに第1レジスタの値をセット
する。
In step S69, the value of the fifth counter is counted up, and the flow advances to step S70. In step S70, the sort memory 12 indicated by the fifth counter
The value of the first register is set to the sort address of the L area of FIG.

【0158】次にステップS71において、第1レジス
タに示すデータメモリ10のL領域のポインタ領域を読
みだし、第1レジスタにセットし、ステップS68にお
いて、第1レジスタの値が”0”になるまで前述の動作
を繰り返す。ステップS68において、第1レジスタの
値が”0”になると、ステップS72に進む。
Next, in step S71, the pointer area of the L area of the data memory 10 indicated by the first register is read and set in the first register. In step S68, until the value of the first register becomes "0". The above operation is repeated. When the value of the first register becomes “0” in step S68, the process proceeds to step S72.

【0159】そして、ステップS72において、第3カ
ウンタの値が255になると、このサブルーチン動作が
終了し、ステップS34に戻る。
When the value of the third counter reaches 255 in step S72, this subroutine operation ends, and the flow returns to step S34.

【0160】一方、ステップS55において、第1レジ
スタの示すフラグ2の値が”3”でない場合には、図1
3に示すステップS39に進む。
On the other hand, in step S55, if the value of the flag 2 indicated by the first register is not "3",
The process proceeds to step S39 shown in FIG.

【0161】ステップS39においては、第1レジスタ
の示すL領域の分布カウントスタート領域から始点ポイ
ンタ値を読み出し、第3レジスタへセットし、ステップ
S40に進む。
In step S39, the starting point pointer value is read from the distribution count start area of the L area indicated by the first register, set in the third register, and the flow advances to step S40.

【0162】ステップS40において、第3レジスタの
示すデータメモリのL領域のポインタ領域へ第2カウン
タの値を書き込み、ステップS41に進む。ステップS
41では、第1レジスタの示すL領域の分布カウントエ
ンド領域へ第2カウンタの値を書き込み、ステップS4
2に進む。
In step S40, the value of the second counter is written in the pointer area of the L area of the data memory indicated by the third register, and the flow advances to step S41. Step S
At 41, the value of the second counter is written to the distribution count end area of the L area indicated by the first register, and step S4
Proceed to 2.

【0163】ステップS42において、第1レジスタの
示すフラグ2の値を”2”にセットした後、図11のス
テップS59へ戻る。
In step S42, the value of the flag 2 indicated by the first register is set to "2", and the process returns to step S59 in FIG.

【0164】一方、図8のステップS15において、第
1レジスタの示すフラグ1の値が”1”でない場合には
図10ステップS35に進む。
On the other hand, if the value of the flag 1 indicated by the first register is not "1" in step S15 in FIG. 8, the process proceeds to step S35 in FIG.

【0165】ステップS35においては、第1レジスタ
の示すH領域の分布カウントスタート領域から始点ポイ
ンタ値を読み出し、第3レジスタへセットし、ステップ
S36に進む。
In step S35, the start point pointer value is read from the distribution count start area of the H area indicated by the first register, set in the third register, and the flow advances to step S36.

【0166】ステップS36において、第3レジスタの
示すデータメモリのH領域のポインタ領域へ,第2カウ
ンタの値を書き込み、ステップS37に進む。ステップ
S37では、第1レジスタの示すH領域の分布カウント
エンド領域へ第2カウンタの値を書き込み、ステップS
38に進む。
In step S36, the value of the second counter is written in the pointer area of the H area of the data memory indicated by the third register, and the flow advances to step S37. In step S37, the value of the second counter is written into the distribution count end area of the H area indicated by the first register, and
Proceed to 38.

【0167】そして、ステップS38において、第1レ
ジスタの示すフラグ2の値を”2”にセットした後、図
8のステップS19へ戻る。
Then, in step S38, after the value of the flag 2 indicated by the first register is set to "2", the flow returns to step S19 in FIG.

【0168】このように処理を行なうと、前述した図2
0から図45に示すように、データメモリ10及びソー
トメモリ12に順次データが書き込まれ、ソーティング
処理される。
By performing the processing as described above, the aforementioned FIG.
As shown in FIG. 45, data is sequentially written to the data memory 10 and the sort memory 12, and the data is sorted.

【0169】図49、図50にクリッピングを行った例
を示す。この例では、データメモリ10のH領域のZ値
が0,1,2のものクリッピング対象とする。このため
にクリップフラグ検出部70のフリップフロップ群70
3のCLフラグの値として、0,1,2ビット目を”
1”とセットする。
FIGS. 49 and 50 show examples in which clipping is performed. In this example, it is assumed that the Z value of the H area of the data memory 10 is 0, 1, or 2 as a clipping target. For this reason, the flip-flop group 70 of the clip flag detection unit 70
As the value of the CL flag of 3, the 0th, 1st and 2nd bits are
Set to 1 ".

【0170】L領域のソート処理において、H領域のZ
値が0,1,2の値に対してはソートしないため、図4
9示すように、ポリゴン6,7,16,1,8,14,
2,15のアドレスはL領域のソートアドレス領域には
含まれない。従って、図50に示すように、H領域0,
1,2のポリゴンがクリッピングされる。
In the sorting process for the L area, the Z
Since the values are not sorted for the values of 0, 1, and 2, FIG.
As shown in FIG. 9, polygons 6, 7, 16, 1, 8, 14,
The addresses 2 and 15 are not included in the sort address area of the L area. Therefore, as shown in FIG.
1, 2 polygons are clipped.

【0171】図51は、ピッキングとクリッピングの状
態を示す模式図である。図51(a)は、ピッキングま
たはクリッピングを行なわない状態を示す模式図であ
る。
FIG. 51 is a schematic diagram showing a state of picking and clipping. FIG. 51A is a schematic diagram showing a state where picking or clipping is not performed.

【0172】図51(b)は,スクリーンより前方のH
領域のZ値”0”と、視界限界より後方のH領域”5”
のポリゴンをクリッピングした例を示す模式図である。
このクリッピングを行なう場合には、クリップフラグ検
出部70のフリップフロップ群703のCLフラグの値
として、0,5ビット目を”1”とセットすれば良い。
FIG. 51 (b) shows H in front of the screen.
The Z value “0” of the area and the H area “5” behind the visibility limit
FIG. 6 is a schematic diagram showing an example in which a polygon is clipped.
When performing this clipping, the 0th and 5th bits may be set to “1” as the value of the CL flag of the flip-flop group 703 of the clip flag detection unit 70.

【0173】図51(c)は、H領域のZ値を”
2”、”3”に対するポリゴンをピッキングした例を示
す模式図である。このピッキングを行なう場合には、ク
リップフラグ検出部70のフリップフロップ群703の
CLフラグの値として、0,1,4,5ビット目を”
1”とセットすれば良い。
FIG. 51 (c) shows that the Z value of the H region is
It is a schematic diagram which shows the example which picked the polygon with respect to 2 "," 3 ". When this picking is performed, 0,1,4,4 is set as the value of the CL flag of the flip-flop group 703 of the clip flag detection part 70. The 5th bit is
Set it to 1 ".

【0174】図51(d)はH領域のZ値を”2”、”
3”に対してポリゴンをクリッピングした例を示す模式
図である.このクリッピングを行なう場合には、クリッ
プフラグ検出部70のフリップフロップ群703のCL
フラグの値として、2,3ビット目を”1”とセットす
れば良い。
FIG. 51D shows that the Z value of the H area is “2”, “2”.
FIG. 9 is a schematic diagram showing an example in which a polygon is clipped to 3 ″. When this clipping is performed, the CL of the flip-flop group 703 of the clip flag detection unit 70 is set.
As the value of the flag, the second and third bits may be set to “1”.

【0175】上述した実施例においては、基準値デー
タ、即ちZ軸データをH領域及びL領域の2つの領域に
分割してソート処理を行う場合について説明したが、Z
軸データを2つ以上の領域に分割して処理を行えば並列
度が増し、ソート処理が高速に行える。例えば、H,L
領域だけの2分割するシステムより、H,M,Lの3つ
の領域に分ける方が、並列度が増えソート処理の速度が
増す。
In the above-described embodiment, the case where the reference value data, that is, the Z-axis data is divided into two regions of the H region and the L region and the sorting process is performed.
If the axis data is divided into two or more areas and the processing is performed, the degree of parallelism increases, and the sorting processing can be performed at high speed. For example, H, L
Dividing into three regions of H, M, and L increases the degree of parallelism and increases the speed of the sorting process, compared to a system that divides only the region into two.

【0176】次に、Z軸データをH,M,Lの3つの領
域に分割してソート処理を行う場合の実施例について説
明する。
Next, an embodiment in which the Z-axis data is divided into three regions of H, M, and L and the sorting process is performed will be described.

【0177】この実施例におけるクリッピング処理にお
いては、図60に示すように、H,M,L区分に分ける
ことにより、H,M区分を使用した細かなクリッピング
が少ない処理数で行うことが可能である。
In the clipping process in this embodiment, as shown in FIG. 60, by dividing into H, M, and L sections, it is possible to perform small clipping using the H and M sections with a small number of processes. is there.

【0178】図60(a)が本実施例方式であり、
(b)は(a)方式からM領域をのぞいたものであり、
(a)と比較すると細かいクリッピングができず、クリ
ッピングが必要な領域のソート処理を行うためむだな処
理を行いスピードが遅くなる。(c)は(a)方式での
H領域がない場合に対応するが、この場合には、細かな
クリッピングが可能であるが、H領域全てのクリッピン
グフラグを必要とする。例えば、H領域が10ビットで
あれば、1024のフラグが必要である。これに対し
て、H,M領域ごと5ビットずつに分割すると32+3
2×2(クリッピング領域の両端)だけですむ。
FIG. 60A shows the method of this embodiment.
(B) is a view obtained by removing the M region from the (a) method,
Compared with (a), fine clipping cannot be performed, and wasteful processing is performed to perform sorting of an area that requires clipping, thereby reducing the speed. (C) corresponds to the case where there is no H area in the method (a). In this case, fine clipping is possible, but the clipping flags of all the H areas are required. For example, if the H area has 10 bits, 1024 flags are required. On the other hand, when divided into 5 bits for each of the H and M areas, 32 + 3
Only 2 × 2 (both ends of the clipping area) is required.

【0179】また、H領域全てに対してクリッピング処
理するかどうかの判断を必要としソート処理速度が遅く
なる。
Also, it is necessary to determine whether or not to perform clipping processing on all the H areas, and the sorting processing speed is reduced.

【0180】次に、この実施例のソーティング装置につ
き説明する。図52はソーティング装置の全体構成を示
すブロック図である。
Next, the sorting apparatus of this embodiment will be described. FIG. 52 is a block diagram showing the overall configuration of the sorting apparatus.

【0181】このソーティング装置は、前述した実施例
と同様に、データメモリ10a、ソート回路100及び
分布カウントメモリ11aを備える。
This sorting device includes a data memory 10a, a sort circuit 100, and a distribution count memory 11a, as in the above-described embodiment.

【0182】データメモリ10aは、データ番号ポイン
タによって指定される1〜N迄のZ値データを格納する
記憶領域を有する。この記憶領域は、図57に示すよう
に、大きくH領域とM領域とL領域とに領域が分けられ
ている。この各領域は、Z値データを格納するZ値領域
とそれに付随するNEXTアドレスを格納するNEXT
ポインタ領域に分けられ、H領域には基準値データの上
位のデータが、M領域には基準値データの中位のデータ
が、L領域には、基準値データの下位のデータが格納さ
れる。ここで、Z値データが、図59に示すように16
ビットデータで構成されているとすれば、H領域には、
基準値データの上位の5ビットのデータが、M領域には
中位の5ビットのデータが、L領域には、下位の6ビッ
トのデータが格納される。
The data memory 10a has a storage area for storing 1 to N Z-value data specified by the data number pointer. As shown in FIG. 57, the storage area is largely divided into an H area, an M area, and an L area. Each of these areas is composed of a Z-value area for storing Z-value data and a NEXT for storing an associated NEXT address.
It is divided into a pointer area, an H area stores upper data of the reference value data, an M area stores middle data of the reference value data, and an L area stores lower data of the reference value data. Here, the Z value data is 16 as shown in FIG.
If it is composed of bit data, in the H area,
The upper 5 bits of the reference value data, the middle 5 bits of data in the M area, and the lower 6 bits of data in the L area.

【0183】ソートメモリ12aは、図57に示すよう
に、ソート結果を格納するソートアドレス領域を有し、
このソートメモリ12aもデータメモリ10aと同じH
領域、M領域及びL領域に領域が分けられている。
As shown in FIG. 57, the sort memory 12a has a sort address area for storing the sort result.
This sort memory 12a also has the same H as the data memory 10a.
The area is divided into an area, an M area, and an L area.

【0184】上記データメモリ10aのNEXTポイン
タ領域は、同じ値のデータのアドレスを示すポインタ値
が格納され、ソートメモリ12aのソートアドレス領域
には、アドレスの小さい順にZ値の小さいデータのアド
レスの値が格納される。
The NEXT pointer area of the data memory 10a stores a pointer value indicating the address of the data having the same value, and the sort address area of the sort memory 12a stores the address value of the data having the smaller Z value in the order of the address. Is stored.

【0185】ソート回路100は、データメモリ10a
から入力されるZ値に対して、分布カウントメモリ11
aをワーキングとして用い、ソートメモリ12aにZ値
のH領域とM領域とL領域に夫々ソートされたアドレス
をH領域とM領域とL領域のソートアドレス領域に書き
込む。
The sort circuit 100 includes a data memory 10a
Count memory 11 for the Z value input from
Using a as a working, the addresses sorted in the H, M, and L areas of the Z value are written in the sort memory 12a in the sort address areas of the H, M, and L areas, respectively.

【0186】分布カウントメモリ11aは、図58に示
すように、データメモリ10aと同様にH領域、M領域
及びL領域に分割されており、そして、この領域は分布
カウントスタート領域と分布カウントエンド領域とに分
かれている。分布カウントメモリ11aは、この実施例
では、データメモリ10aの夫々のZ値領域に格納され
た5ビット、5ビット、6ビットのデータに対応して0
から31のアドレスと、0から63のアドレスを持ち、
分布カウントスタート領域にそのアドレスの値のデータ
の先頭アドレスを持つ。そして分布カウントエンド領域
にそのアドレスの値の終点アドレスを持つ。
As shown in FIG. 58, the distribution count memory 11a is divided into an H area, an M area, and an L area in the same manner as the data memory 10a, and this area is divided into a distribution count start area and a distribution count end area. And divided into In this embodiment, the distribution count memory 11a stores 0 bits corresponding to the 5-bit, 5-bit, and 6-bit data stored in the respective Z value areas of the data memory 10a.
Has an address from 0 to 31 and an address from 0 to 63,
The distribution count start area has the head address of the data of the address value. The distribution count end area has the end point address of the address value.

【0187】クリップ制御回路16は前述した3Dクリ
ッピング又はピッキング処理をするために、予め削除す
るZ値領域が指定されており、その指定領域をH,Mソ
ート処理回路15a,15bに送る。
The clip control circuit 16 specifies a Z value area to be deleted in advance to perform the above-described 3D clipping or picking processing, and sends the specified area to the H / M sort processing circuits 15a and 15b.

【0188】H,Mソート処理回路15a,15bは、
ソートした領域がクリッピング処理の対象になっている
か否か判断し、対象になっている領域に対してはLソー
ト処理回路18におけるソート処理が行わないように制
御される。
The H / M sort processing circuits 15a and 15b
It is determined whether or not the sorted area is subject to clipping processing, and control is performed so that the L sorting processing circuit 18 does not perform the sorting processing on the targeted area.

【0189】この実施例における、Hソート処理回路1
5a、Mソート処理回路15b、Lソート処理回路18
は、前述の実施例と同様のソート処理を行なうものであ
る。
H sort processing circuit 1 in this embodiment
5a, M sort processing circuit 15b, L sort processing circuit 18
Performs the same sort processing as in the above-described embodiment.

【0190】次に、この実施例のソート処理動作につき
説明する。図53はこのソート動作を示すフローチャー
ト図である。
Next, the sorting operation of this embodiment will be described. FIG. 53 is a flowchart showing this sort operation.

【0191】画像情報供給装置5からソーティング対象
となる複数の基準軸データ(Z値データ)が入力される
と、その入力順1〜Nのデータ番号が割り振られ、デー
タ番号ポインタによってアドレス指定される1〜NのH
領域に基準値データの上位の5ビットのデータが、1〜
NのM領域に基準値データの中位5ビットデータが、1
〜NのL領域に基準値データの下位の6ビットのデータ
が順次格納される(ステップS100)。
When a plurality of reference axis data (Z-value data) to be sorted are input from the image information supply device 5, data numbers 1 to N in the input order are assigned, and an address is specified by a data number pointer. 1 to N of H
The upper 5 bits of the reference value data are
In the M area of N, the middle 5 bit data of the reference value data is 1
The lower 6 bits of the reference value data are sequentially stored in the L areas of N to (N) (step S100).

【0192】このようにして、データメモリ10a内へ
ソーティング対象となる複数のZ値データの格納が終了
すると、H領域のソート処理を行う(ステップS10
1)。このH領域のソート処理は、データメモリ10a
からH領域に格納されたZ値データが1〜Nのデータ番
号順に順に読み出され、分布カウントメモリ11aの分
布カウントスタート領域とエンド領域に向け出力され
る。
When the storage of a plurality of Z-value data to be sorted in the data memory 10a is completed in this way, the H area is sorted (step S10).
1). The sorting of the H area is performed in the data memory 10a.
, The Z value data stored in the H area are sequentially read out in the order of data numbers 1 to N, and output to the distribution count start area and the end area of the distribution count memory 11a.

【0193】この実施例において、Z値データの読み出
しは、データ番号ポインタ読み出しアドレスとしてデー
タ番号が1〜Nの順で順次出力されることにより行われ
る。そして、データ番号によりアドレスが指定される
と、指定されたZ値データのH領域から分布カウントメ
モリ11aの分布カウントスタート領域とエンド領域に
向けZ値データが読み出される。
In this embodiment, the reading of the Z value data is performed by sequentially outputting the data numbers in the order of 1 to N as the data number pointer read address. When the address is specified by the data number, the Z value data is read from the H area of the specified Z value data to the distribution count start area and the end area of the distribution count memory 11a.

【0194】分布カウントメモリ11aの分布カウント
スタート領域とエンド領域は、Z値データが取り得る値
の全てに1対1に対応する領域を有する。
The distribution count start area and the end area of the distribution count memory 11a have areas corresponding to all possible values of the Z value data on a one-to-one basis.

【0195】この実施例のように、Z値データのHビッ
ト、Mビットが5ビットで構成されている場合には、
0,1,2…31の合計32個の値を取り得る。また、
Z値データのLビットが6ビットで構成されている場合
には、0,1,2…63の合計64個の値を取り得る。
As in this embodiment, when the H bit and the M bit of the Z value data are composed of 5 bits,
31, 32 values of 0, 1, 2,... Also,
When the L bits of the Z value data are composed of 6 bits, a total of 64 values of 0, 1, 2, ... 63 can be taken.

【0196】従って、分布カウントメモリ11aのH、
M領域の分布カウントスタート領域とエンド領域は0,
1,2…31の各アドレスで指定される32個の記憶エ
リアが夫々設けられており、分布カウントメモリ11a
のL領域の分布カウントスタート領域とエンド領域は
0,1,2…63の各アドレスで指定される64個の記
憶エリアが夫々設けられている。
Therefore, H of distribution count memory 11a,
The distribution count start and end areas of the M area are 0,
32 storage areas designated by respective addresses of 1, 2,... 31 are provided, respectively.
The L count distribution start area and the end area are provided with 64 storage areas designated by respective addresses 0, 1, 2,... 63, respectively.

【0197】分布カウントメモリ11aの分布カウント
スタート領域とエンド領域には、データメモリ10aか
ら出力されるZ値データのデータ番号が書き込まれる。
この実施例において、データ番号は1〜Nで表され、そ
の最大値はNである。
The data number of the Z value data output from the data memory 10a is written in the distribution count start area and the end area of the distribution count memory 11a.
In this embodiment, the data numbers are represented by 1 to N, and the maximum value is N.

【0198】そして、データメモリ10aから分布カウ
ントスタート領域とエンド領域にZ値が入力されると、
これら分布カウントスタート領域とエンド領域は対応す
るアドレスポインタによって指定される記憶領域にその
Z値のデータ番号の書き込みを行う。
When the Z value is input from the data memory 10a to the distribution count start area and the end area,
These distribution count start area and end area write the data number of the Z value into the storage area designated by the corresponding address pointer.

【0199】前述の実施例と同様に、この実施例におい
て、データの書き込みは次のように行われる。即ち、デ
ータメモリ10aから、データ番号ポインタによって指
定されるデータ番号のZ値データが出力されると、その
Z値データはアドレスポインタにセットされ、このアド
レスポインタからは、セットされたZ値データが書き込
みアドレスとして出力される。そして、この書き込みア
ドレスによって指定される分布カウントスタート領域と
エンド領域に、データ番号ポインタによって指定される
データ番号(Z値に対応するデータ番号)が書き込まれ
ることになる。
As in the above-described embodiment, in this embodiment, data writing is performed as follows. That is, when the Z value data of the data number designated by the data number pointer is output from the data memory 10a, the Z value data is set to the address pointer, and the set Z value data is output from the address pointer. It is output as a write address. Then, the data number (data number corresponding to the Z value) specified by the data number pointer is written into the distribution count start area and the end area specified by the write address.

【0200】ここにおいて、分布カウントスタート領域
は一旦データ番号が記憶されると、データメモリ10a
から同じ値の新たなZ値データが順次出力されても、新
たなデータ番号は重ね書きされないように構成されてい
る。これに対して、分布カウントエンド領域は、一旦デ
ータ番号が記憶されても、次にデータメモリ10から同
じ値のZ値が出力されると、そのZ値のデータ番号が新
たに更新記憶されるように構成されている。
Here, once the data number is stored in the distribution count start area, the data memory 10a
, The new data number is not overwritten even if new Z-value data of the same value is sequentially output. On the other hand, even if a data number is once stored in the distribution count end area, when the same Z value is output from the data memory 10 next time, the data number of the Z value is newly updated and stored. It is configured as follows.

【0201】分布カウントスタート領域には、このZ値
が始めて出現した時のデータ番号が記憶される。これに
対し分布カウントエンド領域には、各Z値が最後に出現
した時のデータ番号が記憶されることになる。
In the distribution count start area, a data number when the Z value first appears is stored. On the other hand, in the distribution count end area, the data number at the time when each Z value appears last is stored.

【0202】このため分布カウントスタート領域及びエ
ンド領域の同じアドレスには、データメモリ10aから
同じ値のZ値が一回しか出力されない場合には同じデー
タ番号が書き込まれることになるが、同じ値のZ値が複
数回にわたって出力されると、最終的には異なるデータ
番号が記憶されることになる。
For this reason, when the same Z value is output from the data memory 10a only once at the same address in the distribution count start area and the end area, the same data number is written. When the Z value is output a plurality of times, different data numbers will be finally stored.

【0203】従って、分布カウントメモリ11aの分布
カウントエンド領域の値が、複数回にわたって更新記録
された場合に、この更新がどのように行なわれたかが判
れば、基準値データを昇順又は降順にソーティングした
時の各基準値データのデータ番号の並びが判明する。
Therefore, when the value of the distribution count end area of the distribution count memory 11a is updated and recorded a plurality of times, if it is known how this update is performed, the reference value data is sorted in ascending or descending order. The sequence of the data numbers of each reference value data at the time is determined.

【0204】このためデータメモリ10a内には新しい
ポインタ出力するデータ番号に基づき0〜Nの順にアド
レスが指定されるNEXTポインタ領域が設けられてい
る。
Therefore, in the data memory 10a, there is provided a NEXT pointer area in which addresses are specified in the order of 0 to N based on the data number to be output as a new pointer.

【0205】そして,分布カウントエンド領域の内容が
更新記録されると、更新記録前のデータ番号がアドレス
ポインタに設定されNEXTポインタ領域のアドレス指
定が行われる。そして、指定されたNEXTポインタ領
域には更新後の新たなデータ番号が書き込まれる。
When the contents of the distribution count end area are updated and recorded, the data number before the update recording is set in the address pointer, and the address of the NEXT pointer area is specified. Then, the updated new data number is written in the designated NEXT pointer area.

【0206】このようにして分布カウントエンド領域が
更新記録されるとその更新履歴はデータメモリ内のポイ
ンタ領域に順次書き込まれることになる。
When the distribution count end area is updated and recorded in this manner, the update history is sequentially written to the pointer area in the data memory.

【0207】以上説明したようにこの実施例によれば、
データメモリ10からデータ番号順にZ値データが出力
されると、出力されたZ値データを書き込みアドレスと
して、そのデータ番号が分布カウントスタート領域、分
布カウントエンド領域に書き込まれ更にこれに付随して
分布カウントエンド領域からデータメモリ10のNEX
Tポインタ領域へのデータ転送書き込みが行われる。
As described above, according to this embodiment,
When the Z-value data is output from the data memory 10 in the order of the data numbers, the output Z-value data is used as a write address, and the data numbers are written to the distribution count start area and the distribution count end area. NEX of data memory 10 from count end area
Data transfer writing to the T pointer area is performed.

【0208】このようなデータ転送が開始されると、H
ソート回路15aは次のような転送制御を行う。
When such data transfer is started, H
The sort circuit 15a performs the following transfer control.

【0209】先ず分布カウントエンド領域に記憶された
データ番号がアドレス生成回路13にセットされる。次
に、このアドレス生成回路13によりアドレス指定され
るNEXTポインタ領域にその指定アドレスと所定の対
応関係にある分布カウントスタート領域のデータ番号を
書き込む。
First, the data number stored in the distribution count end area is set in the address generation circuit 13. Next, the data number of the distribution count start area having a predetermined correspondence with the designated address is written in the NEXT pointer area addressed by the address generation circuit 13.

【0210】このようなデータ番号の書き込みはデータ
を昇順にソーティングする場合と、降順にソーティング
する場合とでは若干異なるが、ここではデータを昇順に
ソーティングする場合を例にとり説明する。
The writing of such data numbers is slightly different between the case where data is sorted in ascending order and the case where data is sorted in descending order. Here, the case where data is sorted in ascending order will be described as an example.

【0211】例えば、アドレス0で指定される分布カウ
ントエンド領域にデータ番号が記憶されている時には、
まずアドレス0番地に記憶されているデータ番号がアド
レスポインタにセットされる。
For example, when a data number is stored in the distribution count end area specified by the address 0,
First, the data number stored at address 0 is set in the address pointer.

【0212】そして、次にアドレス1で指定される分布
カウントスタート領域からデータ番号が読み出され、こ
のデータ番号が、アドレスポインタで指定されるデータ
メモリ10のNEXTポインタ領域に書き込まれる。
Then, the data number is read from the distribution count start area specified by the address 1, and this data number is written to the NEXT pointer area of the data memory 10 specified by the address pointer.

【0213】また、この時アドレス1で指定される分布
カウントスタート領域にデータ番号が記憶されていない
場合には、アドレス2で指定される記憶エリアからデー
タ番号を読み出し、データメモリ10aのNEXTポイ
ンタ領域に書き込む。また、アドレス2で指定される分
布カウントスタート領域にもデータ番号が記憶されてい
ない場合には、データが見つかるまで同様にアドレス
3、アドレス4、………と順次アドレスをインクリメン
トしていく。
At this time, if the data number is not stored in the distribution count start area specified by the address 1, the data number is read from the storage area specified by the address 2 and the NEXT pointer area of the data memory 10a is read. Write to. If no data number is stored in the distribution count start area designated by address 2, the address is sequentially incremented in the same manner as address 3, address 4,... Until data is found.

【0214】そしてアドレスKで指定される記憶エリア
からデータ番号が読み出されると、このデータ番号がア
ドレスポインタで指定されるデータメモリ10aのNE
XTポインタ領域に書き込まれる。
When the data number is read from the storage area specified by the address K, this data number is stored in the NE of the data memory 10a specified by the address pointer.
It is written to the XT pointer area.

【0215】このような読み出し書き込みが完了する
と、次にアドレスKで指定される分布カウントエンド領
域からデータ番号が読み出され、それを書き込みアドレ
スとして前回と同様ようにしてデータメモリ10aのN
EXTポインタ領域へのデータの書き込みが行われる。
When such reading and writing are completed, the data number is read from the distribution count end area designated by the address K, and the data number is set as the write address in the same manner as in the previous time.
Data is written to the EXT pointer area.

【0216】この実施例における装置は、このようなチ
ェインデータ番号を記録するNEXTポインタ領域への
データの書き込みを繰り返して行う。そしてこのような
一連の書き込み動作が終了すると、データメモリ10a
のNEXTポインタ領域の記憶エリアには基準値データ
のH領域すなわち上位5ビットのデータの昇順に連鎖す
るようにデータ番号が記憶されることになる。
The device in this embodiment repeatedly writes data in the NEXT pointer area for recording such a chain data number. When such a series of write operations is completed, the data memory 10a
In the storage area of the NEXT pointer area, data numbers are stored so as to be linked in ascending order of the H area of the reference value data, that is, the data of the upper 5 bits.

【0217】データメモリ10aの上位5ビット、すな
わちH領域のソーティングが終了すると、そのソート結
果をソートメモリ12aのH領域にソートアドレスとし
て格納する。
When the sorting of the upper 5 bits of the data memory 10a, that is, the H area is completed, the sorting result is stored in the H area of the sort memory 12a as a sort address.

【0218】そして、この実施例においてはクリップ制
御回路16によって指定された領域があるか否かが判断
される(ステップS102)。例えばH側の0〜Nまで
の範囲で昇順にソーティング処理され、そして、そのH
側の0番地のデータを読み出し、そのデータがクリッピ
ングされるか否か判断される。そして、クリッピングさ
れる場合には、そのデータの中位5ビットすなわちM領
域のソーティングは行わず、次のH領域のZ値に対応す
る処理が行われる。
Then, in this embodiment, it is determined whether or not there is an area designated by the clip control circuit 16 (step S102). For example, sorting processing is performed in ascending order in a range from 0 to N on the H side, and the H
The data at address 0 on the side is read, and it is determined whether or not the data is clipped. When clipping is performed, the middle 5 bits of the data, that is, sorting of the M area is not performed, and processing corresponding to the Z value of the next H area is performed.

【0219】そのソートメモリ12aのH領域のソート
アドレス領域から読み出したアドレスがデータメモリ1
0のデータ番号に相当する。今、H領域より0番地のデ
ータが読み出されその領域がクリッピング対象とならな
い場合にはM領域のソーティング処理が行われる(ステ
ップS103)。そして、前述したH側のソート処理と
同様にM側のソート処理を行う。全てのデータに対して
ソートされたか否か判断し(ステップS103)、全て
のデータがソーティングされるまでクリッピングが必要
か否かという処理判断からM側ソートを繰り返す。
The address read from the sort address area in the H area of the sort memory 12a is the data memory 1
This corresponds to a data number of 0. Now, if data at address 0 is read from the H area and that area is not to be clipped, a sorting process for the M area is performed (step S103). Then, similar to the H-side sorting process described above, the M-side sorting process is performed. It is determined whether all the data have been sorted (step S103), and the M-side sorting is repeated from the processing determination as to whether clipping is necessary until all the data is sorted.

【0220】続いて、この実施例においてはクリップ制
御回路16によって指定された領域があるか否かが判断
される(ステップS105)。例えばM側の0〜Nまで
の範囲で昇順にソーティング処理され、そして、そのM
側の0番地のデータを読み出し、そのデータがクリッピ
ングされるか否か判断される。そして、クリッピングさ
れる場合には、そのデータの下位6ビットすなわちL領
域のソーティングは行わず、次のM領域のZ値に対応す
る処理が行われる。
Subsequently, in this embodiment, it is determined whether or not there is an area designated by the clip control circuit 16 (step S105). For example, sorting processing is performed in ascending order in the range of 0 to N on the M side, and the M
The data at address 0 on the side is read, and it is determined whether or not the data is clipped. When clipping is performed, the lower 6 bits of the data, that is, sorting of the L area is not performed, and processing corresponding to the Z value of the next M area is performed.

【0221】その後、L側ソート処理回路18におい
て、前述したデータメモリ10の今度はL領域に格納さ
れたZ値データが読み出され、そのデータが分布カウン
トメモリ11aの分布カウントスタート領域及び分布カ
ウントエンド領域に格納され、同じくデータメモリ10
のNEXTポインタ領域、すなわちL領域のNEXTポ
インタ領域に格納される。この動作は前述のH領域、M
領域のソート処理と同様にして行われる。すなわちH領
域、M領域の処理はデータメモリ10aのH領域、M領
域、分布カウントメモリ11aの分布カウントスタート
領域、分布カウントエンド領域のH領域、M領域を使
い、データメモリ10のNEXTポインタ領域へチェィ
ンデータの書き込みが行われる。これに対して、L領域
のデータについては、データメモリ10aのL領域のZ
値データを読み出し、そのデータに従って分布カウント
メモリ11aのL領域の分布カウントスタート領域、分
布カウントエンド領域に夫々データ番号を格納し、そし
てデータメモリ10のL領域のNEXTポインタ領域
に、そのチェィンデータを書き込むことにより、ソート
処理が行われる。
Thereafter, in the L-side sorting circuit 18, the Z-value data stored in the L area of the data memory 10 is read out, and the data is stored in the distribution count start area and the distribution count area of the distribution count memory 11a. It is stored in the end area, and
, The NEXT pointer area of the L area. This operation is performed in the above-described H region, M
This is performed in the same manner as the area sorting process. That is, the processing of the H area and the M area uses the H area and the M area of the data memory 10a, the H area and the M area of the distribution count start area and the distribution count end area of the distribution count memory 11a, and transfers the data to the NEXT pointer area of the data memory 10. The writing of the chain data is performed. On the other hand, regarding the data in the L area, the Z in the L area in the data memory 10a is
The value data is read, the data numbers are stored in the distribution count start area and the distribution count end area of the L area of the distribution count memory 11a according to the data, and the chain data is written in the NEXT pointer area of the L area of the data memory 10. Thus, the sorting process is performed.

【0222】即ち、この発明においては、まずH領域す
なわちデータの上位5ビットに関してソーティング処理
を行い、そして、そのソーティング処理が行われた段階
でクリッピングする必要があるデータか否かを判断し、
そのデータがクリッピングする必要がないものに関し、
次のM側ソート処理を行うものである。更に、このソー
ティング処理が行われた段階でクリッピングする必要が
あるデータか否かを判断し、そのデータがクリッピング
する必要がないものに関し、この次のL側ソート処理を
行うものである。そして、L側ソート処理も同じくH側
領域、M側領域と同様の処理を行ってソーティングが完
了するわけである。そしてソーティングされた結果を同
じくソートメモリ12aのL領域のソートアドレス領域
に書き込んで(ステップS107)、そして、全てのデ
ータに対してソートされたか否か判断し(ステップS1
08)、全てのデータがソーティングされるまでクリッ
ピングが必要か否かという処理判断からL側ソートを繰
り返す。
That is, in the present invention, sorting processing is first performed on the H region, that is, the upper 5 bits of data, and it is determined whether or not the data needs to be clipped at the stage when the sorting processing has been performed.
For those whose data does not need to be clipped,
The next M-side sorting process is performed. Further, it is determined whether or not the data needs to be clipped at the stage when the sorting process has been performed, and the next L-side sorting process is performed on data whose data does not need to be clipped. In the L-side sorting process, the same processing as that for the H-side area and the M-side area is performed, and the sorting is completed. Then, the sorted result is similarly written into the sort address area of the L area of the sort memory 12a (step S107), and it is determined whether or not all the data have been sorted (step S1).
08), L-side sorting is repeated from the processing determination of whether clipping is necessary until all data is sorted.

【0223】全てのソーティングが終了すると、動作が
終了するものである。
When all sorting is completed, the operation is completed.

【0224】次に、このようなソーティング回路を用い
て画像情報供給装置5から出力される12個のZ値デー
タを昇順にソーティングする場合を例に取り説明する。
Next, a case will be described as an example in which twelve Z value data output from the image information supply device 5 are sorted in ascending order using such a sorting circuit.

【0225】この実施例においては、12個のZ値デー
タをソーティング対象とするためデータメモリ10は1
〜12のデータ番号で指定されるH領域のZ値領域とL
領域のZ値領域を有するように形成すれば良い。また、
Z値データは前述したように、即ちH領域に5ビット、
M領域に5ビット、L領域に6ビットのデータで構成さ
れている。
In this embodiment, since 12 pieces of Z-value data are to be sorted, the data memory 10 has 1
Z value area and L value of H area specified by data numbers
What is necessary is just to form so that it may have a Z value area | region. Also,
The Z value data is as described above, that is, 5 bits in the H area,
The M area is composed of 5 bits, and the L area is composed of 6 bits.

【0226】まず画像情報供給装置5からデータメモリ
10aに向け、上位の5ビット、即ちH値のデータが、
1、2、4、5、3、0、0、7、9、1、2、1の順
で入力されると、入力されたZ値データは順次1、2、
3…のデータ番号をアドレスするデータメモリ10aの
H領域の記憶エリアに書き込まれることになる。
First, from the image information supply device 5 to the data memory 10a, the upper 5 bits, that is, the data of the H value,
When input is performed in the order of 1, 2, 4, 5, 3, 0, 0, 7, 9, 1, 2, 1, the input Z value data is sequentially 1, 2,.
.. Are written in the storage area of the H area of the data memory 10a for addressing the data numbers of 3.

【0227】中位5ビット、即ちM値のデータが1、
2、3、4、6、7、8、2、3、1、5、6また下位
6ビット、即ちL領域のデータが5、6、3、1、5、
4、5、1、1、2、7、5の順で入力されると、入力
されたZ値データはデータメモリ10aの順次M領域及
びL領域の1、2、3、4、5…のデータ番号をアドレ
スする記憶エリアに書き込まれることになる。
The middle 5 bits, that is, the data of M value is 1,
2, 3, 4, 6, 7, 8, 2, 3, 1, 5, 6 and the lower 6 bits, that is, data in the L area is 5, 6, 3, 1, 5,.
4, 5, 1, 1, 2, 7, 5 in that order, the input Z value data is sequentially stored in 1, 2, 3, 4, 5,... Of the M area and the L area of the data memory 10a. The data number will be written to the storage area for addressing.

【0228】このようにして、データメモリ10a内の
H領域、M領域、L領域にZ値データが書き込まれる
と、このZ値データのソーティングをZ値データそのも
のではなくデータ番号を用いて行う。
When the Z value data is written in the H, M, and L areas in the data memory 10a in this manner, the Z value data is sorted using the data number instead of the Z value data itself.

【0229】このようにすることにより、ソーティング
対象となるZ値データの桁数が多い場合でも、このZ値
データのソーティングを簡単な回路で高速に行うことが
できる。
By doing so, even if the number of digits of the Z-value data to be sorted is large, sorting of the Z-value data can be performed at high speed with a simple circuit.

【0230】この実施例においては、このようにZ値デ
ータメモリ10a内にZ値が書き込まれると、このデー
タメモリ10aからそのデータ番号順にZ値が順次読み
出される。
In this embodiment, when the Z value is written in the Z value data memory 10a, the Z value is sequentially read from the data memory 10a in the order of the data number.

【0231】このようにデータメモリ10a内にZ値デ
ータが書き込まれると、このデータメモリ10aからデ
ータ番号順に順次読み出される。まずH領域のみ読み出
され、図61〜図64に示すように、H領域のソート処
理が行なわれる。
When the Z-value data is written in the data memory 10a, the data is sequentially read from the data memory 10a in the order of the data numbers. First, only the H area is read out, and the H area is sorted as shown in FIGS.

【0232】このようにして、Z値データが読み出され
ると、読み出されたZ値をアドレスとして対応するデー
タ番号が分布カウントメモリ11aの分布カウントスタ
ート領域及びエンド領域に書き込まれる。まず、図61
に示すように、従ってデータメモリ10aからまずデー
タ番号1、即ちアドレス1で特定されるZ値データ1が
出力されると、このZ値データ1をアドレスとして分布
カウントスタート領域及びエンド領域にデータ番号1が
書き込まれる。
When the Z value data is read in this way, the corresponding data number is written to the distribution count start area and the end area of the distribution count memory 11a using the read Z value as an address. First, FIG.
As shown in (1), when the data number 1, that is, the Z value data 1 specified by the address 1 is first output from the data memory 10a, the Z number data 1 is used as an address in the distribution count start area and the end area. 1 is written.

【0233】H領域のソート処理が続行され、図62に
示すデータ番号6で特定されるZ値データ0をアドレス
として、分布カウントスタート領域及び分布カウントエ
ンド領域にデータ番号6が入力される。続いて、データ
番号7で特定されるZ値データ0が出力されると、この
Z値データ0をアドレスとして、分布カウントスタート
領域及びエンド領域にデータ番号7が入力される。この
時分布カウントスタート領域には既にデータ番号が書き
込まれているために、新たなデータ番号の書き込みは行
われない。これに対して、分布カウントエンド領域には
前のデータ番号6を新たなデータ番号7に更新記録す
る。このためデータメモリ10aのNEXTポインタ領
域には更新前のデータ番号6をアドレスとして、更新後
のデータ番号7が書き込まれることになる。
The sorting process for the H area is continued, and the data number 6 is input to the distribution count start area and the distribution count end area using the Z value data 0 specified by the data number 6 shown in FIG. 62 as an address. Subsequently, when the Z value data 0 specified by the data number 7 is output, the data number 7 is input to the distribution count start area and the end area using the Z value data 0 as an address. At this time, since a data number has already been written in the distribution count start area, no new data number is written. On the other hand, the previous data number 6 is updated to the new data number 7 in the distribution count end area. Therefore, the updated data number 7 is written in the NEXT pointer area of the data memory 10a using the data number 6 before the update as an address.

【0234】次に、図63に示すように、データメモリ
10aからデータ番号8で特定されるZ値データ1が読
み出される。このZ値データ1をアドレスとして分布カ
ウントスタート領域及び分布カウントエンド領域にその
データが書き込まれる。この時分布カウントスタート領
域には既にデータ番号が書き込まれているため、新たな
データ番号の書き込みは行われず、これに対しエンド領
域には前のデータ1を新たなデータ番号8に書替え、更
新記録する。そしてデータメモリ10aのNEXTポイ
ンタ領域には更新前のデータ番号1をアドレスとして更
新後データ番号8が書き込まれる。
Next, as shown in FIG. 63, Z value data 1 specified by data number 8 is read from data memory 10a. The data is written to the distribution count start area and the distribution count end area using the Z value data 1 as an address. At this time, since a data number has already been written in the distribution count start area, a new data number is not written. On the other hand, the previous data 1 is rewritten to a new data number 8 in the end area, and update recording is performed. I do. Then, an updated data number 8 is written in the NEXT pointer area of the data memory 10a using the data number 1 before the update as an address.

【0235】以下同様にして、データメモリ10aのデ
ータ番号9〜12までデータを読み出し、そして分布カ
ウントスタート領域及び分布カウントエンド領域に夫々
データを書き込むと共に、既に分布カウントスタート領
域にデータが書き込まれている場合には、そのデータは
書き替えずに更新前のデータの番号をアドレスをして、
更新後のデータ番号をNEXTポインタ領域に書き込ん
でいく。このようにH領域のみソートした結果を図64
に示す。
In the same manner, data is read from data numbers 9 to 12 of the data memory 10a, and data is written into the distribution count start area and the distribution count end area, respectively. If it is, the data is not rewritten and the number of the data before update is addressed,
The updated data number is written into the NEXT pointer area. FIG. 64 shows the result of sorting only the H region.
Shown in

【0236】このような一連の書き込み作業により、Z
値データをアドレスとする分布カウントスタート領域に
は各Z値が最初に出現した時のデータ番号が書き込まれ
ることになる。
By such a series of writing operations, Z
The data number at the time when each Z value first appears is written in the distribution count start area having value data as an address.

【0237】またZ値データをアドレスとする分布カウ
ントエンド領域には各Z値の値が最後に出現した時のデ
ータ番号が記憶されることになる。
In the distribution count end area having the Z value data as an address, the data number when the value of each Z value appears last is stored.

【0238】更に、データ番号をアドレスとするNEX
Tポインタ領域にはカウントエンド領域のデータが更新
記憶される毎に、更新前のデータ番号をアドレスとして
更新後のデータ番号が順次書き込まれることになる。従
って、データメモリ10aから同じZ値データが複数回
出力されると、このNEXTポインタ領域にはそのZ値
データがどのようなデータ番号順に出力されたかの履歴
が記録されることになる。
Further, NEX using a data number as an address
Each time the data in the count end area is updated and stored in the T pointer area, the updated data number is sequentially written using the data number before update as an address. Therefore, when the same Z value data is output from the data memory 10a a plurality of times, a history of the data number order of the Z value data is recorded in the NEXT pointer area.

【0239】次に、H領域のZ値が0の値のものに対し
て、M領域のソートを行う場合につき、図66を参照し
て説明する。まずH領域の分布カウントメモリ11aの
分布カウントスタート領域のアドレス0の領域のデータ
番号を読み出す。この場合アドレス0は、データ番号は
6であるのでソートアドレスに6が書き込まれる。
Referring to FIG. 66, a description will be given of a case where the Z value of the H area is 0 and the M area is sorted. First, the data number of the area at the address 0 of the distribution count start area of the distribution count memory 11a in the H area is read. In this case, since the data number of address 0 is 6, 6 is written in the sort address.

【0240】そして、Hデータ6の領域のNEXTポイ
ンタを読み出し、そのNEXTポインタ領域が7を示す
ので、そのデータ番号7のNEXTポインタを読みだ
す。この場合7のNEXTポインタには何も書かれてい
ないので、ソートアドレスにはそのデータ番号7を書き
込み、H領域0に相当する全てのデータが書き込まれる
ことになり、カウンタ値(CNTX)にソートアドレス
のH領域のデータ数2がセットされ、M領域の処理に移
る。
Then, the NEXT pointer of the area of the H data 6 is read, and since the NEXT pointer area indicates 7, the NEXT pointer of the data number 7 is read. In this case, since nothing is written in the NEXT pointer of 7, the data number 7 is written in the sort address, and all data corresponding to the H area 0 is written, and the data is sorted into the counter value (CNTX). The number of data 2 in the H area of the address is set, and the process proceeds to the M area.

【0241】まずデータ番号6のデータメモリ10aで
特定されるM値のZ値データ7が読み出されると、この
Z値データ7をアドレスとする分布カウントメモリ11
aのM領域のアドレスとして分布カウントスタート領域
に6を分布カウントエンド領域に6を夫々書き込み、デ
ータ番号7のデータメモリ10aで特定されるM値のZ
値データ8が読み出されると、このZ値データ8をアド
レスとする分布カウントメモリ11aのM領域のアドレ
スとして分布カウントスタート領域に7を分布カウント
エンド領域に7を夫々書き込む。
First, when the M-valued Z-value data 7 specified by the data memory 10a of the data number 6 is read, the distribution count memory 11 having the Z-valued data 7 as an address is used.
6 is written in the distribution count start area and 6 is written in the distribution count end area as addresses of the M area a, and the M value Z specified by the data memory 10a of data number 7
When the value data 8 is read, 7 is written to the distribution count start area and 7 is written to the distribution count end area as addresses of the M area of the distribution count memory 11a having the Z value data 8 as an address.

【0242】次にソートアドレスのM領域からデータ番
号7で指定されるデータ番号6が出力される。H領域
0、M領域7に対するM領域のソートを終了し、CNT
X2にソートアドレスM領域のデータ数7をセットし、
L領域の処理に移る。
Next, data number 6 specified by data number 7 is output from the M area of the sort address. Finish sorting the M area for H area 0 and M area 7
Set the number of data 7 in the sort address M area to X2,
Move on to processing of L region.

【0243】L領域のソートとして、データ番号6で指
定されるZ値データ4が読み出されると、このZ値デー
タ4を分布カウントメモリ11aのL領域のアドレスと
して分布カウントスタート領域に6を分布カウントエン
ド領域に6を書き込み、ソートアドレスL領域にデータ
番号6を書き込み、H領域0、M領域7の全てのデータ
が書き込まれたことになり、CNTX3にソートアドレ
スL領域のデータ数1をセットする。次に、ソートアド
レスのM領域からデータ番号8でしていされるデータ番
号7が出力されると、NEXTポインタに何も書かれて
いないので、H領域0、M領域8に対するM領域のソー
トを終了し、CNTX2にソートアドレスM領域のデー
タ数1をセットし、L領域の処理に移る。
When the Z value data 4 specified by the data number 6 is read as the sorting of the L area, the Z value data 4 is used as the address of the L area of the distribution count memory 11a, and 6 is distributed to the distribution count start area. 6 is written in the end area, the data number 6 is written in the sort address L area, and all the data in the H area 0 and the M area 7 have been written, and the number of data 1 in the sort address L area is set in CNTX3. . Next, when the data number 7 indicated by the data number 8 is output from the M area of the sort address, since nothing is written in the NEXT pointer, the M area is sorted for the H area 0 and the M area 8. When the processing is completed, the number of data 1 in the sort address M area is set in CNTX2, and the process proceeds to the L area.

【0244】続いて、図66に示すように、H領域0、
M領域8のL領域のソートとして、データ番号7で指定
されるZ値データ5が読み出されると、このZ値データ
5を分布カウントメモリ11aのL領域のアドレスとし
て分布カウントスタート領域に7を分布カウントエンド
領域に7を書き込み、ソートアドレスL領域にデータ番
号7を書き込み、H領域0、M領域8の全てのデータが
書き込まれたことになり、CNTX3にソートアドレス
L領域のデータ数2をセットする。
Subsequently, as shown in FIG.
When the Z value data 5 specified by the data number 7 is read as the sort of the L region of the M region 8, the Z value data 5 is distributed to the distribution count start region as an address of the L region of the distribution count memory 11a. 7 is written in the count end area, data number 7 is written in the sort address L area, and all the data in the H area 0 and M area 8 are written, and the number of data 2 in the sort address L area is set in CNTX3. I do.

【0245】次にH領域が1の場合のM領域のソートに
つき図68を参照にして説明する。
Next, the sorting of the M area when the H area is 1 will be described with reference to FIG.

【0246】H領域の分布カウントスタート領域のアド
レス1で指定するデータ番号1をソートアドレス1に書
き込み、そしてそのアドレス1に書き込まれているNE
XTポインタを読み出す。この場合NEXTポインタに
は10が書き込まれているので、10のアドレスをソー
トアドレスに書き込むと共にアドレス10に書き込まれ
たNEXTポインタ領域のデータ番号12を読み出す。
そしてデータ番号12をソートアドレスに書き込む。そ
して、アドレスのNEXTポインタには何も書き込まれ
ていないため、これでH領域1に相当する全てのデータ
がソートアドレスに書き込まれ、CNTXにソートアド
レスH領域のデータ数3をセットし、M領域の処理へ移
る。
The data number 1 designated by the address 1 of the distribution count start area of the H area is written to the sort address 1 and the NE written at the address 1 is written.
Read the XT pointer. In this case, since 10 is written in the NEXT pointer, the address of 10 is written in the sort address, and the data number 12 in the NEXT pointer area written in the address 10 is read.
Then, the data number 12 is written in the sort address. Since nothing is written in the NEXT pointer of the address, all data corresponding to the H area 1 is written to the sort address, and the number of data in the sort address H area 3 is set in CNTX. Move on to processing.

【0247】そして、まずソートアドレスH領域のアド
レス1に書き込まれたデータ番号1のM領域を読み出
す。データ番号1に書き込まれたMデータ1をアドレス
とする分布カウントスタート領域1にデータ番号1を書
き込む。そして、ソートアドレスH領域のアドレス2に
書き込まれたデータ番号10のL領域を読み出す。アド
レス10を示すZ値1をアドレスとする分布カウントス
タート領域及び分布カウントエンド領域にデータ番号8
を書き込む。分布カウントスタート領域には既にデータ
が書き込まれているので書き替えられず、これに対し
て、分布カウントエンド領域には前のデータ番号1を新
たなデータ番号10に書き替える。このためデータメモ
リ10aのNEXTポインタ領域には更新前のデータ番
号1をアドレスとして、更新後のデータ番号10が書き
込まれる。
Then, first, the M area of data number 1 written at address 1 of the sort address H area is read. Data number 1 is written in distribution count start area 1 having M data 1 written in data number 1 as an address. Then, the L area of data number 10 written at address 2 of the sort address H area is read. The data number 8 is stored in the distribution count start area and the distribution count end area having the Z value 1 indicating the address 10 as the address.
Write. Since data has already been written in the distribution count start area, the data is not rewritten. In contrast, in the distribution count end area, the previous data number 1 is rewritten with a new data number 10. Therefore, the updated data number 10 is written in the NEXT pointer area of the data memory 10a using the data number 1 before the update as an address.

【0248】同様にL領域ソート処理を行う。Similarly, an L area sorting process is performed.

【0249】続いて、図68に示すように、ソートアド
レス12に示すM領域のデータ値を呼び出す。M領域の
データ値のデータ番号は6であるのでそれをアドレスと
して、そのデータを分布カウンタスタート領域及びエン
ド領域に書き込む。
Subsequently, as shown in FIG. 68, the data value of the M area indicated by the sort address 12 is called. Since the data number of the data value in the M area is 6, the data number is used as an address and the data is written into the distribution counter start area and end area.

【0250】また、ソートアドレスのM領域には、アド
レス1に分布カウントスタート領域のアドレス6に書き
込まれているデータ12を、このエンド領域は12を示
しているので、カウンタCNTX2に1がセットされ、
H領域1に対するM領域のソート処理が終了する。同様
にL領域ソート処理を行う。そして、図69には、H領
域10の場合、すなわち全てのソート処理が終了した結
果を示す。そして、ソートメモリ12aのL領域のソー
トアドレスのアドレス1から順に、データの昇順にソー
ト処理が終了して書き込まれる。すなわち、ソートメモ
リ12のL領域のアドレス1から順次読み出すことによ
り、Z値の小さい順にソーティングされたデータを読み
出すことができる。
In the M area of the sort address, data 12 written at address 1 of the distribution count start area at address 1 and at the end area 12 are shown, so that 1 is set in the counter CNTX2. ,
The sort processing of the M area with respect to the H area 1 ends. Similarly, an L area sorting process is performed. FIG. 69 shows the result in the case of the H area 10, that is, the result after all the sort processes have been completed. Then, the sort processing is completed and written in ascending order of data in order from address 1 of the sort address in the L area of the sort memory 12a. That is, by sequentially reading data from address 1 in the L area of the sort memory 12, the data sorted in ascending order of the Z value can be read.

【0251】図54は、この第2の実施例のソーティン
グ処理装置の具体的実施例を示すブロック図である。
FIG. 54 is a block diagram showing a specific embodiment of the sorting apparatus according to the second embodiment.

【0252】図54において、52は第3カウンタであ
り、分布カウントメモリ11aのL領域とフラグ2のア
クセスを行う。53は第1カウンタであり、分布カウン
トメモリ11aのH領域とフラグ1のアクセスを行う。
7は第6カウンタであり、分布カウントメモリ11aの
M領域とフラグ3のアクセスを行う。54はマルチプレ
クサであり、第1、第3カウンタ53、52及びデータ
メモリ10aからマルチプレクサ68を介して入力され
るデータ入力の中から所定のデータを選択し、第1レジ
スタ58へ与える。
In FIG. 54, reference numeral 52 denotes a third counter, which accesses the L area of the distribution count memory 11a and the flag 2. A first counter 53 accesses the H area of the distribution count memory 11a and the flag 1.
Reference numeral 7 denotes a sixth counter, which accesses the M area of the distribution count memory 11a and the flag 3. Reference numeral 54 denotes a multiplexer, which selects predetermined data from data input from the first and third counters 53 and 52 and the data memory 10a via the multiplexer 68, and supplies the selected data to the first register 58.

【0253】67は第3レジスタであり、分布カウント
メモリ11aから読み出されたH領域、M領域、L領域
からのデータが与えられる。この第3レジスタ67から
マルチプレクサ59にデータが転送される。このマルチ
プレクサ59には、第2アドレス変換部66からの出力
及びマルチプレクサ64で選択されて与えられる第2、
第4、第5カウンタ61、62、63からの出力が与え
られる。そして、マルチプレクサ59は入力された各デ
ータの中から所定のデータを選択して第2レジスタ55
に与える。
Reference numeral 67 denotes a third register to which data from the H, M, and L areas read from the distribution count memory 11a is given. Data is transferred from third register 67 to multiplexer 59. The output from the second address conversion unit 66 and the second signal selected and provided by the multiplexer 64 are applied to the multiplexer 59.
Outputs from the fourth and fifth counters 61, 62, 63 are provided. Then, the multiplexer 59 selects predetermined data from the input data, and selects the predetermined data from the second register 55.
Give to.

【0254】第2レジスタ55に与えられたデータはデ
ィマルチプレクサ69を介して、データメモリ10a及
びソートメモリ12の所定領域に転送される。
The data provided to the second register 55 is transferred to predetermined areas of the data memory 10a and the sort memory 12 via the demultiplexer 69.

【0255】第1アドレス変換部56は、マリィプレク
サ60より送られてくるデータに基づきデータメモリ1
0a及びソートメモリ12のH領域(上位アドレス)、
M領域(中位アドレス)、L領域(下位アドレス)のア
ドレスを出力する。
The first address conversion section 56 performs data memory 1 conversion based on the data sent from the
0a and the H area (upper address) of the sort memory 12;
The address of the M area (middle address) and the address of the L area (lower address) are output.

【0256】この第1アドレス変換部56は、前述の第
1の実施例と同様に構成され、図15に示すように、レ
ジスタ71、73、74、75とマルチプレクサ72を
備え、マルチプレクサ60より送られてくるデータを下
位アドレスとして出力し、コントローラ65により、レ
ジスタ73に与えられるZ値アドレス値、レジスタ74
に与えられるNEXTポインタアドレス値、レジスタ7
5に与えられるソートアドレス値をマルチプレクサ72
で選択することにより、上位アドレスとしてZ値アドレ
ス、NEXTポインタアドレス、ソートアドレス値が選
択して出力される。
The first address converter 56 has the same structure as that of the first embodiment, and includes registers 71, 73, 74 and 75 and a multiplexer 72 as shown in FIG. The received data is output as the lower address, and the Z-address value given to the register 73 and the register 74
NEXT pointer address value given to register 7, register 7
5 to the multiplexer 72.
, The Z value address, the NEXT pointer address, and the sort address value are selected and output as the upper address.

【0257】第2アドレス変換部66は、第1レジスタ
58より送られてくるデータに基づき分布カウントメモ
リ11aのH領域(上位アドレス)、M領域(中位アド
レス)、L領域(下位アドレス)のアドレスを出力す
る。
The second address conversion section 66 determines the H area (upper address), M area (middle address), and L area (lower address) of the distribution count memory 11a based on the data sent from the first register 58. Output address.

【0258】この第2アドレス変換部66は、前述した
実施例と同じく図16に示すように、レジスタ80、8
2、83とマルチプレクサ81を備え、第1レジスタ5
8より送られてくるデータを下位アドレスとして出力
し、コントローラ55により、レジスタ82に与えられ
る分布カウントスタート領域、レジスタ83に与えられ
る分布カウントエンド領域の値を上位アドレスとしてマ
ルチプレクサ81で選択して出力する。この第2アドレ
ス変換部66は第1レジスタ58から転送されたデータ
を分布カウンタメモリ11の下位アドレスとして、H/
M/L領域指定と分布カウントスタートアドレス/分布
カウントエンドアドレスの切り替えを行う。
As shown in FIG. 16, the second address conversion section 66 includes registers 80 and 8 as in the above-described embodiment.
2 and 83 and a multiplexer 81, and the first register 5
8 is output as the lower address, and the controller 55 selects and outputs the value of the distribution count start area given to the register 82 and the value of the distribution count end area given to the register 83 by the multiplexer 81 as the upper address. I do. The second address conversion unit 66 uses the data transferred from the first register 58 as the lower address of the distribution counter memory 11 to
M / L area designation and distribution count start address / distribution count end address switching are performed.

【0259】57はフラグ検出部であり、第1レジスタ
58の出力に基づいて、分布カウントメモリ11aがフ
ラグを持っているか否か検出する。
Reference numeral 57 denotes a flag detection unit which detects whether or not the distribution count memory 11a has a flag based on the output of the first register 58.

【0260】このフラグ検出部57は,図55に示すよ
うに、0から31のフリップフロップ群153、16
3、173、183を4群持ち、0から63のフリップ
フロップ群193、203フリップフラグ群を2群持
ち、フリップフロップ群153は分布カウントメモリ1
1aのH領域のフラグ1Lに対応し、フリップフロップ
群173は分布カウントメモリ11aのM領域のフラグ
3Lに対応し、フリップフロップ群193は分布カウン
トメモリ11aのL領域のフラグ2Lに対応し、0から
31又は0から63のそれぞれの分布カウントメモリ1
1aが値を持っているかを示す。即ちコントローラ65
よりの出力C1がマルチプレクサ150を介してデコー
ダ151又は171に与えられ、デコーダ151、17
1又は191にてデコードされたフリップフロップ群1
53、173又は193がセットされているかにより、
そのフリップフロップからの出力がセレクタ152、1
72又は192にて選択され、マルチプレクサ160を
介して出力される。
As shown in FIG. 55, the flag detecting section 57 includes flip-flop groups 153 and 16 of 0 to 31.
3, 173 and 183, two flip-flop groups 193 and 203 from 0 to 63, and two flip-flag groups.
The flip-flop group 173 corresponds to the flag 3L in the M area of the distribution count memory 11a, the flip-flop group 193 corresponds to the flag 2L in the L area of the distribution count memory 11a, 1 to 31 or 0 to 63, respectively.
Indicates whether 1a has a value. That is, the controller 65
The output C1 is supplied to the decoder 151 or 171 via the multiplexer 150,
Flip-flop group 1 decoded in 1 or 191
Depending on whether 53, 173 or 193 is set,
The output from the flip-flop is the selector 152, 1
It is selected at 72 or 192 and output via the multiplexer 160.

【0261】また、フリップフロップ群163は分布カ
ウントメモリ11aのフラグ1Hに,フリップフロップ
群183は分布カウントメモリ11aのフラグ2Hに、
フリップフロップ群183は分布カウントメモリ11a
のフラグ3Hに対応し、そのアドレス値が1つだけか、
複数かを示す。即ちコントローラ65よりの出力C1が
マルチプレクサ150を介してデコーダ161、181
又は201に与えられ、デコーダ161、181又は2
01にてデコードされたフリップフロップ群163、1
83又は203がセットされているかにより、そのフリ
ップフロップからの出力がセレクタ162、182又は
202にて選択され、マルチプレクサ160を介して出
力される。
The flip-flop group 163 corresponds to the flag 1H of the distribution count memory 11a, the flip-flop group 183 corresponds to the flag 2H of the distribution count memory 11a,
The flip-flop group 183 includes the distribution count memory 11a.
Corresponding to the flag 3H, and the address value is only one,
Indicates multiple. That is, the output C1 from the controller 65 is supplied to the decoders 161 and 181 via the multiplexer 150.
Or 201 to the decoder 161, 181 or 2
01 flip-flop group 163, 1
Depending on whether 83 or 203 is set, the output from the flip-flop is selected by the selector 162, 182 or 202 and output via the multiplexer 160.

【0262】そして、コントローラ65からのC1信号
により、H領域を選択し、第3レジスタ67の値によ
り、上記フリップフロップを選択し、コントローラ65
からのW信号により、フリップフロップのセットが行な
われる。
The H region is selected by the C1 signal from the controller 65, and the flip-flop is selected by the value of the third register 67.
, The flip-flop is set.

【0263】61は第2カウンタであり、データメモリ
10aのH領域のZ値領域とソートメモリ12のソート
アドレス領域をアクセスする。
Reference numeral 61 denotes a second counter for accessing the Z value area of the H area of the data memory 10a and the sort address area of the sort memory 12.

【0264】62は第4カウンタであり、ソートメモリ
12のH領域のソートアドレス領域をアクセスする。
Reference numeral 62 denotes a fourth counter, which accesses the sort address area in the H area of the sort memory 12.

【0265】63は第5カウンタであり、ソートメモリ
12のL領域のソートアドレス領域をアクセスする。
Reference numeral 63 denotes a fifth counter, which accesses the sort address area in the L area of the sort memory 12.

【0266】72は第7カウンタであり、ソートメモリ
12のM領域のソートアドレス領域をアクセスする。
Reference numeral 72 denotes a seventh counter, which accesses the sort address area of the M area of the sort memory 12.

【0267】70はクリップフラグ検出部であり、図5
6に示すように、0から31のフリップフロップ群70
3を持ち、フリップフロップにセットされるフラグHC
LはH領域の分布カウントメモリ11aに対応し、フリ
ップフロップが”1”であれば、その値に対応する領域
は処理する必要がないため、この値を持つアドレスには
M領域のソート処理を行わないように制御する。フラグ
MCLには、M領域の分布カウントメモリ11aに対応
し、フリップフロップが”1”であればその値に対応す
る領域は処理する必要がないため、この値で持ってアド
レスにはL領域のソート処理を行わないように制御す
る。即ち入力されたデータをデコーダ702でデコード
し、その対応するフリップフロップ群703のフリップ
フロップの出力がセレクタ704のより出力され、フリ
ップフロップの出力が”1”であれば、その値に対応す
る領域は処理する必要がないため、この値を持つアドレ
スにはL領域のソート処理を行わないように制御する。
Reference numeral 70 denotes a clip flag detection unit,
As shown in FIG.
3 and the flag HC set in the flip-flop
L corresponds to the distribution count memory 11a in the H area, and if the flip-flop is "1", the area corresponding to that value does not need to be processed. Control not to perform. The flag MCL corresponds to the distribution count memory 11a in the M area, and if the flip-flop is "1", the area corresponding to that value does not need to be processed. Control not to perform sort processing. That is, the input data is decoded by the decoder 702, the output of the flip-flop of the corresponding flip-flop group 703 is output from the selector 704, and if the output of the flip-flop is "1", the area corresponding to that value is output. Since it is not necessary to perform the processing, the address having this value is controlled not to perform the sort processing of the L area.

【0268】[0268]

【発明の効果】この発明によれば、基準値データを2つ
以上のデータ群に分割してソート処理を行う。即ち、上
位側の基準値データに対して、分布カウントソートを行
う。基準値データのアドレスの小さいものから、同じ値
の基準値データのデータ群に対して下位側の基準値デー
タだけの分布ソートを行い、ソートされたデータをソー
トメモリのアドレスに順次書き込むことにより、大きな
ビット長のデータに対しても高速にソートが実行でき
る。
According to the present invention, the sorting process is performed by dividing the reference value data into two or more data groups. That is, distribution count sorting is performed on the reference value data on the upper side. By performing a distribution sort of only the lower-order reference value data with respect to the data group of the same reference value data from the smaller reference value data address, and sequentially writing the sorted data to the sort memory address, Sorting can be performed at high speed even for data having a large bit length.

【0269】また、この発明は、上位側の基準値データ
のソートの終了後、クリッピング対応のアドレスの上位
桁の基準値データに対しては、下位桁の基準値データの
ソートを省略するように構成することができるので、、
任意の基準値データのポリゴンを除外する3Dクリッピ
ング、3Dピッキングを余分なデータ転送を行うことな
く可能となり、3Dクリッピング、3Dピッキング等を
高速にできる。基準値データを上位桁と下位桁に分割し
てソート処理を行う。
Further, according to the present invention, after the sorting of the upper-order reference value data is completed, the sorting of the lower-order reference value data is omitted for the upper-order reference value data of the address corresponding to clipping. Can be configured,
3D clipping and 3D picking that exclude polygons of arbitrary reference value data can be performed without performing extra data transfer, and 3D clipping, 3D picking, and the like can be performed at high speed. The reference value data is divided into upper digits and lower digits, and the sorting process is performed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明が適用される3次元画像処理装置の全
体構成を示すブロック図である。
FIG. 1 is a block diagram showing an overall configuration of a three-dimensional image processing apparatus to which the present invention is applied.

【図2】この発明のソーティング装置の第1の実施例を
示すブロック図である。
FIG. 2 is a block diagram showing a first embodiment of the sorting apparatus of the present invention.

【図3】この発明の第1の実施例のソーティング処理動
作を示すフローチャートである。
FIG. 3 is a flowchart showing a sorting processing operation according to the first embodiment of the present invention.

【図4】ソーティング処理の概念を示す模式図である。FIG. 4 is a schematic diagram illustrating the concept of a sorting process.

【図5】この発明の第1の実施例に用いられるデータメ
モリとソートメモリのアドレス領域を示す模式図であ
る。
FIG. 5 is a schematic diagram showing an address area of a data memory and a sort memory used in the first embodiment of the present invention.

【図6】この発明の第1の実施例に用いられる分布カウ
ントメモリのアドレス領域を示す模式図である。
FIG. 6 is a schematic diagram showing an address area of a distribution count memory used in the first embodiment of the present invention.

【図7】この発明の第1の実施例のソーティング装置の
具体的構成例を示すブロック図である。
FIG. 7 is a block diagram showing a specific configuration example of the sorting apparatus according to the first embodiment of the present invention.

【図8】図7に示すこの発明のソーティング装置の動作
を説明するフローチャートである。
FIG. 8 is a flowchart for explaining the operation of the sorting apparatus of the present invention shown in FIG. 7;

【図9】図7に示すこの発明のソーティング装置の動作
を説明するフローチャートである。
FIG. 9 is a flowchart for explaining the operation of the sorting apparatus of the present invention shown in FIG. 7;

【図10】図7に示すこの発明のソーティング装置の動
作を説明するフローチャートである。
10 is a flowchart illustrating the operation of the sorting apparatus of the present invention shown in FIG.

【図11】図7に示すこの発明のソーティング装置の動
作を説明するフローチャートである。
11 is a flowchart illustrating the operation of the sorting apparatus of the present invention shown in FIG.

【図12】図7に示すこの発明のソーティング装置の動
作を説明するフローチャートである。
FIG. 12 is a flowchart illustrating the operation of the sorting apparatus of the present invention shown in FIG. 7;

【図13】図7に示すこの発明のソーティング装置の動
作を説明するフローチャートである。
FIG. 13 is a flowchart illustrating the operation of the sorting apparatus of the present invention shown in FIG. 7;

【図14】図7のフラグ検出部の具体的回路図である。FIG. 14 is a specific circuit diagram of a flag detection unit in FIG. 7;

【図15】図7の第1アドレス変換部の具体的回路図で
ある。
FIG. 15 is a specific circuit diagram of a first address conversion unit in FIG. 7;

【図16】図7の第2アドレス変換部の具体的回路図で
ある。
FIG. 16 is a specific circuit diagram of a second address conversion unit in FIG. 7;

【図17】図7のクリップフラグ検出部の具体的回路図
である。
FIG. 17 is a specific circuit diagram of the clip flag detection unit in FIG. 7;

【図18】ソートデータの例を示す模式図である。FIG. 18 is a schematic diagram illustrating an example of sort data.

【図19】H側ソートデータ長8ビット、L側ソートデ
ータ長8ビットのデータ数16の場合のデータメモリ、
分布カウントメモリ及びソートメモリの格納状態を示す
模式図である。
FIG. 19 is a data memory in a case where the number of data is 16 with an H-side sort data length of 8 bits and an L-side sort data length of 8 bits;
It is a schematic diagram which shows the storage state of a distribution count memory and a sort memory.

【図20】H領域のデータメモリのアドレス1に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 20 shows a data memory and distribution count memory when the data stored at the address 1 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図21】H領域のデータメモリのアドレス2に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 21 shows a data memory and a distribution count memory in the case where the data stored at address 2 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図22】H領域のデータメモリのアドレス3に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 22 shows a data memory and distribution count memory when the data stored at address 3 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図23】H領域のデータメモリのアドレス4に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 23 shows a data memory and a distribution count memory when the data stored at address 4 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図24】H領域のデータメモリのアドレス5に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 24 shows a data memory and a distribution count memory in the case where the data stored at address 5 of the data memory in the H area has an H-side sort data length of 8 bits and an L-side sort data length of 8 bits and a data number of 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図25】H領域のデータメモリのアドレス6に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 25 shows a data memory and distribution count memory when the data stored at the address 6 of the data memory in the H area is processed when the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図26】H領域のデータメモリのアドレス7に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 26 shows a data memory and a distribution count memory when the data stored at address 7 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図27】H領域のデータメモリのアドレス8に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 27 shows a data memory and a distribution count memory when the data stored at address 8 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図28】H領域のデータメモリのアドレス9に格納さ
れたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 28 shows a data memory and distribution count memory when the data stored at address 9 of the data memory in the H area is processed when the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits is 16. FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図29】H領域のデータメモリのアドレス10に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 29 shows a data memory and a distribution count memory when the data stored at address 10 of the data memory in the H area is processed when the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図30】H領域のデータメモリのアドレス11に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 30 shows a data memory and distribution count memory in the case where the number of data of the H-side sort data length of 8 bits and the L-side sort data length of 8 bits is 16 when data stored at address 11 of the data memory in the H area is processed. FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図31】H領域のデータメモリのアドレス12に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 31 shows a data memory and distribution count memory when the data stored at the address 12 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図32】H領域のデータメモリのアドレス13に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 32 shows a data memory and distribution count memory when the data stored at address 13 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図33】H領域のデータメモリのアドレス14に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 33 shows a data memory and a distribution count memory when the data stored at the address 14 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図34】H領域のデータメモリのアドレス15に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 34 shows a data memory and distribution count memory when the data stored at the address 15 of the data memory in the H area is H-side sorted data length 8 bits and L-side sorted data length 8 bits and the number of data is 16; FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図35】H領域のデータメモリのアドレス16に格納
されたデータを処理した時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 35 shows a data memory and a distribution count memory when the data stored at address 16 of the data memory in the H area has a data number of 16 for the H-side sorted data length of 8 bits and the L-side sorted data length of 8 bits. FIG. 4 is a schematic diagram illustrating a storage state of a sort memory.

【図36】H領域で”0”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 36 is a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “0” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図37】H領域で”1”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 37 is a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “1” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図38】H領域で”2”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 38 shows a data memory in a case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “2” in the H area is sorted in the L area. FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図39】H領域で”3”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 39 is a data memory in the case where the number of data of the H-side sort data length is 8 bits and the L-side sort data length is 8 bits when only data having a value of “3” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図40】H領域で”4”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 40 is a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “4” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図41】H領域で”5”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 41 is a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “5” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図42】H領域で”6”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 42 is a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “6” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図43】H領域で”7”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 43 is a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “7” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図44】H領域で”9”の値を持つデータだけに対し
てL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 44 is a data memory in the case where the number of data of the H-side sort data length is 8 bits and the L-side sort data length is 8 bits when only data having a value of “9” in the H area is sorted in the L area; FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図45】H領域で”10”の値を持つデータだけに対
してL領域でソートした時のH側ソートデータ長8ビッ
ト、L側ソートデータ長8ビットのデータ数16の場合
のデータメモリ、分布カウントメモリ及びソートメモリ
の格納状態を示す模式図である。
FIG. 45 shows a data memory in the case where the number of data of the H-side sorted data length is 8 bits and the L-side sorted data length is 8 bits when only data having a value of “10” in the H area is sorted in the L area. FIG. 4 is a schematic diagram showing storage states of a distribution count memory and a sort memory.

【図46】Z方向のクリッピングを示す模式図である。FIG. 46 is a schematic diagram showing clipping in the Z direction.

【図47】Z方向のピッキングを示す模式図である。FIG. 47 is a schematic diagram showing picking in the Z direction.

【図48】Z方向のクリッピングを示す模式図である。FIG. 48 is a schematic view showing clipping in the Z direction.

【図49】H領域で”0””1””2”の値を持つもの
に対してクリッピングを行ってソートした例のデータメ
モリ、分布カウントメモリ及びソートメモリの格納状態
を示す模式図である。
FIG. 49 is a schematic diagram showing storage states of a data memory, a distribution count memory, and a sort memory in an example in which values having “0”, “1”, and “2” in the H area are sorted by clipping. .

【図50】H領域で”0””1””2”の値を持つもの
に対してクリッピングを行ってソートした例を示す模式
図である。
FIG. 50 is a schematic diagram showing an example in which clipping and sorting are performed on values having values of “0”, “1”, and “2” in an H region.

【図51】クリッピングまたはピッキングを行ってソー
トした例を示す模式図である。
FIG. 51 is a schematic diagram showing an example of sorting by performing clipping or picking.

【図52】この発明のソーティング装置の第2の実施例
を示すブロック図である。
FIG. 52 is a block diagram showing a second embodiment of the sorting apparatus of the present invention.

【図53】この発明の第2の実施例のソーティング処理
動作を示すフローチャートである。
FIG. 53 is a flowchart showing a sorting processing operation according to the second embodiment of the present invention.

【図54】この発明の第2の実施例のソーティング装置
の具体的構成例を示すブロック図である。
FIG. 54 is a block diagram showing a specific configuration example of a sorting device according to a second embodiment of the present invention.

【図55】図54のフラグ検出部の具体的回路図であ
る。
FIG. 55 is a specific circuit diagram of the flag detection unit in FIG. 54.

【図56】図54のクリップフラグ検出部の具体的回路
図である。
FIG. 56 is a specific circuit diagram of a clip flag detection unit in FIG. 54;

【図57】この発明に用いられるデータメモリとソート
メモリのアドレス領域を示す模式図である。
FIG. 57 is a schematic diagram showing address areas of a data memory and a sort memory used in the present invention.

【図58】この発明に用いられる分布カウントメモリの
アドレス領域を示す模式図である。
FIG. 58 is a schematic diagram showing an address area of a distribution count memory used in the present invention.

【図59】ソートデータの例を示す模式図である。FIG. 59 is a schematic diagram showing an example of sort data.

【図60】ソート処理の概念を示す模式図である。FIG. 60 is a schematic diagram showing a concept of a sorting process.

【図61】H領域のデータメモリのアドレス1に格納さ
れたデータを処理したのみソートした時のH側ソートデ
ータ長5ビット、M側ソートデータ長5ビット、L側ソ
ートデータ長6ビットのデータ数16の場合のデータメ
モリ、分布カウントメモリ及びソートメモリの格納状態
を示す模式図である。
FIG. 61 shows data of an H-side sorted data length of 5 bits, an M-side sorted data length of 5 bits, and an L-side sorted data length of 6 bits when only data stored at address 1 of the data memory in the H area is sorted. It is a schematic diagram which shows the storage state of the data memory in case of Formula 16, a distribution count memory, and a sort memory.

【図62】H領域のデータメモリのアドレス6に格納さ
れたデータを処理したのみソートした時のH側ソートデ
ータ長5ビット、M側ソートデータ長5ビット、L側ソ
ートデータ長6ビットのデータ数16の場合のデータメ
モリ、分布カウントメモリ及びソートメモリの格納状態
を示す模式図である。
FIG. 62 shows an H-side sorted data length of 5 bits, an M-side sorted data length of 5 bits, and an L-side sorted data length of 6 bits when only data stored at address 6 of the data memory in the H area is sorted. It is a schematic diagram which shows the storage state of the data memory in case of Formula 16, a distribution count memory, and a sort memory.

【図63】H領域のデータメモリのアドレス8に格納さ
れたデータを処理したのみソートした時のH側ソートデ
ータ長5ビット、M側ソートデータ長5ビット、L側ソ
ートデータ長6ビットのデータ数16の場合のデータメ
モリ、分布カウントメモリ及びソートメモリの格納状態
を示す模式図である。
FIG. 63 shows an H-side sorted data length of 5 bits, an M-side sorted data length of 5 bits, and an L-side sorted data length of 6 bits when only data stored at address 8 of the H area data memory is sorted. It is a schematic diagram which shows the storage state of the data memory in case of Formula 16, a distribution count memory, and a sort memory.

【図64】H領域のみソートした時のH側ソートデータ
長5ビット、M側ソートデータ長5ビット、L側ソート
データ長6ビットのデータ数16の場合のデータメモ
リ、分布カウントメモリ及びソートメモリの格納状態を
示す模式図である。
FIG. 64 shows a data memory, a distribution count memory, and a sort memory in a case where the number of data is 16 with an H-side sort data length of 5 bits, an M-side sort data length of 5 bits, and an L-side sort data length of 6 bits when only the H area is sorted. It is a schematic diagram which shows the storage state of.

【図65】H領域で”0”の値を持つデータだけに対し
てM,L領域でソートした時のH側ソートデータ長5ビ
ット、M側ソートデータ長5ビット、L側ソートデータ
長6ビットのデータ数16の場合のデータメモリ、分布
カウントメモリ及びソートメモリの格納状態を示す模式
図である。
FIG. 65 shows an H-side sorted data length of 5 bits, an M-side sorted data length of 5 bits, and an L-side sorted data length of 6 when only data having a value of “0” in the H area are sorted in the M and L areas. It is a schematic diagram which shows the storage state of the data memory, the distribution count memory, and the sort memory when the number of bit data is 16.

【図66】H領域で”0”の値を持つデータだけに対し
てM,L領域でソートした時のH側ソートデータ長5ビ
ット、M側ソートデータ長5ビット、L側ソートデータ
長6ビットのデータ数16の場合のデータメモリ、分布
カウントメモリ及びソートメモリの格納状態を示す模式
図である。
FIG. 66: H-side sorted data length 5 bits, M-side sorted data length 5 bits, and L-side sorted data length 6 when only data having a value of “0” in the H area are sorted in the M and L areas. It is a schematic diagram which shows the storage state of the data memory, the distribution count memory, and the sort memory when the number of bit data is 16.

【図67】H領域で”1”の値を持つデータだけに対し
てM,L領域でソートした時のH側ソートデータ長5ビ
ット、M側ソートデータ長5ビット、L側ソートデータ
長6ビットのデータ数16の場合のデータメモリ、分布
カウントメモリ及びソートメモリの格納状態を示す模式
図である。
FIG. 67: H-side sorted data length 5 bits, M-side sorted data length 5 bits, L-side sorted data length 6 when only data having a value of “1” in the H area are sorted in the M and L areas It is a schematic diagram which shows the storage state of the data memory, the distribution count memory, and the sort memory when the number of bit data is 16.

【図68】H領域で”1”の値を持つデータだけに対し
てM,L領域でソートした時のH側ソートデータ長5ビ
ット、M側ソートデータ長5ビット、L側ソートデータ
長6ビットのデータ数16の場合のデータメモリ、分布
カウントメモリ及びソートメモリの格納状態を示す模式
図である。
FIG. 68: H-side sorted data length 5 bits, M-side sorted data length 5 bits, and L-side sorted data length 6 when only data having a value of “1” in the H area are sorted in the M and L areas. It is a schematic diagram which shows the storage state of the data memory, the distribution count memory, and the sort memory when the number of bit data is 16.

【図69】H領域で”12”の値を持つデータだけに対
してM,L領域でソートした時のH側ソートデータ長5
ビット、M側ソートデータ長5ビット、L側ソートデー
タ長6ビットのデータ数16の場合のデータメモリ、分
布カウントメモリ及びソートメモリの格納状態を示す模
式図である。
FIG. 69 shows an H-side sorted data length of 5 when only data having a value of “12” in the H area is sorted in the M and L areas.
FIG. 7 is a schematic diagram showing the storage states of a data memory, a distribution count memory, and a sort memory when the number of data is 16 with bits, M-side sort data length of 5 bits, and L-side sort data length of 6 bits.

【符号の説明】[Explanation of symbols]

10 データメモリ 11 分布カウントメモリ 12 ソートメモリ 15 H領域ソート処理回路 16 L領域ソート処理回路 Reference Signs List 10 data memory 11 distribution count memory 12 sort memory 15 H area sort processing circuit 16 L area sort processing circuit

フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 7/24 G06T 15/40 Continuation of the front page (58) Field surveyed (Int.Cl. 7 , DB name) G06F 7/24 G06T 15/40

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 入力される複数の基準値データをソーテ
ィングするソーティング装置であって、入力される各基
準値データに対応したデータ番号を発生するデータ番号
発生手段と、入力された基準値データを上位と下位のデ
ータに分割して夫々のデータの値に対応するアドレスに
そのデータと等しい値のデータ群のチェーンリストの先
頭のアドレスを保持する第1の記憶手段と、分割された
夫々のデータの値に対応するアドレスにそのデータ値と
等しい値のデータ群のチェーンリストの終点データのア
ドレスを保持する第2の記憶手段と、分割された夫々の
データに付随する基準値データと同値のデータ群を示す
チェーンリストのポインタを格納する第3の記憶手段
と、上記基準値データの分割された上位データよりソー
トを行い同値のデータのみ分割された下位データを処理
するように制御する手段と、を備えてなるソーティング
装置。
1. A sorting apparatus for sorting a plurality of input reference value data, comprising: data number generating means for generating a data number corresponding to each input reference value data; First storage means which divides the data into upper and lower data and holds the first address of a chain list of a data group having a value equal to the data at an address corresponding to the value of each data; Second storage means for holding the address of the end point data of the chain list of the data group having the same value as the data value at the address corresponding to the value of the data value, and data having the same value as the reference value data attached to each of the divided data. A third storage unit for storing a pointer of a chain list indicating a group; and data of the same value by sorting from upper data obtained by dividing the reference value data. Means for controlling so as to process only the divided lower-order data.
【請求項2】 入力される複数の複数桁からなる基準値
データをソーティングするソーティング装置であって、
入力される各基準値データに対応したデータ番号を発生
するデータ番号発生手段と、入力された基準値データを
2つ以上のデータ群に分割して夫々のデータ番号に対応
したアドレスに記憶する複数桁の基準値データ記憶領域
と、分割された各データ群の基準値データに基づきアド
レスが指定されるデータ群に対応した記憶領域を有し、
各領域に対応する前記基準値データが最初に入力された
とき、この記憶領域にデータ番号発生手段の発生するデ
ータ番号を記憶するカウントスタート領域と、前記基準
値データに基づきアドレスが指定される第2の記憶領域
を有し、各領域に対応する前記基準値データが入力され
る毎に、この記憶領域にデータ番号発生手段の発生する
データ番号を更新記憶するカウントエンド領域と、デー
タ番号に基づきアドレスが指定される次のアドレスを指
定するためのポインタ領域と、前記カウントエンド領域
のデータ番号が更新される毎に、更新前のデータ番号で
指定されるポインタ領域に、更新される新たなデータ番
号を書き込む第1の制御手段と、ソート結果を格納する
前記分割されたデータ群に対応したソートアドレス領域
を有するソートメモリと、前記分割されたデータ群の上
位側の基準値データに従い上位側のカウントスタート領
域及び上位側のカウントエンド領域へのデータ番号の書
き込み終了後、上位側のカウントスタート領域に書き込
まれたデータ番号、上位側のポインタ領域に書き込まれ
たデータ番号並びに上位側のカウントエンド領域に書き
込まれたデータ番号を連鎖づけてソートメモリに書き込
む第2の制御手段と、前記上位側の基準値データのソー
トの終了後、上位側の基準値データの同値のデータの前
記上位側の基準値データに対応する下位側の基準値デー
タ記憶領域からの基準値データを下位側のカウントスタ
ート領域及び下位側のカウントエンド領域へ書き込み終
了後、下位側のカウントスタート領域に書き込まれたデ
ータ番号、下位側のポインタ領域に書き込まれたデータ
番号並びに下位側のカウントエンド領域に書き込まれた
データ番号を連鎖づけてソートメモリに書き込む第3の
制御手段と、を備えてなるソーティング装置。
2. A sorting apparatus for sorting inputted reference value data comprising a plurality of digits, comprising:
A data number generating means for generating a data number corresponding to each input reference value data, and a plurality of means for dividing the input reference value data into two or more data groups and storing the divided data at addresses corresponding to the respective data numbers A digit reference value data storage area, and a storage area corresponding to a data group whose address is specified based on the reference value data of each divided data group;
When the reference value data corresponding to each area is input for the first time, a count start area for storing a data number generated by a data number generation means in this storage area, and an address designated based on the reference value data A count end area for updating and storing the data number generated by the data number generating means in this storage area each time the reference value data corresponding to each area is input; A new data area to be updated is stored in a pointer area for specifying the next address to which the address is specified and a pointer area specified by the data number before the update each time the data number in the count end area is updated. First control means for writing a number, and a sort method having a sort address area corresponding to the divided data group for storing the sort result. After the data number has been written to the upper count start area and the upper count end area according to the upper reference value data of the divided data group, the data written to the upper count start area Second control means for linking the number, the data number written in the upper pointer area and the data number written in the upper count end area and writing them in the sort memory, and sorting the upper reference value data After completion of the above, the reference value data from the lower reference value data storage area corresponding to the upper reference value data of the same value data of the upper reference value data is transferred to the lower count start area and the lower count. After writing to the end area, the data number written to the lower count start area and the lower pointer area Sorting device including a third control means for writing the sort memory data number written in the data number and the lower count end regions incorporated come in association chain, a.
【請求項3】 前記カウントスタート領域に夫々対応す
る第1のフラグ領域と、前記カウントエンド領域に夫々
対応する第2のフラグ領域とを備え、前記第1のフラグ
領域はカウントスタート領域にデータが格納されている
場合にセットされ、第2のフラグ領域はカウントエンド
領域のデータが更新されている場合にセットされること
を特徴とする請求項2に記載のソーティング装置。
A first flag area corresponding to the count start area; and a second flag area respectively corresponding to the count end area, wherein the first flag area has data in the count start area. The sorting apparatus according to claim 2, wherein the flag is set when the data is stored, and the second flag area is set when data in the count end area is updated.
【請求項4】 上位側の基準値データに基づくアドレス
に対応するフラグ群を有し、クリッピング又はピッキン
グ処理を行なう領域に対応したアドレスの上記フラグ群
のフラグを設定する手段を備え、上位側の基準値データ
のソートの終了後、クリッピング対応のアドレスの上位
側の基準値データに対しては、第3の制御手段は下位側
の基準値データのソートを省略することを特徴とする請
求項2又は3に記載のソーティング装置。
4. A system comprising: a flag group corresponding to an address based on upper-level reference value data; and means for setting a flag of the flag group at an address corresponding to an area where clipping or picking processing is performed. 3. The method according to claim 2, wherein after the sorting of the reference value data, the third control means skips the sorting of the reference value data on the lower side with respect to the reference value data on the upper side of the address corresponding to clipping. Or the sorting device according to 3.
【請求項5】 入力された基準値データを上位桁と下位
桁と2つのデータ群に分割することを特徴とする請求項
2ないし4のいずれかに記載のソーティング装置。
5. The sorting apparatus according to claim 2, wherein the input reference value data is divided into two data groups of an upper digit and a lower digit.
【請求項6】 入力された基準値データを上位桁、中位
桁、下位桁と3つのデータ群に分割することを特徴とす
る請求項2ないし4のいずれかに記載のソーティング装
置。
6. The sorting apparatus according to claim 2, wherein the input reference value data is divided into three data groups of an upper digit, a middle digit, and a lower digit.
【請求項7】 入力される複数の複数桁からなる基準値
データをソーティングするソーティング装置であって、
入力される各基準値データに対応したデータ番号を発生
するデータ番号発生手段と、入力された基準値データを
上位桁と下位桁のデータに分割して夫々のデータ番号に
対応したアドレスに記憶する上位桁及び下位桁の基準値
データ記憶領域と、上位桁の基準値データに基づきアド
レスが指定される第1の記憶領域を有し、各領域に対応
する上位桁の基準値データが最初に入力されたとき、こ
の記憶領域にデータ番号発生手段の発生するデータ番号
を記憶する上位桁カウントスタート領域と、前記基準値
データに基づきアドレスが指定される第2の記憶領域を
有し、各領域に対応する上位桁の基準値データが入力さ
れる毎に、この記憶領域にデータ番号発生手段の発生す
るデータ番号を更新記憶する上位桁カウントエンド領域
と、データ番号に基づきアドレスが指定される次のアド
レスを指定するための上位桁ポインタ領域と、下位桁の
基準値データに基づきアドレスが指定される第3の記憶
領域を有し、各領域に対応する下位桁の基準値データが
最初に入力されたとき、この記憶領域にデータ番号発生
手段の発生するデータ番号を記憶する下位桁カウントス
タート領域と、前記基準値データに基づきアドレスが指
定される第4の記憶領域を有し、各領域に対応する下位
桁の基準値データが入力される毎に、この記憶領域にデ
ータ番号発生手段の発生するデータ番号を更新記憶する
下位桁カウントエンド領域と、データ番号に基づきアド
レスが指定される次のアドレスを指定するための下位桁
ポインタ領域と、前記上行桁又は下位桁カウントエンド
領域のデータ番号が更新される毎に、更新前のデータ番
号で指定される上位桁又は下位桁ポインタ領域に、更新
される新たなデータ番号を書き込む第1の制御手段と、
ソート結果を格納する上位桁及び下位桁に対応したソー
トアドレス領域を有するソートメモリと、前記上位桁の
基準値データに従い上位桁カウントスタート領域及び上
位桁カウントエンド領域へのデータ番号の書き込み終了
後、上位桁カウントスタート領域に書き込まれたデータ
番号、上位桁ポインタ領域に書き込まれたデータ番号並
びに上位桁カウントエンド領域に書き込まれたデータ番
号を連鎖づけてソートメモリに書き込む第2の制御手段
と、前記上位桁の基準値データのソートの終了後、上位
桁の基準値データと同値のデータの前記上位桁の基準値
データに対応する下位桁基準値データ記憶領域からの基
準値データを下位桁カウントスタート領域及び下位桁カ
ウントエンド領域へ書き込み終了後、下位桁カウントス
タート領域に書き込まれたデータ番号、下位桁ポインタ
領域に書き込まれたデータ番号並びに下位桁カウントエ
ンド領域に書き込まれたデータ番号を連鎖づけてソート
メモリに書き込む第3の制御手段と、を備えてなるソー
ティング装置。
7. A sorting apparatus for sorting inputted reference value data comprising a plurality of digits, comprising:
A data number generating means for generating a data number corresponding to each input reference value data, and dividing the input reference value data into upper and lower digit data and storing the divided data at an address corresponding to each data number It has an upper digit and lower digit reference value data storage area and a first storage area in which an address is specified based on the upper digit reference value data, and the upper digit reference value data corresponding to each area is input first. When this is done, this storage area has an upper digit count start area for storing the data number generated by the data number generation means, and a second storage area whose address is specified based on the reference value data. Each time the corresponding upper digit reference value data is input, the upper digit count end area for updating and storing the data number generated by the data number generating means in this storage area, And a third storage area in which an address is specified based on the reference value data of the lower digit, and a lower digit pointer corresponding to each area. When reference value data is first input, a lower digit count start area for storing a data number generated by the data number generation means in this storage area, and a fourth storage area for specifying an address based on the reference value data And a lower digit count end area for updating and storing a data number generated by a data number generating means in this storage area each time reference value data of a lower digit corresponding to each area is inputted, Each time the data number of the lower digit pointer area for specifying the next address to which the address is specified and the data number of the upper row digit or the lower digit count end area is updated The upper digit or lower digits pointer area specified by the pre-update data number, a first control means for writing new data number to be updated,
A sort memory having a sort address area corresponding to an upper digit and a lower digit for storing a sort result, and after finishing writing a data number to an upper digit count start area and an upper digit count end area according to the reference value data of the upper digit, A second control unit for linking the data number written in the upper digit count start area, the data number written in the upper digit pointer area, and the data number written in the upper digit count end area to the sort memory, and After the sorting of the upper digit reference value data is completed, the reference value data from the lower digit reference value data storage area corresponding to the upper digit reference value data having the same value as the upper digit reference value data is counted. After writing to the area and the lower digit count end area, write to the lower digit count start area. Or data number, the sorting device including a third control means for writing the sort memory data number written into the data number and the lower digit counting end region written in the low-order pointer area in association chain, a.
【請求項8】 上位桁及び下位桁カウントスタート領域
に夫々対応する第1のフラグ領域と、上位桁及び下位桁
カウントエンド領域に夫々対応する第2のフラグ領域と
を備え、前記第1のフラグ領域はカウントスタート領域
にデータが格納されている場合にセットされ、第2のフ
ラグ領域はカウントエンド領域のデータが更新されてい
る場合にセットされることを特徴とする請求項7に記載
のソーティング装置。
8. A first flag area corresponding to an upper digit and a lower digit count start area, and a second flag area respectively corresponding to an upper digit and a lower digit count end area, wherein the first flag The sorting according to claim 7, wherein the area is set when data is stored in the count start area, and the second flag area is set when data in the count end area is updated. apparatus.
【請求項9】 上位桁の基準値データに基づくアドレス
に対応するフラグ群を有し、クリッピング又はピッキン
グ処理を行なう領域に対応したアドレスの上記フラグ群
のフラグを設定する手段を備え、上位桁の基準値データ
のソートの終了後、クリッピング対応のアドレスの上位
桁の基準値データに対しては、第3の制御手段は下位桁
の基準値データのソートを省略することを特徴とする請
求項7又は8に記載のソーティング装置。
And means for setting a flag of a flag group corresponding to an address based on reference value data of an upper digit, and setting a flag of the flag group of an address corresponding to an area for performing clipping or picking processing. 8. The method according to claim 7, wherein after the sorting of the reference value data, the third control means omits the sorting of the reference value data of the lower digit for the reference value data of the upper digit of the address corresponding to the clipping. Or the sorting device according to 8.
JP03415892A 1991-01-29 1992-01-25 Sorting equipment Expired - Fee Related JP3210053B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP03415892A JP3210053B2 (en) 1991-01-29 1992-01-25 Sorting equipment
US07/978,925 US5465371A (en) 1991-01-29 1992-11-18 Sorter for sorting data based on a plurality of reference value data

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2930591 1991-01-29
JP3-29305 1991-11-11
JP32385191 1991-11-11
JP3-323851 1991-11-11
JP03415892A JP3210053B2 (en) 1991-01-29 1992-01-25 Sorting equipment

Publications (2)

Publication Number Publication Date
JPH05189203A JPH05189203A (en) 1993-07-30
JP3210053B2 true JP3210053B2 (en) 2001-09-17

Family

ID=27286505

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03415892A Expired - Fee Related JP3210053B2 (en) 1991-01-29 1992-01-25 Sorting equipment

Country Status (1)

Country Link
JP (1) JP3210053B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2830765B2 (en) * 1994-03-01 1998-12-02 株式会社セガ・エンタープライゼス Polygon data sorting method and game device using the same
WO2006011307A1 (en) * 2004-07-23 2006-02-02 Matsushita Electric Industrial Co., Ltd. Three-dimensional shape drawing device and three-dimensional shape drawing method
WO2013105157A1 (en) * 2012-01-13 2013-07-18 パナソニック株式会社 Image generating device, image generating method, image generating program, and integrated circuit

Also Published As

Publication number Publication date
JPH05189203A (en) 1993-07-30

Similar Documents

Publication Publication Date Title
EP0104431B1 (en) Image display system
JP2763499B2 (en) Image synthesizing apparatus and image synthesizing method
US5465371A (en) Sorter for sorting data based on a plurality of reference value data
GB2226479A (en) Method and apparatus for fractional double buffering
JP3448816B2 (en) Sorting device
JP2500858B2 (en) Display system having extended raster operation circuit
EP0590933B1 (en) Sorting processor
JP3210053B2 (en) Sorting equipment
KR100190674B1 (en) Sorting circuit
US4614941A (en) Raster-scan/calligraphic combined display system for high speed processing of flight simulation data
US5926184A (en) Polygon sorting ordered by grouping according to distances in sorting groups
US6677955B1 (en) Image processing method and image processing apparatus
JP3394067B2 (en) Image generator
JP3313527B2 (en) Graphics controller and pixel data transfer system
JPH06223199A (en) Image composing device
JP3195402B2 (en) Data alignment method and apparatus
US6933940B2 (en) Incremental resolution changes in multi-resolution meshes with update records
JP2899838B2 (en) Storage device
JP2776793B2 (en) Image display method and display device thereof
JPS642953B2 (en)
JP2000029383A (en) Graphic display method, graphic display device and recording medium
US6362824B1 (en) System-wide texture offset addressing with page residence indicators for improved performance
EP0507548A2 (en) Texture for real time image generation
JP2907282B2 (en) Moving object simulation apparatus and high speed drawing processing method for moving object simulation
JPH11203486A (en) Translucent object display method and image display device using the method

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070713

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080713

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees