CN87107291A - 数字数据处理系统中处理器与专用指令处理器间的接口 - Google Patents
数字数据处理系统中处理器与专用指令处理器间的接口 Download PDFInfo
- Publication number
- CN87107291A CN87107291A CN87107291.2A CN87107291A CN87107291A CN 87107291 A CN87107291 A CN 87107291A CN 87107291 A CN87107291 A CN 87107291A CN 87107291 A CN87107291 A CN 87107291A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- information
- central processor
- data
- processor unit
- 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
Links
- 230000005540 biological transmission Effects 0.000 claims description 145
- 230000015654 memory Effects 0.000 claims description 134
- 238000000034 method Methods 0.000 claims description 74
- 230000008569 process Effects 0.000 claims description 72
- 238000012546 transfer Methods 0.000 claims description 51
- 238000003860 storage Methods 0.000 claims description 31
- 230000004044 response Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 17
- 238000012790 confirmation Methods 0.000 claims 11
- 238000004891 communication Methods 0.000 claims 3
- 230000008054 signal transmission Effects 0.000 claims 2
- 230000009849 deactivation Effects 0.000 claims 1
- 238000007667 floating Methods 0.000 abstract description 108
- 239000013256 coordination polymer Substances 0.000 description 37
- ZJPGOXWRFNKIQL-JYJNAYRXSA-N Phe-Pro-Pro Chemical compound C([C@H](N)C(=O)N1[C@@H](CCC1)C(=O)N1[C@@H](CCC1)C(O)=O)C1=CC=CC=C1 ZJPGOXWRFNKIQL-JYJNAYRXSA-N 0.000 description 18
- 238000013519 translation Methods 0.000 description 17
- 230000014509 gene expression Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 241001269238 Data Species 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 125000006850 spacer group Chemical group 0.000 description 2
- 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 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000406668 Loxodonta cyclotis Species 0.000 description 1
- 208000032370 Secondary transmission Diseases 0.000 description 1
- 238000002679 ablation Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000010387 memory retrieval Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
用于一个数字数据处理系统中的处理器及辅助处理器,其辅助处理器处理选定的指令,如浮点指令。通过状态线、数据线及总线将其处理器及辅助处理器相互连接起来,并也可把该系统中其他装置连接到总线上。当该处理器正在处理一个选定指令时,它要在数据线上把该指令的操作代码传送给辅助处理器,并要在该总线上把操作数传送给辅助处理器,同时在数据线上传送每个操作数涉及的信息。然后,该处理器通过状态线发出信号准备接收其处理结果。
Description
本发明总的来说属于数字式数据处理系统。
一个典型的数字式数据处理系统包括三个基本部件,即一个处理器部件、一个存贮器部件和一个输入/输出部件。存贮器部件在可寻址的贮存单元内存贮信息。信息包括数据和处理数据用的指令。处理器部件包括一个或多个数字式数据处理装置或“处理器”,信息在每个处理器和存贮器之间往返传送,将输入的信息翻译成指令或数据,再按照指令处理数据。计算结果然后贮存在存贮器部件内的可寻址单元上。
输入/输出部件还与存贮器部件进行通信,以便向系统传送信息和从它得到经过处理的数据。组成输入/输出部件的装置通常按照由处理器部件向它提供的控制信息进行工作,此控制信息决定了输入/输出装置将执行的操作。至少有一类由输入/输出装置完成的操作是传输用户信息,即在输入/输出装置和存贮器部件之间传输为用户程序所用的信息。通常,由输入/输出部件组成的典型装置包括例如打印机、电传打字机和视频显示终端,还可包括如磁盘或磁带贮存装置这类辅助信息贮存设备。
除作为输入/输出设备工作外,磁盘存贮装置(有时,还有磁带存贮装置)还可起着部分的存贮器部件的作用。尤其是,一个存贮器部件典型地包括一个主内存,处理器能相当快地访问其内容,但一般来说这是一种价格比较高的存贮设备。现代的内存典型地采用MOS或双极性半导体技术实现,可提供的存贮容量从几分之一兆字节至几十兆字节。
在现代的数据处理系统中,一般来说,有一个或几个能够执行该系统中可以得到的所有指令的处理器(如果该系统是一个多处理器系统的话)。然而,在执行几种类型的指令当中,最值得注意的是完成浮点数运算的指令。这种浮点数是由两个不同部分组成的,一部分表示尾数,另一部分表示阶数。要完成这种运算,通常都是给出一个协处理器(CO-Processor)。
浮点数是由两个不同的部分组成的,这就是尾数及阶数。一般来讲,必须分开处理每一部分,但是在处理的起始时刻及/或终止时刻,操作必须要在依赖于另一部分的取值的这些部分上完成,如象进行移位及归一。这种复杂的处理,在通用处理机之中,则需要大量的时间。因而,提出了包括有快速执行指令的最佳化电路的协处理器,也叫作浮点处理器。
在现有的系统中,虽然基本上作为一种可选择方案,可以把浮点处理器连接到主处理器上去,并且采用该主处理器的电路去检索要进行处理的数据。在微处理器出现之前,这曾是一种令人满意的解决方案。然而,如果该主处理器是一个微处理器的话,那么能让该微处理器连接到其他电路、包括浮点处理器上去的那些引线脚数,是相当有限的。所以说,把大量的连接线只用于该浮点处理器,那是不可能的。
迄今采用的另外一种内部连接机构是让该浮点处理器监控系统的活动,并且注意当何时微处理器检索一个用于处理浮点数据的指令。如果,接收到这样的一个指令,那么该浮点处理器则使该微处理器被截止,对指令进行译码,检索所需要的数据,执行该指令,并存贮该所处理过的数据。但是,这需要该浮点处理器能够鉴别什么时候在对指令进行检索,并且能够具有扩展的接口电路及译码电路,从而识别那些被处理的数据。此外,如果该微处理器预取指令的话,那么该微处理器和浮点处理器则必须要协调一致,因为该浮点指令在刚一接收到的时候,是不会进行处理的,只有在该指令之前的指令被处理完后,才能处理该指令。同样,如果在该指令到达之前,其程序分支了,那么该指令将永远不会执行。
本发明对于数字数据处理系统中的应用来说给出了一种新的处理器。
该处理器对浮点处理器(“FPP”)具有一个新的接口。该接口包括有在该处理器与该浮点处理器之间传送信号的一组状态线和一组FPP数据线。此外,将该浮点处理器连接到这些数据线上去,并且连接到该处理器输入/输出总线的选择控制线上去,从而让它能以取得所要处理的操作数数据并能以返回该处理过的数据。当该处理器将一个浮点指令进行译码时,该处理器在通过FPP数据线传送该指令的同时,还通过FPP状态线传送一个指示正在传送指令的代码。
而后,将所要处理的操作数传送给该浮点处理器。该浮点处理器监控该处理器输入/输出总线的某些控制线,从而确定是否从存贮器之中,或者从该处理器的高速缓冲存贮器之中,或者从其寄存器中将要送来操作数。如果操作数来自该处理器的高速缓冲存贮器或寄存器,那么该处理器把该操作数置于其输入/输出总线上,并且将一个指示该操作数就是在其输入/输出总线上的代码置于FPP状态线上。当该处理器开始从用于浮点处理器的存贮器中检索一个操作数时,如果输入/输出总线上的某些数据并不是用作操作数的一部分的话,那么该处理器就把一个对准代码(aligment code)置于FPP数据线上,指示任何需要的数据对准。该浮点处理器监控那些指示该存贮器正在进行操作数返回的控制线。
当处理器准备接收来自浮点处理器的经处理过的数据时,它将一个为此目的的代码置于FPP状态线上。当浮点处理器准备发送其结果时,它首先通过FPP数据线发送状态代码,并同时通过FPP状态线为此目的发送一个代码。而后,该浮点处理器在其输入/输出总线上发送处理过的数据,并同时通过FPP状态线发送为此目的的一个代码。
(紧接下页)
通过相应附图和下述说明,可更好地了解本发明上述提到的和更深入的优点。这些附图包括:
图1A是含有本发明的数字式数据处理系统总方框原理图;
图1B是图1A所描述的系统中所用的处理器的结构方框图;
图2由图2A至图2D组成,是一组有助于理解本发明的定时图;
图3是图1B所描述的处理器中,控制与系统其它部分间的信息传输用的部分电路的详细方框图。
在图1A上,一个含有本发明的数据处理系统,作为其基本组成部分,包括一个中央处理机(CPU)10、一个存贮器11和一个或多个输入/输出子系统12(在图1中只画出一个输入/输出子系统)。总线13将CPU10、存贮器11和输入/输出子系统12并行地互连。CPU10执行贮存在存贮器11中可寻址存贮单元中的指令。指令识别将要对操作数执行的操作,操作数也贮存在存贮器装置的可寻址单元中。在需要指令和操作数时,它们被CPU10取出,经过处理的数据送回存贮器11中贮存。CPU10还向输入/输出子系统12发送控制信息,使输入/输出子系统完成所选定的操作,如向存贮器11发送数据或由其中检索数据。数据可以包括指令或操作数,它们可以是发送至存贮器11的数据或从存贮器11检索出来供在外存贮存或显示的经过处理的数据。
一个操作员控制台14用作操作员的接口。它允许操作员检查和存放数据、暂停CPU的工作、或人工控制CPU10执行一组指令并确定CPU10对此所作出的响应。它还允许操作员经由一个引导程序对系统初始化和对整个数据处理系统完成各种诊断测试。
数据处理系统可以包括几种类型的输入/输出装置20,这包括磁盘和磁带辅助存贮装置、电传打字机、视频显示终端、行式打印机、电话和计算机网络装置等。所有这些装置经一个或几个控制器22通过一个设备总线21与总线13通信。控制器22、与它连接的设备总线21和与控制器通信的输入/输出装置20确定了一个输入/输出子系统12。
存贮器11包括一个存贮器控制器15,它与总线13直接相连,并连接到一组存贮单元阵列17。阵列17包含一组在其中存贮信息的可寻址的存贮单元。存贮器控制器15通过总线13从CPU10或从一个输入/输出子系统12接收传输请求。通过总线13可以发送几种类型的传送请求,它们可分为二大类。一种类型是,信息被写入或贮存在存贮单元里;在另一种类型中,信息由存贮单元检索或读出。
图1A所描述的系统还包括有一个写缓冲器23,它与总线13和存贮器控制器15连接并截取由CPU送往存贮器11的写传输请求。在此系统中,存贮器控制器15并不对由CPU10或输入/输出控制器22经过总线13传送的写请求作出响应。尤其是,写缓冲器23对写信息进行缓冲,写信息包括要写入的数据和用以识别在阵列17中数据贮存单元的相应地址。当存贮器控制器能接收一个写操作时,写缓冲器通过一条专用总线24向存贮器控制器15发送地址和相应的数据,存贮器控制器15再使阵列17把数据贮存在由其地址识别的单元之内。因此,如果CPU10通过总线13发送写数据的速率变得太高而使得存贮器11不能接受时,写缓冲器23能缓冲此请求,直至存贮器11能再接受它们为止。存贮器控制器15也直接连到总线13以便对由CPU10或输入/输出控制器22来的读请求作出响应,并向它们回送读出数据。
对此技术领域有经验的人员将会理解,在图1A所示的单处理器系统中使用一个写缓冲器23将是很有用的,但更有用的是在多处理器系统中使用(未示出)。在多处理器系统中,存贮器11将从一系列CPU和相应的输入/输出子系统12接受读和写请求。为了避免由于CPU10等待完成一个写操作所造成的处理的延迟,写缓冲器23取得写地址和数据(而暂存),CPU10就可继续处理工作。
写缓冲器还包括用于监控由CPU10通过总线13来的读请求的电路。如果写缓冲器23确认经由总线13已传送一个识别数据的读请求,此数据正在被进行缓冲暂存,并且还没有送入存贮器11,缓冲器通过它的专用总线24禁止存贮器控制器对此请求作出响应,而由写缓冲器23通过总线13发送所请求的数据来完成此读操作。
图1A描述的系统还包括一个系统控制电路25,在CPU10的控制下,此电路完成判优操作。因此,如果系统具有一个以上的输入/输出子系统12,它起着调节各个输入/输出子系统12对总线13访问的作用。
CPU10包括一个处理器30和一个选用的浮点处理器31。典型的情况是,浮点处理器是一个选用设备,在按本发明构成的数字式数据处理系统或CPU10中不一定需要存在。浮点处理器包括有为处理选定类型数据(即指浮点格式的数据)的指令的优化的电路。典型地说,处理器30也能处理同样的数据,但需更长的时间来完成处理工作。
图1B所示的为系统中所用的一个处理器30的详细功能方框图。在图1B中,处理器30包括一个总线接口电路33,它连接至总线13的各种控制线(图上用参考编号13A总括示出),按照下述方式通过总线的各种线发送和接收信号。总线接口电路还与一个IDAL内部总线34相接,此内部总线与高速缓存35、数据通路36、存贮器管理装置37和处理器控制电路40之间传输信号。在下面的图3中还将介绍处理器30的一个实施例所用的一种总线接口电路33。
在IDAL内部总线34上还连接着一组寄存器,在总线接口电路33的控制下,它在IDAL内部总线34和总线13的DAL线50之间传输数据。具体地说,在总线接口装置33的控制下,一个写数据寄存器250和一个写地址寄存器251分别接收写数据和写数据将被存入的存贮器11中单元的地址或输入/输出装置12中的地址。如下面将介绍的,在适当时刻,总线接口装置33使得这些寄存器的内容通过一个多路转接器253传送到DAL线50以完成写操作。类似地,在总线接口装置33的控制下,一个读地址寄存器252接收一个含有被读出数据的单元的地址。在适当时刻,总线接口装置33使得读地址寄存器252的内容通过多路转接器253耦合至DAL线50以完成一个读操作。也是在总线接口装置33的控制下,读数据被锁存在一个输入寄存器254上。总线接口装置33也可使得输入寄存器254的内容作为RCV DAT接收的数据信号耦合至IDAL内部总线34。
处理器控制电路40对从存贮器11检索的程序指令解码,在相继的处理循环中使得数据通路36完成为执行指令所需的算术和逻辑操作。数据通路36包括一组寄存器255用于存贮待处理的数据,和供执行处理的算术、逻辑电路256。
处理器30的一个实施例采用虚拟地址,并提供虚拟地址转换电路37用来将虚拟地址转换成实际地址。虚拟地址转换电路包括一组虚源寄存器257,它从处理器30中的其它电路接收虚拟地址,这些电路最主要的是数据通路36,虚拟地址转换电路还包括含有某些转换信息的转换缓冲器260。转换是在处理器控制电路40的控制之下,在需要时进行的。实际地址通过一个多路转接器261从转换电路37耦合至IDAL内部总线34。数据通路36也可包括实际地址,为多路转接器261提供第二个源输入。处理器控制电路40控制多路转接器261。
在CPU10中高速缓存35是一个普通的信息存贮电路。高速缓存在K.黄(K.Hwang)和F.伯律格(F.Briggs)所著的“计算机结构和并行处理”一书(McGraw-Hill公司出版,1984年)的第2.4节第98页等处,和V.哈马洽(V.Hamacher)所著的“计算机结构”(McGraw-Hill公司出版,1984年)的第8.6节第306页等处均有阐述。高速缓存35包括一个由许多存贮单元组成的数据存贮区38。数据存贮区38是以数据块形式组织的,每个块含有二个存贮单元,每个存贮单元贮存一个信息字,即能在总线13上一次传送的信息量。在一个特定的实施例中,一个信息字相当于4个字节,或32个二进制数字的信息。因此,每个块可以贮存8个字节的信息。
高速缓存35含有HIT/MISS(找到/未找到)逻辑电路262,它确定何时一个由虚拟地址转换电路产生的实际地址相应于高速缓存35中的一个地址。从虚源寄存器257来的虚拟地址的低位部分,在一个实施例中为VA SRCE(8∶3)信号,通过一个多路转接器264被耦合,用来选择数据贮存区中的一个数据块和相关联的标签41的项。HIT/MISS逻辑电路262然后确定关联的标签41的项(entry)的内容是否与所转换的实际地址相应。如果相应,则HIT/MISS逻辑电路产生一个判定的HIT信号,此信号被送至总线接口装置33。如果总线接口装置33没有接收到一个判定的HIT信号,它以一般方式在总线13上启动一个操作以便检索被寻址单元的内容。如果HIT信号是判定的,总线接口装置33并不在总线13上启动一个操作,而是允许从高速缓存数据贮存区38来的数据通过一个多路转接器263传送到IDAL内部总线34上,一般地说,此数据将送至数据通路36上。
在此技术领域内熟悉的人员会理解,贮存在高速缓存35的一个数据块中的信息,当它从存贮器装置11中收到时,是贮存在存贮器11中的信息的复制。高速缓存35中的每一个数据块有一个关联的标签41,其内容由总线接口电路33所确定,以便识别存贮器11中信息被复制的单元。此外,每个数据块还有一个失效(Stale)标誌42,它由总线接口电路所复位或清除,以便指出这个块的内容事实上是否由标签标识的单元的复制,即这个块的内容是否失效。
在高速缓存35的一个实施例中,数据存贮区38、标签41和标誌42是动态存贮器。一个更新计数器262在总线接口装置33的控制下产生更新地址,此地址通过多路转接器264耦合以更新动态存贮器。
一个指令可以包括有一个或几个操作数说明符,说明符标识在数据通路36中寄存器上的操作数的单元,或标识一个标明在虚拟地址空间操作数的单元地址。例子可参见1980年11月25日授于W.D.斯特列克(W.D.Strecker)等人的美国专利4,236,206,“用于执行可变长度指令的中央处理机”。处理器控制电路40与数据通路一起对每个操作数说明符解码以标识操作数的单元,然后再从被标识的单元取得操作数。一个操作数说明符本身可以包含操作数(即操作数说明符可以是一个“文字数”),操作数说明符也可以标识含有操作数的那些数据通路寄存器中的一个(未示出)。
此外,操作数还可以是在程序的虚拟存贮空间的单元之内。操作数说明符可以指示出怎样确定此单元。如果操作数是在虚拟存贮空间内,控制电路40使得存贮器管理电路37将虚拟地址转换成实际地址。在取得操作数的实际地址后,总线接口电路33就取得操作数。首先,它确定操作数是否在高速缓存35内。如果操作数是在高速缓存内,总线接口电路将操作数发送至数据通路36。在另一方面,如果操作数不在高速缓存35内,总线接口电路33通过总线13发送一个读请求至存贮器11,以便检索操作数。在取得所有操作数后,数据通路36可以执行指令所要求的操作。
操作数说明符还可以标识出经过处理的数据将存贮的单元。控制电路40和存贮器管理电路37以与上述同样的方式用来确定实际地址。如果经过处理的数据将存贮在存贮器11中,则总线接口33经由总线13执行所需的写操作。此外,如果实际地址相应于高速缓存中的一个适当的标签,总线接口33就使得数据存贮在高速缓存35内。
总线接口装置33包括一个控制在总线13上传输数据的状态机270,和一个控制IDAL内部总线34上传输数据的IDAL状态机271。总线接口装置还控制一个浮点处理器逻辑电路272,后者又相应地控制与浮点处理器31的通信。在下面图3中还将更详细介绍总线接口装置33。
总线13上的操作
总线13包括一组线,用来在各种由它连接的装置之间传输表示信息的信号。尤其是,总线13包括DAL(31∶0)数据地址线50,它传送DAT数据和ADRS地址信号。如果CPU10、尤其是处理器30正在启动一个传输过程,使处理器30成为传输过程的总线主控装置,处理器30首先通过DAL(31∶0)数据地址线50发送ADRS地址信号,并同时在线52上发送TR TYPE(2∶0)传输型命令信号,它说明传输操作是一个读操作还是写操作。经过一段足够使ADRS地址信号和TR TYPE(2∶0)传输型命令信号稳定下来的短时间,处理器30然后在线51上判定一个ADRS STR地址选通信号。
当ADRS STR地址选通信号被判定时,接至总线13的所有其它装置接收和解码此ADRS地址和TR TYPE(2∶0)传输型命令信号,而含有被ADRS地址信号所标识的单元的装置即为对传输的响应装置(或从动装置)。如果传输操作是一个写操作并且ADRS地址信号标识存贮器11中的一个单元,则写缓冲器23是从动装置。在处理器30判定ADRS STR地址选通信号后经过一个选定的时间,它从各自的线上除去ADRS地址信号和TR TYPE(2∶0)传输型命令信号。
如果被传输的TR TYPE(2∶0)传输型命令信号规定一个写操作,主控装置则通过线50发送数据信号,然后在线53上判定一个DATA STR数据选通信号。从动装置然后接收和贮存所发送的数据。当数据已贮存时,如果操作完成,没有出错,则被寻址的装置就在线54上判定一个RDY准备信号;如果在存贮操作过程中出错,则在线55上判定一个ERR出错信号。
在另一方面,如果被传送的TR TYPE(2∶0)传输型命令信号规定的是一个读操作,从动装置从由地址信号所标识的单元检索数据,通过DAL(31∶0)数据地址线50将数据发送出去,并通过线54发出一个判定的RDY准备信号。对此作出响应,处理器30接收数据并经线53发送一个判定的DATA STR数据选通信号。
无论在读或写操作过程中,在从动装置已判定RDY准备信号或ERR出错信号(如果在传输过程中出错)之后,处理器30除去(negate)DATA STR数据选通信号。然后从动装置除去RDY准备或ERR出错信号,处理器30再除去ADRS STR地址选通信号而结束传输过程。
除处理器30以外的连接至总线13的装置也可以成为总线主控器并启动与存贮器11间的传输。输入/输出子系统12,尤其是它们的输入/输出控制器22可以成为总线主控器。为了成为总线主控器,输入/输出控制器22通过线56判定一个DMR直接存贮器请求信号。然后处理器30通过线57判定一个DMG直接存贮器许可信号,此信号为输入/输出控制器22所接收。此时输入/输出控制器启动一个与存贮器之间的传输过程,其工作方式与上述处理器30的情况相同。输入/输出控制器保持DMR直接存贮器请求信号于判定状态一直至它结束传输过程为止。因此,如果输入/输出控制器要求多次传输,它可以保持DMR直接存贮器请求信号于判定状态,直至它结束所有传输过程为止。在DMR直接存贮器请求信号处于判定状态期间,处理器30处于停止状态,也就是说,它监控总线13各条线上的信号,但除此之外它不执行任何指令。
如果系统包含有多个输入/输出子系统12,由各个输入/输出控制器22发出的要求成为总线主控器的各单独的请求信号被送至系统控制器,它判定DMR直接存贮器请求信号并监控DMG直接存贮器许可信号的状态。当处理器30判定DMG直接存贮器许可信号时,系统控制器按照优先级裁决方案使得一个输入/输出控制器22成为总线主控器。
总线13还有许多其它传送状态和控制信号的线。线60上有CLK时钟信号,用于系统中工作的同步,总线13上的各种信号都按照CLK时钟信号定时。
线61上有CCTL高速缓存控制信号,它有二个功能。如同在保尔·洛宾菲尔德(Paul Rubinfeld)1986年9月12日的同时待批美国专利申请第908825号:“数字数据处理系统高速缓冲存贮器内容的失效标记”(“Cache Invalidate Protocol for Digital Data Processing System”中所说明的,例如,CCTL高速缓存控制信号由一个当时是总线主控器,并对存贮器11执行写操作的输入/输出控制器22所判定。输入/输出控制器22当它正在DAL数据地址线50上发送ADRS地址信号、在线52上发送TR TYPE传输型信号、并在线51上判定ADRS STR地址选通信号的同时,判定CCTL信号。当CCTL高速缓存控制信号被判定,并且TR TYPE传输型信号表明的是一个对存贮器11的写操作时,总线接口33检查所有高速缓存项的标签41的内容。如果总线13的DAL数据地址线50上的ADRS信号与一个标签41的内容相符,则总线接口33对于高速缓存的这个数据块的S失效标誌42置位。
CCTL高速缓存控制信号还可被存贮器11所判定,用以防止处理器30在高速缓存35中存贮在读操作期间被请求的数据。例如,在存贮器11是一个多端口存贮器时,就可能用到这种判定,也就是说,如果该存贮器是由几个处理器共享,每个处理器通过一个单独的总线访问存贮器11,并且被检索的数据是来自一组对所有处理器都可使用的一组可寻址的存贮单元。但这样的数据贮存在高速缓冲存贮器35中是不希望的,因为另一个处理器可能会更新共享单元的内容。由于更新不是通过总线13进行的,处理器30不能检测出这些更新。如果处理器30使用从高速缓存来的这类数据,它可能与存贮器中相应单元的内容不符。由于CCTL高速缓存控制信号的这种使用,存贮器11与其在DAL数据地址线50上发送数据的同时判定CCTL高速缓存控制信号,并保持高速缓存控制信号于判定状态,直至它除去数据为止。
总线13还包括一根线62,它带有一个CLR WRT BUF清除写缓冲器信号。CLR WRT BUF清除写缓冲器信号是由处理器30对其内部的某些状态的响应而判定的,而这些状态在处理器30之外用其他方法是不能检测的,例如,处理器30在执行一条致使它转换过程上下文的指令,或它开始执行一个中断服务例行程序或一个异常例行程序时,它判定CLR WRT BUF清除写缓冲器信号。CLR WRT BUF清除写缓冲器信号由微指令的一个字段所控制,微指令是在执行这些指令期间由处理器控制电路40所产生的。
当CLR WRT BUF清除写缓冲器信号被判定时,写缓冲器23确定它是否有数据要贮存在存贮器11内。如果它没有,它就什么也不做。但是,如果写缓冲器23具有要存贮在存贮器11中的某些数据,它就判定DMR直接存贮器请求信号,并继续试图将其余数据贮存在存贮器11中。为对判定的DMR直接存贮器请求信号作出响应,处理器判定DMG直接存贮器许可信号,此信号被写缓冲器23所忽略,因而处理器处于停止状态。写缓冲器23保持DMR直接存贮器请求信号于判定状态,直至它含有的所有数据被正确地贮存在存贮器11中为止。如果在贮存过程中不出现错误,写缓冲器23取消DMR直接存贮器请求信号,从而允许处理器30继续工作。
如果在存贮器11的写入过程中出错,写缓冲器23向处理器发出出错信号,使得处理器30运行例行程序在当前的上下文范围内查找和纠正出错。这样做大大简化出错校正。如果处理器被允许在检查出错误之前转换上下文,则将难于确定原来产生错误的上下文。如果能确定上下文,出错校正就容易得多,因此写缓冲器23不让处理器转换上下文,直到当前上下文的所有数据被正确地贮存在存贮器11中为止。与浮点处理器31之间的传输
处理器30还连接到浮点处理器31,以便:(1)向浮点处理器31传送浮点指令操作码,指明待完成的操作,如下面结合图2A所介绍的;(2)使操作数数据传送至浮点处理器31,用于进行如图2B和2C所介绍的处理;(3)由浮点处理器31取得经过处理的数据,如图2D所说明的。处理器30和浮点处理器31由二组线70和71互相连接,线70上传输CP STA(1∶0)浮点状态信号,线71上传输CP DAT(5∶0)浮点数据信号。浮点处理器31还连接到总线13的几条线上,包括DAL数据地址线50、接收CLK时钟信号的线60、接收ADRS STR地址选通信号的线51、接收RDY准备信号的线54、接收ERR出错信号的线55和接收DMG直接存贮器许可信号的线57。CP STA(1∶0)浮点状态信号和CP DAT(5∶0)浮点数据信号是与线60上的CLK时钟信号同步发送的。
在空闲时,浮点处理器31与线60上的CLK时钟信号同步地对线70和71上的信号状态重复采样,当至少在线71的一根线上具有一个判定的电平信号时,浮点处理器31锁存这些线和线70上的信号。参见图2A,当处理器30向浮点处理器31发送一个指令时,在由一个选定数量的CLK时钟信号的节拍期间,它通过线71向浮点处理器31至少发送指令的操作码的一部分作为CP DAT(5∶0)浮点数据信号。在此期间,与CLK时钟信号的一个节拍相同步,浮点处理器31锁存和贮存信号。在此时间间隔结束时,处理器30从线70和71上除去这些信号。
在线71上传送的CP DAT(5∶0)浮点数据信号足以标识待完成的浮点算术操作,并标识在操作中要用到的操作数的数量。与线71上传送操作信息的同时,在线70上其它信息也作为CP STA(1∶0)浮点状态信号被传送,提供有关浮点处理的进一步信息。尤其是,浮点操作数可用许多称为数据类型的格式编码。有关操作数格式的信息在线70上作为CP STA(1∶0)浮点状态信号被传送。在一种实施例中,有关操作数格式的某些信息也通过线71与操作信息一起被传送。
收到操作码时,浮点处理器31对它解码,以确定待完成的操作和所需的操作数的数量。处理器30(响应于发送操作码)和浮点处理器31(响应于接收操作码)然后进入一种状态:此时操作数通过DAL数据地址线50传送。数据类型信息用于向浮点处理器31标识每种操作数的格式。对于有些操作数的格式,需要的位比在DAL数据地址线50上一次传输所能容纳的还多,因此为了传送一个操作数需要多次传输。因此,数据类型信息也指示出在DAL数据地址线50上需要传输每个操作数的传输次数。
一个操作数可以贮存在三个源中的任一个内,这三个源是存贮器11(图1),高速缓存35和数据通路36的处理器的寄存器。一次操作所需的不同的操作数也可贮存在这三个源的任何一个之中。但是,如果为了传输一个操作数需要在DAL数据地址线50上进行多次传输,一般地讲,所有的传输都是对同一个源的。图2B描述的是为了从存贮器中检索一个操作数而被传送的信号的状态。图2C描述的是为了从高速缓存35或数据通路36的寄存器传送一个操作数所传送的信号。尤其是,图2B和2C描述在DAL数据地址线50上实现单次传输的信号状态。应当看到,对一个操作数可能会需要多次传输。
对于图2B来说,如果操作数是在存贮器11中,处理器30从存贮器11启动检索数据。尤其是如上所述的,处理器30完成一个读操作,把ADRS地址信号加到DAL数据地址线50上并判定ADRS STR地址选通信号。此后不久,处理器30将CP STA(1∶0)浮点状态信号加在线70上,使其二进制数值为0,即它除去全部二个CP STA(1∶0)浮点状态信号。此外,处理器30在线71上发送CP DAT(5∶0)浮点数据信号,在线71上CP DAT(5∶4)浮点数据信号含有一个地址对准码,它表明在DAL数据地址线50上传送的数据中有多少要用于操作数中。如果操作数是在DAL(5∶0)数据地址线上的一个短文字数,则CP DAT(0)浮点数据信号被判定,否则CP DAT(1)浮点数据信号被判定。
由于浮点处理器31已经以图2A所介绍的过程收到操作信息,它处于一种接收操作数的状态。判定的CP DAT(5∶0)浮点数据信号向浮点处理器31表明,它将对总线13上选定的线进行采样,尤其是对传送ADRS STR地址选通信号的线51。浮点处理器31利用ADRS STR地址选通信号的判定状态来确定操作数正在从存贮器11中被检索。如果当浮点处理器31接收判定的CP DAT(5∶0)浮点数据信号时,ADRS STR地址选通信号被判定,作为对存贮器11在线54上判定RDY准备信号作出响应,它锁存DAL数据地址线50上的数据信号。处理器30对DATA STR数据选通信号作出响应以完成传输过程。
应该理解,如果存贮器11对一个检索请求的响应是一个判定的ERR出错信号而不是一个判定的RDY准备信号,则浮点处理器31将不对DAL数据地址线50上被传送的数据进行锁存。处理器30将执行任何所需的出错校正操作,例如可能是必要的多次重试,并重复进行如图2B所示的操作。
图2C表示的是时间图,它有助于理解从处理器30将一个操作数传送至浮点处理器31,无论操作数是在高速缓存35或在数据通路36的一个寄存器中。在任一种情况下,处理器都置数据信号于DAL数据地址线50上,同时CP DAT(5∶0)浮点数据信号具有如上面图2B所述的相同的编码,并且,除去全部二个CP STA(1∶0)浮点状态信号。这些信号被处理器30保持CLK时钟信号的选定节拍数,在此时间间隔内,浮点处理器31锁存DAL数据地址线50上的信号。如果为传送一个完整的操作数需要在DAL数据地址线50上作多次传送,则重复图2C中的时序。
如果一个操作数的数据类型需要在DAL数据地址线50上作多次传输来传送一个完整的操作数,则处理器30、存贮器11和浮点处理器31重复图2B和图2C描述的操作,直至整个操作数被传送为止。
应该理解,图2B中的操作顺序和图2C的操作顺序是相似的,但有下述差别。如果当CP DAT(5∶0)浮点数据信号被判定时,ADRS STR地址选通信号在线51上也被判定,浮点处理器31利用判定的RDY准备信号作为当时在DAL数据地址线50上操作数(或操作数的一部分)存在的指示。但是,如果当CP DAT(5∶0)浮点数据信号被判定时,ADRS STR地址选通信号未被判定,则浮点处理器31利用CP DAT(5∶0)浮点数据信号的判定作为当时在DAL数据地址线50上操作数(或操作数的一部分)存在的指示。在这二种情况下,浮点处理器31与线60上的CLK时钟信号都同步地锁存DAL数据地址线50上的信号,在上述第一种情况下,是在接收到RDY准备信号之后进行,在第二种情况下是在接收到已判定的一个CP DAT(5∶0)浮点数据信号之后进行。
在操作数据传送之后,处理器30和浮点处理器31进入这样一个状态,在此状态中,当浮点处理器31准备发送操作结果时,处理器30准备接收这些结果,图2D描述的时间图详细地说明处理器30和浮点处理器31用来把经过处理的数据传送到处理器30所用的操作顺序,经过处理的数据包括状态码(它说明结果是负的或零,以及有关结果的其他选定事实)和表示由浮点处理器31完成的计算数值的数据信号。
在图2D上,一开始,处理器30在线70和71上发送信号码,表示它已准备好接收经过处理的数据,在一个实施例中,二个CP STA(1∶0)浮点状态信号都被除去,CP DAT(3)浮点数据信号在其它信号都被除去的情况下被判定。此后,浮点处理器31就可以通过线70和71发送。
当浮点处理器31准备发送经过处理的数据时,它发送一个CP STA(1∶0)浮点状态信号,表示对应这个结果的一个代码,同时还发送CP DAT(5∶0)浮点数据信号表示状态码。浮点处理器31把这些信号保持CLK时钟信号的选定节拍数,然后把数据信号放置在DAL数据地址线50上,同时在线70和线71上发送一个对应这个结果的一个代码。如果在DAL数据地址线50上需要多次传输来传送经过处理的数据信号,浮点处理器31与CLK时钟信号同步地传送它们。
当浮点处理器31正在处理操作数并且在它把结果发送至处理器30之前,处理器30可以判定DMG直接存贮器许可信号,它允许输入/输出子系统12参与一项与存贮器11之间的传送。当处理器30表示它已准备接收经过处理的数据之后,浮点处理器31监视线57的状态。当浮点处理器31准备回送经过处理的数据时,如果在线57上判定有DMG直接存贮器许可信号,则浮点处理器延迟回送此经过处理的数据,直至DMG信号被除去为止。
此外,如果发生出错,例如在从存贮器11检索操作数时出错,处理器30表示将不打算从浮点处理器31接收经过处理的数据,处理器30也不取消浮点处理器31的操作,反之,在处理器30向浮点处理器31发送一个新的操作码时,浮点处理器31对此操作码进行操作。应该看到,由处理器30通过线70和71所发送的、用来表示它已准备接收经过处理的数据的CP STA(1∶0)浮点状态信号和CP DAT(5∶0)浮点数据信号,不应与任何操作码相对应,以便浮点处理器31能区分它们。
总线接口电路33
图3所示为在一个实施例中处理器30的一种总线接口电路33。在图3上,总线接口电路包括一个控制总线13(图1A)的状态机270和控制IDAL内部总线34工作的第二个状态机271。二个状态机270和271独立地工作,但下述的几种标誌和控制信号除外:这些信号允许状态机271向状态机270表示需要在总线13上进行操作,以及由状态机270提供响应信号向状态机271表示操作的结束。
控制IDAL内部总线34的状态机271从处理器30中的各种源(通常由控制逻辑273所表示)、从总线13上的若干终端(通常由总线13的引线端274所表示)、以及从控制电路40(图1B)的微指令接收输入信号。状态机271发送输出信号来控制处理器30内的许多电路(包括控制与浮点处理器31之间的传输的逻辑电路272),还发送控制高速缓存和地址输入多路转接器264工作的几个信号(图1B)。此外,状态机271的输出信号还控制含有标誌(未示出)的逻辑电路276,该标誌指示读操作待处理,此读操作又由一个RD REQ读请求信号的状态所指示;还可指示写操作待处理,此写操作由一个WRT REQ写请求的状态所指示,标誌还可指示从处理器30至浮点处理器31有操作数传输待处理,它由BRDCST REQ广播请求信号的状态所指示。
控制逻辑276在操作系统控制下还可确定在一个读操作过程中在总线13上所收到的某些信息(图1A)是否应贮存在高速缓存35中(图1B)。例如,操作系统可以调整处理器30将它所读的所有信号贮存在高速缓存35中。另一种可能是,操作系统可以不允许把处理器指令贮存在高速缓存35中,而仅允许把待处理的数据贮存在高速缓存中。但是,一般地说,操作系统不允许从图1A所示的系统其它部分中的各种控制寄存器所接收到的信息贮存在高速缓存35内。控制逻辑276调整一个CACHE ACC可高速缓存访问信号,以便控制将在总线13上所接收的信息进行高速缓存。
如上所述,在处理器30以外的一个装置也可控制该传输是否打算借助线61上的CCTL高速缓存控制信号而进行高速缓存(图1A)。
状态机271基于引线274上的信号状态,直接或间接地通过其它控制逻辑(未示出)控制把写数据与读和写地址装入锁存器250至252,和控制从输入数据贮存器254的读数据的传输。
控制总线13上传输的状态机270从控制逻辑276接收RD REQ读请求、WRT REQ写请求和BRDCST REQ广播请求信号,以及总线引线274来的信号,还产生发送至逻辑电路277的信号,该逻辑电路控制组成总线13的几个信号的状态。此外,状态机270还产生发送至控制逻辑280的信号,该控制逻辑电路进而控制锁存器250、251、252和254以及多路转接器253的工作(图1B),使信号能耦合至总线13的DAL数据地址线50,并从这里接收返回信号。在一个读操作完成后,状态机270还判定一个CLR RD FLAGS清除读标誌信号,它使得控制逻辑276除去RD REQ读请求信号。
以此为基础,下面介绍图3所描述的总线控制电路33的工作。在一个由控制电路40所启动的写操作过程中,如果控制逻辑273没有判定DMA OR WRT PND(DMA或写待处理)信号,状态机271先把将被写入的单元地址装入写地址锁存器251(图1B),并确定此单元是否被缓存(is Cached)于高速缓存35内(图1B)。如果DMA OR WRT PND已判定,那么或者图1A所描述的系统内的另一个装置正在使用总线13,或者状态机271已使得写地址和数据分别装入锁存器251和250(图1B),这些数据尚未通过总线13传输。
如果DMA OR WRT PND(DMA或写待处理)信号没有判定,则要确定待写入的单元是否被缓存。如果此单元被缓存,高速缓存35内相应于该单元的项必须用新的数据予以更新。为了确定此单元是否被缓存,状态机271产生一个CACHE FTN(1∶0)高速缓存功能信号(使高速缓存被读出)和CACHE ADRS(1∶0)信号(使多路转接器264采用由虚拟地址转换电路37产生的实际地址)。在此操作过程中,IDAL CACHE XMIT高速缓存发送信号被除去,从而禁止高速缓存的数据被耦合到内部数据总线34上。如果该单元被缓存,HIT信号将由AND与门312所判定,这将反映在从控制逻辑273来的MISS信号的状态中。
如果MISS信号没有判定,则待写入的单元被缓存。对被除去的MISS信号作出响应,状态机271产生CACHE FTN(1∶0)高速缓存功能信号(启动一个高速缓存写操作)和CACHE ADRS(1∶0)高速缓存地址信号(启动多路转接器264去使用从虚拟地址转换电路来的地址)。同时,写入高速缓存项的数据被贮存在写数据锁存器250(图1B)内,而控制逻辑内的标誌被调整使产生一个判定的WR REQ写请求信号。在此操作过程中,MBOX STALL信号被判定从而禁止虚拟地址转换电路的工作。
在另一方面,如果MISS信号被判定,则待写入的单元没有被缓存。为对判定的MISS信号作出响应,状态机使写数据锁存至写数据锁存器250(图1B),并使WRT REQ信号被控制逻辑276所判定。此外,CACHE ADRS(1∶0)高速缓存地址信号被调整使得更新计数器262增1,并使得多路转接器264把地址耦合至标誌42、标签41和数据存贮器38(图1B)使它们被更新。在此操作过程中,MBOX STALL信号也被判定,从而禁止虚拟地址转换电路工作,防止它产生另一个实际地址。
在写操作完成后,DMA OR WRT PND(DMA或写待处理)信号被除去。这允许另一个地址和写数据装入锁存器250和251(图1B),更新操作也被启动。
在读操作过程中,由状态机271所完成的或启动的操作决定于所要求的信息是指令还是数据,以及所要求的信息是否曾在高速缓存35内(图IB)。如果由地址标识的单元是在高速缓存内,并且在标签41或数据38(图1B)内无奇偶校验位错误,则信息在高速缓存内,这将使该高速缓存项不能使用。可能会需要一个读操作来检索一个指令,在这种情况下控制逻辑273判定一个IB REQ指令缓冲器请求信号。否则控制电路40判定一个RD读信号。如果所需的信息不在高速缓存35内,控制逻辑273也判定一个READ MISS信号。READ MISS信号是所描述的HIT信号的补码。
作为对从控制电路40来的一个判定的RD读信号或对判定一个IB REQ指令缓冲器请求信号的响应,状态机271产生CACHE FTN(1∶0)高速缓存功能信号(这些信号启动一个高速缓存读操作)和CACHE ADRS(1∶0)高速缓存地址信号(它启动多路转接器264(图1B)去使用从虚拟地址转换逻辑37来的地址)。同时,状态机271判定ARM APRS STR待命地址选通(arm address strobe)信号,该信号使得由虚拟地址转换逻辑37来的地址装入读地址锁存器252。如果操作是对IB REQ信号作出过响应,状态机271还判定一个INITIB REQ启动指令缓冲器请求信号,该信号使得控制逻辑273设置一个标誌,此标誌又进而使得判定一个PREV IB REQ先前指令缓冲器请求信号。如果信息在高速缓存35内,状态机271允许信息由高速缓存35耦合至如上面图5所述的位置,然后操作终止。
如果信息不在高速缓存35内,并且DMA OR WRT PND(DMA或写待处理)信号被判定,则状态机271判定STALL和MBOX STALL信号从而使处理机30停止,还判定CACHE ADRS(1∶0)信号允许更新操作。处理器的停止允许在开始读操作之前完成写操作。
如果DMA OR WRT PND(DMA或写待处理)信号被除去,则读操作继续。状态机271允许控制逻辑276判定RD REQ读请求信号。状态机271然后监控CACHEABLE(可高速缓存)信号、CCTL高速缓存控制信号、RDY准备信号、和ERR出错信号以确定读操作的结束。如果CACHEABLE或CCTL高速缓存控制信号表明信息不应进行高速缓存,则在总线13上有一个传输过程。在另一种情况,如果信息将进行高速缓存,则需有二次传输,一次用于该高速缓存的低位字,另一次用于高速缓存的高位字。
如果传输是打算用高速缓存,当收到RDY准备信号时,如果DAL PAR ERR奇偶校验位出错信号没有判定(说明在收到的信息中无奇偶校验位错误),状态机271使多路转接器264(图1B)使用从虚拟地址转换电路来的地址选择高速缓存35中的一个项,并使此信息装入所选定的高位字或低位字。信息将装入的高速缓存35中的那个字取决于VA(2)虚拟地址位的状态,此信息然后耦合至数据通路36(图1B)。
如果DAL PAR ERR奇偶校验位出错信号被判定,或在线55上ERR出错信号被判定(图1A),表示参与传输的其它装置的错误响应,则操作取决于PREV IB REQ先前指令缓冲器请求信号是否判定。如果已判定,则由一个判定的IB FILL ERR指令缓冲器填补出错信号通知控制电路40(图1B)使它能采取校正动作。如果PREV IB REQ先前指令缓冲器请求信号没有被判定,则STALL和MBOX STALL信号被判定以停止处理器30,并且TRAP REQ陷阱请求信号被判定,它使处理器控制电路40执行选定的恢复操作。
如果所接收的信息是将进行高速缓存的,并且当收到数据时如果ERR出错信号或DAL PAR ERR奇偶校验位出错信号都没有判定,则状态机271继续使第二个字被接收并贮存在高速缓存35内。如果第二个字被正确地接收,如上所述它贮存在高速缓存35中。状态机271
(紧接下页)产生CACHE ADRS(1∶0)高速缓存地址信号,该信号使多路转接器264使用从虚拟地址转换电路37来的地址,还产生CACHE FTN(1∶0)高速缓存功能信号,使第二个字贮存在高速缓存的项中。但是,状态机271并不使信息传送至数据通路36。
在另一种情况,如果ERR出错信号或DAL PAR ERR奇偶校验位出错信号被判定,则MBOX STALL信号被判定,使虚拟地址转换电路37停止工作,并且被写入第一个字的高速缓存的项被标誌为无效的。同时,CACHE ADRS(1∶0)信号被调整使得多路转接器264使用从更新计数器262来的更新地址来更新高速缓存35的内容和使计数器增1。
每当状态机271不使信息在高速缓存35内写入或读出时,状态机271就使得更新操作被执行。为使操作进行,状态机271产生CACHE ADRS信号,此信号使多路转接器264使用从更新计数器262来的更新地址信号,以常规方式来更新贮存电路38、41和42的内容(图1B)。
状态机271也可响应来自控制逻辑273的DMA INV REQ无效请求信号使高速缓存35中的项无效。如图1B介绍时所述,此请求信号是在判定的CCTL高速缓存控制信号和判定的ADRS STR地址选通信号两者都为图1A的系统内其它装置所判定,并且两者相重合时产生的。它在其它装置执行与存贮器11的DMA(直接存贮器访问)操作时发生,因此DMG直接存贮器允许信号将被判定。如果另一装置把数据传输至存贮器11中在高速缓存35内存贮的单元内,高速缓存的项必须标识为无效的。在图1B中,为对DMG和ADRS STR地址选通信号的重合作出响应,一个AND与门401使输入数据贮存器254贮存信号,在此情况下,是在DAL数据/地址线50上的地址信号。
为响应DMA INV REQ无效请求信号,状态机271首先试图用输入数据贮存器254内的地址完成一个对高速缓存35的读操作,而不使高速缓存的数据耦合至内部总线34上。如果MISS信号判定,此单元不进行高速缓存,并且,无进一步的操作。
但是,如果MISS信号被除去,在输入数据锁存器254的地址所标识的单元被高速缓存,而状态机则启动一个高速缓存无效操作。此时它产生CACHE FTN(1∶0)高速缓存功能信号(此信号又启动一个无效操作),它还产生CACHE ADRS(1∶0)高速缓存地址信号,此信号使多路转接器264在无效操作中使用输入数据锁存器的内容。
状态机270的工作是对下列信号作出响应:CCTL高速缓存控制信号、DMR直接存贮器请求、由总线13来的RDY准备和ERR出错信号、RD REQ读请求、WRT REQ写请求、BRDCST REQ广播请求、从控制逻辑276来的CACHE ACC可高速缓存访问信号和从状态机271来的INH DMA禁止直接存贮器访问和AMR RD REQ待命读请求信号。如果状态机270接收一个判定的DMR直接存贮器请求信号,表示在图1A中描述的系统中另一个装置需要在总线上完成一次传输,除非INH DMA禁止DMA信号或BRDCST REQ广播请求信号被判定,否则状态机270就除去DIS DMG禁止直接存贮器许可信号,从而使控制逻辑277判定DMG直接存贮器许可信号。判定的DMG直接存贮器许可信号使另一个装置在总线13上执行传输。此外,状态机270判定DATA IN信号,该信号使DAL控制逻辑280调整DAL数据地址线50以允许系统内其它装置使用这些地址线。状态机270还判定TRI-STATE STR三态选通信号,使控制逻辑277允许其它装置使用DATA STR数据选通信号、ADRS STR地址选通信号和TRTYPE传输型信号。
另一种可能是,如果系统内没有其它装置要在总线13上执行传输,则状态机270为响应从控制逻辑276来的RD REQ、WRT REQ和BRDCST REQ广播请求信号而在总线13上进行传输。如果WRT REQ写请求信号判定,则表示在锁存器251和250上分别有一个写地址和写数据(图1B);如果DMR信号未判定,状态机270产生DAL CONT(1∶0)(DAL内容)信号,它使得多路转接器253把写地址从锁存器251耦合至DAL数据地址线50上。同时,状态机270判定ADRS STR EN地址选通启动信号,该信号又使控制逻辑277判定ADRS STR地址选通信号。
其次,状态机270产生DAL CONT(1∶0)(DAL内容)信号,该信号使多路转接器253把写数据锁存器250的内容耦合至DAL数据地址线50上,同时,状态机270判定DATA STR EN数据选通启动信号,这样,进而又使控制逻辑277判定DATA STR数据选通信号。此后,状态机等待直至RDY准备或ERR出错信号判定。如果收到判定的RDY信号,通过除去ADRS STR EN地址选通启动和DATA STREN数据选通启动信号而使操作终止,这样,进而又使控制逻辑277分别除去ADRS STR地址选通和DATA STR数据选通信号,使控制逻辑276除去WRT REQ信号。
在另一种情况下,如果收到判定的ERR出错信号,状态机270执行一次重试企图,此时它产生DAL CONT(1∶0)(DAL内容)信号,该信号使多路转接器253把写数据信号从锁存器250耦合至DAL数据地址线50。
如果RDY准备和ERR出错信号都判定,则产生一个重试信号,使传输企图重新进行一次。
如果不发生其它操作,状态机270产生DAL CONT(1∶0)(DAL内容)信号,它使得多路转接器253把读地址锁存器252的内容耦合至DAL数据地址线50。这允许状态机270在其它信号和状态允许一个读操作发生时立即启动一个读操作。在读操作过程中,当RD REQ读请求信号判定时,状态机270判定ADRS STR EN地址选通启动信号,这样,进而又使控制逻辑277判定ADRS STR地址选通信号。状态机270然后判定DATA IN数据输入信号,该信号使控制逻辑280调整DAL数据地址线50,以便系统内其它装置使用它们。同时,状态机判定DATA STR EN数据选通启动信号,这样,进而又使控制逻辑277判定DATA STR数据选通信号。
下面的操作取决于CACHE ACC可高速缓存访问信号是否被控制逻辑276所判定。如果此信号已判定,则所检索的数据是可高速缓存的,因此二个字被读至总线13上。另一种情况,如果CACHE ACC可高速缓存访问信号没有判定,则所检索的数据是不可高速缓存的,只有一个字被读至总线13上。如果CACHE ACC可高速缓存访问信号没有判定,状态机270判定一个RD DATA LAT读数据锁存器信号,当此信号判定时,它使输入锁存器254(图1B)从而接收在DAL数据地址线50上的信号。当RD DATA LAT读数据锁存器信号在此后被除去时,信号被输入锁存器所锁存。如果ERR出错信号被除去,为对判定的RDY准备信号作出响应,状态机270除去RD DATA LAT读数据锁存器信号,并判定CLR RD FLAGS清除读标誌信号。为对判定的CLR RD REQ信号作出响应,控制逻辑276除去RD REQ读请求信号。
在另一方面,如果CACHEACC可高速缓存访问信号判定,则按上述执行一个读操作。如果在数据被锁存至输入数据锁存器上时CCTL高速缓存控制信号没有判定,也执行第二次操作。在另一情况下,如果CCTL高速缓存控制信号判定,说明参与传输的其它装置排除对数据执行高速缓存,则不执行第二次操作。
状态机271使用INH DMA禁止直接存贮器存取信号来禁止状态机270对从其它装置接收DMR直接存贮器请求信号作出响应而判定DMG直接存贮器许可信号。INH DNA禁止直接存贮器存取信号是在与浮点处理器31间的某些传输过程中判定的(图1A)。
由控制电路40来的RD BRDCST读广播和BASIC BRDCST基本广播信号使得状态机271传输高速缓存35中的或数据通路36中的寄存器255中的浮点操作数信息(见图1B)。控制逻辑276也被启动以判定BRDCST REQ广播请求信号,从而使状态机270按上面所述传输此信息。状态机271还使控制逻辑273设定一个标誌,此标誌判定一个FPP PND浮点处理器待处理信号。状态机271判定一个SIG FPP号令浮点处理器信号(signal floating point processor signal),以便向FPP接口电路272表示它已准备从浮点处理器31接收一个浮点操作的结果。当如上所述状态码准备好时,接口电路272判定一个CP OK信号,当结果数据准备好时,它判定一个CP RDY准备信号,为响应CP RDY准备信号,状态机271使状态机270接收结果数据。如果浮点处理器31发出一个出错信号,则接口电路272判定一个CP ERR出错信号,为响应CP OK、CP RDY或CP ERR信号,状态机271使控制FPP PND浮点处理器待处理信号的标誌复位,从而除去信号。
总线接口电路33提供许多优点。首先,采用二个状态机270和271,每个控制不同的操作和通过标誌进行通信,大大简化了电路。
此外,状态机271使高速缓存35更新,而允许在其中使用动态存贮部件。这减小了高速缓存的实际尺寸,或者有利于在与过去相同的区域中提供更多的高速缓存的存贮量。
此外,应该理解,总线接口电路33在检索可高速缓存的数据时,首先检索程序需要的数据,然后检索用以贮存在高速缓存项内的其他字。在现有系统中,数据字的检索次序与它们在存贮器11内贮存的次序相同,因此,第一个数据字可能不是程序立即需要的那个字。这延迟了处理的继续,直到第二个字取出为止。
此外,当一个写操作待处理时,总线接口电路33允许读操作开始,从而使得产生一个读地址并被锁存至读地址锁存器252。在待处理的写操作完成之前,读操作没有完成,但当写操作完成时,读地址可立即被发送。
最后,总线接口电路还允许使高速缓存的项变为无效,这通过由图1A所描述的系统内其它装置完成的直接存贮器存取操作来进行,而与处理器30内是否已设置读或写操作无关。也就是说,高速缓存项无效操作可响应在输入锁存器254上所接收的DMA地址而产生,而写数据和写地址则在相应的锁存器251和250上所锁存(图1B),一个读地址也被锁存至锁存器252上。这简化了无效操作过程。
上述的介绍一直是限制在本发明的一个特定的实施例上。但是,对此发明很明显可进行各种变化和修改,而同时保留本发明的部分或全部的优点。因此,所附的权利要求包括属于本发明的实际精神和范围有关的所有这样的变化和修改。
附图缩写词翻译(供参考)
图1A
DMR 直接存贮器请求
DMG 直接存贮器许可
MISC CTRL 其他控制
RDY 准备
TR TYPE 传输型
ERR 出错
DATA STR 数据选通
ADRS STR 地址选通
CLR WRT BUF 清除写缓冲器
CCTL 高速缓存控制
DAL 数据地址线
CLK 时钟
CP STA 浮点状态
CP DAT 浮点数据
图1B
IDAL 内部总线
RCV DAT 接收的数据
FPP LOGIC 浮点处理器逻辑
CP CTA 浮点状态
CP DAT 浮点数据
图2
FPP OP CODE TRANSFER 浮点处理器操作码传输
CP STA(PROC) 浮点状态信号(处理器)
CP DAT(PROC) 浮点数据信号(处理器)
DRS STR(PROC) 地址选通信号(处理器)
DAL 数据地址线
DATA MEM 数据存贮器
ADRS STR 地址选通信号
RDY(FPP) 准备(浮点处理器)
COND CODES 状态码
PROC DATA 经处理的数据
CP DAT(1)=1 IF DAL(31∶0) 如果数据地址线(31∶0)
CONTAINS OPERAND 含有操作数,浮点数据(1)=1
CP DAT(0)=1 IF DAL(5∶0) 如果数据地址线(5∶0)含
CONTAINS OPERAND 有操作数浮点数据(0)=1
图3
BLK BRDCST 块广播
ARM IB REQ 待命指令缓冲器请求
ADRS STR AS 地址选通判定
DMA INV REQ 直接存贮器访问无效请求
DMA OR WRT PND 直接存贮器访问或写待处理
DAL PAR ERR 数据地址线奇偶校验位出错
CACHE PAR ERR 高速缓存奇偶校验位出错
FPP PND 浮点处理器待处理
PREV IB REQ 先前指令缓冲器请求
CCTL 高速缓存控制
RDY 准备
ERR 出错
DMR 直接存贮器请求
RD/WRT 读/写
RD BRDCST 读广播
INIT IB REQ 起动指令缓冲器请求
ARM ADRS STR 待命地址选通
ARM RD REQ 待命读请求
CACHE ACC 可高速缓存访问
CP OK 浮点正常
SIG FPP 号令浮点处理器
CACHE FTN 高速缓存功能
MBOX STALL 虚址电路停止
IB FILL ERR 指令缓冲器填补出错
TRAP REQ 陷井请求
CLR PRV IB REQ 清除先前指令缓冲器请求
LD WRT DATA LAT 装入写数据锁存器
INH DMA 禁止直接存贮器访问
CLR RD FLAGS 清除读标志
DIS DMG 禁止直接存贮器许可
ADRS STR EN 地址选通启动
DATA STR EN 数据选通启动
DAL CONT(1∶0) 数据地址线内容(1∶0)
LD RD LAT 装入读锁存器
TR TYPE 传输类型
Claims (20)
1、一个数字数据处理系统,该系统包括由数据传输线、状态传输线及信息传输线构成的总线相互连接起来的中央处理器装置和辅助处理器装置,其辅助处理器装置执行所选择的指令,而且每个指令都在由每个指令所标识的信息上有一个操作代码,其中央处理器装置及其辅助处理器装置均包括有:
i.连接到上述数据传输线用于在上述数据传输线上反复传送由上述操作代码及与待处理的数据有关的信息所组成的上述数据的数据传输装置;
ii.连接到上述信息传输线用于启动在该信息传输线上的信息传送的信息传输装置;
iii.连接到上述状态传输线用于在该状态线上传送状态信号的状态传输装置;
A.上述中央处理器装置包括有连接到其各个数据传输装置、信息传输装置与其状态传输装置上去、并且响应于收到的一个要由上述辅助处理器装置处理的选定指令的控制装置,用于反复地启动:(1)数据传输装置将上述操作代码传送给上述辅助处理器,(2)信息传输装置及数据传输装置将要处理的信息传送给该辅助处理器,(3)上述状态传输装置向该辅助处理器装置指示,它已准备接收处理过的信息,以及(4)上述数据传输装置与上述信息传输装置根据由上述状态传输装置收到一个信号而接收处理过的信息;
B.上述辅助处理器装置包括有连接到其各个数据传输装置、信息传输装置与上述状态传输装置上去的控制装置,用于反复地启动:(1)数据传输装置接收来自上述处理器装置的操作代码,(2)信息传输装置与上述数据传输装置接收要作处理的信息,(3)根据由上述状态传输装置收到的一个信号指示该处理器装置准备接收处理结果,使上述数据传输装置与上述信息传输装置发送处理过的信息。
2、一个包括有辅助处理器装置的用于数字数据处理系统的中央处理器装置,通过包括有数据传输线、状态传输线及信息传输线的总线将该中央处理器装置和该辅助处理器装置进行相互连接,上述辅助处理器装置对由指令所标识的数据执行所选定的指令,每个指令都有一个操作代码,该处理器装置包括有:
ⅰ.连接到上述数据传输线用于通过该数据传输线上反复传送该操作代码及与待处理的信息有关的信息的数据传送装置;
ⅱ.连接到上述信息传输线用于启动要处理的信息在该信息传输线上传送,及用于接收所处理过的信息的信息传送装置;
ⅲ.连接到上述状态传输线用于在该状态传输线上传送状态信号的状态传输装置;以及
ⅳ.连接到上述数据传输装置、信息传输装置及其状态传输装置上去的,并且响应于收到的一个选定的由上述辅助处理器装置要处理的指令的控制装置,用于反复地启动:(1)数据传输装置将上述操作代码传送给上述辅助处理器,(2)信息传输装置及上述数据传输装置将要处理的信息传送给该辅助处理器装置,(3)上述状态传输装置向该辅助处理器装置指示它已准备接收经处理过的信息,以及(4)上述数据传输装置与上述信息传输装置根据由上述状态传输装置从上述辅助处理器装置中收到的一个信号而接收此经处理过的信息。
3、一个用于包括有中央处理器装置的数字数据处理系统中的辅助处理器装置,通过具有数据传输线、状态传输线和信息传输线的总线将上述中央处理器装置及上述辅助处理器装置相互连接起来,该辅助处理器装置对由每个指令标识的数据执行选定的指令,每个指令均包括有一个操作代码,上述辅助处理器装置包括有:
ⅰ.连接到上述数据传输线用于在该数据传输线上反复接收上述操作代码及与要处理的数据有关的信息的数据传输装置;
ⅱ.连接到上述信息传输线用于在该信息传输线上接收要处理的信息,以及用于在该信息传输线上发送所处理过的信息的信息传输装置;
ⅲ.连接到上述状态传输线用于在该状态传输线上传送状态信号的状态传输装置;以及
ⅳ.连接到上述数据传输装置、信息传输装置及状态传输装置上去的控制装置,用于反复地启动:(1)该数据传输装置去接收来自上述处理器装置的操作代码,(2)该信息传输装置及数据传输装置去接收要处理的信息,(3)上述数据传输装置及信息传输装置根据上述状态传输装置收到的一个信号而指示上述处理器装置准备接收处理结果,去发送处理过的信息。
4、根据权利要求1的系统,其中的中央处理器装置的控制装置包括有:
A.中央处理器装置的数据传送控制装置,它响应于接收到一个要由上述辅助处理器装置处理的指令,去启动上述数据传输装置,使通过该数据传输装置将上述操作码传送给上述辅助处理器装置。
B.连接到上述中央处理器装置的数据传输控制装置上去的中央处理器装置的信息传输控制装置,上述中央处理器装置的信息传输控制装置及上述中央处理器装置的数据传输装置用于启动上述中央处理器装置的信息传输装置及上述中央处理器装置的数据传输装置在对上述辅助处理器装置发送上述操作代码之后,对上述辅助处理器装置传送所要处理的信息,
C.连接到上述中央处理器装置的信息传输控制装置及上述中央处理器装置的状态传输装置上去的中央处理器装置的状态传输控制装置,用于响应于:上述中央处理器装置的信息传输控制装置使得要处理的信息能向辅助处理器装置进行的一次成功传输,从而启动上述中央处理器装置的状态传送装置,去发送如下指示给上述辅助处理器装置,即:已准备接收一个处理结果,并且用于接收来自上述辅助处理器装置的一个启动信号;以及
D.连接到上述中央处理器装置的状态传输控制装置、上述中央处理器装置的数据传输装置及上述中央处理器装置的信息传输装置上去的中央处理器装置的处理的信息传输控制装置,用于在由该中央处理器装置的状态传输装置收到上述的启动的信号之后而控制接收处理过的信息。
5、根据权利要求4的系统,其中的指令还包括有数据类型信息,上述中央处理器装置的控制装置还包括有连接到上述中央处理器装置的状态传输装置上去的中央处理器装置的数据类型传输控制装置,用于启动上述中央处理器装置的状态传输装置去传送在上述状态传输线上来自一个指令之中的数据类型信息,同时由上述中央处理器装置的数据传输装置在上述数据传输线上传送来自上述指令之中的操作代码。
6、根据权利要求4的系统,其中的中央处理器装置包括有用于根据指令存贮所要处理信息的信息源,该信息源被连接到上述中央处理器装置的信息传输装置与上述中央处理器装置的信息传输控制装置上去,该中央处理器装置的信息传输控制装置包括有用于启动该信息源,将所要作处理的信息传送给上述中央处理器装置的信息传输装置,从而向上述辅助处理器装置进行发送的装置。
7、根据权利要求4的系统,还包括有用于存贮要处理的信息的信息存贮装置,该信息存贮装置连接到上述总线上用来接收控制其中的信息检索的检索控制信号,该信息存贮装置在上述总线的信息传输线上发送检索到的信息,该中央处理器装置的信息传输装置包括有用于从上述信息存贮装置中起动信息检索的装置。
8、根据权利要求7的系统,其中的信息存贮装置包括有许多可寻址的存贮单元,每个单元均由一个地址来标识,并用来存贮信息,而且上述总线包括有用于传送总线控制信号的那些线,包括地址控制信号线,确认信号线及信息传输控制信号线,
A.上述信息存贮装置包括有用于从上述总线中接收其地址及其地址控制信号的装置,以及用于在上述信息传输线上发送由上述地址标识出的单元之中信息的装置,以及用于在此之后又在上述确认信号线上发送确认信号的装置;
B.上述中央处理器装置的信息传输控制装置还包括有用于启动上述中央处理器装置的信息传输装置在上述地址控制信号线上发送地址及地址控制信号的装置;以及
C.上述辅助处理器装置的信息传输装置还连接到上述确认信号线上,用来根据收到的上述确认信号从上述信息传输线上接收信息。
9、根据权利要求8的系统,其中信息存贮装置响应于一个出错信号而在出错信号传输线上发送一个出错信号,上述辅助处理器装置的信息传输装置响应于所收到的一个出错信号而忽略在上述信息传送线上发送来的信息。
10、根据权利要求4的系统,其中中央处理器装置的数据传输控制装置包括进一步启动上述中央处理器装置的数据传输装置在上述数据传输线上发送一个对准代码,同时把要处理的信息传送给上述辅助处理器装置。
11、根据权利要求2的中央处理器装置,其中中央处理器装置的控制装置包括:
A.响应于由上述辅助处理器装置要处理的指令的接收,用于启动上述数据传输装置通过该数据传输装置向该辅助处理器装置传送上述操作代码的中央处理器装置的数据传输控制装置,
B.连接到上述中央处理器装置的数据传输控制装置、上述中央处理器装置的信息传输装置及上述中央处理器装置的数据传输装置上去的中央处理器装置的信息传输控制装置,用于启动上述中央处理器装置的信息传输装置及上述中央处理器装置的数据传输装置,在向上述辅助处理器装置发送上述操作代码之后,将要处理的信息传送给该辅助处理器装置,
C.连接到上述中央处理器装置的信息传输控制装置及上述中央处理器装置的状态传输装置上去的中央处理器装置的状态传输控制装置,用于启动该中央处理器装置的状态传输装置,向该辅助处理器装置发送准备接收处理结果的指令,在此,它是响应于上述中央处理器的信息传输控制装置对上述辅助处理器装置成功地传送要处理的信息从而发送这个指令的,而且该状态传输控制装置还用于接收来自上述辅助处理器装置的一个启动信号,以及
D.连接到上述中央处理器装置的状态传输控制装置、上述中央处理器装置的数据传输装置及上述中央处理器装置的信息传输装置上去的中央处理器装置的处理的信息传输控制的装置,它用来控制在借助于上述中央处理器装置的状态传输装置收到上述启动信号之后,接收处理过的信息。
12、根据权利要求11的中央处理器装置,其中的指令还包括数据类型信息,上述中央处理器装置的控制装置还包括中央处理器装置的数据类型传输控制装置,该传输控制装置被连接到上述中央处理器装置的状态传输装置上去,用于启动上述中央处理器装置的状态传输装置从而传送来自上述状态传输线上指令之中的数据类型信息,并同时由上述中央处理器装置的数据传输装置传送来自上述数据传输线上指令之中的操作代码。
13、根据权利要求11的中央处理器装置还包括有根据指令存贮要处理的信息的信息源,该信息源连接到上述中央处理器的信息传输装置及上述中央处理器装置的信息传输控制装置,上述中央处理器装置的信息传输控制装置包括用来启动上述信息源的装置,从而启动它,传送要处理的信息至上述中央处理器装置的信息传输装置,以便发送至上述辅助处理器装置。
14、根据权利要求11的中央处理器装置,用于含有为存贮要处理的信息的信息存贮装置的系统之中,该信息存贮装置被连接到用于接收检索控制信号的总线上,以便控制来自总线上的信息检索,上述信息存贮装置在上述总线的信息传输线上发送所检索到的信息,上述中央处理器装置的信息传输装置包括用于起动从上述信息存贮装置之中检索信息的装置。
15、根据权利要求14的用于一个系统之中的中央处理器装置,该系统中的信息存贮装置包括:
A.许多可寻址的存贮单元,每个单元均由一个地址所标识,用于存贮信息,而且该总线包括有由地址控制信号线、确认信号线及信息传输控制信号线组成的、用于传送总线控制信号的若干条线,上述信息存贮装置包括:用于从上述总线之中接收上述地址及上述地址控制信号的、并用于在上述信息传输线上由上述地址所标识的单元之中发送信息的、而且还用于在此之后在上述确认信号线上发送确认信号的装置;
B.上述中央处理器装置的信息传输控制装置还包括有用于启动该中央处理器装置的信息传输装置在上述地址控制信号线上发送地址及地址控制信号的装置。
16、根据权利要求11的中央处理器装置,其中上述中央处理器装置的数据传输控制装置还启动上述中央处理器装置的数据传输装置在上述数据传输线上传送一个对准代码,同时向上述辅助处理器装置传送要处理的信息。
17、根据权利要求3的辅助处理器装置,其中上述辅助处理器装置的控制装置包括有:
A.连接到上述辅助处理器装置的数据传输装置上去的辅助处理器装置的数据传输控制装置,用来启动上述辅助处理器装置的数据传输装置从上述中央处理器装置之中接收操作代码,
B.连接到上述辅助处理器装置的数据传输控制装置上去的辅助处理器装置的信息传输控制装置,用来启动上述信息传输装置使其响应于上述辅助处理器装置的数据传输装置从上述中央处理器装置之中收到的上述操作代码,从而接收要作处理的信息,
C.连接到上述辅助处理器装置的数据传输装置及上述辅助处理器装置的信息传输装置上去的处理装置,用于接收上述操作代码及上述要处理的信息,并且用于产生对此响应的处理过的信息;以及
D.连接到上述辅助处理器装置的信息传输装置及上述处理装置上去的辅助处理器装置的处理信息传输控制装置,用于启动上述辅助处理器装置的信息传输控制装置在上述信息传输线上传送处理过的信息。
18、根据权利要求17的辅助处理器装置,其中的指令还包括有数据类型信息,上述辅助处理器装置的数据传输控制装置还包括连接到上述辅助处理器装置的状态传输装置上去的辅助处理器装置的数据类型传输控制装置,用来启动上述辅助处理器装置的状态传输装置,使从上述状态传输线上的指令之中接收数据类型信息,同时,上述辅助处理器装置的数据传输装置从上述数据传输线上的指令之中接收操作代码。
19、根据权利要求17的辅助处理器装置,其中上述总线包括用于传送总线控制信号的若干条线这些线包括有地址控制信号线、确认信号线及信息传输控制信号线,上述辅助处理器装置的信息传输装置还连接到上述确认信号线上去,用来根据所收到的上述确认信号从上述信息传输线之中接收信息。
20、根据权利要求19的辅助处理器装置,其中上述总线还包括用于传送出错信号的出错信号传输线,上述辅助处理器装置的信息传输装置根据所收到的出错信号而忽略在其信息传输线上发送来的信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US1751787A | 1987-02-24 | 1987-02-24 | |
US017517 | 1987-02-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN87107291A true CN87107291A (zh) | 1988-09-07 |
CN1019152B CN1019152B (zh) | 1992-11-18 |
Family
ID=21783031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN87107291A Expired CN1019152B (zh) | 1987-02-24 | 1987-12-07 | 数字数据处理系统中处理器与专用指令处理器间的接口 |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP0280821A3 (zh) |
JP (1) | JPS63208151A (zh) |
KR (1) | KR920004401B1 (zh) |
CN (1) | CN1019152B (zh) |
AU (1) | AU606083B2 (zh) |
BR (1) | BR8800696A (zh) |
CA (1) | CA1295749C (zh) |
IN (1) | IN171198B (zh) |
MX (1) | MX160485A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1299218C (zh) * | 1997-09-05 | 2007-02-07 | 自由度半导体公司 | 执行指令的方法 |
CN104424033A (zh) * | 2013-09-02 | 2015-03-18 | 联想(北京)有限公司 | 一种电子设备及数据处理方法 |
CN108268281A (zh) * | 2017-01-04 | 2018-07-10 | 中科创达软件股份有限公司 | 处理器协同方法及电路 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR890007159A (ko) * | 1987-10-30 | 1989-06-19 | 미다 가쓰시게 | 데이타 처리장치 및 그것을 갖는 데이타 처리 시스템 |
US4982428A (en) * | 1988-12-29 | 1991-01-01 | At&T Bell Laboratories | Arrangement for canceling interference in transmission systems |
FR2649982B1 (fr) * | 1989-07-20 | 1991-09-27 | Inst Nat Sante Rech Med | Membrane biologique artificielle |
JP2884831B2 (ja) * | 1991-07-03 | 1999-04-19 | 株式会社日立製作所 | 処理装置 |
ATE463786T1 (de) * | 2004-07-09 | 2010-04-15 | Michael Colin George Chapman | Hochleistungsfähiger benutzer-konfigurierbarer prozessor |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4509116A (en) * | 1982-04-21 | 1985-04-02 | Digital Equipment Corporation | Special instruction processing unit for data processing system |
JPS62243531A (ja) * | 1986-04-17 | 1987-10-24 | 松下精工株式会社 | 食器乾燥機 |
-
1987
- 1987-08-21 IN IN733/DEL/87A patent/IN171198B/en unknown
- 1987-08-28 EP EP19870401943 patent/EP0280821A3/en not_active Ceased
- 1987-09-04 CA CA000546137A patent/CA1295749C/en not_active Expired - Fee Related
- 1987-09-28 JP JP62243531A patent/JPS63208151A/ja active Pending
- 1987-10-22 AU AU80036/87A patent/AU606083B2/en not_active Ceased
- 1987-10-30 KR KR1019870012090A patent/KR920004401B1/ko not_active IP Right Cessation
- 1987-12-07 CN CN87107291A patent/CN1019152B/zh not_active Expired
-
1988
- 1988-02-12 BR BR8800696A patent/BR8800696A/pt not_active Application Discontinuation
- 1988-08-28 MX MX8038A patent/MX160485A/es unknown
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1299218C (zh) * | 1997-09-05 | 2007-02-07 | 自由度半导体公司 | 执行指令的方法 |
CN100573445C (zh) * | 1997-09-05 | 2009-12-23 | 自由度半导体公司 | 将一个处理器与一个协处理器相接口的方法 |
CN104424033A (zh) * | 2013-09-02 | 2015-03-18 | 联想(北京)有限公司 | 一种电子设备及数据处理方法 |
CN104424033B (zh) * | 2013-09-02 | 2018-10-12 | 联想(北京)有限公司 | 一种电子设备及数据处理方法 |
CN108268281A (zh) * | 2017-01-04 | 2018-07-10 | 中科创达软件股份有限公司 | 处理器协同方法及电路 |
CN108268281B (zh) * | 2017-01-04 | 2021-12-07 | 中科创达软件股份有限公司 | 处理器协同方法及电路 |
Also Published As
Publication number | Publication date |
---|---|
EP0280821A2 (en) | 1988-09-07 |
EP0280821A3 (en) | 1990-11-07 |
KR920004401B1 (ko) | 1992-06-04 |
AU8003687A (en) | 1988-08-25 |
KR880010364A (ko) | 1988-10-08 |
BR8800696A (pt) | 1988-10-04 |
CN1019152B (zh) | 1992-11-18 |
AU606083B2 (en) | 1991-01-31 |
JPS63208151A (ja) | 1988-08-29 |
CA1295749C (en) | 1992-02-11 |
MX160485A (es) | 1990-03-12 |
IN171198B (zh) | 1992-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1011356B (zh) | 用于数字数据处理器的总线接口电路 | |
CN1230759C (zh) | 进行最佳数据传送的多总线信息处理系统的总线-总线桥 | |
CN1229724C (zh) | 外部存储设备和数据处理方法 | |
CN1248118C (zh) | 以推测方式使高速缓存中的缓存行失效的方法及系统 | |
CN1277216C (zh) | 用于在共享存储器体系中可扩展的歧义消除的相干性的方法和设备 | |
US4597044A (en) | Apparatus and method for providing a composite descriptor in a data processing system | |
KR100274771B1 (ko) | Smp 버스의 공유 상태에서의 캐시 라인들의 공유 개입 방법 | |
CA1300280C (en) | Central processor unit for digital data processing system including write buffer management mechanism | |
CN1094526A (zh) | 用于在多条总线之间传送信息的系统和方法 | |
CN1238050A (zh) | 一种在具有多系统总线的计算机系统中保持存储器相关性的系统和方法 | |
CN88100953A (zh) | 用直接存取存贮器高速缓存器处理磁盘扇区误差的方法 | |
JPS61107434A (ja) | デ−タ処理装置 | |
CN101051286A (zh) | 存储系统 | |
CN88100762A (zh) | 可编程选件的选择 | |
CN1130639C (zh) | 多入口、全相联的传递高速缓冲存储器 | |
CN1243311C (zh) | 实现重叠操作的方法和系统 | |
CN1019152B (zh) | 数字数据处理系统中处理器与专用指令处理器间的接口 | |
CN1379879A (zh) | 并行计算机体系结构,使用这种体系结构的信息处理单元 | |
CN1504902A (zh) | 在存储器部件之间保持数据一致性的方法和系统 | |
CN1794213A (zh) | 直接存储器存取电路以及使用该电路的盘阵列设备 | |
CN1016653B (zh) | 数字数据处理系统用的总线适配器装置 | |
CN1504904A (zh) | 存储器克隆操作期间保护高速缓冲存储器线的方法和系统 | |
CN1350295A (zh) | 对盘阵列控制器执行基于驱动器的更新的方法和设备 | |
CN1020810C (zh) | 双微处理机控制系统 | |
CN116821026B (zh) | 一种arm架构下的lpc总线转并口方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C13 | Decision | ||
C14 | Grant of patent or utility model | ||
C17 | Cessation of patent right |