本申请与下列专利申请有关。所有这些申请都和本申请在同一天在美国专利和商标局申请过。 “在数据处理系统主存贮器单元中,提供分布控制的设备和方法”美国专利申请No._申请日_,由Paul J·Natusch;Eugene L·Yu;David C·Senerchia;和Beverly A·Henry作为John F·Henry,Jr:Deceased的地产女管理员提交的。
“主存贮器单元内,连续系统时标半导体矩阵寻址的设备和方法”美国专利申请No._申请日_,由Paul J·Natusch;David C·Senerchia,和Beverly A·Henry作为Joho F·Henry,Jr·Deceased的地产女管理员提交的。
“数据处理系统中使用附加系统总线的设备和方法”美国专利申请No._申请日_,由Paul J·Natusch,David C·Senerchia和Beverly A·Henry作为John F·Henry,Jr·Deceased的地产女管理员提交的。
1.发明的领域
一般来说,本发明是有关数据处理系统的,具体地说,涉及数据处理系统中,总线上的数据处理子系统间的逻辑信号的交换。当交换逻辑信号初予置,而接收方的数据处理子系统不能使用逻辑信号时,就出现本发明的访问问题。
2.有关现有技术的描述
图1所示是一个典型的数据处理系统,该系统至少有一个中央处理单元10(或11),有至少一个输入/输出单元13(或14),一个主存贮器单元15,和连有许多单元或数据处理子系统的系统总线19。中央处理单元根据软件和/或硬件指令处理各逻辑信号组,要处理的逻辑信号组以及当时执行地程序典型地存贮在存贮器单元15中。控制单元12可连到中央处理单元上,并含有起动系统的设备和存贮指令,它在数据处理系统的操作过程中,可以作为一个终端。各输入/输出单元在数据处理系统和终端之间,大容量存贮单元间,和通讯单元之间及任何要连接到数据处理系统的其他单元之间作为接口。
然而,当一个子系统被允许访问系统总线时可能出现一个问题,即执行信号交换的适当动作虽被启动,但这个信号交换因接收单元的原因而不能成功地进行。当主存贮器占线,因而加到它上面的信号,由于主存贮器占线而不能处理时,上述情况就可能出现。存贮器单元可以借助存贮器子系统通过应答许可信号或应答占线信号返回一个信号,说明逻辑信号能或不能被处理。然而到第一个子系统能够再次试图访问主存贮器子系统时,仲裁单元可能已经把访问分配给其他子系统,这些子系统可能已启动主存贮器的动作,使得第一子系统再次接收到一个主存贮器占线信号(根据对第一子系统请求的再仲裁发出)。这样,可能出现这样一种情况,其中一个有较低优先权的子系统,可能阻止有较高优先权的子系统访问数据处理系统,如访问主存贮器子系统。
一种解决子系统不能访问主存贮器子系统问题的可能办法,是把对系统总线访问的仲裁推迟到信号交换发生以后,在这个解决方法中,下一个紧接着的仲裁被推迟一个预定的时间,以保证被传送信号的处理已经进行,或请求子系统已能再次请求访问总线。这个解决办法使子系统间在信号组交换中产生不受欢迎的延迟。
为此感到需要有一种能在具有系统总线的数据处理子系统间相互作用的设备和方法,它能根据请求访问的子系统的优先权,安排访问系统总线,同时防止不合适的数据处理子系统垄断系统总线。
本发明的目的是要提供一个改进的数据处理系统。
本发明的进一步的目的是要提供一个能在数据处理子系统间,保证中断的信号交换,阻止不合适的子系统访问系统总线的数据处理系统。
本发明的一个具体的目标是要提供一种能为发信号的数据处理子系统判别和传达目标子系统当时不能处理系统总线信号的设备。
本发明的另一个具体目标是要提供一个存贮器子系统,它带有一个当存贮器子系统不能处理加到系统总线上的信号时,发出存贮器占线信号的设备。
本发明还有另外一个目的是要提供一种同存贮器子系统配合的设备,它能根据决定使存贮器子系统不再处理进来的数据信号组,并把存贮器占线信号加到其余的各子系统和控制访问系统总线的单元中。
本发明还有另一个具体的目标是要在对访问系统总线作再仲裁前,把确定访问数据处理系统总线的优先权状态恢复到传送的逻辑信号中断之前的优先权状态。
上述的和其他的目的根据本发明,是通过给目标数据子系统提供一个设备,当目标子系统不能,至少暂时不能处理更多的信号组时,用该设备发出占线信号来实现的。该占线信号被加到其他的子系统作为状态信号,还加到总线仲裁单元上,该单元控制访问系统总线,防止对系统总线再访问,至少对占线子系统这样,直到占线信号撤除。只要造成占线信号的条件存在,占线信号就被加到仲裁单元上,至少保持一段时间使具有中断信号组传送的子系统足以再次提出访问请求。按照本发明的另一个实施方案,在访问系统总线的决定作出后,仲裁单元给出由系统总线访问分配中产生的新的优先权参量。将占线信号加到仲裁单元和其他数据处理子系统上,对其他数据处理子系统来说,存贮器占线信号和命令信号同时加到系统总线上,中断命令规定的事务处理。对仲裁单元来说,占线信号将搁置任何再访问系统总线的要求,除非由存贮器单元把仲裁状态返回到任何中断命令以前的状态。当占线信号被撤除后,仲裁单元才重新决定应接受哪个请求子系统的访问,但重新决定是使用决定初始访问时的有效优先权参量作出的。本发明对存贮器子系统还有特殊的应用,在其中子系统还可以处理由前一个逻辑信号传送产生的结果。在这个例子中,主存贮器子系统发出一个存贮器占线信号,并且由仲裁单元重新确定对系统总线的访问。
本发明的这些特征和其他特征,在阅读下述有附图的说明书后就会了解。
下面是对图的简要说明
图1是能够使用本发明的数据处理系统的组件方框图。
图2是带有称作仲裁单元的数据处理系统的方框图,其中仲裁单元能够决定下一个对系统总线作访问的数据处理子系统。
图3是仲裁单元的元件方框图。
图4是时间图,说明一个子系统如何请求访问系统总线,及不被允许时,多次试图访问的情况。
图5是时间图,表示发明在消除数据处理子系统不能访问系统总线问题时,系统总线上的信号情况。
图6是仲裁单元的方框图,其中包括执行本发明的装置。
下面将对最佳实施方案作详细描述。
1.图的详细说明,
图1,在前面涉及的有关现有技术中已作了描述。
图2,是数据处理系统和数据处理子系统,如图1表示和描述的部分已作了说明。此外,图中表明了仲裁单元20,用来控制逻辑信号组,把它加到系统总线上。仲裁单元可按下列方式操作,当任一子系统有请求时,该子系统必须把一组逻辑信号加到系统总线上,然后该请求逻辑信号被加到一个将数据处理子系统和仲裁单元20耦连的装置上。在最简单的情况下,数据处理子系统和仲裁单元20是通过导体连接的,被加上去的逻辑信号不仅表明存在访问系统总线的请求,还证实子系统请求访问,这种连接装置可以是系统总线的一部分,也可以不是系统总线。为防止个别子系统垄断系统总线,对各数据处理单元子系统,分配优先权参量,并将任何其他被认为是访问系统总线的重要因素考虑进去。仲裁单元20决定下一个访问系统总线的数据处理子系统,并把启动逻辑信号由耦连装置(典型的是导线)加到选定的子系统上,这个启动逻辑信号的存在,就是通知选定的数据处理子系统,可以把逻辑信号组加到系统总线上。选定的子系统可以把一个保持逻辑信号加到仲裁单元20上。保持逻辑信号用于下述情况,当选定的数据处理子系统必须把许多逻辑信号组,在相邻的周期内加到系统总线时,如与读出操作相反的写入操作,这时保持信号防止启动信号被从选定的数据处理子系统撤除,直到将有关的信号组加到系统总线所必要的系统时钟周期全通过为止。除了上述提到的信号外,逻辑信号传到的子系统,有一种设备去鉴别接收到的传送来的信号组,并返回一个应答信号,典型地是根据信号传送的状态决定向发送子系统发出一个应答许可信号或应答占线信号。
参见图3,示出了仲裁单元20的组成部件。至少要有一个请求信号加到仲裁单元20上,才表明有子系统请求访问系统总线。这些信求信号加到决定逻辑单元31上,另外优先权状态单元32来的信号也加到决定逻辑单元31上并控制其中的逻辑元件。当有许多请求信号被加到决定逻辑单元31上时,将以预先分配的优先权为基础选定启动信号。然而一旦子系统选定,分配给那个子系统的优先权就会改变。为了提供这种优先权的变化,启动信号和优先权状态信号都被加到更新逻辑单元33上,更新逻辑单元33把适当的信号加到优先权状态单元32的存贮器元件上,使得代表新的优先权状态的信号被施加到决定逻辑单元31上。在图3中,还显示了把子系统占线信号,即存贮器占线信号加到决定网络31上。这是本发明的一种工作方式,子系统占线信号能防止子系统“闭锁”,如下所述,此时优先权更新单元33不工作。
图4是子系统间相互作用操作的时间图。如图所示,子系统竞相访问系统总线,仲裁单元20在时钟周期T0期间,选择下一个访问系统总线的子系统。在系统时钟周期内,发出仲裁请求信号,并在同一系统周期内,把仲裁结果以启动信号的形式送往选定的子系统。在仲裁周期的终端,优先权参量会被更新,以说明选定的子系统对系统总线的访问是成功的。在下一个时间周期T1命令/地址信号被加到系统总线(当访问系统总线包括一个写入命令时,在周期T1期间,子系统1要求一个保持信号和命令/地址信号,并且仲裁单元维持启动信号。在下个周期T2期间,要存贮的数据信号组被加到系统总线上)在命令/地址周期后的第二个时间周期间即T3,接到地址命令的子系统发出一个应答允许信号,说明信号组的传送是成功的。相反,如果那个子系统发出一个应答占线信号,说明信号组的传送已中断。然后,到周期T4期间执行原来的操作为止,子系统不可能试图再次获得访问系统总线。然而,第二个子系统(图4)在插入的空档内,可能在T2周期间,获准访问系统总线,若取得成功的结果,在T5周期发出应答允许信号。这一动作,可能使第一子系统在T7周期内接收到一个应答占线信号。从另一个角度看,应答信号被延迟到这种程度,使请求访问系统总线的1号子系统,直到在后来的仲裁作出之后,都不能收到应答的中断信号。当1号子系统试图得以访问系统总线时,存贮器子系统可能再次占线,因为有可能通过2号子系统启动存贮器。
参见图5,该时间图说明了避免数据处理子系统不能通过系统总线访问存贮器子系统问题的方法。在执行请求子系统命令中,典型的问题在于目标子系统是主存贮器15,并且在访问期间,主存贮器可能占线。按照图4,对传送到主存贮器子系统15的信号处理是不成功的,它没有足够早地把信号送到仲裁单元20和请求子系统,以使子系统以适当的方式去响应。根据本发明,当存贮器的工作出现表明处理更多的信号暂时是不可能的条件时,存贮器占线信号被送到所有的子系统和仲裁单元20上。根据本发明的最佳实施方案,同存贮器子系统的相互作用不能中断,除非在命令/地址周期或第一数据信号组周期间出现存贮器占线信号。当存贮器占线信号在任一个这样的相互作用周期内发生时,那么发送子系统就要决定中断事务处理,结果发送子系统(具有中断事务处理的)就要重新请求访问系统总线。然而,加到决定逻辑单元31上的存贮器占线信号阻止对访问系统总线进行仲裁,直到存贮器占线信号撤除。这段时间对发送子系统(具有中断事务处理的)再置请求信号(典型地在两个时钟周期后)来说,是足够长的。
参见图6,按照本发明的另一种工作方式,对仲裁单元进行说明。决定逻辑单元31在子系统请求访问系统总线时,接受该子系统的请求信号。在特殊的例子中,使用存贮器子系统15交换逻辑信号。作为请求信号的结果,将由决定逻辑单元31中的逻辑门产生一个启动信号。单元31的逻辑门的操作是由优先权状态逻辑单元32来的信号控制的。由优先权状态单元32内的存贮单元决定的信号反映了分配给数据处理系统的子系统的当时优先权。如前一样,优先权更新逻辑单元33接受来自优先权状态单元32的表示当时分配的优先权状态的信号,并接收启动信号。然后,依据预定算法,产生新的优先权分配,并通过可控开关65,加到优先权状态单元32上。接收当时优先权状态的还有优先权状态贮存库64,该贮存库存贮优先权参量与状态并据此作出中断传送的仲裁决定,它的优先权状态也可以通过可控开关65加到优先权状态逻辑单元上。实际上,信号通过开关65加到优先权状态单元上,是由存贮器占线信号决定的。当加上存贮器占线信号,开关65就选接优先权状态贮存库单元64(当没有加入存贮器占线信号,下一个状态由优先权更新单元33决定)。在存贮器子系统发出一个存贮器占线信号(它表明逻辑信号传送已被中断)以后,接到访问系统总线的子系统,因在系统总线上传送数据未成功,能够以初始的总线仲裁时存在的同样优先权为条件,分享再次仲裁。
2.最佳实施方案的操作
在有关现有技术的数据处理系统中,数据处理子系统没有能力响应使用应答信号造成的中断,这种应答信号是在决定作出后,为便于下一个子系统访问而发出的。存贮器占线信号可防止因同时要完成两个功能而偶然封闭子系统。首先,仲裁单元阻止在存贮器占线周期内访问系统总线。第二存贮器占线信号让被存贮器占线信号中断的子系统有足够的时间,重置访问系统总线的请求。就子系统而论,存贮器占线信号和加到系统总线上的信号确立的上述关系决定事务处理何时中断。因此子系统可以再次对仲裁单元20加请求信号。存贮器占线周期的执行时间,保证了子系统会有机会被包括在下一个仲裁程序中。
如图3和图4所示,仲裁单元有更新子系统优先权状态的装置,其算法设在图3中的仲裁单元20中,它按下面假设操作,具有现时访问总线的数据处理子系统,在执行命令信号转移及执行前面仲裁过程中发出的命令信号所规定的功能方面是成功的。算法对允许访问系统总线的子系统,或许不能实现其请求功能的可能情况不进行编址。事实上,仲裁过程的时间是这样的,即仲裁单元在检测到应答占线信号之前就发出启动信号(信号向子系统表明仲裁程序允许该子系统访问总线)。因为,建立应答信号状态的条件不能在更前的时间决定。
本发明的第二个实施方案如图6所示,它考虑到了后一个接到的存贮器占线信号是由优先权状态贮存库单元64,为响应存贮器占线信号要求重置系统最后一个在前的优先权状态而提供的。
再参见图6,优先权状态单元贮存库64存贮被仲裁为不成功事务处理那点的系统优先权状态。根据存贮器占线信号的请求,贮存库单元64的内容被重新引入到优先权状态单元32中。这样,把优先权状态单元32恢复到它的不成功的事务处理之前的情况。这样,即使事务处理可能被中断的单元要求访问系统总线,其优先权状态将基本与不成功事务处理造成的仲裁时的情况相同。这样,当存贮器占线信号被重新确立时,再请求单元接到访问系统总线(信号)的优先权比其他在再请求单元较早仲裁时提出访问总线的单元的优先权要高。
很清楚,利用先前的优先权状态对访问系统总线再仲裁,不能保证先前成功的子系统在再仲裁时,将接到访问系统总线的(信号)。有较高优先权的子系统发出新的请求信号,可以在第一和第二总线仲裁周期之间,加到仲裁单元20上。
同样很清楚,请求访问系统总线的再仲裁技术,特别是与存贮单元有关的,都已描述过了。当中断的访问具有性能恶化,大到足以允许使用附加设备时,对访问数据处理系统的任一子系统的中断,万一要再仲裁,仍可使用本方法。
上面的描述说明了最佳实施方案的操作,但并不意味着对发明范围的限制,本发明的范围仅仅由下面的权利要求所限定。从上面的说明出发,许多变化对熟悉本领域的人将是显然的,它们将包括在本发明的要旨和范围内。