JP2656474B2 - Data processing system and method - Google Patents

Data processing system and method

Info

Publication number
JP2656474B2
JP2656474B2 JP19386586A JP19386586A JP2656474B2 JP 2656474 B2 JP2656474 B2 JP 2656474B2 JP 19386586 A JP19386586 A JP 19386586A JP 19386586 A JP19386586 A JP 19386586A JP 2656474 B2 JP2656474 B2 JP 2656474B2
Authority
JP
Japan
Prior art keywords
data
storage device
data item
sensor
processing
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.)
Expired - Lifetime
Application number
JP19386586A
Other languages
Japanese (ja)
Other versions
JPS6349986A (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.)
SHURANBAAGAA OOBAASHIIZU SA
Original Assignee
SHURANBAAGAA OOBAASHIIZU 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 SHURANBAAGAA OOBAASHIIZU SA filed Critical SHURANBAAGAA OOBAASHIIZU 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)

Description

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

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

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

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

発明が解決しようとする問題点 ここで特に問題となることは、コンピュータがその処
理の時間及び時間巾に本質的に拘りのないデータ処理機
能を果たさねばならないと共に、処理の時間及び時間巾
によって影響されるような処理制御機能も果たさねばな
らないことである。従って、例えば、ゾンデから得たデ
ータをフーリエ変換によって処理することは、時間に拘
りないタスクであり、処理の時間及び時間巾に拘りなく
常に同じ組のデータ値から変換出力としての同じ結果が
得られる。これに対し、ゾンデからのデータの収集は、
時間に基づくものであり、一連の受信データ項目の最後
のものを調べることによって見い出す実際の値(これ
は、ゾンデに送るべき次の制御信号に影響する)は、デ
ータ項目が掘削孔を上方に送られる速度と、ゾンデから
の一連のデータ項目が検査される速度とに基づくもので
ある。掘削孔に沿って上下される装置の処理速度に変化
があると、結果に影響を及ぼすことになる。更に、掘削
孔を上方に信号送信する速度は、典型的に、ゾンデの特
性に主として基づくものであり、従って、地表での各デ
ータ項目の受信時間を地表のコンピュータ装置によって
制御することはできない。同様に、ゾンデの特性として
は、最適な動作を確保するに充分な速度で掘削孔に沿っ
て下方にコマンドを送ることが要求される。条件の変化
に応じてゾンデの動作を敏速に変えるためには、データ
のロスや欠陥を回避するように、時間に拘りない動作が
これと調時して生じる時間に基づく機能を妨げないよう
にしなければならない。又、同様に、時間に基づく機能
が時間に拘りのない処理にエラーを招くことがないよう
にすることも重要である。これらの特性は、ハードウェ
アのシステム変更(例えば、プロセッサのクロック速度
の変更)やソフトウェアのシステム変更(例えば、プロ
グラムモジュールの追加)に拘りなく確保しなければな
らない。
Problems to be Solved by the Invention What is particularly problematic here is that the computer must perform a data processing function that is essentially independent of the processing time and duration, and is affected by the processing time and duration. That is, the processing control function to be performed must also be performed. Thus, for example, processing the data obtained from a sonde by Fourier transform is a time-independent task, and the same result as the converted output is always obtained from the same set of data values regardless of the processing time and duration. Can be In contrast, collecting data from sondes
Based on time, the actual value found by examining the last of a series of received data items (which affects the next control signal to be sent to the sonde) is determined by the It is based on the speed at which it is sent and the speed at which a series of data items from the sonde are examined. Changes in the processing speed of the equipment being raised and lowered along the wellbore will affect the results. Furthermore, the rate at which the drilling hole is signaled upwards is typically based primarily on the characteristics of the sound, and therefore the time of receipt of each data item at the surface cannot be controlled by the surface computing device. Similarly, the characteristics of the sonde require that commands be sent down the borehole at a speed sufficient to ensure optimal operation. In order to quickly change the sound of the sonde in response to changing conditions, ensure that timeless operations do not interfere with the time-based functions that occur in time with it, so as to avoid data loss and defects. There must be. Similarly, it is important to ensure that time-based functions do not cause errors in time-independent processing. These characteristics must be ensured regardless of a hardware system change (for example, a change in the clock speed of the processor) or a software system change (for example, the addition of a program module).

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

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

コンピュータによって実行される機能を細分化したり
多プロセッサシステムの動作を整合したりするための種
々の手段が知られている。例えば、インフォメーション
・プロセッシグ77、インターナショナル・フェデレーシ
ョン・オブ・インフォメーション・プロセッシング・ソ
サエティ(Information Processing 77,International
Federation of Information Processing Societies)
(1977年)第993−998頁に掲載されたジー・カーン(G.
Kahn)氏及びデー・ビー・マックィーン(D.B.Mac Quee
n)氏の「並列処理のコルーチン及びネットワーク(Cor
outines and networks of parallel process)」と題す
る論文には、同時に実行でき且つ「チャンネル」を介し
て互いに連絡し合うような多数のプロセスを行なうシス
テムが開示されている。これらのチャンネルは、上記プ
ロセスから一方向のみに情報を搬送する先入れ先出しバ
ッファとして働き、データを要求するプロセスへデータ
を発生する。データ項目を要求するプロセスは、一連の
当該項目を発生するプロセスにこれを接続するチャンネ
ルをアクセスすることができ、チャンネルに記憶された
シーケンスで次に続く項目を受け取る。このようなシス
テムは、いわゆるデータ流アーキテクチャの一例であ
る。
Various means are known for subdividing the functions performed by a computer and for coordinating the operation of a multiprocessor system. For example, Information Processing 77, International Federation of Information Processing Society (Information Processing 77, International
Federation of Information Processing Societies)
(1977) G. Kern (G.
Kahn and DBMac Quee
n) “Parallel processing coroutines and networks (Cor
The paper entitled "Outines and Networks of Parallel Process" discloses a system that performs multiple processes that can be run 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 and generate data to the process requesting the data. A process requesting a data item has access to the channel connecting it to the process that generates the sequence of that item, and receives the next item in the sequence stored in the channel. Such a system is an example of a so-called data flow architecture.

別の形式のデータ流システムが、1976年のプロシーデ
ィングス・オブ・ザ・1976インターナショナル・コンフ
ェレンス・オン・パラレル・プロセッシング(Proceedi
ngs of the International Conference on parallel Pr
ocessing)の第100−105頁に掲載されたデー・ピー・ミ
スナス(D.P.Misunas)氏の「データ流プロセッサの性
能分析(Performance analysis of a deta−flow proce
ssor)」と題する論文及びバイト、マクグローヒル(By
te,McGraw−Hill)第10巻、第5号(1985年5月)の第2
01−214頁に掲載されたダブリュー・ジー・ペースマン
(W.G.Paseman)による「データ流の実際の場合への適
用(Applying data flow in the real world)」と題す
る論文に記載されている。このようなシステムは、一定
サイズのデータパケットによってプロセスとプロセスと
の間を連絡し、その機能を実行することが必要とされる
全てのデータ項目が完全に得られるまでプロセスは実行
されない。必要な全てのデータ項目が得られると、プロ
セスの実行が開始され、このときプロセスを実行するか
どうか又どの程度まで実行するかについての制御は必要
とされない。同様のデータ流システムが、コーニッシュ
(Cornish)氏等の米国特許第4,197,589号に開示されて
おり、同時タスク及び命令プロセッサがギリランド(Gi
lliland)氏等の米国特許第4,229,790号に開示されてい
る。
Another form of data flow system is the 1976 Proceedings of the 1976 International Conference on Parallel Processing (Proceedi
ngs of the International Conference on parallel Pr
Ocessing, pp. 100-105, by DP Misunas, "Performance analysis of a data-flow process.
ssor) and a part-time job, McGraw-Hill (By
te, McGraw-Hill) Volume 10, Issue 5 (May 1985)
It is described in a paper by WGPaseman entitled "Applying data flow in the real world" published on pages 01-214. Such systems communicate between processes by means of fixed size data packets, and the process is not performed until all the data items required to perform its function are completely obtained. When all the necessary data items have been obtained, the execution of the process is started, at which time no control is required as to whether or not the process is to be executed. A similar data flow system is disclosed in U.S. Pat. No. 4,197,589 to Cornish et al.
No. 4,229,790 to Lliland et al.

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

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

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

本発明の一つの特徴によれば、センサの物理的環境を
示し且つセンサ制御のために使用されるセンサデータを
含む、センサから得られたデータを処理する方法であ
り、 前記センサデータの流れのみを受信し且つ記憶するセ
ンサデータ記憶装置に、前記センサデータを、逐次のデ
ータ項目の流れとして、書き込み、 センサデータの評価と、この評価の結果に従い且つデ
ータが所定の時間周期内にセンサから得られない場合、
操作を終了することから成る時間限界制御とから成る第
1の処理であって、 (a) 最も最近受信した関心あるセンサデータ項目を
センサデータ記憶装置から読み出し、 (b) 前記関心あるセンサデータを使用して第1の参
照値を決め、 (c) 第1の参照値の流れのみを受信し且つ記憶する
第1の参照値記憶装置に、前記第1の参照値を、逐次の
データ項目の流れの形態で書き込み、そして (d) 別のセンサデータに対して工程(a)〜(c)
を順に繰り返す、各副工程から成る第1の処理を達成
し、 前記センサデータを処理するための第2の処理であっ
て、 (a) 関心のあるセンサデータ項目を前記センサデー
タ記憶装置から逐次読み出し、 (b) 前記関心のあるセンサデータ項目を使用して第
2の参照値を決め、 (c) 第2の参照値の流れのみを受信し且つ記憶する
第2の参照値記憶装置に、第2の参照値を、逐次のデー
タ項目の流れの形態で書き込み、そして (d) 別のセンサデータに対して工程(a)〜(c)
を順に繰り返す、各副工程から成る第2の処理を達成
し、 第1及び第2の処理は同時処理であり、第1及び第2
の処理の達成の割合は、それぞれ第2又は第1の処理に
おいて決められた参照値を変更しない、 データ処理方法が提供される。
According to one aspect of the present invention, there is provided a method of processing data obtained from a sensor, including sensor data used to control the sensor and indicating the physical environment of the sensor, wherein only the flow of the sensor data is provided. In the sensor data storage device for receiving and storing the sensor data, the sensor data is written as a sequential data item stream, the sensor data is evaluated, and the data is obtained from the sensor according to the result of the evaluation and within a predetermined time period. If not,
A time limit control comprising ending the operation, comprising: (a) reading the most recently received sensor data item of interest from a sensor data storage device; and (b) retrieving the sensor data item of interest. Determining a first reference value using: (c) storing the first reference value in a first reference value storage device that receives and stores only the first reference value stream; Writing in flow form, and (d) steps (a)-(c) for different sensor data
A second process for processing the sensor data, wherein a first process consisting of sub-processes is sequentially performed, wherein (a) a sensor data item of interest is sequentially read from the sensor data storage device. (B) determining a second reference value using the sensor data item of interest; (c) in a second reference value storage device for receiving and storing only the second reference value stream; Writing a second reference value in the form of a sequential stream of data items; and (d) performing steps (a)-(c) for another sensor data.
Are sequentially repeated to achieve a second process including sub-processes. The first and second processes are simultaneous processes, and the first and second processes are performed simultaneously.
The data processing method is provided in which the percentage of achievement of the processing does not change the reference value determined in the second or first processing, respectively.

本発明の別の特徴によれば、センサの物理的環境を示
し且つセンサデータのために使用されるセンサデータを
含む逐次のデータ項目の流れを処理するためのシステム
であり、 前記逐次のデータ項目を取得するための第1の取得手
段、 前記第1の取得するための手段に結合し、第1のデー
タの流れからのみデータ項目を受信し且つ記憶するため
の第1の記憶手段、 センサデータの評価とこの評価の結果に従う時間限界
センサ制御とからなる第1の処理、及びセンサデータの
逐次処理を行う第2の処理を同時に達成する処理手段で
あり、前記第1の記憶手段からデータ項目を読み出すこ
とは不可能である処理手段、 前記処理手段に結合され、前記第1の処理と関係して
処理されたデータ項目を受信し、他に処理に関係するデ
ータ項目を受信することは不可能である第2の記憶手
段、及び 前記処理手段に結合され、前記第2の処理に関係され
て処理されたデータ項目を受信し、他の処理と関係する
データ項目を受信することは不可能である第3の記憶手
段から成るシステムが提供される。
According to another aspect of the invention, there is provided a system for processing a sequence of sequential data items that includes a sensor data used for sensor data and that indicates a physical environment of the sensor, the sequential data item comprising: First acquiring means for acquiring the first data means; first storing means for receiving and storing data items only from the first data stream; sensor data And a time limit sensor control according to the result of the evaluation, and a second process for sequentially processing the sensor data. Processing means that are not readable, coupled to the processing means for receiving data items processed in connection with the first processing and receiving data items related to other processing Second storage means, which is not capable of receiving the data items processed in connection with the second processing, and receiving the data items related to other processing. A system comprising a third storage means, which is impossible.

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

本発明によるデータ処理システム及び方法は、特定の
形式のデータ処理に限定されるものではない。然し乍
ら、これらは、測定作業から得たデータを演算処理して
更に別の情報を導出するような時間に拘りない機能と、
測定装置の実時間制御のような時間に基づく機能との両
方を実施しなければならないようなプロセスの同時実行
に効果的に用いることができる。これら両方の種類の機
能を含む一例は、第1図に概略的に示された掘削孔によ
るロギング器具の動作である。
The data processing system and method according to the present invention are not limited to a particular type of data processing. However, these are time-independent functions that operate on data obtained from the measurement work to derive further information,
It can be used effectively for simultaneous execution of processes where both time-based functions, such as real-time control of the measuring device, must be performed. One example involving both of these types of functions is the operation of a logging instrument with a wellbore shown schematically in FIG.

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

器具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 generate electrical signals related to the required parameters, which signals are suitably conditioned by processing and interface circuitry within the sonde 10 and are routed upwards via cable 123 to the surface equipment 24. Apparatus 24 includes a data processor 26, which typically receives, decodes, amplifies, and outputs these signals to a chart and / or magnetic tape recorder for a depth signal generated by depth gauge 22. Record as a function. In addition, device 24 processes the data represented by these signals and generates an indication of the required formation parameters (which are also recorded). By further processing these and other signals from the sound 10, the surface device 24 can monitor the operation of the sound 10 and, for example,
A signal for synchronizing the operation of the circuit components and changing the gain of the amplifier is generated, and the sound
Can be sent down to control.

ゾンデ10及びこのゾンデ10と地表装置24との間で信号
を通信する装置の構造及び動作の詳細は、本発明の部分
を構成するものではなく、当業者に明らかであり、ここ
で説明する必要はないと考えられる。同様に、ゾンデ10
から受け取ったデータを処理して地層パラメータの値を
導出したりゾンデ10に送るべき制御信号を導出したりす
る特定のアルゴリズムも本発明の部分を構成せず、従っ
て、これらについては説明しない。
The details of the structure and operation of the sonde 10 and the device that communicates signals between the sonde 10 and the ground surface device 24 do not form a part of the present invention and will be apparent to those skilled in the art and need to be described here. It is thought that there is no. Similarly, sonde 10
The specific algorithms for processing the data received from the system to derive the values of the formation parameters or to derive the control signals to be sent to the sonde 10 also do not form part of the present invention and will not be described.

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

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

これら2つの形式の処理は互いに競合しがちである。
パラメータ値を正確に導出するには相当に長い処理時間
がかゝり、コマンド信号の発生に遅延や不正確さを招い
たり及び/又は掘削孔を上方に送られるデータを検出及
び記録し損なったりすることがある。同様に、データの
受信及びコマンド信号の発生は、更に別の計算を必要と
するようなデータ値を変更することにより、受信データ
の評価を妨げることがある。更に、プログラムが正しく
機能している時でも、異なった速度で作動する別の種類
のコンピュータシステムへ移行する際や、例えば、1つ
以上の新たなプログラムモジュールを追加するように変
更した後には、正しく機能し続けることができない。こ
のようなタスクを行なうと共にこれらの問題を軽減する
ように容易に効果的及び適切にプログラムできるデータ
プロセッサを操作するシステム及び方法を、第2図ない
し第15図を参照して説明する。
These two types of processing tend to compete with each other.
Accurate derivation of parameter values requires a significant amount of processing time, causing delays and inaccuracies in the generation of command signals, and / or failing to detect and record data sent upholes. May be. Similarly, receiving data and generating command signals may interfere with the evaluation of the received data by altering the data values such that further calculations are required. In addition, even when the program is functioning properly, when transitioning to another type of computer system that operates at a different speed, or after changing, for example, to add one or more new program modules, It cannot continue to function properly. A system and method for operating a data processor that can easily and effectively be programmed to perform such tasks and alleviate these problems is described with reference to FIGS.

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

同様に、CPUによって処理を行なう前後のデータの記
憶は、明瞭化のため、多数の別々の記憶装置間で分割さ
れるものとして示す。然し乍ら、1つの大型の記憶装置
を使用し、種々のデータ記憶要求に対してその容量を適
当に分割することもできる。プロセッサ及びメモリリー
スをこのように共有するための技術は公知であり、ここ
では詳細に説明しない。
Similarly, 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 various data storage requirements. Techniques for sharing processors and memory leases in this manner are known and will not be described in detail here.

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

y=ax2+bx+c 法則により上記式は、次のようになる。According to the rule of y = ax 2 + bx + c, the above expression is as follows.

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

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

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

データ記憶装置54ないし64は、例えば、半導体のラン
ダムアクセスメモリを組み込んでもよいし、磁気ディス
クメモリを組み込んでもよいし、或いはその両方を組合
せたものを組み込んでもよい。以下で述べるように、デ
ータ記憶装置は、データが既に書き込まれている位置へ
新たなデータ値を書き込むことができなくてもよい。従
って、所与の位置に単一の書き込み動作を行なうことし
かできないようなメモリを組み込むこともできる。この
ようなメモリの一例がレーザディスク記憶装置であり、
この場合は、金属のディスク又は金属化プラスチックの
ディスクの表面に極微ピットの永久的なパターンを形成
してこれを後で読み取るようにレーザビームを用いてデ
ータが記憶される。このような記憶装置は、例えば、米
国、カリフォルニア州、レドンド・ビーチに所在するOp
timem of Sunnyvale,California and Optical Disk Man
ufacturing Co.(Alcatel Thomsonの1部門)から入手
することができる。レーザディスク記憶装置は、非常に
多量のデータを比較的小さな物理的空間に記憶できると
いう効果がある。
The data storage devices 54 to 64 may incorporate, for example, a semiconductor random access memory, a magnetic disk memory, or a combination of both. As described below, the data storage device may not be able to write a new data value to a location where data has already been written. Therefore, a memory that can only perform a single write operation at a given location can be incorporated. One example of such a memory is a laser disk storage device,
In this case, a permanent pattern of microscopic pits is formed on the surface of a metal disk or a metallized plastic disk, and data is stored using a laser beam so as to be read later. Such storage devices are, for example, Op Op, located in Redondo Beach, California, USA
timem of Sunnyvale, California and Optical Disk Man
Available from ufacturing Co., a division of Alcatel Thomson. Laser disk storage has the advantage that very large amounts of data can be stored in a relatively small physical space.

各記憶装置54ないし64は、その各入力66ないし76にデ
ータを受け取りそしてこのデータを次々のデータ項目の
流れとして記憶するように構成される。既に受け取った
データ項目の跡にこの流れの終わりに更に別の各データ
項目が追加される。データ項目の流れの長さは、原理的
には無制限に延ばすことができるが、記憶装置の有限の
物理的記憶容量により、一度に記憶できるデータの量に
制約が課せられることは明らかである。然し、各々の新
たなデータ流は、流れの長さを延ばすものとして処理さ
れる。
Each storage device 54-64 is configured to receive data at its respective input 66-76 and to store this data as successive data item streams. Additional data items are added at the end of this flow to the trace of the data items already received. The length of the stream of data items can in principle be extended without limit, but it is clear that the finite physical storage capacity of the storage device places a limit on the amount of data that can be stored at one time. However, each new data stream is treated as extending the length of the stream.

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

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

データの各流れに個々の記憶装置を専用に割り当てる
のではなく、データの多数の流れを同じ記憶装置に記憶
することもできる。1つの考えられる解決策は、記憶装
置を多数のセグメントに区分化するものとして処理し、
各セグメントを1つの流れに指定することである。この
ような場合には、その流れの最初のデータ項目を含む記
憶位置の記録を各流れごとに維持することも必要であ
る。従って、同じ流れにおける他のデータ項目の記憶位
置は、その項目のインデックス値を、最初の項目を含む
記憶位置のアドレスに追加することによって識別するこ
とができる。或いは又、別々の流れのデータ項目を混合
することもできる。この場合、各流れに関連した記憶位
置の表を維持することもできるし、或いは、リンクされ
たリストを用いることもでき、記憶された各データ項目
には、同じ流れにおける次のデータ項目の位置を指すポ
インタが組み合わされる。共有メモリを管理するこれら
の技術は、公知である。
Rather than dedicating individual storage devices to each stream of data, multiple streams of data can be stored on the same storage device. One possible solution is to treat the storage device as partitioning it into a number of segments,
Assigning each segment to one stream. In such a case, it is also necessary to maintain a record of the storage location containing the first data item of the stream for each stream. Thus, the storage location of another data item in the same stream can be identified by adding the index value of that item to the address of the storage location containing the first item. Alternatively, data items from different streams can be mixed. In this case, a table of storage locations associated with each stream can be maintained, or a linked list can be used, where each stored data item contains the location of the next data item in the same stream. Are combined. These techniques for managing shared memory are known.

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

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

記憶位置が再使用される場合には、依然として記憶さ
れている最も前のデータ項目のインデックス値とその物
理的な位置のアドレスとの記録を維持することが必要で
ある。このインデックス値と他のデータ項目の独特なイ
ンデックス値との差を最も前の項目のアドレスに追加し
て上記他の項目のアドレスを導出することができる。
If the 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 value of the other data item can be added to the address of the earliest item to derive the address of the other item.

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

各記憶装置54ないし64は1つ以上の出力を有し、装置
54及び56は、各々、3つの出力78、80、82及び84、86、
88を有し、装置58は1つの出力90を有し、装置60は2つ
の出力92及び94を有し、装置62及び64は、各々、1つの
出力96及び98を有する。このような各出力は、必要な項
目のインデックス値を参照することにより、関連記憶装
置に記憶された流れにおいていずれかのデータ項目を検
索するように構成される。またデータ項目を受け取って
いないところのインデックス値をもつデータ項目が要求
される場合には、記憶装置は、そのインデックス値のデ
ータ項目が受け取られるまで待機し次いで要求に応じて
そのデータ項目を戻すように構成される。記憶位置が再
使用される場合には、データ検索のために記憶位置を識
別する方法は、データ項目を記憶する方法と同じものが
使用され、データを検索できるインデックス値の範囲は
前記したような制約を受ける。
Each storage device 54-64 has one or more outputs, and
54 and 56 have three outputs 78, 80, 82 and 84, 86, respectively.
The device 58 has one output 90, the device 60 has two outputs 92 and 94, and the devices 62 and 64 have one output 96 and 98, respectively. Each such output is configured to search for any data item in the flow stored in the associated storage by referring to the index value of the required item. Also, if a data item with an index value for which no data item has been received is requested, the storage device will wait until a data item with that index value is received and then return that data item upon request. It is composed of When the storage location is reused, the same method for identifying the storage location for data retrieval is used as the method for storing the data item, and the range of index values in which the data can be retrieved is as described above. Be restricted.

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

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

記憶装置60の出力92により、CPU34は、制御ライン112
を経て指定されたインデックス値に基づくデータ項目を
得ると共に、記憶装置54及び56からのデータ項目(係数
a及びbの対応値)を得ることができ、これらは、制御
ライン114及び116の制御のもとで出力80及び88によって
供給される。CPU34は、これが実行するプロセスによっ
て得られたデータ項目を入力74を経て記憶装置62へ供給
する。これらのデータ項目は、係数a、b及びcの対応
値に対する二次方程式の1つの根の値である。CPU36
も、同様に、制御ライン118、120及び122を経て指定さ
れたデータ項目を記憶装置54、56及び60から出力78、86
及び97を経て受け取ると共に、得られたデータ項目を入
力76を経て記憶装置64へ供給する。これらのデータ項目
は、これらの係数値に対する二次方程式の他方の根の値
である。
By the output 92 of the storage device 60, the CPU 34
, And data items (corresponding values of coefficients a and b) from storage devices 54 and 56, which are used to control the control lines 114 and 116. Originally provided by outputs 80 and 88. The CPU 34 supplies the data items obtained by the process in which it executes to the storage device 62 via the input 74. These data items are the values of one root of the quadratic equation for the corresponding values of the coefficients a, b and c. CPU36
Similarly, the data items specified via control lines 118, 120 and 122 are output from storage devices 54, 56 and 60 to outputs 78 and 86.
And 97, and provides the resulting data item to storage 64 via input 76. These data items are the values of the other root 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 to outputs 124 and 126 of data processor 30 by outputs 96 and 98 based on the index values specified via control lines 128 and 130.

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

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

第3図を説明すれば、CPU32に供給すべきデータ項目
のインデックス値は、プロセスを最初にスタートする時
に初期化しなければならない。これはステップ132によ
って表わされている。次いで、CPU32は、ステップ134に
おいて現在のインデックス値に基づいて記憶装置54から
係数aのデータ項目を要求する。ステップ136では、CPU
32がデータ項目が受け取られたかどうかチェックする。
もしそうでなければ、データ項目が受け取られるまで、
プロセスがステップ136を経て繰り返される。データ項
目が受け取られた時には、プロセスがステップ138へと
続き、係数bに対応するデータ項目が記憶装置56から要
求され、データ項目が受け取られるまで必要に応じてス
テップ140を繰り返す。要求及び繰返しのこのシーケン
スは、ステップ142及び144において第3回目が行なわ
れ、係数cに対応するデータ項目が記憶装置58から得ら
れる。
Referring to FIG. 3, the index value of the data item to be supplied to the CPU 32 must be initialized when the process is first started. This is represented by step 132. Next, in step 134, the CPU 32 requests a data item of the coefficient a from the storage device 54 based on the current index value. In step 136, the CPU
32 checks if the data item has been received.
If not, until the data item is received,
The process repeats via step 136. When a data item is received, the process continues to step 138, where a data item corresponding to coefficient b is requested from storage 56, and step 140 is repeated as necessary until the data item is received. This sequence of request and repetition is performed a third time in steps 142 and 144, and the data item corresponding to coefficient c is obtained from storage device 58.

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

この値は、ステップ148においてデータ項目として記
憶装置60へ供給され、ここで、記憶装置は、ステップ13
4、138及び142において検索されたデータ項目に対応す
るインデックス値を受け取る。
This value is provided to the storage device 60 as a data item in step 148, where the storage device
Receive index values corresponding to the retrieved data items at 4, 138 and 142.

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

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

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

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

第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 to 36 supplies a data item to a dedicated storage device for storing the data item from that process. Although each process shown in FIG. 2 has only one output, of course, one process can generate more than one output, in which case each output will have its own output. It will have a dedicated storage device. Each process receives data items from one or more storage devices 54-60,
One storage device may supply data items to more than one process. Thus, the only means of communicating between the processes is through storage devices 54-60. This feature has a significant effect. All data exchanges with the process are buffered in storage by the stream of data items. Thus, synchronization between processes is inherently provided by the flow, and no explicit configuration for this need be provided in the process itself. A process can add a data item to the stream and does not have to wait for another process to read it. Each process can request a data item as needed, and the arrival of the data item does not force the process using that item to run. Since the index value is not re-assigned to a new data item and the data item is never changed, the process can always use the data item within the constraints imposed by the finite storage capacity. Within this same control, a process can request any data item in the stream and is not limited to receiving the items in a predetermined sequence. Of course,
There is no risk that the process receives the data items in the wrong order.

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

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

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

第5図は、記憶装置164を示すもので、この記憶装置
は、データ項目の検索を試みることのできる更に別の回
路を有している。この場合には、指定のインデックス値
を有するデータ項目がない場合にこの記憶装置が待機す
る時間に所定の制限が課せられる。制御ライン166は、
検索すべきデータ項目のインデックス値を指示するため
に記憶装置164の出力168に直結されると共に、単安定回
路170のトリガ入力Tにも接続される。出力ライン172
は、検索したデータ項目を供給し、単安定回路170のク
リア入力に接続されている。単安定回路170のセット出
力は、時間切れ信号ライン174及び出力168に接続されて
いる。データ項目が制御ライン166を経て要求された時
には、その要求が記憶装置164に送られると同時に、単
安定回路170がトリガされ、所定の時間中その擬似安定
状態に入る。要求されたデータ項目が記憶装置164にあ
るか又は所定の時間が経過する前に受け取られた場合に
は、これが出力ライン172を経て供給され、擬似安定時
間の終わりに達する前に単安定回路170をクリアする。
然し乍ら、要求されたデータ項目が所定時間の終了前に
得られない場合には、単安定回路170が時間切れし、時
間切れライン174に信号を発生する。この信号は、要求
を発しているCPU又はプロセスに、時間切れが生じたこ
とを指示し、記憶装置164の出力168において未解決の要
求を打ち消す。所望ならば、単安定回路は、データ項目
が要求される時にその要求を発するCPUによって制御ラ
イン166に指定された値に基づいて決定された可変の擬
似安定時間を有することができる。このような機能を行
なう回路の設計は、当業者に明らかであろう。
FIG. 5 shows a storage device 164 which has further circuitry that can attempt to retrieve a data item. In this case, a predetermined limit is imposed on the waiting time of the storage device when there is no data item having the specified index value. The control line 166
It is connected directly to the output 168 of the storage device 164 to indicate the index value of the data item to be searched, and is also connected to the trigger input T of the monostable circuit 170. Output line 172
Supplies the retrieved data item and is connected to the clear input of the monostable circuit 170. The set output of the monostable circuit 170 is connected to a time-out signal line 174 and an output 168. When a data item is requested via control line 166, the request is sent to storage 164, and at the same time, monostable circuit 170 is triggered to enter its pseudo-stable state for a predetermined period of time. If the requested data item is in storage 164 or received before the predetermined time has elapsed, it is provided via output line 172 and the monostable circuit 170 is output before the end of the pseudo-stable time is reached. Clear
However, if the requested data item is not available before the expiration of the predetermined time, the monostable 170 times out and generates a signal on the time-out line 174. This signal indicates to the requesting CPU or process that a time-out has occurred and cancels any outstanding requests at output 168 of storage device 164. If desired, the monostable circuit may have a variable pseudo settling time determined based on the value specified on control line 166 by the CPU issuing the request when the data item is requested. The design of a circuit that performs 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 present invention will be described with reference to FIG. This processor uses the search operation described with respect to FIGS. 4 and 5 to control the speed of a sensor moving along a trajectory (eg, a logging sonde that can lift a borehole upwards) and the sensor. Perform time-based functions in the form of data collection from This sensor emits a data item once every two seconds, at a rate of
The signal is transmitted every 1/10 second. The processor checks whether data items continue to arrive from the sensor and terminates operation of the sensor if the data is interrupted for a time that exceeds a preset limit.

第6図を説明すれば、センサからのデータ項目は、ラ
イン176を経て、参照番号175で一般的に示されたプロセ
ッサによって受け取られ、データ記憶部180のデータ記
憶装置178へ供給される。センサの速度を表わすデータ
項目は、ライン182に受け取られ、別のデータ記憶装置1
84へ供給される。この記憶装置は、第4図について述べ
たように最新のものを読み取る機能を発揮するように構
成された出力186を有している。この出力は、センサの
速度を表わす最新のデータ項目をCPU188に供給し、この
CPUは、又、記憶装置178の出力190からデータ項目を受
け取り、その処理によって得たデータ項目を記憶装置19
2へ供給する。第5図について述べたような時間切れ機
能を有する記憶装置178からの別の出力194は、センサの
データ項目を第2のCPU196に供給し、その出力は記憶装
置198に接続される。記憶装置192及び198の各出力200及
び202は、第3のCPU204へ接続され、これはデータ項目
を記憶装置206へ供給する。第4の最後のCPU208は、記
憶装置178からその出力210を経てセンサのデータ項目を
受け取り、記憶装置212へデータ項目を供給する。記憶
装置206及び212は、データ項目を出力信号としてデータ
プロセッサ175から出力214及び216並びに出力ライン218
及び220を経て供給する。
Referring to FIG. 6, a data item from a sensor is received via a line 176 by a processor generally indicated by the reference numeral 175 and provided to a data storage 178 of a data storage 180. A data item representing the speed of the sensor is received on line 182 and is stored in another data storage 1
Supplied to 84. This storage device has an output 186 configured to perform the function of reading the latest one as described with reference to FIG. This output provides the CPU 188 with the latest data item representing the speed of the sensor.
The CPU also receives the data items from output 190 of storage device 178 and stores the resulting data items in storage device 178.
Supply to 2. Another output 194 from storage 178 having a timeout function as described with reference to FIG. 5 provides sensor data items to a second CPU 196, the output of which is connected to storage 198. Each output 200 and 202 of the storage devices 192 and 198 is connected to a third CPU 204, which supplies data items to the storage device 206. The fourth and last CPU 208 receives the data items of the sensor via its output 210 from the storage device 178 and supplies the data items to the storage device 212. The storage devices 206 and 212 provide outputs 214 and 216 and output lines 218 from the data processor 175 with the data items as output signals.
And 220.

CPU188の動作が第7図のフローチャートに示されてい
る。プロセッサ175の動作が開始される時には、記憶装
置178及び184から検索されるべきデータ項目のインデッ
クス値がステップ222において初期化される。次いで、C
PU188は、ステップ224で始まるループに入り、ここで、
記憶装置178からセンサのデータ項目が要求される。セ
ンサは、2秒に1度しかデータ項目を供給しないので、
要求を発する際にCPU188によって指定されたインデック
ス値に対応する位置には最初データ項目がない。従っ
て、CPU188がステップ226へ進んで記憶装置178からデー
タ項目が受け取られたかどうか決定する時には、その結
果が最初否定となる。それ故、CPU188は、ステップ226
に戻るように進み、データ項目が受け取られるまで動作
を続行する。データ項目が受け取られると、CPU188はス
テップ226へ進み、記憶装置184から最新の速度データ項
目を要求する。速度データ項目は1秒当り10回受け取ら
れるので、最初の要求がなされた時でも記憶装置184に
は既にデータ項目がある。それ故、常に最新の値が得ら
れ、要求が直ちに満たされる。CPU188は、ステップ230
へと続き、センサの速度を調整する必要があるかどうか
判断する。この判断は、適当なアルゴリズムに基づいて
行なうことができ、これは本発明の部分を構成するもの
ではないから、ここでは説明しない。変更の必要がない
場合には、CPU188はステップ232を経てステップ224でス
タートするループを繰り返すように戻り、ここで、記憶
装置178からデータ項目を要求のに用いるインデックス
値が増加される。変更が必要とされる場合には、ステッ
プ234において記憶装置192に適当なコマンドが送られ、
CPUは前記したようにステップ232へ進む。
The operation of the CPU 188 is shown in the flowchart of FIG. When the operation of the processor 175 is started, the index value of the data item to be retrieved from the storage devices 178 and 184 is initialized at step 222. Then C
PU188 enters a loop that begins with step 224, where:
The storage 178 requests a sensor data item. Since the sensor only supplies data items once every two seconds,
There is no first data item at the position corresponding to the index value specified by CPU 188 when issuing the request. Thus, when the CPU 188 proceeds to step 226 to determine whether a data item has been received from the storage device 178, the result is initially negative. Therefore, the CPU 188 proceeds to step 226
And continue operation until a data item is received. When a data item is received, the CPU 188 proceeds to step 226 and requests the latest speed data item from the storage device 184. Since the speed data item is received ten times per second, there is already a data item in storage 184 when the first request is made. Therefore, the latest value is always obtained and the request is fulfilled immediately. CPU 188 proceeds to step 230
Then, it is determined whether the speed of the sensor needs to be adjusted. This determination can be made based on an appropriate algorithm, which does not form part of the present invention and will not be described here. If no change is needed, CPU 188 returns to repeat the loop starting at step 224 via step 232, where the index value used to request the data item from storage 178 is incremented. If a change is required, an appropriate command is sent to the storage device 192 in step 234,
The CPU proceeds to step 232 as described above.

CPU196の動作は、第8図のフローチャートに示されて
いる。プロセサ175が動作を開始する時に、インデック
ス値がステップ236において初期化される。次いで、プ
ロセスはステップ238へ進み、指定の時間限界で記憶装
置178からデータ項目が要求される。第7図のステップ2
24においてCPU188がデータ項目を検索したのと同様に、
必要に応じてデータ項目が得られるまでには間隔があ
る。この間隔の有に、CPU196は、2つの判断ステップ24
0及び242を通る。これらステップの第1において、CPU1
96は、データ値を受け取ったかどうかチェックする。も
しそうならば、CPU196は、ステップ244へ進み、記憶装
置178から検索するためのインデックス値を増加し、次
いで、ステップ238へ復帰する。
The operation of the CPU 196 is shown in the flowchart of FIG. When processor 175 begins operation, the index value is initialized at step 236. The process then proceeds to step 238, where a data item is requested from storage 178 at the specified time limit. Step 2 in Fig. 7
Just as CPU 188 searched for the data item at 24,
There is an interval before a data item is available if needed. With this interval, the CPU 196 performs two decision steps 24
Pass through 0 and 242. In the first of these steps, CPU1
96 checks whether a data value has been received. If so, the CPU 196 proceeds to step 244, increases the index value for retrieval from the storage device 178, and then returns to step 238.

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

第9図に示すように、CPU204は、最初に、ステップ24
8及び250において記憶装置192及び198の両方からデータ
項目を要求する。次いで、ステップ252において、記憶
装置192から何等かの項目が受け取られたかどうかチェ
ックする。もしそうであれば、ステップ254において、
受け取ったデータ項目を記憶装置206に送り、ステップ2
56において、記憶装置192からのデータ項目の要求を再
開し、ステップ252へ復帰する。もしそうでなければ、
ステップ258へ進み、記憶装置198からのデータ項目の受
け取りをチェックする。データ項目がない場合には、ス
テップ252へ復帰することによってチェックループを繰
り返す。さもなくば、受け取ったデータ項目をステップ
260において記憶装置206へ送り、ステップ262におい
て、記憶装置198からのデータ項目の要求を再開し、ス
テップ252へ復帰する。CPU204によって行なわれるプロ
セスの作用は、CPU188及び196によって発生されたコマ
ンドをこれらが発生された順に合併して記憶装置206へ
送信し、プロセッサ175の出力としてライン218を経て供
給するようにすることである。このプロセスは、記憶装
置206に現われるコマンドの正確なシーケンスが、セン
サが受ける条件(例えば、掘削孔の条件)及びそれによ
って生じる影響と共に変化するので、時間に基づくプロ
セスの一例に過ぎない。
As shown in FIG. 9, the CPU 204 first executes step 24
Request data items from both storage devices 192 and 198 at 8 and 250. Next, at step 252, it is checked whether any items have been received from the storage device 192. If so, in step 254,
Sends the received data item to the storage device 206, and proceeds to step 2
At 56, the request for the data item from the storage device 192 is resumed, and the process returns to step 252. If not,
Proceeding to step 258, the receipt of a data item from the storage device 198 is checked. If there is no data item, the check loop is repeated by returning to step 252. Otherwise, step through the received data items
At 260, the data item is sent to the storage device 206. At step 262, the request for the data item from the storage device 198 is resumed, and the process returns to step 252. The effect of the process performed by CPU 204 is to cause the commands generated by CPUs 188 and 196 to be merged and transmitted to storage 206 in the order in which they were generated, and to be provided via line 218 as the output of processor 175. is there. This process is only one example of a time-based process, as the exact sequence of commands appearing in the storage device 206 changes with the conditions experienced by the sensor (eg, borehole conditions) and the resulting effects.

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

CPU208は、記憶装置178からセンサのデータ項目を単
に取り出し、これらデータ項目に適当な処理を施して所
望の情報を形成し、この情報は、次いで、記憶装置212
へ出力される。この処理は、演算装置や他のデータとの
組合せといった色々な形態をとることができる。このよ
うな処理の詳細は、本発明には拘りないものであり、詳
細に説明する必要がなかろう。
CPU 208 simply retrieves the sensor data items from storage device 178 and performs appropriate processing on these data items to form the desired information, which is then stored in storage device 212.
Output to This processing can take various forms such as a combination with an arithmetic device or other data. The details of such processing are not related to the present invention, and need not be described in detail.

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

各プロセスに対して別々のCPUを使用する時には、こ
の構成により次のような効果が得られる。即ち、時間の
拘りのない動作(例えば、CPU208によるセンサデータの
処理)と、時間に基づく動作(例えば、CPU188によるセ
ンサ速度の監視)を、プロセス間で起こり得る相互の悪
影響を招くことなく、別々のプロセスにおいて実行する
ことができる。これにより、効率的で、効果的で且つ信
頼性の高いプログラムの設計及び書き込み並びにそれら
の処理を容易にすることができる。更に、プログラムを
走らせるためのハードウェアの特定の詳細については考
慮する必要がなかろう。同様に、ハードウェアに対する
その後の変更の可能性、異なったハードウェアの使用、
又はプロセスを実行するプログラムの変更については、
特殊な構成が何等必要とされない。
When a separate CPU is used for each process, this configuration has the following effects. That is, time-independent operation (eg, processing of sensor data by CPU 208) and time-based operation (eg, monitoring of sensor speed by CPU 188) can be performed separately without causing any adverse effects that may occur between processes. In the process. This makes it easy to design, write, and process efficient, effective, and reliable programs. Further, the particular details of the hardware for running the program need not be considered. Similarly, the possibility of subsequent changes to the hardware, the use of different hardware,
Or for changes to the program that executes the process,
No special configuration is required.

従って、CPU208によるデータの処理は、CPU208の操作
の複雑さ及び速度にもよるが、処理待ちのセンサデータ
項目が他のプロセスの実行によって失われたり重畳書き
込みされたりするおそれなく、適当な速度で進めること
ができる。これらのデータ項目は、記憶装置178におい
て使用できる状態とされ、CPU188及び196によって出力1
90及び194を経て既に検索されたかどうかに拘りなく、C
PU208によって要求された時に出力210を経て検索され
る。同様に、このような処理によって得られた出力デー
タは、抽出前にデータを失うおそれなく出力ライン218
を経てデータが抽出される速度と拘りない速度でCPU208
によって発生することができる。
Therefore, the processing of data by the CPU 208 depends on the complexity and speed of the operation of the CPU 208, but at an appropriate speed without the risk that the sensor data items waiting for processing will be lost or overwritten by the execution of another process. You can proceed. These data items are made available in the storage device 178 and output by the CPUs 188 and 196.
Regardless of whether it has already been searched through 90 and 194, C
Retrieved via output 210 when requested by PU 208. Similarly, the output data obtained by such a process is output line 218 without risk of data loss prior to extraction.
CPU 208 at a speed independent of the speed at which data is extracted through
Can be caused by:

CPU188によって実行される時間に基づくプロセスは、
望ましいと考えられる速度でセンサの速度を監視及び制
御するように実行することができ、これに応じて、記憶
装置178から出力190を経てデータ項目を抽出することが
できる。このプロセスは、CPU208におけるデータ処理機
能の実行と拘りなく機能し、この処理によって遅延やタ
イミングの問題を招くおそれはない。それ故、プロセス
のプログラミングを行なう時にタイミングの競合を考え
る必要はない。
The time-based process executed by CPU 188 is
It can be implemented to monitor and control the speed of the sensor at a speed that is considered desirable, and in response, a data item can be extracted from storage 178 via output 190. This process functions regardless of the execution of the data processing function in the CPU 208, and there is no possibility that this processing will cause delay or timing problems. Therefore, there is no need to consider timing conflicts when programming the process.

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

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

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

プロセッサ175とその外界との間の全ての通信は、第
6図に示すように、更に別のデータ項目流によって行な
うのが好ましい。然し乍ら、所望ならば、1つ以上のプ
ロセスにおいて他の装置とデータを直接交換してもよ
い。このような交換は、典型的に、時間に基づくもので
あり、即ち、その結果は、例えば、実行速度によって決
まる。
All communication between the processor 175 and its outside world preferably occurs through 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ないし28
2を有しており、その各々は、各々の入力284ないし294
と、各々の単一出力296ないし306とを有している。これ
ら入力及び出力の各々は、入力/出力回路308に接続さ
れていると共に、各出力296ないし306に関連した各制御
ライン310ないし320に接続されている。3つのCPU322な
いし326は、各々の制御ライン328ないし332及び二方デ
ータライン334ないし338によって入力/出力回路308に
接続される。入力ライン340、出力ライン342及びそれに
関連した制御ライン344も入力/出力回路308に接続され
る。
Processors 30 and 175 of FIGS. 2 and 6 have individual connections for communicating data items between each CPU and storage. Alternatively, such connections can be multiplexed, as shown in FIG. Referring to FIG. 10, the storage unit 270 includes six storage devices 272 to 28.
2 each of which has a respective input 284 to 294
And each has a single output 296-306. Each of these inputs and outputs is connected to an input / output circuit 308 and to each control line 310-320 associated with each output 296-306. The three CPUs 322 to 326 are connected to the input / output circuit 308 by respective control lines 328 to 332 and two-way data lines 334 to 338. An input line 340, an output line 342 and its associated control line 344 are also connected to the input / output circuit 308.

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

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

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

入力/出力回路は、1つの考えられる実施例において
は、ランダムアクセスメモリの2つのブロックと2つの
レジスタとを備えている。一方のレジスタは、入力/出
力回路とCPUとの間で制御及び状態情報をやり取りする
のに使用され、他方のレジスタは、データ項目及びイン
デックス値を転送するのに使用される。ランダムアクセ
スメモリの第1のブロックは、1組のテーブルとして構
成され、各テーブルは62対の16ビット入力及び2つの32
ビット入力を有し、1つの記憶装置からのデータ項目に
関する62個までの保留要求の詳細を保持するのに使用さ
れる。32ビット入力の1つは、その記憶装置におけるデ
ータ項目の流れに最も最近追加されたデータ項目のイン
デックス値を記憶するのに用いられる。他の32ビット入
力は、そのデータ項目を含む記憶装置の位置の物理的な
アドレスを記憶する。各対の16ビット入力における第1
入力は、最も最近追加されたデータ項目のインデックス
値からCPUによって要求されたデータ項目のインデック
ス値までのオフセットを含んでいる。その対の第2の入
力は、そのデータ項目を要求するCPU又はプロセスを識
別する。このように構成された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 exchange 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 the random access memory is organized as a set of tables, each table having 62 pairs of 16-bit inputs and two 32 bits.
It has a bit input and is used to hold details of up to 62 pending requests for data items from one storage device. 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 the storage device. Another 32-bit input stores the physical address of the storage location containing the data item. The first in each pair of 16-bit inputs
The input includes an offset from the index value of the most recently added data item to the index value of the data item requested by the CPU. The second input of the pair identifies the CPU or process requesting the data item. A one megabyte random access memory configured in this manner serves to generate up to 62 outputs for each of the 4096 storage devices.

ランダムアクセスメモリの第2ブロックは、各々4入
力より成る1024個のグループとして構成され、CPU又は
プロセスからの要求に応じて検索されたデータ項目に対
し先入れ先出しバッファとして使用される。各グループ
の第1入力は、要求を発するCPU又はプロセスを識別す
る16ビット値である。第2の入力は、値が要求された記
憶装置又は流れを識別する12ビット値である。第3の入
力は、データ項目自体、この場合は32ビット長さを記憶
するのに使用される。第4の入力は、4ビットの状態値
である。この構成では、バッファは8キロバイトのラン
ダムアクセスメモリを要求する。記憶装置自体は、4096
個の流れの各々に対し長さが各々32ビットの512個まで
のデータ項目を記憶するように実施することができ、別
の8メガバイトのランダムアクセスメモリを必要とす
る。
The second block of the random access memory is organized as 1024 groups of four inputs each, and is used as a first-in first-out buffer for data items retrieved in response to requests from the CPU or process. The first input of each group is a 16-bit value that identifies the CPU or process making the request. The second input is a 12-bit value that identifies the storage or stream for which the value was requested. The third input is used to store the data item itself, in this case a 32 bit length. The fourth input is a 4-bit status value. In this configuration, the buffer requires 8 kilobytes of random access memory. The storage itself is 4096
Each stream can be implemented to store up to 512 data items, each 32 bits in length, requiring another 8 megabytes of random access memory.

CPUは、入力/出力回路のデータ転送レジスタに記憶
さるべきデータ項目を入れ、書き込み動作が要求される
ことを指示するコードと共に行先流の識別を制御及び状
態レジスタに入れることによって書き込み動作を実行す
ることができる。入力/出力回路は、データ転送レジス
タの値を取り出し、これを、制御及び識別レジスタにお
いて識別された記憶装置のデータ項目の流れに付随させ
る。次いで、その流れに対する保留要求テーブルが、最
も最近追加されたデータ項目のインデックス値及びその
項目の物理的な位置に対する入力を増加することによっ
て更新される。更に、この同じテーブルの62対の各入力
における要求されたデータ項目に対するオフセット入力
が減少される。オフセットがゼロになり、対にされたプ
ロセス識別子が非ゼロである場合には、丁度追加された
データ項目が、要求されたデータ項目のインデックス値
を有する。この場合、データ項目、プロセス識別子及び
流れの識別が、検索されたデータ項目のバッファに追加
され、保留要求テーブルのプロセス識別子は要求が満た
されたことを指示するようにゼロにセットされる。
The CPU performs the write operation by placing the 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 with a code indicating that a write operation is required. be able to. The input / output circuit retrieves the value of the data transfer register and attaches it to the stream of storage data items identified in the control and identification registers. The pending request table for the stream is then updated by increasing the index value of the most recently added data item and the entry for the physical location of the item. Further, the offset entry for the requested data item in each of the 62 pairs of entries in this same table is reduced. If the offset goes to zero and the paired process identifier is non-zero, 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 retrieved data item's buffer and the process identifier in the pending request table is set to zero to indicate that the request has been satisfied.

CPU又はプロセスは、項目及びそれ自身の識別を含む
流れの識別を制御及び状態レジスタに入れると供に要求
された項目のインデックス値をデータ転送レジスタに入
れることによって入力/出力回路からデータ項目を要求
する。識別された流れに対する保留要求テーブルの未使
用の入力対は、その流れに最も最近追加された項目のイ
ンデックス値からの項目のオフセットと、要求を発して
いるプロセスの識別とで更新される。バッファにおいて
次に検索されるデータ項目がデータ転送レジスタに入れ
られ、バッファの関連入力におけるプロセス識別子及び
流れ識別子が制御及び状態レジスタに入れられる。この
ようにして識別されたプロセスは、入力/出力回路から
データ項目を検索することができる。1つ以上のCPUが
プロセスによって共有される場合には、未解決要求のテ
ーブルに要求を追加したプロセスが以下に述べるように
保留され、制御及び状態レジスタで識別されたプロセス
が再び開始される。
The CPU or process requests a data item from the input / output circuit by putting the index value of the requested item into the data transfer register along with the identification of the flow, including the item and its own identification, in the control and status registers. I do. The unused entry pairs in the pending request table for the identified stream are updated with the item's offset from the index value of the item most recently added to that stream, and the identity of the process making 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 input of the buffer are placed in the control and status registers. The process thus identified can retrieve the data item from the input / output circuit. If one or more CPUs are shared by a process, the process that added the request to the outstanding requests table 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 in the pending request table to zero.

特殊なハードウェアを使用するのとは別に、本発明に
よるデータプロセッサは、上記の記憶機能及び処理機能
を果たすように汎用コンピュータを適当にプログラミン
グすることによっても実施できる。第11図ないし第15図
は、上記の種々の読み取り及び書き込み機能をいかに行
なうかを一例として示すフローチャートである。
Apart from using special hardware, the data processor according to the invention can also be implemented by appropriately programming a general purpose computer to perform the storage and processing functions described above. FIG. 11 to FIG. 15 are flowcharts showing, by way of example, how to perform the various reading and writing functions described above.

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

各々の機能は、それを実行する必要のあるプロセスに
よって呼び出すことのできるサブルーチンの形態で説明
されている。このような呼び出しが生じた時には、呼び
出しプロセスによって一時的に制御がサブルーチンに移
行される。従って、サブルーチンが、別の事象によって
再作動されるまで実行を保留するようなステップを含ん
でいる場合には、呼び出しプロセスの実行も保留され
る。
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 a subroutine by the calling process. Thus, if the subroutine includes a step that suspends execution until reactivated by another event, execution of the calling process is also suspended.

第11図は、プロセスからの要求に応じて指定のインデ
ックス値に対する流れからデータ項目を読み取る手順を
示している。この手順は、350において始まり、先ず、
要求されたインデックス値に対するデータ流が得られる
かどうかがステップ352においてチェックされる。これ
は、例えば、インデックス値を流れの現在長さと比較す
ることによって行なうことができる。データ項目が存在
する場合には、この手順がステップ354に直接進み、デ
ータ項目がメモリから得られて、要求を発しているプロ
セスに供給され、その後、手順はステップ356において
呼び出しプロセスに復帰する。要求されたデータ項目が
得られない(即ち、そのインデックス値に対するデータ
項目がまだ受け取られていない)場合には、手順がステ
ップ358へ進む。このステップにおいては、要求を発し
ているプロセスの識別とインデックス値が、流れに対し
て保留されている要求の詳細を保持するためにデータ項
目の流れに組み合わされたテーブルに追加される。この
テーブルは、本質的に、この目的のために前以て予約さ
れたメモリ位置のグループより成り、例えば、アレイの
形態であって、第10図の入力/出力回路について前記し
た保留要求テーブルに類似したものである。次いで、手
順はステップ360へ進み、データ項目が流れに追加され
るまで手順の実行が保留される(例えば、上記インター
リスプ−Dのプロセス保留動作を用いて)。データ項目
が追加されると、以下で述べるように、手順の実行が再
開される。その後、手順は上記したようにステップ354
へ進む。
FIG. 11 shows a procedure for reading a data item from a flow for a specified index value in response to a request from a process. The procedure starts at 350 and first,
It is checked in step 352 whether a data stream is obtained for the requested index value. This can be done, for example, by comparing the index value to the current length of the stream. If the data item is present, the procedure proceeds directly to step 354, where the data item is obtained from memory and provided to the requesting process, after which the procedure returns to the calling process at step 356. If the requested data item is not available (ie, the data item for that index value has not yet been received), the procedure proceeds to step 358. In this step, the identity and index value of the requesting process are added to a table associated with the stream of data items to hold details of the request pending for the stream. This table consists essentially of groups of memory locations previously reserved for this purpose, for example in the form of an array, in the pending request table described above for the input / output circuit of FIG. It is similar. The procedure then proceeds to step 360, where execution of the procedure is suspended until a data item is added to the flow (e.g., using the Interlist-D process suspend operation described above). Once the data item has been added, execution of the procedure is resumed, as described below. Thereafter, the procedure proceeds to step 354 as described above.
Proceed to.

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

ステップ363において1つ以上の保留要求が見つかっ
た場合には、手順がステップ376に進み、この見つかっ
た各要求に対する入力が検査される。これがタイマ機能
の参照を含む場合には、第13図について以下で述べるよ
うに、タイマ機能が打ち消される。同様に、これが保留
要求を有する別の流れの識別を含む場合には、第14図に
ついて以下で述べるように、その流れの保留要求が除去
される。次いで、ステップ368で見い出された各要求に
対する入力がテーブルから除去される。次いで、ステッ
プ378ヘ続き、そのインデックス値のデータ項目を要求
した1つ又は複数のプロセスが再開される(インターリ
スプ−Dにおいて、WAKE.PROCESSオペレーションでこれ
が行なわれる)。その後、手順は、ステップ370及び372
においてガーベージコレクションから出て、ステップ37
4へと続く。
If one or more pending requests are found in step 363, the procedure 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 described below with respect to FIG. Similarly, if this involves the identification of another flow that has a pending request, the pending request for that flow is removed, as described below with respect to FIG. The entry for each request found in step 368 is then removed from the table. Then, proceeding to step 378, one or more processes that requested the data item at that index value are restarted (this is done in the WAKE.PROCESS operation in Interlist-D). Thereafter, the procedure comprises steps 370 and 372
Get out of garbage collection at step 37
Continue to 4.

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

第14図は、多数の流れからデータ項目を得て或る所定
の仲裁アルゴリズムに基づいてこれらを合成する仲裁機
能を含む読み取りの実行を示すフローチャートである。
これは、例えば、第6図に示したデータプロセッサ175
のCPU204によって実行されたプロセスに代わって持ちい
られ、記憶装置192及び198におけるデータ項目の流れを
併合するものである。
FIG. 14 is a flowchart showing the execution of a read including an arbitration function that obtains data items from multiple streams and combines them based on a predetermined arbitration algorithm.
This corresponds to, for example, the data processor 175 shown in FIG.
, Which merges the flow of data items in storage devices 192 and 198.

第14図を説明すれば、ステップ400においてこの手順
に入り、ステップ402においてこれが開始され、要求を
発しているプロセスによって識別された流れの各々から
データ項目を得るように試みられる。ステップ404にお
いては、データ項目が見つかったかどうかチェックされ
る。もしそうであれば、手順はチェック406に進み、所
定に仲裁機能に基づいて1つのデータ項目が選択され
る。この機能は、例えば、或る流れからのデータ項目を
別の流れからのものに優先して選択することができる。
この手順では、選択されたデータ項目がステップ408に
おいて呼び出しプロセスへ供給され、410においてこれ
に制御が移行される。ステップ402においてデータ項目
が得られない場合には、手順がステップ412へ進み、イ
ンデックス値と各呼び出しプロセスの識別が各関連する
流れの保留テーブルに加えられる。更に、各テーブルの
入力は、要求が保留となっている他の各々の流れの識別
を含む。その後、手順は、要求したデータ項目が得られ
て上記したように手順を再開するまで、ステップ414に
おいて動作を保留する。次いで、手順はステップ402へ
復帰し、そのとき得られるデータ項目を得、前記したよ
うにステップ406へと続く。
Referring to FIG. 14, the procedure is entered at step 400, which is initiated at step 402, where an attempt is made to obtain a data item from each of the streams identified by the requesting process. In step 404, it is checked whether a data item has been found. If so, the procedure proceeds to check 406, where one data item is selected based on the predetermined arbitration function. This feature can, for example, select data items from one stream in preference to those from another stream.
In this procedure, the selected data item is provided to the calling process at step 408, to which control is transferred at 410. If no data item is available at step 402, the procedure proceeds to step 412, where the index value and the identity of each calling process are added to the pending table of each associated flow. In addition, the entries in each table include an identification of each other flow for which the request is pending. Thereafter, the procedure suspends operation at step 414 until the requested data item is obtained and the procedure is restarted as described above. The procedure then returns to step 402 to obtain the resulting data item and continues to step 406 as described above.

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

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

同じデータ項目流の中に隣接するインデックス値を有
している1組のデータ項目は、その組の中の第1の項目
のインデックス値と必要な項目の数とを定めることによ
って要求することができるが、その組の全ての項目が得
られるまでデータ項目は供給されない。多数の異なる流
れからデータ項目を要求することもできる。但し、この
場合は、各流れに対する実際のインデックス値が共通の
基準インデックス値に対して或る所定の関係(これは、
各流れごとに異なる)を有するものとする。これは、例
えば、異なったセンサから同時に発生された対応するデ
ータ項目の検索を容易にする。
A set of data items having adjacent index values in the same stream of data items may be requested by defining the index value of the first item in the set and the number of required items. Yes, but no data items are supplied until all the items in the set have been obtained. Data items can be requested from a number of different streams. However, in this case, the actual index value for each flow is related to a common reference index value in a certain relationship (this is
Different for each flow). This facilitates, for example, the retrieval of corresponding data items generated simultaneously from different sensors.

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

本発明によるデータ処理方法及びシステムについて以
上に詳細に説明した。本発明の特定の実施例を説明した
が、本発明がこれに限定されるものではない。又、本発
明は、逐次に即ち直列に発生するデータ項目の処理に関
して説明した。適当なバッファ技術を用いれば、並列に
受け取ったデータ項目でも容易に直列のものに変えられ
ることが明らかである。又、そのシーケンスは、必ずし
も時間に基づくシーケンスでなくてもよい。全てのプロ
セスは、少なくとも1つの流れからデータ項目を受け取
るものとして示したが、データ項目を受け取らずに、デ
ータ項目を発生するのみであって、例えば、時間及び日
付情報や波形の表示を供給するようなプロセスを考える
こともできる。それ故、特許請求の範囲の精神及び範囲
内で本発明に対して種々の変更がなされることが当業者
に明らかであろう。
The data processing method and system according to the present invention have been described in detail above. Although a specific embodiment of the present invention has been described, the present invention is not limited thereto. Also, the present invention has been described with respect to processing data items that occur sequentially, ie, serially. Obviously, with appropriate buffering techniques, data items received in parallel can easily be converted to serial ones. Also, the sequence need not necessarily be a time-based sequence. Although all processes have been shown as receiving data items from at least one stream, they do not receive data items, but only generate data items and provide, for example, time and date information and waveform indications. You can think of such a process. Thus, it will be apparent to one skilled in the art that various modifications may be made to the present invention within the spirit and scope of the appended claims.

【図面の簡単な説明】[Brief description of the drawings]

第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 40、42、44……入力ライン 52……データ記憶部 54−64……記憶装置
FIG. 1 is a schematic diagram showing a logging operation using a wellbore which can conveniently use the present invention, FIG. 2 is a block diagram showing a first embodiment of a data processor according to the present invention, FIG. 3 is FIG. FIG. 4 is a flowchart illustrating the operation of a central processing unit forming a part of the data processor of FIG. 1, FIG. 4 is a block diagram of a storage device used to carry out the present invention, and FIG. FIG. 6 is a block diagram showing a second embodiment of the data processor according to the present invention; FIGS. 7 to 9 are central processing units forming a part of the data processor of FIG. 6; FIG. 10 is a block diagram showing another implementation of the data processor shown in FIGS. 2 and 6, and FIGS. 11 to 15 are general-purpose computers. It is a flowchart illustrating a procedure useful in the practice of the data processor of the present invention by programming the. 10 Logging instrument or sonde 12 Armored multi-conductor cable 14 Drilling hole 16 Geologic formation 20 Pulley 22 Depth gauge 24 Surface equipment 26 Data processor 30 Data processor 32-36 CPU 40, 42, 44 Input line 52 Data storage unit 54-64 Storage device

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ディヴィッド アール バーストウ アメリカ合衆国 コネチカット州 06897 ウィルトン ヒーザー レーン 64 (56)参考文献 特開 昭58−223840(JP,A) 特開 昭55−989(JP,A) 実開 昭61−119764(JP,U) 実開 昭56−41341(JP,U) 米国特許4153932(US,A) 米国特許4128882(US,A) 欧州公開101158(EP,A1) ────────────────────────────────────────────────── ─── Continued on the front page (72) Inventor David Earl Barstow, Connecticut, United States 06897 Wilton Heather Lane 64 (56) References JP-A-58-223840 (JP, A) JP-A-55-989 (JP, A) U.S. Pat. No. 6,111,764 (JP, U) U.S. Pat. No. 5,641,341 (JP, U) U.S. Pat. No. 4,153,332 (US, A) U.S. Pat.

Claims (18)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】センサの物理的環境を示し且つセンサ制御
のために使用されるセンサデータを含む、センサから得
られたデータを処理する方法であり、 前記センサデータの流れのみを受信し且つ記憶するセン
サデータ記憶装置(178)に、前記センサデータを、逐
次のデータ項目の流れとして、書き込み、 センサデータの評価と、この評価の結果に従い且つデー
タが所定の時間周期内にセンサから得られない場合、操
作を終了することから成る時間限界制御とから成る第1
の処理(196)であって、 (a) 最も最近受信した関心あるセンサデータ項目を
センサデータ記憶装置(178)から読み出し、 (b) 前記関心あるセンサデータを使用して第1の参
照値を決定し、 (c) 第1の参照値の流れのみを受信し且つ記憶する
第1の参照値記憶装置(198)に、前記第1の参照値
を、逐次のデータ項目の流れの形態で書き込み、そして (d) 別のセンサデータに対して工程(a)〜(c)
を順に繰り返す、各副工程から成る第1の処理を達成
し、 前記センサデータを処理するための第2の処理(188)
であって、 (a) 関心のあるセンサデータ項目を前記センサデー
タ記憶装置(178)から逐次読み出し、 (b) 前記関心のあるセンサデータ項目を使用して第
2の参照値を決め、 (c) 第2の参照値の流れのみを受信し且つ記憶する
第2の参照値記憶装置(192)に、第2の参照値を、逐
次のデータ項目の流れの形態で書き込み、 そして (d) 別のセンサデータに対して工程(a)〜(c)
を順に繰り返す、各副工程から成る第2の処理を達成
し、 第1及び第2の処理(188、196)は同時処理であり、第
1及び第2の処理の達成の割合は、それぞれ第2又は第
1の処理において決められた参照値を変更しない、デー
タ処理方法。
1. A method of processing data obtained from a sensor, including a sensor data used to control the sensor and indicating a physical environment of the sensor, the method comprising: receiving and storing only the sensor data stream. The sensor data is written in the sensor data storage device (178) as a sequential data item flow, the sensor data is evaluated, and data is not obtained from the sensor according to the result of the evaluation and within a predetermined time period. A time limit control comprising ending the operation.
(196) reading the most recently received sensor data item of interest from the sensor data storage device (178); and (b) using the sensor data of interest to generate a first reference value. Determining; (c) writing the first reference value in the form of a sequential data item flow into a first reference value storage device (198) that receives and stores only the first reference value flow; And (d) performing steps (a) to (c) for another sensor data.
A second process (188) for achieving a first process consisting of each sub-step, and sequentially processing the sensor data.
(A) sequentially reading the sensor data items of interest from the sensor data storage device (178); (b) determining a second reference value using the sensor data items of interest; (c) Writing the second reference value in the form of a sequential data item flow into a second reference value storage device (192) for receiving and storing only the second reference value flow; and (d) Steps (a) to (c) for the sensor data of
Are sequentially repeated to achieve a second process including sub-processes. The first and second processes (188, 196) are simultaneous processes, and the percentage of achievement of the first and second processes is, respectively, A data processing method that does not change the reference value determined in the second or first processing.
【請求項2】前記データが、掘削孔(14)中に設置され
たゾンデ(10)内のセンサから得られた掘削孔ロギング
データである請求項1記載の方法。
2. The method according to claim 1, wherein the data is borehole logging data obtained from sensors in a sound (10) installed in the borehole (14).
【請求項3】前記第1及び第2の処理が、単一のマイク
ロプロセッサで達成される請求項1又は2記載の方法。
3. The method according to claim 1, wherein said first and second processes are performed by a single microprocessor.
【請求項4】前記第1の処理が、第1のマイクロプロセ
ッサで達成され、前記第2の処理が第2のマイクロプロ
セッサで達成される請求項1又は2記載の方法。
4. The method according to claim 1, wherein said first processing is performed by a first microprocessor, and said second processing is performed by a second microprocessor.
【請求項5】前記各記憶装置が、対応する流れからのみ
データ項目を受信するための独立した記憶装置である請
求項1乃至4何れか記載の方法。
5. The method according to claim 1, wherein each storage device is a separate storage device for receiving data items only from a corresponding stream.
【請求項6】前記第1の処理(196)は、センサデータ
記憶装置に書き込まれた全センサデータ項目を逐次読み
出す請求項1乃至4何れか記載の方法。
6. The method according to claim 1, wherein the first processing (196) sequentially reads out all sensor data items written in the sensor data storage device.
【請求項7】前記第2の処理(188)は、ゾンデコマン
ドを、第2の参照値として、決め、前記ゾンデコマンド
を、このゾンデコマンドを受信し且つ記憶するためのみ
の第2の参照値記憶装置(192)に書き込み、そして前
記コマンドを送って、ゾンデ操作に影響を及ぼす副工程
を含む請求項1乃至6記載の方法。
7. The second process (188) includes determining a sonde command as a second reference value, and defining the sonde command as a second reference value only for receiving and storing the sonde command. A method according to any one of the preceding claims, comprising a sub-step of writing to a storage device (192) and sending the command to affect sonde operation.
【請求項8】センサデータを書き込む前記工程が、t時
間毎にデータ項目を書き込むことから成り、前記第1の
処理(196)が、データ項目が、少なくともt時間毎に
前記センサデータ記憶装置(178)に書き込まれない場
合、データ取得を終了する工程を含む請求項1乃至6記
載の方法。
8. The step of writing sensor data comprises writing a data item at every t time, and wherein the first process (196) comprises the steps of: 7. The method of claim 1, further comprising terminating data acquisition if not written to 178).
【請求項9】前記終了する工程が、終了制御参照値を、
この終了制御参照値のみを受信し且つ記憶するように作
動可能である記憶装置(198)に書き込み、終了制御参
照値をコマンドとして、ゾンデに送る副工程からなる請
求項8記載の方法。
9. The terminating step includes the step of: terminating a terminating control reference value.
9. A method according to claim 8, comprising the substep of writing to a storage device (198) operable to receive and store only the termination control reference value and sending the termination control reference value as a command to the sonde.
【請求項10】前記読み出し工程のいずれもが、前記各
記憶装置内に含まれるデータ項目を変更しない請求項1
乃至9記載の方法。
10. The method according to claim 1, wherein none of the read steps change data items contained in each of the storage devices.
10. The method according to any one of claims 1 to 9.
【請求項11】トランスジューサからゾンデの速度を示
すデータを取得し、 この速度データを、この速度データの流れのみを受信し
且つ記憶するように作動する速度記憶装置(184)に、
逐次データ項目の流れの形態で、書き込む工程を含む請
求項2記載の方法。
11. A speed storage device (184) operable to receive data indicative of the speed of the sonde from the transducer and to receive and store only this flow of speed data.
3. The method of claim 2 including the step of writing in the form of a stream of sequential data items.
【請求項12】前記第2の処理(188)が、 前記速度記憶装置(184)から関心のある速度データ項
目を逐次読み出し、前記センサデータ項目及び前記速度
データ項目を使用して前記第2の参照値を決め、速度デ
ータ項目が許容可能な速度範囲内に無い場合、第2の参
照値を変更速度記憶装置(192)に書き込む副工程から
成ることを含む請求項11記載の方法。
12. The second process (188) sequentially reads out a speed data item of interest from the speed storage device (184) and uses the sensor data item and the speed data item to read the second speed data item. The method of claim 11, comprising determining a reference value and writing a second reference value to a modified speed storage device (192) if the speed data item is not within an acceptable speed range.
【請求項13】前記記憶装置が各々一組の複数の記憶位
置を含み、前記各書き込み工程が、独特なインデックス
値を使用して記憶内の記憶位置を逐次識別する副工程を
含む請求項1乃至12記載の方法。
13. The storage device of claim 1, wherein each of the writing steps includes a substep of sequentially identifying the storage location in storage using a unique index value. 13. The method according to any one of claims 12 to 12.
【請求項14】センサの物理的環境を示し且つセンサデ
ータのために使用されるセンサデータを含む逐次のデー
タ項目の流れを処理するためのシステムであり、 前記逐次データ項目を取得するための第1の取得手段
(176)、 前記第1の取得するための手段に結合し、第1のデータ
の流れからのみデータ項目を受信し且つ記憶するための
第1の記憶手段(178)、 センサデータの評価とこの評価の結果に従う時間限界セ
ンサ制御とからなる第1の処理、及びセンサデータの逐
次処理を行う第2の処理を同時に達成する処理手段(18
8、196)であり、前記第1の記憶手段(178)からデー
タ項目を読み出すことは可能であり、新たなデータ項目
を前記第1のデータの流れに書き込みことは不可能であ
る処理手段(188、196)、 前記処理手段(188、196)に結合され、前記第1の処理
と関係して処理されたデータ項目を受信し、他の処理に
関係するデータ項目を受信することは不可能である第2
の記憶手段(198)、及び 前記処理手段(188、198)に結合され、前記第2の処理
に関係されて処理されたデータ項目を受信し、他の処理
と関係するデータ項目を受信することは不可能である第
3の記憶手段(192)から成るシステム。
14. A system for processing a sequential flow of data items including a sensor data used for the sensor data and indicating a physical environment of the sensor, the system comprising: First acquisition means (176), first storage means (178) coupled to said first acquisition means, for receiving and storing data items only from a first data stream, sensor data Processing means (18) for simultaneously achieving a first process consisting of the evaluation of the data and a time limit sensor control according to the result of the evaluation, and a second process of performing the sequential processing of the sensor data
8, 196), and it is possible to read a data item from the first storage means (178) and to write a new data item into the first data flow. 188, 196), coupled to the processing means (188, 196), it is not possible to receive data items processed in relation to the first processing and to receive data items relating to other processing The second
Receiving the data item related to the second process and receiving the data item related to another process, which is coupled to the storage unit (198) and the processing unit (188, 198). A system comprising a third storage means (192) that is impossible.
【請求項15】前記センサが、掘削孔を通して設置され
るゾンデ(10)内に、携えられることを特徴とする請求
項14記載のシステム。
15. The system according to claim 14, wherein the sensor is carried in a sound (10) installed through a borehole.
【請求項16】前記処理手段(188、196)が、2つのマ
イクロプロセッサを含み、一方のマイクロプロセッサ
(196)が、前記第1の処理を達成し、他方のマイクロ
プロセッサ(188)が、前記第2の処理を達成する請求
項14又は15に記載のシステム。
16. The processing means (188, 196) includes two microprocessors, one microprocessor (196) accomplishing the first processing, and the other microprocessor (188) 16. The system according to claim 14, wherein the system performs a second process.
【請求項17】前記処理手段(188、196)は、データ項
目がある期間内に第1の記憶手段(178)に受信されな
い場合、コマンドを記憶手段(198)に書き込む時間切
れ回路を含んでいる請求項14、15又は16に記載のシステ
ム。
17. The processing means (188, 196) includes a time-out circuit for writing a command to the storage means (198) if the data item is not received by the first storage means (178) within a certain period. 17. The system according to claim 14,15 or 16.
【請求項18】前記センサの速度と関係している逐次の
データ項目の第2のデータの流れを得るための手段(18
4)を含む請求項15記載のシステム。
18. A means for obtaining a second data stream of sequential data items related to the speed of said sensor.
16. The system of claim 15, comprising 4).
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 JPS6349986A (en) 1988-03-02
JP2656474B2 true 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 (2)

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

Family Cites Families (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

Patent Citations (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

Also Published As

Publication number Publication date
JPS6349986A (en) 1988-03-02

Similar Documents

Publication Publication Date Title
US5204956A (en) Method and apparatus for monitoring the execution time of a computer program
CA1215180A (en) Dynamic buffer reallocation
EP0435499B1 (en) Method and apparatus for software monitoring and development
US6789182B1 (en) System and method for logging computer event data and physical components of a complex distributed system
KR970017010A (en) Data storage system and method of performing the machine
JPH03108042A (en) Multiple virtual space address system and computer system
JPH0415839A (en) Distributed data base control device
US5201040A (en) Multiprocessor system having subsystems which are loosely coupled through a random access storage and which each include a tightly coupled multiprocessor
KR102236419B1 (en) Method, apparatus, device and storage medium for managing access request
KR100285956B1 (en) Apparatus and method for controlling synchronous and asynchronous devices connected to high speed serial bus
US6507809B1 (en) Method and system for simulating performance of a computer system
US5204965A (en) Data processing system using stream stores
US5692153A (en) Method and system for verifying execution order within a multiprocessor data processing system
US5794012A (en) Verification of strongly ordered memory accesses in a functional model of an out-of-order computer system
JP2656474B2 (en) Data processing system and method
EP0214037B1 (en) System and method for data processing
US4924383A (en) Method and apparatus for measuring performance of a multiprocessor
JPH04120652A (en) Parallel processors
US7290069B2 (en) Data acquisition system which monitors progress of data storage
JP2505526B2 (en) Bitmap management method for tasks
KR960015585B1 (en) Bus information processing unit for a high-performance multiprocessing system
JPH03127237A (en) Performance measurement system for information processor
KR960004059B1 (en) Asynchronous memory system access method
Cross et al. Modelling the vocal tract using multiple digital signal processors
JP2531209B2 (en) Channel device