JP2007114944A - 2分木構造の情報を記憶する装置及びヒープ構造の情報を記憶する装置 - Google Patents
2分木構造の情報を記憶する装置及びヒープ構造の情報を記憶する装置 Download PDFInfo
- Publication number
- JP2007114944A JP2007114944A JP2005304336A JP2005304336A JP2007114944A JP 2007114944 A JP2007114944 A JP 2007114944A JP 2005304336 A JP2005304336 A JP 2005304336A JP 2005304336 A JP2005304336 A JP 2005304336A JP 2007114944 A JP2007114944 A JP 2007114944A
- Authority
- JP
- Japan
- Prior art keywords
- information
- layer
- address
- memory device
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【解決手段】N個のメモリ装置のレイヤ0に対応する第2の情報は、レイヤ1に対応する第1の情報の親になる第1の関係と、レイヤj−1に対応する第4の情報は、(2≦j≦N−1)となるレイヤjに対応する第3の情報の親になる第2の関係に基づいて、2分木構造の情報における親子の対応関係が識別される分散メモリ手段と、分散メモリ手段のメモリ装置の(1≦L≦N−1)となるレイヤLに対応するアドレス情報から、レイヤ1に対応するアドレスに至るまでの親子の対応関係にある情報を、同時に選択するアドレス入力手段とを備える。
【選択図】図1
Description
以上から明らかな通り、キューイングシステムのスケーラビリティの向上には、複数の優先度情報から最も高い優先度を選択するソータを、多数の優先度に対応させ、且つ、高速に実現することが必要となる。
図13は、プライオリティエンコーダの一例を示す説明図である。図13に示すように、プライオリティエンコーダとは、入力信号に対応する優先度が予め定められ、入力信号によって示される優先度から最も高い優先度の値を出力する、組み合わせ論理回路のことである。
多数の優先度への対応を必要とするため、プライオリティエンコーダでは対応が困難となる場合、従来の技術では、2分木(binary tree)によるソータが多く用いられる。
2分木によるソータは、優先度情報の比較を下位のレイヤから上位のレイヤに逐次実行する必要があるため、並列処理によって高速化することは論理的に不可能である。
従って、アルゴリズムを独立に動作可能な幾つかの段階に分割できない場合、例えば、アルゴリズムの初期段階で参照される変数が、アルゴリズムの最終段階で更新されている場合等は、パイプライン化することはできない。
この間題点を解決し、対応する優先度情報数のメモリでソータを実現する方法として、非特許文献1に、ヒープによるソータが開示されている。ヒープは、2分木によるデータ構造の一種であるヒープ構造と、これに優先度情報を入出力するアルゴリズムから構成される。
配列によるヒープ構造に優先度情報を入力する挿入処理、ヒープ構造から最も優先度が高い優先度情報を出力する削除処理は、配列によるヒープ構造において、親の優先度情報が子の優先度以上となる関係、及び優先度情報が左詰めで配置される関係を保つように、優先度情報を再配置する。
(a)挿入位置の初期値を、最も左の空き情報とする。
(b)入力する優先度情報の優先度が、挿入位置の親の優先度以下の場合、若しくは挿入位置が最上位の優先度情報となる場合、入力する優先度情報を挿入位置に移動して停止。(c)入力する優先度情報の優先度が、挿入位置の親の優先度より高い場合、挿入位置の親の優先度情報を挿入位置へ移動し、次の挿入位置を(移動前の)親の位置とする。
(d)停止するまで(b),(c)を繰り返す。
図18は、図17に示したヒープ構造に優先度7の情報を挿入する場合のアルゴリズムの例を示す説明図であり、図19は、図18において情報を挿入した後のヒープ構造を示す説明図である。
(a)最上位の優先度情報を削除して出力し、その結果、ヒープ構造に記憶された優先度情報数が0となる場合、停止。
(b)最も右の優先度情報を削除して、挿入する優先度情報とする。
(c)挿入位置の初期値を、最上位の優先度情報とする。
(d)挿入する優先度情報の優先度が、挿入位置の全ての子の優先度以上の場合、若しくは挿入位置の優先度情報が子を持たない場合、挿入する優先度情報を挿入位置に移動して停止。
(e)挿入する優先度情報の優先度が、少なくとも1つの子の優先度より低い場合、(子が2つある場合は優先度が高い方の)子を挿入位置に移動し、次の挿入位置を(移動前の)子の位置とする。
(f)停止するまで(d),(e)を繰り返す。
先に述べた通り、ヒープによるソータの特徴は、必要となるメモリが2分木によるソータの場合の約半分で済むため、リソースの使用効率が高い点が上げられる。更に、ヒープ構造を配列で実現した場合、優先度情報が低位アドレスから上位アドレスに向けて左詰めで配置されるため、メモリの空き領域の管理が非常に容易となり、高速な動作が可能となる点にある。
更に、優先度情報が記憶されていないノードを高速に特定するために、優先度情報が記憶されていないノードのアドレスをFIFO(First In First Out)キュー等で管理する必要が生じる場合がある。このような処理は、多数の優先度数に対応する場合、高速化への大きな妨げとなる。
以上述べた、ヒープによるソータが、実用的に対応可能な優先度数は数千、キューイングシステムに適用した場合に対応可能な通信速度は1Gbps程度となるが、現在、通信速度が10G〜40Gbpsの回線が実用に供されており、ヒープによるソータも高速化が必要とされている。
もう1つの方法は、最下位のレイヤにおいて、優先度情報が記憶されていないノードを何らかの方法で選択し、そのノードから最上位のノードに至るまでの優先度情報を、比較する優先度情報として選択する方法(特許文献2の請求項4から9参照)である。
後者の方法は、優先度情報の1ビットを情報の有無の識別に使用するため、優先度情報が表現可能な数値の範囲が半減して、リソースの使用効率を低下させてしまう問題が生じる。
この場合、ヒープ構造の最上位以外の各ノードに、記憶した情報数の差分を計数するカウンタを設ける必要があり、ヒープ構造を数千優先度に対応させると、実装に必要なリソース量が莫大なものになってしまう。
このため、特許文献2の請求項5に記載の通り、優先度情報が記憶されていないノードは、挿入処理のため選択されているノードとそれ以外のノードに分別して管理しなければならず、更に、実装が複雑化してしまうことが避けられない。
このため、特許文献2の段落番号0064に記載されている通り、ヒープ構造に記憶された優先度情報がほぼ満杯に近い状態では、挿入処理が実行できない場合が生じ、ヒープ構造が完全には使用できないという問題が生じる。
この発明の一実施の形態に係る2分木構造の情報を記憶する装置は、N個のメモリ装置から構成され、該メモリ装置が各々対応するレイヤをレイヤ0からレイヤN−1とする場合、レイヤ0に対応するメモリ装置は、単一の情報を記憶し、(1≦i≦N−1)となるレイヤiに対応するメモリ装置は、各々iビットのアドレスで情報を識別し、小数点以下を切り捨てた整数値を商とする除算演算子を「/」として、レイヤ1に対応するメモリ装置のアドレス0若しくはアドレス1で識別される情報を第1の情報とし、レイヤ0に対応するメモリ装置の情報を第2の情報とする場合、該第2の情報は該第1の情報の親に、該第1の情報は該第2の情報の子になる第1の関係と、(2≦j≦N−1)となるレイヤjに対応するメモリ装置のアドレスAで識別される情報を第3の情報とし、レイヤj−1に対応するメモリ装置のアドレスA/2で識別される情報を第4の情報とする場合、該第4の情報は該第3の情報の親に、該第3の情報は該第4の情報の子になる第2の関係に基づいて、2分木構造の情報における親子の対応関係が識別される分散メモリ手段と、(1≦L≦N−1)となるレイヤLに対応する該分散メモリ手段のメモリ装置のアドレスにBが入力された場合、(1≦k≦L−1)となるレイヤkに対応する該分散メモリ手段のメモリ装置のアドレスに、各々、B/2(L−k)を入力することによって、レイヤLに対応する該分散メモリ手段のメモリ装置のアドレスBの情報から、レイヤ1に対応する該分散メモリ手段のメモリ装置のアドレスB/2(L−1)に至るまでの親子の対応関係にある情報を、同時に選択するアドレス入力手段とを備えて構成したことを特徴とする。
図1は、本発明による、ヒープによるソータに優先度情報を挿入する際の並列化されたアルゴリズムの概要を示し、(a)は、挿入位置の決定の説明図、(b)は、挿入位置への移動の説明図である。図1は、図19に示したヒープ構造に優先度7の情報を挿入する場合の例である。
図2(a)に示すように、本発明では、最上位の優先度情報を削除して出力する。削除の結果、ヒープ構造に記憶された優先度情報数が0となる場合、削除処理を終了し、それ以外の場合は、最も右の優先度情報を削除して、挿入する優先度情報に移動する。また、最上位のレイヤの次のレイヤから下位レイヤに向けて優先度情報を選択し、挿入する優先度情報と同時に比較して、挿入位置を決定する。
本発明の請求項2及び請求項4に記載の2分木構造の情報を記憶する装置は、各々本発明の請求項1及び請求項3に記載の2分木構造の情報を記憶する装置における、メモリ装置のアドレス入力のビットの上位下位の関係が逆転した装置であり、論理的には等価である。このため、説明は省略する。
pop出力は、これを出力するレイヤが情報の移動元であることを上のレイヤに示す信号であり、第1の情報移動手段で使用される。push出力は、これを出力するレイヤが情報の移動元であることを下のレイヤに示す信号であり、第2の情報移動手段で使用される。pop_data出力は、移動する情報を上のレイヤに示す信号であり、第1の情報移動手段で使用される。push_data出力は、移動する情報を下のレイヤに示す信号であり、第2の情報移動手段で使用される。
このため、本発明のヒープ構造の情報を記憶する装置において、情報の入出力処理が行なわれていない状態では、あるレイヤの情報数が満杯であれば、それ以上のレイヤの情報数も満杯となる。また、あるレイヤの情報数が空であれば、それ以下のレイヤの情報数も空となる。
なお、第1の情報移動手段及び第2の情報移動手段における選択された情報と、挿入する情報若しくは入力する情報の比較の結果、優先度が等しい場合は、低優先若しくは高優先の何れか一方に分類すればよく、本発明の請求項は何れの場合も包含していることは自明である。
無論、3状態バッファを介して、各レイヤが生成したアドレスの値を、各々push_pop_address_busに接続し、あるレイヤが生成したアドレスの値を、push_pop_address_busに入力する場合は、そのレイヤの3状態バッファによって信号を入力しても良く、本発明の請求項は、何れの実施方法をも包含していることは自明である。
図6に示すように、バスのビット4は、レイヤ1の分散メモリ手段のメモリ装置のアドレス入力A0、レイヤ2のA1、レイヤ3のA2、レイヤ4のA3、レイヤ5のA4に入力され、バスの他のビットも、入力される。
図6に示すように、バスのビット4には、レイヤ1の情報数のビット0、レイヤ2の情報数のビット1、レイヤ3の情報数のビット2、レイヤ4の情報数のビット3、レイヤ5の情報数のビット4が、3状態バッファを介して接続され、バスの他のビットも、接続される。
また、図6に示すように、バスのビット4には、レイヤ1の比較結果メモリ手段のメモリ装置の出力が、3状態バッファを介して接続され、この出力は、同時に、レイヤ2のA0、レイヤ3のA1、レイヤ4のA2、レイヤ5のA3に入力され、他のバスのビットも、接続される。
図7は、push_pop_address_busの入出力、分散メモリ装置のアドレス入力、各レイヤの優先度情報数、比較結果メモリのアドレス入力とデータ出力の論理関係が異なる例を示す説明図である。なお、図7に示す関係は、図6に示した関係と論理的には等価であるため、説明は省略する。
図9は、図1(a)に示した情報の選択方法の詳細を示す説明図である。図9に示すように、最も左の空き情報を有するレイヤQ(図9の例ではレイヤ3)では、このレイヤの情報数が満杯であることはあり得ないため、このレイヤの情報数の下位Qビットは、このレイヤの分散メモリ手段のメモリ装置の最も左の空き情報のメモリのアドレスとなる。
また、入力する情報の挿入位置となるレイヤの選択した情報に、入力する情報を書き込む。第2の比較情報選択手段が情報を選択しなかった場合、第2の情報移動手段は、レイヤ0の分散メモリ手段のメモリ装置の情報に、入力する情報を書き込む。
以上、本発明を、実施の形態に基づき具体的に説明したが、本発明は、上述した実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
Claims (6)
- N個のメモリ装置から構成され、該メモリ装置が各々対応するレイヤをレイヤ0からレイヤN−1とする場合、レイヤ0に対応するメモリ装置は、単一の情報を記憶し、(1≦i≦N−1)となるレイヤiに対応するメモリ装置は、各々iビットのアドレスで情報を識別し、
小数点以下を切り捨てた整数値を商とする除算演算子を「/」として、レイヤ1に対応するメモリ装置のアドレス0若しくはアドレス1で識別される情報を第1の情報とし、レイヤ0に対応するメモリ装置の情報を第2の情報とする場合、該第2の情報は該第1の情報の親に、該第1の情報は該第2の情報の子になる第1の関係と、(2≦j≦N−1)となるレイヤjに対応するメモリ装置のアドレスAで識別される情報を第3の情報とし、レイヤj−1に対応するメモリ装置のアドレスA/2で識別される情報を第4の情報とする場合、該第4の情報は該第3の情報の親に、該第3の情報は該第4の情報の子になる第2の関係に基づいて、2分木構造の情報における親子の対応関係が識別される分散メモリ手段と、
(1≦L≦N−1)となるレイヤLに対応する該分散メモリ手段のメモリ装置のアドレスにBが入力された場合、(1≦k≦L−1)となるレイヤkに対応する該分散メモリ手段のメモリ装置のアドレスに、各々、B/2(L−k)を入力することによって、レイヤLに対応する該分散メモリ手段のメモリ装置のアドレスBの情報から、レイヤ1に対応する該分散メモリ手段のメモリ装置のアドレスB/2(L−1)に至るまでの親子の対応関係にある情報を、同時に選択するアドレス入力手段と
を備えて構成したことを特徴とする2分木構造の情報を記憶する装置。 - N個のメモリ装置から構成され、該メモリ装置が各々対応するレイヤをレイヤ0からレイヤN−1とする場合、レイヤ0に対応するメモリ装置は、単一の情報を記憶し、(1≦i≦N−1)となるレイヤiに対応するメモリ装置は、各々iビットのアドレスで情報を識別し、
整数値の剰余を求める剰余演算子を「%」として、レイヤ1に対応するメモリ装置のアドレス0若しくはアドレス1で識別される情報を第1の情報とし、レイヤ0に対応するメモリ装置の情報を第2の情報とする場合、該第2の情報は該第1の情報の親に、該第1の情報は該第2の情報の子になる第1の関係と、(2≦j≦N−1)となるレイヤjに対応するメモリ装置のアドレスAで識別される情報を第3の情報とし、レイヤj−1に対応するメモリ装置のアドレスA%2(j−1)で識別される情報を第4の情報とする場合、該第4の情報は該第3の情報の親に、該第3の情報は該第4の情報の子になる第2の関係に基づいて、2分木構造の情報における親子の対応関係が識別される分散メモリ手段と、
(1≦L≦N−1)となるレイヤLに対応する、該分散メモリ手段のメモリ装置のアドレスにBが入力された場合、(1≦k≦L−1)となるレイヤkに対応する該分散メモリ手段のメモリ装置のアドレスに、各々B%2kを入力することによって、レイヤLに対応する該分散メモリ手段のメモリ装置のアドレスBの情報から、レイヤ1に対応する該分散メモリ手段のメモリ装置のアドレスB%2に至るまでの親子の対応関係にある情報を、同時に選択するアドレス入力手段と
を備えて構成したことを特徴とする2分木構造の情報を記憶する装置。 - N−1個のメモリ装置から構成され、該メモリ装置が各々対応するレイヤをレイヤ1からレイヤN−1とする場合、レイヤ1に対応するメモリ装置は、単一の比較結果を記憶し、該比較結果は、レイヤ1に対応する前記分散メモリ手段のメモリ装置のアドレス0及びアドレス1で識別される情報に対応する比較結果となり、(2≦m≦N−1)となるレイヤmに対応するメモリ装置は、各々m−1ビットのアドレスで比較結果を識別し、アドレスDで識別される比較結果は、レイヤmに対応する前記分散メモリ手段のメモリ装置のアドレス2D及びアドレス2D+1で識別される情報に対応する比較結果となり、前記分散メモリ手段のメモリ装置に記憶された情報が更新された際に、該情報に対応する比較結果が更新される比較結果メモリ手段と、
レイヤ1に対応する該比較結果メモリ手段のメモリ装置に記憶された比較結果に基づいて、レイヤ1に対応するアドレスを生成し、レイヤ1に対応する前記分散メモリ手段のメモリ装置のアドレス0で識別される情報が高優先、若しくはアドレス1で識別される情報が存在しない場合は、生成されるアドレスは0となり、レイヤ1に対応する前記分散メモリ手段のメモリ装置のアドレス1で識別される情報が高優先、若しくはアドレス0で識別される情報が存在しない場合は、生成されるアドレスは1となり、さもなければ、生成されるアドレスは0か1の何れかとなり、
(2≦p≦N−1)となるレイヤpに対応する該比較結果メモリ手段のメモリ装置のアドレスに、各々レイヤp−1に対応するアドレスEp−1を入力することによって選択した比較結果に基づいて、レイヤpに対応するアドレスを各々生成し、レイヤpに対応する前記分散メモリ手段のメモリ装置のアドレス2Ep−1で識別される情報が高優先、若しくはアドレス2Ep−1+1で識別される情報が存在しない場合は、生成されるアドレスは2Ep−1となり、レイヤpに対応する前記分散メモリ手段のメモリ装置のアドレス2Ep−1+1で識別される情報が高優先、若しくはアドレス2Ep−1で識別される情報が存在しない場合は、生成されるアドレスは2Ep−1+1となり、さもなければ、生成されるアドレスは2Ep−1か2Ep−1+1の何れかとなるアドレス生成手段と
を備えて構成したことを特徴とする請求項1に記載の2分木構造の情報を記憶する装置。 - N−1個のメモリ装置から構成され、該メモリ装置が各々対応するレイヤをレイヤ1からレイヤN−1とする場合、レイヤ1に対応するメモリ装置は単一の比較結果を記憶し、該比較結果は、レイヤ1に対応する前記分散メモリ手段のメモリ装置のアドレス0及びアドレス1で識別される情報に対応する比較結果となり、(2≦m≦N−1)となるレイヤmに対応するメモリ装置は、各々m−1ビットのアドレスで比較結果を識別し、アドレスDで識別される比較結果は、レイヤmに対応する前記分散メモリ手段のメモリ装置のアドレスD及びアドレスD+2m−1で識別される情報に対応する比較結果となり、前記分散メモリ手段のメモリ装置に記憶された情報が更新された際に、該情報に対応する比較結果が更新される比較結果メモリ手段と、
レイヤ1に対応する該比較結果メモリ手段のメモリ装置に記憶された比較結果に基づいて、レイヤ1に対応するアドレスを生成し、レイヤ1に対応する前記分散メモリ手段のメモリ装置のアドレス0で識別される情報が高優先、若しくはアドレス1で識別される情報が存在しない場合は、生成されるアドレスは0となり、レイヤ1に対応する前記分散メモリ手段のメモリ装置のアドレス1で識別される情報が高優先、若しくはアドレス0で識別される情報が存在しない場合は、生成されるアドレスは1となり、さもなければ、生成されるアドレスは0か1の何れかとなり、
(2≦p≦N−1)となるレイヤpに対応する該比較結果メモリ手段のメモリ装置のアドレスに、各々レイヤp−1に対応するアドレスEp−1を入力することによって選択した比較結果に基づいて、レイヤpに対応するアドレスを各々生成し、レイヤpに対応する前記分散メモリ手段のメモリ装置のアドレスEp−1で識別される情報が高優先、若しくはアドレスEp−1+2m−1で識別される情報が存在しない場合は、生成されるアドレスはEp−1となり、レイヤpに対応する前記分散メモリ手段のメモリ装置のアドレスEp−1+2m−1で識別される情報が高優先、若しくはアドレスEp−1で識別される情報が存在しない場合は、生成されるアドレスはEp−1+2m−1となり、さもなければ、生成されるアドレスはEp−1かEp−1+2m−1の何れかとなるアドレス生成手段と
を備えて構成したことを特徴とする請求項2に記載の2分木構造の情報を記憶する装置。 - 請求項3又は4に記載の2分木構造の情報を記憶する装置に記憶される情報がヒープ構造であるヒープ構造の情報を記憶する装置であって、
前記分散メモリ手段から情報を出力する際に、レイヤ0に対応する前記分散メモリ手段のメモリ装置に記憶された情報数が1の状態である場合、該レイヤ0に対応する前記分散メモリ手段のメモリ装置に記憶された情報を削除して出力し、その結果、レイヤ0からレイヤN−1に対応する前記分散メモリ手段のメモリ装置に記憶された情報数が全て0の状態となる場合、前記分散メモリ手段からの情報の出力を終了し、
(1≦S≦N−1)となるレイヤSに対応する前記分散メモリ手段のメモリ装置に記憶された情報数が1以上の状態となる場合であって、且つ、レイヤS+1に対応する前記分散メモリ手段のメモリ装置に記憶された情報数が0の状態となる、若しくはレイヤSがレイヤN−1となる場合、該レイヤSに対応する前記分散メモリ手段のメモリ装置に記憶された情報数の値をCとすると、該レイヤSに対応する前記分散メモリ手段のメモリ装置のアドレスC−1の情報を削除して、挿入する情報とする情報出力手段と、
該情報出力手段による情報の削除の結果、(1≦T≦N−1)となるレイヤTに対応する前記分散メモリ手段のメモリ装置に記憶された情報数が1以上の状態となる場合であって、且つ、レイヤT+1に対応する前記分散メモリ手段のメモリ装置に記憶された情報数が0の状態となる、若しくはレイヤTがレイヤN−1となる場合、該レイヤTに対応する前記分散メモリ手段のメモリ装置に記憶された情報数が、前記アドレス生成手段が生成したレイヤTに対応するアドレスの値より大きければ、前記アドレス生成手段が生成したレイヤTに対応するアドレスを、該レイヤTに対応する前記分散メモリ手段のメモリ装置のアドレスに入力し、さもなければ、前記アドレス生成手段が生成したレイヤT−1に対応するアドレスを、レイヤT−1に対応する前記分散メモリ手段のメモリ装置のアドレスに入力して、前記アドレス入力手段により、レイヤ1からレイヤT若しくはレイヤT−1に対応する前記分散メモリ手段のメモリ装置の情報を同時に選択する第1の比較情報選択手段と、
該第1の比較情報選択手段によって情報が選択された場合は、前記分散メモリ手段のメモリ装置から選択された全ての情報を読み出して、挿入する情報と各々比較し、読み出した情報より、該挿入する情報の優先度が高ければ高優先、さもなければ低優先、或いは読み出した情報より、該挿入する情報の優先度が高いか等しければ高優先、さもなければ低優先とし、
比較の結果、レイヤUから読み出した情報より、該挿入する情報が低優先となる場合であって、且つ、レイヤU+1から読み出した情報より、該挿入する情報が高優先となる、若しくはレイヤU+1に対応する前記分散メモリ手段のメモリ装置の情報が選択されていない、若しくはレイヤUがレイヤN−1となる場合、レイヤ1から読み出した情報を、レイヤ0に対応する前記分散メモリ手段のメモリ装置の情報に書き込み、(U≧2)の場合はレイヤ2からレイヤUまでのレイヤから読み出した情報を、該第1の比較情報選択手段によって選択されたレイヤ1からレイヤU−1に対応する前記分散メモリ手段のメモリ装置の情報に各々書き込み、且つ、該第1の比較情報選択手段によって選択されたレイヤUに対応する前記分散メモリ手段のメモリ装置の情報に、該挿入する情報を書き込み、
比較の結果、レイヤ1から読み出した情報より、該挿入する情報が高優先となる場合、若しくは該第1の比較情報選択手段によって情報が選択されなかった場合は、レイヤ0に対応する前記分散メモリ手段のメモリ装置の情報に、該挿入する情報を書き込む第1の情報移動手段と
を備えて構成したことを特徴とするヒープ構造の情報を記憶する装置。 - 請求項1から4のいずれか一項に記載の2分木構造の情報を記憶する装置に記憶される情報がヒープ構造であるヒープ構造の情報を記憶する装置、若しくは請求項5に記載のヒープ構造の情報を記憶する装置であって、
前記分散メモリ手段に情報を入力する際に、レイヤ0に対応する該分散メモリ手段のメモリ装置に記憶された情報数が1の状態である場合、レイヤ0に対応する前記分散メモリ手段のメモリ装置の情報を選択し、
(1≦Q≦N−1)となるレイヤQに対応する前記分散メモリ手段のメモリ装置に記憶された情報数が2Q未満の状態であり、且つ、レイヤQ−1に対応する前記分散メモリ手段のメモリ装置に記憶された情報数が2Q−1の状態となる場合、レイヤQに対応する前記分散メモリ手段のメモリ装置のアドレスに、レイヤQに対応する前記分散メモリ手段のメモリ装置に記憶された情報数の値を入力して、前記アドレス入力手段により、レイヤ1からレイヤQに対応する前記分散メモリ手段のメモリ装置の情報を同時に選択する第2の比較情報選択手段と、
該第2の比較情報選択手段によって情報が選択された場合は、レイヤ0からレイヤQ−1までの前記分散メモリ手段のメモリ装置から選択された情報を読み出して、入力する情報と各々比較し、読み出した情報より該入力する情報の優先度が高ければ高優先、さもなければ低優先、或いは読み出した情報より該入力する情報の優先度が高いか等しければ高優先、さもなければ低優先とし、
比較の結果、レイヤRから読み出した情報より該入力する情報が高優先となる場合であって、且つ、レイヤR−1から読み出した情報より該入力する情報が低優先となる、若しくはレイヤRがレイヤ0となる場合、レイヤRからレイヤQ−1までのレイヤから読み出した情報を、該第2の比較情報選択手段によって選択されたレイヤR+1からレイヤQに対応する前記分散メモリ手段のメモリ装置の情報に各々書き込み、且つ、該第2の比較情報選択手段によって選択されたレイヤRに対応する前記分散メモリ手段のメモリ装置の情報に、該入力する情報を書き込み、
比較の結果、レイヤQ−1から読み出した情報より該入力する情報が低優先となる場合、該第2の比較情報選択手段によって選択されたレイヤQに対応する前記分散メモリ手段のメモリ装置の情報に、該入力する情報を書き込み、
該第2の比較情報選択手段によって情報が選択されなかった場合は、レイヤ0に対応する前記分散メモリ手段のメモリ装置の情報に、該入力する情報を書き込む第2の情報移動手段と
を備えて構成したことを特徴とするヒープ構造の情報を記憶する装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005304336A JP4391464B2 (ja) | 2005-10-19 | 2005-10-19 | 2分木構造の情報を記憶する装置及びヒープ構造の情報を記憶する装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005304336A JP4391464B2 (ja) | 2005-10-19 | 2005-10-19 | 2分木構造の情報を記憶する装置及びヒープ構造の情報を記憶する装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007114944A true JP2007114944A (ja) | 2007-05-10 |
JP4391464B2 JP4391464B2 (ja) | 2009-12-24 |
Family
ID=38097071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005304336A Expired - Fee Related JP4391464B2 (ja) | 2005-10-19 | 2005-10-19 | 2分木構造の情報を記憶する装置及びヒープ構造の情報を記憶する装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4391464B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009134717A (ja) * | 2007-11-30 | 2009-06-18 | Palo Alto Research Center Inc | 座標データ構造におけるデータの格納またはアクセス方法、及びその方法を用いて印刷ジョブに関する解の識別を実行するシステム |
CN105094825A (zh) * | 2015-07-21 | 2015-11-25 | 中国科学院信息工程研究所 | 一种内存变量分布动态发现方法 |
-
2005
- 2005-10-19 JP JP2005304336A patent/JP4391464B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009134717A (ja) * | 2007-11-30 | 2009-06-18 | Palo Alto Research Center Inc | 座標データ構造におけるデータの格納またはアクセス方法、及びその方法を用いて印刷ジョブに関する解の識別を実行するシステム |
CN105094825A (zh) * | 2015-07-21 | 2015-11-25 | 中国科学院信息工程研究所 | 一种内存变量分布动态发现方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4391464B2 (ja) | 2009-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6535253B2 (ja) | 複数のリンクされるメモリリストを利用する方法および装置 | |
US9342462B2 (en) | Systems and methods for implementing low-latency lookup circuits using sparse hash functions | |
JP5529976B2 (ja) | 高速ipルックアップのためのシストリック・アレイ・アーキテクチャ | |
US10698831B2 (en) | Method and apparatus for data access | |
TWI250424B (en) | Method and apparatus for enhancing multiway radix tree | |
US20150169467A1 (en) | Systems and Methods for Rapidly Generating Suitable Pairs of Hash Functions | |
US10984073B2 (en) | Dual phase matrix-vector multiplication system | |
JPH0856230A (ja) | スイッチングシステム | |
US9892149B2 (en) | Parallelized in-place radix sorting | |
US20190163442A1 (en) | Buffer size optimization in a hierarchical structure | |
US8345816B1 (en) | RAM-based event counters using transposition | |
US11048475B2 (en) | Multi-cycle key compares for keys and records of variable length | |
US9946512B2 (en) | Adaptive radix external in-place radix sort | |
US20190163443A1 (en) | Hierarchical sort/merge structure using a request pipe | |
JP4391464B2 (ja) | 2分木構造の情報を記憶する装置及びヒープ構造の情報を記憶する装置 | |
US10896022B2 (en) | Sorting using pipelined compare units | |
US9823896B2 (en) | Parallelized in-place radix sorting | |
WO2024066561A1 (zh) | 查找空闲存储的装置、方法及芯片 | |
JPH09179743A (ja) | エレメントをソートする方法および装置 | |
CN116521096B (zh) | 存储器访问电路及存储器访问方法、集成电路和电子设备 | |
WO2019156060A1 (ja) | 並列ユニオン制御装置、並列ユニオン制御方法、および記憶媒体 | |
US20210082082A1 (en) | Data processing method and processing circuit | |
JP3506612B2 (ja) | スケジューリング制御装置 | |
CN116820344B (zh) | 存储器访问电路及存储器访问方法、集成电路和电子设备 | |
US10122643B2 (en) | Systems and methods for reorganization of messages in queuing systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20070614 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070614 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080206 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20081017 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091006 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091007 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121016 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121016 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131016 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |