CN1033541C - 数据处理的系统和方法 - Google Patents

数据处理的系统和方法 Download PDF

Info

Publication number
CN1033541C
CN1033541C CN86105110A CN86105110A CN1033541C CN 1033541 C CN1033541 C CN 1033541C CN 86105110 A CN86105110 A CN 86105110A CN 86105110 A CN86105110 A CN 86105110A CN 1033541 C CN1033541 C CN 1033541C
Authority
CN
China
Prior art keywords
data item
data
processing
stream
reference value
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
CN86105110A
Other languages
English (en)
Other versions
CN86105110A (zh
Inventor
斯科特·格思里
保罗·巴思
戴维·巴斯托
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Schlumberger Overseas SA
Schlumberger Technology Corp
Original Assignee
Schlumberger Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Schlumberger Technology Corp filed Critical Schlumberger Technology Corp
Publication of CN86105110A publication Critical patent/CN86105110A/zh
Application granted granted Critical
Publication of CN1033541C publication Critical patent/CN1033541C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01VGEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
    • G01V3/00Electric or magnetic prospecting or detecting; Measuring magnetic field characteristics of the earth, e.g. declination, deviation
    • G01V3/38Processing data, e.g. for analysis, for interpretation, for correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geology (AREA)
  • Environmental & Geological Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • General Life Sciences & Earth Sciences (AREA)
  • Geophysics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Complex Calculations (AREA)
  • Monitoring And Testing Of Nuclear Reactors (AREA)

Abstract

一种数据处理的系统和方法,其中数据处理任务是按照分开的处理安排,各个处理能由一专门的中央处理机或由一个或多个共享处理单元执行。所有处理间的通信经过数据项流进行。各流接收来自单源的数据项,例如来自至处理系统的输入或来自处理之一。附加于流的每一数据项是与单值索引值相结合-即使实际存储单元被再用,索引值也绝不再用,处理能按照流请求数据项,数据项存储在该处,且与索引值相结合。由实际存储容量施加的约束中,任何索引值能包括在一请求中。如果数据项还未可利用,处理的执行是暂停,直至数据项成为可以利用为止。数据项能在有限制的时间里请求,该时间在尝试失败之前过去;同样地,能为最近附加于流的数据项作出请求,而不按照特殊的索引值。此体系结构简化包含时间无关和时间相关的处理的数据处理。

Description

数据处理的系统和方法
本发明涉及数据处理的系统和方法,特别是(虽然不专门地)涉及记录期间获得的处理数据的系统和方法,藉通过钻孔以勘测地面的组成
钻孔测井在发现和开发地下烃类和其他贵重原料的储藏量方面,是一重要的步骤。一般,钻孔在已经钻好之后,有一细长的测井工具或探测器放下到钻孔底部一铠装电缆上,该电缆含有导线,用作在地面设备和探测器之间传输电功率和信号。然后通过吊起电缆将探测器升上钻孔,而探测器的敏感元件用作测量藉钻孔通过组成的电的、声和和/或核的参数。测量结果从电缆传上来,并记录进地面上的设备里。测量结果的分析和说明,能使有关烃类和其他材料的存在和可生产的信息,或在井现场记录期间,或在其后的远距离位置获得。
当烃类的储藏量已经消耗时,开发日益困难萃取的储藏量,变成了商业上的经济问题。因此,用于勘测这种储藏量的测井工具,已经变得越来越复杂和高级,以致现在一般在井现场的地面设备中,装有一计算机用来帮助监视和控制探测器的操作,以及收集和分析探测器所作出的测量结果。这样的一种计算机一般执行下列多种功能:编码和发送定时和其他控制信号至探测器,以触发一测量周期;接收来自探测器的诸信号,而将其译码,以抽出关于测量结果和探测器的操作的数据;分析数据以监视探测器的操作,和产生发送给它的信号,根据钻孔和组成情形以使它的操作最佳化;监控钻孔中探测器的深度;处理数据以获得所需要的测量结果值;处理测量结果,以导出重要的组成参数;以及产生实时显示,指示选择的探测器的操作参数、测量结果和组成参数。这种功能的种类和数量,把实在的负担施加于计算机系统。实现计算机系统来准确地和快速地完成全部需要的工作,足以可能获得一个可以接受的记录速率,已经证明是十分困难和费时的。
上述的数据采集和控制的必要性,在其他场合也能遇到,例如在航空电子学和宇航的应用方面。
一个特别的问题是计算机必须提供数据管理功能,该功能本质上与时间和处理包含的持续时间无关,以及也提供处理控制功能,该功能是受时间和处理的持续时间影响。于是,例如数据管理是一时间无关的工作,数据是应用一傅里叶变换从探测器而获得:变换输出的相同结果,总是由于相同集的数据所引起,而不顾时间和处理的持续时间。相反,从探测器的数据采集是时间相关的:由检查接收的数据(它可影响随后发送至探测器的控制信号)项的最后次序发现的实际数值,将取决于数据项发送至上孔的速率,以及取决于来自探测器的检查的数据项次序速率。在下孔或上孔设备中的任何处理速率的改变都能影响结果。而且,上孔传输的速率,一般主要取决于探测器的特性,所以,在地面上的各数据项的接收时间,不能由地面计算机设备来控制。同样,探测器的特性可要求在足以保证最佳操作的速率下,发送命令至下孔。时间无关的操作必须不妨碍这些时间相关的功能的及时事件,以避免数据的丢失和不能迅速地变换探测器的操作,以响应条件的改变。同样地,重要的是保证在时间无关的处理中的时间有关的功能不引起误差。这些特性必须保持,不管有任何系统的修改,包括硬件(例如,处理机时钟频率的改变)或软件(例如,程序模块的增加)。
对于多重功能的执行,例如中断处理的技术是早已知道的。然而,必须极小心地应用,以保证适当的操作速度和避免在使用处理机资源,例如随机存取存储器时产生冲突。这尤其在现代钻孔记录操作的情形,其中先进的测量技术使用探测器产生大量的数据,可能要求准确的控制,而探测的成本要求记录要尽可能快地完成。因此,在这种环境中,提供可靠的、效率高的和有效的数据处理系统来操作,是一分困难的和昂贵的工作。
当通过单处理机分时或以多处理机并行操作同时执行几个工作时,问题甚至变得更尖锐。
用于由计算机实行分段功能和用于协调多处理机系统的各种装置是众所周知的。例如,国际信息处理学会联合会(InternationalFederation of Information Processing Societies)1977年出版的《信息处理77》由G.卡恩和D.B.麦奎因所发表的《协同程序和并行网络处理》一文中所叙述的系统,能同时处理和通过‘通道’互相通信。通道起先进先出缓冲存储器的作用,以一个方向运载信息,从处理生产数据到处理请求数据。请求数据项的处理能访问通道,该通道将它连接至生产相关程序项的处理,于是它接收下一个存储在通道中的程序中的连贯的项。这样一种系统是所谓的数据流体系结构的一个例子。
另一种型式的数据流系统,在1976年《国际并行处理讨论会记录汇编》(Proceeding of the 1976 International Conference onParallel Processing)里第100至105页由米苏纳斯(D.P.Misunas)所写的‘数据流处理机的性能分析’一文中有叙述;以及在由派斯门(W.G.Paseman)、拜德(Byte)、麦格劳-希尔所写的‘数据流应用于现实世界’第五期(1985年5月)第十卷第201至214页讨论到。这种系统是借助于固定长度的数据组在处理过程之间进行通信,和等到所有的数据项备齐后完全执行其功能后再执行处理。有效的所有请求数据项起动处理的执行,处理的执行是当时执行还是执行到什么程度,并没有任何控制。相似的数据流系统在科尼什等人的美国专利第4,197,589中有谈到,以及同时工作和指令处理机在吉利兰等人的美国专利第4,229,790中叙述过。
本发明的一个目的是提供一种处理数据的系统和方法,促进时间无关和时间相关的联合操作。
本发明的另一个目的是提供一种促进数据处理的系统和方法,借助于多个同时执行处理来进行。
本发明还有一个目的是提供一种使用多个数据处理机进行处理数据的系统和方法。
根据本发明的一个方面,所提供的数据处理系统包括:输入装置,用作接收顺序地出现的数据项,数据项由所说系统处理;处理机装置,用作同时执行多个处理,以产生另外的顺序地出现的数据项;用作根据各所说项的源及其相对于其它从同一源接收到的项的顺序位置,将数据项和各有关的单值索引值相结合的装置;数据存储装置,用作存储所说数据项;用作供给使用在处理执行过程中从所说存储装置至所说处理装置的任何选择的数据项的装置,所说数据项在那处理执行期间确定的关联索引值选择;以及输出装置,用作供给由于所说处理执行的结果的数据项。
根据本发明的另一个方面,所提供的数据处理系统包括:输入装置,用作接收顺序地出现的数据项,数据项由所说系统处理;处理机装置,用作同时执行多个处理,以产生另外的顺序地出现的数据项;根据各所说项的源及其相对于其它从同一源接收到的项的顺序位置,将所说被接收的数据项、所说另外的数据项和各有关的单值索引值相结合的装置;数据存储装置,用作存储所说数据项;用作供给使用在处理执行过程中从所说存储装置至所说处理装置的任何选择的数据项的装置,所说数据项是根据在那处理执行期间确定的关联索引值选择,而在处理过程之间的数据项的所有交换是经过所说供给装置实行;以及输出装置,用作供给由于所说处理的结果的选择的数据项,所说数据项是根据关联索引值选择。
根据本发明的还有一个方面,所提供的数据处理方法,包括下列步骤:接收待处理的顺序地出现的数据项;同时执行多个处理,以产生另外的顺序地出现的数据项;根据各所说项的源及其相对于其它从同一源接收到的项的顺序位置将数据项和各有关单值索引值相结合;存储所说数据项;以及供给使用在处理执行过程中任何选择的存储的数据项,所说数据项是根据在那处理执行期间确定的关联索引值选择。
根据本发明再有的一个方面,所提供的数据处理方法,包括如下的步骤:接收待处理的顺序地出现的数据项;执行多个同时处理,以产生另外的顺序地出现的数据项;根据各所说项的源及其相对于其它从同一源接收到的项的顺序位置,将所说被接收的数据项、所说另外的数据项和各有关的单值索引值相结合;存储所说数据项;供给使用在处理执行过程中任何选择的存储的数据项,所说数据项是根据在那处理执行期间确定的关联索引值选择,而在处理之间的数据项的所有交换是照这样子实行以及供给作为由于所说处理执行的结果的所说数据处理输出的选择的数据项,所说数据项是根据关联索引值选择。
根据下面的参照附图对本发明所作的详细说明,本发明另外的目的和特点将更加明白,其中:
图1是钻孔测井操作的示意图,其中本发明能便利地使用;
图2是根据本发明的数据处理机的第一实施例的方块示意图;
图3是说明图2的数据处理机部分形成的中央处理机操作的流程图;
图4是用作实现本发明的存储设备的方块示意图;
图5是用作实现本发明的另一存储设备的方块示意图;
图6是根据本发明的数据处理机的第二实施例的方块示意图;
图7至图9是说明图6的数据处理机的中央处理部件形成部分的操作流程图;
图10是图2和图6中所示的数据处理机交替的执行程序的方块示意图;以及
图11至图15是说明根据本发明的数据处理机藉为通用计算机编制程序在执行程序中有用过程的流程图。
本发明操作的数据处理系统和方法,是不局限于任何特殊型式的数据处理。然而,该处理系统和方法能用来促进同时执行处理,该处理必须完成时间无关和时间相关二个功能,时间无关功能例如从测量结果操作以导出另外的信息的数据的运算操纵,而时间相关功能例如测量设备的实时控制。包括二种功能的例子是在图1中概略说明的钻孔测井工具的操作。
参阅图1,细长的测井工具或探测器10是悬吊在铠装多导线电缆12上,该电缆放在贯穿地面组成16的钻孔14中。探测器10是藉放松电缆12在钻孔14中移动,而然后(当实际上进行记录测量时)通过在地面设备24的绞车组成部分将电缆卷回到绞缆轮20和深度计22上。深度计22测量电缆12在绞缆轮20上的位移,因而测得工具10在钻孔中的深度。
工具10包括一个或多个传感器,一般用电的、声的或核的方法来测量组成16的参数。诸传感器产生与需要的参数相关的电信号,而这些信号由探测器10中的处理和接口电路适当地整理,用于电缆12向上传输至地面设备24。设备24包括一数据处理机26,而一般接收、译码、放大以及将信号记录在记录纸和/或磁带记录器上,作为由深度计22产生的深度信号的函数。此外,设备24可处理由这些信号代表的数据,以输出需要的组成参数的读数,这些参数也是要被记录的。这些信号和来自探测器10的其他信号的进一步处理使地面设备24能监视探测器10的操作,和产生由电缆12往下传送以控制探测器10的信号,例如,使其部件电路操作同步或变更放大器的增益。
探测器10的构造和操作的确切详情,和在探测器10和地面设备24之间传送信号的装置,都不属于本发明的范围,而且为本技术领域内的技术人员所熟知,所以不必在此再作讨论。同样,具体的算法,用于处理接收来自探测器10的数据以导出组成参数的值,以及待发送至探测器10的控制信号,也不属于本发明的部分,而不再叙述。
数据处理机26,必须完成两种不同的处理。第一种是执行时本质上与时间无关。于是,接收来自探测器10的数据,从数据至需要的组成参数值的演算,不管何时进行演算,应当始终产生相同的结果。
第二种型式的处理是时间相关的。于是,读出由探测器10发送至孔上的出现在电缆12的一数据项,和成功的捕获与记录这数据,要依赖于电缆由处理机26及时的监视。同样,发送至孔下到探测器10的命令信号的产生,必须以一种速率完成,此速率是足够完成探测器10的适当的操作,以及足够向应条件的改变。
这二种型式的处理,容易彼此冲突。参数值的准确演算,会花费太多处理时间,结果延迟或产生不准确的命令信号和/或不能检测和记录发送到孔上的数据。同样,数据接收和产生命令信号由于改变中的数据而会妨碍接收数据的求值,该数据还需要用于其他计算。而且,甚至当程序准确地起作用时,因转换到一不同种类的操作在不同速率的计算机系统,就可不必继续这样做,或者例如修改后加一个或多个新的程序模块。能促进有效的和恰当的程序编制以执行这种工作和缓和难题的数据处理机操作的系统和方法,现将参照图2至图15叙述于下。
在这些图中为方便起见数据处理表现为正由几个中央处理机(CPUs)以并行操作方式执行。各个中央处理机,在全部处理中是专门从事一项任务。然而,必须明白到本发明能平均地用一个或多个中央处理机执行,它们的资源在几个不同的处理过程之间是共享的,各个处理对应于将由专用的中央处理机执行的任务。
这里使用并行处理是指用任何这些装置执行二个或多个处理。这种处理包含数百个指令,实质上会十分复杂。如果有二个或多个中央处理机,它们可以是由比较低的带宽数据链路连接的分布式处理单元,或是由比较高的带宽链路(例如共享同一主存储器)连接的多处理单元。
同样,可清楚的说明由中央处理机处理前和后的数据存储,是在几个分开的存储器件中划分。然而,一个单一的大存储器件,在不同的要求中适当的划分其容量能够用来作数据存储。执行这种共享处理机和存储资源的技术是众所周知的,而毋须在此详述。
作为例了,图2和图3是关于计算二次方程的根(即让y=0时的x值)的装置,二次方程根据公式
Figure C8610511000121
此处a、b和c作为系数输入。中央处理机的数目、它们的输入和输出与结构,以及关联的存储器件的互相连接已经相应地绘出。显然,这些另件将根据设置的处理机的专门用途而变动。
参阅图2,数据处理机30如图示有三个中央处理机32至36。各中央处理机在一个或多个输入端接收数据项,而处理后在一个或多个输出端供给数据项。为此,诸中央处理机以已知的方式包括运算和逻辑电路、寄存器和指令译码电路。此外,各中央处理机采取有其自己的存储器的方式,用作存储控制其操作的指令的程序,以及用作存储根据那些指令操纵的数据。显然,为这些目的中央处理机能共享公共的存储资源。
准备由处理机30处理的数据(系数a、b和c的数值)是在输入线40、42和44上接收,这些线被联接到存储器52的输入端46、48和50,存储器52含有存储器件54至64。存储器件54、56和58有各自的单独输入端66、68和70,它们联接到输入端46、48和50,以接收来到处理机30的输入数据。其他的存储器件60至64有各自的单独输入端72、74和76,将在后面说明是用于存储由中央处理机32至36处理的结果数据。为清晰起见,至存储器件54至64的输入线,用点线画出,有助于与其他的连接线区别。
数据存储器件54至64,可以结合例如半导体随机存取存储器或磁盘存储器,或者是两者的组合。如将在下文说明的那样,数据存储器件不是必需能写入新数据至存储单元,这些存储单元中已经预先写入了数据。于是,也可能结合存储器,该存储器仅允许在一给定的存储单元有一个单独的写入操作。这样的存储器的例子是激光盘存储器,在激光盘存储器中,数据是藉使用激光束存储,以产生和接着读出一永久式样的微细的坑,微细的坑是在金属的或敷金属的塑料盘的表面上。这种存储器是现有的,从例如加利福尼亚州森尼韦尔的奥普添曼(Optimem)和加利福尼亚州雷东多比奇的光盘制造公司(阿尔凯丹尔汤姆森AlcatelThomson的一个部门)可以买到。激光盘存储器具有允许极大数量的数据存储在一个相当小的实际空间内的优点。
各存储器件54至64是设置用以在其各自的输入端66至76接收数据,和以连续的数据项流的形式存储这数据。先前接收的项后,各附加的数据项是加于流的末尾。显然,尽管有由存储器件的有限实际存储容量所施加的限制,限制了任何一次能存储的数据数量,数据项流的长度原则上能无限增加。然而,每一新数据项还是按延长流的长度的方式加以处理。
这果采用数据项术语来描写任何离散信息实体,该实物要独立于其他项存取。于是,取决于应用,数据项可以是,例如,一个单一的二进制数字(比特),一个八比特位组,一个十六或三十二比特字,以整数或浮点格式代表一个值的多位组值,编码一串字母字符的一串位组,或甚至这些值的一整个阵列。一个数据项本身可以是一个值,该值用作在存储器中另一数据项存储单元的指示字。
当一数据项加于存储器件中的流时,根据它在该流中的位置,它变得与一单值的索引值相联在一起。各数据项的索引值比在相同流中紧接先前项的索引值多一。在图1所说明简单情形中,各流有其自己专门的存储器件,这索引值仅仅是数据项的数目,这些数据项已经由存储器件接收(假定第一项有一个零的索引值)。在这些情况中,没有要求特别的动作来分配数据项的索引值。而且,如果在存储器件中的实际存储单元有从零开始的地址,于是数据项的索引值直接相当于在存储器件中存储单元的地址。存储器件只需保持下一个空存储单元的指示,使下一个接收的数据项应写入该存储单元。
几个数据流可以存储在同一存储器件中,而不是每一数据流有个别的专用存储器件。一个可能对存储器件处理的方法是将其分割成几个段,每段分配给一个流。在这种情形下,也需要保持一个为各流存储单元的记录,此存储单元包含该流的第一数据项。于是,任何在同一流中其他数据项的存储单元能藉加该项的索引值于包含第一项的存储单元的地址来识别。用另一种方法,不同流的数据项  可以混合。在这种情形中,可以保持与各流有关的存储单元的目录,或者可以采用链表,各存储的数据项有与其有关的在同一流中下一个数据项的存储单元的指示字。这些共享存储器管理的技术,在已有技术中是大家熟知的。
存储器件54至64可以结合存储器,这些存储器允许以新数据重写存在的数据。如果不再需要的数据项能识别,以致它们的存储单元能再用,这就可能继续无限地将新数据项添加于流,尽管在存储器件中项的数量在任何一次明显地不能超过其容量。允许这种再用的一种可能性是把从存储器件检索的数据项的选择局限于那些存储器件接收的数据项不早于最近检索的数据项。于是,假定数字上增加分配给数据项的索引值,既然存储器件接收了数据项,要检索的项的索引值就不允许减小。任何可以再用的存储单元,其数据项的索引值,小于从存储器件取回的最后项的索引值。用于管理有限存储资源以完成此结果的技术是众所周知的,例如所谓的无用数据收集。
即使一个新数据项实质上以这种方式再用较早的和现在不要的数据项的存储单元,新的项是与其自己的单值索引值有关,较早的、被代换的项的索引值是决不再用的。单经变换的存在数据项也不再用。代替另一个数据项值是藉写入有其自己的单值索引值的一新数据项和用这数据项而不是较早的、被取代的项来实现的。
如果再用存储单元,必需保持一个仍旧存储的最早数据项的索引值和其实际存储单元的地址的记录。这索引值和任何其他数据项的单值索引值之间的差,然后能加于最早数据项的地址上,以导出该其他项的地址。
如果存储器52结合一写一次存储器,例如上述激光盘器件,这种再用是不可能的,所以不需要限制待检索的数据项的索引值:检索的数据项的索引值能随意地增加或减少。尽管存储器52最后将成为饱和,它的非常高的存储容量,在存储媒体必须取代或增大之前,允许一个可行的实在持续时间的操作周期。
各存储器件54至64有一个或多个输出端:器件54和56各有三个输出端,分别为78、80和82与84、86和88;器件58有一个单输出端90;器件60有二个输出端92和94;以及器件62和64各有一个输出端,分别为96和98。参照要求项的索引值来配置各个这样的输出端,以检索存储在有关存储器内流中的任何数据项。在这种场合,数据项请求一个索引值,对于这索引值数据项还未收到,存储器件被安排以等待为该索引值接收一数据项,然后为响应请求而返回该数据项。如果存储单元被再用时,就象存储数据项那样,用相同的方法来识别数据检索存储单元,而该可检索数据的索引值的范围,将被约束,如上面所指出的那样。
图2中清楚的说明各存储器件54、56和60,有分开的复输出端,输出端也与输入端分开的。然而,必须明白在磁盘存储器中,例如,输入和输出的功能可适当的控制一单个读/写头来执行。同样,如果采用半导体存储器,这些功能将由已知方式的寻址电路系统来提供。
经过输入线40至44由数据处理机30接收的数据项分别存储在存储器件54至58中。所有这些数据项(系数a、b和c)是被中央处理机32所使用,该处理机相应地有三个输入端100至104,分别连接至存储器件54、56和58的输出端82、84和90。一条控制线106从中央处理机32至输出端82,如虚线所示,允许中央处理机以指定数据项的索引值(系数a的值),数据项的索引值是从存储器件54检索而得,而由输出端供给中央处理机32。同样的,控制线108和110连至输出端84和90,允许中央处理机32以指定从存储器件56和58检索到的要求数据项(对应系数b和c的值)。中央处理机32产生一单一数据项流(已知中间结果的根值)该数据项经过输入端72供给存储器件60。
存储器件60的输出端92允许中央处理机34获得根据经过控制线112指定索引值的这些数据项,连同来自存储器件54和56的数据项(对应系数a和b的值),该数据项在控制线114和116的控制下,由输出端80和88供给。中央处理机34经过输入端74向存储器件62供给由其执行处理的结果数据项。这些数据项是二次方程的一个根值,该方程对应于系数a、b和c的值。中央处理机36同样地接收经过输出端78、86和94来自存储器件54、56和60的与按照经过控制线118、120和122指定的数据项,而将结果数据项经过输入端76供给存储器件64。这些数据项是对应那些系数的二次方程的另一个根值。
最后,在存储器件62和64中的数据项,根据经过控制线128和130指定的索引值,由输出端通过数据处理机30的输出线124和126供给。
从流的同一性,待检索的数据项,是否需要明确地指定,取决于存储器的装置和索引值的格式。于是,在图2的结构中,要求的流是由适当的控制线106至122、128或130的实际选择固有地识别。如果存储器是几个流之间共享,流的同一性能被编码成索引值,从而给予每个流有自己特色的索引值组。另一方面,索引值可以是每个流相似,而当一数据项请求时流的同一性能照有索引值的参数供给。
各中央处理机32至36的执行过程概述于图3中,特别是涉及中央处理机32 。中央处理机34和36的操作是类似的。
参阅图3,当处理是最初开始时,准备供给中央处理32的数据项的索引值必须复原。这由步骤132代表。中央处理机32然后在步骤134根据现在的索引值从存储器件54请求一系数a的数据项。在步骤136,中央处理机32检验数据项是否已经接收到。如果没有,处理回路重复地经过步骤136,直至数据项接收到为止。当数据项已经接收到,处理继续至步骤138,此处从存储器件56请求一系数b的对应数据项,而然后必要时回路经步骤140,直至数据项接收到为止。这种请求的程序和回路的第三次重复是在步骤142和144,从存储器件58获得一系数c的对应数据项。
当所有三个系数的数据项已经获得时,中央处理机32前进至步骤146,此处它根据下列公式计算根R的对应值: R = √ ( b 2 - 4 ac ) 此值在步骤148作为一数据项供给存储器件60,此处它接收一对应于那些数据项的单值索引值,那些数据项是在步骤134、138和140检索的。
中央处理机32继续至步骤150,此处来自存储器件54至58检索的数据项中指定的索引值是增加的,而然后再进入步骤134以重复下一组系数a、b和c的程序。
中央处理机34和36的操作是非常相似的,但在步骤142请求的数据项是从存储器件60获得。对于中央处理机34是根据下列公式在步骤146执行计算: x = - b + R 2 a 而结果是在步骤148作为数据项供给存储器件62。在中央处理机36的情形中,在步骤146执行计算是根据公式: x = - b - R 2 a 而结果是在步骤148作为数据项供给存储器件64。
如图2说明的,由中央处理机32至36中任何处理机执行的每一处理,供给数据项至专用的存储器件,以存储来自该处理的数据项。虽然图2中说明的处理,各仅有一个输出,一个处理当然能产生二个或多个输出,在该情形中,各输出将有其自己专用的存储器件。尽管任何一个存储器件可供给数据项至二个或多个处理,每一处理从一个或多个存储器件54至60中单独接收数据项。因此,处理之间仅有的交通方法是通过存储器件54至60。此特征提供显著的优点。所有传送和来自处理的数据项是通过存储器件中数据项流隔离。于是,处理之间的同步化是固有地由流提供,而没有任何明确的设备用于在处理它们自已的过程要求的同步化。一个处理能加一数据项到流,而不必为任何其他读它的处理等待。当要求时,各处理能请求要求的数据项,而数据项的到达并不强迫执行任何处理,该处理可使用该项。因为索引值不再分配给新的数据项,而数据项不改变,在由有限的存储容量所施加的约束中,一数据项对处理始终是可用的,在那些同样的约束中,一处理能请求束中任何数据项,而不限制接收在预定程序中的项。然而,没有在不正确的次序中接收数据处理的危险。
同样地,图2所示的实施例中,由中央处理机32至36执行的处理和综合数据处理机30的输入和输出之间通信的唯一方法,是通过存储器52中的存储器件(即存储器件54、56、58、62和64)。这可以是合乎要求的,但不是根本的。
画在图2和图3中的处理功能,是纯粹地时间无关的。特别是,根据从存储器件54至64检索数据项获得的值,是与检索项发生的时间无关。履行时间相关功能包含附加的检索功能,例如那些在图4和图5中说明的功能。
图4说明带有附加电路的存储器件150,允许检索存储在器件150内的流中最近接收的大多数数据项,而无需被中央处理机指定该项的索引值或请求项的处理。来自中央处理机的控制线152是连至寄存器154,当在输入线158上接收各数据项时,该寄存器用通过连接线156来自存储器件150最近接收数据项的索引值更新。寄存器154本身又连至存储器件150的输出端160。于是,当一数据项的请求在线152上接收时,它由寄存器154连同最近接收的项的索引值传送至输出端160,这个值是现在保存在寄存器154中的值。检索过的数据项是经过输出线162供给。
图5说明存储器件164,带有附加电路允许尝试检索在时间上有预先限制的数据项,该时间为了在有指定索引值的数据项没有时等待之用。控制线166是直接连至存储器件164的输出端168,以指示待检索数据项的索引值,控制线166也连至单稳态电路170的触发输入端T。输出线172供给任何检索过的数据项,也连接至单稳态电路170的清除输入端。单稳态电路170的置位输出端是连接至超时信号线174和也连接至输出端168。当经过控制线166请求一数据项时,请求是供给存储器件164,和同时触发单稳态电路170,使其进入预定时间周期的准稳定状态,如果请求数据项是在存储器件164中,或者是在预定时间周期终止之前接收的,它是经过输出线172供给,因此,在它到达其准稳周期之前,清除单稳电路170。然而,如果请求数据项在预定时间终止之前不成为可用,单稳态电路170工作时间已过,从而在超时线174上产生一信号。此信号指示给请求中央处理机或处理超时已经发生,而且也作废在存储器件164的输出端168上未完成的请求。如果需要,单稳态电路能有一可变准稳定的周期,周期根据数据项请求时在控制线166上由请求中央处理机指定的值确定。履行这种功能的电路系统设计,在本技术领域中的技术人员是熟知的。
现参阅图6来叙述根据本发明的第二数据处理机。此处理机使用参照图4和图5的上述检索操作,以下列方式履行时间相关功能,以一沿轨道行走的传感器(例如,在钻孔中正在向上吊起的记录探测器)控制其速度和取得其数据传感器每二秒钟产生数据项一次,而其速率是每十分之一秒发一次信号。处理机检测来自传感器的连续到达的数据项,而当周期超过预置时限而数据中断时,终止传感器的操作。
参阅图6,来自传感器的数据项是由一般以175表示的处理机在线176上接收,而供给数据存储器180中的存储器件178。指示传感器速度的数据项是在线182上接收,而供给至另一数据存储器件184。此存储器件有一设置的输出端186,以提供上面参阅图4所叙述的读-最新功能。此输出端供给指示传感器速度的最近数据项至中央处理机188,该处理机也接收来自存储器件178的输出端190的数据项,和将其处理结果的数据项供给存储器件192。另一个输出端194来自存储器件178,存储器件178有上述参阅图5所述的超时功能,将传感器数据项供给第二中央处理机196,该中央处理机的输出端连至存储器件198。存储器件192和198的输出端200和202分别连至第三中央处理机204,该中央处理机馈送数据项至存储器件206。第四和最后中央处理机208接收来自存储器件178经过输出端210的传感器数据项,以及供给数据项至存储器件212。存储器件206和212供给数据项如同从数据处理机175的输出信号,分别经输出端214和216以及分别经输出线218和220送出。
中央处理机188的操作,可用图7中的流程图说明。当处理机175的操作开始,从存储器件178和184检索的数据项的索引值,在步骤222被复原。然后,中央处理机188进入在步骤224开始的回路,该处传感器数据项是请求自存储器件178。因为传感器每二秒钟仅供给数据项一次,最初在存储单元没有数据项对应于由中央处理机188在作出请求过程中指定的索引值。因此,当中央处理机188进行至步骤226,以决定是否从存储器件178已经接收到数据项,结果最初将是否定的。所以,中央处理机188循环返回再进入步骤226,而连续这样做,直至数据项接收到为止。然后,中央处理机188前进至步骤228,该处从存储器件184请求最后的速度数据项。因为速度数据项是每秒钟接收十次,所以甚至在第一次请求作出时,存储器件184中已经有数据项。所以,总有一最后的值可利用,而请求即刻完成。中央处理机188继续至步骤230,以决定传感器的速度是否需要调整。此决定能根据任何合适的规则系统作出,而因不是本发明的一部分,毋须在此赘述。如果不需改变,中央处理机188经过步骤232复原以重复在步骤224开始的回路,步骤232中用于请求来自存储器件178的数据项的索引值是增加了的。如果要求改变,在步骤234,适当的命令发送至存储器件192,而然后中央处理机如上面一样前进至步骤232。
中央处理机196的操作是由图8中的流程图表示。当处理机175开始操作时,在步骤236索引值被复原。然后过程以一有规定的时限前进至步骤238,从存储器件178请求数据项。至于图7步骤224中由中央处理机188检索的数据项,在数据项响应请求成为有效以前,将有一时间间隔。在此时间间隔期间,中央处理机196经过二个判定步骤240和242循环。在这些步骤的第一步骤中,中央处理机检测数据值是否已接收到。如果已接收到,中央处理机196就前进至步骤244,该处增加从存储器件178检索的索引值,而然后返回至步骤238。
如果步骤240的结果是否定的,中央处理机就前进至步骤242,该处它检测是否有一超时信号从存储器件178的输出端194接收到。如果没有这种信号出现,从传感器来的数据的中断时限还未曾超时,所以中央处理机196重复判定步骤240和242。然而,如果超时信号接收到,于是中央处理机196以步骤246代替继续,该处它发送一命令至存储器件198以终止传感器的操作。
如图9所示,中央处理机204最初在步骤248和250从两存储器件192和198请求数据项。然后它在步骤252检测是否已从存储器件192接收到任何项。如果是,它在步骤254发送接收到的数据项至存储器件206,在步骤256重新开始从存储器件192请求一数据项,以及返回至步骤252。否则,它前进至步骤258以检测来自存储器件198数据项的接收。不存在数据项的时候,它以返回至步骤252重复检测回路。否则,它在步骤260发送接收到的数据项至存储器件206,在步骤262重新开始从存储器件198请求一数据项,以及返回至步骤252。由中央处理机204履行处理的作用是合并由中央处理机188和196依次序产生的命令,和将它们传送至存储器件206,经过线218作为处理机175的一个输出以备供给。这个过程是一时间相关过程的一个例子,因为出现在存储器件206中命令的正确程序是随着由传感器遇到的情况(例如钻孔情况)以及它的结果状态而变更。
在时间相关方式中,另一个合并二组命令的方法是以各命令串经过各自的输入端加至存储器件中的流来给一存储器件设置二个输入端。
中央处理机208从存储器件178仅仅读出传感器数据项,和施加适当的处理于它们,以给出所需的信息,该信息然后输出至存储器件212。这处理可以采取各种形式,例如算术的操作或结合其他的数据。这种处理的详情是与本发明无关的,而毋须进一步过论。
和图2的处理机30的情况一样,所有由处理机执行的过程之间数据的通信,是由保持在存储器中的数据流传递,而每一个数据项与其流中的单值索引值相关。
当分开的中央处理机使用于各处理时,这安排有下列优点:时间无关操作(例如由中央处理机208管理传感器数据)和时间相关操作(例如由中央处理机188监视传感器速度)能以分开处理的方式完成,而没有它们之间可能发生不利互作用的关系。这有助于设计和写效率高它、有效的和可靠的程序以及它们的维修。而且不需考虑供给打算运行程序特别详细的硬件。同样地,不需制作专门的设备用于硬件随后可能的修改、使用不同的硬件或改变履行处理的程序。
于是,由中央处理机208管理的数据,究竟能以什么速率前进是适当而没有由于执行其他的处理失去或重写等候管理的传感器数据项的危险,要取决于管理的复杂性和中央处理机208的速度。这些数据项有效的保留在存储器件178中按照要求经过输出端210由中央处理机208检索,不管这些数据是否先前经过输出端190和194由中央处理机188和196检索过。相似地,由这管理引起的输出数据能由中央处理机208以一个速率产生,该速率与数据经过输出线218抽出的速率无关,抽出前数据没有失去的危险。
由中央处理机188执行的时间相关处理能在无论什么速率下完成,以便在认为合乎要求的速度下,监视和控制传感器,而数据项能相应地从存储器件178经过输出端190抽出。此处理将独立地在中央处理机208中起执行数据管理功能的作用,没有可能由那种管理引进延时或定时问题。所以当编制处理程序时,不需要考虑时间冲突。
如果处理机是由几个处理间共享的单一中央处理机履行,同样没有由于执行时间相关处理而恶化时间无关处理要求数据的危险。延时的可能性对时间相关处理确是存在的,但是独自经过数据项流发生的处理间通信的处理的分段,促进这种处理机的分析操作以及识别和矫正潜在的冲突。此外,可以相信这体系结构提供一有效的结构,在其中执行表示时间约束的技术,此时间约束能避免时间冲突。
此外,本发明帮助设计系统,该系统能最初以单一的中央处理机执行,而然后无需经重大的修改就可转移至多中央处理机系统。
尽管不需在不同的处理间划分时间相关和时间无关功能,但这样做一般被认为是好的习惯作法,并有助于减少时间冲突的危险或随后修改的困难。
处理机175和外部世界之间的所有通信最好是经过附加数据项流传递,如图6所示。然而,如果需要,一个或多个处理可以与其他的设备直接地交换。这种交换当时一般在性质上是时间相关,结果可能取决于例如执行速度。
图2和图6的处理机30和175,在各中央处理机和存储器件之间有单独的连接,数据项用这些存储器件通信。另一方面,如图10所示,这种连接能多路传输的。,参阅图10,存储器270有六个存储器件272至282,各存储器件有各自的输入端284至294和各自的单输出端296至306。这些输入端和输出端连同与各输出端296至306相关的控制线310至320,各连接至输入/输出电路308。三个中央处理机322至326由各自的控制线328至332和双数据线334和338连接至输入/输出电路308。输入线340和输出线342以及相关的控制线344也连接至输入/输出电路308。
在操作中,中央处理机322至326,藉发送信号经过控制线328至332至输入/输出电路308,获得来自存储器件272至282的数据项。这些信号识别存储器件,要求的数据项和要求项的索引值来自该存储器件。输入/输出由308发送请求指令(包括索引值)至存储器件,因此经过适当的控制线310至320识别。请求的数据项由存储器件经过各自的输出端296至306返回至输入/输出电路308,该电路308将数据项经过适当的数据线334至338转送至作出请求的中央处理机。由中央处理机322至326产生的数据项是经过各自的一数据线334至338供给输入/输出电路308,连同对应的控制线328至332上的信号,识别哪一个存储器件应当接收数据项。输入/输出电路308发送数据项至这样识别的存储器件,将数据项供给输入端284至294中适当的一个。
输入/输出电路308同样将在输入线340上接收到的输入数据,供给至存储器件272至282中适当的存储器件,而根据经过控制线344传送的请求,在输出线342上供给数据项。
如图10所示各存储器件272至282,不管多少中央处理机从任何一个存储器件要求数据项,各只需一个输出端296至306。设置输入/输出电路308为各存储器件272至282保持一个在该存储器件中的数据项流的字长的记录,以及保持为从该存储器件中请求数据项的各中央处理机最近检索的数据项的索引值。如果存储器270在如上说明的几个数据项流中间共享存储器,输入/输出电路308保持包含各流的数据项的实际存储单元。同样,如果使用读/写存储器,当它们包含的数据项成为进一步处理不需要时,输入/输出电路也控制存储单元的再用。使用管理存储资源的已知技术执行这些功能,在本技术领域中的技术人员,是很容易明白的。
一个可能的实施例,输入/输出电路包括二块随机存取存储器和二个寄存器,寄存器的一个用于交换控制和输入/输出电路与一中央处理机之间的状态信息,而另一个寄存器是用作转换数据项和索引值。第一块随机存取存储器是配置成一套表,各表有六十二对十六位项目和二个三十二位项目,而用以保持多达六十二个未定请求的细目,未定请求为来自一个存储器件的数据项。三十二位项目的一个是用以存储数据项的索引值,该数据项最近加于该存储器中的项的流上。另一个三十二位项目存储在存储器件中包含该数据项的存储单元的实际地址。各对十六位项目中的第一项目包含一个从最近已加数据项的索引值到由中央处理机请求的数据项的索引值的补偿值。对中第二项目识别中央处理机或请求该数据的处理。一个兆字节随机存取存储器以这方式设置,能在四千零九十六个存储器件的各器件上提供多达六十二输出端的功能。
第二块随机存取存储器是配置成一千零二十四个各有四项目的群,而用作先进先出缓冲器,缓冲器用于响应来自中央处理机或处理而检索的数据项。在各群中第一项目是一识别中央处理机或作请求的处理的十六位值。第二项目是一识别存储器件或流的十二位值,从该流请求值。第三项目是用于存储数据本身,在这种情形中是三十二位长。第四项目是一四位状态值。以这种配置,缓冲器需要八千字节的随机存取存储器。存储器件本身能执行为四千零九十六流的每一流存储多达五百十二数据项,数据项各为三十二位长,需要另一个八兆字节随机存取存储器。
中央处理机能藉将准备存储的数据项放进输入/输出电路的数据转移寄存器以及将全同的目的地流连同指示要求写操作的代码放进控制和状态寄存器来执行一写操作。输入/输出电路在数据转移寄存器中取值,和将其加至在控制和状态寄存器中识别的存储器件中的数据项流上。该流的未定请求表于是由增加最近附加的数据项和该项实际存储单元的索引值的项目来修改。此外,在同一表中各62对项目中的请求数据项的补偿项目是减少的。如果任何补偿变成零,而成对的处理标识符是非零时,于是刚才附加的数据项有一索引值,对于该索引值数据项已经请求。假若这样,数据项、处理标识符以及流的全同是加至检索数据项的缓冲器,而未定请求表中的处理标识符是置零以指示请求已经完成。
中央处理机或处理过程藉排列包含项的流的全同与在控制和状态寄存器中其自已的全同,以及在数据转移寄存器中要求项的索引值,从输入/输出电路请求一数据项。在识别符流的未定请求表中一空对项目,是以来自最近附加于流的项的索引值的项的补偿,和以请求处理的全同来修改。在缓冲器中下一个检索的数据项,然后是排列在数据转移寄存器中,而在缓冲器内关联的项目中的处理标识符和流标识符是排列在控制和状态寄存器中。这样识别的处理,于是能从输入/输出电路检索数据项。如果一个或多个中央处理机被处理过程共享,处理过程的请求附加于未完成请求的表的处理,是如下面所述的那样暂停执行,而在控制和状态寄存器中识别的处理再起作用。
必须指出的是用这装置,数据项未定的请求,能藉置未定请求表中处理全同项目至零而作废。
当可以代替使用特殊用途硬件时,根据本发明的数据处理机也能藉适当地编制一通用计算机程序来完成,以提供如上所述的存储功能和处理功能。图11至图15是流程图,借助于例子说明方法,其中能提供上述的各种读和写功能。
这些图假定基本存储管理和处理执行操作的存在,例如写至或读自存储器、无用信息收集以及执行处理的暂停和再起作用。这种操作例如组成中间表处理语言-D(Interlisp-D)的整体部分,中间表处理语言-D编制设施可从加利福尼亚州帕萨迪纳市施洛斯(Xerox)公司买到以及这种操作叙述在由施洛斯公司1983年10月出版的‘中间表处理语言参考手册’(Interlisp Reference Manua1)中。
各功能是用子程序的形式叙述,子程序能藉需要执行该功能的处理调用。当这样的调用出现时,调用处理暂时地转移控制至子程序。于是,如果子程序包括一步骤以暂停执行直至另一个场合再使它起作用,该作用也暂停调用处理的执行。
图11说明读一数据项的程序,为响应来自处理的请求,而从一有具体索引值的流读出数据项。程序是在350进入,而在步骤352首先检测数据项是否对于请求的索引值是可以利用的。例如,这能藉比较索引值与流的现在的记录长度来完成。如果数据项存在,程序直接前进至步骤354,该处数据项是从存储器获得,而供给请求处理,之后,程序在步骤356返回至调用处理。如果请求的数据项是不可利用的(即,对于该索引值的数据项还未收到)程序移至步骤358。在此步骤索引值与请求处理的全同附加于与保持请求细目的数据项流相联系的表,该请求和该流比较起来是未定的。此表本质上是为这目的预先保留的存储单元的群,例如用阵列的形式,和上面关于图10的输入/输出电路所叙述的未定请求表相类似。然后程序前进至步骤360,该处程序的执行是暂停(例如使用中间表处理语言-D的SUSPEND PROCESS操作)直至数据项附加于流,随后程序的执行再起作用,如下所述。此后,程序移至如上面所说明的步骤354。
写数据项至流的程序是在图12中说明。参阅图12,程序是在362进入,而以步骤364开始,该处数据是存储在存储器中。在中间表处理语言-D中这能用CONS操作完成。在下一步骤366,指示数据项流的长度的计数器是加一,而然后该流的未定请求的表是在步骤368检测,用作关于索引值等于新流长度的任何请求。如果没有这种请求,程序直接移至步骤370,该处已经读自该流的最早数据项被识别,而然后至步骤372以删去所有带有较早索引值的数据项。在中间表处理语言-D中此步骤能用RPLACD操作完成。这二无用信息收集步骤脱开程序,用作再用被已经变得无用的数据项占用的存储单元,而当使用有限容量读/写存储器时是适用的。必须明白的是如果采用写一次存储器时,它们能省略。步骤372之后,程序在步骤374返回至调用处理。
如果一个或多个未定请求在步骤368被发现,程序前进至步骤376,该处涉及发现的各请求的项目被检查。如果包括参考计时器功能,如下面关于图13的叙述,该计时器功能被取消。同样,如果包括带有未定请求的另一流的全同,如下面关于图14的叙述,该流上的未定请求被除去。于是在步骤368发现的各请求的项目,从表中除去。程序继续至步骤378,该处为该索引值的数据项请求的处理被再起作用(在中间表处理语言-D中这能用WAKE PROCESS操作完成)。此后,程序在返回374之前,在步骤370和372实现无用信息收集。
现参阅图13,以暂停完成读功能的程序是在380进入。在步骤382按照请求的索引值的数据项是否已经可利用来作出检测。如果是,在步骤384数据项是从存储器获得而供给至请求处理,至该处理在步骤386程序返回。否则,在步骤388索引值和请求处理的全同被附加于该流的未定请求表上。到这程度,程序是与在图11中说明的标准读程序的步骤350至步骤358一样。然而,在这种情形中,计时器功能在超时信号产生以前,也为要求的时间间隔而建立。其全同是附加于未定请求表,而另一表是与计时器结合,计时器在超时信号产生以前指示应当经过的时间间隔,请求处理的全同和流的全同,根据这些请求数据项。在步骤390计时器开始,而在步骤392程序暂停执行。当程序接着再起作用时,在步骤394检测再起作用是否已经发生,因为计时器已经产生一信号指示规定的时间间隔已经过去。如果是,在步骤388附加于未定请求表的请求在步骤395除去,超时信号在步骤396产生,而程序在步骤398返回至调用处理。否则再起作用必须由接收为请求的索引值的数据项而引起,在该情形中,程序移至步骤384以获得和供给上述的数据项。
图14是以判断功能完成读的流程图,用作从数个流中获得数据项,和根据预定的某些判断算法结合它们。例如,这可以采用代替由图6中所示的数据处理机175中的中央处理机204执行的处理,以便合并在存储器件192和198中的数据项流。
参阅图14,程序在400进入,而在藉尝试从各流获得数据项的步骤402开始,流由请求处理识别。在步骤404程序检测是否已经发现任何数据项。如果是,程序直接达到步骤406,该处根据预先规定的判断功能选择一个数据项。此功能例如可以从一个流中选择一数据项优先于从另一个流中选择数据项。程序在步骤408供给被选择的数据项至调用处理,而在步骤410返回控制它。如果在步骤402未获得数据项,程序前进至步骤412,该处索引值和各调用处理的全同被附加于各相关流的未定表中。此外,各表中的项目包括每一其他流的全同,对于这些请求是未定。此后,程序在步骤414暂停执行操作,直至请求的数据项成为可以利用的,从而如上指出的来使程序再起作用。于是程序返回至步骤402,以获得数据项,该数据项现在是可以利用的,而照已经叙述的那样继续至步骤406。
图15说明在流上接收的最后值的一个读出程序。程序在416进入,而在步骤418藉检测流的长度是否为零开始。如果不是,程序在步骤420获得索引值等于流长度的数据项,并在步骤422返回控制之前将它供给调用处理。否则,在步骤426返回控制之前,程序在步骤424供给一没有数据项可以利用的指示。
能提供其他的读功能。一种可能性是一程序随着一个最近经过同一输出端获得的数据项读下一个数据项。这将只要求存储器件的输出端保留一下索引值的记录,索引值是最后供给的数据项的。另一个可能性是一移动命令,该命令规定一索引值,对于它输出端没有任何读的数据项准备置位。这在预备使用读下一项操作中将是有用的。
在没有用供给的数据项,直至组中所有的项可以利用的情况下,藉限定在组中第一项的索引值和要求的项数,能请求在同一数据项流中,一组有接近的索引值的数据项。由于各流的实际索引值对于共同的参考索引值有某些预定的关系(各流的这种关系可以不同)能请求来自数个不同流的数据项。这将有助于检索对应的数据项,这些数据项例如是同时从不同的传感器产生的。
如果本发明的数据处理机,是以中央处理机数少于处理数来完成,而特别是用单一的中央处理机完成,于是要求一个管理或调度程序以协调分配中央处理机在不同处理间的资源。这种调度程序可以只维持一个处理的第一表,这些处理能即刻运行,以及一个处理的第二表,这些处理是暂停执行等待的数据项。各处理被分配一些优先定额,依靠定额调度程序能确定在第一表中哪一个处理应当优先于该表中其他的执行。当一处理要求一数据项时,藉调用如上说明的一读程序请求它。如果数据项是可以利用的,即刻供给数据项,而处理继续执行。否则读程序本身暂停执行,而因此暂停调用处理。暂停处理具有转移从第一表至第二表处理的作用。同样地,藉写程序写入一请求的数据项使程序再起作用的处理,转移处理回至第一表。当一执行的处理被转换至第二表时,调度程序扫描第一表,以识别下一个根据优先定额准备执行的处理。如果使用二个或多个中央处理机,各中央处理机执行一处理,而当它完成时开始执行最高优先处理,该优先处理等待在处理的第一表中。
根据用于数据处理的本发明的方法和系统,已在本文中叙述和说明过。同时已经叙述过本发明的特别实施例,因此不打算限制本发明。于是本发明已经叙述过关于以顺序或串行形式出现的数据项的处理。显然,并行接收的数据项能容易地通过中间转换顺序的再现。同样地,序列不需必定是时间相关的序列。虽然全部的处理已经按照接收来自至少一个流的数据项来说明,也可能设想处理并不接收数据项,而只是产生数据项,例如供给时间和日期信息或表示波形的数据项。所以很明显的,对本技术领域中的专业人员在不违反所附权利要求的精神和范围的情况下,可对所叙述的本发明作出各种变更和修改。

Claims (12)

1.一种用计算机处理从通过油井钻孔的探测器获得的记录数据的方法,其特征在于,该方法包括下列步骤:
从探测器的传感器中获取代表钻孔周围组成的地质性能的数据;
将地质数据写于地质数据存储器作为顺序数据项的流,所述地质数据存储器是可操作的用以仅接收和存储地质数据流;
执行包括下列子步骤的第一处理:
(a)从地质数据存储器顺序地读出重要的地质数据项,
(b)使用所述的重要的地质数据项确定一第一参考值,
(c)以顺序数据项的流的方式将第一参考值写于第一参考值存储器,所述的第一参考值存储器是可操作的用以仅接收和存储第一参考值流,以及
(d)对于另一地质数据项重复子步骤(a)-(c)顺序读出;
执行包括下列子步骤的第二处理:
(a)从地质数据存储器顺序地读出重要的地质数据项,
(b)使用所述的重要的地质数据项确定一第二参考值,
(c)以顺序数据项的流的方式将第二参考值写于第二参考值存储器,所述的第二参考值存储器是可操作的用以仅接收和存储第二参考值流,以及
(d)对于另一地质数据项重复子步骤(a)-(c)顺序读出;
上述的处理是在一个处理的确定子步骤的速度不改变另一个处理中参考值的确定的情况下同时进行的处理。
2.根据权利要求1所述的处理记录数据的方法,其特征在于,其中第二处理确定一探测器命令作为该第二参考值,将该探测器命令写于探测器命令存储器,该探测器命令存储器仅接收和存储探测器命令,以及包括将命令传送以实现探测器操作的子步骤。
3.根据权利要求1所述的处理记录数据的方法,其特征在于,第一处理由第一微处理机执行,而第二处理由第二微处理机执行。
4.根据权利要求1所述的处理记录数据的方法,其特征在于,第一和第二处理由单个微处理机执行。
5.根据权利要求1所述的处理记录数据的方法,其特征在于,其中一个处理顺序地读出写于地质数据存储器的每个地质数据项。
6.根据权利要求1所述的处理记录数据的方法,其特征在于,其中一个处理顺序地仅读出写于地质数据存储器的最后的地质数据项。
7.根据权利要求1所述的处理记录数据的方法,其特征在于,所述写入地质数据步骤,每个t时间周期数据项被写入,至少每个t时间周期如果地质数据项未被写于所述地质数据存储器,有一个处理包括终止获取数据的步骤。
8.根据权利要求7所述的处理记录数据的方法,其特征在于,该终止步骤包括下列子步骤:将终止控制参考值写于一存储器,该存储器可以操作用以仅接收和存储终止控制参考值,以及将终止控制参考值作为命令传送至探测器。
9.根据权利要求1所述的处理记录数据的方法,其特征在于,所述读出步骤并不改变包含在所述存储器中的数据项。
10.根据权利要求1所述的处理记录数据的方法,其特征在于,该方法包括下列步骤:
从第二传感器获取代表探测器通过钻孔的速度的数据;
将速度数据写于速度存储器作为顺序数据项的流,所述速度存储器可以操作用以仅接收和存储该速度数据。
11.根据权利要求10所述的处理记录数据的方法,其特征在于,该第二处理包括下列子步骤:
从该速率存储器顺序地读出重要的速度数据项,
使用所述地质存储数据项和所述速度存储数据项确定所述第二参考值,其中如果速度存储数据项并未落在可接受的速度范围内时,第二参考值被写于改变速度存储器。
12.根据权利要求1所述的处理记录数据的方法,其特征在于,所述存储器各包括一组已知的存储单元,写入步骤包括使用单值索引值顺序地识别存储器内的存储单元的子步骤。
CN86105110A 1985-08-20 1986-08-19 数据处理的系统和方法 Expired - Lifetime CN1033541C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US76740985A 1985-08-20 1985-08-20
US767,409 1985-08-20

Publications (2)

Publication Number Publication Date
CN86105110A CN86105110A (zh) 1987-07-01
CN1033541C true CN1033541C (zh) 1996-12-11

Family

ID=25079393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN86105110A Expired - Lifetime CN1033541C (zh) 1985-08-20 1986-08-19 数据处理的系统和方法

Country Status (11)

Country Link
EP (1) EP0214037B1 (zh)
CN (1) CN1033541C (zh)
BR (1) BR8603855A (zh)
DE (1) DE3650411D1 (zh)
DK (1) DK398186A (zh)
DZ (1) DZ980A1 (zh)
EG (1) EG19857A (zh)
ES (1) ES2001537A6 (zh)
IN (1) IN167819B (zh)
NO (1) NO173575C (zh)
OA (1) OA08404A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2051613B1 (es) * 1991-05-14 1995-01-01 Inst Tecnologico Geominero De Equipo perforador polivalente multitecnico.
US5717947A (en) * 1993-03-31 1998-02-10 Motorola, Inc. Data processing system and method thereof
US6992768B2 (en) * 2003-05-22 2006-01-31 Schlumberger Technology Corporation Optical fluid analysis signal refinement

Family Cites Families (5)

* 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
US4197589A (en) 1977-12-05 1980-04-08 Texas Instruments Incorporated Operation sequencing mechanism
US4229790A (en) 1978-10-16 1980-10-21 Denelcor, Inc. Concurrent task and instruction processor and method
US4507735A (en) * 1982-06-21 1985-03-26 Trans-Texas Energy, Inc. Method and apparatus for monitoring and controlling well drilling parameters

Also Published As

Publication number Publication date
IN167819B (zh) 1990-12-22
NO173575C (no) 1993-12-29
DK398186A (da) 1987-02-21
NO863125D0 (no) 1986-08-01
DE3650411D1 (de) 1995-11-09
DK398186D0 (da) 1986-08-20
ES2001537A6 (es) 1988-06-01
NO863125L (no) 1987-02-23
OA08404A (en) 1988-06-30
CN86105110A (zh) 1987-07-01
EP0214037A3 (en) 1990-05-16
DZ980A1 (fr) 2004-09-13
EP0214037A2 (en) 1987-03-11
EP0214037B1 (en) 1995-10-04
BR8603855A (pt) 1987-03-24
EG19857A (en) 1996-05-31
NO173575B (no) 1993-09-20

Similar Documents

Publication Publication Date Title
CN1627270B (zh) 用于对指令执行和数据访问进行计数的方法和设备
CN1087836C (zh) 功能分散的地震采集和传输系统
CN105224326A (zh) 一种系统代码的增量部署方法及装置
CN110188149A (zh) 一种数据仓库系统
CN100444126C (zh) 用于自主剖析应用程序的方法和设备
US5204965A (en) Data processing system using stream stores
CN1033541C (zh) 数据处理的系统和方法
CN113190345A (zh) 一种面向软件定义卫星的神经网络模型部署的方法以及装置
CN102968404B (zh) 地震资料的初至信息处理方法及装置
CN108205730A (zh) 决定分配人数的装置、方法和非暂时计算机可读存储介质
RU2413992C2 (ru) Анализ многочисленных объектов с учетом неопределенностей
CN106790389A (zh) 地震道数据的获取方法、主节点服务器及工作节点服务器
JP2656474B2 (ja) データ処理システム及び方法
Gavillet Trends in new collider experiment data acquisition systems
Ahlin et al. The XENON1T Data Distribution and Processing Scheme
US11907755B2 (en) System and method for distributed execution of a sequence processing chain
Fulcher A comparative review of commercial ANN simulators
Smith et al. The Holdup Measurement System II (HMSII)
Lewis Computer Control of High Energy Accelerators
Glad et al. Acquisition, archiving, and analysis of Doublet III in diagnostic data on a distributed computer system
Lammel Computing models of CDF and DØ in Run II
Lammel Computing Models of CDF and D in Run II
JP2023183342A (ja) ジョブスケジューラおよびジョブスケジューリング方法
Dunn Modal analysis of transient response data using a complex exponential algorithm
Teichroew An approach to research in file organization

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C01 Deemed withdrawal of patent application (patent law 1993)
WD01 Invention patent application deemed withdrawn after publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CX01 Expiry of patent term