JPS6349986A - Data processing system and method - Google Patents

Data processing system and method

Info

Publication number
JPS6349986A
JPS6349986A JP61193865A JP19386586A JPS6349986A JP S6349986 A JPS6349986 A JP S6349986A JP 61193865 A JP61193865 A JP 61193865A JP 19386586 A JP19386586 A JP 19386586A JP S6349986 A JPS6349986 A JP S6349986A
Authority
JP
Japan
Prior art keywords
data
data items
data item
item
items
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
Application number
JP61193865A
Other languages
Japanese (ja)
Other versions
JP2656474B2 (en
Inventor
スコット ビー ガサリー
ポール エス バース
ディヴィッド アール バーストウ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Schlumberger Overseas SA
Original Assignee
Schlumberger Overseas SA
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 Schlumberger Overseas SA filed Critical Schlumberger Overseas SA
Priority to JP19386586A priority Critical patent/JP2656474B2/en
Publication of JPS6349986A publication Critical patent/JPS6349986A/en
Application granted granted Critical
Publication of JP2656474B2 publication Critical patent/JP2656474B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Abstract] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、データ処理システム及び方法に係り、特に、
掘削孔を通した地層を調査するためのロギング(記録取
り)作業中に得たデータを処理するシステム及び方法に
係るが、これに限定されるものではない。
DETAILED DESCRIPTION OF THE INVENTION Field of the Invention The present invention relates to data processing systems and methods, and more particularly, to
The present invention relates to, but is not limited to, a system and method for processing data obtained during a logging operation for investigating geological formations through a borehole.

従来の技術 掘削孔によるロギング作業は、炭化水素やその他の貴重
な原料の地下資源を発見及び開発する上で重要な工程で
ある。典型的には、掘削孔をあけた後に、細長いロギン
グ器具即ちゾンデを掘削孔の底まで降ろし、電気導線を
含む外装ケーブルを介して地表の装置とゾンデとの間で
電力や信号の伝送を行なえるようにする。次いで、ケー
ブルを巻き上げることによって掘削孔に沿って上方にゾ
ンデを引き上げ、ゾンデ内のセンサを使用して、掘削孔
が通された地層の電気的パラメータ、音響パラメータ及
び/又は核パラメータの測定を行なう。測定値はケーブ
ルを経て上方に送られ、地表の装置に記録される。これ
らの測定値をロギング作業中の掘削孔の場所か或いは後
で離れた場所で分析及び解読することにより、炭化水素
やその他の原料の存在及び生産性に関する情報を得るこ
とができる。
BACKGROUND OF THE INVENTION Traditional Techniques Borehole logging operations are an important step in discovering and developing underground resources of hydrocarbons and other valuable raw materials. Typically, after a borehole is drilled, an elongated logging instrument, or sonde, is lowered to the bottom of the borehole and electrical power and signals are transmitted between surface equipment and the sonde via armored cables containing electrical conductors. so that The sonde is then pulled upward along the borehole by hoisting the cable, and sensors within the sonde are used to measure electrical, acoustic and/or nuclear parameters of the formation through which the borehole has been passed. . Measurements are sent upwards via cables and recorded on devices on the surface. Analysis and interpretation of these measurements at the borehole site during the logging operation or later at a remote location can provide information regarding the presence and productivity of hydrocarbons and other feedstocks.

炭化水素の資源は使い尽くされているので、商業的には
益々抽出困難な資源を開発することが迫られている。従
って、このような資源の調査に使用されるロギング器具
は次第に複雑で且つ精巧になってきており、現在では、
掘削孔の場所にある地上装置にコンピュータを設けてゾ
ンデの動作を監視及び制御すると共にゾンデによって得
られた測定値を収集及び分析することが一般的となって
いる。このようなコンピュータは、典型的に、タイミン
グ及び他の制御信号をエンコードしてゾンデに送って測
定サイクルを開始させ、ゾンデからの信号を受信してこ
れらをデコードし測定及びゾンデの動作に関するデータ
を取り出し、データを分析してゾンデの動作を監視する
と共に制御信号を発生してゾンデに送り掘削孔及び地層
の条件に基づいてゾンデの動作を最適化し、掘削孔にお
けるゾンデの深さを監視し、データを処理して所要の測
定値を得、測定値を処理して当該地層パラメータの値を
導出し、そしてゾンデの選択された作動パラメータ、測
定値及び地層パラメータを表わす実時間表示を形成する
といった種々の機能を実行する。このような色々な多数
の機能によってコンピュータシステムには相当な負担が
か\ることになる。許容できるロギング速度を得るに充
分な程迅速に且つ正確に全ての必要なタスクを実行する
ようにコンピュータシステムを実施することは、非常に
困難で然も時間がか\ることか分かっている。
As hydrocarbon resources are being depleted, commercial efforts are being made to exploit increasingly difficult-to-extract resources. Accordingly, the logging instruments used to investigate such resources have become increasingly complex and sophisticated;
It is common practice to provide a computer on ground equipment at the location of the borehole to monitor and control the operation of the sonde and to collect and analyze measurements obtained by the sonde. Such computers typically encode and send timing and other control signals to the sonde to initiate measurement cycles, and receive and decode signals from the sonde to provide data regarding measurements and sonde operation. retrieve and analyze the data to monitor the sonde's operation, generate and send control signals to the sonde to optimize the sonde's operation based on the conditions of the borehole and formation, and monitor the depth of the sonde in the borehole; processing the data to obtain the required measurements, processing the measurements to derive a value for the formation parameter, and forming a real-time display representing the selected operating parameters of the sonde, the measurements, and the formation parameter. Perform various functions. These various functions place a considerable burden on the computer system. It has proven very difficult and time consuming to implement a computer system to perform all necessary tasks quickly and accurately enough to obtain acceptable logging speeds.

上記のデータ収集及び制御の必要性は、別の環境、例え
ば、航空電子工学や航空宇宙の分野でも見かけるもので
ある。
The data collection and control needs described above are also found in other environments, such as avionics and aerospace.

発明が解決しようとする問題点 ここで特に問題となることは、コンピュータがその処理
の時間及び時間巾に本質的に拘りのないデータ処理機能
を果たさねばならないと共に。
Problems to be Solved by the Invention A particular problem here is that computers must perform data processing functions that are essentially independent of processing time and duration.

処理の時間及び時間巾によって影響されるような処理制
御機能も果たさねばならないことである。
Process control functions, which are influenced by the time and duration of the process, must also be performed.

従って1例えば、ゾンデから得たデータをフーリエ変換
によって処理することは、時間に拘りないタスクであり
、処理の時間及び時間巾に拘りなく常に同じ組のデータ
値から変換出力としての同じ結果が得られる。これに対
し、ゾンデからのデータの収集は1時間に甚づくもので
あり、一連の受イaデータ項目の最後のものを調べるこ
とによって見い出す実際の値(これは、ゾンデに送るべ
き次の制御信号に影響する)は、データ項目が掘削孔を
上方に送られる速度と、ゾンデからの一連のデータ項目
が検査される速度とに基づくものである。
Therefore, for example, processing data obtained from a sonde using a Fourier transform is a time-independent task, and the same result as the transform output is always obtained from the same set of data values, regardless of the time and duration of the processing. It will be done. In contrast, the collection of data from the sonde takes an hour, and the actual value found by examining the last of the series of received data items (this is the next control to send to the sonde). (affecting the signal) is based on the rate at which data items are sent up the borehole and the rate at which successive data items from the sonde are examined.

掘削孔に沿って上下される装置の処理速度に変化がある
と、結果に影響を及ぼすことになる。更に、掘削孔を上
方に信号送信する速度は、典型的に、ゾンデの特性に主
として基づくものであり、従って、地表での各データ項
目の受信時間を地表のコンピュータ装置によって制御す
ることはできない。
Variations in the throughput speed of the equipment being raised and lowered along the borehole will affect the results. Furthermore, the rate at which signals are transmitted up the borehole is typically based primarily on the characteristics of the sonde, and therefore the reception time of each data item at the surface cannot be controlled by surface computer equipment.

同様に、ゾンデの特性としては、最適な動作を確保する
に充分な速度で掘削孔に沿って下方にコマンドを送るこ
とが要求される。条件の変化に応じてゾンデの動作を敏
速に変えるためには、データのロスや欠陥を回避するよ
うに、時間に拘りない動作がこれと調時して生じる時間
に基づく機能を妨げないようにしなければならない。又
、同様に。
Similarly, the characteristics of the sonde require that it be commanded down the borehole at sufficient speed to ensure optimal operation. In order to quickly change the sonde's behavior in response to changing conditions, time-independent actions should not interfere with co-occurring time-based functions to avoid data loss or defects. There must be. Also, similarly.

時間に基づく機能が時間に拘りのない処理にエラーを招
くことがないようにすることも重要である。
It is also important to ensure that time-based functions do not introduce errors into time-insensitive processing.

これらの特性は、ハードウェアのシステム変更(例えば
、プロセッサのクロック速度の変更)やソフトウェアの
システム変更(例えば、プログラムモジュールの追加)
に拘りなく確保しなければならない。
These characteristics may be affected by system changes in hardware (e.g., changing the clock speed of a processor) or system changes in software (e.g., adding a program module).
must be ensured regardless of the

多数の機能の実行を整合するために割込処理のような技
術が知られている。然し乍ら、これらの技術は、充分な
作動速度を確保すると共にランダムアクセスメモリのよ
うなプロセッサリソースの使用において競合を回避する
ために、非常に慎重に適用しなければならない。これは
、掘削孔による近代的なロギング作業の場合に特に云え
ることで、進歩した測定技術によりゾンデを使用して大
量のデータが発生されるが、ゾンデには正確な制御が要
求されると共に、ロギング作業をできるだけ迅速に完了
するという探索需要からコストの高いものとなる。従っ
て、このような環境で動作する信頼性の高い効率の良い
且つ効果的なデータ処理システムを提供することは、非
常に困芝で、然も、経費のかNるものとなる。
Techniques such as interrupt handling are known for coordinating the execution of multiple functions. However, these techniques must be applied very carefully to ensure sufficient operating speed and to avoid contention in the use of processor resources such as random access memory. This is especially true for modern borehole logging operations, where advanced measurement techniques generate large amounts of data using sondes, which require precise control and , is expensive due to search demands to complete logging tasks as quickly as possible. Therefore, providing a reliable, efficient, and effective data processing system that operates in such an environment is extremely difficult and costly.

1つのプロセッサを時分割動作させるか又は多数のプロ
セッサを並列に作動させることにより多数のタスクを同
時に実行すべき場合には問題が更に重大なものとなる。
The problem becomes even more serious when multiple tasks are to be performed simultaneously, either by time-sharing a processor or by operating multiple processors in parallel.

コンピュータによって実行される機能を細分化したり多
プロセッサシステムの動作を整合したりするための種々
の手段が知られている。例えば。
Various means are known for subdividing the functions performed by a computer and for coordinating the operation of multiprocessor systems. for example.

インフォメーション・プロセッシング77、インターナ
ショナル・フェデレーション・オン・インフォメーショ
ン・プロセッシング・ソサエティ(Informati
on Processing 77、 Interna
tional Federation of Info
ra+ation Processing 5ocie
tias)(1977年)第993−998頁に掲載さ
れたジー・カーノ(G、Kahn)氏及びデー・ビー・
マツクイーン(D、B、MacQueen)氏の「並列
処理のコル−チン及びネットワーク(Coroutin
es and networksof paralle
l process)Jと題する論文には、同時に実行
でき且つ「チャンネル」を介して互いに連絡し合うよう
な多数のプロセスを行なうシステムが開示されている。
Information Processing 77, International Federation on Information Processing Society (Informati
on Processing 77, Interna
tional Federation of Info
ra+ation Processing 5ocie
G. Kahn and D.B. Tias (1977), pp. 993-998.
MacQueen (D, B, MacQueen) ``Coroutin and network of parallel processing''
es and networks of parallel
The paper entitled I process) J discloses a system for performing multiple processes that can be executed simultaneously and communicate with each other via "channels."

これらのチャンネルは、上記プロセスから一方向のみに
情報を搬送する先入れ先出しバッファとして働き、デー
タを要求するプロセスへデータを発生するゆデータ項目
を要求するプロセスは、一連の当該項目を発生するプロ
セスにこれを接続するチャンネルをアクセスすることが
でき、チャンネルに記憶されたシーケンスで次に続く項
目を受け取る。このようなシステムは、いわゆるデータ
流アーキテクチャの一例である。
These channels act as first-in, first-out buffers that carry information in only one direction from the process that generates the data to the process that requests the data. You can access the channel you connect to and receive the next following item in the sequence stored in the channel. Such a system is an example of a so-called data flow architecture.

別の形式のデータ流システムが、1976年のプロシー
ディングズ・オン・ザ・1976インターナシヨナル・
コンフェレンス・オン・パラレル・プロセッシング(P
roceedings of the Interna
tional Conference on para
llel Processing)の第100−105
頁に掲載されたデー・ピー・ミスナス(D、P、Mis
unas)氏の「データ流プロセッサの性能分析(Pe
rformance analysis of a d
ata−flow processor)Jと題する論
文及びバイト、マクグローヒル(Byte、 McGr
aw−Hill)第10巻、第5号(1985年5月)
の第201−214頁に掲載されたダブリュー・ジー・
ペースマン(υ、G。
Another type of data flow system was introduced in the 1976 Proceedings on the 1976 International
Conference on Parallel Processing (P
roceedings of the Interna
tional Conference on para
100-105 of llel Processing)
D, P, Misnath (D, P, Misnath) published on the page
``Performance analysis of data flow processors (Pe
rformance analysis of ad
ATA-Flow Processor) J and Byte, McGraw-Hill.
aw-Hill) Volume 10, No. 5 (May 1985)
W.G. published on pages 201-214 of
Paceman (υ, G.

Paseman)による「データ流の実際の場合への適
用(Applying data flow in t
he real tiorld)j と題する論文に記
載されている。このようなシステムは、一定サイズのデ
ータパケットによってプロセスとプロセスとの間を連絡
し、その機能を実行することが必要とされる全てのデー
タ項目が完全に得られるまでプロセスは実行されない。
``Applying data flow in t
It is described in a paper entitled he real tiorld)j. Such systems communicate between processes by data packets of fixed size, and a process does not execute until all data items required to perform its function are completely obtained.

必要な全てのデータ項目が得られると、プロセスの実行
が開始され、このときプロセスを実行するかどうか又ど
の程度まで実行するかについての制御は必要とされない
。同様のデータ流システムが、コーニッシュ(Corn
ish)氏等の米国特許第4,197゜589号に開示
されており、同時タスク及び命令プロセッサがギリラン
ド(Gilliland)氏等の米国特許第4,229
,790号に開示されている。
Once all required data items are obtained, execution of the process begins, with no control required as to whether or to what extent the process is executed. A similar data flow system is available at Cornish.
ish et al., U.S. Pat. No. 4,197.589; a concurrent task and instruction processor is disclosed in U.S. Pat.
, No. 790.

問題点を解決するための手段 本発明の目的は、時間に拘りない動作と時間に基づく動
作を容易に一緒に実行するようなデータ処理システム及
び方法を提供することである。
SUMMARY OF THE INVENTION It is an object of the present invention to provide a data processing system and method that easily performs time-independent and time-based operations together.

本発明の別の目的は、複数の同時実行プロセスによりデ
ータの処理を容易にするようなシステム及び方法を提供
することである。
Another object of the present invention is to provide such a system and method that facilitates processing of data by multiple concurrent processes.

本発明の更に別の目的は、複数のデータプロセッサを用
いてデータを処理するシステム及び方法を提供すること
である。
Yet another object of the present invention is to provide a system and method for processing data using multiple data processors.

本発明の1つの特徴によれば、逐次に発生する処理すべ
きデータ項目を受け取る入力手段と。
According to one feature of the invention, input means for receiving sequentially occurring data items to be processed.

複数のプロセスを同時に実行して更に別の逐次に発生す
るデータ項目を作成するプロセッサ手段と、各データ項
目のソース及びその同じソースから受け取った互いに他
の項目に対する逐次位置に基づいてデータ項目を各々の
独特のインデックス値と関連させる手段と、上記データ
項目を記憶するデータ記憶手段と、上記記憶手段からの
選択されたデータ項目であって、プロセスの実行中に決
定された関連インデックス値に基づいて選択されたデー
タ項目をプロセスの実行に用いるため上記プロセッサ手
段へ供給する手段と、上記プロセスの実行から得たデー
タ項目を供給する出力手段とを具備するデータ処理シス
テムが提供される。
processor means for simultaneously executing a plurality of processes to produce further sequentially occurring data items, each data item based on a source of each data item and a sequential position relative to each other received from the same source; means for associating a selected data item from said storage means with a unique index value determined during execution of the process; and data storage means for storing said data item. A data processing system is provided, comprising means for supplying selected data items to said processor means for use in execution of a process, and output means for supplying data items resulting from execution of said process.

本発明の別の特徴によれば、逐次に発生する処理すべき
データ項目を受け取る入力手段と、複数のプロセスを同
時に実行して更に別の逐次に発生するデータ項目を作成
するプロセッサ手段と、各データ項目のソース及びその
同じソースから受け取った互いに他の項目に対する逐次
位置に基づいて上記受け取ったデータ項目及び上記更に
別のデータ項目を各々の独特のインデックス値と関連さ
せる手段と、上記データ項目を記憶するデータ記憶手段
と、上記記憶手段からの選択されたデータ項目をプロセ
スの実行に用いるため上記プロセッサ手段へ供給する手
段とを具備し、上記データ項目はそのプロセスの実行中
に決定された関連インデックス値に基づいて選択される
ものであり、プロセス間でのデータ項目の全てのやり取
りは、上記供給手段を介して行なわれ、更に、上記プロ
セスの実行から得た選択されたデータ項目を供給する出
力手段を具備し、このデータ項目は、その関連インデッ
クス値に基づいて選択されるデータ処理システムが提供
される。
According to another feature of the invention, input means for receiving sequentially occurring data items to be processed; processor means for simultaneously executing a plurality of processes to produce further sequentially occurring data items; means for associating the received data item and the further data item with each unique index value based on the data item's source and its sequential position relative to each other received from the same source; and means for providing selected data items from said storage means to said processor means for use in the execution of a process, said data items having an association determined during execution of said process. The data item is selected based on the index value, and all exchanges of data items between the processes are performed through the supply means, and further the selected data item obtained from the execution of the process is supplied. A data processing system is provided, comprising output means, wherein the data item is selected based on its associated index value.

本発明の更に別の特徴によれば、逐次に発生する処理す
べきデータ項目を受け取り、複数のプロセスを同時に実
行して更に別の逐次に発生するデータ項目を作成し、各
データ項目のソース及びその同じソースから受け取った
互いに他の項目に対する逐次位置に基づいてデータ項目
を各々の独特のインデックス値と関連させ、上記データ
項目を記憶し、そして選択された記憶データ項目であっ
て、そのプロセスの実行中に決定された関連インデック
ス値に基づいて選択されたデータ項目をプロセスの実行
に用いるために供給することより成るデータ処理方法が
提供される。
According to still further features of the invention, receiving sequentially occurring data items to be processed, executing multiple processes simultaneously to create further sequentially occurring data items, and determining the source and source of each data item. associating the data items with each unique index value based on their sequential positions relative to each other received from the same source, storing said data items, and storing the selected stored data items in the process. A data processing method is provided comprising providing selected data items for use in executing a process based on associated index values determined during execution.

本発明の更に別の特徴によれば、逐次に発生する処理す
べきデータ項目を受け取り、複数のプロセスを同時に実
行して更に別の逐次に発生するデータ項目を作成し、各
データ項目のソース及びその同じソースから受け取った
互いに他の項目に対する逐次位置に基づいて上記受け取
ったデータ項目及び上記更に別のデータ項目を各々の独
特のインデックス値と関連させ、上記データ項目を記憶
し、選択された記憶データ項目をプロセスの実行に用い
るために供給し、上記データ項目はそのプロセスの実行
中に決定された関連インデックス値に基づいて選択され
、プロセス間でのデータ項目の全てのやり取りをこのよ
うにして行ない、更に、上記プロセスの実行から得られ
た選択されたデータ項目を上記データ処理の出力として
供給し、上記データ項目は関連インデックス値に基づい
て選択するデータ処理方法が提供される。
According to still further features of the invention, receiving sequentially occurring data items to be processed, executing multiple processes simultaneously to create further sequentially occurring data items, and determining the source and source of each data item. associating said received data item and said further data item with each unique index value based on their sequential positions relative to each other received from the same source, storing said data item, and storing said data item in selected storage; providing a data item for use in the execution of a process, said data item being selected based on an associated index value determined during the execution of that process, and in this way all exchanges of data items between processes. A data processing method is provided, further providing selected data items resulting from execution of the process as output of the data processing, the data items being selected based on associated index values.

実施例 本発明の更に別の目的及び特徴は、添付図面を参照した
以下の詳細な説明より明らかとなろう。
Further objects and features of the present invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings.

本発明によるデータ処理システム及び方法は。A data processing system and method according to the present invention.

特定の形式のデータ処理に限定されるものではない。然
し乍ら、これらは、測定作業から得たデータを演算処理
して更に別の情報を導出するような時間に拘りない機能
と、測定装置の実時間制御のような時間に基づく機能と
の両方を実施しなければならないようなプロセスの同時
実行に効果的に用いることができる。これら両方の種類
の機能を含む一例は、第1図に概略的に示された掘削孔
によるロギング器具の動作である。
It is not limited to any particular type of data processing. However, they perform both time-independent functions, such as processing data obtained from measurement operations to derive further information, and time-based functions, such as real-time control of measuring equipment. It can be effectively used for simultaneous execution of processes that must be executed simultaneously. An example that includes both of these types of functionality is the operation of a borehole logging instrument as schematically illustrated in FIG.

第1図を説明すれば、細長いロギング器具即ちゾンデ1
0は、地層16を貫通している掘削孔14において外装
条導線ケーブル12に懸架される。ゾンデ10は、地表
装置24の一部分を形成するウィンチにより滑車20及
び深さゲージ22を介してケーブル12を紡めそして(
ロギング測定を実際に行ないながら)ケーブルを巻き上
げることにより掘削孔14内を上下に移動される。深さ
ゲージ22は、滑車20を通るケーブル12の変位を測
定し、ひいては、掘削孔14におけるゾンデ10の深さ
を測定する。
To explain FIG. 1, an elongated logging device or sonde 1
0 is suspended from an armored conductor cable 12 in a borehole 14 penetrating a geological formation 16. The sonde 10 spins the cable 12 through a pulley 20 and a depth gauge 22 by a winch forming part of the surface equipment 24 and (
The cable is moved up and down within the borehole 14 by hoisting the cable (while actually performing logging measurements). Depth gauge 22 measures the displacement of cable 12 through pulley 20 and thus the depth of sonde 10 in borehole 14 .

器具10は、典型的に、電気、音響又は核技術により地
層16のパラメータを測定するためのトランスジューサ
を1つ以上備えている。これらのトランスジューサは、
必要なパラメータに関連した電気信号を発生し、これら
の信号はゾンデ10内の処理及びインターフェイス回路
によって適当に調整され、ケーブル123を経て上方に
地表装置24まで送られる。装置24は、データプロセ
ッサ26を備えていて、典型的には、これらの信号を受
信し、デコードし、増幅しそしてチャート及び/又は磁
気テープレコーダに深さゲージ22によって発生される
深さ信号の関数として記録する。更に、装置24は、こ
れらの信号によって表わされたデータを処理し、必要な
地層パラメータの指示(これも記録される)を発生する
。ゾンデ10からのこれら及び他の信号を更に処理する
ことにより、地表装置24は、ゾンデ10の動作を監視
して、例えば、ゾンデ10の回路部品の動作を同期した
り増幅器の利得を変更したりするための信号を発生し、
ケーブル12を経てゾンデ10を制御するように下方に
送信することができる。
Instrument 10 typically includes one or more transducers for measuring parameters of formation 16 by electrical, acoustic or nuclear techniques. These transducers are
Electrical signals related to the required parameters are generated, these signals are suitably conditioned by processing and interface circuits within the sonde 10, and transmitted via cable 123 upwards to the surface equipment 24. Device 24 includes a data processor 26 that typically receives, decodes, amplifies and transmits the depth signals generated by depth gauge 22 to a chart and/or magnetic tape recorder. Record as a function. Additionally, device 24 processes the data represented by these signals and generates indications of the necessary formation parameters (which are also recorded). By further processing these and other signals from the sonde 10, the surface device 24 can monitor the operation of the sonde 10 to, for example, synchronize the operation of the circuitry of the sonde 10 or change the gain of an amplifier. generates a signal to
Via the cable 12 it can be transmitted downward to control the sonde 10.

ゾンデ10及びこのゾンデ1oと地表装置24との間で
信号を通信する装置の構造及び動作の詳細は、本発明の
部分を構成するものではなく。
Details of the construction and operation of the sonde 10 and the equipment for communicating signals between the sonde 1o and the surface device 24 do not form part of the present invention.

当業者に明らかであり、ここで説明する必要はないと考
えられる。同様に、ゾンデ10から受け取ったデータを
処理して地層パラメータの値を導出したりゾンデ10に
送るべき制御信号を導出したりする特定のアルゴリズム
も本発明の部分を構成せず、従って、これらについては
説明しない。
It is believed to be obvious to those skilled in the art and need not be explained here. Similarly, specific algorithms for processing data received from the sonde 10 to derive values for formation parameters or for deriving control signals to be sent to the sonde 10 do not form part of the invention and are therefore does not explain.

データプロセッサ26は、2つの異なった種類の処理を
実行する。第1の種類は、それが実行される時間に本質
的に拘りないものである。従って、ゾンデ10から受け
取ったデータから必要な情報パラメータの値を導出する
場合に、この導出をいつ行なうかに拘りなく常に同じ結
果が生じなげわ1げ4・I)ない。
Data processor 26 performs two different types of processing. The first type is essentially independent of the time at which it is executed. Therefore, when deriving the values of the necessary information parameters from the data received from the sonde 10, the same result does not always occur regardless of when this derivation is performed.

第2の種類の処理は、時間に基づくものである。従って
、ゾンデ10により掘削孔を上方に送られるデータ項目
がケーブル12に現われるのを感知し、このデータを確
実に捕らえて記録することは、プロセッサ26がケーブ
ル12を適時に監視することに依存する。同様に、掘削
孔に沿ってゾンデ10へと下方に送られるコマンド信号
の発生は、ゾンデ10を適切に作動させるに充分であっ
て且つ条件の変化に充分に応じられるような速度で行な
わねばならない。
The second type of processing is time-based. Therefore, sensing the appearance of data items on cable 12 to be transmitted up the borehole by sonde 10 and ensuring that this data is captured and recorded relies on processor 26 monitoring cable 12 in a timely manner. . Similarly, the generation of command signals sent down the borehole to the sonde 10 must occur at a rate sufficient to properly operate the sonde 10 and sufficiently responsive to changing conditions. .

これら2つの形式の処理は互いに競合しがちである。パ
ラメータ値を正確に導出するには相当に長い処理時間が
か\す、コマンド信号の発生に遅延や不正確さを招いた
り及び/又は掘削孔を上方に送られるデータを検出及び
記録し損なったりすることがある。同様に、データの受
信及びコマンド信号の発生は、更に別の計算を必要とす
るようなデータ値を変更することにより、受信データの
評価を妨げることがある。更に、プロゲラ11が1Fし
7く(幾<r= していろ■7ても、IPなった速度で
住U1する別の種類のコンピュータシステムへ移行する
際や、例えば、1つ以上の新たなプログラムモジュール
を追加するように変更した後には、正しく機能し続ける
ことができない。このようなタスクを行なうと共にこれ
らの問題を軽減するように容易に効果的及び適切にプロ
グラムできるデータプロセッサを操作するシステム及び
方法を、第2図ないし第15図を参照して説明する。
These two types of processing tend to conflict with each other. Accurately deriving parameter values requires significant processing time, can lead to delays and inaccuracies in the generation of command signals, and/or can result in failure to detect and record data sent up the borehole. There are things to do. Similarly, receiving data and generating command signals may interfere with evaluation of the received data by changing the data values such that additional calculations are required. In addition, even if Progera 11 continues to operate at the same speed as the IP, when migrating to another type of computer system, e.g. when using one or more new A system for operating a data processor that cannot continue to function properly after being modified to add program modules.A system for operating a data processor that can be easily and effectively and appropriately programmed to perform such tasks and alleviate these problems. and the method will be explained with reference to FIGS. 2 to 15.

これらの図面において、データ処理は、便宜上、並列に
作動する多数の中央処理ユニット(CPU)によって行
なわれるものとして示す。各CPUは、全処理動作にお
いて1つのタスクのみを専用に行なうものとする。然し
乍ら、本発明は、CPUが1つ以上設けられていて、そ
れらのリソースが、専用のCPUによって実行されるタ
スクに各々対応する多数の色々なプロセス間で共通に使
用されるような場合にも等しく適用できることを理解さ
れたい、同時プロセスという用語は、以下、これら構成
のいずれかによって実行される2つ以上のプロセスを指
すものとする。このようなプロセスは、それ自体非常に
複雑であり、数百の命令を伴う。2つ以上のCPUがあ
る場合、これらは、比較的低い帯域巾のデータリンクに
よって接続された分配処理ユニットであってもよいし、
或いは比較的高い帯域巾のリンク(例えば、同じ主メモ
リを共有する)によって接続されたマルチ処理ユニット
であってもよい。
In these figures, data processing is shown for convenience as being performed by multiple central processing units (CPUs) operating in parallel. It is assumed that each CPU is dedicated to only one task in all processing operations. However, the present invention also applies to cases where one or more CPUs are provided and their resources are commonly used among a number of different processes, each corresponding to a task performed by a dedicated CPU. The term concurrent processes, which should be understood to be equally applicable, shall hereinafter refer to two or more processes executed by any of these configurations. Such a process is itself quite complex, involving hundreds of instructions. If there are two or more CPUs, these may be distributed processing units connected by relatively low bandwidth data links;
Alternatively, it may be multiple processing units connected by relatively high bandwidth links (e.g., sharing the same main memory).

同様に、CPUによって処理を行なう前後のデータの記
憶は、明瞭化のため、多数の別々の記憶装置間で分割さ
れるものとして示す。然し乍ら、1つの大型の記憶装置
を使用し、種々のデータ記憶要求に対してその容量を適
当に分割することもできる。プロセッサ及びメモリリソ
ースをこのように共有するための技術は公知であり、こ
こでは詳細に説明しない。
Similarly, the storage of data before and after processing by the CPU is shown as being divided among a number of separate storage devices for clarity. However, it is also possible to use one large storage device and divide its capacity appropriately for different data storage needs. Techniques for sharing processor and memory resources in this manner are well known and will not be described in detail here.

例えば、第2図及び第3図は、次のような二次方程式の
根(即ち、y=QとするようなXの値)を計算する構成
に関するものである。
For example, FIGS. 2 and 3 relate to a configuration for calculating the roots of the following quadratic equation (ie, the value of X such that y=Q).

y==ax2+bx+c 法則により上記式は、次のようになる。y==ax2+bx+c According to the law, the above formula becomes as follows.

−b+v’(b”−4a c) a 但し、a、b及びCは、係数としての入力である。-b+v'(b"-4a c) a However, a, b, and C are input as coefficients.

CPU、それらの入力及び出力の個数、並びにそれに関
連した記憶装置の構成及び接続は、適宜に示されている
。それらの詳細は、プロセッサを設置しようとする特定
の用途によって変化することが明らかである。
The number of CPUs, their inputs and outputs, and the configuration and connections of their associated storage devices are indicated where appropriate. Obviously, those details will vary depending on the particular application in which the processor is being installed.

第2図を説明すれば、データプロセッサ30は、3つの
CPU32ないし36を有するものとして示されている
。各CPUは、データ項目を1つ以上の入力に受け取り
、処理を行なった後に、データ項目を1つ以上の出力に
供給する。このため、CPUは、良く知られた演算論理
回路、レジスタ及び命令デコード回路を備えている。更
に、各CPUは、その動作を制御する命令のプログラム
を記憶すると共にこれらの命令に従って処理されるデー
タを記憶するためにそれ自体のメモリを有しているもの
と仮定する。これらのCPUは、これらの目的で共通の
メモリリソースを共有できることが明らかである。
Referring to FIG. 2, data processor 30 is shown as having three CPUs 32-36. Each CPU receives data items on one or more inputs, processes them, and then provides the data items on one or more outputs. To this end, the CPU includes well-known arithmetic logic circuits, registers, and instruction decoding circuits. It is further assumed that each CPU has its own memory for storing the program of instructions that control its operation and for storing the data processed in accordance with these instructions. It is clear that these CPUs can share common memory resources for these purposes.

プロセッサ30によって処理されるデータ(係数a、b
及びCの値)は、入力ライン40.42及び44を経て
受け取られ、これらのラインは、記憶装置54ないし6
4を含むデータ記憶部52の入力46.48及び5oに
接続される。記憶装置54.56及び58の各単一人力
66.68及び70は、プロセッサ30への入力データ
を受け取るために入力46.48及び50に接続される
。他の記憶装置60ないし64の各単一人力72.74
及び76は、以下で説明するように、CPU32ないし
36による処理によって得ら九たデータを記憶するのに
用いられる。図示明瞭化のため、記憶装置54ないし6
4への入力ラインは、他の接続と区別する助けとなるよ
うに点線で示されている。
Data processed by processor 30 (coefficients a, b
and the value of C) are received via input lines 40, 42 and 44, which lines are connected to storage devices 54-6
4 is connected to inputs 46, 48 and 5o of data storage 52, including 46, 48 and 5o. Each single input 66,68 and 70 of the storage devices 54,56 and 58 is connected to the inputs 46,48 and 50 for receiving input data to the processor 30. Each single human power of other storage devices 60 to 64 72.74
and 76 are used to store data obtained through processing by the CPUs 32 to 36, as explained below. For clarity of illustration, storage devices 54 to 6
The input line to 4 is shown in dotted lines to help distinguish it from other connections.

データ記憶装置54ないし64は1例えば。Data storage devices 54 to 64 may be one example.

半導体のランダムアクセスメモリを組み込んでもよいし
、磁気ディスクメモリを組み込んでもよいし、或いはそ
の両方を組合せたものを組み込んでもよい。以下で述べ
るように、データ記憶装置は、データが既に書き込まれ
ている位置へ新たなデータ値を書き込むことができなく
てもよい。従って、所与の位置に単一の書き込み動作を
行なうことしかできないようなメモリを組み込むことも
できる。
A semiconductor random access memory, a magnetic disk memory, or a combination of both may be incorporated. As discussed below, a data storage device may not be able to write new data values to locations where data has already been written. Therefore, it is possible to incorporate a memory that is only capable of performing a single write operation at a given location.

このようなメモリの一例がレーザディスク記憶装置であ
り、この場合は、金属のディスク又は金属化プラスチッ
クのディスクの表面に極微ピットの永久的なパターンを
形成してこれを後で読み取るようにレーザビームを用い
てデータが記憶される。
An example of such a memory is a laser disk storage device, in which a laser beam is used to create a permanent pattern of microscopic pits on the surface of a metal or metallized plastic disk for later reading. Data is stored using

このような記憶装置は、例えば、米国、カリフォルニア
州、レドンド・ビーチに所在するOptimemof 
5unnyvaLe、 Ca1ifornia and
 0ptical DiskManufacturin
g Co、(Alcatel Thomsonの1部門
)から入手することができる。レーザディスク記憶装置
は、非常に多量のデータを比較的小さな物理的空間に記
憶できるという効果がある。
Such storage devices are available from, for example, Optimemof, Redondo Beach, California, USA.
5unnyvaLe, California and
0ptical DiskManufacturin
g Co., a division of Alcatel Thomson. Laser disk storage devices have the advantage of being able to store very large amounts of data in a relatively small physical space.

各記憶装置54ないし64は、その各入力66ないし7
6にデータを受け取りそしてこのデータを次々のデータ
項目の流れとして記憶するように構成される。既に受け
取ったデータ項目の後にこの流れの終わりに更に別の各
データ項目が追加される。データ項目の流れの長さは、
原理的には無制限に延ばすことができるが、記憶装置の
有限の物理的記憶容量により、−度に記憶できるデータ
の量に制約が課せられることは明らかである。
Each storage device 54-64 has its respective input 66-7.
6 and is configured to receive data and store this data as a stream of successive data items. Each further data item is added at the end of this stream after the data item already received. The length of the flow of data items is
Although in principle it could be extended indefinitely, it is clear that the finite physical storage capacity of the storage device imposes a constraint on the amount of data that can be stored at any one time.

然し、各々の新たなデータ流は、流れの長さを延ばすも
のとして処理される。
However, each new data stream is treated as increasing the length of the stream.

データ流という用語は、ここでは、他の項目に拘りなく
アクセスされるべき個別の情報エンティティを示すもの
として用いる。従って、用途により、データ項目は、例
えば、単一の2進デジツト(1ビツト)、8ビツトのバ
イト、16ビツト又は32ビツトのワード、整数又は小
数点フォーマットの値を表わす多バイト値、一連のアル
ファベット文字をエンコードする一連のバイト、或いは
、このような値の全アレイである。データ項目自体は、
記憶装置内の別のデータ項目の位置を指すポインタとし
て働く値である。
The term data stream is used herein to refer to a discrete information entity that is to be accessed without regard to other items. Thus, depending on the application, a data item may be, for example, a single binary digit (1 bit), an 8-bit byte, a 16-bit or 32-bit word, a multibyte value representing a value in integer or decimal format, a sequence of alphabets. A sequence of bytes that encodes a character, or a full array of such values. The data item itself is
A value that serves as a pointer to the location of another data item in storage.

データ項目が記憶装置において流れに追加される時には
、その流れ内の位置に基づいて独特のインデックス値が
組み合わされる。各データ項目のインデックス値は、同
じ流れ内のすぐ手前の項目のインデックス値よりも1だ
け大きい。各流れがそれ自身の専用の記憶装置を有して
いる第1図の簡単な場合には、このインデックス値は、
単に記憶装置によって予め受け取られたデータ項目の数
である(第1の項目がインデックス値0であると仮定す
れば)。これらの状態においては、データ項目にそのイ
ンデックス値を指定するのに特殊な作用は要求されない
6更に、記憶装置内の物理的な記憶位置がアドレスOか
らスタートする場合には、データ項目のインデックス値
が記憶装置におけるその位置のアドレスに、直接対応す
る。記憶装置は、次に受け取ったデータ項目を書き込む
べき次の空き記憶位置の指示を維持するだけでよい。
When a data item is added to a stream in storage, it is associated with a unique index value based on its position within the stream. The index value of each data item is one greater than the index value of the immediately preceding item in the same stream. In the simple case of Figure 1, where each stream has its own dedicated storage, this index value is
It is simply the number of data items previously received by the storage device (assuming the first item has index value 0). In these situations, no special action is required to assign a data item its index value.6 Furthermore, if the physical storage location in the storage device starts at address O, then the index value of the data item corresponds directly to the address of that location in storage. The storage device need only maintain an indication of the next free storage location into which to write the next received data item.

データの各流れに個々の記憶装置を専用に割す当てるの
ではなく、データの多数の流れを同じ記憶装置に記憶す
ることもできる。1つの考えられる解決策は、記憶装置
を多数のセグメントに区分化するものとして処理し、各
セグメントを1つの流れに指定することである。このよ
うな場合には、その流れの最初のデータ項目を含む記憶
位置の記録を各流れごとに維持することも必要である。
Rather than dedicating individual storage devices to each stream of data, multiple streams of data can also be stored on the same storage device. One possible solution is to treat the storage as partitioned into a number of segments, with each segment designated to one stream. In such cases, it is also necessary to maintain for each stream a record of the storage location containing the first data item of that stream.

従って、同じ流れにおける他のデータ項目の記憶位置は
、その項目のインデックス値を、最初の項目を含む記憶
位置のアドレスに追加することによって識別することが
できる。或いは又、別々の流れのデータ項目を混合する
こともできる。この場合、各流れに関連した記憶位置の
表を維持することもできるし、或いは、リンクされたリ
ストを用いることもでき、記憶された各データ項目には
、同じ流れにおける次のデータ項目の位置を指すポイン
タが組み合わされる。共有メモリを管理するこれらの技
術は、公知である。
Therefore, the storage location of another data item in the same stream can be identified by adding that item's index value to the address of the storage location containing the first item. Alternatively, data items from separate streams may be mixed. In this case, a table of storage locations associated with each stream could be maintained, or a linked list could be used, where each stored data item contains the location of the next data item in the same stream. The pointers pointing to are combined. These techniques for managing shared memory are known.

記憶装置54ないし64は、既存のデータの上に新たな
データを書き込むことのできるメモリを組み込むことが
できる。もはや必要とされないデータ項目を識別できて
それらの位置を再使用できる場合には、新たなデータ項
目を流れに不定に追加し続けることができるが、いかな
る時にも記憶装置内の項目の量はその容量を決して越え
ないことが明らかである。このような再使用を行なうこ
とのできる1つの考え方は、記憶装置から検索すべきデ
ータ項目の選択を、最も最近検索されたデータ項目より
後で受け取ったデータ項目に限定することである。従っ
て、数値的に増加するインデックス値が記憶装置によっ
て受け取られたデータ項目に指定されると仮定すれば、
検索さるべき項目のインデックス値は、減少することが
できない。当該記憶装置から検索された最後の項目のイ
ンデックス値よりも小さいインデックス値を有するデー
タ項目を含む位置が、再使用できる位置である。この結
果を得るように有限のメモリリソースを管理する技術は
公知であり1例えば、いわゆる「ガービジ・コレクショ
ン(garbage collection)Jである
Storage devices 54-64 may incorporate memory to which new data can be written over existing data. If data items that are no longer needed can be identified and their locations reused, new data items can continue to be added to the stream indefinitely, but the amount of items in storage at any given time is It is clear that the capacity will never be exceeded. One idea by which such reuse can be accomplished is to limit the selection of data items to be retrieved from storage to data items received after the most recently retrieved data item. Therefore, assuming that numerically increasing index values are assigned to data items received by the storage device,
The index value of the item to be searched cannot be decreased. A location that contains a data item with an index value smaller than the index value of the last item retrieved from the storage device is a location that can be reused. Techniques for managing finite memory resources to achieve this result are known, for example the so-called "garbage collection".

新たなデータ項目が、それより前の現在所望されないデ
ータ項目の記憶位置をこのように物理的に再使用する場
合でも、この新たな項目にそれ自体の独特のインデック
ス値が組み合わされ、その前の取り替えられた項目のイ
ンデックス値は再使用されない。又、現存のデータ項目
は変更されない。成るデータ項目の値を別のものと取り
替えることは、それ自体の独特のインデックス値を有す
る新たなデータ項目を書き込みそしてその手前の取って
代わられた項目ではなくてこの新たなデータ項目を使用
することによって行なわれる。
Even if a new data item physically reuses the storage location of a previous, currently undesired data item, this new item is associated with its own unique index value and Index values for replaced items are not reused. Also, existing data items will not be changed. Replacing the value of a data item with another writes a new data item with its own unique index value and uses this new data item rather than the previous superseded item. It is done by

記憶位置が再使用される場合には、依然として記憶され
ている最も前のデータ項目のインデックス値とその物理
的な位置のアドレスとの記録を維持することが必要であ
る。このインデックス値と他のデータ項目の独特なイン
デックス値との差を最も前の項目のアドレスに追加して
上記能の項目のアドレスを導出することができる。
If a storage location is reused, it is necessary to maintain a record of the index value of the earliest data item still stored and the address of its physical location. The difference between this index value and the unique index values of other data items can be added to the address of the previous item to derive the address of the item.

記憶装置52が前記レーザディスク装置のような1回書
き込みのメモリを組み込んでいる場合には、このような
再使用は不可能であり、従って、検索すべきデータ項目
のインデックス値に何等の制約をかける必要がなく、デ
ータ項目の検索に対するインデックス値を任意に増加又
は減少することができる。記憶装置52は最終的には飽
和されるが、その非常に大きな記憶容量により、記憶媒
体を交換又は拡張しなければならなくなるまでに、相当
の期間の有効作動周期をとることができる。
If the storage device 52 incorporates a write-once memory such as the laser disk device, such reuse is not possible, and therefore no restrictions are placed on the index value of the data item to be searched. The index value for searching a data item can be increased or decreased arbitrarily. Although storage device 52 eventually becomes saturated, its very large storage capacity allows for a significant period of useful operating cycles before the storage medium must be replaced or expanded.

各記憶袋@54ないし64は1つ以上の出力を有し、装
置54及び56は、各々、3つの出カフ8.80.82
及び84.86.88を有し、装置58は1つの出力9
oを有し、装置60は2つの出力92及び94を有し、
装置62及び64は、各々、1つの出力96及び98を
有する。このような各出力は、必要な項目のインデック
ス値を参照することにより、関連記憶装置に記憶された
流れにおいていずれかのデータ項目を検索するように構
成される。まだデータ項目を受け取っていないところの
インデックス値をもつデータ項目が要求される場合には
、記憶装置は、そのインデックス値のデータ項目が受け
取られるまで待機し次いで要求に応じてそのデータ項目
を戻すように構成される。記憶位置が再使用される場合
には、データ検索のために記憶位置を識別する方法は、
データ項目を記憶する方法と同じものが使用され、デー
タを検索できるインデックス値の範囲は前記したような
制約を受ける。
Each storage bag @54 to 64 has one or more outputs, and the devices 54 and 56 each have three output cuffs 8.80.82.
and 84.86.88, the device 58 has one output 9
o, the device 60 has two outputs 92 and 94,
Devices 62 and 64 each have one output 96 and 98. Each such output is configured to retrieve any data item in the stream stored in the associated storage by reference to the index value of the required item. If a data item is requested with an index value for which no data item has yet been received, the storage device waits until a data item for that index value is received and then returns the data item on request. It is composed of If the storage location is reused, the method for identifying the storage location for data retrieval is
The same method used to store data items is used, and the range of index values within which data can be retrieved is subject to the constraints described above.

記憶装置54.56及び60の各々は、第2図では、図
示明瞭化のため、入力からも分離された別々の複数の出
力を有するものとして示されている。然し乍ら、例えば
、磁気ディスク記憶装置においては、単一の読み取り/
書き込みヘッドを適当に制御することにより入力及び出
力の機能を実行できることを理解されたい。同様に、半
導体メモリを使用する場合には、既知のやり方で回路を
アドレスすることによってこれらの機能が行なわれる。
Each of the storage devices 54, 56 and 60 is shown in FIG. 2 as having separate outputs that are also separate from the inputs for clarity of illustration. However, for example, in a magnetic disk storage device, a single read/write
It should be appreciated that input and output functions can be performed by appropriately controlling the write head. Similarly, when using semiconductor memories, these functions are performed by addressing the circuits in a known manner.

データプロセッサ30により入力ライン4゜ないし44
を経て受け取られたデータ項目は、各々、記憶装置54
ないし58に記憶される。これら全てのデータ項目(係
数a、b及びC)は、CPU32によって使用されるも
のであり、従って、該CPUの3つの入力100ないし
104は、各々、記憶装置54.56及び58の出力8
2.84及び90に接続されている。CPU32から出
力82へと延びている点線で示した制御ライン106に
より、CPU32は、記憶装置54から検索されて出力
82によって該CPUへ送られるデータ項目(係数Aの
値)のインデックス値を指定することができる。出力8
4及び90へ至る同様の制御ライン108及び110に
より、CPU32は、記憶装置56及び58から検索さ
れる所要のデータ項目(係数す及びCの対応値)を指定
することができる。CPU32は、データ項目の単一の
流れ(ラジカルとして知られている中間結果の値)を発
生するものとして示されており、これは、入カフ2を経
て記憶装置6oへ供給される。
Input lines 4° to 44 by data processor 30
Each data item received via the storage device 54
to 58 are stored. All these data items (coefficients a, b and C) are used by the CPU 32, so that the three inputs 100 to 104 of the CPU are the outputs 8 of the storage devices 54, 56 and 58, respectively.
2.84 and 90. A dotted control line 106 extending from the CPU 32 to the output 82 causes the CPU 32 to specify the index value of the data item (value of coefficient A) retrieved from the storage device 54 and sent to the CPU by the output 82. be able to. Output 8
Similar control lines 108 and 110 to 4 and 90 allow CPU 32 to specify the desired data items (corresponding values of coefficients A and C) to be retrieved from stores 56 and 58. The CPU 32 is shown as generating a single stream of data items (intermediate result values known as radicals) which are supplied via the input cuff 2 to the storage device 6o.

記憶装置60の出力92により、CPU34は、制御ラ
イン112を経て指定されたインデックス値に基づくデ
ータ項目を得ると共に、記憶表[t54及び56からの
データ項目(係数a及びbの対応値)を得ることができ
、これらは、制御ライン114及び116の制御のもと
で出力80及び88によって供給される。CPU34は
、これが′1コ行するプロセスによって得られたデータ
項目を入カフ4を経て記憶装置62へ供給する。これら
のデータ項目は、係数a、b及びCの対応値に対する二
次方程式の1つの根の値である。CPU36も、同様に
、制御ライン118.120及び122を経て指定され
たデータ項目を記憶装置54.56及び60から出カフ
8.86及び94を経て受け取ると共に、得られたデー
タ項目を入カフ6を経て記憶装置64へ供給する。これ
らのデータ項目は、これらの係数値に対する二次方程式
の他方の根の値である。
With the output 92 of the storage device 60, the CPU 34 obtains a data item based on the specified index value via the control line 112, and also obtains the data item (corresponding values of coefficients a and b) from the storage table [t54 and 56]. and these are supplied by outputs 80 and 88 under control of control lines 114 and 116. The CPU 34 supplies the data item obtained by the process performed once through the input cuff 4 to the storage device 62. These data items are the values of one root of the quadratic equation for the corresponding values of coefficients a, b and C. CPU 36 similarly receives data items designated via control lines 118, 120 and 122 from storage devices 54, 56 and 60 via output ports 8, 86 and 94, and receives data items obtained from input ports 6. The data is supplied to the storage device 64 via the. These data items are the values of the other roots of the quadratic equation for these coefficient values.

最後に、記憶装置62及び64のデータ項目は、制御ラ
イン128及び130を経て指定されたインデックス値
に基づいて、出力96及び98によりデータプロセッサ
30の出力ライン124及び126に供給される。
Finally, the data items in storage devices 62 and 64 are provided by outputs 96 and 98 to output lines 124 and 126 of data processor 30 based on the index values specified via control lines 128 and 130.

データ流を検索すべき流れの識別は、記憶装置の構成及
びインデックス値のフォーマットにもよるが、明確に指
定されてもよいしされなくてもよい。従って、第2図の
構成においては、必要とされろ流れがj所出な制御ライ
ン106ないし122.128又は130の物理的な選
択によって固有に識別される。種々の流れの間でメモリ
を共有する場合には、流れの識別をインデックス値にエ
ンコードして、各流れにそれ自体の別々の組のインデッ
クス値を与えることができる。或いは又、各流れに対し
てインデックス値が同様のものであってもよく、データ
項目が要求される時にインデックス値を有するパラメー
タとして流れの識別を与えることができる。
The identification of the data stream to be retrieved may or may not be explicitly specified, depending on the configuration of the storage device and the format of the index value. Thus, in the configuration of FIG. 2, the required flow is uniquely identified by the physical selection of control lines 106 through 122, 128 or 130. When sharing memory between various streams, the stream identification can be encoded into the index values, giving each stream its own separate set of index values. Alternatively, the index value may be similar for each stream, and the identity of the stream may be provided as a parameter with the index value when a data item is requested.

CPU32ないし36の各々によって実行されるプロセ
スは、特にCPU32に関して第3図に要約されている
。CPU34及び36の動作はそれと同様である。
The processes performed by each of CPUs 32-36 are summarized in FIG. 3 with particular reference to CPU 32. The operations of CPUs 34 and 36 are similar.

第3図を説明すれば、CPtT32に供給すべきデータ
項目のインデックス値は、プロセスを最初にスタートす
る時に初期化しなければならない。
Referring to FIG. 3, the index values of the data items to be provided to CPtT 32 must be initialized when the process is first started.

これはステップ132によって表わされている。This is represented by step 132.

次いで、CPU32は、ステップ134において現在の
インデックス値に基づいて記憶装置54から係数aのデ
ータ項目を要求する。ステップ136では、CPU32
がデータ項目が受け取られたかどうかチェックする。も
しそうでなければ、データ項目が受け取られるまで、プ
ロセスがステップ136を経て繰り返される。データ項
目が受け取られた時には、プロセスがステップ138へ
と続き、係数すに対応するデータ項目が記憶装置56か
ら要求され、データ項目が受け取られるまで必要に応じ
てステップ140を繰り返す。要求及び繰返しのこのシ
ーケンスは、ステップ142及び144において第3回
目が行なわれ、係数Cに対応するデ、−夕項目が記憶装
置58から得られる。
CPU 32 then requests the data item of coefficient a from storage 54 based on the current index value at step 134 . In step 136, the CPU 32
checks whether the data item has been received. If not, the process repeats through step 136 until a data item is received. When a data item is received, the process continues to step 138, where the data item corresponding to the coefficient is requested from storage 56, and step 140 is repeated as necessary until the data item is received. This sequence of requests and repetitions is performed a third time in steps 142 and 144, and the data entry corresponding to coefficient C is obtained from storage 58.

3つの全係数のデータ項目が得られた時には、CPU3
2はステップ146へ進み、ここで、次式に基づいてラ
ジカルRの対応値を計算する。
When data items for all three coefficients are obtained, CPU3
2 proceeds to step 146, where the corresponding value of radical R is calculated based on the following equation.

R=v’(b”−4a c) この値は、ステップ148においてデータ項目として記
憶装置6oへ供給され、ここで、記憶装置は、ステップ
134.138及び142において検索されたデータ項
目に対応するインデックス値を受け取る。
R=v'(b''-4a c) This value is provided in step 148 as a data item to the storage device 6o, where the storage device corresponds to the data item retrieved in steps 134, 138 and 142. Receive index value.

CPU32は、ステップ150へと続き、記憶装置54
ないし58からデータ項目を検索する際に指定されるべ
きインデックス値が増加され、次いで、再びステップ1
34へ入り、係数a、 b及びCの次の組に対するシー
ケンスを繰り返す。
The CPU 32 continues to step 150 and stores the storage device 54.
The index value to be specified when retrieving data items from 58 to 58 is increased, and then again step 1
34 and repeat the sequence for the next set of coefficients a, b and C.

CPU34及び36の動作は非常に類似しているが、ス
テップ142で要求されるデータ項目は記憶装置60か
ら得られる。CPU34の場合には、ステップ146で
行なわれる計算が次式に基づくものとなる。
Although the operation of CPUs 34 and 36 is very similar, the data item requested in step 142 is obtained from storage 60. In the case of the CPU 34, the calculation performed in step 146 is based on the following equation.

−b+R a その結果は、ステップ148において、データ項目とし
て記憶装置62へ供給される。CPU36の場合には、
ステップ146で行なわれる計算が次式に基づくものと
なる。
-b+R a The result is provided to storage 62 as a data item in step 148. In the case of CPU36,
The calculation performed in step 146 is based on the following equation.

b−R a その結果は、ステップ148において、データ項目とし
て記憶装置64へ供給される。
b-R a The result is provided to storage 64 as a data item in step 148 .

第2図に示されたように、CPU32ないし36のいず
れかによって実行される各プロセスは、当該プロセスか
らのデータ項目を記憶するように専用に用いられる記憶
装置へデータ項目を供給する。第2図に示された各プロ
セスは、1つの出力しか有していないが、もちろん、1
つのプロセスによって2つ以上の出力を発生することが
でき、この場合には、各出力がそれ自身の専用の記憶装
置を有することになる。各プロセスは、1つ以上の記憶
装置54ないし60からデータ項目を受け取るが、いず
れの1つの記憶装置が2つ以上のプロセスにデータ項目
を供給してもよい。従って、プロセス間で通信する唯一
の手段は、記憶装置54ないし60によるものである。
As shown in FIG. 2, each process executed by any of the CPUs 32-36 provides data items to a storage device dedicated to storing data items from that process. Each process shown in Figure 2 has only one output, but of course
More than one output can be generated by a single process, in which case each output will have its own dedicated storage. Each process receives data items from one or more storage devices 54-60, but any one storage device may supply data items to more than one process. Therefore, the only means of communication between processes is through storage devices 54-60.

この特徴は、著しい効果を発揮する。プロセスに対する
全てのデータのやり取りは、データ項目の流れにより記
憶装置にバッファされる。従って、プロセス間の同期が
流れによって固有に与えられ、これに対する明確な構成
をプロセス自体に設ける必要はない。
This feature has a significant effect. All data traffic to and from a process is buffered in storage by a stream of data items. Therefore, synchronization between processes is inherently provided by flows, and there is no need for explicit configuration for this in the processes themselves.

プロセスは、データ項目を流れに追加することができ、
他のプロセスがこれを読み取るまで待機しなくてよい。
A process can add data items to a flow,
No need to wait for other processes to read it.

各プロセスは、必要に応じてデータ項目を要求すること
ができ、データ項目が到達しても、その項目を使用する
プロセスが強制的に実行されることはない。インデック
ス値は新たなデータ項目に再指定されることがなく且つ
データ項目は決して変更されないので、有限の記憶容量
によって課せられる制約の範囲内でプロセスは常にデー
タ項目を使用することができる。この同じ制約の範囲内
で、プロセスは流れ内のいかなるデータ項目を要求する
こともでき、所定のシーケンスでの項目の受信に限定さ
れるものではない。然も、プロセスがデータ項目を間違
った順序で受け取るおそれはない。
Each process can request data items as needed, and when a data item arrives, the process using that item is not forced to run. Because the index value is never reassigned to a new data item and the data item is never changed, the data item is always available to the process within the constraints imposed by finite storage capacity. Within this same constraint, a process may request any data item in the stream and is not limited to receiving items in a predetermined sequence. However, there is no risk that a process will receive data items out of order.

又、第2図に示す実施例においては、全データプロセッ
サ30の入力及び出力並びにCPU32ないし36によ
って実行されるプロセス間を結ぶ唯一の手段は、記憶部
52内の記憶装置(即ち、記憶装置54.56.58.
62及び64)である。これは望ましいことであるが、
重要ではない。
Further, in the embodiment shown in FIG. 2, the only means for connecting the inputs and outputs of all data processors 30 and the processes executed by CPUs 32 to 36 is a storage device in storage section 52 (i.e., storage device 54). .56.58.
62 and 64). Although this is desirable,
not important.

第2図及び第3図に示されたプロセス機能は、純粋に時
間に拘りないものである。特に、記憶装置54ないし6
4からデータ項目を検索する際に得た値は、検索される
項目の発生時間に拘りないものである。時間に拘りない
機能を実施する場合には、第4図及び第5図に示すよう
な更に別の検索機能を伴う。
The process functions shown in FIGS. 2 and 3 are purely time-independent. In particular, storage devices 54 to 6
The value obtained when searching for a data item from 4 is independent of the time of occurrence of the item being searched for. When implementing time-independent functions, additional search functions are involved, as shown in FIGS. 4 and 5.

第4図は、記憶装置150を示すもので、この記憶装置
は、これに記憶された流れにおいて最も最近受け取った
データ項目を検索できるようにする更に別の回路を備え
ており、この場合、その項目のインデックス値は、その
項目を必要とするCPU又はプロセスによって指定され
ない、cPUからの制御ライン152は、レジスタ15
4に接続され、このレジスタは、各データ項目が入力ラ
イン158を経て受け取られる時に、記憶装置150か
ら接続部156を経て最も最近受ζづ取ったデータ項目
のインデックス値で更新される。レジスタ154は、次
いで、記憶装置150の出力160に接続される。従っ
て、データ項目の要求がライン152を経て受け取られ
た時には、これが、レジスタ154により、最も最近受
け取った項目のインデックス値、即ち、レジスタ154
に現在保持されている値と共に、出力160へ送られる
。受け取ったデータ項目は、出力ライン162を経て供
給される。
FIG. 4 shows a storage device 150 comprising further circuitry to enable retrieval of the most recently received data item in the stored stream, in this case the storage device 150. The index value of an item is not specified by the CPU or process that requires the item, control line 152 from the cPU register 15
4, this register is updated with the index value of the most recently received data item from storage 150 via connection 156 as each data item is received via input line 158. Register 154 is then connected to output 160 of storage device 150. Thus, when a request for a data item is received via line 152, this is set by register 154 to the index value of the most recently received item;
is sent to output 160 along with the value currently held in . The received data item is provided via output line 162.

第5図は、記憶装置i!164を示すもので、この記憶
装置は、データ項目の検索を試みることのできる更に別
の回路を有している。この場合には。
FIG. 5 shows the storage device i! 164, the storage device has further circuitry capable of attempting to retrieve data items. In this case.

指定のインデックス値を有するデータ項目がない場合に
この記憶装置が待機する時間に所定の制限が課せられる
。制御ライン166は、検索すべきデータ項目のインデ
ックス値を指示するために記憶装置164の出力168
に直結されると共に、単安定回路170のトリガ入力T
にも接続される。
A predetermined limit is imposed on the amount of time the storage device waits if there is no data item with a specified index value. Control line 166 connects output 168 of storage device 164 to indicate the index value of the data item to be retrieved.
and the trigger input T of the monostable circuit 170.
is also connected to.

出力ライン172は、検索したデータ項目を供給し、単
安定回路170のクリア入力に接続されている。単安定
回路170のセット出力は、時間切れ信号ライン174
及び出力168に接続されている。データ項目が制御ラ
イン166を経て要求された時には、その要求が記憶装
置164に送られると同時に、単安定回路170がトリ
ガされ、所定の時間中その擬似安定状態に入る。要求さ
れたデータ項目が記憶装置164にあるか又は所定の時
間が経過する前に受け取られた場合には、これが出力ラ
イン172を経て供給され、擬似安定時間の終わりに達
する前に単安定回路170をクリアする。然し乍ら、要
求されたデータ項目が所定時間の終了前に得られない場
合には、単安定口v!1170が時間切れし、時間切れ
ライン174に信号を発生する。この信号は、要求を発
しているCPU又はプロセスに、時間切れが生じたこと
を指示し、記憶装置164の出力168において未解決
の要求を打ち消す。所望ならば、単安定回路は、データ
項目が要求される時にその要求を発するCPUによって
制御ライン166に指定された値に基づいて決定された
可変の擬似安定時間を有することができる。このような
機能を行なう回路の設計は、当業者に明らかであろう。
Output line 172 provides the retrieved data item and is connected to the clear input of monostable circuit 170. The set output of monostable circuit 170 is connected to time-out signal line 174.
and output 168. When an item of data is requested via control line 166, the request is sent to storage 164 and at the same time monostable circuit 170 is triggered and enters its quasi-stable state for a predetermined period of time. If the requested data item is in storage 164 or is received before the predetermined time has elapsed, it is provided via output line 172 and is output to monostable circuit 170 before reaching the end of the pseudo-stable time. Clear. However, if the requested data item is not available before the end of the predetermined time, the monostable exit v! 1170 times out and generates a signal on timeout line 174. This signal indicates to the requesting CPU or process that time has expired and cancels the outstanding request at output 168 of storage 164. If desired, the monostable circuit can have a variable pseudo-stable time determined based on a value specified on control line 166 by the CPU issuing the request when a data item is requested. The design of circuits to perform such functions will be apparent to those skilled in the art.

本発明による第2のデータプロセッサを第6図について
説明する。このプロセッサは、第4図及び第5図につい
て述べた検索動作を用いて、成る軌道に沿って移動する
センサ(例えば、掘削孔を上方に引き上げられるロギン
グ用のゾンデ)の速度制御及び該センサからのデータ収
集の形態の時間に基づく機能を実行する。このセンサは
、2秒ごとに1回データ項目を発生し、その速度は、1
/10秒ごとに信号伝送される。プロセッサは。
A second data processor according to the invention will be described with reference to FIG. The processor uses the search operations described with respect to FIGS. Perform time-based functions in the form of data collection. This sensor generates a data item once every 2 seconds, and the rate is 1
A signal is transmitted every /10 seconds. The processor.

データ項目がセンサから到達し続けているかどうかをチ
ェックし、プリセットされた限界を越える時間中データ
が中断される場合にはセンサの作動を終了する。
It checks whether data items continue to arrive from the sensor and terminates sensor operation if the data is interrupted for a time that exceeds a preset limit.

第6図を説明すれば、センサからのデータ項目は、ライ
ン176を経て、参照番号175で一般的に示されたプ
ロセッサによって受け取られ、データ記憶゛部180の
データ記憶装置178へ供給される。センサの速度を表
わすデータ項目は、ライン182に受け取られ、別のデ
ータ記憶装置184へ供給される。この記憶装置は、第
4図について述べたように最新のものを読み取る機能を
発揮するように構成された出力186を有している。こ
の出力は、センサの速度を表わす最新のデータ項目をC
PU188に供給し、このCPUは。
Referring to FIG. 6, data items from the sensors are received via line 176 by a processor, indicated generally by reference numeral 175, and provided to data storage 178 of data storage section 180. A data item representing the speed of the sensor is received on line 182 and provided to another data storage device 184. The storage device has an output 186 configured to provide a refresh function as described with respect to FIG. This output displays the latest data item representing the speed of the sensor.
PU188, this CPU.

又、記憶装置178の出力190からデータ項目を受け
取り、その処理によって得たデータ項目を記憶装置19
2へ供給する。第5図について述べたような時間切れ機
能を有する記憶装置178からの別の出力194は、セ
ンサのデータ項目を第2(707r’Ti I <T 
Rニ供給し1、ソ(7’) 出:’J If 3Q f
fl 装(p198に接続される。記憶装置192及び
198の各出力200及び202は、第3のCPU20
4へ接続され、これはデータ項目を記憶表gi206へ
供給する。第4の最後のCPU208は、記憶装置17
8からその出力210を経てセンサのデータ項目を受け
取り、記憶装置212ヘデータ項目を供給する。記憶装
置206及び212は、データ項目を出力信号としてデ
ータプロセッサ175から出力214及び216並びに
出力ライン218及び220を経て供給する。
It also receives data items from the output 190 of the storage device 178 and stores the data items obtained through the processing in the storage device 19.
Supply to 2. Another output 194 from storage 178 with a time-out function as described with respect to FIG.
Rd supply 1, G (7') Out: 'J If 3Q f
The outputs 200 and 202 of the storage devices 192 and 198 are connected to the third CPU 20
4, which supplies data items to storage table gi206. The fourth and final CPU 208 is the storage device 17
8 via its output 210 and provides the data items to a storage device 212 . Storage devices 206 and 212 provide data items as output signals from data processor 175 via outputs 214 and 216 and output lines 218 and 220.

CPU188の動作が第7図のフローチャートに示され
ている。プロセッサ175の動作が開始される時には、
記憶装置178及び184から検索されるべきデータ項
目のインデックス値がステップ222において初期化さ
れる。次いで、CPU188は、ステップ224で始ま
るループに入り、ここで、記憶装置178からセンサの
データ項目が要求される。センサは、2秒に1度しかデ
ータ項目を供給しないので、要求を発する際にCPu1
8Rによ1て指定されたインデックス値に対応する位置
には最初データ項目がない。従って、CPU188がス
テップ226へ進んで記憶装置178からデータ項目が
受け取られたがどうか決定する時には、その結果が最初
否定となる。
The operation of CPU 188 is shown in the flowchart of FIG. When the operation of processor 175 is started,
The index value of the data item to be retrieved from storage devices 178 and 184 is initialized in step 222. CPU 188 then enters a loop beginning at step 224 where sensor data items are requested from storage 178. Since the sensor only supplies a data item once every two seconds, CPU1
Initially, there is no data item at the position corresponding to the index value specified by 1 by 8R. Therefore, when CPU 188 proceeds to step 226 to determine whether a data item has been received from storage device 178, the result will initially be negative.

それ故、CPU188は、ステップ226に戻るように
進み、データ項目が受け取られるまで動作を続行する。
Therefore, CPU 188 proceeds back to step 226 and continues operation until a data item is received.

データ項目が受け取られると、CPU188はステップ
228へ進み、記憶装置184から最新の速度データ項
目を要求する。速度データ項目は1秒当り10回受け取
られるので、最初の要求ガなされた時でも記憶装置18
4には既にデータ項目がある。それ故、常に最新の値が
得られ、要求が直ちに満たされる。CPU188は、ス
テップ230へと続き、センサの速度を調整する必要が
あるかどうか判断する。この判断は、適当なアルゴリズ
ムに基づいて行なうことができ、これは本発明の部分を
構成するものではないから、ここでは説明しない。変更
の必要がない場合には、CPU188はステップ232
を経てステップ224でスタートするループを繰り返す
ように戻り、ここで、記憶装置178からデータ項目を
要求のに用いるインデックス値が増加される。変更が必
要とされる場合には、ステップ234において記憶装置
192に適当なマントが送られ、CPUは前記したよう
にステップ232へ進む。
Once the data item is received, CPU 188 proceeds to step 228 and requests the latest speed data item from storage 184. Since velocity data items are received 10 times per second, even when the first request is made, the storage 18
4 already has a data item. Therefore, the latest values are always available and requests are met immediately. CPU 188 continues to step 230 and determines whether the speed of the sensor needs to be adjusted. This determination may be made on the basis of any suitable algorithm, which does not form part of the present invention and will not be described here. If no change is necessary, the CPU 188 proceeds to step 232.
to repeat the loop starting at step 224, where the index value used to request data items from storage 178 is incremented. If a change is required, the appropriate cloak is sent to storage 192 in step 234 and the CPU proceeds to step 232 as described above.

CPU196の動作は、第8図のフローチャートに示さ
れている。プロセサ175が動作を開始する時に、イン
デックス値がステップ236において初期化される。次
いで、プロセスはステップ238へ進み、指定の時間限
界で記憶装置178からデータ項目が要求される。第7
図のステップ224においてCPUl88がデータ項目
を検索したのと同様に、要求に応じてデータ項目が得ら
れるまでには間隔がある。この間隔の間に、CPUI 
96は、2つの判断ステップ240及び242を通る。
The operation of the CPU 196 is shown in the flowchart of FIG. When processor 175 begins operation, index values are initialized in step 236. The process then proceeds to step 238, where data items are requested from storage 178 at the specified time limit. 7th
Similar to the CPU 188 retrieving the data item in step 224 of the figure, there is an interval between obtaining the data item in response to the request. During this interval, the CPU
96 passes through two decision steps 240 and 242.

これらステップの第1において、CPU196は、デー
タ値を受け取ったかどうかチェックする。もしそうなら
ば、CPU196は、ステップ244へ進み、記憶装置
178から検索するためのインデックス値を増加し、次
いで、ステシブ238へ復帰する。
In the first of these steps, CPU 196 checks whether a data value has been received. If so, CPU 196 proceeds to step 244 and increments the index value to retrieve from storage 178 and then returns to step 238.

ステップ240の結果が否定である場合には、CPU1
96はステップ242へ進み、記憶装置178の出力1
94から時間切れ信号が受け取られるかどうかチェック
する。もにのような信号が存在しなければ、センサから
のデータの中断に対する時間限界を基えたことになり、
従って、CPU196は判断ステップ240及び242
を繰り返す。然し乍ら、時間切れ信号を受け取らない場
合には、CPU196がステップ246へ進み、センサ
の動作を終わらせるコマンドを記憶装置198へ供給す
る。
If the result of step 240 is negative, CPU1
96 proceeds to step 242 and outputs the output 1 of the storage device 178.
Check if a timeout signal is received from 94. If such a signal does not exist, it is based on the time limit for interruption of data from the sensor,
Therefore, CPU 196 performs decision steps 240 and 242.
repeat. However, if a timeout signal is not received, CPU 196 proceeds to step 246 and provides a command to memory 198 to terminate sensor operation.

第9図に示すように、CPU204は、最初に、ステッ
プ248及び250において記憶装置192及び198
の両方からデータ項目を要求する。次いで、ステップ2
52において、記憶装置192から何等かの項目が受け
取られたかどうがチェックする。もしそうであれば、ス
テップ254において、受け取ったデータ項目を記憶装
置206に送り、ステップ256において、記憶装置1
92からのデータ項目の要求を再開し、ステップ252
へ復帰する。もしそうでなければ、ステップ258へ進
み、記憶装置198からのデータ項目の受け取りをチェ
ックする。データ項目がない場合には、ステップ252
へ復帰することによってチェックループを繰り返す。さ
もなくば、受(す取ったデータ項目をステップ260に
おいて2己憶装置206へ送り、ステップ262におい
て、記憶装置198からのデータ項目の要求を再開し。
As shown in FIG.
Request data items from both. Then step 2
At 52, a check is made to see if any items have been received from storage 192. If so, in step 254 the received data item is sent to storage device 206 and in step 256
resume requesting data items from 92, step 252
Return to. If not, proceed to step 258 and check for receipt of the data item from storage device 198. If there is no data item, step 252
The check loop is repeated by returning to . Otherwise, the received data item is sent to the second storage device 206 in step 260 and the request for the data item from the storage device 198 is resumed in step 262.

ステップ252へ復帰する。CPU204によって行な
われるプロセスの作用は、CPU188及び196によ
って発生されたコマンドをこれらが発生された順に併合
して記憶装置206へ送信し、プロセッサ175の出力
としてライン218を経て供給するようにすることであ
る。このプロセスは、記憶装置206に現われるコマン
ドの正確なシーケンスが、センサが受ける条件(例えば
、掘削孔の条件)及びそれによって生じる影響と共に変
化するので、時間に基づくプロセスの一例に過ぎない。
Return to step 252. The action of the process carried out by CPU 204 is to merge the commands generated by CPUs 188 and 196 in the order in which they were generated and transmit them to storage 206 for provision on line 218 as the output of processor 175. be. This process is only one example of a time-based process, as the exact sequence of commands that appear in storage 206 will vary with the conditions to which the sensor is subjected (eg, wellbore conditions) and the resulting effects.

2組のコマンドを時間に基づく方法で併合するもう1つ
のやり方は、2つの入力を記憶装置に送り、各々の入力
を経て記憶装置における流れに各一連のコマンドを追加
することである。
Another way to merge two sets of commands in a time-based manner is to send two inputs to a storage device and add each series of commands to the flow in the storage device through each input.

CPU208は、記憶装置178がら′センサのデータ
項目を単に取り出し、これらデータ項目に適当な処理を
施して所望の情報を形成し、この情報は、次いで、記憶
装置212へ出力される。
CPU 208 simply retrieves the sensor data items from storage 178 and performs appropriate processing on these data items to form the desired information, which is then output to storage 212.

この処理は、演算操作や他のデータとの組合せといった
色々な形態をとることができる。このような処理の詳細
は、本発明には拘りないものであり、詳細に説明する必
要がなかろう。
This processing can take various forms such as arithmetic operations and combinations with other data. The details of such processing are not relevant to the present invention and need not be described in detail.

第2図のプロセッサ30の場合と同様に、CPUによっ
て実行されているプロセス間での全てのデータ通信は、
記憶装置に保持されたデータ項目の流れによって達成さ
れ、各データ項目はその流れにおいて独特のインデック
ス値が組み合わされる。
As with processor 30 of FIG. 2, all data communications between processes being executed by the CPU are
This is achieved by a stream of data items held in storage, each data item being associated with a unique index value in the stream.

各プロセスに対して別々のCPUを使用する時には、こ
の構成により次のような効果が得られる。即ち、時間に
拘りのない動作(例えば、CPU208によるセンサデ
ータの処理)と、時間に基づく動作(例えば、CPU1
8−8によるセンサ速度の監視)を、プロセス間で起こ
り得る相互の悪影響を招くことなく、別々のプロセスに
おいて実行することができる。これにより、効率的で、
効果的で且つ信頼性の高いプログラムの設計及び書き込
み並びにそれらの処理を容易にすることができる。更に
、プログラムを走らせるためのハードウェアの特定の詳
細については考慮する必要がなかろう。同様に、ハード
ウェアに対するその後の変更の可能性、異なったハード
ウェアの使用、又はプロセスを実行するプログラムの変
更については、特殊な構成が何等必要とされない。
When using separate CPUs for each process, this configuration provides the following effects. That is, there are two types of operations: time-independent operations (e.g., processing of sensor data by CPU 208) and time-based operations (e.g., processing of sensor data by CPU 208).
8-8) can be performed in separate processes without incurring possible mutual adverse effects between the processes. This makes it efficient and
It is possible to facilitate the design and writing of effective and reliable programs and their processing. Furthermore, there may be no need to consider the specific details of the hardware on which the program will run. Similarly, no special configuration is required for the possibility of subsequent changes to the hardware, the use of different hardware, or changes to the program executing the process.

従って、CPU208によるデータの処理は、CPU2
08の操作の複雑さ及び速度にもよるが、処理待ちのセ
ンサデータ項目が他のプロセスの実行によって失われた
り重畳書き込みされたりするおそれなく、適当な速度で
進めることができる。
Therefore, data processing by the CPU 208 is performed by the CPU 208.
Depending on the complexity and speed of the 08 operation, it can proceed at a reasonable speed without fear that pending sensor data items will be lost or overwritten by execution of other processes.

これらのデータ項目は、記憶装置178において使用で
きる状態とされ、CPU188及び196によって出力
190及び194を経て既に検索されたかどうかに拘り
なく、CPU208によって要求された時に出力210
を経て検索される。同様に、このような処理によって得
られた出力データは、抽出前にデータを失うおそれなく
出力ライン218を経てデータが抽出される速度と拘り
ない速度でCPU208によって発生することができる
These data items are made available in storage 178 and sent to output 210 when requested by CPU 208, whether or not they have already been retrieved by CPUs 188 and 196 via outputs 190 and 194.
Searched through. Similarly, output data obtained by such processing can be generated by CPU 208 at a rate independent of the rate at which the data is extracted via output line 218 without risk of losing data before extraction.

CPU 188によって実行される時間に基づくプロセ
スは、望ましいと考えられる速度でセンサの速度を監視
及び制御するように実行することができ、これに応じて
、記憶装置178から出力190を経てデータ項目を抽
出することができる。
A time-based process executed by CPU 188 may be executed to monitor and control the speed of the sensor at a rate deemed desirable, and accordingly transfer data items from storage 178 via output 190. can be extracted.

このプロセスは、CPU208におけるデータ処理機能
の実行と拘りなく機能し、この処理によって遅延やタイ
ミングの問題を招くおそれはない。
This process functions independently of the performance of data processing functions in CPU 208, and does not introduce delays or timing issues.

それ故、プロセスのプログラミングを行なう時にタイミ
ングの競合を考える必要はない。
Therefore, there is no need to consider timing conflicts when programming a process.

多数のプロセス間で単一のCPUが共有された状態でプ
ロセスが実行される場合にも、時間に基づくプロセスの
実行により時間に拘りないプロセスに要求されるデータ
が質低下するおそれはない。時間に基づくプロセスに対
しては遅延が生じるおそれがあるが、プロセス間の通信
がデータ項目の流れを介してのみ行なわれるようにプロ
セスを区分化することにより、このようなプロセッサの
動作の分析、潜在的な競合の識別及び調整が容易にされ
る。更に、このアーキテクチャは、タイミングの制約を
明らかにしてタイミングの競合を回避できるような技術
を実施するための効果的な構造を与えると考えられる。
Even when processes are executed with a single CPU shared among multiple processes, there is no risk that the quality of data required by time-independent processes will be degraded by the execution of time-based processes. Analysis of the behavior of such processors by partitioning processes such that communication between processes occurs only through a flow of data items, at the risk of delays for time-based processes; Identification and reconciliation of potential conflicts is facilitated. Additionally, this architecture is believed to provide an effective structure for implementing techniques that can account for timing constraints and avoid timing conflicts.

更に、本発明は、最初単一のCPUで実施できそして著
しい変更を行なわずに多CPUシステムへと移行するこ
とのできるシステム設計を助けるものである。
Additionally, the present invention facilitates system designs that can be implemented initially with a single CPU and migrated to multi-CPU systems without significant changes.

時間に基づく機能と時間に拘りない機能を種々のプロセ
ス間で分割する必要はないが、一般的にはこのようにす
るのが良いと考えられ、タイミングの競合やその後の変
更の困難さを減らす助けとなる。
Although it is not necessary to separate time-based and time-insensitive functions between various processes, it is generally considered good practice to do so, reducing timing conflicts and the difficulty of subsequent changes. Helpful.

プロセッサ175とその外界との間の全ての通信は、第
6図に示すように、更に別のデータ項目流によって行な
うのが好ましい。然し乍ら、所望ならば、1つ以上のプ
ロセスにおいて他の装置とデータを直接交換してもよい
。このような交換は、典型的に、時間に基づくものであ
り、即ち。
Preferably, all communication between processor 175 and the outside world is by a further stream of data items, as shown in FIG. However, if desired, data may be exchanged directly with other devices in one or more processes. Such exchanges are typically time-based, ie.

その結果は、例えば、実行速度によって決まる。The result depends, for example, on execution speed.

第2図及び第6図のプロセッサ30及び175は、デー
タ項目を通信する個々の接続部を各CPUと記憶装置と
の間に有している。或いは又、第10図に示すように、
このような接続をマルチプレクスすることができる。第
10図を説明すれば、記憶部270は、6個の記憶装置
272ないし282を有しており、その各々は、各々の
入力284ないし294と、各々の単一出力296ない
し306とを有している。これら入力及び出力の各々は
、入力/出力回路308に接続されていると共に、各出
力296ないし306に関連した各制御ライン310な
いし320に接続されている。3つのCPU322ない
し326は、各々の制御ライン328ないし332及び
三方データライン334ないし338によって入力/出
力回路308に接続される6人カライン340、出力ラ
イン342及びそれに関連した制御ライン344も入力
/出力回路308に接続される。
Processors 30 and 175 of FIGS. 2 and 6 have individual connections between each CPU and storage for communicating data items. Alternatively, as shown in Figure 10,
Such connections can be multiplexed. Referring to FIG. 10, the storage section 270 has six storage devices 272-282, each having a respective input 284-294 and a respective single output 296-306. are doing. Each of these inputs and outputs is connected to an input/output circuit 308 and to a respective control line 310-320 associated with each output 296-306. The three CPUs 322-326 also have input/output lines 340, output lines 342, and their associated control lines 344 connected to the input/output circuit 308 by respective control lines 328-332 and three-way data lines 334-338. Connected to circuit 308.

作動中、CPU322ないし326は、制御ライン32
8ないし332を経て入力/出力回路308へ信号を送
信することにより記憶装置272ないし282からデー
タ項目を得る。これらの信号は、データ項目が要求され
た記憶装置と、要求された項目に対するインデックス値
とを識別する。入力/出力回路308は、インデックス
値を含む要求を、適当な制御ライン310ないし320
を経て、このように識別された記憶装置へ供給する。要
求されたデータ項目は、記憶装置により、各々の出力2
96ないし306を経て入力/出力回路308へ返送さ
れ、該回路は、これを適当なデータライン334ないし
338を経て、要求を発したCPUへ送る。CPU32
0ないし326によって発生されたデータ項目は、記憶
装置272ないし282のどれがデータ項目を受け取る
べきかを識別する対応制御ライン334ないし332の
信号と共に、データライン334ないし338の各1つ
を経て入力/出力回路308へ供給される。この人力/
出力回路308は、データ項目を入力284ないし29
4の適当な1つに供給することにより、このように識別
された記憶装置へデータ項目を送る。
In operation, CPUs 322-326 control line 32.
Data items are obtained from storage devices 272-282 by sending signals to input/output circuitry 308 via 8-332. These signals identify the storage device from which the data item was requested and the index value for the requested item. Input/output circuit 308 sends requests containing index values to appropriate control lines 310-320.
The data is then supplied to the thus identified storage device. The requested data item is stored in each output 2 by the storage device.
96-306 back to the input/output circuit 308, which sends it on the appropriate data lines 334-338 to the CPU that issued the request. CPU32
Data items generated by 0 through 326 are input via a respective one of data lines 334 through 338, with corresponding control line signals 334 through 332 identifying which of storage devices 272 through 282 should receive the data item. / is supplied to the output circuit 308. This human power/
Output circuit 308 inputs data items 284 to 29
4, the data item is sent to the storage device thus identified.

同様に、入力/出力回路308は、入力ライン340を
経て受け取った入力データを記憶装置272ないし28
2の適当なものへ供給すると共に、制御ライン344を
経て送られる要求に基づいて出力ライン344ヘデータ
項目を供給する。
Similarly, input/output circuit 308 transfers input data received via input line 340 to storage devices 272-28.
2 and provides data items to output line 344 based on requests sent via control line 344.

第10図に示すように、各記憶装置272ないし282
は、いかに多くのCPUが1つの記憶装置からデータ項
目を要求したかに拘りなく、1つの出力296ないし3
06のみを有していればよい。入力/出力回路308は
、各記憶装置272ないし282に対し、当該記憶装置
におけるデータ項目の流れの長さと、その記憶装置から
データ項目を要求している各CPUに対して最も最近検
索されたデータ項目のインデックス値との記録を維持す
るように携成される。記憶部270が上記したようにデ
ータ項目の多数の流れの間でメモリを共有している場合
には、入力/出力回路308は、各法れを構成するデー
タ項目の物理的な位置の記録を維持する。同様に、読み
取り/書き込みメモリを使用する場合には、入力/出力
回路は、記憶位置に含まれたデータ項目がその後の処理
に対して不所望となった時のその記憶位置の再使用を制
御する。メモリリソースを管理する公知技術を用いてこ
れらの機能を行なうことは、当業者に容易に明らかであ
る。
As shown in FIG. 10, each storage device 272 to 282
outputs one output 296 to 3, regardless of how many CPUs request data items from one storage device.
It is sufficient to have only 06. Input/output circuit 308 provides information to each storage device 272-282 about the length of the flow of data items in that storage device and the most recently retrieved data for each CPU requesting data items from that storage device. It is carried out to maintain a record of the item's index value. If storage unit 270 shares memory between multiple streams of data items as described above, input/output circuitry 308 may maintain a record of the physical location of the data items that make up each stream. maintain. Similarly, when using read/write memory, the input/output circuitry controls the reuse of a storage location when the data item contained therein becomes undesirable for further processing. do. It will be readily apparent to those skilled in the art that known techniques for managing memory resources may be used to perform these functions.

入力/出力回路は、1つの考えられる実施例においては
、ランダムアクセスメモリの2つのブロックと2つのレ
ジスタとを備えている。一方のレジスタは、入力/出力
回路とCPUとの間で制御及び状態情報をやり取りする
のに使用され、他方のレジスタは、データ項目及びイン
デックス値を転送するのに使用される。ランダムアクセ
スメモリの第1のブロックは、1組のテーブルとして構
成され、各テーブルは62対の16ビツト入力及び2つ
の32ビツト入力を有し、1つの記憶装置からのデータ
項目に関する62個までの保留要求の詳細を保持するの
に使用される。32ビツト入力の1つは、その記憶装置
におけるデータ項目の流れに最も最近追加されたデータ
項目のインデックス値を記憶するのに用いられる。他の
32ビツト入力は、そのデータ項目を含む記憶装置の位
置の物理的なアドレスを記憶する。各対の16ビツト入
力における第1人力は、最も最近追加されたデータ項目
のインデックス値からCPtJによって要求されたデー
タ項目のインデックス値までのオフセットを含んでいる
。その対の第2の入力は、そのデータ項目を要求するC
PU又はプロセスを識別する。このように構成された1
メガバイトのランダムアクセスメモリは、4096個の
記憶装置の各々に対し62個までの出力を形成する機能
を果たす。
The input/output circuit comprises, in one possible embodiment, two blocks of random access memory and two registers. One register is used to communicate control and status information between the input/output circuits and the CPU, and the other register is used to transfer data items and index values. The first block of random access memory is organized as a set of tables, each table having 62 pairs of 16-bit inputs and two 32-bit inputs, with up to 62 pairs of data items from one storage device. Used to hold details of pending requests. One of the 32-bit inputs is used to store the index value of the most recently added data item to the stream of data items in that storage device. The other 32-bit input stores the physical address of the storage location containing the data item. The first entry in each pair of 16-bit inputs contains the offset from the index value of the most recently added data item to the index value of the data item requested by CPtJ. The second input of the pair is the C requesting the data item.
Identify the PU or process. 1 configured like this
Megabytes of random access memory serve to form up to 62 outputs for each of the 4096 storage devices.

ランダムアクセスメモリの第2ブロツクは、各々4人力
より成る1024個のグループとして構成され、CPU
又はプロセスからの要求に応じて検索されたデータ項目
に対し先入れ先出しバッファとして使用される。各グル
ープの第1人力は、要求を発するCPU又はプロセスを
識別する16ビツト値である。第2の入力は、値が要求
された記憶装置又は流れを識別する12ビツト値である
The second block of random access memory is organized in 1024 groups of 4 people each, and the CPU
or as a first-in, first-out buffer for data items retrieved upon request from a process. The first input of each group is a 16-bit value that identifies the CPU or process issuing the request. The second input is a 12 bit value identifying the storage device or stream for which the value is requested.

第3の入力は、データ項目自体、この場合は32ビット
長さを記憶するのに使用される。第4の入力は、4ビツ
トの状態値である。この構成では、バッファは8キロバ
イトのランダムアクセスメモリを要求する。記憶装置自
体は、4096個の流れの各々に対し長さが各々32ビ
ツトの512個までのデータ項目を記tαするように実
施することができ、別の8メガバイトのランダムアクセ
スメモリを必要とする。
The third input is used to store the data item itself, in this case 32 bits long. The fourth input is a 4-bit state value. In this configuration, the buffer requires 8 kilobytes of random access memory. The storage itself can be implemented to store up to 512 data items, each 32 bits in length, for each of the 4096 streams, requiring another 8 megabytes of random access memory. .

CPUは、入力/出力回路のデータ転送レジスタに記憶
さるへきデータ項目を入れ、書き込み動作が要求される
ことを指示するコードと共に行先流の識別を制御及び状
態レジスタに入れることによって書き込み動作を実行す
ることができる。
The CPU performs a write operation by placing the next data item to be stored in the data transfer register of the input/output circuit and placing the identification of the destination stream in the control and status register along with a code indicating that a write operation is requested. be able to.

入力/出力回路は、データ転送レジスタの値を取り出し
、これを、制御及び識別レジスタにおいて識別された記
憶装置のデータ項目の流れに付随させる5次いで、その
流れに対する保留要求テーブルが、最も最近追加された
データ項目のインデックス値及びその項目の物理的な位
置に対する入力を増加することによって更新される。更
に、この同じテーブルの62対の各入力における要求さ
れたデータ項目に対するオフセット入力が減少され71
1.オフセラ1、がゼロになり、対にさ1またプロセス
識別子が非ゼロである場合には、丁度追加されたデータ
項目が、要求されたデータ項目のインデックス値を有す
る。この場合、データ項目、プロセス識別子及び流れの
識別が、検索されたデータ項目のバッファに追加され、
保留要求テーブルのプロセス識別子は要求が満たされた
ことを指示するようにゼロにセットされる。
The input/output circuit retrieves the value of the data transfer register and associates it with the stream of storage data items identified in the control and identification registers.The input/output circuitry then associates the pending request table for that stream with the most recently added data item. The data item is updated by incrementing the index value of the data item and the input for the physical location of that item. Additionally, the offset entry for the requested data item in each of the 62 pairs of entries of this same table is reduced 71
1. If offseller1 becomes zero and pairwise1 or process identifier is non-zero, then the data item just added has the index value of the requested data item. In this case, the data item, process identifier and flow identification are added to the buffer of retrieved data items;
The process identifier in the pending request table is set to zero to indicate that the request has been fulfilled.

CPtJ又はプロセスは、項目及びそれ自身の識別を含
む流れの識別を制御及び状態レジスタに入れると共に要
求された項目のインデックス値をデータ転送レジスタに
入れることによって入力/出力回路からデータ項目を要
求する。識別された流れに対する保留要求テーブルの未
使用の入力対は、その流れに最も最近追加された項目の
インデックス値からの項目のオフセットと、要求を発し
ているプロセスの識別とで更新される。バッファにおい
て次に検索されるデータ項目がデータ転送レジスタに入
れられ、バッファの関連入力におけるプロセス識別子及
び流れ識別子が制御及び状態1ノジスタに入れt″l:
ILろ。このようにし、で識別されたプロセスは、入力
/出力回路からデータ項目を検索することができる。1
つ以上のCPUがプロセスによって共有される場合には
、未解決要求のテーブルに要求を追加したプロセスが以
下で述べるように保留され、制御及び状態レジスタで識
別されたプロセスが再び開始される。
A CPtJ or process requests a data item from the input/output circuit by placing the identification of the stream, including the item and its own identity, in the control and status registers and the index value of the requested item in the data transfer register. An unused pair of entries in the pending request table for an identified flow is updated with the item's offset from the index value of the most recently added item to that flow and the identity of the process issuing the request. The next data item to be retrieved in the buffer is placed in the data transfer register, and the process and flow identifiers at the relevant inputs of the buffer are placed in the control and status 1 registers.
IL. In this way, the identified process can retrieve the data item from the input/output circuit. 1
If more than one CPU is shared by processes, the process that added the request to the table of outstanding requests is suspended, as described below, and the process identified in the control and status registers is restarted.

この構成では、保留要求テーブルのプロセス識別入力を
ゼロにセットすることによりデータ項目の保留要求を打
ち消すことができる点に注意されたい。
Note that in this configuration, a pending request for a data item can be canceled by setting the process identification entry of the pending request table to zero.

特殊なハードウェアを使用するのとは別に。Apart from using specialized hardware.

本発明によるデータプロセッサは、上記の記憶機能及び
処理機能を果たすように汎用コンピュータを適当にプロ
グラミングすることによっても実施できる。第11図な
いし第15図は、上記の種々の読み取り及び書き込み機
能をいかに行なうかを一例として示すフローチャートで
ある。
A data processor according to the invention may also be implemented by suitably programming a general purpose computer to perform the storage and processing functions described above. Figures 11-15 are flowcharts illustrating, by way of example, how to perform the various read and write functions described above.

これらの図においては、メモリに対する書き込み及び読
み取り、ガーベージコレクション、プロセス実行の保留
及び再作動といった基本的なメモリ管理及びプロセス実
行動作が存在するものと仮定する。これらの動作は、例
えば、米国、カリフォルニア州、パサデナのゼロックス
・コーポレーションから得られるインターリスプ−Dプ
ログラミング環境(Interlisp−D prog
rammingenvironment)の一体的部分
を構成し、これについては、ゼッロックス・コーポレー
ションによって1983年10月に出版された「インタ
ーリスプ・レファレンス1マニユアル(Interli
sp Reference Manual) Jに説明
されている。
These figures assume that basic memory management and process execution operations exist, such as writing and reading from memory, garbage collection, suspending and reactivating process execution. These operations are performed using, for example, the Interlisp-D programming environment available from Xerox Corporation, Pasadena, California, USA.
rammingenvironment), as described in the Interlisp Reference 1 Manual, published by Xerox Corporation in October 1983.
sp Reference Manual) J.

各々の機能は、それを実行する必要のあるプロセスによ
って呼び出すことのできるサブルーチンの形態で説明さ
れている。このような呼び出しが生じた時には、呼び出
しプロセスによって一時的に制御がサブルーチンに移行
される。従って、サブルーチンが、別の事象によって再
作動されるまで実行を保留するようなステップを含んで
いる場合には、呼び出しプロセスの実行も保留される。
Each function is described in the form of a subroutine that can be called by the process that needs to perform it. When such a call occurs, control is temporarily transferred to the subroutine by the calling process. Thus, if a subroutine contains steps that suspend execution until reactivated by another event, execution of the calling process is also suspended.

第11図は、プロセスからの要求に応じて指定のインデ
ックス値に対する流れからデータ項目を読み取る手順を
示している。この手順は、350において始まり、先ず
、要求されたインデックス値に対するデータ流が得られ
るかどうかがステップ352においてチェックされる。
FIG. 11 shows the procedure for reading a data item from a stream for a specified index value in response to a request from a process. The procedure begins at 350 and first checks at step 352 whether a data stream is available for the requested index value.

これは、例えば、インデックス値を流れの現在長さと比
較することによって行なうことができる。データ項目が
存在する場合には、この手順がステップ354に直接進
み、データ項目がメモリから得られて、要求を発してい
るプロセスに供給され、その後、手順はステップ356
において呼び出しプロセスに復帰する。要求されたデー
タ項目が得られない(即ち、そのインデックス値に対す
るデータ項目がまだ受け取られていない)@合には、手
順がステップ358へ進む。このステップにおいては、
要求を発しているプロセスの識別とインデックス値が、
流れに対して保留されている要求の詳細を保持するため
にデータ項目の流れに組み合わされたテーブルに追加さ
れる。このテーブルは、本質的に、この目的のために前
爪て予約されたメモリ位置のグループより成り、例えば
、プレイの形態であって、第10図の入力/出力回路に
ついて前記した保留要求テーブルに類似したものである
This can be done, for example, by comparing the index value to the current length of the stream. If the data item exists, the procedure proceeds directly to step 354, where the data item is obtained from memory and provided to the requesting process, and then the procedure continues to step 356.
Returns to the calling process. If the requested data item is not available (ie, a data item for that index value has not yet been received), the procedure proceeds to step 358. In this step,
The identity of the process making the request and the index value are
A data item is added to the table associated with the stream to hold details of requests pending against the stream. This table essentially consists of a group of memory locations reserved for this purpose, e.g. They are similar.

次いで、手順はステップ360へ進み、データ項目が流
れに追加されるまで手順の実行が保留される(例えば、
上記インターリスプ−Dのプロセス保留動作を用いて)
、データ項目が追加されると、以下で述べるように、手
順の実行が再開される。
The procedure then proceeds to step 360, where execution of the procedure is suspended until the data item is added to the flow (e.g.,
(using the process suspension behavior of Interlisp-D above)
, once the data item has been added, execution of the procedure resumes, as described below.

その後、手順は上記したようにステップ354へ進む。The procedure then proceeds to step 354 as described above.

データ項目を流れに書き込む手順が第12図に示されて
いる。第12図を説明すれば、ステップ362でこの手
順に入り、ステップ364で開始され、データ流がメモ
リに記憶される。これは、C0N5オペレーシヨンによ
ってインターリスプ−〇で実行される。次の段階366
においては、データ項目の流れの長さを指示するカウン
タが1だけ増加され、次いで、ステップ368において
、その流れの保留要求のテーブルが新たな流れの長さに
等しいインデックス値に関する要求に対してチェックさ
れる。このような要求がない場合には、手順がステップ
3’70へ直接進み、その流れから読みだされた最も前
のデータ項目が識別され、次いで、ステップ372へ進
んで、最も前のインデツキウス値を有する全てのデータ
項目が削除される。このステップは、RPLACDオペ
レーションによってインターリスプ−Dにおいて実行す
ることができる。これら2つのガーベージコレクション
段階は、不所望なデータ項目によって占有されたメモリ
位置の再使用を解除し、容量が限定された読み取り/書
き込みメモリが使用される時に適したものとなる。1回
書き込みのメモリが使用さ九る場合にはこれらを省略で
きることが理解されよう。ステップ372の後に、手順
は374の呼び出しプロセスに復帰する。
The procedure for writing data items into a flow is shown in FIG. Referring to FIG. 12, the procedure is entered at step 362 and begins at step 364, where the data stream is stored in memory. This is performed in Interlisp-O by the C0N5 operation. Next step 366
At , a counter indicating the length of the stream of data items is incremented by one, and then, at step 368, the table of pending requests for that stream is checked for requests for an index value equal to the length of the new stream. be done. If there is no such request, the procedure proceeds directly to step 3'70, where the earliest data item read from the stream is identified, and then proceeds to step 372, where the earliest index value is determined. All data items that have are deleted. This step can be performed in Interlisp-D by the RPLACD operation. These two garbage collection stages de-reuse memory locations occupied by undesired data items, making them suitable when read/write memory of limited capacity is used. It will be appreciated that these can be omitted if write-once memory is used. After step 372, the procedure returns to the calling process at 374.

ステップ368において1つ以上の保留要求が見つかっ
た場合には、早急がステップ376に進み、この見つか
った各要求に対する入力が検査される。これがタイマ機
能の参照を含む場合には、第13図について以下で述べ
るように、タイマ機能が打ち消される。同様に、これが
保留要求を有する別の流れの識別を含む場合には、第1
4図について以下で述べるように、その流れの保留要求
が除去される。次いで、ステップ368で見い出された
各要求に対する入力がテーブルから除去される。次いで
、ステップ378へ続き、そのインデックス値のデータ
項目を要求した1つ又は複数のプロセスが再開される(
インターリスプ−Dにおいて、WAKE、PROCES
Sオペレーションでこれが行なわれる)。その後、手順
は、ステップ370及び372においてガーベージコレ
クションから出て、ステップ374へと続く。
If one or more pending requests are found in step 368, the process immediately proceeds to step 376, where the input for each found request is examined. If this includes a reference to a timer function, the timer function is canceled, as discussed below with respect to FIG. Similarly, if this involves identifying another stream with pending requests, the first
As discussed below with respect to Figure 4, the pending requests for that flow are removed. The entry for each request found in step 368 is then removed from the table. Then, continuing to step 378, the process or processes that requested the data item with that index value are resumed (
In Interlisp-D, WAKE, PROCES
This is done with the S operation). The procedure then exits garbage collection at steps 370 and 372 and continues to step 374.

第13図を説明すれば、ステップ380において時間切
れを含む読み取り機能を実行する手順に入る。ステップ
382では、要求されたインデックス値に対してデータ
項目が既に得られるかどうかについてチェックが行なわ
れる。もしそうならば、ステップ384においてデータ
項目がメモリから得られ、要求を発しているプロセスに
送られ、これに対し、手順はステップ386に復帰する
。さもなくば、インデックス値及び要求を発しているプ
ロセスの識別が、ステップ388において、その流れに
対する保留要求テーブルに追加される。これについては
、手順が、第11図に示された通常の読み取り手順のス
テップ350ないし358と同じである。然し乍ら、こ
の場合には、時間切れ信号を発生する前の所要の時間中
にタイマ機能も設定される。その識別は保留要求テーブ
ルに加えられ、別のテーブルがタイマに組み合わされて
、時間切れ信号を発生するまでに経過しなければならな
い時間間隔と、要求を発しているプロセスの識別と、デ
ータ項目が要求された流れの識別とが指示される。ステ
ップ390において、タイマがスタートされ、ステップ
392において、手順が保留される。その後、手順が再
開された時には、ステップ394において、タイマが特
定の時間間隔が経過したことを示す信号を発生したこと
により動作が再開されたかどうかチェックされる。もし
そうならば、ステップ388において保留要求テーブル
レこ加えられた要求がステップ395において除去され
、ステップ396において時間切れ信号が発生され、手
順はステップ398において呼び出しプロセスに復帰す
る。さもなくば、要求されたインデックス値のデータ項
目を受け取ることによって再開を行なわねばならず、こ
の場合には、手順がステップ384へ進み、前記したよ
うにデータ項目を得て供給する。
Referring to FIG. 13, step 380 enters a procedure for performing a read function that includes a timeout. In step 382, a check is made as to whether a data item is already available for the requested index value. If so, the data item is obtained from memory in step 384 and sent to the requesting process, while the procedure returns to step 386. Otherwise, the index value and the identity of the process issuing the request are added to the pending request table for that flow in step 388. In this regard, the procedure is the same as steps 350-358 of the normal reading procedure shown in FIG. However, in this case the timer function is also set during the required time period before generating the time-out signal. That identity is added to the pending request table, and another table is combined with a timer to determine the time interval that must elapse before a time-out signal is generated, the identity of the process issuing the request, and the data item. The identity of the requested stream is indicated. In step 390, a timer is started and in step 392 the procedure is suspended. Thereafter, when the procedure is restarted, a check is made in step 394 to see if the timer has generated a signal indicating that the specified time interval has elapsed, thereby resuming operation. If so, the request added to the pending request table in step 388 is removed in step 395, a time-out signal is generated in step 396, and the procedure returns to the calling process in step 398. Otherwise, restart must occur by receiving the data item for the requested index value, in which case the procedure proceeds to step 384 to obtain and provide the data item as described above.

第14図は、多数の流れからデータ項目を得て成る所定
の仲裁アルゴリズムに基づいてこれらを合成する仲裁機
能を含む読み取りの実行を示すフローチャートである。
FIG. 14 is a flowchart illustrating the execution of a read that includes an arbitration function that takes data items from multiple streams and combines them based on a predetermined arbitration algorithm.

これは1例えば、第6図に示したデータプロセッサ17
5のCPU204によって実行されたプロセスに代わっ
て持ちいられ、記憶′!A置192及び198における
データ項目の流れを併合するものである。
This is 1, for example, the data processor 17 shown in FIG.
Memory'! The flow of data items in A locations 192 and 198 are merged.

第14図を説明すれば、ステップ400においてこの手
順に入り、ステップ402においてこれが開始され、要
求を発しているプロセスによって識別された流れの各々
からデータ項目を得るように試みられる。ステップ40
4においては、データ項目が見つかったかどうかチェッ
クされる。
Referring to FIG. 14, the procedure is entered in step 400 and begins in step 402, attempting to obtain data items from each of the streams identified by the requesting process. Step 40
4, it is checked whether the data item has been found.

もしそうであれば、手順はステップ406に進み、所定
に仲裁機能に基づいて1つのデータ項目が選択されるに
の機能は、例えば、成る流れからのデータ項目を別の流
れからのものに優先して選択することができる。この手
順では、選択されたデータ項目がステップ408におい
て呼び出しプロセスへ供給され、410においてこれに
制御が移行される。ステップ402においてデータ項目
が得られない場合には、手順がステップ412へ進み、
インデックス値と各呼び出しプロセスの識別が各関連す
る流れの保留テーブルに加えられる。
If so, the procedure proceeds to step 406 in which one data item is selected based on a predetermined arbitration function, e.g., prioritizing data items from one stream over another. and can be selected. In this procedure, the selected data item is provided to the calling process at step 408 and control is transferred to it at 410. If the data item is not available in step 402, the procedure continues to step 412;
The index value and identification of each calling process are added to each associated flow's reservation table.

更に、各テーブルの入力は、要求が保留となっている他
の各々の流れの識別を含む。その後、手順は、要求した
データ項目が得られて上記したように手順を再開するま
で、ステップ41・1において動作を保留する。次いで
、手順はステップ11Q2へ復帰し、そのとき得られる
データ項目を得、前記したようにステップ406へと続
く。
Additionally, each table entry includes the identification of each other stream for which a request is pending. The procedure then suspends operation in step 41.1 until the requested data item is obtained and the procedure resumes as described above. The procedure then returns to step 11Q2 to obtain the then available data item and continues to step 406 as described above.

第15図は、流れを介して受け取った最新の値を読み取
る手順を示している。ステップ41Gにおいてこの手順
に入り、ステップ418において流れの長さがゼロであ
るかどうかチェックされる。もしそうでなければ、ステ
ップ420において流れの長さに等しいインデックス値
に対するデータ項目が得られ、これが呼び出しプロセス
に送られてから、ステップ422において制御が復帰さ
れる。さもなくば、ステップ424において、データ項
目が得られないという指示が送られた後に、ステップ4
26において制御が復帰する。
Figure 15 shows the procedure for reading the latest value received via the flow. The procedure is entered in step 41G and checked in step 418 to see if the stream length is zero. If not, a data item for an index value equal to the length of the stream is obtained in step 420 and sent to the calling process before control is returned in step 422. Otherwise, after an indication is sent in step 424 that the data item is not available, step 4
Control is returned at 26.

他の読み取る機能を設けることができる。その1つの考
え方は、最も最近得られたデータ項目に続く次のデータ
項目を同じ出力を経て読み取るという手順である。これ
は、単に、最後のデータ項目を供給した時のインデック
ス値の記録が記憶装置に出力に保持されることを必要と
するに過ぎない。もう1つの考え方は、データ項目が読
み取られない状態で出力をセットすべきところのインデ
ックス値を指定する移動コマンドである。これは、次の
項目の読み取り動作を使用する用意をする際に有用であ
る。
Other reading functions can be provided. One idea is to read the next data item following the most recently obtained data item through the same output. This simply requires that a record of the index value at the time the last data item was provided be kept at the output in storage. Another idea is a move command that specifies the index value where the output should be set without the data item being read. This is useful when preparing to use the next item's read operation.

同じデータ項目流の中に隣接するインデックス値を有し
ている1組のデータ項目は、その組の中の第1の項目の
インデックス値と必要な項目の数とを定めることによっ
て要求することができるが、その組の全ての項目が得ら
れるまでデータ項目は供給されない。多数の異なる流れ
からデータ項目を要求することもできる。但し、この場
合は、各流れに対する実際のインデックス値が共通の基
準インデックス値に対して成る所定の関係(これは、各
流れごとに異なる)を有するものとする。
A set of data items having adjacent index values in the same data item stream may be requested by determining the index value of the first item in the set and the number of items required. Yes, but no data items are provided until all items in the set are obtained. Data items can also be requested from many different streams. However, in this case, it is assumed that the actual index value for each flow has a predetermined relationship (which differs for each flow) with respect to a common reference index value.

これは、例えば、異なったセンサから同時に発生された
対応するデータ項目の検索を容易にする。
This facilitates, for example, retrieval of corresponding data items generated simultaneously from different sensors.

本発明のデータプロセッサがプロセスより少数のCPU
で実施された場合、特に、単一のCPUで実施された場
合には、種々のプロセス間でのCPUリソースの割り当
てを調整するためにスーパーバイザプログラム即ちスケ
ジュールプログラムが必要とされる。このようなスケジ
ュールプログラムは、直ちに走らせることのできるプロ
セスの第1リストと、データ項目を待機して保留される
プロセスの第2リストとを維持するものに過ぎない。各
プロセスには、成る優先順位定格が指定され、これによ
り、スケジュールプログラムは、第1リストのどのプロ
セスをそのリストの他のプロセスより優先的に実行すべ
きかを決定することができる。プロセスがデータ項目を
要求する時には、上記したように読み取り手順を呼び出
すことによってこれを要求する。データ項目が得られる
場合には、これが直ちに供給され、プロセスの実行が続
けられる。さもなくば、読み取り手7項がそれ自体の実
行を保留し、それ故、呼び出しプロセスを保留する。プ
ロセスが保留されると、そのプロセスが第1リストから
第2リストへ移行される−とにt1゛ろ、同様L=、す
求され、たデータr百[1を胛き込む手順によってプロ
セスが再開されると、そのプロセスが第1リストに戻さ
れる。実行しているプロセスが第2リストへ移行する時
には、スケジュールプ凸グラムが第1リストを走査し5
優先順位定格に基づいて実行すべき次のプロセスを識別
する。2つ以上のCPUが使用される場合には、各CP
Uがプロセスを実行しそしてその完了時にプロセスの第
1リストで待機している最も優先順位の高いプロセスの
実行を開始する。
The data processor of the present invention has fewer CPUs than processes.
When implemented on a computer, especially when implemented on a single CPU, a supervisor or scheduler program is required to coordinate the allocation of CPU resources among the various processes. Such schedule programs simply maintain a first list of processes that are ready to run and a second list of processes that are held pending waiting for data items. Each process is assigned a priority rating, which allows the scheduling program to determine which processes in the first list should be executed in preference to other processes in that list. When a process requests a data item, it does so by invoking a read procedure as described above. If a data item is available, it is provided immediately and execution of the process continues. Otherwise, the reader 7 suspends its own execution and therefore suspends the calling process. When a process is suspended, it is moved from the first list to the second list. When restarted, the process is returned to the first list. When the running process moves to the second list, the schedule program scans the first list and
Identify the next process to run based on priority rating. If two or more CPUs are used, each
U executes a process and upon its completion begins execution of the highest priority process waiting in the first list of processes.

本発明によるデータ処理方法及びシステムについて以上
に詳細に説明した9本発明の特定の実施例を説明したが
、本発明がこれに限定されるものではない。又1本発明
は、逐次に即ち直列に発生するデータ項目の処理に関し
て説明した。適当なバッファ技術を用いれば、並列に、
受け取ったデータ項目でも容易に直列のものに変えられ
ることが明らかである。又、そのシーケンスは、必ずし
も時間に基づくシーケンスでなくてもよい。全てのプロ
セスは、少なくとも1つの流れからデータ項「1を受け
取るキ)のとして示したが、データ項目を受け取らずに
、データ項目を発生するのみであって、例えば、時間及
び日付情報や波形の表示を供給するようなプロセスを考
えることもできる。
Although nine specific embodiments of the present invention have been described above in detail regarding the data processing method and system according to the present invention, the present invention is not limited thereto. The present invention has also been described with respect to processing data items that occur sequentially or serially. With appropriate buffering techniques, in parallel,
It is clear that even the data items received can easily be converted into serial ones. Also, the sequence does not necessarily have to be a time-based sequence. Although all processes are shown as receiving a data item ``1'' from at least one stream, they do not receive data items; they only generate data items, such as time and date information or waveform information. It is also possible to think of a process that provides an indication.

それ故、特許請求の範囲の精神及び範囲内で本発明に対
して種々の変更がなされることが当業者に明らかであろ
う。
Therefore, it will be apparent to those skilled in the art that various modifications may be made to the invention within the spirit and scope of the claims.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明を便利に利用できる掘削孔によるロギ
ング作業を示す概略図、 第2図は、本発明によるデータプロセッサの第1実施例
を示すブロック図、 第3図は、第2図のデータプロセッサの一部分を形成す
る中央処理ユニットの動作を説明するフローチャート、 第4図は、本発明を実施するのに用いる記憶装置のブロ
ック図、 第5図は、本発明を実施するのに用いる別の記憶装置の
ブロック図、 第6図は、本発明によるデータプロセッサの第2実施例
を示すブロック図、 第7図ないし第9図は、第6図のデータプロセッサの一
部分を形成する中央処理ユニットの動作を説明するフロ
ーチャート、 第10図は、第2図及び第6図に示されたデータプロセ
ッサの別の実施を示すブロック図、そして 第11図ないし第15図は、汎用コンピュータをプログ
ラミングすることにより本発明のデータプロセッサを実
施するのに有用な手順を示すフローチャートである。 10・・・ロギング器具即ちゾンデ 12・・・外装条導線ケーブル 14・・・掘削孔  16・・・地層 20・・・滑車   22・・・深さゲージ24・・・
地表装置 26・・・データプロセッサ 30・・・データプロセッサ 32−36・・・CPU 4o、42.44・・・入力ライン 52・・・データ記憶部 54−64・・・記憶装置 図面の浄in(内容に変更なし) 162  156   Fig・4 Fig、8 Fig、9 σ398 1.事件の表示  昭和61年特許願第193865号
2、発明の名称    データ処理システム及び方法3
、補正をする者 事件との関係  出願人 4、代理人 願書に最初に添付した図面の浄書・別紙のとおり(内容
に変更4L)
FIG. 1 is a schematic diagram showing a logging operation using a borehole in which the present invention can be conveniently utilized; FIG. 2 is a block diagram showing a first embodiment of a data processor according to the present invention; FIG. FIG. 4 is a block diagram of a storage device used in implementing the present invention; FIG. 5 is a block diagram of a storage device used in implementing the present invention; FIG. FIG. 6 is a block diagram showing a second embodiment of a data processor according to the invention; FIGS. 7 to 9 are block diagrams of a central processing unit forming part of the data processor of FIG. 10 is a block diagram illustrating an alternative implementation of the data processor shown in FIGS. 2 and 6; and FIGS. 11-15 are flowcharts illustrating the operation of the unit; FIG. 1 is a flowchart illustrating procedures useful in implementing the data processor of the present invention. DESCRIPTION OF SYMBOLS 10...Logging equipment or sonde 12...Sheathed wire cable 14...Drilling hole 16...Geological formation 20...Pulley 22...Depth gauge 24...
Surface equipment 26...Data processor 30...Data processors 32-36...CPU 4o, 42.44...Input line 52...Data storage section 54-64...Storage device Drawing cleaning (No change in content) 162 156 Fig・4 Fig, 8 Fig, 9 σ398 1. Indication of case Patent application No. 193865 of 1985 2, title of invention Data processing system and method 3
, Relationship with the case of the person making the amendment: Applicant 4, engraving of the drawing originally attached to the representative application, as shown in the attached sheet (changed in content 4L)

Claims (18)

【特許請求の範囲】[Claims] (1)逐次に発生する処理すべきデータ項目を受け取る
入力手段と、 複数のプロセスを同時に実行して更に別の逐次に発生す
るデータ項目を作成するプロセッサ手段と、 各データ項目のソース及びその同じソースから受け取っ
た互いに他の項目に対する逐次位置に基づいてデータ項
目を各々の独特のインデックス値と関連させる手段と、 上記データ項目を記憶するデータ記憶手段と、上記記憶
手段からの選択されたデータ項目であって、その項目の
ソースから受け取ったデータ項目数に対応するインデッ
クス値を有しているようなデータ項目を、プロセスの実
行に用いるため上記プロセッサ手段へ供給する手段と、 上記処理の実行から得たデータ項目を供給する出力手段
とを具備することを特徴とするデータ処理システム。
(1) input means for receiving sequentially occurring data items to be processed; processor means for executing multiple processes simultaneously to produce further sequentially occurring data items; and the source of each data item and the same. means for associating data items with each unique index value based on sequential positions relative to each other received from a source; data storage means for storing said data items; and selected data items from said storage means. means for supplying to said processor means for use in executing a process, said data item having an index value corresponding to the number of data items received from the source of said item; and output means for supplying the obtained data items.
(2)逐次に発生する処理すべきデータ項目を受け取る
入力手段と、 複数のプロセスを同時に実行して更に別の逐次に発生す
るデータ項目を作成するプロセッサ手段と、 各データ項目のソース及びその同じソースから受け取っ
た互いに他の項目に対する逐次位置に基づいてデータ項
目を各々の独特のインデックス値と関連させる手段と、 上記データ項目を記憶するデータ記憶手段と、上記記憶
手段からの選択されたデータ項目が特定の時間周期内に
得られる場合にはこのデータ項目をプロセスの実行に用
いるため上記プロセッサ手段へ供給しそして上記データ
項目が上記時間周期内に得られない場合にはこのデータ
項目が得られないという指示を供給する手段とを具備し
、上記データ項目はそのプロセスの実行中に決定された
関連インデックス値に基づいて選択されるものであり、 更に、上記プロセスの実行から得たデータ項目を供給す
る出力手段を具備することを特徴とするデータ処理シス
テム。
(2) input means for receiving sequentially occurring data items to be processed; processor means for simultaneously executing a plurality of processes to produce further sequentially occurring data items; and a source of each data item and the same. means for associating data items with each unique index value based on sequential positions relative to each other received from a source; data storage means for storing said data items; and selected data items from said storage means. If the data item is obtained within the specified time period, this data item is provided to the processor means for use in executing the process; and if the data item is not obtained within the specified time period, the data item is obtained. means for providing an indication that the data item is selected based on an associated index value determined during execution of the process; A data processing system characterized by comprising an output means for supplying.
(3)上記データ記憶手段は、記憶されたデータ項目の
変更を防ぐように構成される特許請求の範囲第1項又は
第2項に記載のシステム。
(3) A system according to claim 1 or 2, wherein the data storage means is configured to prevent modification of stored data items.
(4)上記データ記憶手段は、1回書き込み式の記憶装
置である特許請求の範囲第3項に記載のシステム。
(4) The system according to claim 3, wherein the data storage means is a one-time write type storage device.
(5)上記データ項目は、関連インデックス値に基づい
て上記記憶手段のみを通して上記プロセッサ手段へ供給
される特許請求の範囲の前記各項いずれかに記載のシス
テム。
5. A system as claimed in any one of the preceding claims, wherein said data items are provided to said processor means solely through said storage means based on associated index values.
(6)上記供給手段は、一方向のみに変化するインデッ
クス値に基づいてデータ項目を供給するように構成され
る特許請求の範囲の前記各項いずれかに記載のシステム
(6) A system according to any of the preceding claims, wherein the supply means is arranged to supply data items based on index values that vary in only one direction.
(7)上記プロセッサ手段は、上記プロセスを時分割ベ
ースで実行するように構成された単一の処理ユニットを
含む特許請求の範囲の前記各項いずれかに記載のシステ
ム。
7. A system according to any preceding claim, wherein the processor means comprises a single processing unit configured to execute the process on a time-sharing basis.
(8)上記プロセッサ手段は、複数の処理ユニットを含
む特許請求の範囲第1項ないし第6項のいずれかに記載
のシステム。
(8) The system according to any one of claims 1 to 6, wherein the processor means includes a plurality of processing units.
(9)上記処理ユニットは、プロセス数よりも少数であ
り、上記処理ユニットは、各プロセスに指定された所定
の優先順位に基づいて上記プロセスを実行するように構
成される特許請求の範囲第8項に記載のシステム。
(9) The processing units are smaller in number than the number of processes, and the processing units are configured to execute the processes based on a predetermined priority assigned to each process. The system described in Section.
(10)逐次に発生する処理すべきデータ項目を受け取
り、 複数のプロセスを同時に実行して更に別の逐次に発生す
るデータ項目を作成し、 各データ項目のソース及びその同じソースから受け取っ
た互いに他の項目に対する逐次位置に基づいてデータ項
目を各々の独特のインデックス値と関連させ、 上記データ項目を記憶し、そして 選択された記憶データ項目であって、その項目のソース
から受け取ったデータ項目数に対応するインデックス値
を有しているようなデータ項目をプロセスの実行に用い
るために供給することを特徴とするデータ処理方法。
(10) Receive sequential data items to be processed, run multiple processes simultaneously to create further sequential data items, and process the source of each data item and each other received from the same source. associate a data item with each unique index value based on its sequential position with respect to the item, store said data item, and store the selected stored data item in accordance with the number of data items received from the source of the item. A data processing method characterized in that data items having corresponding index values are provided for use in the execution of a process.
(11)逐次に発生する処理すべきデータ項目を受け取
り、 複数のプロセスを同時に実行して更に別の逐次に発生す
るデータ項目を作成し。 各データ項目のソース及びその同じソースから受け取っ
た互いに他の項目に対する逐次位置に基づいてデータ項
目を各々の独特のインデックス値と関連させ、 上記データ項目を記憶し、そして 選択された記憶データ項目が特定の時間周期内に得られ
る場合にはこのデータ項目をプロセスの実行に用いるた
めに供給しそして上記データ項目が上記時間周期内に得
られない場合にはこのデータ項目が得られないという指
示を供給し、上記データ項目は、そのプロセスの実行中
に決定された関連インデックス値に基づいて選択される
ことを特徴とするデータ処理方法。
(11) Receive a sequentially occurring data item to be processed, and create another sequentially occurring data item by executing multiple processes simultaneously. associating data items with each unique index value based on the source of each data item and its sequential position relative to each other received from the same source; storing said data items; and storing the selected stored data items. providing this data item for use in the execution of the process if it is obtained within a particular time period, and providing an indication that this data item is not available if said data item is not obtained within said time period; A data processing method, characterized in that the data items are selected based on associated index values determined during execution of the process.
(12)記憶されたデータ項目の変更は防止される特許
請求の範囲第10項又は第11項に記載の方法。
(12) A method according to claim 10 or 11, in which modification of stored data items is prevented.
(13)上記データ項目は、1回書き込み式の記憶装置
に記憶される特許請求の範囲第12項に記載の方法。
(13) The method according to claim 12, wherein the data item is stored in a write-once storage device.
(14)記憶されたデータ項目のみがその関連インデッ
クス値に基づいてプロセスの実行に用いるように供給さ
れる特許請求の範囲第10項ないし第13項に記載の方
法。
14. The method of claims 10-13, wherein only stored data items are provided for use in executing a process based on their associated index values.
(15)上記データ項目は、一方向のみに変化するイン
デックス値に基づいて供給される特許請求の範囲第10
項ないし第14項に記載の方法。
(15) The data item is provided based on an index value that changes only in one direction.
The method described in Items 1 to 14.
(16)上記処理は、1つの処理ユニットにより時分割
ベースで実行される特許請求の範囲第10項ないし第1
5項に記載の方法。
(16) The above processing is executed on a time-sharing basis by one processing unit.
The method described in Section 5.
(17)上記プロセスは、複数の処理ユニットで実行さ
れる特許請求の範囲第10項ないし第15項に記載の方
法。
(17) The method according to any one of claims 10 to 15, wherein the process is executed by a plurality of processing units.
(18)上記処理ユニットは、プロセスの数よりも少数
であり、上記プロセスは、その各々に指定された所定の
優先順位に基づいて実行される特許請求の範囲第17項
に記載の方法。
(18) The method of claim 17, wherein the processing units are fewer than the number of processes, and the processes are executed based on a predetermined priority assigned to each of them.
JP19386586A 1986-08-19 1986-08-19 Data processing system and method Expired - Lifetime JP2656474B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19386586A JP2656474B2 (en) 1986-08-19 1986-08-19 Data processing system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19386586A JP2656474B2 (en) 1986-08-19 1986-08-19 Data processing system and method

Publications (2)

Publication Number Publication Date
JPS6349986A true JPS6349986A (en) 1988-03-02
JP2656474B2 JP2656474B2 (en) 1997-09-24

Family

ID=16315039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19386586A Expired - Lifetime JP2656474B2 (en) 1986-08-19 1986-08-19 Data processing system and method

Country Status (1)

Country Link
JP (1) JP2656474B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55989A (en) * 1979-03-28 1980-01-07 Hitachi Ltd Ingathering unit for check number
JPS5641341U (en) * 1979-09-07 1981-04-16
JPS58223840A (en) * 1982-06-23 1983-12-26 Fujitsu Ltd Data base controlling system of measurement and control system
JPS61119764U (en) * 1985-01-16 1986-07-28

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4153932A (en) 1974-03-29 1979-05-08 Massachusetts Institute Of Technology Data processing apparatus for highly parallel execution of stored programs
US4128882A (en) 1976-08-19 1978-12-05 Massachusetts Institute Of Technology Packet memory system with hierarchical structure

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55989A (en) * 1979-03-28 1980-01-07 Hitachi Ltd Ingathering unit for check number
JPS5641341U (en) * 1979-09-07 1981-04-16
JPS58223840A (en) * 1982-06-23 1983-12-26 Fujitsu Ltd Data base controlling system of measurement and control system
JPS61119764U (en) * 1985-01-16 1986-07-28

Also Published As

Publication number Publication date
JP2656474B2 (en) 1997-09-24

Similar Documents

Publication Publication Date Title
EP0435499B1 (en) Method and apparatus for software monitoring and development
US7779016B2 (en) Parallel execution of operations for a partitioned binary radix tree on a parallel computer
US5204956A (en) Method and apparatus for monitoring the execution time of a computer program
EP0485507B1 (en) Modular input/output system for supercomputers
JPH0230536B2 (en)
JPH076115A (en) Control method of hardware data movement function by software user of data- processing system, synchronization method of operation between processors and method for giving of plurality of device control blocks
US5204965A (en) Data processing system using stream stores
US4348721A (en) System for selectively addressing nested link return addresses in a microcontroller
EP0214037B1 (en) System and method for data processing
JPS6349986A (en) Data processing system and method
Hellerman et al. Throughput analysis of some idealized input, output, and compute overlap configurations
US4339796A (en) System for generating a plurality of different addresses for a working memory of a microcontroller during execution of certain instructions
EP0073081B1 (en) Data processing system having a control device for controlling an intermediate memory during a bulk data transport between a source device and a destination device
JPH0738178B2 (en) Device information interface
US5926840A (en) Out-of-order fetching
JPH04120652A (en) Parallel processors
JPS5953565B2 (en) Direct memory access control device
JP2531209B2 (en) Channel device
JPH03127237A (en) Performance measurement system for information processor
JPH0246967B2 (en)
JP2001188715A (en) Access device and access method and data transferring device
JPS58203532A (en) Circuit for generating timing pulse
Dean et al. Revision of the Detection/Analysis System at SDAC
JP2003057305A (en) Testing device for semiconductor
JPH05143420A (en) System for comparing magnetic tapes between hosts