JPS5924356A - デ−タ・レコ−ドの探索方法 - Google Patents
デ−タ・レコ−ドの探索方法Info
- Publication number
- JPS5924356A JPS5924356A JP58123535A JP12353583A JPS5924356A JP S5924356 A JPS5924356 A JP S5924356A JP 58123535 A JP58123535 A JP 58123535A JP 12353583 A JP12353583 A JP 12353583A JP S5924356 A JPS5924356 A JP S5924356A
- Authority
- JP
- Japan
- Prior art keywords
- data
- key
- record
- state
- length
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔技術分野〕
本発明はディスク・ファイル・システムに記憶されてい
るデータの中でデータ・ベース探索を行なうための方法
に関する。
るデータの中でデータ・ベース探索を行なうための方法
に関する。
データ・ベース探索の行なわれる典型的な計算機システ
ムは、中央演算処理装置(CPU)及びそれに接続され
た1つ以上の高速ランダム・アクセス・メモリ(RA
M )を有する上位処理システム、並びに同様にCPU
に接続された1つ以上のディスク・ファイル・メモリを
有する。高速の主記憶は操作プログラムを実行するため
に用いられ、一方低速のディスク・ファイル・メモリは
大量の「生のJデータ即ちベース・デ」夕を記憶するた
めに用いられる。
ムは、中央演算処理装置(CPU)及びそれに接続され
た1つ以上の高速ランダム・アクセス・メモリ(RA
M )を有する上位処理システム、並びに同様にCPU
に接続された1つ以上のディスク・ファイル・メモリを
有する。高速の主記憶は操作プログラムを実行するため
に用いられ、一方低速のディスク・ファイル・メモリは
大量の「生のJデータ即ちベース・デ」夕を記憶するた
めに用いられる。
データはディスク・ファイル・メモリ中に一連のデータ
・レコードとして記憶され、その各々は固定数のバイト
から成る。ディスク・ファイル・メモリ内にあるデータ
のデータ・ベース探索を実行したい時は、「キーJ即ち
探索引数が、ディスク・ファイル・メモリから読み出さ
れたデータの特定部分と比較される。
・レコードとして記憶され、その各々は固定数のバイト
から成る。ディスク・ファイル・メモリ内にあるデータ
のデータ・ベース探索を実行したい時は、「キーJ即ち
探索引数が、ディスク・ファイル・メモリから読み出さ
れたデータの特定部分と比較される。
従来そのようなデータ・ベース探索は、最初にディスク
・ファイル・メモリから主記憶に所定の数のデータ・レ
コードを読取りそしてキー即ち探索引数とデータ・レコ
ードの特定部分との間の現実の比較操作を上位処理装置
内で行なう事によって実行するのが最も一般的な方法で
あった。この方法は当然に低速であり、従って費用のか
かる操作である。またディスク・ファイル・メモリから
主記憶にデータを読取り次に上位処理装置内で比較操作
を行なうには長時間を要し、上位処理装置はこの時間の
間は他のタスクに利用できなかった。
・ファイル・メモリから主記憶に所定の数のデータ・レ
コードを読取りそしてキー即ち探索引数とデータ・レコ
ードの特定部分との間の現実の比較操作を上位処理装置
内で行なう事によって実行するのが最も一般的な方法で
あった。この方法は当然に低速であり、従って費用のか
かる操作である。またディスク・ファイル・メモリから
主記憶にデータを読取り次に上位処理装置内で比較操作
を行なうには長時間を要し、上位処理装置はこの時間の
間は他のタスクに利用できなかった。
米国特許第3243783号はこの基本型のファイル探
索システムについて述べている。このシステムでは、レ
コード群からあるレコードが選択され、残りのレコード
をとばしながら主記憶に読み込まれる。しかしながら全
探索動作中上位処理装置は依然として使用中であり他の
処理動作には利用できない。
索システムについて述べている。このシステムでは、レ
コード群からあるレコードが選択され、残りのレコード
をとばしながら主記憶に読み込まれる。しかしながら全
探索動作中上位処理装置は依然として使用中であり他の
処理動作には利用できない。
米国特許第3350694号は、読み出しトランスデユ
ーサのアクセス・シーケンスを連続的に提供するために
探索要求がキー記憶装置中で再配列される探索システム
について述べCいる。従って読み出し1−ランスデュー
サは、上位処理装置が使用中になる時間を最小化する順
序でディスク・ファイル・メモリから所望の情報を抽出
できる。
ーサのアクセス・シーケンスを連続的に提供するために
探索要求がキー記憶装置中で再配列される探索システム
について述べCいる。従って読み出し1−ランスデュー
サは、上位処理装置が使用中になる時間を最小化する順
序でディスク・ファイル・メモリから所望の情報を抽出
できる。
しかしながら前述の場合と同様に、上位処理装置は全探
索動作中伸のタスクには利用できない。
索動作中伸のタスクには利用できない。
同様に米国特許第3408631号は、回転遅延即ちデ
ィスク・ファイル・メモリがらデータを読み取る時にデ
ィスクを所望の開始位置に回転させるのに必要な時間に
よる遅延が、最小化されるようなレコード探索システム
について述べている。
ィスク・ファイル・メモリがらデータを読み取る時にデ
ィスクを所望の開始位置に回転させるのに必要な時間に
よる遅延が、最小化されるようなレコード探索システム
について述べている。
そのシステムによれば、所望のレコードをそれに関連す
る電子データ処理装置(F D P)に転送する事はレ
コードの1回のトラバース中に行なわれる。アクセス機
構がディスク・ファイル・ユニット中で位置付られた後
、レコード・スタート信号により後続するデータ信号と
関連FDPに保持された探索引数との間Q比較プロセス
が開始する。
る電子データ処理装置(F D P)に転送する事はレ
コードの1回のトラバース中に行なわれる。アクセス機
構がディスク・ファイル・ユニット中で位置付られた後
、レコード・スタート信号により後続するデータ信号と
関連FDPに保持された探索引数との間Q比較プロセス
が開始する。
実際の比較はファイル制御ユニットで行なわれる。
ディスク・ファイル制御ユニットは引数とデータ信号と
が等しい時にFDPに信号を送る。さらにファイル制御
ユニツl〜は、探索引数とデータ信号との間の比較が高
又は低の時にFDPに信号を送るように指令される事が
可能である。その後FDPはバルク記憶ユニットから所
望のレコードの転送を開始する。キー信号がレコード中
のデータ信号に先行する時、回転遅延は存在しな0゜従
ってFDPは最小の時間しかレコード探索動作に関与し
ない。それにもかかわらず上位処理装置はレコード探索
動作の間は他の処理動作に利用できなし1゜米国特許第
3629860号は磁気ディスク・ユニットに可変長の
レコードを配置する装置を開示している。このシステム
の1実施例で番よ、装置は各選択されたレコード位置が
その各々の読取/書込ヘッドの位置に来るのに必要な時
間の長さを決定し、かなりの遅延が生じる場合には装置
はチャネル及び制御ユニットが遅延の間他の仕事を処理
するのを凍結す葛。し:1−ド探索動作を完了するため
の全時間は利用システムに列して減少し得るが、上位処
理装置はレコードが主記憶に読取らJしるとレコード探
索動作の全活性期間の間即ちレコードの実際の探索の間
は使用中になる。
が等しい時にFDPに信号を送る。さらにファイル制御
ユニツl〜は、探索引数とデータ信号との間の比較が高
又は低の時にFDPに信号を送るように指令される事が
可能である。その後FDPはバルク記憶ユニットから所
望のレコードの転送を開始する。キー信号がレコード中
のデータ信号に先行する時、回転遅延は存在しな0゜従
ってFDPは最小の時間しかレコード探索動作に関与し
ない。それにもかかわらず上位処理装置はレコード探索
動作の間は他の処理動作に利用できなし1゜米国特許第
3629860号は磁気ディスク・ユニットに可変長の
レコードを配置する装置を開示している。このシステム
の1実施例で番よ、装置は各選択されたレコード位置が
その各々の読取/書込ヘッドの位置に来るのに必要な時
間の長さを決定し、かなりの遅延が生じる場合には装置
はチャネル及び制御ユニットが遅延の間他の仕事を処理
するのを凍結す葛。し:1−ド探索動作を完了するため
の全時間は利用システムに列して減少し得るが、上位処
理装置はレコードが主記憶に読取らJしるとレコード探
索動作の全活性期間の間即ちレコードの実際の探索の間
は使用中になる。
米国特許第3848235号は、ディスク媒体I−のレ
コーIくがキー・フィールドとデータ・フィールドとの
間にキャップのある分離したキー・フィールドを持だな
い場合にディスク記憶装置回転遅延を除去する、ディス
ク駆動装置用の走査制御装置を開示している。これは主
記憶中の走査データ・フィールドからディスク記憶駆動
装置へ転送される16進数FFを検出するための解読装
置を設ける東によつC行なわれる。主記憶中の走査デー
タ・フィールドはフィールドの先頭に探索キーを含み、
フィールドの残りは16進数FFで充填される。走査動
作は、主記憶に関する探索キーをディスク・データ・フ
ィールドのキーと比較する時に主記憶から走査データ・
フィールドを一度に1ビツトずつ転送する事によって行
なわれる。比較はディスク記憶駆動装置が16進数FF
を検出するまで行なわれる。16進数FFは比較動作の
完了した事を示し、動作を走査モードから読取モー1り
にセットする。それによって、ディスク・データ・フィ
ールドのキーが探索キーに等しい場合、ディスク・デー
タ・フィールドの残りのビットは探索キーと走査フィー
ルドとの間の16進数FF及びディスク・データ・フィ
ールドから新たに転送されたビットと共に主記憶中の走
査データ・フィールドに転送される。単一の16進数F
Fは探索キーの終端部を明確化しながら、走査モードか
ら読取モードへ変化するためのスイッチング時間を吸収
するように機能する。
コーIくがキー・フィールドとデータ・フィールドとの
間にキャップのある分離したキー・フィールドを持だな
い場合にディスク記憶装置回転遅延を除去する、ディス
ク駆動装置用の走査制御装置を開示している。これは主
記憶中の走査データ・フィールドからディスク記憶駆動
装置へ転送される16進数FFを検出するための解読装
置を設ける東によつC行なわれる。主記憶中の走査デー
タ・フィールドはフィールドの先頭に探索キーを含み、
フィールドの残りは16進数FFで充填される。走査動
作は、主記憶に関する探索キーをディスク・データ・フ
ィールドのキーと比較する時に主記憶から走査データ・
フィールドを一度に1ビツトずつ転送する事によって行
なわれる。比較はディスク記憶駆動装置が16進数FF
を検出するまで行なわれる。16進数FFは比較動作の
完了した事を示し、動作を走査モードから読取モー1り
にセットする。それによって、ディスク・データ・フィ
ールドのキーが探索キーに等しい場合、ディスク・デー
タ・フィールドの残りのビットは探索キーと走査フィー
ルドとの間の16進数FF及びディスク・データ・フィ
ールドから新たに転送されたビットと共に主記憶中の走
査データ・フィールドに転送される。単一の16進数F
Fは探索キーの終端部を明確化しながら、走査モードか
ら読取モードへ変化するためのスイッチング時間を吸収
するように機能する。
これら全てのシステムにおいて、いくらかの遅延は除去
されるものの、依然として上位処理装置はレコード走査
動作のほぼ全期間において使用中であり、処理動作を行
なうために利用する事ができない。またこれらのシステ
ムは一般に、探索したいデータ・レコードの全てを保持
するにの充分な量の主記憶を必要とする。多くの場合、
それは操作プログラム等の実行だけに必要な大きさより
もずっと大きな主記憶容量を必要とする。
されるものの、依然として上位処理装置はレコード走査
動作のほぼ全期間において使用中であり、処理動作を行
なうために利用する事ができない。またこれらのシステ
ムは一般に、探索したいデータ・レコードの全てを保持
するにの充分な量の主記憶を必要とする。多くの場合、
それは操作プログラム等の実行だけに必要な大きさより
もずっと大きな主記憶容量を必要とする。
従って本発明の主な目的は、レコード走査動作が起る間
」三位処理装置が自由に他のタスクを実行できるレコー
ド走査方法及び装置を提供する事である。
」三位処理装置が自由に他のタスクを実行できるレコー
ド走査方法及び装置を提供する事である。
より具体的には、」三位処理装置が外部のレコード走査
回路に単にレコード探索の実行に必要なパラメータを転
送しそして後にレコード走査回路から探索結果を受は取
るようなレコード探索方法及び装置が提供される。所望
の方法及び装置において、上位処理装置がレコード走査
回路に実行すべき探索のパラメータを指令してからレコ
ード走査回路が探索結果を上位処理装置に報告するまで
、」三位処理装置は自由に他のタスクを実行できる。
回路に単にレコード探索の実行に必要なパラメータを転
送しそして後にレコード走査回路から探索結果を受は取
るようなレコード探索方法及び装置が提供される。所望
の方法及び装置において、上位処理装置がレコード走査
回路に実行すべき探索のパラメータを指令してからレコ
ード走査回路が探索結果を上位処理装置に報告するまで
、」三位処理装置は自由に他のタスクを実行できる。
このデータ・レコード探索方法及び装置においては、デ
ータ・レコードの探索を開始するために最初に外部の制
御装置がスキップ長、キー長及びデータ長の値を特定し
、そして長さがキー長に一致する探索引数を与える。次
にデータの直列ストリームが所定の位置から始まるディ
スク・ファイ ルから受信される。ファイルから受信
された各々のデータ・レコード毎に比較操作が行なわれ
る。
ータ・レコードの探索を開始するために最初に外部の制
御装置がスキップ長、キー長及びデータ長の値を特定し
、そして長さがキー長に一致する探索引数を与える。次
にデータの直列ストリームが所定の位置から始まるディ
スク・ファイ ルから受信される。ファイルから受信
された各々のデータ・レコード毎に比較操作が行なわれ
る。
これは長さがスキップ長に一致する各レコードの最初の
データをとばす事によって行なわれる。この後、キー長
及び探索引数と同じ長さを有するデータのキー・フィー
ルドが探索引数と比較される。
データをとばす事によって行なわれる。この後、キー長
及び探索引数と同じ長さを有するデータのキー・フィー
ルドが探索引数と比較される。
初期比較操作に続いて、データ長によって特定される長
さの後続するデータがとばされる。次にキー長に一致す
るレコードのセグメントが再び特定の探索引数と比較さ
れ、その後再びデータ長によって特定される長さのデー
タがとばされる。比較及びとばしの動作はレコードの終
り又は特定の数の比較操作が行なわれるまで継続する。
さの後続するデータがとばされる。次にキー長に一致す
るレコードのセグメントが再び特定の探索引数と比較さ
れ、その後再びデータ長によって特定される長さのデー
タがとばされる。比較及びとばしの動作はレコードの終
り又は特定の数の比較操作が行なわれるまで継続する。
データがディスク・ファイルから受信されると、各デー
タ・レコードは記憶される。もしもそのデータ・レコー
ド内に「ヒツトJが見い出されれば、即ち探索引数とキ
ー・フィールドの1つとの間に比較の一致が起れば、デ
ータ・レコード全体又はその特定部分を外部の制御装置
によって読取る事ができる。データ・レコード内に「ヒ
ツト」の起きたデータは記憶し、外部制御装置を経由し
て上位処理装置に通信してもよい。
タ・レコードは記憶される。もしもそのデータ・レコー
ド内に「ヒツトJが見い出されれば、即ち探索引数とキ
ー・フィールドの1つとの間に比較の一致が起れば、デ
ータ・レコード全体又はその特定部分を外部の制御装置
によって読取る事ができる。データ・レコード内に「ヒ
ツト」の起きたデータは記憶し、外部制御装置を経由し
て上位処理装置に通信してもよい。
良好な実施例で、探索引数はレコード走査回路内のメモ
リに記憶される。次に探索引数はこのメモリからバイト
毎に読み出され、ファイルから受信した直列のデータの
ストリームとビット毎に直列に比較される。このために
探索引数よりも1ビット長いシフトレジスタが設けられ
る。探索引数は1つの最終ビット位置を除いた全ビット
位置にロードされ、ファイルからのデータは残りの最終
ピッ1ル位置から直列にシフトレジスタにシフトされる
。次にシフトレジスタ内のデータのシフトが起きると共
に、レジスタの2つの端部ビット間で比較が行なわれる
。
リに記憶される。次に探索引数はこのメモリからバイト
毎に読み出され、ファイルから受信した直列のデータの
ストリームとビット毎に直列に比較される。このために
探索引数よりも1ビット長いシフトレジスタが設けられ
る。探索引数は1つの最終ビット位置を除いた全ビット
位置にロードされ、ファイルからのデータは残りの最終
ピッ1ル位置から直列にシフトレジスタにシフトされる
。次にシフトレジスタ内のデータのシフトが起きると共
に、レジスタの2つの端部ビット間で比較が行なわれる
。
レコード走査回路を含む計算機システムが第1図に示さ
れている。上位CPUl0は標準的な方式で主記憶12
に接続されている。上位CPU 10はバス14を経て
I10制御装置16にも接続される。I10制御装置1
6の機能は、上位CPUl0からの(第2図に示すよう
な探索要求ブロックの形の)データ走査要求を受は取る
事、レコード走査動作を実行するために必要なデータを
組み立てる事、並びにバス22を経て多数のディスク・
ファイル24A〜24Dに接続された装置制御ユニット
21及びレコード走査回路2oにレコード走査動作を実
行するために必要な情報を中継する事を含む。
れている。上位CPUl0は標準的な方式で主記憶12
に接続されている。上位CPU 10はバス14を経て
I10制御装置16にも接続される。I10制御装置1
6の機能は、上位CPUl0からの(第2図に示すよう
な探索要求ブロックの形の)データ走査要求を受は取る
事、レコード走査動作を実行するために必要なデータを
組み立てる事、並びにバス22を経て多数のディスク・
ファイル24A〜24Dに接続された装置制御ユニット
21及びレコード走査回路2oにレコード走査動作を実
行するために必要な情報を中継する事を含む。
上位CPUIO3主記憶12、I10制御装置16及び
装置制御ユニット21の構成自体は周知なのでここでは
詳細に説明しない。
装置制御ユニット21の構成自体は周知なのでここでは
詳細に説明しない。
データ・レコードの探索を行なうため↓こ、上位CPU
l0は最初に第2図に示すような探索要求ブロックをI
10制御装置16に転送する。この探索要求ブロックの
I10制御装置16への転送後、上位CPUl0は他の
タスクを実行する事ができる。即ち探索はそれ以上は上
位CPUl0を必要とする事なく完全に行なわれる。探
索要求ブロックのI10制御装置16への転送後、探索
に関する上位CPUl0の次の関与は、レコード走査回
路20からI10制御装置1Gを経由して上位CPUl
0に探索結果が報告される時に生じる。
l0は最初に第2図に示すような探索要求ブロックをI
10制御装置16に転送する。この探索要求ブロックの
I10制御装置16への転送後、上位CPUl0は他の
タスクを実行する事ができる。即ち探索はそれ以上は上
位CPUl0を必要とする事なく完全に行なわれる。探
索要求ブロックのI10制御装置16への転送後、探索
に関する上位CPUl0の次の関与は、レコード走査回
路20からI10制御装置1Gを経由して上位CPUl
0に探索結果が報告される時に生じる。
従ってかなりの上位CPU処理時間の節約が達成され、
それによりシステム全体に関するスループットのかなり
の改善が得られる。
それによりシステム全体に関するスループットのかなり
の改善が得られる。
第2図の探索要求ブロックは8個のワード0〜7から構
成され、その各々は16ビツトから成っている。(もつ
とも所望により他のブロック長及びワード長を用いる事
もできる。)ワード0は制御ビット即ちコマンド・ビッ
トを含む。例えば、所望のデータが所在する事を示す′
「ヒツト」がデータ・レコード中に見い出された時、レ
コード全体又はその指定された部分だけを戻したい事が
あるかもしれない。ワード0のコマンド・ビットはそれ
らの代替的動作のうちどれが望まれるかを特定するため
に使用できる。ワード】はキー数KN及びスキップ長S
Lを含む。それらは特定のデータ・レコード中で探索さ
れるべきキーの数の位置及び探索中にデータ・レコード
内でスキップされるべきデータの量に関係している。(
これらの用語の意味は第3A図及び第3B図についての
下記の説明で明確化するであろう。)ワード2及びワー
ド3の一部はファイル24A〜24Dのどこで探索が開
始されるべきかを特定する相対ブロックアドレス(RB
A)を含む。RBAに応答して装置I 制御ユニット2
1はファイル24A〜24Dにこの位置から始まるレコ
ードの出力を開始するように指示する。レコード走査回
路20によって行なわれる実際の走査探索はこのデータ
の出力開始時に始まる。ワード3はレコード・カラン1
−も含んでいる。レコード・カウントは探索の限界を特
定する。例えばレコード・カウントを1と4096レコ
ード(各々例えば256バイト)との、開で変化し得る
ようにする事によって対応する数のレコードを探索する
事が可能になる。ワード4の残余ステータス・ブロック
・アドレスは残余ステータス・ブロックが記憶される主
記憶12中の開始位置を特定する。この残余ステータス
・プロ゛ツクに含まれる情報は探索動作の結果として得
られるどの情報でもよい。ワード5は探索要求ブロック
・チェイン・アドレスを特定する。このチェイン・アド
レスを用いれば、上位CI) U 10に割り込みをか
けないでも主記憶12から後続する探索要求ブロックを
取り出す事ができる。
成され、その各々は16ビツトから成っている。(もつ
とも所望により他のブロック長及びワード長を用いる事
もできる。)ワード0は制御ビット即ちコマンド・ビッ
トを含む。例えば、所望のデータが所在する事を示す′
「ヒツト」がデータ・レコード中に見い出された時、レ
コード全体又はその指定された部分だけを戻したい事が
あるかもしれない。ワード0のコマンド・ビットはそれ
らの代替的動作のうちどれが望まれるかを特定するため
に使用できる。ワード】はキー数KN及びスキップ長S
Lを含む。それらは特定のデータ・レコード中で探索さ
れるべきキーの数の位置及び探索中にデータ・レコード
内でスキップされるべきデータの量に関係している。(
これらの用語の意味は第3A図及び第3B図についての
下記の説明で明確化するであろう。)ワード2及びワー
ド3の一部はファイル24A〜24Dのどこで探索が開
始されるべきかを特定する相対ブロックアドレス(RB
A)を含む。RBAに応答して装置I 制御ユニット2
1はファイル24A〜24Dにこの位置から始まるレコ
ードの出力を開始するように指示する。レコード走査回
路20によって行なわれる実際の走査探索はこのデータ
の出力開始時に始まる。ワード3はレコード・カラン1
−も含んでいる。レコード・カウントは探索の限界を特
定する。例えばレコード・カウントを1と4096レコ
ード(各々例えば256バイト)との、開で変化し得る
ようにする事によって対応する数のレコードを探索する
事が可能になる。ワード4の残余ステータス・ブロック
・アドレスは残余ステータス・ブロックが記憶される主
記憶12中の開始位置を特定する。この残余ステータス
・プロ゛ツクに含まれる情報は探索動作の結果として得
られるどの情報でもよい。ワード5は探索要求ブロック
・チェイン・アドレスを特定する。このチェイン・アド
レスを用いれば、上位CI) U 10に割り込みをか
けないでも主記憶12から後続する探索要求ブロックを
取り出す事ができる。
ワード6のデータ長DL及びキー長KLは各々、走査さ
れる各レコード中の(データ・フィールドと呼ばれる)
とばされるデータのバイト数及びキー即ち探索引数と比
較される(キー・フィールドと呼ばれる)データのバイ
ト数を特定する。この事は第3A図、第3B図に関連し
て詳細に説明されている。最後に、ワード7で探索引数
が見い出される主記憶中のアドレスが特定される。この
探索引数は主記憶からI10制御装置16を経てレコー
ド走査回路20に転送され、そこでファイル24A〜2
4Dから直列に受信されたレコード中のキー・フィール
ドのデータと比較される。その方式は下記に詳述する。
れる各レコード中の(データ・フィールドと呼ばれる)
とばされるデータのバイト数及びキー即ち探索引数と比
較される(キー・フィールドと呼ばれる)データのバイ
ト数を特定する。この事は第3A図、第3B図に関連し
て詳細に説明されている。最後に、ワード7で探索引数
が見い出される主記憶中のアドレスが特定される。この
探索引数は主記憶からI10制御装置16を経てレコー
ド走査回路20に転送され、そこでファイル24A〜2
4Dから直列に受信されたレコード中のキー・フィール
ドのデータと比較される。その方式は下記に詳述する。
第3図を参照すると、各ディスク・ファイル24A〜2
4Dの上のデータ識別子及びデータ・レコードの構成が
説明されている。T1〜T6は異なった平行なディスク
・プラッタ上の1〜ラツクを表わす。これらのディスク
・プラッタはファイル24A〜24Dの1つの1本のス
ピンドル即ちシャフト上を同時に同じ速度で回転され、
トラックT1〜T6は全て同じデータ・シリンダの一部
である。各トラックT1〜T6は一連のデータ識別子5
0及びデータ・レコード51から構成される。
4Dの上のデータ識別子及びデータ・レコードの構成が
説明されている。T1〜T6は異なった平行なディスク
・プラッタ上の1〜ラツクを表わす。これらのディスク
・プラッタはファイル24A〜24Dの1つの1本のス
ピンドル即ちシャフト上を同時に同じ速度で回転され、
トラックT1〜T6は全て同じデータ・シリンダの一部
である。各トラックT1〜T6は一連のデータ識別子5
0及びデータ・レコード51から構成される。
例えば各々256バイトから成る2つのデータ・レコー
ド51は各々の識別子50に続いて与えられる。垂直方
向の隣接した識別子コード例えばトラ、ツクT2及びT
3の識別子コードは、上側の識別子の終端部が下側の識
別子の開始部のすぐ前に来るように構成されている。ま
た一番下のトラツクT6中の識別子の終端部は、最後に
走査されたトラックTI中の識別子の後の2つのデータ
・レコードに続くトラック1゛1の識別子の開始部のほ
ぼ直下にある。識別子50は第3図に示した点線52に
沿って番号順に配列されている。識別子をそのように配
列すると、それらの間の探索は点線52に治って配置さ
れた識別子コードを走査する事によって迅速に実行でき
る。第2図の相対ブロック・アドレスによって特定され
たものに対応する識別子が参照番号53の所に配置され
ていれば、識別r53の後のデータ・レコードは点線5
2で示される順序で直列にビット毎に順に読み出される
。
ド51は各々の識別子50に続いて与えられる。垂直方
向の隣接した識別子コード例えばトラ、ツクT2及びT
3の識別子コードは、上側の識別子の終端部が下側の識
別子の開始部のすぐ前に来るように構成されている。ま
た一番下のトラツクT6中の識別子の終端部は、最後に
走査されたトラックTI中の識別子の後の2つのデータ
・レコードに続くトラック1゛1の識別子の開始部のほ
ぼ直下にある。識別子50は第3図に示した点線52に
沿って番号順に配列されている。識別子をそのように配
列すると、それらの間の探索は点線52に治って配置さ
れた識別子コードを走査する事によって迅速に実行でき
る。第2図の相対ブロック・アドレスによって特定され
たものに対応する識別子が参照番号53の所に配置され
ていれば、識別r53の後のデータ・レコードは点線5
2で示される順序で直列にビット毎に順に読み出される
。
4.7に第3図の下側を参照すると、謬−のデータ・レ
コード51の区分が示されている。第2図の探索要求ブ
ロックのスキップ長SLは、比較動作を実行する時に無
視すべきレコードの最初のデータのハイ1〜数を特定す
る。スキップ長の終りに、キー長K Lによって特定さ
れたレコードのバイト数が、探索要求ブロックのワード
7で特定された主記憶12の記憶位置から初期に読み出
された探索引数と比較される。最初のキー・フィールド
における初期の比較動作に引き続いて、ワード6のデー
タ長DLで特定されたバイト数がスキップされ、その後
節2のキー・フィールドを形成するレコードの次のKL
個のバイトが同じ探索引数と比較される。この動作の後
、再びDLバイトのデータから成るデータ・フィールド
がスキップされるにの比較及びとばしの手続は「ヒツト
」が見つかるか又は探索要求ブロックのワード1中のキ
ー数KNで特定される数のキー・フィールドが「ヒツト
」なしに走査されるまで継続する。もしレコード内に「
ヒツト」が見つからなければ、「ヒツト」が見つかるか
又は走査されたレコードの総数が探索要求ブロックのワ
ード3で特定されたレコード・カウントに等しくなるま
で同じ比較−とばしの手続が系列中の次のレコードに対
して行なわれる。
コード51の区分が示されている。第2図の探索要求ブ
ロックのスキップ長SLは、比較動作を実行する時に無
視すべきレコードの最初のデータのハイ1〜数を特定す
る。スキップ長の終りに、キー長K Lによって特定さ
れたレコードのバイト数が、探索要求ブロックのワード
7で特定された主記憶12の記憶位置から初期に読み出
された探索引数と比較される。最初のキー・フィールド
における初期の比較動作に引き続いて、ワード6のデー
タ長DLで特定されたバイト数がスキップされ、その後
節2のキー・フィールドを形成するレコードの次のKL
個のバイトが同じ探索引数と比較される。この動作の後
、再びDLバイトのデータから成るデータ・フィールド
がスキップされるにの比較及びとばしの手続は「ヒツト
」が見つかるか又は探索要求ブロックのワード1中のキ
ー数KNで特定される数のキー・フィールドが「ヒツト
」なしに走査されるまで継続する。もしレコード内に「
ヒツト」が見つからなければ、「ヒツト」が見つかるか
又は走査されたレコードの総数が探索要求ブロックのワ
ード3で特定されたレコード・カウントに等しくなるま
で同じ比較−とばしの手続が系列中の次のレコードに対
して行なわれる。
スキップ長、キー長及びデータ長の各々によって特定さ
れた各レコード内のバイト数は完全に任意的であり、従
って任意のレコードの任意の所望の部分を調べられる事
に注意されたい。本発明に従ってデータ・レコードの走
査が行なわれる方式は多くの異なった状況において特に
有利である。
れた各レコード内のバイト数は完全に任意的であり、従
って任意のレコードの任意の所望の部分を調べられる事
に注意されたい。本発明に従ってデータ・レコードの走
査が行なわれる方式は多くの異なった状況において特に
有利である。
例えばある場合(キーに対応する)特定の情報はデータ
・レコード内の多くの可能な位置のうちどこに配置され
てもよい。複数キー・フィールドの使用により、そのよ
うなレコードが効率的に走査できる。
・レコード内の多くの可能な位置のうちどこに配置され
てもよい。複数キー・フィールドの使用により、そのよ
うなレコードが効率的に走査できる。
第4図を参照すると、レコード走査回路2oの詳細なブ
ロック図が示されている。前述のようにレコー1く走査
回路20は双方向バス18でI10制御装置16に結合
されている。バス18はキー数レジスタ26、データ長
レジスタ32.キー長レジスタ31、スキップ長レジス
タ41.キー・アドレス・カウンタ43及びデータ・ア
ドレス・カウンタ44のプリセット入力に結合される。
ロック図が示されている。前述のようにレコー1く走査
回路20は双方向バス18でI10制御装置16に結合
されている。バス18はキー数レジスタ26、データ長
レジスタ32.キー長レジスタ31、スキップ長レジス
タ41.キー・アドレス・カウンタ43及びデータ・ア
ドレス・カウンタ44のプリセット入力に結合される。
バス18はキー・アドレス・カウンタ43及びデータ・
アドレス・カウンタ44に、探索動作の開始時に全0を
ロードするために使われる。またバス18は、走査され
るレコードのキー・フィールドと探索引数との間で行な
われる比較の型を決定する制御ビットを、その特定の信
号線からデータ比較論理52に転送する。比較は=、≠
、≧、≦、〉及びくのいずれでもよい。またバス18は
探索動作の開始に先行して探索引数をキー記憶装置47
に転送するためにキー記憶装置47のデータ入力にも接
続される。
アドレス・カウンタ44に、探索動作の開始時に全0を
ロードするために使われる。またバス18は、走査され
るレコードのキー・フィールドと探索引数との間で行な
われる比較の型を決定する制御ビットを、その特定の信
号線からデータ比較論理52に転送する。比較は=、≠
、≧、≦、〉及びくのいずれでもよい。またバス18は
探索動作の開始に先行して探索引数をキー記憶装置47
に転送するためにキー記憶装置47のデータ入力にも接
続される。
キー数レジスタ26の出力はキー数カウンタ27のプリ
セラ1〜入力に結合され、それによって処理中の探索要
求ブロックで特定されたキー数KNをキー数カウンタ2
7に転送する。
セラ1〜入力に結合され、それによって処理中の探索要
求ブロックで特定されたキー数KNをキー数カウンタ2
7に転送する。
データ長レジスタ32及びキー長レジスタ31は一時レ
ジスタ33と共に循環式に接続され、データは3つのレ
ジスタ中を回転できる。即ちキー長レジスタ31からの
データは一時しシスタ331に転送され、一時レジスタ
33からのデータはデータ長レジスタ32に転送され、
そしてデータ長レジスタ32からのデータはキー長レジ
スタ31に転送される。
ジスタ33と共に循環式に接続され、データは3つのレ
ジスタ中を回転できる。即ちキー長レジスタ31からの
データは一時しシスタ331に転送され、一時レジスタ
33からのデータはデータ長レジスタ32に転送され、
そしてデータ長レジスタ32からのデータはキー長レジ
スタ31に転送される。
スキップ長レジスタ41の出力はキー・アドレス・カウ
ンタ43のプリセット入力に接続される。
ンタ43のプリセット入力に接続される。
キー・アドレス・カウンタ43及びキー長レジスタ31
の出力はアドレス比較論理30で比較され、該回路は比
較結果を表わす信号を走査制御論理29に出力する。
の出力はアドレス比較論理30で比較され、該回路は比
較結果を表わす信号を走査制御論理29に出力する。
データ・アドレス・カウンタ44は、ディスク・ファイ
ルから受は取ったデータをデータ記憶装置48のどこに
記憶するかを指定するために設けられる。キー記憶装置
47及びデータ記憶装置48は共にRAMを用いて実現
でき、所望であれば入出力線を時分割的に用いた同じメ
モリである事もnJ能である。データ・アドレス・カウ
ンタ44の出力はスキップ長レジスタ41及び走査制御
論理29にもフィード・バックされる。
ルから受は取ったデータをデータ記憶装置48のどこに
記憶するかを指定するために設けられる。キー記憶装置
47及びデータ記憶装置48は共にRAMを用いて実現
でき、所望であれば入出力線を時分割的に用いた同じメ
モリである事もnJ能である。データ・アドレス・カウ
ンタ44の出力はスキップ長レジスタ41及び走査制御
論理29にもフィード・バックされる。
キー記憶装置47からのデータ出力は第1のバッファ4
9に供給される。第1のバッファ49の出力は5ERD
ES (直並列変換器)50の並列入力に与えられる。
9に供給される。第1のバッファ49の出力は5ERD
ES (直並列変換器)50の並列入力に与えられる。
5ERDESの直列データ入力はディスク・ファイルか
ら受は取ったデータの直航ビット・ストリームである。
ら受は取ったデータの直航ビット・ストリームである。
第2のバッファ51は5ERDES50から出力データ
を受は取る。第4図に示すように、ディスク・ファイル
から来る直列ビット・ストリーム中のデータのビットと
同期したパルスを有する信号線74上の「ファイル・ク
ロック」信号が直接5ERDES50をクロックする。
を受は取る。第4図に示すように、ディスク・ファイル
から来る直列ビット・ストリーム中のデータのビットと
同期したパルスを有する信号線74上の「ファイル・ク
ロック」信号が直接5ERDES50をクロックする。
一方その信号を周波数分周器54によって周波数を8分
の1にした信号がバッファ49及び51をクロックする
のに使われる。
の1にした信号がバッファ49及び51をクロックする
のに使われる。
5ERDES50の入出力データを転送する他の可能な
方法は、5ERDESがファイル・クロック信号でクロ
ックされ一方レコード走査回路内の動作は内部的に供給
されるクロック信号でクロックされる「ハンドシェーク
」構成を用いる事である。その場合、5ERDES50
の両側に2重バッファが設けられ、5ERDES50に
直接接続されたバッファはファイル・クロック信号と同
期してクロックされ、キー記憶装置47及びデータ記憶
装置48に直接接続されたバッファは内部レコード走査
回路クロックと同期してクロックされる。そのようなタ
ロツク方式自体は周知である。
方法は、5ERDESがファイル・クロック信号でクロ
ックされ一方レコード走査回路内の動作は内部的に供給
されるクロック信号でクロックされる「ハンドシェーク
」構成を用いる事である。その場合、5ERDES50
の両側に2重バッファが設けられ、5ERDES50に
直接接続されたバッファはファイル・クロック信号と同
期してクロックされ、キー記憶装置47及びデータ記憶
装置48に直接接続されたバッファは内部レコード走査
回路クロックと同期してクロックされる。そのようなタ
ロツク方式自体は周知である。
1例として、ここでは5ERDES50は9ビツト長で
あると仮定する。その場合第1のバッファ49のデータ
出力は5ERDES50の」−位8ビットに送られる。
あると仮定する。その場合第1のバッファ49のデータ
出力は5ERDES50の」−位8ビットに送られる。
5ERDES’50の下位8ビツトは第2のバッファ5
1に並列に転送される。
1に並列に転送される。
5ERIJES50からの0番目及び8番目のビット(
各々最下位及び最上位ビット)は、=、〆、≧、≦、〉
及びくから選ばれたデータ比較動作を行なうためにデー
タ比較論理52によって比較される。(データ比較論理
52の詳細は第5A図、第5B図を参照して説明する。
各々最下位及び最上位ビット)は、=、〆、≧、≦、〉
及びくから選ばれたデータ比較動作を行なうためにデー
タ比較論理52によって比較される。(データ比較論理
52の詳細は第5A図、第5B図を参照して説明する。
)ディスク・ファイルから来たデータとキー記憶装置4
7からの探索引数との間に、選択された型のデータ比較
動作によって決定されるような[ヒツトJをデータ比較
論理52が検出すると、信号線46に活性(論理「1」
)状態の出力信号「走査ヒラ1〜」が生しる。「走査ヒ
ツト」信号は信号線46」二の走査制御論理29及びI
10制御装置16に送られる。
7からの探索引数との間に、選択された型のデータ比較
動作によって決定されるような[ヒツトJをデータ比較
論理52が検出すると、信号線46に活性(論理「1」
)状態の出力信号「走査ヒラ1〜」が生しる。「走査ヒ
ツト」信号は信号線46」二の走査制御論理29及びI
10制御装置16に送られる。
−次にレコード走査回路20の動作を詳細に説明する。
探索動作即ち第2図に示す型の1つの探索要求ブロック
に応答して行なわれる探索動作の開始時に、I10制御
装置16は探索要求ブロックのキ−数KNを用いてキー
数レジスタ26をプリセットする。次にこの値はキー数
カウンタ27のプリセット入力に転送される。キー長レ
ジスタ31は値KL−1にプリセットされる。減算(K
L−1)1;l: I / O制御回路、又はバス18
とキー長レジスタ31の入力との間の別個の減算回路に
よって実行する事ができる。同様にデータ長レジスタ3
2はDL−1にプリセットされる。キー・アドレス・カ
ウンタ43及びスキップ長レジスタ41は256−8L
(即ち(256−5L)(mod256))に初期設
定され、データ・アドレス・カウンタ44はI10制御
装置16によりバス18を経てゼロに初期設定される。
に応答して行なわれる探索動作の開始時に、I10制御
装置16は探索要求ブロックのキ−数KNを用いてキー
数レジスタ26をプリセットする。次にこの値はキー数
カウンタ27のプリセット入力に転送される。キー長レ
ジスタ31は値KL−1にプリセットされる。減算(K
L−1)1;l: I / O制御回路、又はバス18
とキー長レジスタ31の入力との間の別個の減算回路に
よって実行する事ができる。同様にデータ長レジスタ3
2はDL−1にプリセットされる。キー・アドレス・カ
ウンタ43及びスキップ長レジスタ41は256−8L
(即ち(256−5L)(mod256))に初期設
定され、データ・アドレス・カウンタ44はI10制御
装置16によりバス18を経てゼロに初期設定される。
もしスキップ長がゼロであれば、走査制御論理29内の
走査状態カウンタはキー状態に初期設定される。さもな
ければ走査状態カウンタはスキップ状態にセットされる
。(この後者の動作は第6図に関して詳細に説明する。
走査状態カウンタはキー状態に初期設定される。さもな
ければ走査状態カウンタはスキップ状態にセットされる
。(この後者の動作は第6図に関して詳細に説明する。
)キー数レジスタ26、データ長レジスタ32、キー長
レジスタ3I、スキップ長レジスタ4】及びキー記憶装
置47に初期値がロードされると、スキップ長のカラン
1−ダウン(スキップ・フィールド動作)が実行される
。キー・アドレス・カウンタは43は、走査されるデー
タ・レコードの系列の最初のバイトから、データの各バ
イト毎に1カウントずつ増訂数される。カウンタが25
6(即ち256 0 (mod256))に達する時、
走査制御論理29をスキップ・フィールド動作モー1〜
(スキップ状態)からキー・フィールド動作モード(キ
ー状態)に変化させるキャリーアウト信号が発生される
。
レジスタ3I、スキップ長レジスタ4】及びキー記憶装
置47に初期値がロードされると、スキップ長のカラン
1−ダウン(スキップ・フィールド動作)が実行される
。キー・アドレス・カウンタは43は、走査されるデー
タ・レコードの系列の最初のバイトから、データの各バ
イト毎に1カウントずつ増訂数される。カウンタが25
6(即ち256 0 (mod256))に達する時、
走査制御論理29をスキップ・フィールド動作モー1〜
(スキップ状態)からキー・フィールド動作モード(キ
ー状態)に変化させるキャリーアウト信号が発生される
。
スキップ・フィールド動作が完了した後、探索引数の最
初の8ビツトがキー記憶装置47がら第1のバッファ4
9を経てS E RI) E S 50の上位8ピッ1
−位置に転送される。次にディスク・ファイルからデー
タが直列式に5ERL)ES50にシフト入力され、5
ERDESの0番目と8番目のヒラ1〜位置の間でデー
タ比較論理52によって比較が行なわれる。比較動作を
正確に実行するために即ち同じ桁のビットの間で比較を
行なうためにバッファ49の最上位ビットは最初5ER
DES50の8番目のビット位置に入力され、またバッ
ファ49の最下位ビットは5ERDES50(73ビッ
ト位置lに入力されなければならない。ディスク・ファ
イルから直列データを1ビツトずつ受は取るたびに、バ
ッファ49からの8ビツトは右へシフトされる。こうし
てバッファ49がら受は取ったデータの1ビツトが、デ
ィスク・ファイルがら5ERDES50にビットがシフ
トされるたびに落されてゆく。バッファ49から受は取
った最初の8ビツトについて比較動作が終了すると、べ
つの8ビツトがキー記憶装置47がらバッファ49を経
て5ERDES50の上位8ビット位置に転送される。
初の8ビツトがキー記憶装置47がら第1のバッファ4
9を経てS E RI) E S 50の上位8ピッ1
−位置に転送される。次にディスク・ファイルからデー
タが直列式に5ERL)ES50にシフト入力され、5
ERDESの0番目と8番目のヒラ1〜位置の間でデー
タ比較論理52によって比較が行なわれる。比較動作を
正確に実行するために即ち同じ桁のビットの間で比較を
行なうためにバッファ49の最上位ビットは最初5ER
DES50の8番目のビット位置に入力され、またバッ
ファ49の最下位ビットは5ERDES50(73ビッ
ト位置lに入力されなければならない。ディスク・ファ
イルから直列データを1ビツトずつ受は取るたびに、バ
ッファ49からの8ビツトは右へシフトされる。こうし
てバッファ49がら受は取ったデータの1ビツトが、デ
ィスク・ファイルがら5ERDES50にビットがシフ
トされるたびに落されてゆく。バッファ49から受は取
った最初の8ビツトについて比較動作が終了すると、べ
つの8ビツトがキー記憶装置47がらバッファ49を経
て5ERDES50の上位8ビット位置に転送される。
バッファ49からS、ERDES50への新しい探索引
数の転送と同時に、1バイトのデータ・レコードに対応
する5ERDES50の下位8ビツトがバッファ51を
経てデータ記憶装置48に転送される。キー記憶袋W4
7から5ERDES50に次の8ビツトの探索引数を転
送するために、キー・アドレス・カウンタ43は1カウ
ントだけ増訂数される。またデータ・アドレス・カウン
タ44も、次の8ビツトのデータ・レコードが5ERD
ES50がらバッファ51を経てデータ記憶装置48に
転送される記憶位置を用意するために増訂数される。
数の転送と同時に、1バイトのデータ・レコードに対応
する5ERDES50の下位8ビツトがバッファ51を
経てデータ記憶装置48に転送される。キー記憶袋W4
7から5ERDES50に次の8ビツトの探索引数を転
送するために、キー・アドレス・カウンタ43は1カウ
ントだけ増訂数される。またデータ・アドレス・カウン
タ44も、次の8ビツトのデータ・レコードが5ERD
ES50がらバッファ51を経てデータ記憶装置48に
転送される記憶位置を用意するために増訂数される。
このデータ転送過程は最初のキー・フィールドの終了す
るまで続く。キー・フィールドの長さは値KL−1によ
って指定され、これはキー長レジスタ31に記憶されて
いた。アドレス比較論理30はキー長レジスタ31に記
憶されている値KL−1とキー・アドレス・カウンタ4
3の出力とを連続的に比較する。その2つの値が等しい
ことは、キー・フィールドの最後のバイトに到達したこ
とを示す。そのことを検出すると、走査制御論理29は
信号線38上のパルスによってキー・アドレス・カウン
タ43をゼロにリセッj〜する。(こわはレコードの最
初のキー長の走査中に「ヒツト」が生じなかった事を仮
定している。「ヒツト」が検出された時の手続は後述す
る。)また同時にキー数カウンタ27が信号線38上の
同じパルスによって1カウントだけ減数計数される。
るまで続く。キー・フィールドの長さは値KL−1によ
って指定され、これはキー長レジスタ31に記憶されて
いた。アドレス比較論理30はキー長レジスタ31に記
憶されている値KL−1とキー・アドレス・カウンタ4
3の出力とを連続的に比較する。その2つの値が等しい
ことは、キー・フィールドの最後のバイトに到達したこ
とを示す。そのことを検出すると、走査制御論理29は
信号線38上のパルスによってキー・アドレス・カウン
タ43をゼロにリセッj〜する。(こわはレコードの最
初のキー長の走査中に「ヒツト」が生じなかった事を仮
定している。「ヒツト」が検出された時の手続は後述す
る。)また同時にキー数カウンタ27が信号線38上の
同じパルスによって1カウントだけ減数計数される。
次にスキップ・フィールド動作に似た計数動が、走査中
のレコードの最初のデータ・フィールド部分作について
行なわれる。これはデータ・フィールド動作又はデータ
状態と呼ばれる。データ状態へ推移するために、一時レ
ジスタ33、データ長レジスタ32及びキー長レジスタ
31の内容は。
のレコードの最初のデータ・フィールド部分作について
行なわれる。これはデータ・フィールド動作又はデータ
状態と呼ばれる。データ状態へ推移するために、一時レ
ジスタ33、データ長レジスタ32及びキー長レジスタ
31の内容は。
キー長の値KL−1が一時レジスタ33にデータ長の値
DL−1がキー長レジスタ31に保持されるように巡回
される。次にキー・アドレス・カウンタ43が、ディス
ク・ファイルからデータのバイトを受は取るごとに1カ
ウントずつゼロから増計数される。キー・アドレス・カ
ウンタ43の出力値がキー長レジスタ31に記憶されて
いるデータ長の値DL−1に等しくなると、アドレス比
較論理30はその事実を走査制御論理29に知らせ、そ
れによって走査制御論理29は次のキー・フィールド動
作のためにキー・アドレス・カウンタをリセットする。
DL−1がキー長レジスタ31に保持されるように巡回
される。次にキー・アドレス・カウンタ43が、ディス
ク・ファイルからデータのバイトを受は取るごとに1カ
ウントずつゼロから増計数される。キー・アドレス・カ
ウンタ43の出力値がキー長レジスタ31に記憶されて
いるデータ長の値DL−1に等しくなると、アドレス比
較論理30はその事実を走査制御論理29に知らせ、そ
れによって走査制御論理29は次のキー・フィールド動
作のためにキー・アドレス・カウンタをリセットする。
データ状態の間、データは5ERDES50に転送され
続ける事に注意されたい。これはデータ・レコード全体
を蓄積するようにデータを連続的にデータ記憶装置48
に転送するために行なわれる。
続ける事に注意されたい。これはデータ・レコード全体
を蓄積するようにデータを連続的にデータ記憶装置48
に転送するために行なわれる。
しかしながらこの状態の間データ比較論理52は比較動
作を行なう事を禁止される。
作を行なう事を禁止される。
次の引き続くキー・フィールド動作期間の開始時に、一
時レジスタ33、データ長レジスタ32及びキー長レジ
スタ31の内容は、値KL−1がキー長レジスタ31に
データ長の値DL−1がデータ長レジスタ32に入るよ
うに再び巡回される。
時レジスタ33、データ長レジスタ32及びキー長レジ
スタ31の内容は、値KL−1がキー長レジスタ31に
データ長の値DL−1がデータ長レジスタ32に入るよ
うに再び巡回される。
そして探索引数の最上位ビットから始まって、前述した
のと同様の方式でキー比較動作が進行する。
のと同様の方式でキー比較動作が進行する。
もしそのキー・フィールド動作期間中に[ヒツトJが生
じなければ、レコード走査回路2oは再びデータ・フィ
ールド動作に入る。
じなければ、レコード走査回路2oは再びデータ・フィ
ールド動作に入る。
上記のようにキー・フィールド動作期間が終了するたび
に、キー数カウンタ27は1カウントずつ減計数される
。もしキー数カウンタ27がゼロに至る前に「ヒツト」
が生じなければ、ゼロに至った時、現在のデータ・レコ
ードに関する走査は終了し、そのレコードの残りのデー
タは単にデータ記憶装置48にロードされる。
に、キー数カウンタ27は1カウントずつ減計数される
。もしキー数カウンタ27がゼロに至る前に「ヒツト」
が生じなければ、ゼロに至った時、現在のデータ・レコ
ードに関する走査は終了し、そのレコードの残りのデー
タは単にデータ記憶装置48にロードされる。
一方もしもレコードのあるキー・フィールドについて「
ヒツト」が生じれば、違った手続が続いて行なわれる。
ヒツト」が生じれば、違った手続が続いて行なわれる。
具体的には、「ヒツト」の存在は信号Ia46上のI1
0制御装置I6及び走査制御装置29及びスキップ長レ
ジスタ41に知らされる。「ヒツト」が知らされると即
座に、スキップ長レジスタ41はその時データ・アドレ
ス・カウンタ44の出力に存在する数値を記憶する。従
ってレコード処理期間の終了時に、I10制御装置はバ
ス18を経てデータ記憶装置48からデータ・レコード
を検索できる。上記のように第2図の探索要求ブロック
のワード0のコマンド・ビットの内容に依存して、レコ
ード全体又は所定の部分だけが転送される。またスキッ
プ長レジスタ41に保持されているデータ・アドレス・
カウンタ値はI10制御装置16によって「ヒツトJポ
インタとして検索できる。I10制御装置へのこの型の
転送は周知であり、これ以上の説明は省略する。
0制御装置I6及び走査制御装置29及びスキップ長レ
ジスタ41に知らされる。「ヒツト」が知らされると即
座に、スキップ長レジスタ41はその時データ・アドレ
ス・カウンタ44の出力に存在する数値を記憶する。従
ってレコード処理期間の終了時に、I10制御装置はバ
ス18を経てデータ記憶装置48からデータ・レコード
を検索できる。上記のように第2図の探索要求ブロック
のワード0のコマンド・ビットの内容に依存して、レコ
ード全体又は所定の部分だけが転送される。またスキッ
プ長レジスタ41に保持されているデータ・アドレス・
カウンタ値はI10制御装置16によって「ヒツトJポ
インタとして検索できる。I10制御装置へのこの型の
転送は周知であり、これ以上の説明は省略する。
第5A図及び第5B図には、データ比較論理52の詳細
が示されている。ラッチLO〜L2.70〜72は、走
査中のデニタ・レコードの指定されたキー・フィールド
に対して比較動作=、メ、≧、≦、〉及びくのうちのど
れを実行するかを決定するバス18からの3ビツトを記
憶するために設けられる。デコーダ73はラッチ70〜
72に記憶されたビットの状態に依存して、記号=、≠
、≧、≦、〉及びくで識別される信号線のうち1本\ を論理rlJでイ1勢する。所望であれば、データ・バ
ス18の6本の信号線から情報を受は取るように6個の
ラッチを設け、所望の比較動作を選択するために各走査
動作に関して1つだけのラッチを付勢する事ができる。
が示されている。ラッチLO〜L2.70〜72は、走
査中のデニタ・レコードの指定されたキー・フィールド
に対して比較動作=、メ、≧、≦、〉及びくのうちのど
れを実行するかを決定するバス18からの3ビツトを記
憶するために設けられる。デコーダ73はラッチ70〜
72に記憶されたビットの状態に依存して、記号=、≠
、≧、≦、〉及びくで識別される信号線のうち1本\ を論理rlJでイ1勢する。所望であれば、データ・バ
ス18の6本の信号線から情報を受は取るように6個の
ラッチを設け、所望の比較動作を選択するために各走査
動作に関して1つだけのラッチを付勢する事ができる。
このようにすればデコーダ73は除去できる。
デコーダ73からの種々の出力は対応するANDゲート
80〜85の第1の入力に結合される。
80〜85の第1の入力に結合される。
5ERDES50からの0番目及び8番目の出力ビット
(ビット0及びビット8)並びにそれらの補数(ビット
O及びビット8)は比較論理52に供給される。特にビ
ットO及びピッ1−8はANDゲート86の2つの入力
に加えられ、ビット8及びビット0はANDゲート87
の入力に加えられる。両ANDゲート86及び87の他
方の入力には、ディスク・ファイルから受信されるデー
タ・ビットと同期した信号線74上のファイル・クロッ
ク信号が加えられる。その相対的タイミングは、S E
RDE Sからの出力データが安定な時にパルスが論
理「1」状態を取るように調整されている。
(ビット0及びビット8)並びにそれらの補数(ビット
O及びビット8)は比較論理52に供給される。特にビ
ットO及びピッ1−8はANDゲート86の2つの入力
に加えられ、ビット8及びビット0はANDゲート87
の入力に加えられる。両ANDゲート86及び87の他
方の入力には、ディスク・ファイルから受信されるデー
タ・ビットと同期した信号線74上のファイル・クロッ
ク信号が加えられる。その相対的タイミングは、S E
RDE Sからの出力データが安定な時にパルスが論
理「1」状態を取るように調整されている。
信号線145上の走査状態カウンタからのキー状態信号
はインバータ146で反転され、キー状態の時以外はラ
ッチ88及び89をリセット状態に保つためにそれらの
リセット入力に加えられる。
はインバータ146で反転され、キー状態の時以外はラ
ッチ88及び89をリセット状態に保つためにそれらの
リセット入力に加えられる。
ANDゲート86及び87の出力は各々ラッチ88及び
89のセット入力に加えられる。信号CMPRLTCH
R8T (比較ラッチ・リセット)はランチ88及び8
9をリセットする。この信号を発生させるための回路は
第5B図に示されている。
89のセット入力に加えられる。信号CMPRLTCH
R8T (比較ラッチ・リセット)はランチ88及び8
9をリセットする。この信号を発生させるための回路は
第5B図に示されている。
ラッチ88の反転出力はANDゲート87の1人力に接
続され、一方ラツチ89の反転出力は同様にANDゲー
ト86の1人力に接続される。またラッチ88の反転出
力はA N I)ゲート80及び83の入力に接続され
、ラッチ88の非反転出力はANDゲー1−84及びO
Rゲー1〜90の入力に接続され、ラッチ89の反転出
力はANDゲート80及び82の入力に接続され、そし
てラッチ89の非反転出力はANDゲート85及びOR
ゲート90の入力に接続される。ORゲート90の出力
はANDゲート81の第2の入力に接続される。
続され、一方ラツチ89の反転出力は同様にANDゲー
ト86の1人力に接続される。またラッチ88の反転出
力はA N I)ゲート80及び83の入力に接続され
、ラッチ88の非反転出力はANDゲー1−84及びO
Rゲー1〜90の入力に接続され、ラッチ89の反転出
力はANDゲート80及び82の入力に接続され、そし
てラッチ89の非反転出力はANDゲート85及びOR
ゲート90の入力に接続される。ORゲート90の出力
はANDゲート81の第2の入力に接続される。
A N Dゲート80〜85の出力はORゲート91で
一緒にORされ、その出力はD型フリップフロップ・ラ
ッチ92のデータ入力に接続される。ラッチ92は第5
B図の回路で作られるHIT LT CHCL K信
号(ヒツト・ラッチ・クロック)によりクロックされる
。ラッチ92のリセット入力にはI10制御装置16か
らのリセット信号が接続される。
一緒にORされ、その出力はD型フリップフロップ・ラ
ッチ92のデータ入力に接続される。ラッチ92は第5
B図の回路で作られるHIT LT CHCL K信
号(ヒツト・ラッチ・クロック)によりクロックされる
。ラッチ92のリセット入力にはI10制御装置16か
らのリセット信号が接続される。
1つのレコード走査動作に関してANDゲート80〜8
5の1つだけが付勢される。例えば「=」型の比較を行
ないたい場合、A N Dゲート80が付勢される。こ
の場合[ヒツト」の起るのはビット0とビット8がキー
・フィールド全体について常に同じ場合なので、AND
ゲート86及び87の出力はキー・フィールド全体にわ
たって連続的に論理「0」であり、従ってラッチ88及
び89の反転出力は論理[1」状態にある。ラッチ88
及び89からの論理「1」の2つの値並びにデコーダ7
3からの「=」出力はキー・フィールドの長さ全体にわ
たって全て存在し、従ってキー・フィールドの終了時に
も存在する。従ってANDゲート80はキー・フィール
ド動作期間の終了時にORゲート91を経てラッチ92
に論理「1」を出力する。キー・フィールド動作期間の
終了時に信号線38上のEOKFパルスがラッチ92を
クロックし、その出力を論理rl」状態にし、信号線4
6上に「走査ヒツト」信号を出させる。この信号はレコ
ード走査動作の残りの期間中活性状態に留まる。
5の1つだけが付勢される。例えば「=」型の比較を行
ないたい場合、A N Dゲート80が付勢される。こ
の場合[ヒツト」の起るのはビット0とビット8がキー
・フィールド全体について常に同じ場合なので、AND
ゲート86及び87の出力はキー・フィールド全体にわ
たって連続的に論理「0」であり、従ってラッチ88及
び89の反転出力は論理[1」状態にある。ラッチ88
及び89からの論理「1」の2つの値並びにデコーダ7
3からの「=」出力はキー・フィールドの長さ全体にわ
たって全て存在し、従ってキー・フィールドの終了時に
も存在する。従ってANDゲート80はキー・フィール
ド動作期間の終了時にORゲート91を経てラッチ92
に論理「1」を出力する。キー・フィールド動作期間の
終了時に信号線38上のEOKFパルスがラッチ92を
クロックし、その出力を論理rl」状態にし、信号線4
6上に「走査ヒツト」信号を出させる。この信号はレコ
ード走査動作の残りの期間中活性状態に留まる。
他の例としてデコーダ73のr>J出力が付勢される場
合、ANDゲート84が選択される。もし走査されるデ
ータ・レコードのキー・フィールドの値が探索引数より
も実際に大きければ、キー・フィールドのビットの順序
正しく配列された系列においてビットOがビット8に等
しくならない最初の時、ビット0は論理「l」状態にな
ければならない。この事が起る前の直列ビット・ストリ
ームにおいて、ビット0はビット8と同じであり、従っ
てANDゲート86及び87の出力は連続的に論理rO
Jである。ビット0が論理rlJになり一方ビット8が
論理「0」であると即座にANDゲート86の出力が論
理rlJになり、ラッチ88の非反転出力を論理「1」
状態にする。ランチ88はキー・フィールドの走査終了
時までこの状態を保つ。ANDゲート87に接続された
ラッチ88の反転出力からの論理「0」信号は、そのキ
ー・フィールド動作期間中にANDゲート87の出力が
論理「1」状態になるのを防止する。従ってビット8が
論理「0」状態の時にビット0がひとたび論理「1」状
態になれば、ANDゲート84の入力に論理「1」が加
えられ、これはそのキー・フィールド動作期間の終了時
まで維持される。従ってANDゲート84の出力に与え
られた論理[1」はORゲート91を経てラッチ92の
D入力に加えられ、キー・フィールドの終了時にラッチ
が信号EOKFによってクロックされる時に「走査ヒツ
ト」信号を生じさせる。
合、ANDゲート84が選択される。もし走査されるデ
ータ・レコードのキー・フィールドの値が探索引数より
も実際に大きければ、キー・フィールドのビットの順序
正しく配列された系列においてビットOがビット8に等
しくならない最初の時、ビット0は論理「l」状態にな
ければならない。この事が起る前の直列ビット・ストリ
ームにおいて、ビット0はビット8と同じであり、従っ
てANDゲート86及び87の出力は連続的に論理rO
Jである。ビット0が論理rlJになり一方ビット8が
論理「0」であると即座にANDゲート86の出力が論
理rlJになり、ラッチ88の非反転出力を論理「1」
状態にする。ランチ88はキー・フィールドの走査終了
時までこの状態を保つ。ANDゲート87に接続された
ラッチ88の反転出力からの論理「0」信号は、そのキ
ー・フィールド動作期間中にANDゲート87の出力が
論理「1」状態になるのを防止する。従ってビット8が
論理「0」状態の時にビット0がひとたび論理「1」状
態になれば、ANDゲート84の入力に論理「1」が加
えられ、これはそのキー・フィールド動作期間の終了時
まで維持される。従ってANDゲート84の出力に与え
られた論理[1」はORゲート91を経てラッチ92の
D入力に加えられ、キー・フィールドの終了時にラッチ
が信号EOKFによってクロックされる時に「走査ヒツ
ト」信号を生じさせる。
残りの比較型≠、≧、≦及びくの各々についても適当な
場合に「走査ヒツト」信号が発生する事が同様に確認で
きる。
場合に「走査ヒツト」信号が発生する事が同様に確認で
きる。
第5B図に、第5A図で用いられるC:MPRLTCH
R8T信号及びHIT LTCHCLK信号を発生さ
せる回路が説明されている。7ビツトのリング・カウン
タ151が設けられており、これは信号線74上のファ
イル・クロック信号でクロックされる。リング・カウン
タ151は従って信号ビットO、ビット]・・・・・・
ビット7を出力し、それらはファイルからのバイト中の
対応番号の付けられたビットが5ERDES50に入力
される時に論理rlJ状態になる。D型ラッチ152は
走査制御論理29から信号線55を経由してキー状態信
号を受は取る。後述するようにこの信号はキー・フィー
ルド動作期間中は論理「1」状態にある。ラッチ153
及び154はラッチ152に続いて直列式に結合されて
いる。ラッチI53はビットOでクロックされ、ラッチ
154はビット7でクロックされる。この構成を用いる
と、バッファ49が5ERDES50に転送する準備の
できたキー・バイトを含む時にラッチ153の非反転出
力は論理「1」になり、5ERDES50がディスク・
ファイルから受信したキー・データの8ヒツト全体を含
む時にラッチ154の非反転出力が論理「1」になる。
R8T信号及びHIT LTCHCLK信号を発生さ
せる回路が説明されている。7ビツトのリング・カウン
タ151が設けられており、これは信号線74上のファ
イル・クロック信号でクロックされる。リング・カウン
タ151は従って信号ビットO、ビット]・・・・・・
ビット7を出力し、それらはファイルからのバイト中の
対応番号の付けられたビットが5ERDES50に入力
される時に論理rlJ状態になる。D型ラッチ152は
走査制御論理29から信号線55を経由してキー状態信
号を受は取る。後述するようにこの信号はキー・フィー
ルド動作期間中は論理「1」状態にある。ラッチ153
及び154はラッチ152に続いて直列式に結合されて
いる。ラッチI53はビットOでクロックされ、ラッチ
154はビット7でクロックされる。この構成を用いる
と、バッファ49が5ERDES50に転送する準備の
できたキー・バイトを含む時にラッチ153の非反転出
力は論理「1」になり、5ERDES50がディスク・
ファイルから受信したキー・データの8ヒツト全体を含
む時にラッチ154の非反転出力が論理「1」になる。
CM P RL T C)I RS T信号はAND
ゲート156を用いて、ラッチ154の反転出力とリン
ク・カウンタ151のビットl出力との論理積を取る事
によって形成される。IIIT L′rCHCL、 K
信号はANDゲート157を用いて、リンク・カウンタ
151のビット7出力、ラッチ154の非反転出力及び
ORゲート155の出力の論理積を取る事によって形成
される。但しORゲート155はラッチ153の反転出
力及びレコードの最後のバイトに関して論理[IJ状態
を取るディスク・ファイルからの最後バイト信号の論理
和を取る。ANDゲート157の出力は、最後のキー・
バイトを比較した後にラッチ88及び89が安定しその
出力がANDゲート80〜85及びORゲート90を伝
わって走査ヒツト・ラッチ92の入力に到達する事を可
能にするのに充分な時間、遅延回路158によって遅延
される。ラッチ152〜154は、ORゲート159を
用いてI10制御装置16からのリセット信号及び走査
制御論理29からのロード・パルスの論理和を取った信
号によりリセットされる。
ゲート156を用いて、ラッチ154の反転出力とリン
ク・カウンタ151のビットl出力との論理積を取る事
によって形成される。IIIT L′rCHCL、 K
信号はANDゲート157を用いて、リンク・カウンタ
151のビット7出力、ラッチ154の非反転出力及び
ORゲート155の出力の論理積を取る事によって形成
される。但しORゲート155はラッチ153の反転出
力及びレコードの最後のバイトに関して論理[IJ状態
を取るディスク・ファイルからの最後バイト信号の論理
和を取る。ANDゲート157の出力は、最後のキー・
バイトを比較した後にラッチ88及び89が安定しその
出力がANDゲート80〜85及びORゲート90を伝
わって走査ヒツト・ラッチ92の入力に到達する事を可
能にするのに充分な時間、遅延回路158によって遅延
される。ラッチ152〜154は、ORゲート159を
用いてI10制御装置16からのリセット信号及び走査
制御論理29からのロード・パルスの論理和を取った信
号によりリセットされる。
次に第6図に示した走査制御論理29の詳細を説明する
。
。
キー長レジスタ31及びキー・アドレス・カウンタ43
からのデータ出力はアドレス比較論理30の対応する比
較入力ポートに加えられる。アドレス比較論理30はデ
ィジタル比較器で実施され、2つの入力が等しい時に論
理r l J状態の出力を出す。またキー・アドレス・
カウンタ43のデータ出力は、キー・アドレス・カウン
タの出力が255の時に論理「1」状態の出力信号を発
生する゛ デコーダ1.01にも加えられる。信号線2
8上のキー数カウンタ27の出力は、そのカウント出力
がゼロになった時に論理[1」状態の出力を発生するデ
コーダ102の加えられる。データ・アドレス・カウン
タ44の出力は、信号線42からデコーダ103に加え
られる。デコーダ103はデータ・アドレス・カウンタ
44の出力が255の時に出力線103Aに論理「1」
信号を与え、データ・アドレス・カウンタ44の出力が
254の時に信号線103Bに論理「1」信号を与える
。
からのデータ出力はアドレス比較論理30の対応する比
較入力ポートに加えられる。アドレス比較論理30はデ
ィジタル比較器で実施され、2つの入力が等しい時に論
理r l J状態の出力を出す。またキー・アドレス・
カウンタ43のデータ出力は、キー・アドレス・カウン
タの出力が255の時に論理「1」状態の出力信号を発
生する゛ デコーダ1.01にも加えられる。信号線2
8上のキー数カウンタ27の出力は、そのカウント出力
がゼロになった時に論理[1」状態の出力を発生するデ
コーダ102の加えられる。データ・アドレス・カウン
タ44の出力は、信号線42からデコーダ103に加え
られる。デコーダ103はデータ・アドレス・カウンタ
44の出力が255の時に出力線103Aに論理「1」
信号を与え、データ・アドレス・カウンタ44の出力が
254の時に信号線103Bに論理「1」信号を与える
。
同様に信号線45上のスキップ長レジスタ41からの出
力は、その値がゼロの時に論理「1」を出力するデコー
ダ114に入力される。
力は、その値がゼロの時に論理「1」を出力するデコー
ダ114に入力される。
ANDゲーh106−111、ORゲート115〜11
7及びインバータ104.105.112から構成され
たデコーダ回路が設けられる。ORゲート115〜I
1.7の出力は走査状態カウンタ120の2つのラッチ
121及び122に接続される。最後に、走査状態カウ
ンタ120のラッチ121及び122の出力はANDゲ
ート124〜126の入力に接続され、その出力はレコ
ード走査回路20がスキップ状態、キー状態及びデータ
状態の時にそれぞれ論理「1」状態になる。
7及びインバータ104.105.112から構成され
たデコーダ回路が設けられる。ORゲート115〜I
1.7の出力は走査状態カウンタ120の2つのラッチ
121及び122に接続される。最後に、走査状態カウ
ンタ120のラッチ121及び122の出力はANDゲ
ート124〜126の入力に接続され、その出力はレコ
ード走査回路20がスキップ状態、キー状態及びデータ
状態の時にそれぞれ論理「1」状態になる。
信号線35.36及び37上の、キー長レジスタ31、
データ長レジスタ32及び一時レジスタ33の間でデー
タのシフトを起こすための回転ストローブ・パルスはA
NDゲート113.119及び127〜129、ORゲ
ート118及びラッチ123から成る回路によって発生
される。第7図のクロック発生回路によって作られたク
ロック信号C,L K 1、CLK2及びCLK3が図
のようにANDゲート127〜129の入力に接される
。
データ長レジスタ32及び一時レジスタ33の間でデー
タのシフトを起こすための回転ストローブ・パルスはA
NDゲート113.119及び127〜129、ORゲ
ート118及びラッチ123から成る回路によって発生
される。第7図のクロック発生回路によって作られたク
ロック信号C,L K 1、CLK2及びCLK3が図
のようにANDゲート127〜129の入力に接される
。
キー数カウンタ27及びキー・アドレス・カウンタ43
のロード並びにデータ・アドレス・カウンタ44のリセ
ットを生じさせる、信号線40上の一般ロード・パルス
を発生させる回路はANDゲート131,132及び1
34並びにラッチ】33を含む。
のロード並びにデータ・アドレス・カウンタ44のリセ
ットを生じさせる、信号線40上の一般ロード・パルス
を発生させる回路はANDゲート131,132及び1
34並びにラッチ】33を含む。
第7図は種々のクロック信号CL K’ O〜CLK3
の間のタイミング関係及びクロック発生回路を゛示す図
である。これらの信号は信号線74上のファイル・タロ
ツクに同期された主発振器98及びクロック発生器99
によって作られる。発振器98はレコード走査動作の開
始時にI10制御装置16からのエネーブル・クロック
信号によってクロック信号を発生する事を可能にされる
。キー・アドレス・カウンタ43はCLK l信号でク
ロックされ、データ・アドレス・カウンタ44はCLK
2信号でクロックされ、キー記憶装置47はC1−K
2信号でクロックされ、そしてデータ記憶装置48はC
LK3信号でクロックされる。これらの接続は第4図に
示されていないが、これは図面を煩雑にするのを避ける
ため、及びクロック信号接続はいくぶん任意的であって
実際に用いられるデバイスの速度等の因子を考慮して変
更し得るからである。信号CLKO−C:LK3の間に
示されるタイミング関係を与えるような回路の構成は周
知なので、これ以上の説明は省略する。
の間のタイミング関係及びクロック発生回路を゛示す図
である。これらの信号は信号線74上のファイル・タロ
ツクに同期された主発振器98及びクロック発生器99
によって作られる。発振器98はレコード走査動作の開
始時にI10制御装置16からのエネーブル・クロック
信号によってクロック信号を発生する事を可能にされる
。キー・アドレス・カウンタ43はCLK l信号でク
ロックされ、データ・アドレス・カウンタ44はCLK
2信号でクロックされ、キー記憶装置47はC1−K
2信号でクロックされ、そしてデータ記憶装置48はC
LK3信号でクロックされる。これらの接続は第4図に
示されていないが、これは図面を煩雑にするのを避ける
ため、及びクロック信号接続はいくぶん任意的であって
実際に用いられるデバイスの速度等の因子を考慮して変
更し得るからである。信号CLKO−C:LK3の間に
示されるタイミング関係を与えるような回路の構成は周
知なので、これ以上の説明は省略する。
第9A図〜第9E図のタイミング図と同時番;第6図の
回路の動作を説明する。
回路の動作を説明する。
レコード走査動作の開始時にI10制御装w16によっ
てリセット・パルスが加えられる。ORゲート115及
び117を経て加えらicるこのノ(ルスはラッチ12
1及び122を共しこリセットする。ANDゲート12
4〜126でデコートされたラッチ121及び122の
出力番よ、A、NDアゲート24の出力に論理「1」を
、ANDゲート125及び126の出力に論理「0」を
発生し、スキップ状態信号を発生する。
てリセット・パルスが加えられる。ORゲート115及
び117を経て加えらicるこのノ(ルスはラッチ12
1及び122を共しこリセットする。ANDゲート12
4〜126でデコートされたラッチ121及び122の
出力番よ、A、NDアゲート24の出力に論理「1」を
、ANDゲート125及び126の出力に論理「0」を
発生し、スキップ状態信号を発生する。
5L=0であれば即ちレコード走査動イ乍の開始時にス
キップされるデータがなけh Li 、I / Oi制
御装置16からリセット・)(パルスの次しこセット・
パルスが加えられ、走査状態カウンタ120をキー状態
にする。さもなければ即ちSL≠Oであれば、リセット
・パルスのみが加えられ、走査状態カウンタをキー状態
にする。
キップされるデータがなけh Li 、I / Oi制
御装置16からリセット・)(パルスの次しこセット・
パルスが加えられ、走査状態カウンタ120をキー状態
にする。さもなければ即ちSL≠Oであれば、リセット
・パルスのみが加えられ、走査状態カウンタをキー状態
にする。
スキップ状態の時、キー・アドパルス・カウンタ43は
5ERDES50によってデータのノペイトが受は取ら
れるごとに1力ウント増組数される。
5ERDES50によってデータのノペイトが受は取ら
れるごとに1力ウント増組数される。
256−8L (mod256)の値に初期設定された
キー・アドレス・カウンタ43が255 (mod25
6)のカランl〜に至ると、デコーダ101の出力に論
理「1」が発生し、ANDゲート108の1入力に加え
られる。キー数カウンタ(よその時ゼロに到達していな
い(走査されるべきキーの数はゼロよりも大きいと仮定
する)ので、イン、<−夕105の出力に接続されたA
NDゲート108の入力にも論理「1」が加えられて1
)る。ま、たA N I)ゲー1−108の第3の入力
に加えら4cるスキップ状態信号も論理rlJ状態であ
る。従ってA N l)ケー1−108の第4の入力に
次のCLKOパルスが入力される時、ノ(ルスがAN
Dゲート108から出力されORゲート116を経てラ
ッチ122のセット入力に至る。こオしくよラッチ12
2の状態を変化させ、それによって走査状態カウンタ1
20のラッチの出力をデコーlピするANDゲート12
4〜126に論理「0」のスキップ状態信号、論理「1
」のキー状態信号及び論理「0」のデータ状態を生じさ
せる。この遷移は第9A図のタイミング図に示されてい
る。
キー・アドレス・カウンタ43が255 (mod25
6)のカランl〜に至ると、デコーダ101の出力に論
理「1」が発生し、ANDゲート108の1入力に加え
られる。キー数カウンタ(よその時ゼロに到達していな
い(走査されるべきキーの数はゼロよりも大きいと仮定
する)ので、イン、<−夕105の出力に接続されたA
NDゲート108の入力にも論理「1」が加えられて1
)る。ま、たA N I)ゲー1−108の第3の入力
に加えら4cるスキップ状態信号も論理rlJ状態であ
る。従ってA N l)ケー1−108の第4の入力に
次のCLKOパルスが入力される時、ノ(ルスがAN
Dゲート108から出力されORゲート116を経てラ
ッチ122のセット入力に至る。こオしくよラッチ12
2の状態を変化させ、それによって走査状態カウンタ1
20のラッチの出力をデコーlピするANDゲート12
4〜126に論理「0」のスキップ状態信号、論理「1
」のキー状態信号及び論理「0」のデータ状態を生じさ
せる。この遷移は第9A図のタイミング図に示されてい
る。
キー・アドレス・カウンタ43はクロックされ続ける。
キー状態に達した後のその最初のカウント値は(第9A
図に示すように)ゼロである。この状態に続いて、キー
・アドレス・カウンタは5ERDES50に8ビツトの
データがロードされるごとに1カウントずつ増訂数され
る。従って探索引数はキー記憶装置47からバッファ4
9A及び49Bを経て5ERDES50に順次にバイト
単位で読み出され、ディスク・ファイルから来たデータ
と比較される。
図に示すように)ゼロである。この状態に続いて、キー
・アドレス・カウンタは5ERDES50に8ビツトの
データがロードされるごとに1カウントずつ増訂数され
る。従って探索引数はキー記憶装置47からバッファ4
9A及び49Bを経て5ERDES50に順次にバイト
単位で読み出され、ディスク・ファイルから来たデータ
と比較される。
キー状態において、キー・アドレス・カウンタ43の増
訂数された値がキー長レジスタ31に記憶された値KL
−1になる時、アドレス比較論理30によって論理[1
」が出力され、ANDゲート106の入力に加えられる
。ANDゲート106の他方の入力にはキー状態信号が
加えられる。
訂数された値がキー長レジスタ31に記憶された値KL
−1になる時、アドレス比較論理30によって論理[1
」が出力され、ANDゲート106の入力に加えられる
。ANDゲート106の他方の入力にはキー状態信号が
加えられる。
第9B図に示すように、CLKO信号の次の)(゛ルス
を受は取った時、ANDゲート106によってパルスが
出力される(これは前述のE OK ’F倍信号ある)
。このパルスは信号線38に加えられ、走査状態カウン
タ120のラッチ121をセットし、キー数カウンタ2
7を減計数し、キー・アドレス・カウンタ43をゼロに
リセッ1−する。
を受は取った時、ANDゲート106によってパルスが
出力される(これは前述のE OK ’F倍信号ある)
。このパルスは信号線38に加えられ、走査状態カウン
タ120のラッチ121をセットし、キー数カウンタ2
7を減計数し、キー・アドレス・カウンタ43をゼロに
リセッ1−する。
最初のキー・フィールドの走査中にデータ・レコードの
終端に達しなかったとすると、キー数カウンタ27は1
カウント減計数されキー・アドレス・カウンタ43はゼ
ロにリセツ1〜される。さらに走査状態カウンタ120
はデータ状態信号を付勢するようにセットされる。この
時後続するデータ・フィールド動作期間のためにデータ
長の値DL−1をキー長レジスタ31に記憶させるため
に、キー長レジスタ31.データ長レジスタ32及び一
時レジスタ33の間で数値を回転させる必要がある。こ
の回転を行なうためにORゲート118、ANDゲート
119及びラッチ123を利用してA N +3ゲート
127〜129の出力に回転ストローブl〜3の信号を
発生させる。これらの信号の発生はORゲート118の
一人力の加えられるEOKFパルスによって開始される
。ORゲート118を通過したパルスはラッチ123を
セットし、このラッチはCLKOの次のパルスがAND
ゲート119に加えれられラッチを再び論理[0」状態
にセットするまで論理rNを出力する。ラッチ123の
出力が論理rlJ状態の間、ANDゲート127〜12
9は各々対応するタロツク信号CLK1.CLK2、C
LK′3の1つのパルスを通過させる事ができる。それ
らの信号によってレジスタ31.32及び33のデータ
が適当に回転されると、データ・フィールド動作が始ま
る。
終端に達しなかったとすると、キー数カウンタ27は1
カウント減計数されキー・アドレス・カウンタ43はゼ
ロにリセツ1〜される。さらに走査状態カウンタ120
はデータ状態信号を付勢するようにセットされる。この
時後続するデータ・フィールド動作期間のためにデータ
長の値DL−1をキー長レジスタ31に記憶させるため
に、キー長レジスタ31.データ長レジスタ32及び一
時レジスタ33の間で数値を回転させる必要がある。こ
の回転を行なうためにORゲート118、ANDゲート
119及びラッチ123を利用してA N +3ゲート
127〜129の出力に回転ストローブl〜3の信号を
発生させる。これらの信号の発生はORゲート118の
一人力の加えられるEOKFパルスによって開始される
。ORゲート118を通過したパルスはラッチ123を
セットし、このラッチはCLKOの次のパルスがAND
ゲート119に加えれられラッチを再び論理[0」状態
にセットするまで論理rNを出力する。ラッチ123の
出力が論理rlJ状態の間、ANDゲート127〜12
9は各々対応するタロツク信号CLK1.CLK2、C
LK′3の1つのパルスを通過させる事ができる。それ
らの信号によってレジスタ31.32及び33のデータ
が適当に回転されると、データ・フィールド動作が始ま
る。
データ・フィールド動作状態において、キー・フィール
ド動作状態と同様にキー・アドレス・カウンタ43のカ
ウント値とキー長レジスタ31に記憶された値との間で
連続的に比較が行なわれる。
ド動作状態と同様にキー・アドレス・カウンタ43のカ
ウント値とキー長レジスタ31に記憶された値との間で
連続的に比較が行なわれる。
但しこの場合キー長レジスタ31に記憶されている値は
実際にはデータ長DL−1である。
実際にはデータ長DL−1である。
キー・アドレス・カウンタ43によって実行されるデー
タ長のカウントがキー長レジスタ31に記憶された値D
L−1に等しくなる時、アドレス比較論理30から論理
[1」が出力され、ANDゲート109の1入力に加え
られる。キー数カウンタがゼロに達せず且つ以前に「ヒ
ツト」が生じていないと仮定すると、インバータ104
及び105に接続されたANDゲート1090入力は論
理「1」状態にある。従って信号CLKOの次のパルス
が生じる時、ANDゲート109によりORゲー1−1
15及び116を経てラッチ121及び122の各々リ
セット入力及びセット入力にパルスが送られる。次にラ
ッチ121及び122のデコードされた出力が再びキー
状態を表現し、従ってΔNl)ゲートl 25がらのキ
ー状態信号が論理「IJになり、一方スキップ状態及び
データ状態の信号は論理rOJになる。この動作のシー
ケンスは第9D図のタイミング図に示されている。
タ長のカウントがキー長レジスタ31に記憶された値D
L−1に等しくなる時、アドレス比較論理30から論理
[1」が出力され、ANDゲート109の1入力に加え
られる。キー数カウンタがゼロに達せず且つ以前に「ヒ
ツト」が生じていないと仮定すると、インバータ104
及び105に接続されたANDゲート1090入力は論
理「1」状態にある。従って信号CLKOの次のパルス
が生じる時、ANDゲート109によりORゲー1−1
15及び116を経てラッチ121及び122の各々リ
セット入力及びセット入力にパルスが送られる。次にラ
ッチ121及び122のデコードされた出力が再びキー
状態を表現し、従ってΔNl)ゲートl 25がらのキ
ー状態信号が論理「IJになり、一方スキップ状態及び
データ状態の信号は論理rOJになる。この動作のシー
ケンスは第9D図のタイミング図に示されている。
このようにキー状態及びデータ状態の動作の同じ系列が
、「ヒツト」が生じるか又はレコードが終了するまで行
なわれる。
、「ヒツト」が生じるか又はレコードが終了するまで行
なわれる。
いずれかのキー・フィールドで「ヒツト」が起きると、
インバータ104からANDゲート109に加えられる
論理「0」によってANDゲート109が禁止され、そ
のために走査状態カウンタは次のデータ・フィールド動
作の後にキー状態に戻れなくなる。
インバータ104からANDゲート109に加えられる
論理「0」によってANDゲート109が禁止され、そ
のために走査状態カウンタは次のデータ・フィールド動
作の後にキー状態に戻れなくなる。
第9E図のタイミング図を参照すると、データ・レコー
ドの終了時にデータ・アドレス・カウンタ44が255
のカウントに達する時、信号線103A上の論理rlJ
状態はCLKO信号のパルスがANDゲート107及び
ORゲート115を通過して走査状態カウンタ120の
ラッチ121をリセットする事を可能にする。従って次
のレコード走査動作の開始のために走査状態カウンタ1
20はスキップ状態にセットされる。
ドの終了時にデータ・アドレス・カウンタ44が255
のカウントに達する時、信号線103A上の論理rlJ
状態はCLKO信号のパルスがANDゲート107及び
ORゲート115を通過して走査状態カウンタ120の
ラッチ121をリセットする事を可能にする。従って次
のレコード走査動作の開始のために走査状態カウンタ1
20はスキップ状態にセットされる。
もし走査しているキー・フィールドの終端部に到達する
前にレコードの終りに達すると、走査状態カウンタ12
0はスキップ状態信号を付勢するようにセットされる。
前にレコードの終りに達すると、走査状態カウンタ12
0はスキップ状態信号を付勢するようにセットされる。
この場合データ・アドレスカウンタが255のカウント
に達すると、デコーダ103からの信号線103Aが論
理「1」状態になる。この信号はANDゲート111の
1入力に結合される。もしスキップ長がゼロ以外のも
のであれば、インバータ112によってA’N Dゲー
ト111の第2の入力に他の論理「1」が加えられる。
に達すると、デコーダ103からの信号線103Aが論
理「1」状態になる。この信号はANDゲート111の
1入力に結合される。もしスキップ長がゼロ以外のも
のであれば、インバータ112によってA’N Dゲー
ト111の第2の入力に他の論理「1」が加えられる。
CLKO信号の次のパルスを受は取った時、ANDゲー
ト111からの出力パルスはORゲー1−1.17を経
てラッチ122のリセット入力に結合される。従って走
査状態カウンタ120は、次のレコード走査動作のため
にスキップ状態信号を付勢しキー状態信号及びデータ状
態信号を減勢するような条件にセットされる。
ト111からの出力パルスはORゲー1−1.17を経
てラッチ122のリセット入力に結合される。従って走
査状態カウンタ120は、次のレコード走査動作のため
にスキップ状態信号を付勢しキー状態信号及びデータ状
態信号を減勢するような条件にセットされる。
またデータ・レコードの終了時に、データ状態であれは
、回転ストローブ1〜3信号を発生させる必要がある。
、回転ストローブ1〜3信号を発生させる必要がある。
(もしキー状態の時にデータ・レコ−1くの終りに達す
ると、これは行なわれない。)これはデータ・アドレス
・カウンタのカウントが254の時に行なわれる。この
場合デコーダ103からの出力線103Bが論理[l」
状態になり、それにより論理rNがANDゲー1−11
3の1人力に与えられる。データ状態信号がrl)状態
の場合、CLKO信号の次のパルスはANDゲート11
3及びORゲート118を通過しラッチ123をセット
する。キして前述のように回転ストローブ信号が発生す
る。
ると、これは行なわれない。)これはデータ・アドレス
・カウンタのカウントが254の時に行なわれる。この
場合デコーダ103からの出力線103Bが論理[l」
状態になり、それにより論理rNがANDゲー1−11
3の1人力に与えられる。データ状態信号がrl)状態
の場合、CLKO信号の次のパルスはANDゲート11
3及びORゲート118を通過しラッチ123をセット
する。キして前述のように回転ストローブ信号が発生す
る。
さらにデータ・レコードの終了時に、次のスキップ・フ
ィールド計数動作を行なう準備をするために、キー数レ
ジスタ26からキー数カウンタ27に及びスキップ長レ
ジスタ41からキー・アドレス・カウンタ43にロード
するための一部ロード・パルスがANDゲート134の
出力に発生する。信号線40上の一部ロード・パルスは
、データ・アドレス・カウンタが255のカウントに達
しその結果信号線103Aに論理rlJが存在する時に
発生する。信号線103A上の信号が最初に論理rlJ
になる時、CLKO信号の次のパルスがANDゲート1
31を通過しレコード終了ラッチ133をセットする。
ィールド計数動作を行なう準備をするために、キー数レ
ジスタ26からキー数カウンタ27に及びスキップ長レ
ジスタ41からキー・アドレス・カウンタ43にロード
するための一部ロード・パルスがANDゲート134の
出力に発生する。信号線40上の一部ロード・パルスは
、データ・アドレス・カウンタが255のカウントに達
しその結果信号線103Aに論理rlJが存在する時に
発生する。信号線103A上の信号が最初に論理rlJ
になる時、CLKO信号の次のパルスがANDゲート1
31を通過しレコード終了ラッチ133をセットする。
従ってANDゲート132も付勢される。次にCLKO
信号の次のパルスがANDゲート132を通過しラッチ
133をリセットする。ラッチ133の出力はANDゲ
ー1−134でCLK2信号との論理積を取られ、一般
ロード・パルス信号を発生する。
信号の次のパルスがANDゲート132を通過しラッチ
133をリセットする。ラッチ133の出力はANDゲ
ー1−134でCLK2信号との論理積を取られ、一般
ロード・パルス信号を発生する。
データ・レコード走査動作の特殊な場合には、スキップ
長がゼロの時即ちデータ・レコード中のディスク・ファ
イルから受は取ったデータの最初のバイトがキー・フィ
ールドの一部である時である。この場合レコード走査動
作中にスキン九状態は決して生じない。この場合デコー
ダ114がらの出力は論理rlJ状態にあり、ANDゲ
ート111はインバータ112の「0」出力により禁止
される。これはスキップ状態への転移を阻止する。
長がゼロの時即ちデータ・レコード中のディスク・ファ
イルから受は取ったデータの最初のバイトがキー・フィ
ールドの一部である時である。この場合レコード走査動
作中にスキン九状態は決して生じない。この場合デコー
ダ114がらの出力は論理rlJ状態にあり、ANDゲ
ート111はインバータ112の「0」出力により禁止
される。これはスキップ状態への転移を阻止する。
またANDゲート11Oの入力にはデコーダ114から
論理rlJが加えられる。従ってデータ・レコードの終
了時にANDゲートllOの他方の入力に信号線103
Aから論理「1」が加えられる。信号線103Aが論理
rlJ状態になった後、CL K O信号の最初のパル
スが来ると、パルスはΔN l)ゲー1−110及びO
Rゲート116を通過してラッチ122をセットする。
論理rlJが加えられる。従ってデータ・レコードの終
了時にANDゲートllOの他方の入力に信号線103
Aから論理「1」が加えられる。信号線103Aが論理
rlJ状態になった後、CL K O信号の最初のパル
スが来ると、パルスはΔN l)ゲー1−110及びO
Rゲート116を通過してラッチ122をセットする。
このようにしてスキップ状態を通る事なく直接的にキー
状態が得られる。
状態が得られる。
本発明のレコード走査探索を行なう方法及びレコード走
査回路の動作が第8A図〜第8C図の流れ図に要約され
ている。第8A図の流れ図の開始位置において(ここで
種々の初期値が全てセットされていると仮定する)、走
査されるディスク・ファイル・セクタがI10制御装置
16及び装置制御ユニット21によって最初に位置付け
られる。
査回路の動作が第8A図〜第8C図の流れ図に要約され
ている。第8A図の流れ図の開始位置において(ここで
種々の初期値が全てセットされていると仮定する)、走
査されるディスク・ファイル・セクタがI10制御装置
16及び装置制御ユニット21によって最初に位置付け
られる。
この後、走査されるレコードの系列の最初のバイトが第
1のバッファ49を経て5ERDES50にロードされ
る。このデータは5ERDES50に直列にシフトされ
る。もし回路がキー状態になければ、5ERDES50
への直列データのシフトは8ビツトがそこにロードされ
るまで進行する。
1のバッファ49を経て5ERDES50にロードされ
る。このデータは5ERDES50に直列にシフトされ
る。もし回路がキー状態になければ、5ERDES50
への直列データのシフトは8ビツトがそこにロードされ
るまで進行する。
この時5ERDESからデータの最初のバイトがバッフ
ァ52を経てデータ記憶装置48にロードされる。
ァ52を経てデータ記憶装置48にロードされる。
次に第8B図の流れ図の点4の始まりに示すように、も
し回路がまだスキップ状態であってキー・アドレス・カ
ウンタの内容が255でなければ、キー・アドレス・カ
ウンタ43及びデータ・アドレス・カウンタ44は1カ
ウント増計数される。
し回路がまだスキップ状態であってキー・アドレス・カ
ウンタの内容が255でなければ、キー・アドレス・カ
ウンタ43及びデータ・アドレス・カウンタ44は1カ
ウント増計数される。
データ・アドレス・カウンタ44のゼロ以外の出力によ
って示されるようにデータ・レコードの終りに達してい
ない場合、手続は第8A図に示す点2に戻りキー記憶装
置から5ERDESに他のバイトが転送される。
って示されるようにデータ・レコードの終りに達してい
ない場合、手続は第8A図に示す点2に戻りキー記憶装
置から5ERDESに他のバイトが転送される。
一方スキップ状態においてキー・アドレス・カウンタが
255に到達すると、走査状態カウンタがキー状態にセ
ラ(・され、その後キー・アドレス・カウンタがゼロ・
カウントに達し、キー状態計数動作が始まる。データ・
アドレス・カウンタは再び1カウン1−ずつ増計数され
る。
255に到達すると、走査状態カウンタがキー状態にセ
ラ(・され、その後キー・アドレス・カウンタがゼロ・
カウントに達し、キー状態計数動作が始まる。データ・
アドレス・カウンタは再び1カウン1−ずつ増計数され
る。
キー状態において、回路動作は点4がら点2に移る。キ
ー状態になった後に5ERDESにデータの最初のバイ
トが導入された時にキー・アドレス・カウンタの内容が
キー長レジスタに記憶された値に等しくないならば、第
8B図の点6に移行し、キー・アドレス・カウンタ及び
データ・アドレス・カウンタは1カウント増81数され
、この過程はキー・フィールドの終りまで続く。キー・
フィールドの終りに、「ヒツト」が生じていなければ、
キーカウンタ27は1カウント減計数され、データ状態
信号が付勢される。次に初期値データがキー数レジスタ
31、データ長レジスタ32及び一時レジスタ33の間
で回転され、そしてキー・アドレス・カウンタはゼロに
セットされ、データ・アドレス・カウンタは1カウント
増計数される。
ー状態になった後に5ERDESにデータの最初のバイ
トが導入された時にキー・アドレス・カウンタの内容が
キー長レジスタに記憶された値に等しくないならば、第
8B図の点6に移行し、キー・アドレス・カウンタ及び
データ・アドレス・カウンタは1カウント増81数され
、この過程はキー・フィールドの終りまで続く。キー・
フィールドの終りに、「ヒツト」が生じていなければ、
キーカウンタ27は1カウント減計数され、データ状態
信号が付勢される。次に初期値データがキー数レジスタ
31、データ長レジスタ32及び一時レジスタ33の間
で回転され、そしてキー・アドレス・カウンタはゼロに
セットされ、データ・アドレス・カウンタは1カウント
増計数される。
「ヒツト」が実際に起きてい荘ば、データ・アドレス・
カウンタ中の数値はスキップ長レジスタ41に記憶され
、走査状態カウンタ120はデータ状態にセットされ、
手続は点6に戻る。
カウンタ中の数値はスキップ長レジスタ41に記憶され
、走査状態カウンタ120はデータ状態にセットされ、
手続は点6に戻る。
第8A図及び第8B図の流れ図において点5から点2.
3及び4を通ると、キー・アドレス・カウンタはゼロに
セットされ、データ・アドレス・カウンタは増計数され
る。この時回路がデータ状態であれば、動作は第8B図
の流れ図の右側の列に示すように進行する。キー・アド
レス・カウンタは、それがキー長レジスタに記憶された
数値(データ状態の場合はDL−1)に至るまで増計数
される。この値に至ると、キー数カウンタがゼロ以外の
値を持つ事によって示されるように最後のキーに到達し
ていないならば、走査状態カウンタ120はキー状態に
変化し、データはレジスタ31.32及び33の間を回
転され、その後動作は第8B図の点5へ進む。一方もし
キー数カウンタがゼロになっていれば、次のキー・フィ
ールドの走査を始めるか又はスキップ状態へ切り換わる
ために動作は点2に戻る。
3及び4を通ると、キー・アドレス・カウンタはゼロに
セットされ、データ・アドレス・カウンタは増計数され
る。この時回路がデータ状態であれば、動作は第8B図
の流れ図の右側の列に示すように進行する。キー・アド
レス・カウンタは、それがキー長レジスタに記憶された
数値(データ状態の場合はDL−1)に至るまで増計数
される。この値に至ると、キー数カウンタがゼロ以外の
値を持つ事によって示されるように最後のキーに到達し
ていないならば、走査状態カウンタ120はキー状態に
変化し、データはレジスタ31.32及び33の間を回
転され、その後動作は第8B図の点5へ進む。一方もし
キー数カウンタがゼロになっていれば、次のキー・フィ
ールドの走査を始めるか又はスキップ状態へ切り換わる
ために動作は点2に戻る。
第8A図の流れ図を参照すると、キー状態の時ヒラl−
0及びビット8は[ヒツト]が起きたか否かを判定する
ために比較される。
0及びビット8は[ヒツト]が起きたか否かを判定する
ために比較される。
データ・アドレス・カウンタが、レコード走査動作の終
了を意味するゼロ値に到達する時、動作は第8C図の流
れ図の上部の点7に進む。もし「ヒツト」が起きていれ
ば−I10制御装置16がそのように通知を受け、その
後手続は終了する。
了を意味するゼロ値に到達する時、動作は第8C図の流
れ図の上部の点7に進む。もし「ヒツト」が起きていれ
ば−I10制御装置16がそのように通知を受け、その
後手続は終了する。
次にI10制御装置は適切なデータを読取る事ができる
。もし「ヒツト」が起きていなければ、スキップ長レジ
スタ41に記憶された値はキー・アドレス・カウンタ4
3に移され、キー数レジスタ27に記憶された値はキー
数カウンタに移される。
。もし「ヒツト」が起きていなければ、スキップ長レジ
スタ41に記憶された値はキー・アドレス・カウンタ4
3に移され、キー数レジスタ27に記憶された値はキー
数カウンタに移される。
スキップ長レジスタ41に記憶された値がゼロであれば
、走査状態カウンタ120はキー状態に留まる。一方ス
キップ長レジスタ41に記憶された値がゼロ以外のもの
であれば、走査状態カウンタは次のレコード走査動作の
ためにスキップ状態にセットされる。もしレコードの終
了時に走査状態カウンタがキー状態でなければ、キー長
レジスタ31、データ長レジスタ32及び一時レジスタ
33の間でデータが回転される。もし走査すべきレコー
ドがそれ以上なければ、手続は終了する。走査すべきレ
コードが実際にあれば、動作は第8A図の点1に戻って
再開始する。
、走査状態カウンタ120はキー状態に留まる。一方ス
キップ長レジスタ41に記憶された値がゼロ以外のもの
であれば、走査状態カウンタは次のレコード走査動作の
ためにスキップ状態にセットされる。もしレコードの終
了時に走査状態カウンタがキー状態でなければ、キー長
レジスタ31、データ長レジスタ32及び一時レジスタ
33の間でデータが回転される。もし走査すべきレコー
ドがそれ以上なければ、手続は終了する。走査すべきレ
コードが実際にあれば、動作は第8A図の点1に戻って
再開始する。
第1図はレコード走査回路を用いた計算機ジ−ステムの
ブロック図、 第2図はデータ・レコードの走査を開始させるために第
1図の計算機システムで用いられる探索要求ブロックの
形式を示す図、 第3図はディスク・メモリに記憶されるデータ・レコー
ド及びデータ・レコード識別子の構成を示す図、 第4図は第1図のシステム中のレコード走査回路のブロ
ック図、 第5A図及び第5B図は第4図のレコード走査回路中の
データ比較論理回路の詳細な回路図、第6図は第4図の
レコード走査回路中の走査制御論理回路の詳細な回路図
、 第7図は第4図の回路で用いられるクロック発生回路及
びクロック信号のタイミング関係を示す図、 第8A図乃至第8C図は第4図の回路の動作を説明する
ための流れ図、 第9A図乃至第9E図は第4図の回路の動作を説明する
ためのタイミング図である。 第1頁の続き 0発 明 者 ジエラルド・ウルリッチ・マーケル アメリカ合衆国フロリダ州デル レイ・ビーチ・ガーデニア・ド ライブ928番地 0発 明 者 ジャック・ディルワース・ニーすイ アメリカ合衆国フロリダ州ポカ ・ラドン・ノースウェスト・サ ーティーンス・ストリート1571 番地 M 明 者 スチーブン・アロイス・シュミット アメリカ合衆国ミネソタ州口チ ニスター・テンス・アベニュー ・ノースウェスト2306番地 @発 明 者 ウィリアム・ギヤレット・ヴアードーン
・ジュニア アメリカ合衆国ミネソタ州口チ ニスター・トウエンティナイン ス・ストリート・ノースウェス ヒフ04番地 老発 明 者 ピータ−・パーガート・パンディ アメリカ合衆国ミネソタ州パイ ン・アイランド・ボックス380 エイ・アール・アール2番地
ブロック図、 第2図はデータ・レコードの走査を開始させるために第
1図の計算機システムで用いられる探索要求ブロックの
形式を示す図、 第3図はディスク・メモリに記憶されるデータ・レコー
ド及びデータ・レコード識別子の構成を示す図、 第4図は第1図のシステム中のレコード走査回路のブロ
ック図、 第5A図及び第5B図は第4図のレコード走査回路中の
データ比較論理回路の詳細な回路図、第6図は第4図の
レコード走査回路中の走査制御論理回路の詳細な回路図
、 第7図は第4図の回路で用いられるクロック発生回路及
びクロック信号のタイミング関係を示す図、 第8A図乃至第8C図は第4図の回路の動作を説明する
ための流れ図、 第9A図乃至第9E図は第4図の回路の動作を説明する
ためのタイミング図である。 第1頁の続き 0発 明 者 ジエラルド・ウルリッチ・マーケル アメリカ合衆国フロリダ州デル レイ・ビーチ・ガーデニア・ド ライブ928番地 0発 明 者 ジャック・ディルワース・ニーすイ アメリカ合衆国フロリダ州ポカ ・ラドン・ノースウェスト・サ ーティーンス・ストリート1571 番地 M 明 者 スチーブン・アロイス・シュミット アメリカ合衆国ミネソタ州口チ ニスター・テンス・アベニュー ・ノースウェスト2306番地 @発 明 者 ウィリアム・ギヤレット・ヴアードーン
・ジュニア アメリカ合衆国ミネソタ州口チ ニスター・トウエンティナイン ス・ストリート・ノースウェス ヒフ04番地 老発 明 者 ピータ−・パーガート・パンディ アメリカ合衆国ミネソタ州パイ ン・アイランド・ボックス380 エイ・アール・アール2番地
Claims (1)
- 【特許請求の範囲】 スキップ長、キー長及びデータ長の値を特定し、上記キ
ー長に一致する長さの探索引数を与え、所定の位置から
始まる探索すべきデータ・レコードを有するファイルか
らデータの直列ストリームを供給し、 上記ファイルからデータ・レコードを受は取る毎に、上
記データ・レコードの開始部から上記スキップ長によっ
て決定される長さのデータをとばし1次に上記キー長に
よって指定される長さの上記データのキー・フィールド
を上記探索引数と比較する動作と上記データ長によって
指定される長さの上記データのデータ・フィールドをと
ばす動作とを交互に反復するステップを含む データ・レコードの探索方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US404200 | 1982-07-30 | ||
| US06/404,200 US4464718A (en) | 1982-07-30 | 1982-07-30 | Associative file processing method and apparatus |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5924356A true JPS5924356A (ja) | 1984-02-08 |
| JPH0410649B2 JPH0410649B2 (ja) | 1992-02-26 |
Family
ID=23598587
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58123535A Granted JPS5924356A (ja) | 1982-07-30 | 1983-07-08 | デ−タ・レコ−ドの探索方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4464718A (ja) |
| EP (1) | EP0100405B1 (ja) |
| JP (1) | JPS5924356A (ja) |
| DE (1) | DE3381542D1 (ja) |
Families Citing this family (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0786875B2 (ja) * | 1984-05-25 | 1995-09-20 | 株式会社日立製作所 | ベクトル処理装置 |
| DE3508048A1 (de) * | 1985-03-07 | 1986-09-11 | Standard Elektrik Lorenz Ag, 7000 Stuttgart | Schnittstelleneinrichtung |
| JPS6283787A (ja) * | 1985-10-09 | 1987-04-17 | 株式会社日立製作所 | 表示画面の出力制御方式 |
| KR940003700B1 (ko) * | 1986-02-14 | 1994-04-27 | 가부시기가이샤 히다찌세이사꾸쇼 | 검색방법 및 그 장치 |
| US5170479A (en) * | 1986-03-25 | 1992-12-08 | Kabushiki Kaisha Toshiba | File block managing system using next record header position data and delete history data from block header and record headers to locate requested record block |
| US5050075A (en) * | 1988-10-04 | 1991-09-17 | Bell Communications Research, Inc. | High performance VLSI data filter |
| AU620994B2 (en) * | 1989-07-12 | 1992-02-27 | Digital Equipment Corporation | Compressed prefix matching database searching |
| GB9023096D0 (en) * | 1990-10-24 | 1990-12-05 | Int Computers Ltd | Database search processor |
| US5721898A (en) * | 1992-09-02 | 1998-02-24 | International Business Machines Corporation | Method and system for data search in a data processing system |
| US5586288A (en) * | 1993-09-22 | 1996-12-17 | Hilevel Technology, Inc. | Memory interface chip with rapid search capability |
| JPH0962600A (ja) * | 1995-08-30 | 1997-03-07 | Matsushita Electric Ind Co Ltd | ワイヤレス入力システム |
| DE19618772A1 (de) * | 1996-05-10 | 1997-01-23 | Jan Leinemann | Assoziativmassenspeicher |
| US6876991B1 (en) | 1999-11-08 | 2005-04-05 | Collaborative Decision Platforms, Llc. | System, method and computer program product for a collaborative decision platform |
| US7139743B2 (en) * | 2000-04-07 | 2006-11-21 | Washington University | Associative database scanning and information retrieval using FPGA devices |
| US6711558B1 (en) * | 2000-04-07 | 2004-03-23 | Washington University | Associative database scanning and information retrieval |
| US8095508B2 (en) * | 2000-04-07 | 2012-01-10 | Washington University | Intelligent data storage and processing using FPGA devices |
| US7716330B2 (en) | 2001-10-19 | 2010-05-11 | Global Velocity, Inc. | System and method for controlling transmission of data packets over an information network |
| US7035844B2 (en) * | 2002-02-25 | 2006-04-25 | Lsi Logic Corporation | FFS search and edit pipeline separation |
| US7093023B2 (en) * | 2002-05-21 | 2006-08-15 | Washington University | Methods, systems, and devices using reprogrammable hardware for high-speed processing of streaming data to find a redefinable pattern and respond thereto |
| US7711844B2 (en) | 2002-08-15 | 2010-05-04 | Washington University Of St. Louis | TCP-splitter: reliable packet monitoring methods and apparatus for high speed networks |
| EP2511787B1 (en) | 2003-05-23 | 2017-09-20 | IP Reservoir, LLC | Data decompression and search using FPGA devices |
| US10572824B2 (en) | 2003-05-23 | 2020-02-25 | Ip Reservoir, Llc | System and method for low latency multi-functional pipeline with correlation logic and selectively activated/deactivated pipelined data processing engines |
| US7602785B2 (en) | 2004-02-09 | 2009-10-13 | Washington University | Method and system for performing longest prefix matching for network address lookup using bloom filters |
| EP1859378A2 (en) | 2005-03-03 | 2007-11-28 | Washington University | Method and apparatus for performing biosequence similarity searching |
| US7702629B2 (en) * | 2005-12-02 | 2010-04-20 | Exegy Incorporated | Method and device for high performance regular expression pattern matching |
| US7954114B2 (en) | 2006-01-26 | 2011-05-31 | Exegy Incorporated | Firmware socket module for FPGA-based pipeline processing |
| US7636703B2 (en) * | 2006-05-02 | 2009-12-22 | Exegy Incorporated | Method and apparatus for approximate pattern matching |
| US7840482B2 (en) | 2006-06-19 | 2010-11-23 | Exegy Incorporated | Method and system for high speed options pricing |
| US7921046B2 (en) | 2006-06-19 | 2011-04-05 | Exegy Incorporated | High speed processing of financial information using FPGA devices |
| US20080086274A1 (en) * | 2006-08-10 | 2008-04-10 | Chamberlain Roger D | Method and Apparatus for Protein Sequence Alignment Using FPGA Devices |
| US7660793B2 (en) | 2006-11-13 | 2010-02-09 | Exegy Incorporated | Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors |
| US8326819B2 (en) | 2006-11-13 | 2012-12-04 | Exegy Incorporated | Method and system for high performance data metatagging and data indexing using coprocessors |
| US8374986B2 (en) * | 2008-05-15 | 2013-02-12 | Exegy Incorporated | Method and system for accelerated stream processing |
| WO2010077829A1 (en) | 2008-12-15 | 2010-07-08 | Exegy Incorporated | Method and apparatus for high-speed processing of financial market depth data |
| US10037568B2 (en) | 2010-12-09 | 2018-07-31 | Ip Reservoir, Llc | Method and apparatus for managing orders in financial markets |
| US11436672B2 (en) | 2012-03-27 | 2022-09-06 | Exegy Incorporated | Intelligent switch for processing financial market data |
| US9990393B2 (en) | 2012-03-27 | 2018-06-05 | Ip Reservoir, Llc | Intelligent feed switch |
| US10650452B2 (en) | 2012-03-27 | 2020-05-12 | Ip Reservoir, Llc | Offload processing of data packets |
| US10121196B2 (en) | 2012-03-27 | 2018-11-06 | Ip Reservoir, Llc | Offload processing of data packets containing financial market data |
| US10146845B2 (en) | 2012-10-23 | 2018-12-04 | Ip Reservoir, Llc | Method and apparatus for accelerated format translation of data in a delimited data format |
| US10133802B2 (en) | 2012-10-23 | 2018-11-20 | Ip Reservoir, Llc | Method and apparatus for accelerated record layout detection |
| US9633093B2 (en) | 2012-10-23 | 2017-04-25 | Ip Reservoir, Llc | Method and apparatus for accelerated format translation of data in a delimited data format |
| GB2541577A (en) | 2014-04-23 | 2017-02-22 | Ip Reservoir Llc | Method and apparatus for accelerated data translation |
| US10942943B2 (en) | 2015-10-29 | 2021-03-09 | Ip Reservoir, Llc | Dynamic field data translation to support high performance stream data processing |
| WO2018119035A1 (en) * | 2016-12-22 | 2018-06-28 | Ip Reservoir, Llc | Pipelines for hardware-accelerated machine learning |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS504499A (ja) * | 1973-03-13 | 1975-01-17 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3126523A (en) * | 1958-05-05 | 1964-03-24 | File search data selector | |
| US3350694A (en) * | 1964-07-27 | 1967-10-31 | Ibm | Data storage system |
| US3408631A (en) * | 1966-03-28 | 1968-10-29 | Ibm | Record search system |
| BE756420A (fr) * | 1969-11-10 | 1971-03-01 | Ibm | Dispositif de transfert d'enregistrements |
| US3623018A (en) * | 1969-11-12 | 1971-11-23 | Ibm | Mechanism for searching for selected records in random access storage devices of a data processing system |
| US3729712A (en) * | 1971-02-26 | 1973-04-24 | Eastman Kodak Co | Information storage and retrieval system |
| US3848235A (en) * | 1973-10-24 | 1974-11-12 | Ibm | Scan and read control apparatus for a disk storage drive in a computer system |
| IT1032675B (it) * | 1975-04-16 | 1979-06-20 | C Olivetti Ec Spa Ing | Dispositivo per la ricerca di informazioni registrate sun un supporto di registratione ad accesso semicasuale |
| US4038642A (en) * | 1976-04-30 | 1977-07-26 | International Business Machines Corporation | Input/output interface logic for concurrent operations |
| US4246637A (en) * | 1978-06-26 | 1981-01-20 | International Business Machines Corporation | Data processor input/output controller |
-
1982
- 1982-07-30 US US06/404,200 patent/US4464718A/en not_active Expired - Lifetime
-
1983
- 1983-05-19 DE DE8383104964T patent/DE3381542D1/de not_active Expired - Lifetime
- 1983-05-19 EP EP83104964A patent/EP0100405B1/en not_active Expired - Lifetime
- 1983-07-08 JP JP58123535A patent/JPS5924356A/ja active Granted
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS504499A (ja) * | 1973-03-13 | 1975-01-17 |
Also Published As
| Publication number | Publication date |
|---|---|
| US4464718A (en) | 1984-08-07 |
| JPH0410649B2 (ja) | 1992-02-26 |
| EP0100405B1 (en) | 1990-05-09 |
| DE3381542D1 (de) | 1990-06-13 |
| EP0100405A2 (en) | 1984-02-15 |
| EP0100405A3 (en) | 1987-03-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4464718A (en) | Associative file processing method and apparatus | |
| JP2851665B2 (ja) | データ圧縮システム | |
| US3848235A (en) | Scan and read control apparatus for a disk storage drive in a computer system | |
| US5111385A (en) | Parallel-mode data transfer apparatus using sector memories | |
| US5280600A (en) | Storage of compressed data with algorithm | |
| US5598388A (en) | Storing plural data records on tape in an entity with an index entry common to those records | |
| JP3026962B2 (ja) | 語列圧縮回路 | |
| US4130866A (en) | Data processor having a circuit structure suitable for fabrication in LSI form | |
| JPH0245271B2 (ja) | ||
| JPS6012182Y2 (ja) | 高速情報処理装置 | |
| EP0036483B1 (en) | Information transfer between a main storage and a cyclic bulk memory in a data processing system | |
| US3588840A (en) | Method of block recording data on a magnetic tape | |
| JP4044586B2 (ja) | 最大ビットスライスを用いてビットストリングにブール演算を施すための方法とシステム | |
| EP0166577A2 (en) | Information sorting and storage apparatus and method | |
| JPH0786875B2 (ja) | ベクトル処理装置 | |
| JPS5936356B2 (ja) | 連合メモリ | |
| US5267097A (en) | Information transfer control system having rotary storage unit which uses a pseudo address mark | |
| JPS62137799A (ja) | 内容アドレス可能メモリの方法とシステム | |
| US7051183B2 (en) | Circuit for recording digital waveform data and method of doing the same | |
| CA2239157C (en) | Method and system for performing a boolean operation on bit strings using a maximal bit slice | |
| JPH0475551B2 (ja) | ||
| JPH0642248B2 (ja) | 情報検索装置 | |
| JPS61162898A (ja) | 連想メモリ装置 | |
| JPH0752451B2 (ja) | 情報検索装置 | |
| JPS61103234A (ja) | デイスク制御装置 |