CN87106625A - 按预定顺序执行两个指令序列的方法和设备 - Google Patents
按预定顺序执行两个指令序列的方法和设备 Download PDFInfo
- Publication number
- CN87106625A CN87106625A CN198787106625A CN87106625A CN87106625A CN 87106625 A CN87106625 A CN 87106625A CN 198787106625 A CN198787106625 A CN 198787106625A CN 87106625 A CN87106625 A CN 87106625A CN 87106625 A CN87106625 A CN 87106625A
- Authority
- CN
- China
- Prior art keywords
- sequence
- address
- instruction
- memory
- execution
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 15
- 230000015654 memory Effects 0.000 claims description 118
- 238000012790 confirmation Methods 0.000 claims description 2
- 230000005284 excitation Effects 0.000 claims 2
- 230000004069 differentiation Effects 0.000 claims 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 claims 1
- 239000012467 final product Substances 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 39
- 230000010365 information processing Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- IUVCFHHAEHNCFT-INIZCTEOSA-N 2-[(1s)-1-[4-amino-3-(3-fluoro-4-propan-2-yloxyphenyl)pyrazolo[3,4-d]pyrimidin-1-yl]ethyl]-6-fluoro-3-(3-fluorophenyl)chromen-4-one Chemical compound C1=C(F)C(OC(C)C)=CC=C1C(C1=C(N)N=CN=C11)=NN1[C@@H](C)C1=C(C=2C=C(F)C=CC=2)C(=O)C2=CC(F)=CC=C2O1 IUVCFHHAEHNCFT-INIZCTEOSA-N 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3889—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
- Communication Control (AREA)
- Small-Scale Networks (AREA)
- Programmable Controllers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一个按事先规定的顺序执行两个指令序列的数据处理系统。提高数据处理能力可按下述方法实现:两个序列(5)是并行开始执行的;与第二序列相关联的读指令中所包含的地址被中介存贮起来,只要这个地址事先没有与第二序列(41,42)相关联的写指令一起被选取即可;被中介存贮的地址与第一序列的写入地址相比较,在出现两个地址一致时,第二序列的执行(56,60,61,62)就要重新开始。
Description
本发明是关于按预先规定的顺序执行两个指令序列的方法和设备。执行该第一和第二序列,分别包括选取一些读指令和选取一些写指令;这些读指令含有各自的读出地址,以便检索存贮在大量的存贮器单元之一中的数据信息,这些单元可各自通过它在第一和第二独立存贮器中的地址分别访问;这些写指令含有各自的写入地址和数据信息,以便把这些数据信息向一个独立存贮器单元传送,这些单元指定给相应的序列,并可通过写入地址进行访问的;各序列的独立存贮单元按照顺序和按照所选取的写指令被相互更新;其顺序为第二的是第二序列,其顺序是第一的为第一序列,第二序列执行期间所用的数据信息被事先确认为与第一序列执行期间所获得的数据信息是相关的。
解决上述信息处理问题的普通的传统的方法可归结为这样一种执行序列的方法:即按照上面和下文所称的第二序列,是在上面和下文所称的第一序列执行结束以后,才开始执行的。这种普通方法,在由单处理器控制的数据处理系统中,是自然的情况,它在一个时刻只能执行一个序列,使用主存贮器的存贮单元,而主存贮器是被两个序列所共享的。
人们都知道可通过并列执行几个指令序列来提高数据处理能力。只要各序列事先被确认为是相互无关的,则借助于所谓的预处理或多重处理技术,或者也可借助于包含至少两个数据处理单元、每个执行各自的指令序列的统一处理器系统,正确无误的并行操作都可实现。众所周知,实现信息处理,既可用一个主存贮器被很多数据处理单元共享的办法,也可用有很多独立的存贮器,各自与相应的数据处理单元相关联,并经常地相互更新的方法来进行。
如果有几个敏感的、相互有影响的指令序列,因而必须按予先指定的顺序来执行的话,例如根据“计算机设计”(“Computer Design”)杂志,1985年8月15日刊第76~81页的说法,或“平衡8000系统技术综述,相继式计算机系统公司”(“Balance 8000 System Technical Summary,Sequent Compunt Computer System,Inc.”)的说法,使用程序设计语言,汇编编辑器和用于相互无关序列的并行处理的顺序硬件,而各敏感序列的并行处理即可避免。
正如在导言中已经提到的,本发明是关于在使用两个各被指派给它自身序列的独立存贮器情况下的数据信息处理问题。按照这里所提出的信息处理方式,两个序列是并行处理的,而无须特别注意事先规定的顺序即可开始。第二序列对第一序列的依赖性是受到监控的;借助于含有一个辅助存贮器和至少一个比较电路的中介存贮器,预先指定的顺序即可实现。
由第二序列执行期间所选取的读指令所获得的地址被中介存贮在辅助存贮器中。由第一序列执行期间所选取的每一个写入地址与存贮在辅助存贮器中的各个读出地址相比较。只要确定没有相同的地址,则在第二序列执行期间所使用的数据信息就与第一序列执行期间所得到数据信息无关。如果第二序列执行期间,信息业已从与第二序列相联结的独立存贮器单元检索的话,那么,随着与第一序列相关联的写操作的更新的进行,这些信息就会被校正;也就是说,如果两个序列不再是相互独立无关的,则辅助存贮器就会被清除,而第二序列的指令选择就再一次重新开始。第二序列的重新开始执行,是在第一序列的第一部分已经执行完以后的时刻进行的,因而第二序列依赖于第一序列其余部分这种危险就较小了。
在第二序列执行期间所选取的写指令的基础上,所获得的写入地址和数据信息也存贮在辅助存贮器中,以便于与第一序列相联结的独立存贮器的更新。
使用这里所提出的信息处理方法,如果第二序列的执行至少与第一序列执行结束时所选取的指令无关,则能提高数据处理能力。如果所选取的地址作为辅助存贮器的读出地址存入中介存贮器,并且只要这个地址在第二序列执行期间早期不是作为写入地址存在的话,则所增加的能力会进一步提高;如果指派给第二序列的独立存贮器是随着第一序列执行期间所选取的每一条写指令一起逐步进行更新的话,则数据处理能力更会进一步提高。
下面,本发明将对照附图进行详细的说明。图1画出了两个数据处理单元,各自与它们的独立存贮器和一个更新装置相连接。图2比图1更详细地画出了独立存贮器进行读出、写入和更新时的驱动情况,以及数据处理单元中所包括的一个指令存贮设备和一个启动与判别电路。图3画出了数据处理单元所包括的中介存贮器。
根据图1,一个数据处理系统包括两个独立存贮器1,用于存贮数据信息,这些数据信息至少由两个数据处理单元2进行处理,每个数据处理单元都分别与它们的独立存贮器相连接。每个数据处理单元执行一个指令序列,以控制所配属的功能部件(图1中未画出)实现指定的系统功能。根据空间这些数据处理单元是受一个公用处理器的控制,还是各处理单元含有多个处理器,原则上,通常可划分为统一处理器系统(one-processor system)和多处理器系统,使各指令序列通过本序列的独立存贮器在其中开始着手执行;但不管怎样,在该系统中各处理单元都控制着一个更新装置3,根据序列顺序和所执行的写指令的情况来更新系统的其余独立存贮器。这种数据处理系统,包括有多个数据处理单元及分别与其相联结、并随时相互更新的几个独立存贮器,这在文献中有所描述。例如,可参看S-E格兰堡(Granberg)所著的文章“Apz150:一种用于控制中继电话交换的多处理器系统”,1976年Infotech国际公司出版,Nicholson House,Maidenhead,Berkshire,England。
图1以相当简化的方式画出了根据本发明的两个数据处理单元2,用于按事先规定的顺序执行上述的第一和第二指令序列。传统的指令存贮设备4用于选取存贮在指令存贮器中的指令,每次取一条;除此之外,各数据处理单元都包含有称为启动/判别电路的装置5,以表明它本身的序列是第一个独立的序列,还是第二个可能不独立的序列;另外每个数据处理单元还有中介存贮器6。借助于中介存贮器,它控制着独立存贮器的更新,从而也控制着按事先规定的顺序来执行指令序列。执行第二序列的数据处理单元的中介存贮器中介存贮着包含在指令中的一些地址,从而也就监控着第二序列相对于第一序列的依赖性。
需要指出,数据信息的传输部分地是由于来自指令存贮设备的写指令而被传送到相关联的独立存贮器去的;数据信息的传输也部分地由于来自独立存贮器的读指令而被传送到相关联的数据处理单元去的。
数据处理单元的启动/判别电路5各自具有启动信号输出端7,它又连到另一个电路5的启动信号输入端8。这就指出了并行执行两个序列的可能性,这在下面还要叙述,并应用于这里所提出的信息处理技术。
启动/判别电路5还具有判别信号输出端9,它连到另一个数据处理单元的中介存贮器6的第一判别信号输入端10。一个数据处理单元的中介存贮器具有地址输入端11和写入标志输入端12,用以接收由另一个数据处理单元的指令存贮设备4选取的写入地址。两个中介存贮器6是通过更新输出端13和更新输入端14互相连接起来的。
图2比图1更为详细地画出了数据处理单元的某些细节,了介它对于理介这里所提出的信息处理方法是必要的。
指令存贮设备4包含一个指令存贮器15,所存贮的指令序列可借助于选择装置16由指令存贮器中读出,根据选择装置的一个输出的驱动而每次读出一条指令。
指令序列包括有三种指令类型。第一种类型,即下文所指的“读指令”,可根据读位位置17(read bit position 17)被置为二进制“1”来判定,它用于控制检索与指令存贮器相连的独立存贮器1的存贮单元的数据;借助于存贮在若干地址位位置18中的一个地址,例如A1,得以访问独立存贮器,这地址包含在有读位标记的指令中。读位位置17和地址位位置18分别连到独立存贮器的读驱动输入端19和编址电路20。
第二种指令类型,即下文所指的“写指令”,可根据写位位置(write bit position)21被置为“1”来判定,它用于控制要向独立存贮器写入的数据,如D2,这数据包含在有写位标记的指令中,并存贮在若干数据位位置22;写入数据时,同时还要使用被包含在有写位标记的指令中、并储存在地址位位置18中的地址,如A2。写位位置21连接到独立存贮器的写驱动输入端23。
第三种指令类型可根据位位置17和21都为“0”来判定,它用于控制既不从独立存贮器读出,也不向独立存贮器写入的信息处理。存贮在位置18及22的信息,如S1,它只与第三种指令类型有关,它的使用不包括在本发明的范围内,但图2画出了第一或门24,它的输入端与位位置17和位位置21相连,其输出端连到第一与门25的反相驱动输入端,在驱动状态下,它把位位置18及22的内容,例如S1,直接传送给数据处理单元。
从图2可看到,数据处理单元的启动/判别电路5包括有第二和第三或门26和27,或门26的输入端之一与或门27输出端相连,或门27的输入端则分别连到上面提到的启动信号输入端8和同一个数据处理单元内的中介存贮器6的再启动信号输出端28。数据处理单元各有一个启动信号发生器(图2中未画出来),它的输出端通过启动端点29连到或门26的另一输入端,并与上述的启动信号输出端7相连,还连到第一触发器30的置位输入端;触发器30的一个输出端则构成了上述的判别信号输出端9,并且连接到该中介存贮器6的第二个判别信号输入端31。第二触发器32的置位输入端与或门27的输出端相连,而它的输出则连到本地中介存贮器6的第三个,判别信号输入33。在其驱动状态下,或门26选取一条第三类型的指令,这是一条具有内容S1的启动指令;由于这条指令的结果,数据处理单元就通过本地的选择装置16启动相关的指令序列的执行。这是假定了这种情况:随着连到触发器30和32复位输入端的选择装置的输出端34被激励,存贮在指令存贮器15中的指令序列结束了执行。
第一序列的执行是被本地的启动信号发生器启动的。相应地,第一触发器30的输出为二进制“1”就表示与本序列相关联的指令选择是正在进行中,并且本地序列就是第一序列。第二触发器32的输出端为二进制“1”则表示,与本地序列相关联的指令选择正在进行,而本地序列是第二序列。根据本发明,两个序列的指令是并行地被选择的,这是这样来实现的,例如,启动信号由与第一序列相关联的启动信号输出端7传送到与第二序列相关联的启动信号输入端8。
由指令存贮器15所选取的读出地址和写入地址,通过端点35~37被传送到数据处理单元的中介存贮器6。图2画出了前面提到的中介存贮器的判别信号输入端10和写入地址输入端11-12,以及第一控制端点38(它与第一或门24的输出相连)。
最后,传统的更新功能在图2中是用虚线形式的通讯线来表示的。更新装置3具有控制端39和40,更新控制信号和更新地址是分别通过端点39和40并行送来的。根据来自一个中介存贮器的更新命令,更新装置就把控制信号传送给本地的独立存贮器读驱动输入端19和另一个独立存贮器的写驱动输入端23,同时,更新装置也把与更新命令相关联的更新地址传送给各独立存贮器的编址电路20。这样就可以成功地把数据从本地独立存贮器通过更新装置传送到另外的独立存贮器。
图3画出了中介存贮器,它包含一个辅助存贮器41。辅助存贮器的各列是用于中介存贮通过端点35~37来的读出地址和写入地址的,借助于扫描装置42,这些列被选择用于写入、读出和清除。下面将要说明,当相关联的指令序列最终被执行时,辅助存贮器是如何被清除的。
从第四或门43送出的扫描脉冲的前沿置扫描装置为“0”。对辅助存贮器各列的访问是由步进脉冲的前沿进行的;步进脉冲由步进发生器44产生,并通过被激励的步进与门45传送到扫描装置的步进端点46。步进脉冲也同时被送到读驱动端点47,使得每次读出一列的内容。
根据图3,中介存贮器包括有第一或非门48,它的两个输入端用于接收中介存贮在辅助存贮器写位位置49和读位位置50的写入标志和读出标志,而其反相的输出端通过停止或门51,连到步进与门45的反相输入端和第一、第二控制与门52、53的第一输入端;这两个与门的输出端都连到或门43。控制与门52的第二个输入端连到第三控制与门54,而与门54的输入端则与前面提到的判别信号输入端33和控制端点38相连。
当然,扫描脉冲仅在执行第二序列的数据处理单元的中介存贮器内产生。扫描操作是根据选择读指令还是写指令来控制的。当读到一个未被占用的列,也就是一个既没有写入标志、也没有读出标志的列被读出时,就会出现步进停顿。启动扫描的条件就是:以前的步进已经停止。
第一或非门48连到扫描装置的写驱动输入端55。这里假定了具有相关地址A3的写指令及具有相关地址A4的读指令分别构成了针对所联结的独立存贮器的第二序列的第一和第二条指令,这些指令的写入/读出地址,按所叙述的方法,被中介存贮在辅助存贮器的第一列和第2列,这些列所具有的位位置49和50,都在各自被存入以前被置为“0”。
控制门53的第二输入端连到第四控制与门56,与门56的第一输入端连到上述的第一判别输入10,第二输入端通过上述的写标志输入端12连到存放第一序列的指令存贮器15的写位位置21。在选择了与第一序列相关联的一条写指令的时候,扫描操作就被控制用于第二序列的中介存贮器。步进发生器44的定时频率相对于指令选取速度来说要足够高,以便通过控制门54和56所控制的扫描操作有足够时间得以实现。
中介存贮器包括第一比较电路57,当在一次扫描操作期间,通过端点37由指令存贮器15所获得的地址,与由辅助存贮器地址位位置58所得到的某一读出地址相同时,比较电路57的输出就被激励。第五控制与门59的输出连到停止或门51,与门59的第一个输入端连到比较电路57,而第二个输入端则接收中介存贮在辅助存贮器写位位置49的写入标志。这样,由指令存贮器所选取的读出地址或写入地址,如果与被中介存贮的写入地相符合,则扫描操作就会停止。
这里采用:在选取几条所带地址不同于A3和A4的指令之后(图3中未画出),带有相关地址A4的读指令的选取更重复进行一次(第一次重复)。这样就出现了:由于被第一比较电路57所确定的地址的一致性,第一次重复的选取并未引起扫描的停止,以致第一次重复的读指令第二次被中介存贮在其位位置49和50都预先被置“0”的那一列。如果具有相关地址Ax的第二序列的读指令的选取,是在随着第二序列写指令的选取而出现同样的地址Ax之前,则那些读指令就被称为第一等级指令(first category instructions)。
这里假定,带有相关地址A4的写指令的选取,是在上述第一次被重复的读指令的选取之后,也是在其地址既非A3也非A4的几条指令(图3中未示出)的选取之后。这样就使得这个写指令被中介存贮在以前未被占用的列中。还要进一步假设在上述具有相关地址A4的写指令的选取以后,具有相关地址A4的读指令的选取要再重复第二次。这样,在被中介存贮的具有相关地址A4的写指令读出的同时,出现一次扫描停顿,而在位位置50并没有读标志出现。重复第二次的具有相关地址A4的读指令就构成了第二等级指令,它的相关地址并不中介存贮在辅助存贮器中。
一个数据处理单元的中介存贮器还包括有第二比较电路60,在一次扫描操作期间,从另一个数据处理单元的指令存贮器15的地址位位置18选取来的、又通过前面提过的地址输入端11传输来的地址,与读自辅助存贮器地址位位置58的地址相比较,二者若一致,则比较电路60的输出端即被激励。第二比较电路60连到第六控制与门61的第一个输入端,与门61的第二个输入端连到上述的控制与门56,与门56的输出连到第七控制与门62的第一个输入端。与门62的第二个输入端接收中介存贮在辅助存贮器位位置50的读标志,其输出则构成了前面提过的再启动信号输出28,并且连到清除或门63。图2中所画的或门27接收来自被激励的控制与门62的再启动信号。扫描装置42接收来自被激励的清除或门63的清除命令脉冲,这样,所有中介存贮在辅助存贮器中的地址信息都立即被清除掉了。
如果遇到被中介存贮的第一等级读指令,其相关地址又与第一序列执行期间所选取的写指令的相关地址一致,则就会使辅助存贮器的清除和第二序列的重新开始执行得以实现。清除之所以必要是因为,由于所遇到的第一等级指令,数据处理单元从其相关的独立存贮器接收了数据信息,如果对予先规定的顺序已足够注意的话,也就是说,如果第一和第二序列的指令不是并行选取的话,则存贮器是不会接收此数据信息的。
中介存贮器包含第二个或非门64,它的输入端连到上面提到的判别信号输入端10和33,而其反相输出端则连到或门43。当第一和第二序列的选取确定以后,扫描操作也相继地进行了安排,尽管扫描对执行第一序列的数据处理单元中的中介存贮器毫无影响。第八控制与门65的输入端连到或非门48和64,其输出端连到清除或门63。当被或非门64所启动的扫描操作结束时,就会得到一个清除命令脉冲。
在过去提到的扫描操作期间,第二序列中介存贮器产生更新信息,它包含了第二序列执行期间所选取、并被中介存贮的全部写入地址。从辅助存贮器位位置49所读出的写标志被第九控制与门66所接收,其第二个输入端则连到或非门64,其输出通过更新或门67连到前面提到的更新装置3的控制端点39。由辅助存贮器地址位位置58读出的更新地址,借助于第二个与门68,再通过或门69,传送到上述更新装置3的控制端点40,与门68还有一个驱动输入端连到控制与门66的输出端。
第十控制与门70的第一输入端接收中介存贮在辅助存贮器的位位置49的写标志,其第二个输入端连到控制与门61的输出端,而其输出端则成为上述的更新输出端13,并且连到停止或门51的第三输入端。当第一序列执行期间所选取的写地址与第二序列执行期间中介存贮在辅助存贮器中的某个写地址相符合,由第二比较电路60给出符合信号时,就使得由控制与门56的驱动所开始的扫描操作停止下来。
图3所画的中介存贮器,最后还包括一个第十一控制与门71,它的第一个输入端连到上述的判别信号输入端31,它的第二个输入端被一个连到端点36的脉冲的后沿所驱动,它的第三个输入经过反相,构成上述更新输入端14,其输出则连到更新或门67,并且连到第三与门72的驱动输入端;与门72的另一个输入端连到中介存贮器端点37,其输出则连到或门69。指派给第一序列的中介存贮器的或门67和或门69,则相继地把第一序列执行期间所选取、并包含在这一序列中的写地址作为更新信息传送出去,除非这写地址是中介存贮在指派给第二序列的辅助存贮器中的。
例如,如果数据被写入能被地址A3访问、又属于第一序列的独立存贮器单元,则对第二序列的独立存贮器的更新就会发生错误,因为,按照上面所假设的,这一写入地址A3已被预先中介存贮在第二序列的辅助存贮器中。另一方面,如果这一更新问题是由于第一序列中具有地址A4的写指令所引起的,并且如果仍然按照上面所规定的办法,这一地址A4已经被预先中介存贮在第二序列的辅助存贮器中,它部分地与第一等级指令相关联,部分地与写指令相关联,则在遇到读出地址A4时,辅助存贮器的内容就会被清除。第二序列中介存贮器的控制与门70因而是不被激励的;因而按照前面所叙述的方法,第二序列独立存贮器的正确更新,是借助于第一序列中介存贮器的控制与门71,利用地址A4来完成的。
按照在图中未画出的进行中介存贮与更新的方法,第一序列写入地址和第二序列写入指令,即写入地址及与之相关联的数据信息,分别中介存贮在各自的辅助存贮器中。与第一序列相关联的被中介存贮的各写入地址,和与第二序列相关联的被中介存贮的各读出地址,二者的比较,是在第一序列指令的选取终止时与第二序列独立存贮器的更新并行进行的,第二序列的重新开始执行由于按比较结果所确定的地址一致性而作安排。更新第一序列相关联的独立存贮器,则是借助于第二序列相关联的中介存贮的写指令,在第二序列指令选取结束时进行的。
利用过去提到的进行中介存贮与更新的方法,仅当第二序列的执行不必重新开始的情况下,才能通过所提出的并行执行两个序列的方法,使数据处理能力得以提高。
作为一种综合的效果,借助于数据处理单元的中介存贮器,使得第一和第二序列最终可以按事先规定的顺序正确无误执行,而不管两个序列最初是否被安排并行执行。
Claims (4)
1、按事先规定的顺序执行两个指令序列的方法,第一和第二序列的执行分别包括读指令的选取和写指令的选取,读指令各自包含其读出地址,以便检索存贮在众多存贮器单元之一中的数据信息,这些存贮单元各自能通过它在第一或第二独立存贮器中的地址进行访问,同样,写指令也各自包含其写入地址和数据信息,以便把这些数据信息传送到独立存贮器的一个单元,这些存贮单元是属于各自的序列并可按照写入地址进行访问,各序列的独立存贮器单元可以根据顺序情况和选取的写指令的情况相互进行更新;一个序列由于其顺序为第二的是第二序列,另一个序列由于其顺序是第一而成为第一序列,第二序列执行期间所用的数据信号被事先确认为与第一序列执行期间所获得的数据信息是相关的,该方法的特征在于以下各步骤:
a)、执行两个序列中的各指令,而不管其次序如何,
b)、由于第二序列执行期间选取了读指令,使得可以中介存贮一个地址,只要这个地址没有与第二序列写指令的执行一起预先被选取过,
c)、在被中介存贮的读出地址与第一序列写指令执行时所得到的各写入地址之间,执行一个比较判别,以及
d)、如果通过所说的比较判别,确定地址有一致性,则重新开始执行第二序列。
2、根据权利要求1中所确定的方法,其特征在于以下各步骤:
a)、由于第二序列执行期间选取了一条写指令,使得可以中介存贮一个写入地址,
b)、在中介存贮的写入地址与第一序列执行期间所选取的各写入地址之间执行一个更新比较,
c)、与第一序列每条写指令的执行一起,更新第二个独立存贮器,只要通过所说的更新比较确定没有地址符合,即可进行更新,以及
d)、如果通过所说的更新比较确定有地址符合,则禁止更新第二个独立存贮器。
3、用于根据权利要求1的按照事先规定的顺序执行两个指令序列的设备,包括第一启动电路(7,26,29),用于启动按顺序为第一序列的执行;分别用于存贮第一、第二指令序列的第一、第二指令存贮设备(4),用于选取所存贮的指令,每次选取一条;分别与第一和第二序列相连的独立存贮器(1,20),其存贮单元借助于相关联的指令存贮设备的读出/写入地址位位置(17,18,21)选取出的读出/写入地址可以进行访问,以读出/写入数据信息;更新装置(3),用于各序列独立存贮器单元进行相互更新,这与顺序及所选取的写指令有关,第二序列执行时所使用的数据信息,即所说的被事先认可为与第一序列执行时所获得的数据信息相关的信息,
其特征在于该设备包括:
a)、用于启动第二序列的第二启动电路(8,26,27),其第一个驱动输入端(8)连接到所说的第一启动电路,
b)、辅助存贮器(41,42),其输入侧连到第二指令存贮设备,并包含有读出地址位位置(50,58),用以中介存贮一个地址,这地址是由第二序列执行期间所选取的读指令得到的,如果这个地址在第二序列写指令执行时没有被预先选取,以及
c)、比较判别电路(56,60,61,62),其第一个比较端点(11,12)与第一指令存贮设备的写地址位位置(18,21)相连,第二比较端点则与所述的辅助存贮器的读出地址位位置(50,58)相连,而其输出(28)则与所提到的第二启动电路的第二激励输入端相连,其输出是在各比较判别端点接收的地址相一致时才被激励的。
4、根据权利要求3的设备其特征在于:辅助存贮器包括写入地址位位置(49,58),用于中介存贮由于第二序列执行期间所选取的写指令而得到的地址,
设备还包括更新比较电路(56,60,61,70),它的第一个比较端点(11,12)与第一指令存贮设备的写入地址位位置(18,21)相连,它的第二个比较端点与所说的辅助存贮器的写入地址位位置(49,58)相连,其输出根据各更新比较端点所接收的地址的不同或相同,分别送出逻辑更新信号的第一种或第二种状态,
设备还包括更新控制电路(67,69,71,72),分别根据所接收的第一或第二更新信号状态被激励或者解除激励,该电路的输入端连到第一指令存贮设备的写入地址位位置(18,21),而其输出端(39,40)则连到更新装置(3)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE8604222-3 | 1986-10-03 | ||
SE8604223A SE454921B (sv) | 1986-10-03 | 1986-10-03 | Sett och anordning for att i en pa forhand avgjord ordningsfoljd exekvera tva instuktionssekvenser |
Publications (1)
Publication Number | Publication Date |
---|---|
CN87106625A true CN87106625A (zh) | 1988-04-13 |
Family
ID=20365824
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN198787106625A Pending CN87106625A (zh) | 1986-10-03 | 1987-09-30 | 按预定顺序执行两个指令序列的方法和设备 |
CN198787106765A Pending CN87106765A (zh) | 1986-10-03 | 1987-10-03 | 按预定次序执行两个指令序列的方法和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN198787106765A Pending CN87106765A (zh) | 1986-10-03 | 1987-10-03 | 按预定次序执行两个指令序列的方法和装置 |
Country Status (20)
Country | Link |
---|---|
US (1) | US4956770A (zh) |
EP (1) | EP0285634B1 (zh) |
JP (1) | JPH01500935A (zh) |
KR (1) | KR920006769B1 (zh) |
CN (2) | CN87106625A (zh) |
AU (1) | AU596234B2 (zh) |
BR (1) | BR8707473A (zh) |
CA (1) | CA1289670C (zh) |
DE (1) | DE3777632D1 (zh) |
DK (1) | DK168135B1 (zh) |
ES (1) | ES2005370A6 (zh) |
FI (1) | FI93907C (zh) |
GR (1) | GR871511B (zh) |
IE (2) | IE61307B1 (zh) |
MA (1) | MA21073A1 (zh) |
MX (1) | MX159991A (zh) |
PT (1) | PT85811B (zh) |
SE (1) | SE454921B (zh) |
TN (1) | TNSN87108A1 (zh) |
WO (1) | WO1988002513A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5075844A (en) * | 1989-05-24 | 1991-12-24 | Tandem Computers Incorporated | Paired instruction processor precise exception handling mechanism |
US5163139A (en) * | 1990-08-29 | 1992-11-10 | Hitachi America, Ltd. | Instruction preprocessor for conditionally combining short memory instructions into virtual long instructions |
US5420990A (en) * | 1993-06-17 | 1995-05-30 | Digital Equipment Corporation | Mechanism for enforcing the correct order of instruction execution |
JPH07334372A (ja) * | 1993-12-24 | 1995-12-22 | Seiko Epson Corp | エミュレートシステム及びエミュレート方法 |
SE9901146D0 (sv) | 1998-11-16 | 1999-03-29 | Ericsson Telefon Ab L M | A processing system and method |
SE9901145D0 (sv) | 1998-11-16 | 1999-03-29 | Ericsson Telefon Ab L M | A processing system and method |
US8738822B2 (en) * | 2005-05-03 | 2014-05-27 | Flexera Software Llc | System and method for controlling operation of a component on a computer system |
JP5350677B2 (ja) * | 2008-05-19 | 2013-11-27 | 株式会社東芝 | バス信号制御回路、及び、バス信号制御回路を備えた信号処理回路 |
JP2021015384A (ja) * | 2019-07-10 | 2021-02-12 | 富士通株式会社 | 情報処理回路、情報処理装置、情報処理方法及び情報処理プログラム |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1218656A (en) * | 1968-03-27 | 1971-01-06 | Int Computers Ltd | Improvements in or relating to computer system |
US3787673A (en) * | 1972-04-28 | 1974-01-22 | Texas Instruments Inc | Pipelined high speed arithmetic unit |
GB1441458A (en) * | 1972-06-28 | 1976-06-30 | Texas Instruments Inc | Stored programme data processing for parallel processing of programme segment |
IT991096B (it) * | 1973-07-10 | 1975-07-30 | Honeywell Inf Systems | Calcolatore elettronico con reti funzionali indipendenti per l esecuzione simultanea di opera zioni diverse sugli stessi dati |
SE378690B (zh) * | 1973-12-13 | 1975-09-08 | Ellemtel Utvecklings Ab | |
SE387763B (sv) * | 1975-10-23 | 1976-09-13 | Ellemtel Utvecklings Ab | Anordning vid ett datorminne for att mojliggora en successiv forflyttning under drift av ett ledigt minnesfelt |
JPS57162165A (en) * | 1981-03-30 | 1982-10-05 | Fanuc Ltd | Re-editing system for storage area |
US4466061A (en) * | 1982-06-08 | 1984-08-14 | Burroughs Corporation | Concurrent processing elements for using dependency free code |
JPS5932045A (ja) * | 1982-08-16 | 1984-02-21 | Hitachi Ltd | 情報処理装置 |
JPS60146350A (ja) * | 1984-01-11 | 1985-08-02 | Hitachi Ltd | 通信制御装置 |
US4720779A (en) * | 1984-06-28 | 1988-01-19 | Burroughs Corporation | Stored logic program scanner for a data processor having internal plural data and instruction streams |
SE454920B (sv) * | 1986-10-03 | 1988-06-06 | Ellemtel Utvecklings Ab | Sett och anordning for att i en pa forhand avgjord ordningsfoljd exekvera tva instruktionssekvenser medelst separatminnen |
-
1986
- 1986-10-03 SE SE8604223A patent/SE454921B/sv not_active IP Right Cessation
-
1987
- 1987-09-16 IE IE250687A patent/IE61307B1/en not_active IP Right Cessation
- 1987-09-16 IE IE250587A patent/IE61306B1/en not_active IP Right Cessation
- 1987-09-22 MX MX8438A patent/MX159991A/es unknown
- 1987-09-28 US US07/197,410 patent/US4956770A/en not_active Expired - Lifetime
- 1987-09-28 AU AU80365/87A patent/AU596234B2/en not_active Ceased
- 1987-09-28 KR KR1019880700625A patent/KR920006769B1/ko not_active IP Right Cessation
- 1987-09-28 PT PT85811A patent/PT85811B/pt not_active IP Right Cessation
- 1987-09-28 JP JP62506081A patent/JPH01500935A/ja active Pending
- 1987-09-28 WO PCT/SE1987/000437 patent/WO1988002513A1/en active IP Right Grant
- 1987-09-28 EP EP87906632A patent/EP0285634B1/en not_active Expired - Lifetime
- 1987-09-28 BR BR8707473A patent/BR8707473A/pt not_active IP Right Cessation
- 1987-09-28 DE DE8787906632T patent/DE3777632D1/de not_active Expired - Lifetime
- 1987-09-30 CN CN198787106625A patent/CN87106625A/zh active Pending
- 1987-09-30 TN TNTNSN87108A patent/TNSN87108A1/fr unknown
- 1987-09-30 GR GR871511A patent/GR871511B/el unknown
- 1987-10-01 CA CA000548361A patent/CA1289670C/en not_active Expired - Lifetime
- 1987-10-01 MA MA21314A patent/MA21073A1/fr unknown
- 1987-10-02 ES ES8702813A patent/ES2005370A6/es not_active Expired
- 1987-10-03 CN CN198787106765A patent/CN87106765A/zh active Pending
-
1988
- 1988-05-25 FI FI882468A patent/FI93907C/sv not_active IP Right Cessation
- 1988-06-02 DK DK300788A patent/DK168135B1/da not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
ES2005370A6 (es) | 1989-03-01 |
IE61306B1 (en) | 1994-10-19 |
IE872506L (en) | 1988-04-03 |
FI882468A0 (fi) | 1988-05-25 |
DK300788D0 (da) | 1988-06-02 |
BR8707473A (pt) | 1988-09-13 |
AU596234B2 (en) | 1990-04-26 |
IE61307B1 (en) | 1994-10-19 |
FI93907C (sv) | 1995-06-12 |
WO1988002513A1 (en) | 1988-04-07 |
PT85811B (pt) | 1993-08-31 |
MA21073A1 (fr) | 1988-07-01 |
AU8036587A (en) | 1988-04-21 |
EP0285634B1 (en) | 1992-03-18 |
FI882468A (fi) | 1988-05-25 |
IE872505L (en) | 1988-04-03 |
SE8604223L (sv) | 1988-04-04 |
JPH01500935A (ja) | 1989-03-30 |
DK300788A (da) | 1988-06-02 |
FI93907B (sv) | 1995-02-28 |
CN87106765A (zh) | 1988-04-20 |
SE8604223D0 (sv) | 1986-10-03 |
GR871511B (en) | 1987-10-01 |
DE3777632D1 (de) | 1992-04-23 |
TNSN87108A1 (fr) | 1990-01-01 |
US4956770A (en) | 1990-09-11 |
KR920006769B1 (ko) | 1992-08-17 |
KR880701913A (ko) | 1988-11-07 |
PT85811A (pt) | 1988-11-30 |
CA1289670C (en) | 1991-09-24 |
DK168135B1 (da) | 1994-02-14 |
EP0285634A1 (en) | 1988-10-12 |
MX159991A (es) | 1989-10-23 |
SE454921B (sv) | 1988-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1147773C (zh) | 功率管理装置及方法 | |
US4123795A (en) | Control system for a stored program multiprocessor computer | |
CN1129857C (zh) | 多处理器转换装置和主处理器转换方法 | |
US5319645A (en) | Method for debugging and testing the correctness of programs | |
JPH0754500B2 (ja) | 共用割込みシステム | |
CN1212062A (zh) | 用于远程诊断与维修的扩充基本输入输出系统 | |
CN85107028A (zh) | 集束导线系统及其控制方法 | |
CN1342280A (zh) | 用于被复制的服务器的协议 | |
CN87106625A (zh) | 按预定顺序执行两个指令序列的方法和设备 | |
CN110135130A (zh) | 一种嵌入式设备软件防改装方法及系统 | |
CN101034369A (zh) | 一种软件抗干扰方法及装置 | |
CN1561493A (zh) | 多节点系统中硬件事件的聚集 | |
US7711874B1 (en) | Usage of EHCI companion USB controllers for generating periodic events | |
CN1441347A (zh) | 系统管理总线通知 | |
US20040003387A1 (en) | Dynamically resolving fix groups for managing multiple releases of multiple products on multiple systems | |
US6880106B2 (en) | Automation system and method for operating an automation system | |
US5613133A (en) | Microcode loading with continued program execution | |
JPH02196355A (ja) | 記憶処理システム | |
WO1988002514A1 (en) | Method and device to execute two instruction sequences in an order determined in advance | |
CN1191533C (zh) | 用于设备间通信的系统与方法 | |
US20010039558A1 (en) | Cache memory management method for real time operating system | |
CN1030487A (zh) | 在向量数据处理运算中从缺页故障中恢复的设备和方法 | |
CN1294481C (zh) | 引导程序更新恢复系统及其方法 | |
CN117520341A (zh) | 金融数据库的多路索引并行构建方法、装置、设备及介质 | |
CN1265289C (zh) | 协调式基本输入输出系统的驱动执行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |