JPH0667844A - ソーティング方法およびソーティング回路 - Google Patents

ソーティング方法およびソーティング回路

Info

Publication number
JPH0667844A
JPH0667844A JP22144392A JP22144392A JPH0667844A JP H0667844 A JPH0667844 A JP H0667844A JP 22144392 A JP22144392 A JP 22144392A JP 22144392 A JP22144392 A JP 22144392A JP H0667844 A JPH0667844 A JP H0667844A
Authority
JP
Japan
Prior art keywords
data
input
processing
stored
output
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.)
Withdrawn
Application number
JP22144392A
Other languages
English (en)
Inventor
Yoshitsugu Inoue
喜嗣 井上
Hiroyuki Kawai
浩行 河合
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP22144392A priority Critical patent/JPH0667844A/ja
Publication of JPH0667844A publication Critical patent/JPH0667844A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Sorting Of Articles (AREA)

Abstract

(57)【要約】 【目的】 付加的な手段を用いずにソーティングを行な
うことを可能とし、その回路規模が被ソーティングデー
タの個数に依存しないようにする。 【構成】 縦続接続した複数の処理要素11〜1nの一
端側の処理要素11へ複数のデータを順次与え、各処理
要素11〜1nにおいて、1つのデータを格納した後、
格納したデータと、その後に与えられる新たなデータと
を比較し、所定の順序関係に基づいて、比較されたデー
タのうちの一方を格納するとともに他方を後段の処理要
素へ与える処理を繰返し行なう。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、任意の順序に並んだ複
数のデータを所定の順序関係に従って並べ替えるソーテ
ィング方法およびソーティング回路に関する。
【0002】
【従来の技術】任意の順序に並んだ複数個のデータを、
所定の順序関係に従って並べ替えるソーティングを行な
うソーティング回路が、種々のデータ処理装置に従来か
ら用いられている。
【0003】図9は、従来のソーティング回路の構成の
一例を示すブロック図である。ソーティング回路は、縦
続接続されたn個の処理要素11,12,13,…1n
からなる。これらの処理要素11〜1nは、それぞれ同
一の内部構成を有し、たとえば1個の集積回路として構
成される。
【0004】処理要素11〜1nのそれぞれは、任意の
順序に並んだ複数個の数値データよりなる被ソーティン
グデータが伝送される入力データ伝送用の入力バス10
1と、ソーティングに関する処理結果のデータが伝送さ
れる出力データ伝送用の出力バス102とに接続され
る。各処理要素11〜1nのそれぞれには、入力バス1
01から被ソーティングデータのうちの1つのデータが
比較データとして各別に与えられる。また、前記比較デ
ータのほかに、被ソーティングデータが、前記比較デー
タとは別の伝送ライン103から第1の処理要素11に
順次入力され、これが順次的に他の処理要素12〜1n
に転送される。
【0005】図10は、処理要素12の内部構成を示す
ブロック図である。他の処理要素の構成も図10に示さ
れる構成と同様である。
【0006】処理要素12は、バスデータレジスタ12
1,シフトデータレジスタ122,比較器123,カウ
ンタ124および制御回路125を含む。バスデータレ
ジスタ121は、入力バス101から被ソーティングデ
ータのうちの1個のデータを取込んで記憶する。シフト
データレジスタ122は、その前段の処理要素から被ソ
ーティングデータを取込んで、その後段の処理要素へ前
記被ソーティングデータをシフトさせる。比較器123
は、バスデータレジスタ121およびシフトデータレジ
スタ122に接続されており、これらに取込まれたデー
タの大小関係を比較し、その比較結果に基づいて信号を
出力する。
【0007】カウンタ124は、比較器123の出力を
カウントし、そのカウント値を出力バス102へ出力す
る。制御回路125は、その前段の処理要素からの制御
信号を受け、その制御信号を後段の処理要素に与えると
ともに、前記制御信号に基づいてバスデータレジスタ1
21およびカウンタ124へこれらの動作を制御するた
めの信号を与える。
【0008】制御回路125は、前段の処理要素から入
力開始信号を制御信号として取込むと、入力バス101
からバスデータレジスタ121にデータを取込ませる制
御を行なうとともに、カウンタ124のカウント値をリ
セットする制御を行なう。また、前段の処理要素から入
力終了信号を制御信号として取込むと、カウンタ124
のカウント値を出力バス102へ出力させる制御を行な
う。このような入力開始信号と入力終了信号とよりなる
制御信号は、各時刻ごとに各処理要素11〜1nの間を
順次シフトされる。
【0009】次に、このような構成のソーティング回路
の動作について説明する。図11は、図9および図10
に示したソーティング回路の動作の説明図である。
【0010】被ソーティングデータがn個のデータで構
成されている場合、そのn個のデータ(以下入力データ
という)X1〜Xnは、時刻t1〜tnの間にX1から
順に各時刻に1つずつ入力バス101に与えられる。i
番目の入力データXiは、時刻tiに入力バス101に
与えられるとただちに第iの処理要素1iのバスデータ
レジスタ121に取込まれて記憶されるとともに、第1
の処理要素11のシフトデータレジスタ122に取込ま
れる。このシフトデータレジスタ122に取込まれたデ
ータは、その後の各時刻ごとに順次後段の処理要素にシ
フトされる。
【0011】第iの処理要素1iでは、時刻tiからt
n+i−1の間、各時刻ごとにその前段の処理要素から
シフトされてくる入力データXj(j=1,2,…,
n)と、記憶された入力データXiとを比較し、入力デ
ータXiのほうが大きい場合に、カウンタ124のカウ
ント値Ciに1を加える。ただし、このカウント値Ci
は初期値を1に設定しておく。
【0012】時刻tn+i−1までに入力データXi
と、すべての入力データX1〜Xnとが比較される。そ
の比較結果に基づいてカウンタ124が、入力データX
1〜Xnの中で入力データXiよりも大きいデータの個
数をカウントする。
【0013】このカウント値Ciは、最終的に入力デー
タXi〜Xnを小さい順に並べた場合の入力データXi
の順位を表わすものである。カウント値C1〜Cnは、
時刻tn+1からt2nまでの間に第1の処理要素11
から順に各時刻ごとに1つずつ出力される。
【0014】このように出力されるカウント値C1〜C
nに基づいて、記憶装置に記憶された被ソーティングデ
ータを所定の手段を用いて並べ替えることによって被ソ
ーティングデータのソーティングが完了する。
【0015】このようなソーティング回路では、n個の
データからなる被ソーティングデータに対してn個の処
理要素11〜1nを用いて並列処理を行ない、データの
入出力と処理とを完全に重畳させることによりデータの
入力に要する時間の2倍の時間で処理が完了する。
【0016】
【発明が解決しようとする課題】しかし、前述のような
従来のソーティング回路では、処理要素11〜1nはデ
ータの順位を求めることができるが、ソーティングを行
なうことはできず、ソーティングを行なうためには、デ
ータを並べ替えるための付加的な手段が必要である。ま
た、各処理要素内のカウンタのビット長が、被ソーティ
ングデータの個数に依存する。そのため、被ソーティン
グデータ数の増加に比例して各処理要素内のカウンタの
容量が大きくなり、ソーティング回路の回路規模が大き
くなる。
【0017】本発明はこのような問題を解決するために
なされたものであり、付加的な手段を用いずにソーティ
ングを行なうことが可能であり、ソーティング回路の回
路規模が被ソーティングデータの個数に依存しないソー
ティング方法およびソーティング回路を提供することを
目的とする。
【0018】
【課題を解決するための手段】請求項1に記載の本発明
は、任意の順序に並んだ複数のデータを、所定の順序関
係に並んで並べ替えるソーティング方法であって、縦続
接続された複数の処理手段の一端側の処理手段へ前記複
数のデータを順次与え、各処理手段において、1つのデ
ータを格納した後、格納したデータと、その後に与えら
れる新たなデータとを比較し、所定の順序関係に基づい
て、比較されたデータのうちの一方を格納するとともに
他方を後段の処理手段へ与える処理を繰返し行なうこと
を特徴とする。
【0019】請求項2に記載の本発明は、順次的に入力
される複数のデータを所定の順序関係に従って並べ替え
るソーティング回路であって、縦続接続された複数の処
理手段を備える。前記複数の処理手段の各々は、その処
理手段に残すべきデータを格納する第1の格納手段と、
後段の処理手段へ出力すべきデータを格納する第2の格
納手段と、入力されたデータと、前記第1の格納手段に
格納されたデータとを比較する比較手段と、前記比較手
段の比較結果より所定の順序関係に基づいて、比較され
たデータのうちの一方を前記第1の格納手段へ与えると
ともに他方を前記第2の格納手段へ与えるデータ出力制
御手段とを含むことを特徴とする。
【0020】請求項3に記載の本発明は、任意の順序に
並んだ複数のデータを所定の順序関係に従って並べ替え
るソーティング方法であって、縦続接続された複数の処
理手段の一端側の処理手段へ前記複数のデータを順次与
え、各処理手段において、所定の順序関係で2つのデー
タを格納した後、格納した2つのデータと、その後に与
えられる新たなデータとを比較し、所定の順序関係に基
づいて、比較されたデータのうちの2つのデータを格納
するとともにそれ以外の1つのデータを後段の処理手段
へ与える処理を繰返し行なうことを特徴とする。
【0021】請求項4に記載の本発明は、順次的に入力
される複数のデータを所定の順序関係に従って並べ替え
るソーティング回路であって、縦続接続された複数の処
理手段を備える。前記複数の処理手段の各々は、入力さ
れたデータのうちその処理手段に所定の順序関係で残す
べき2つのデータを格納する第1の格納手段と、後段の
処理手段へ出力すべきデータを格納する第2の格納手段
と、入力されたデータと前記第1の格納手段の格納され
た2つのデータとを比較する比較手段と、該比較手段の
比較結果より、所定の順序関係に基づいて、比較された
データのうちの2つのデータを前記第1の格納手段へ与
えるとともにそれ以外の1つのデータを前記第2の格納
手段へ与えるデータ出力制御手段とを含むことを特徴と
する。
【0022】
【作用】請求項1に記載の本発明によれば、縦続接続さ
れた複数の処理手段のそれぞれにおいて、たとえば、比
較されるデータのうち、大きいほうのデータを格納する
ようにした場合、最後の入力データに対する処理が終了
すると、それぞれの処理手段に与えられたデータのうち
の最大のデータがそれぞれの処理手段に最終的に格納さ
れる。このため、一端側の処理手段から他端側の処理手
段へ、データが大きい順に格納されるので、データが、
縦続接続された処理手段のみで大きい順に並べ替えられ
る。
【0023】請求項2に記載の本発明によれば、それぞ
れの処理手段では、新たに入力されたデータと、第1の
格納手段に格納されたデータとが比較手段において比較
される。たとえば、比較されるデータのうち、大きいほ
うのデータを処理手段に残すようにした場合、データ出
力制御手段では、比較されたデータのうちの大きいほう
のデータを第1の格納手段に与え、小さいほうのデータ
を第2の格納手段に与える。第2の格納手段に格納され
たデータは後段の処理手段へ出力されるが、この出力デ
ータが後段の処理手段の入力データとなる。すべての入
力データに対してこのような処理が行なわれると、最終
的に第1の格納手段には入力されたデータのうち最大の
データが格納されることとなる。このため、一端側の処
理手段から他端側の処理手段へ、データが大きい順に格
納されるので、縦続接続された処理手段のみでデータは
大きい順に並べ替えられる。
【0024】請求項3に記載の本発明によれば、縦続接
続された複数の処理手段のそれぞれにおいて、たとえば
比較されるデータのうち最大のデータとその次に大きい
データとを格納するようにした場合、最後の入力データ
に対する処理が終了すると、それぞれの処理手段に与え
られたデータのうちの最大のデータとその次に大きいデ
ータとが最終的に処理手段新格納される。このため、一
端側の処理手段から他端側の処理手段へ、各処理手段に
データが大きい順に2つずつ格納されるので、縦続接続
された処理手段のみでデータは大きい順に並べ替えられ
る。
【0025】請求項4に記載の本発明によれば、それぞ
れの処理手段では、新たに入力されたデータと、第1の
格納手段に格納された2つのデータとが比較手段におい
て比較される。たとえば、比較されるデータのうち最大
のデータとその次に大きいデータとを格納するようにし
た場合、データ出力制御手段では、比較されたデータの
うちの最大のデータとその次に大きいデータとを第1の
格納手段に与え、それ以外の1つのデータを第2の格納
手段へ与える。第2の格納手段に格納されたデータは後
段の処理手段へ出力されるが、この出力データが後段の
処理手段の入力データとなる。すべての入力データに対
してこのような処理が行なわれると、最終的に第1の格
納手段には入力されたデータのうち最大のデータとその
次に大きいデータとが格納されることとなる。このた
め、一端側の処理手段から他端側の処理手段へ、各処理
手段にデータが大きい順に2つずつ格納されるので、デ
ータ縦続接続された処理手段のみでデータは大きい順に
並べ変えられる。
【0026】
【実施例】次に、本発明の実施例を図面に基づいて詳細
に説明する。
【0027】第1実施例 図1は、第1実施例によるソーティング回路の構成を示
すブロック図である。このソーティング回路は、縦続接
続されたn個の処理要素11,12,…1nからなる。
処理要素11,12,…1nはそれぞれ同一の内部構成
を有し、たとえば1個の集積回路として構成される。
【0028】このソーティング回路では、n個の数値デ
ータにて構成されるデータ列である被ソーティングデー
タXが時刻t1〜tnの間に1個ずつ順次、処理要素1
1に入力データXIとして入力され、また各処理要素1
1〜1nの処理を開始させるための信号である制御信号
Sが被ソーティングデータXの最初のデータと同時に入
力制御信号SIとして処理要素11に入力される。処理
要素11は、後述するような処理を行なった後、出力デ
ータXOおよび出力制御信号SOを後段の処理要素12
へ出力する。以後、処理要素12〜1nは、前段の処理
要素からの出力データXOを,出力制御信号SOをそれ
ぞれ入力データXI,入力制御信号SIとして処理要素
11と同様の処理を行なう。これによって被ソーティン
グデータXは、処理要素11〜1nへ順次与えられる。
【0029】図2は、処理要素12の内部構成を示すブ
ロック図である。他の処理要素の構成も図2に示される
構成と同様である。入力端子2には被ソーティングデー
タXである入力データXIが入力され、入力端子3には
制御信号Sである入力制御信号SIが入力される。入力
端子2から入力された入力データXIは比較器7と、ス
イッチ8とに与えられる。比較器7は入力データXI
と、後述する選択回路20の出力Zとの大小を比較し、
XI≧Zの場合は制御信号S1=1をスイッチ8へ与
え、一方、XI<Zの場合は制御信号S1=0をスイッ
チ8へ与える。
【0030】スイッチ8には、入力データXI,制御信
号S1の他に選択回路20の出力Zが与えられる。この
スイッチ8は、制御信号S1の値に応じて、入力データ
XIと出力Zとの出力先を、第1レジスタ10aと第2
レジスタ10bとのどちらかに選択するためのスイッチ
であり、制御信号S1=1の場合は、入力データXIを
格納データYとして第2レジスタ10bへ与え、出力Z
を出力データXOとして第1レジスタ10aへ与える。
一方、制御信号S1=0の場合は、入力データXIを出
力データXOとして第1レジスタ10aへ与え、出力Z
を格納データYとして第2レジスタ10bへ与える。
【0031】第1レジスタ10aはスイッチ8から与え
られた出力データXOを格納し、その後出力端子4から
その出力データXOを出力する。第2レジスタ10bは
スイッチ8から与えられた格納データYを格納し、その
後、その格納データYを、選択回路20へ与えるととも
に出力端子6から出力させる。
【0032】また、入力端子3から入力される入力制御
信号SIは、制御回路30に与えられる。制御回路30
は、入力制御信号SIが与えられた場合に選択回路20
へ選択制御信号を与え、その後、出力端子5から出力制
御信号SOを出力する。
【0033】選択回路20には、前述の格納データYお
よび選択制御信号の他に0を表わす最小値データが与え
られている。選択回路20では、選択制御信号が与えら
れていない場合は、格納データYを出力Zとして比較器
7およびスイッチ8へ与え、一方、選択制御信号が与え
られている場合は、前記最小値データを出力Zとして比
較器7およびスイッチ8へ与える。
【0034】このような構成の処理要素では、初期状態
において第1レジスタ10aに格納されている出力デー
タXOと、第2レジスタ10bに格納されている格納デ
ータYとがそれぞれどのような値であっても、入力制御
信号SIとともに最初の入力データXIが入力された場
合、比較器7における入力データXの比較対象データで
ある出力Zは、選択回路20によって被ソーティングデ
ータXの最小値である0であるので、比較器7における
大小関係は必ずXI≧Z(等号はXI=0の場合)とな
る。このため、比較器7の制御信号S1は必ず1とな
り、スイッチ8によって格納データYには入力データX
Iが選択され、出力データXOは0となる。
【0035】そして、入力制御信号SIが入力された後
は、次の入力制御信号SIの入力があるまで、選択回路
20の出力Zは格納データYとなり、毎時刻、比較器7
により入力データXIと格納データYとの比較が行なわ
れ、それまでに入力された入力データSIのうちで最大
のものが格納データYとなる。このような構成の処理要
素を図1のようにn個接続すると、処理要素11〜1n
のそれぞれには、被ソーティングデータXのデータが大
きい順に格納されることになるので、被ソーティングデ
ータXのソーティングが行なえる。このソーティング回
路の各処理要素11〜1nは、最終的に1個の格納デー
タYを格納するだけでよいため、その回路規模が被ソー
ティングデータXのデータ数に依存しない。
【0036】以上のようなソーティング回路では、入力
制御信号SIが入力されて以降の毎時刻に、処理要素1
1が入力データXIと格納データYとの大きいほうを格
納することにより、処理要素11には、それまでに入力
された被ソーティングデータXのうちの最大のデータが
常に格納される。したがって、時刻tnに被ソーティン
グデータXの最後のデータ(n番目のデータ)が処理要
素11に与えられると、比較処理の結果、被ソーティン
グデータX中の最大のデータが処理要素11の格納デー
タYとなる。
【0037】これと同様に処理要素12〜1nにおいて
は、それぞれの前段の処理要素から出力された出力デー
タXOのうちの最大値のデータがそれぞれの格納データ
Yとなる。
【0038】また、たとえば第iの処理要素は、処理要
素11に最初の被ソーティングデータXが入力されてか
らi−1時刻だけ遅れて、前段の処理要素から最初の被
ソーティングデータXが入力される。そして、第iの処
理要素は、前段の処理要素からの出力データXOが入力
データXIとして入力された時刻も、処理要素11のそ
れに対してi−1時間だけ遅れる。したがって、被ソー
ティングデータXの中でi番目に大きいデータは、第i
の処理要素において、時刻tn+i−1に確定する。
【0039】このようにそれぞれの処理要素11〜1n
は、処理結果が確定すると、確定した順に、処理要素1
1〜1nのそれぞれの格納データYを、時刻tn+1か
ら格納データY1〜Ynとして毎時刻出力する。この場
合、たとえば、被ソーティングデータXでi番目に大き
いデータは、時刻tn+i−1に確定しているので、そ
の格納データYiは、時刻tn+iに出力される。また
被ソーティングデータXの中で最小のデータは、処理要
素1nより時刻t2nに出力され、これにて被ソーティ
ングデータXのソーティングが完了する。
【0040】次に、図1および図2のソーティング回路
の動作を具体的に説明する。図3は、図1および図2の
ソーティング回路の動作の具体例を示す説明図であり、
6個のデータ(2,4,3,5,6,1)にて構成され
た被ソーティングデータXのソーティング例を示す。こ
の場合、処理要素は6個必要である。
【0041】まず、時刻t1において、処理要素11に
入力データXIの2と入力制御信号SIとが与えられ
る。処理要素11では、入力制御信号SIが与えられる
ことにより、格納データYは2となり、後段の処理要素
12への出力データXOは0となる。次に、時刻t2に
おいて、処理要素11に入力データXIとして4が与え
られる。処理要素11では、格納データYの2と入力デ
ータXIの4とが比較され、この比較結果により格納デ
ータYが4となり、次段の処理要素12への出力データ
XOは2となる。
【0042】また、処理要素12では、時刻t2におい
て、入力データXIの0と入力制御信号SIとが与えら
れる。処理要素12では入力制御信号SIが与えられる
ことにより、処理要素12の格納データは0となり、次
段の処理要素13への出力データXOは0となる。
【0043】以後の時刻でこのような処理を繰返す過程
において、処理要素11では、入力制御信号SIが与え
られた後は、それまでの入力データXIの中での最大の
データが格納データYとなる。したがって、被ソーティ
ングデータXの最後の入力データXIである1が時刻t
6で処理要素11に与えられ、その比較結果に従ってそ
の前時刻t5での格納データYの6がそのまま、格納デ
ータYとなったとき、その格納データYの6は被ソーテ
ィングデータXのうちで最大値である。
【0044】時刻t7において、次の被ソーティングデ
ータ(12,14,13,15,16,11)のソーテ
ィングが始められる。時刻t7において、処理要素11
には、次の被ソーティングデータXの先頭のデータであ
る入力データXIの12と、入力制御信号SIとが与え
れ、これとともに、既にソーティング結果が確定してい
る前被ソーティングデータXの最大値である格納データ
Yの6が処理要素11から出力される。また、処理要素
11では、入力制御信号SIが与えられるので、入力デ
ータXIの12が格納データYとなり、後段の処理要素
12への出力データXOが0となる。
【0045】また、処理要素12では、時刻t6までに
処理要素11から出力されて与えられた5個の入力デー
タXIのうちの最大のデータである5が格納データYと
なっており、時刻t7において、処理要素11から出力
されて与えられた入力データXIの1と格納データYの
5とが比較されて格納データYの5がそのまま格納デー
タYとなり、後段の処理要素13への出力データXOは
1となり、処理要素12のソーティング結果が確定す
る。そして、時刻t8において、格納データYの5が処
理要素12から出力される。
【0046】このような処理を各処理要素について繰返
し行なうことにより、時刻t12において、前被ソーテ
ィングデータ(2,4,3,5,6,1)の最小値であ
る1が第6の処理要素16から出力される。また、この
間に新たな被ソーティングデータ(12,14,13,
15,16,11)のソーティングも行なわれる。
【0047】以上の第1実施例では、各処理要素11〜
1nでの入力データXIと格納データYとの大小比較に
より、各処理要素11〜1nにおいて最終的に格納され
た格納データYがソーティング処理の結果となる。この
ソーティング回路では、各処理要素11〜1nのそれぞ
れが最終的に1個の格納データYを格納するだけでよい
ため、その回路の規模は被ソーティングデータXのデー
タ数に依存しない。
【0048】第2実施例 次に、第2実施例について説明する。図4は、第2実施
例によるソーティング回路の構成を示すブロック図であ
る。このソーティング回路は、被ソーティングデータX
のデータの個数がn個である場合、縦続接続されたn/
2個の処理要素11,12,13,…,1n/2からな
る。処理要素11,12,…1n/2はそれぞれ同一の
内部構成を有し、たとえば1個の集積回路として構成さ
れる。
【0049】このソーティング回路では、被ソーティン
グデータXが時刻t1〜tnの間に1個ずつ処理要素1
1に入力データXIとして入力され、制御信号Sが入力
制御信号SIとして被ソーティングデータXの最初の入
力データXIと同時に処理要素11に入力される。そし
て、処理要素11では、後述するような処理を行なった
後、出力データXOおよび出力制御信号SOを後段の処
理要素12へ出力する。
【0050】以後、処理要素12〜1n/2は、前段の
処理要素からの出力データXOを入力データXIとする
とともに、前段の処理要素からの出力制御信号SOを入
力制御信号SIとして処理要素11と同様の処理を行な
う。これによって被ソーティングデータXは、処理要素
11〜1n/2へ順次与えられる。
【0051】図5は、第2実施例による処理要素の内部
構成を示すブロック図である。入力端子2には入力デー
タXIが入力され、入力端子3には入力制御信号SIが
入力される。入力端子2から入力した入力データXI
は、第1比較器7a,第2比較器7bおよびスイッチ8
に与えられる。
【0052】第1比較器7aは、入力データXIと、後
述する第1選択回路20aの出力ZAとの大小を比較
し、XI≧ZAの場合は制御信号S1=1をスイッチ8
へ与え、一方、XI<ZAの場合は制御信号S1=0を
スイッチ8へ与える。第2比較器7bは、入力データX
Iと、後述する第2選択回路20bの出力ZBとの大小
を比較し、XI≧ZBの場合は制御信号S2=1をスイ
ッチ8へ与え、一方、XI<ZBの場合は制御信号S2
=0をスイッチ8へ与える。スイッチ8には、入力デー
タXI,制御信号S1,S2の他に出力ZA,ZBが与
えられる。
【0053】このスイッチ8は、制御信号S1,S2の
値に応じて、入力データXIおよび出力ZA,ZBのそ
れぞれの出力先を、第1レジスタ140a,第2レジス
タ10bおよび第3レジスタ10cのいずれかに選択す
るためのスイッチである。
【0054】図6はスイッチ8の入出力関係表を示す図
である。スイッチ8は、S1=0,S2=0である第1
の場合は、出力ZAを格納データYAとして第3レジス
タ10cへ与え、出力ZBを格納データYB2として第
2レジスタ10bへ与え、入力データXIを出力データ
XOとして第1レジスタ10aへ与える。また、スイッ
チ8は、S1=0,S2=1である第2の場合は、出力
ZAを格納データYAとして第3レジスタ10cへ与
え、入力データXIを格納データYB2として第1レジ
スタ10aへ与える。さらに、スイッチ8はS1=1,
S2=1である第3の場合は、入力データXIを格納デ
ータYAとして第3レジスタ10cへ与え、出力ZAを
格納データYB2として第2レジスタ10bへ与え、出
力ZBを出力データXOとして第1レジスタ10aへ与
える。
【0055】第1レジスタ10aは、スイッチ8から与
えられた出力データXOを格納し、その後、出力端子4
からその出力データXOを出力する。第2レジスタ10
bは、スイッチ8から与えられた格納データYB2を格
納し、その後、その格納データYB2を、第4レジスタ
10dへ与えるとともに第2選択回路20bへ与える。
第3レジスタ10cは、スイッチ8から与えられた格納
データYAを格納し、その後、その格納データYAを第
1選択回路20aへ与えるとともに出力端子6から出力
させる。第4レジスタ10dは、第2レジスタ10bか
ら与えられた格納データYB2を格納データYBとして
格納し、その後、その格納データYBを出力端子9から
出力させる。
【0056】また、入力端子3から入力される入力制御
信号SIは制御回路30に与えられる。図7は、制御回
路30の内部構成を示すブロック図である。図7に示す
ように制御回路30は、2つのレジスタ31,31を縦
続接続したシフトレジスタからなる。この制御回路30
は、入力制御信号SIが入力された時刻においては選択
制御信号SAを第1選択回路20aおよび第2選択回路
20bへ与え、また、レジスタ31,31の動作によ
り、入力制御信号SIが入力した時刻の2時刻後に出力
端子5から出力制御信号SOを後段の処理要素へ出力す
る。
【0057】第1選択回路20aには、前述の格納デー
タYAおよび選択制御信号SAの他に0を表わす最小値
データが与えられている。第1選択回路20aは、選択
制御信号SAが与えられていない場合は、格納データY
Aを出力ZAとして第1比較器7aおよびスイッチ8へ
与え、一方、選択制御信号SAが与えられている場合
は、前記最小値データの0を出力ZAとして第1比較器
7aおよびスイッチ8へ与える。
【0058】第2選択回路20bには、前述の格納デー
タYB2および選択制御信号SAの他に、0を表わす最
小値データが与えられる。第2選択回路20bは、選択
制御信号SAが与えられていない場合は、格納データY
B2を出力ZBとして第2比較器7aおよびスイッチ8
へ与え、一方、選択制御信号SAが与えられている場合
は、前記最小値データの0を出力ZBとして第2比較器
7bおよびスイッチ8へ与える。
【0059】このような構成の処理要素では、初期状態
において第1レジスタ10aに格納されている出力デー
タXOと、第2レジスタ10bに格納されている格納デ
ータYB2と、第3レジスタ10cに格納されている格
納データYAとがそれぞれどのような値であっても、入
力制御信号SIとともに最初の入力データXIが入力さ
れた場合、入力データXIの比較対象データである出力
ZA,ZBは、第1選択回路20aおよび第2選択回路
20bによって0になる。
【0060】このため、入力データXIと、出力ZA
と、出力ZBとの大小関係は、必ずXI≧ZA≧ZB
(等号はXI=0の場合)となる。このため、第1比較
器7aの制御信号S1および第2比較器7bの制御信号
S2は、必ず1となり、格納データYAには、入力デー
タXIが選択され、格納データYB2および出力データ
YOは0となり、格納データYAと格納データYB2と
の関係は必ずYA≧YB2となる。
【0061】そして、入力制御信号SIが入力された後
は、次の入力制御信号SIの入力があるまで、第1選択
回路20aの出力ZAは格納データYA、第2選択回路
20bの出力ZBは格納データYB2となる。そして、
毎時刻入力データXIと、格納データYAと、格納デー
タYB2との比較が行なわれ、それまでに入力された入
力データXIのうちで最大のデータが格納データYAと
して格納され、その次に大きいデータが格納データYB
2として格納される。
【0062】このような構成の処理要素を図4のように
n/2個接続すると、処理要素11〜n/2のそれぞれ
には、被ソーティングデータXのデータが大きい順に2
個ずつ格納されることになるので、被ソーティングデー
タXのソーティングが行なえる。それぞれの処理要素1
1〜1n/2では、それぞれの格納データYA,YB2
を処理結果が確定した後、格納データY1,Y2,…Y
n−1,Ynとして出力する。
【0063】次に、図4および図5のソーティング回路
の動作を具体的に説明する。図8は、図4および図5の
ソーティング回路の動作の具体例を示す説明図であり、
6個のデータ(2,4,3,5,6,1)にて構成され
た被ソーティングデータXのソーティング例を示す。こ
の場合処理要素は3個必要である。
【0064】まず、時刻t1において処理要素11に入
力データXIの2と入力制御信号SIとが与えられる。
処理要素11では、入力制御信号SIが与えられること
により、入力データXI=2,格納データYA=0,格
納データYB2=0が比較され、この比較結果として格
納データYA=2,格納データYB2=0,出力データ
XO=0となる。
【0065】次に、時刻t2において、処理要素11に
入力データXIの4が与えられる。処理要素11では、
入力データXI=4,格納データYA=2,格納データ
YB2=0が比較され、この比較結果として、格納デー
タYA=4,格納データYB2=2,出力データXO=
0となる。
【0066】また、これと同時に、時刻t1で格納デー
タYB2に格納されていた0は格納データYBとなる。
また、処理要素12では、時刻t3において処理要素1
1から入力データXIの0と入力制御信号SIとが与え
られる。これにより処理要素12では、格納データYA
=0,格納データYB2=0,出力データ=0となる。
【0067】以後の時刻で、このような処理を繰返す過
程において、処理要素11では、入力制御信号SIが与
えられた後は、それまでの入力データXIの中での最大
のデータが格納データYAとなり、その次に大きいデー
タが格納データYB2となる。したがって、ソーティン
グデータXの最後の入力データXIである1が時刻t6
で処理要素11に与えられ、その比較結果に従って処理
要素11の格納データYAの6がそのまま格納データY
Aとなったとき、その格納データYAの6はソーティン
グデータXのうちで最大のデータであり、格納データY
B2の5はその次に大きいデータである。
【0068】時刻t7において次の被ソーティングデー
タ(12,14,13,15,16,11)のソーティ
ングが始められる。時刻t7において、処理要素11に
は、次の被ソーティングデータXの先頭のデータである
入力データXIの12と、入力制御信号SIとが与えら
れ、これとともに、既にソーティング結果が確定してい
る前被ソーティングデータXの最大のデータである6が
処理要素11から出力される。また、処理要素11で
は、入力制御信号SIが与えられるので、比較データで
ある格納データYA,格納データYB2はともに0とな
り、入力データXIの12はそのまま格納データYAと
なる。そして、格納データYB2は0となり、出力デー
タXOが0となる。
【0069】また、処理要素12では、時刻t6までに
処理要素11から出力されて与えられた3個の入力デー
タXIのうち最大のデータが格納データYAとなってお
り、その次に大きいデータが格納データYB2となって
いる。時刻t7において処理要素11から出力されて与
えられた4個目の入力データXIの1と、格納データY
Aの4と、格納データYB2の3とが比較され、格納デ
ータYAの4がそのまま格納データYAとなり、格納デ
ータYB2の3がそのまま格納データYB2となり、入
力データXIの1が出力データXOとなって、処理要素
12のソーティング結果が確定する。
【0070】このような処理が各処理要素について繰返
し行なわれることにより、時刻t12において、被ソー
ティングデータX(2,4,3,5,6,1)の最小値
である1が処理要素13から出力される。また、この間
に次の被ソーティングデータX(12,14,13,1
5,16,11)のソーティングも行なわれる。
【0071】以上の第2実施例では各処理要素11〜1
n/2での入力データXIと、格納データYA,YB2
との大小比較により各処理要素11〜1n/2に最終的
に格納された格納データYA,YB2がソーティング処
理の結果となる。
【0072】このソーティング回路では各処理要素11
〜1n/2のそれぞれが最終的に2個の格納データY
A,YBを格納するだけでよいため、その回路の規模は
被ソーティングデータXのデータ数に依存しない。
【0073】なお、本実施例においては、被ソーティン
グデータを大きいものから順に並べ替える方法および回
路について説明したが、これに限らず、被ソーティング
データを小さいものから順に並べ替えるようにしてもよ
い。
【0074】
【発明の効果】請求項1に記載の本発明によれば、縦続
接続された処理手段のそれぞれに、一端側から順に所定
の順序関係に基づくソーティング結果が格納されるた
め、処理手段以外の付加的な手段を用いずにソーティン
グを行なうことができ、また、各処理手段は最終的に1
つのデータを格納するだけでよいため、回路規模が、ソ
ーティングされるデータの個数に依存せず一定となる。
【0075】請求項2に記載の本発明によれば、縦続接
続された処理手段のそれぞれにおいて、一端側から順
に、第1の格納手段に所定の順序関係に基づくソーティ
ング結果が格納されるため、処理手段以外の付加的な手
段を用いずにソーティングを行なうことができ、また、
各処理要素は最終的に1つのデータを格納するだけでよ
いため、回路規模が、ソーティングされるデータの個数
に比例せず一定となる。
【0076】請求項3に記載の本発明によれば、縦続接
続された処理手段のそれぞれにおいて、一端側から順
に、所定の順序関係に基づくソーティング結果が2つず
つ格納されるため、処理手段以外の付加的な手段を用い
ずにソーティングを行なうことができ、また、各処理手
段は、最終的に2つのデータを格納するだけでよいた
め、回路規模が、ソーティングされるデータの個数に依
存せず一定となる。
【0077】請求項4に記載の本発明によれば、縦続接
続された処理手段のそれぞれにおいて、一端側から順
に、第1の格納手段に所定の順序関係に基づくソーティ
ング結果が2つずつ格納されるため、処理手段以外の付
加的な手段を用いずにソーティングを行なうことがで
き、また、各処理手段は最終的に2つのデータを格納す
るだけでよいため、回路規模が、ソーティングされるデ
ータの個数に依存せず一定となる。
【図面の簡単な説明】
【図1】第1実施例によるソーティング回路の構成を示
すブロック図である。
【図2】第1実施例による処理要素の内部構成を示すブ
ロック図である。
【図3】図1および図2のソーティング回路の動作の具
体例を示す説明図である。
【図4】第2実施例によるソーティング回路の構成を示
すブロック図である。
【図5】第2実施例による処理要素の内部構成を示すブ
ロック図である。
【図6】図5におけるスイッチの入出力関係表を示す図
である。
【図7】図5における制御回路の内部構成を示すブロッ
ク図である。
【図8】図4および図5のソーティング回路の動作の具
体例を示す説明図である。
【図9】従来のソーティング回路の一例を示すブロック
図である。
【図10】従来のソーティング回路の処理要素の内部構
成を示すブロック図である。
【図11】従来のソーティング回路の動作の説明図であ
る。
【符号の説明】
7 比較器 7a 第1比較器 7b 第2比較器 8 スイッチ 10a 第1レジスタ 10b 第2レジスタ 10c 第3レジスタ 11 〜1n,12/n 処理要素

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 任意の順序に並んだ複数のデータを所定
    の順序関係に従って並べ替えるソーティング方法であっ
    て、 縦続接続された複数の処理手段の一端側の処理手段へ前
    記複数のデータを順次与え、各処理手段において、1つ
    のデータを格納した後、格納したデータと、その後に与
    えられる新たなデータとを比較し、所定の順序関係に基
    づいて、比較されたデータのうちの一方を格納するとと
    もに他方を後段の処理手段へ与える処理を繰返し行な
    う、ソーティング方法。
  2. 【請求項2】 順次的に入力される複数のデータを所定
    の順序関係に従って並べ替えるソーティング回路であっ
    て、 縦続接続された複数の処理手段を備え、 前記複数の処理手段の各々は、 その処理手段に残すべきデータを格納する第1の格納手
    段と、 後段の処理手段へ出力すべきデータを格納する第2の格
    納手段と、 入力されたデータと、前記第1の格納手段に格納された
    データとを比較する比較手段と、 前記比較手段の比較結果より所定の順序関係に基づい
    て、比較されたデータのうちの一方を前記第1の格納手
    段へ与えるとともに他方を前記第2の格納手段へ与える
    データ出力制御手段とを含む、ソーティング回路。
  3. 【請求項3】 任意の順序に並んだ複数のデータを所定
    の順序関係に従って並べ替えるソーティング方法であっ
    て、 縦続接続された複数の処理手段の一端側の処理手段へ前
    記複数のデータを順次与え、各処理手段において、所定
    の順序関係で2つのデータを格納した後、格納した2つ
    のデータと、その後に与えられる新たなデータとを比較
    し、所定の順序関係に基づいて、比較されたデータのう
    ちの2つのデータを格納するとともにそれ以外の1つの
    データを後段の処理手段へ与える処理を繰返し行なう、
    ソーティング方法。
  4. 【請求項4】 順次的に入力される複数のデータを所定
    の順序関係に従って並べ替えるソーティング回路であっ
    て、 縦続接続された複数の処理手段を備え、 前記複数の処理手段の各々は、 入力されたデータのうちその処理手段に所定の順序関係
    で残すべき2つのデータを格納する第1の格納手段と、 後段の処理手段へ出力すべきデータを格納する第2の格
    納手段と、 入力されたデータと前記第1の格納手段の格納された2
    つのデータとを比較する比較手段と、 前記比較手段の比較結果より、所定の順序関係に基づい
    て、比較されたデータのうちの2つのデータを前記第1
    の格納手段へ与えるとともにそれ以外の1つのデータを
    前記第2の格納手段へ与えるデータ出力制御手段とを含
    む、ソーティング回路。
JP22144392A 1992-08-20 1992-08-20 ソーティング方法およびソーティング回路 Withdrawn JPH0667844A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22144392A JPH0667844A (ja) 1992-08-20 1992-08-20 ソーティング方法およびソーティング回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22144392A JPH0667844A (ja) 1992-08-20 1992-08-20 ソーティング方法およびソーティング回路

Publications (1)

Publication Number Publication Date
JPH0667844A true JPH0667844A (ja) 1994-03-11

Family

ID=16766818

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22144392A Withdrawn JPH0667844A (ja) 1992-08-20 1992-08-20 ソーティング方法およびソーティング回路

Country Status (1)

Country Link
JP (1) JPH0667844A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009167913A (ja) * 2008-01-16 2009-07-30 Mitsubishi Electric Corp スクロール流体機械

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009167913A (ja) * 2008-01-16 2009-07-30 Mitsubishi Electric Corp スクロール流体機械
JP4726914B2 (ja) * 2008-01-16 2011-07-20 三菱電機株式会社 スクロール流体機械

Similar Documents

Publication Publication Date Title
US4766561A (en) Method and apparatus for implementing multiple filters with shared components
CN101162471B (zh) 一种插入排序的方法和装置
JP3744285B2 (ja) シフトレジスタ及びその制御方法
US10101965B1 (en) Method and apparatus for high speed streaming sorter
US5860019A (en) Data driven information processor having pipeline processing units connected in series including processing portions connected in parallel
JP2752634B2 (ja) ソート処理装置
EP1459466B1 (en) Insertion sorter
JPH0667844A (ja) ソーティング方法およびソーティング回路
KR20020065386A (ko) 소트 처리 방법 및 소트 처리 장치
US6675291B1 (en) Hardware device for parallel processing of any instruction within a set of instructions
US5148384A (en) Signal processing integrated circuit
RU2362209C1 (ru) Одномерный медианный фильтр с модульной архитектурой
US4604726A (en) Sorting apparatus
TWI730335B (zh) 排序裝置
JP2998647B2 (ja) データ順次セレクト方式
JPH0512011A (ja) パイプライン回路
KR0172508B1 (ko) 비트 시리얼 디지틀 정렬기
JPH08171479A (ja) ソート装置
JP2007213423A (ja) バブルソート回路およびそれを用いたデータ圧縮システム
JPH10149276A (ja) ソート回路およびソート方法
JPS5965352A (ja) ソ−ト装置
SU637810A1 (ru) Устройство дл сортировки разр дных чисел
JPS62237523A (ja) ソ−テイング回路
SU1285472A1 (ru) Устройство дл выбора групповых за вок в вычислительной системе
RU1781680C (ru) Устройство дл сортировки чисел

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19991102