JPH0266626A - ソート装置 - Google Patents

ソート装置

Info

Publication number
JPH0266626A
JPH0266626A JP21779688A JP21779688A JPH0266626A JP H0266626 A JPH0266626 A JP H0266626A JP 21779688 A JP21779688 A JP 21779688A JP 21779688 A JP21779688 A JP 21779688A JP H0266626 A JPH0266626 A JP H0266626A
Authority
JP
Japan
Prior art keywords
data
memory
input
sort
sorted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP21779688A
Other languages
English (en)
Inventor
Yoshisato Takahashi
高橋 欣悟
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP21779688A priority Critical patent/JPH0266626A/ja
Publication of JPH0266626A publication Critical patent/JPH0266626A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、順次入力される被ソートデータを値の大きい
順又は小さい順に並び替えるソート装置に関し、特にメ
モリ内のソートデータと新たに与えられた被ソートデー
タとを順次比較してソートを行なうソート装置に関する
[従来の技術] 近年、各種データベース又は文字認識における認識候補
の決定等、様々な分野でソート装置が利用され、その高
速化が望まれている。この種のソート装置において、ソ
ートされたメモリ内のデータと新たに与えられた被ソー
トデータとを順次比較して、データを大きい順又は小さ
い順にメモリに格納する所謂バブルソート回路がある。
従来、この種のソート方法としては、次の2つの方法が
ある。
第1の方法は、先ず、ソートデータを格納するソートデ
ータメモリの全記憶領域に初期値を格納してからソート
処理を行う方法である。初期値としては、大きい順にソ
ートする場合には最小値、小さい順にソートする場合に
は最大値が選ばれる。
この方法では、被ソートデータが与えられる度に、被ソ
ートデータとソートデータメモリ全体との比較が行なわ
れる。
一方、第2の方法は、被ソートデータが与えられた場合
、ソートデータメモリ全体との比較は行なわず、ソート
済のデータとの間でのみソートを行なう方法である。こ
の手順を第2図に示す。即ち、この方法では、被ソート
データの入力された数をカウントする入力被ソートデー
タ数カウンタを備え、そのカウント値とメモリアドレス
とをソートの度に比較することにより、順次メモリ内の
データが有効かどうかを判定する。そして、データが有
効な場合のみソートが行われる。
[発明が解決しようとする課題] しかしながら、上述した従来のソート回路のうち、第1
の方法では、ソートに先立ってメモリ全体を初期化する
必要があるため、初期化のためのオーバヘッドがかかっ
たり、初期化のために回路が複雑になるという欠点があ
る。
また、第2の方法では、被ソートデータの入力数によっ
て比較するメモリ量の制御が必要となるので制御が複雑
になる等、処理性能の低下及びハードウェア量の増大を
伴なうという欠点がある。
本発明はかかる問題点に鑑みてなされたものであって、
メモリの初期化を必要とせず、制御の簡単なソート装置
を提供することを目的とする。
[課題を解決するための手段] 本発明に係るソート装置は、ソートデータを記憶するソ
ートデータメモリと、ソートデータの初期値として与え
るべきデータを記憶する初期値記憶手段と、被ソートデ
ータを入力し一時記憶する手段と、前記入力された被ソ
ートデータの数を計数する入力データ数カウンタと、被
ソートデータが入力される度に前記ソートデータメモリ
の先頭アドレスから順次メモリアドレスを生成するメモ
リアドレスカウンタと、このメモリアドレスカウンタの
カウント値が前記入力データ数カウンタのカウント値に
達したことを検出する手段と、この手段での検出前は前
記ソートデータメモリの前記メモリアドレスで指定され
るソートデータを選択し、検出後は前記初期値記憶手段
に記憶されたデータを選択する選択手段と、この選択手
段で選択されたデータと前記入力された被ソートデータ
との大小関係に基いて適宜データの交換と前記ソートデ
ータメモリへの格納とを行うソート手段とを具備してい
る。
[作用] 被ソートデータが入力されると、入力データ数カウンタ
が1つカウントアツプし、メモリアドレスカウンタがソ
ートデータメモリのアドレスを順次生成する。選択手段
は、初めにソートデータメモリのデータを選択してソー
ト手段に供給する。
そして、メモリアドレスが入力データ数カウンタのカウ
ント値に達した場合に、泗択手段は、初期値記憶手段に
記憶された初期値を選択してソート手段に供給する。
従って、本発明によれば、ソートデータメモリ自体の初
期化が不要であり、そのためのオーバヘッド及び回路を
省略できる。また、ソートのためのデータの比較は、常
時メモリ全域にわたって行なえば良いので、制御も簡単
になる。
し実施例コ 次に、本発明の実施例に係るソート回路について添付の
図面を参照して説明する。
第1図はこのソート回路を示すブロック図である。被ソ
ートデータは、先ずソートデータバッファ1を介してソ
ート回路の内部に取込まれ、−旦ソートデータレジスタ
2に格納される。ソートデータレジスタ2の出力は、ソ
ートデータ比較器3及びデータスワツパ4の各一方の入
力に供給されている。一方、ソートデータメモリ5には
、現時点までのソート結果が格納されている。メモリア
ドレスによって指定されソートデータメモリ5から読出
されたソートデータは、ソートデータ選択回路7の一方
の入力に与えられている。同選択回路7の他方の入力に
は、初期値設定回路6に記憶された初期値が与えられて
いる。ソートデータ選択回路7は、後述する比較器9か
らの制御信号に基き、ソートデータと初期値とのいずれ
か一方を選択する。選択されたデータは、ソートデータ
比較器3及びデータスワツパ4の各他方の入力に与えら
れている。ソートデータ比較器3は、入力された2つの
データを比較する。データスワツパ4は、その比較結果
に基き適宜データを交換し、ソートデータレジスタ2及
びソートデータメモリ5に格納する。
入力データ数カウンタ8は、リセット信号16によりリ
セットされ、データ書込み信号17をカウントする。そ
のカウント値は比較器9の一方の入力に与えられている
。また、メモリアドレスカウンタ10は、データ書込み
信号17でリセットされ、カウントup信号18をカウ
ントする。そのカウント値、即ちメモリアドレスは比較
器9の他方の入力に与えられている。比較器9は、両刃
ウンタ8,10のカウント値を比較して両者が一致した
ら、前述したソートデータ選択回路7にソートデータメ
モリ5から初期値設定回路6への切替えのための制御信
号を出力する。
更に、このソート回路には、ソートデータに対応させて
その入力順番を記憶するための回路が付加されている。
即ち、入力データ数カウンタ8の出力は、入力順序バッ
ファ11を介して入力順序レジスタ12に一時格納され
る。入力順序レジスタ12の出力は、データスワツパ1
3の一方の入力に与えられている。データスワツパ13
の他方の入力には入力順序メモリ14からのデータが供
給されている。そして、データスワツパ13は、データ
スワツパ4と全く同様にソートデータ比較器3の出力に
基づいて適宜データを交換し、入力順序レジスタ12と
入力順序メモリ14にデータを格納する。
なお、制御部15は、以上の各部の制御を司る。
以上の構成において、リセット信号16がアクデイプに
なると、入力データ数カウンタ8がリセットされる。被
ソートデータが到来すると、データ書込み信号は入力デ
ータ数カウンタ8をインクリメントし、メモリアドレス
カウンタ10をクリア(0とする)してソートが開始さ
れる9制御部15は、ビジー信号19をアクティブにす
る。
被ソートデータ20はソートデータバッファ1を通じて
ソートデータレジスタ2に格納され、入力データ数カウ
ンタ8の出力は入力順序バッファ11を通じて入力順序
レジスタ12に格納される。
メモリアドレスカウンタ10の出力は、比較器9におい
て、入力データ数カウンタ8の出力と比較されると同時
に、ソートデータメモリ5及び入力順序メモリ14のア
ドレスとして供給される。
比較器9はリセット信号の入力直後では、メモリアドレ
スカウンタ10の初期値と入力データ数カウンタ8の値
とが一致するので、直ちにその出力を1にするが、いく
つかの被ソートデータが到来している場合には、メモリ
アドレスカウンタ10のカウント値が被ソートデータの
到来数に達するまでOを出力し、これに達した時点で1
を出力する。比較器9の出力が0である場合には、ソー
トデータ選択回路7はソートデータメモリ5のデータを
選択し、1の場合には初期値設定回路6のデータを選択
する。ここで大きい順のソートを考えると、初期値設定
回路6には初期値として最小値(例えばO)が設定され
る。従って、リセット直後では、ソートデータ比較器3
への入力は、被ソートデータと初期値Oとになるため、
比較器3はデータスワツパ4,13にデータの変換を指
示する。これにより、データスワツパ4は、ソートデー
タレジスタ2の内容をソートデータメモリ5の指定され
たアドレスに供給し、ソートデータ選択回路7の出力(
初期値)をソートデータレジスタ2に供給する。また、
データスワツパ13は、入力順序レジスタ12と入力順
序メモリ14の内容を入れ替えて夫々に供給する。制御
部15は、各メモリ5,14と各レジスタ2,12に夫
々のデータをストローブするように制御信号を出した後
、メモリアドレスカウンタ10にカウントup信号18
を出力してアドレスをインクリメントする。以後、同様
の動作がくり返されるが、メモリアドレスカウンタ〉入
力データ数カウンタであるので、初期値同士の比較とな
り、有意な比較は行なわれない。メモリアドレスが一巡
すると制御部15はビジー信号19をクリアして次の被
ソートデータの入力待ちとなる。
次の被ソートデータの入力では入力データ数カウンタ8
の値はメモリアドレスカウンタ10のクリア値より1だ
け多いので、このときは比較器9の出力が0となり、ソ
ートデータ選択回路7はソートデータメモリ5の出力を
選択する。このため、メモリ5に格納されたソートデー
タと入力された被ソートデータとの比較が行なわれ、大
きい方のデータと入力順序とが各メモリ5,14に入力
され、小さい方のデータと入力順序が各レジスタ212
に格納された後、メモリアドレカウンタ10がカウント
アツプされる。
次の比較では、メモリアドレスカウンタ10か+1され
た結果、メモリアドレスカウンタ=入力データ数カウン
タとなるので、前述した如くに前段でレジスタ2に格納
された小さい方のデータと初期値設定回路6の出力との
比較となり、以後は同様に動作を継続する。
このように、本回路によれば、ソートデータメモリ5の
初期化が不要で、しかもソートデータメモリ5に対して
は、ソートデータ量に拘らず常に全記憶領域について比
較を行なえば良いので、制御が容易である。
なお、以上の実施例では数の大きい順からのソートにつ
いて説明したが、初期値の設定とデータ比較器の判定方
法を変更すれば小さい順からのソートやソート方向の設
定も可能となること、またカウンタの動作がカウントu
pかd o w nかは本発明にとってどちらを採用す
ることも可能なことは以上の説明から明らかである。
[発明の効果] 以上説明したように本発明は、入力順序を示すカウント
値とメモリのアドレスを発生するカウント値とを比較し
てその結果によってメモリからの出力データを使用する
か、初期値設定回路で発生した初期値を使用するかを選
択することによって、メモリ自体の初期値設定を行なう
というオーバヘッドは不要となり、更に常時メモリ全域
にわたって比較を行なうことになるので制御自体も簡単
となる。
【図面の簡単な説明】
第1図は本発明の実施例に係るソート回路を示すブロッ
ク図、第2図は従来のソート方法の一例を示すフローチ
ャートである。 1;ソートデータバッファ、2;ソートデータレジスタ
、3;ソートデータ比較器、4.13:データスワツパ
、5;ソートデータメモリ、6;初期値設定回路、7;
ソートデータ選択回路、8;入力データ数カウンタ、9
;比較器、10;メモリアドレスカウンタ、11;入力
順序バッファ、12;入力順序レジスタ、14;入力順
序メモリ、15;制御部 +6+’Iじ−、トう名号 17;テーク書込み1占号

Claims (1)

    【特許請求の範囲】
  1. (1)ソートデータを記憶するソートデータメモリと、
    ソートデータの初期値として与えるべきデータを記憶す
    る初期値記憶手段と、被ソートデータを入力し一時記憶
    する手段と、前記入力された被ソートデータの数を計数
    する入力データ数カウンタと、被ソートデータが入力さ
    れる度に前記ソートデータメモリの先頭アドレスから順
    次メモリアドレスを生成するメモリアドレスカウンタと
    、このメモリアドレスカウンタのカウント値が前記入力
    データ数カウンタのカウント値に達したことを検出する
    手段と、この手段での検出前は前記ソートデータメモリ
    の前記メモリアドレスで指定されるソートデータを選択
    し、検出後は前記初期値記憶手段に記憶されたデータを
    選択する選択手段と、この選択手段で選択されたデータ
    と前記入力された被ソートデータとの大小関係に基いて
    適宜データの交換と前記ソートデータメモリへの格納と
    を行うソート手段とを具備したことを特徴とするソート
    装置。
JP21779688A 1988-08-31 1988-08-31 ソート装置 Pending JPH0266626A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21779688A JPH0266626A (ja) 1988-08-31 1988-08-31 ソート装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21779688A JPH0266626A (ja) 1988-08-31 1988-08-31 ソート装置

Publications (1)

Publication Number Publication Date
JPH0266626A true JPH0266626A (ja) 1990-03-06

Family

ID=16709868

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21779688A Pending JPH0266626A (ja) 1988-08-31 1988-08-31 ソート装置

Country Status (1)

Country Link
JP (1) JPH0266626A (ja)

Similar Documents

Publication Publication Date Title
US7484063B2 (en) Sorting method and apparatus using a CAM
JP3265701B2 (ja) 多判定器によるパターン認識装置
US6519655B1 (en) Message preprocessing operations indicated by an associated descriptor read and descriptors belonging to a category of preprocessing descriptors and a category of instruction descriptors
JPH0266626A (ja) ソート装置
JPH09128241A (ja) ファジーロジックプロセッサの言語入力値の所属関数値に対する配列方法および装置
JPH0320822A (ja) データ分類回路
US5894427A (en) Technique for concurrent detection of bit patterns
JPH0210953A (ja) シリアル伝送装置
JPS6137652B2 (ja)
Peleg et al. Packet distribution on a ring
JPH05158658A (ja) データソーティング装置
JP2989962B2 (ja) ベクトル処理装置
JPH06214752A (ja) ソート処理装置
SU1683005A1 (ru) Устройство дл выделени медианы последовательности из п ти чисел
JP2564881B2 (ja) ビット列比較方式
JPH0378826A (ja) 大小順位判定器およびソート処理装置
JPH02150920A (ja) 最大値データ検索方式
JPH0281187A (ja) データ収集装置
JPS6243752A (ja) 信号制御装置
JPH06103028A (ja) データソート処理システム
JPH04247548A (ja) 並列ソート装置
JPH0833812B2 (ja) ソート処理装置
JPH05341957A (ja) リングバッファ回路
JPS58218090A (ja) メモリ回路
JPS62154140A (ja) マ−ジ処理装置