CN1037553C - 共用每个周期的动态总线仲裁与授权 - Google Patents

共用每个周期的动态总线仲裁与授权 Download PDF

Info

Publication number
CN1037553C
CN1037553C CN91105822A CN91105822A CN1037553C CN 1037553 C CN1037553 C CN 1037553C CN 91105822 A CN91105822 A CN 91105822A CN 91105822 A CN91105822 A CN 91105822A CN 1037553 C CN1037553 C CN 1037553C
Authority
CN
China
Prior art keywords
bus
arbitration
data
priority
external 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 - Fee Related
Application number
CN91105822A
Other languages
English (en)
Other versions
CN1060166A (zh
Inventor
乔治·B·马雷尼
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1060166A publication Critical patent/CN1060166A/zh
Application granted granted Critical
Publication of CN1037553C publication Critical patent/CN1037553C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/30Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal with priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system

Abstract

每个传送周期有至少两个非重叠时钟,并且每个仲裁周期有至少一个传送周期。仲裁优先级请求仅在第一时钟上升时从每个外部设备发送到仲裁总线上,在后一个时钟结束时,确定具有最高优先级的外部设备的优先级代码,以指定这个外部设备为总线主控器。在当时有效的总线主控器放弃控制权之后的下一个周期内通过非专用总线在指定的总线主控器与存储器或另一个外部设备之间传送地址和数据。外部设备的优先级可以动态改变。

Description

共用每个周期的动态总线仲裁与授权
此项发明涉及用以控制一存储器与若干外部设备(包括处理器)之间,或在外部设备之间通过非专用总线进行数据传送的装置,更具体地涉及用以通过消除无效仲裁周期和大组缓冲器并将全部带宽用于数据传送而更有效地对这些设备之间的优先级作出仲裁的装置。
1989年11月出的PS/2硬件接口技术资料的IBM微通道结构附录介绍了一种目前广泛应用的通道结构。在30-33页上,讨论了成组传送以及总线主控器之间的局部仲裁和占先。这种及其它目前用于直接存取(DMA)的通道总线仲裁的方法和装置需要用几个周期来对多个外部设备之间的优先级作出仲裁以确定优胜者。这就减少了用于数据传送的时间。
在以往提出的系统中,在这些仲裁周期内不允许授权总线控制。这些仲裁周期构成了降低带宽可利用性的额外消耗。为了减少这种额外消耗,一种现行但低效的解决办法是将数据传送按首尾相接的(即连续的、不间断的)周期分组。但不幸这又需要用大容量缓冲器及其控制电路那样的附加的硬件,其操作必须以可变间隔中断使之不致超越其它必须允许占先的优先级较高的DMA传送设备。为了避免总线被外部设备霸占,一向都建议用复杂的公平性算法,这更增加了逻辑复杂性,并且只是略微缓解症状而不能根本解决问题。
申请人所知的已有方法都未介绍这样的用最少的仲裁逻辑优化多个外部设备之间总线仲裁的装置:(1)消除大组缓冲器和无效仲裁周期、(2)允许数据传送以来自不同外部设备的多路复用连续顺序流形式进行、以及(3)同已有技术一样,允许各个外部设备的优先级动态改变。
提出了一种计算机总线管理装置,可消除等待仲裁周期和成组方式下的等待缓冲器。通过避免对以往所需数据流缓冲器和仲裁逻辑的需求简化了总线接口协议。外部设备事先知道何时总线访问将得到批准,允许进行更快的流水线操作。由于最高请求设备将总能按顺序获得总线主控权直到所有设备都得到服务,霸占和公平性问题也因不再需要长的成组传送而在优先级的基础上自动得到解决。
这些优点可以通过每个传送周期至少设两个非重叠时钟并且每个仲裁周期至少设一个传送周期来获得。来自每个外部设备的仲裁优先权请求仅在最初一个时钟上升时发送到仲裁总线。具有最高优先级的外部设备的优先级代码在最末一个时钟结束时确定。优先级代码可以是固定的或动态改变的。
实现此发明可以(a)用地址总线和双向数据总线;或(b)对于更快的流水线操作,用在半周期期间内供地址和数据多路复用的单向输出总线,而数据总线仅是单向输入的;或(c)用单一的非专用双向总线,而地址仅在一次长传送开始时发送一次并在随后的数据传送周期内顺序递增直至发送一新的非顺序地址。
图1为体现此发明的计算机总线管理装置的框图;
图2是为实现此发明与每个外部设备相联用以从单一源产生两个非重叠时钟周期的电路的示意图;
图3为表示由图2电路产生的非重叠时钟周期的时序图;
图4为仲裁电路的示意图。它在所述时钟周期最末一个结束时根据一固定优先级(此处示例性地假定为“5”(0101)授权给一总线主控器;
图5为可替代图4的一部分的示意图,给出了可在所述时钟周期最末一个结束时根据可动态设定的优先级授权给一总线主控器的电路;以及
图6为表示实现连续成组或流式读/写操作的总线请求、总线授权、地址、数据传送和互锁的流水线操作的时序图。
如图1所示,体现此发明的总线管理装置包括一中央处理单元(CPU)10,它可通过系统总线与主存储器11及若干外部设备如13、14等进行通信。这里所用的术语“外部设备”泛指其它CPU以及磁盘存储器、打印机等外围设备。振荡器15之类的信号源向每个外部设备提供方波信号。如图所示,振荡器15是与CPU分开的;但如果愿意,其信号发生功能也可由CPU来提供。
注意:根据此发明的一个特点,不需要总线控制器或DMA控制器。
如图2所示,每个外部设备13、14包括一对反相器20、21和一对缓冲驱动器22、23。当振荡器15变为正时。它使线24上的信号上升。这个信号直接加在“与”门上,并且还经反相器20、21反相而后再反相之后间接加在所述“与”门上,以实现时间延迟。时间延迟结束时,经“与”门25选通的信号被“或”门26反相,并使缓冲驱动器驱动时钟C1变正。同时,“或”门26的输出在27处同来自反相器20的多少延迟了的输出作“与”运算,使得“或”门28将信号反相并使缓冲驱动器驱动时钟C2变正。门25、26与27、28相同。
各个时钟C1和C2的正和负周期的时序在图3中给出。时钟C1和C2相位相差180°。但是,根据此发明的一个特点。由于经过反相器21延迟,时钟C1的周期长度略短于时钟C2的,以实现时钟周期不重叠。例如,假定振荡器15的周期长度为100毫微秒(ns),则由于从前沿起有2ns的延迟并在后沿加有1ns的延迟,正时钟C1的相长度为49ns。这使得负时钟C1有51ns的相长度。但是,由于从前沿起2ns的延迟并在后沿加有2ns的延迟,正时钟C2有稍长些的49.5ns的相长度,这使得负时钟C2有50.5ns的相长度。
虚线29、30、31(图2)是为诊断测试目的而设的连线,通常不起作用,这里只是为了完整才将其给出。线29上的负信号将抑制时钟C1,使得只有时钟C2起作用。类似地,线30上的负信号将抑制时钟C2,使得只有时钟C1起作用。线31上的正信号将调整反相“或”门26、28,使时钟C1和C2都持续保持为正。
根据此发明的另一特点。每个外部设备13、14都在周期早期的同一预定时刻一即最初时钟C1起始时一知道它何时将成为总线主控器。仲裁请求只能在时钟C1上升时在编码仲裁总线40(图示)上预以改变,此后将稳定不变以求在最末时钟C2下降时授权给一总线主控器。
现参照图4,线ARΦ、AR1、AR2、AR3和-Lock是与仲裁总线40连接的“或”点(OR dot)。任何希望对总线12进行访问的外部设备13、14将其读或写请求记录在由时钟C2设定的锁存器(未图示)中。这个请求通过由时钟C1定时的自己的总线请求极性保持锁存器41。锁存器41有一连至电路42的正输出。如果仲裁总线40上没有更高的优先级,ARΦ的电平为正,且“或”电路42起一个有负输出的反相器的作用。这个输出在43处被反相,并变成正的总线请求最高1。这个请求经反相驱动器44反相,将负的AR1电平加在仲裁总线40上。这个请求将随同总线请求最高3一起通过,并且请求设备13或14将成为总线主控器。
如果仲裁总线40上的其它设备使最高电平的ARΦ起作用,从总线到“或”反相电路42的ARΦ线上的信号将为负,结果得到来自电路42的正输出,后者阻塞曲线AR1和AR3上总线请求产生的任何输出。电路42的正输出还使“与”反相电路45阻塞任何请求通过到达仲裁总线40的AR3支路。
如图4所示,优先权定为5。因而,对于代码5,四位代码形式的自己的优先级就是在AR1和AR3上的比特,而AR3是最低位。
如果来自某个外部设备的AR2更高优先级激活,它将在46处被反相并将“与”反相电路45的输入处的极性改变为正。如果“与”反相电路45的这些输入任何一个为正。所述电路的输出将为负;并且在这种情况下,经过反相驱动器47,不会有负输出出现在AR3上。
如果没有来自任何其它外部设备的ARΦ或AR2优先权请求。“与”反相电路45的两个输入都将为负。于是电路45的输出将使总线请求最高3输出变为正。这个输出被反相驱动器47反相并作为AR3负有效输出出现。“与”反相电路45的输出(在这种情况下就是总线请求最高3)也就是其自己的优先级解码,并在时钟C2期间预先设置好自己的优先级极性保持锁存器48。锁存器48将根据时钟C2结束时的状态进行锁定。
根据此发明的一个特点,一旦自己的优先级锁存器48被锁定,它就能在下一个周期设定自己的总线授权极性保持锁存器49,以允许占用接着的一个周期。自己的优先级锁存器48的输出通过“与”门50、被“或”反相门51反相,并在时钟C1开始时被自己的总线授权锁存器49锁定。这就向特定的设备发出它就是那个周期的总线主控器的信号。
在这个优先权确定过程之前曾是总线主控器的前一个设备可以延长其周期,尽管另一外部设备的自己的优先级锁存器(如48)已被锁定。这就推迟了下一个周期直到前一个主控器释放了总线12。这个延迟功能受“与”门50的第二输入亦即任何锁定极性保持锁存器52的输出的控制。锁存器52将一直被取自总线40上-Lock信号的前一个时钟C2锁定。
一旦延长的周期完结,亦即由前一个总线主控器在时钟C1时刻解除-Lock信号。如果当时没有收到争先现行仲裁优先权的更高的优先级请求的话,这将使自己的总线授权锁存器受时钟C2时释放的任何锁定锁存器52的控制而在下一个时钟C1时继续以流水线方式工作下去。
现假设有一装置因有一低速从属接收器或因其要执行某种成组方式而希望能占用相继的两个或更多个周期。该装置将通过“与”反相电路54在时钟2时锁定其自己的锁定极性保持锁存器。自己的延长请求必须在其出现在“与”反相电路54之前由时钟C1装入另一锁存器。“与”反相电路54通过反相驱动器55的输出既可将自己的锁定锁存器52置位又驱动仲裁总线40上的公共-Lock信号。只要自己的锁定锁存器53保持置位,其正输出将在“或”反相电路51处作“或”运算,以在若干周期内保持自己的总线授权锁存器49不变。再者,一旦延长的周期完结,自己的锁定锁存器53将被时钟C2复位,自己的总线授权锁存器49将被时钟C1复位。这使得-Lock信号消失。所有外部设备就都将可以继续后续的数据传输。
反相驱动器56、57因不参与优先权代码0101的生成而在内部不起作用并且它们的输出接地;但是它们仍对来自总线40的外部输入有响应。
对总线12上数据进行选通的流水化时序是通过在时钟C2时将自己的总线授权锁存器58的正输出装入自己的授权延迟锁存器58交在时钟C1时将锁存器58的输出装入自己的数据传输锁存器59。锁存器59的输出是对出入总线12的数据进行选通的时序信号。
图5给出可代替电路65(图4中虚线框内)的电路,使得优先级代码可以动态改变。可提供多达16个不同优先级的四位优先级代码在操作开始比如初始程序装入(IPL)时装入寄存器70。这个电路65包括四个反相驱动器71、72、73、74。这些驱动器为集电极开路或点驱动器。它们设置分别由“与”门75、76、77、78驱动的仲裁位ARΦ、AR1、AR2、AR3。这些“与”门通过实际上为单独电路的两个复合逻辑门79、80来确定最高优先级。
门79包含两个“与”门81、82和一个三端“或”反相门83。“或”反相门83阻塞所有较低请求线AR1、AR2和AR3。门85还阻断自己的优先级电路84,如果某个较高优先级在仲裁总线40上从外部起作用的话。如果ARΦ起作用而寄存器70的极性保持锁存器PRΦ输出不起作用,“与”门81将通过“或”反相电路83阻塞AR1、AR2、AR3及自己的优先级信号。
类似地,以“与”门82,如果AR1起作用而极性保持锁存器PR1不起作用,那末AR1、AR2、AR3及自己的优先级信号都将被阻塞;据此,仲裁过程将排除该设备接着得到服务的可能。
反相门83的最末一个输入就是由时钟C1置位并请求一个仲裁周期用于数据传输的总线请求极性保持锁存器(未图示)的输出。十总线请求极性保持锁存器线如果不起作用就将为负。这就自动阻塞了所有块76、77、78和84。当“与”反相电路84的输出为正。就标志着这是赢得仲裁并在后面若干周期内可开始进行传输的当前最优先级装置。
复合逻辑门80包含“与”门85和86,除了所处理的是两个较低仲裁总线位AR2和AR3之外,它们的操作与门81和82类似。而且,“或”反相电路87对较低的两位具有与电路83相同的作用;但它并不需要与十总线请求极性保持锁存器(未图示)连接,因为输出已由电路83来控制,后者的输出已接至所有的门76、77、78、84。因此“或”反相电路87的输出只控制仲裁总线40的AR3线上的最低有效位还有其自己的优先级门84以实现锁存。
仲裁总线40的ARΦ线上的最高有效位就是最高位。任何驱动这位的设备将自动拥有最高优先级。如果寄存器70内由微处理器设定的优先级表明某个特定设备拥有优先级ARΦ或更高有效位。则其它也由时钟C1置位的一总线请求极性保持锁存器(未图示)将自动驱动仲裁总线40的ARΦ线。在这种情况下,这位将总是有效而不必被阻塞。
图6为一时序图,说明采用参数由技术决定的自激振荡器15(图1)的各种流水线操作。现有技术采用100毫微秒的周期。将来的技术已打算采用50毫微秒。总线请求总是可在时钟C1开始即振荡周期前半时改变。总线请求维持到下一个时钟C1。总线授权也由时钟C1设定;但它跟在总线请求周期之后,因而总是迟一个周期进行流水线操作。
图6表示具有从最高A到最低H的不同优先级的若干设备。图6还表示了这些优先级如何形成相继的周期,即可是成组的也可是因低速非流化从属设备而延迟了的,使得从属设备可以在它们各个的时序内接收数据。这里所用的“从属设备”是泛指总线主控设备希望与之通信的任何设备。
每当有一个设备赢得了总线12,它将在内部锁定其自己的总线授权锁存器(如图4中的49)。这个锁存器控制赢得仲裁的装置的现行周期。这时,该装置占有这个周期用以同从属设备进行通信。它在自己的总线授权周期内将地址发送到总线12上,这还在+读/-写信号上表明它是否要进行读或写操作。如果总线主控器希望以成组方式工作,-Lock信号也将被激活,即在次最高优先级设备加入之前将其它设备封锁不长的一组周期。如果已进行了一次数据传输并且接着从属设备发现其自己的地址再次出现,它可能希望延长其接收或发送数据所需的时间。它可以通过用类似于总线主控器所用(图4所示的逻辑电路设置-Lock信号来增加一个或更多个基本总线周期做到这一点。来自每个设备的应答线告知它已在总线12上发送或接收了数据。-Lock信号也可以是在下一个周期来自从属设备的应答,表示它不能占用任何后续周期。
如图6所示,总线请后后面跟着总线授权以及由总线主控器执行的寻址。并且读或写操作作为流水线操作的第三步进行。
图6给出在不同操作方式下各个主控器A-H向从属设备P-W写入或从其中读出。
如图示,此发明是用一地址总线和一双向数据总线来实现的。但是,为了更高速的流水线操作,此发明可以用一条在半周期期间供地址和数据复用的单向输出总线来实现。而数据总线可以仅是一条输入单向数据总线。
或者,如果愿意,此发明可以用一条单一的非专用双向总线来实现。在这种情况下,地址将仅在一次长串传送开始时发送一次,并且地址将顺序递增,除非发送了一个新的非顺序地址。更具体地,在长串传送开始时,该设备将占用一组两个周期,在第一个周期发送地址而在第二及后续的周期发送数据。在这种情况下图6可以修改,删去地址总线,而仲裁总线就成了多路复用的外部设备的间接地址指针。
尽管已针对其各优选实施例对此发明作了描述,精通本领域的人都能理解:可以对这些实施例作形式上或细节上的改动而并不背离此发明的范围和教导。因此,此处介绍的装置和方法可以被认为仅是示例性的,并且此发明仅由权利要求中说明的范围所界定。

Claims (17)

1.一种不需要数据等待缓冲器的、在连接存储器与多个外部设备的一条非专用总线上的直接存储器存取数据传递期间对总线仲裁进行优化的装置,其特征为:
连接到每一外部设备的单条仲裁总线;
连接到所述非专用总线的时钟发生装置,用于在每个时钟周期提供两个非重叠时钟信号的相继序列,并且数据传送周期等于一个相应的设备确认数据传送完成所需的数个时钟周期,而仲裁周期等于预选数目的时钟周期;
有效地连接于所述时钟发生装置和仲裁总线的装置,负责在一个序列中仅在第一个所述时钟信号的开始沿由每个外部设备向仲裁总线发送仲裁优先级总线请求;
有效地连接到所述时钟发生装置和每个设置的装置,负责在那个相同的所述序列中仲裁周期的最后一个所述时钟信号的结束沿动态地调整具有最高总线优先级的外部设备,将其本身指定为即将成为总线主控器的下一个外部设备;以及
有效地连接到所述时钟发生装置和非专用总线的、包括第一锁存装置的传送装置,在当时有效的总线主控器放弃控制权之后的下一周期开始为了在所述被指定的总线主控器与所述存储器或与其它外部设备之间通过该非专用总线进行单个数据传送或可变成组长度数据传送,负责在所述的一个序列期间在一个周期的第一时钟信号的开始传送地址,和负责在紧随所述那个序列的下一周期期间在第一时钟信号的开始时候传送数据。
2.如权利要求1所述的装置,其特征为:有效地连接到仲裁总线的寄存器,用于存储至少为一个外部设备指定优选级的优先级代码,和通过非专用总线连接到所述寄存器的微处理器,用于动态地修改所述优先级代码以改变所述优先级。
3.如权利要求1所述的装置,其特征为:连接到仲裁总线的电路,用于预先选择和固定可建立各个外部设备的优先级的优先级代码。
4.如权利要求1所述的装置,其特征为:连接以驱动仲裁总线的并在所述那个序列中由第一时钟信号的所述开始沿设置的装置;和连接到仲裁总线的另一锁存装置,用于接收仲裁优先级并在所述那个序列中由所述最后一个时钟信号的所述结束沿来设置以使所有总线主控优先权请求同步。
5.如权利要求1所述的装置,其特征为:有效地连接到仲裁总线和时钟发生装置的装置,负责来自于由所述第一时钟周期开始所启动的设备的总线请求,以在所述单个仲裁总线上确定所述仲裁周期流水线的第一层,和负责在所述最后时钟周期结束时将优先级总线赋予一个设备,以分两层的重叠方式确定所述仲裁周期流水线的第二层,从而并不因为仲裁而损耗地址和数据传送周期,以及与非专用总线相连的装置,用于在所述非专用总线上对地址和数据传送进行流水线处理,达到第三层流水线。
6.如权利要求1所述的装置,其特征在于:所述传送装置负责在一时刻来自一个外部设备的成组传送命令,以产生按首尾相接方式传送数据的信号,这样在不降低数据传送带宽情况下,在某一时刻在非专用总线上从不同外部设备以多路复用连续顺序流形式传送数据。
7.如权利要求1所述的装置,其特征为:包括两个锁存器,与所述的第一锁存装置是分开的,有效地连接于所述时钟发生装置和仲裁总线,并负责在所述一个序列中由所述第一时钟信号设置这些锁存器中的一个并在紧接所述那个序列之前的序列中由所述最后一个时钟信号设置这些锁存器的中的其它锁存器,以使当时有效的总线主控器能在一个附加传送周期或数个附加传送周期保持和一个外部设备进行通信。
8.如权利要求1所述的装置,特征为:与外部设备和时钟发生装置相连的装置,在以下情况下剥夺已按顺序被指定为下一个总线主控器的外部设备:
(a)当时有效的总线主控器已经通过启动一锁定期在多于一个传送周期里保持总线主控关系,和
(b)在所述锁定期内一更高优先级设备获得仲裁优先级。
9.如权利要求1所述的装置,其特征在于:非专用总线包括一条单向总线,用于在半周期期间多路复用地输出地址和数据,和一条单向输入的数据总线。
10.如权利要求1所述的装置,其特征在于:非专用总线是用于地址和数据的单一双向总线,并且包括有效地连接于所述时钟发生装置和非专用总线的装置,以仅在一次长传送的开始时刻发送地址,而在其后的数据传送周期内,只要地址构成一连续的序列就依次地将地址递增。
11.一种在存储器和每个都具有仲裁优先级的多个外部设备之间或在外部设备之间通过非专用总线的直接存储器访问数据传送期间,优化总线仲裁传送的方法,其特征在于步骤:
在每个时钟周期提供两个非重叠时钟信号的相继序列;并且数据传送周期等于一个相应的外部设备确认数据传送完成所需的数个时钟周期,而仲裁周期等于预选数目的时钟周期;
仅在一个所述序列中第一所述时钟信号的开始沿为外部设备向单一仲裁总线发送仲裁优先级总线请求;
在所述那个序列的最后一个所述时钟信号的结束,动态地调整当时具有最高总线优先级代码的外部设备,以自动地将其本身指定为即将成为总线主控器的下一外部设备,从而构成将优先级总线赋予所述下一外部设备;
连续地重复进行仲裁传递直到当时有效的总线主控器放弃对非专用总线的控制,以使任何具有更高优先级的设备争先于一个当时现行的指定为优先的设备;和
在所述当时有效的总线主控器放弃控制权之后的下一周期期间通过非专用总线在被指定的总线主控器和存储器或另一外部设备之间传送地址和数据。
12.如权利要求11的方法,其特征在于步骤:使用一微处理器,在程序的初始化期间动态地改变至少一个外部设备的优先级。
13.如权利要求11的方法,其特征在于:在传送地址和数据步骤期间,在非专用总线上由不同外部设备以多路复用连续顺序流方式来传送数据,且没有序列延迟。
14.如权利要求11的方法,其特征在于:在所述单一仲裁总线上独立于数据传送将所述仲裁周期的总线请求和总线赋予同时流水线化的步骤,从而消除仲裁开销。
15.如权利要求11的方法,其特征在于:允许当时的总线主控器希望与之进行通信的那个外部设备通过将两个非重叠时钟信号的周期长度递增来延长传送周期以为慢速的外部设备增加时间从而完成一个数据传送。
16.如权利要求11的方法,其特征在于步骤:在以下情况下自动剥夺按顺序被指定为下一个总线主控器的设备:
(a)当时有效的总线主控器通过启动一锁定期在多于一个传送周期里保持总线主控关系;
(b)在所述锁定周期中一个较高优先级的设备获得仲裁。
17.如权利要求11的方法,其特征在于:在传送地址和数据步骤中,数据的传送并不需要预先知道完成数据传送序列所需的数据传送周期数。
CN91105822A 1990-09-21 1991-08-21 共用每个周期的动态总线仲裁与授权 Expired - Fee Related CN1037553C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US58634990A 1990-09-21 1990-09-21
US07/586,349 1990-09-21

Publications (2)

Publication Number Publication Date
CN1060166A CN1060166A (zh) 1992-04-08
CN1037553C true CN1037553C (zh) 1998-02-25

Family

ID=24345380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN91105822A Expired - Fee Related CN1037553C (zh) 1990-09-21 1991-08-21 共用每个周期的动态总线仲裁与授权

Country Status (18)

Country Link
US (1) US5195185A (zh)
EP (1) EP0476990B1 (zh)
JP (1) JPH0810445B2 (zh)
KR (1) KR950014505B1 (zh)
CN (1) CN1037553C (zh)
AU (1) AU639589B2 (zh)
BR (1) BR9103929A (zh)
CA (1) CA2050129C (zh)
CZ (1) CZ282214B6 (zh)
DE (1) DE69132344T2 (zh)
FI (1) FI914429A (zh)
HU (1) HU215867B (zh)
MX (1) MX173460B (zh)
NO (1) NO913707L (zh)
PL (1) PL167608B1 (zh)
PT (1) PT99006A (zh)
RU (1) RU2110838C1 (zh)
SG (1) SG42853A1 (zh)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5559962A (en) * 1989-10-09 1996-09-24 Yamaha Corporation Data transmission system selecting both source and destination using addressing mechanism
US5461723A (en) * 1990-04-05 1995-10-24 Mit Technology Corp. Dual channel data block transfer bus
FR2675286B1 (fr) * 1991-04-15 1993-06-18 Bull Sa Circuit integre arbitreur de bus mca et utilisations d'un tel circuit.
US5454082A (en) * 1991-09-18 1995-09-26 Ncr Corporation System for preventing an unselected controller from transferring data via a first bus while concurrently permitting it to transfer data via a second bus
JPH05165762A (ja) * 1991-12-13 1993-07-02 Toshiba Corp Dmaコントローラ
EP0559408B1 (en) * 1992-03-04 1998-08-26 Motorola, Inc. A method and apparatus for performing bus arbitration using an arbiter in a data processing system
DE69319763T2 (de) * 1992-03-04 1999-03-11 Motorola Inc Verfahren und Gerät zur Durchführung eines Busarbitrierungsprotokolls in einem Datenverarbeitungssystem
US5341480A (en) * 1992-04-09 1994-08-23 Apple Computer, Inc. Method and apparatus for providing a two conductor serial bus
JPH05342178A (ja) * 1992-06-10 1993-12-24 Hitachi Ltd 調停回路およびそれを用いたデータ処理装置
US5313591A (en) * 1992-06-25 1994-05-17 Hewlett-Packard Company Computer bus arbitration for N processors requiring only N unidirectional signal leads
US5596749A (en) * 1992-09-21 1997-01-21 Texas Instruments Incorporated Arbitration request sequencer
US5535395A (en) * 1992-10-02 1996-07-09 Compaq Computer Corporation Prioritization of microprocessors in multiprocessor computer systems
US5553310A (en) * 1992-10-02 1996-09-03 Compaq Computer Corporation Split transactions and pipelined arbitration of microprocessors in multiprocessing computer systems
US5553248A (en) * 1992-10-02 1996-09-03 Compaq Computer Corporation System for awarding the highest priority to a microprocessor releasing a system bus after aborting a locked cycle upon detecting a locked retry signal
US5299196A (en) * 1992-11-12 1994-03-29 International Business Machines Corporation Distributed address decoding for bus structures
JPH06282528A (ja) * 1993-01-29 1994-10-07 Internatl Business Mach Corp <Ibm> データ転送方法及びそのシステム
US5546548A (en) * 1993-03-31 1996-08-13 Intel Corporation Arbiter and arbitration process for a dynamic and flexible prioritization
EP0619547A1 (en) * 1993-04-05 1994-10-12 Motorola, Inc. A method of requesting data and apparatus therefor
CA2115731C (en) * 1993-05-17 2000-01-25 Mikiel Loyal Larson Dynamically programmable bus arbiter with provisions for historical feedback and error detection and correction
US5517671A (en) * 1993-07-30 1996-05-14 Dell Usa, L.P. System for designating a plurality of I/O devices to a plurality of I/O channels and connecting and buffering the plurality of I/O channels to a single system bus
US5600839A (en) * 1993-10-01 1997-02-04 Advanced Micro Devices, Inc. System and method for controlling assertion of a peripheral bus clock signal through a slave device
US6163848A (en) * 1993-09-22 2000-12-19 Advanced Micro Devices, Inc. System and method for re-starting a peripheral bus clock signal and requesting mastership of a peripheral bus
US5524215A (en) * 1993-10-05 1996-06-04 Motorola, Inc. Bus protocol and method for controlling a data processor
EP0654743A1 (en) * 1993-11-19 1995-05-24 International Business Machines Corporation Computer system having a DSP local bus
US5519838A (en) * 1994-02-24 1996-05-21 Hewlett-Packard Company Fast pipelined distributed arbitration scheme
US6026455A (en) * 1994-02-24 2000-02-15 Intel Corporation Architecture and method for providing guaranteed access for a retrying bus master to a data transfer bridge connecting two buses in a computer system
US5533205A (en) * 1994-03-30 1996-07-02 International Business Machines Corporation Method and system for efficient bus allocation in a multimedia computer system
US5572687A (en) * 1994-04-22 1996-11-05 The University Of British Columbia Method and apparatus for priority arbitration among devices in a computer system
US5526496A (en) * 1994-04-22 1996-06-11 The University Of British Columbia Method and apparatus for priority arbitration among devices in a computer system
US6256694B1 (en) * 1994-06-30 2001-07-03 Compaq Computer Corporation Distributed early arbitration
US5758106A (en) * 1994-06-30 1998-05-26 Digital Equipment Corporation Arbitration unit which requests control of the system bus prior to determining whether such control is required
US5568614A (en) * 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5598542A (en) * 1994-08-08 1997-01-28 International Business Machines Corporation Method and apparatus for bus arbitration in a multiple bus information handling system using time slot assignment values
US5634060A (en) * 1994-08-09 1997-05-27 Unisys Corporation Method and apparatus for high-speed efficient bi-directional communication between multiple processor over a common bus
US5559969A (en) * 1994-08-09 1996-09-24 Unisys Corporation Method and apparatus for efficiently interfacing variable width data streams to a fixed width memory
US6434638B1 (en) 1994-12-09 2002-08-13 International Business Machines Corporation Arbitration protocol for peer-to-peer communication in synchronous systems
KR0155269B1 (ko) * 1995-01-16 1998-11-16 김광호 버스 중재방법 및 그 장치
JP3320233B2 (ja) * 1995-02-06 2002-09-03 キヤノン株式会社 記録装置
US5701313A (en) * 1995-02-24 1997-12-23 Unisys Corporation Method and apparatus for removing soft errors from a memory
US5511164A (en) 1995-03-01 1996-04-23 Unisys Corporation Method and apparatus for determining the source and nature of an error within a computer system
US5740383A (en) * 1995-12-22 1998-04-14 Cirrus Logic, Inc. Dynamic arbitration priority
KR100201325B1 (ko) * 1996-03-30 1999-06-15 유기범 다중 프로세서 시스템에서 시스템 버스의 클럭속도를 향상시키는 방법
US5842025A (en) * 1996-08-27 1998-11-24 Mmc Networks, Inc. Arbitration methods and apparatus
US5822766A (en) * 1997-01-09 1998-10-13 Unisys Corporation Main memory interface for high speed data transfer
US5970253A (en) * 1997-01-09 1999-10-19 Unisys Corporation Priority logic for selecting and stacking data
US5859986A (en) * 1997-02-20 1999-01-12 International Business Machines Corporation Bandwidth efficient method and means for resynchronizing a master and slave over a clocked, arbitrated, bidirectional multistate parallel bus using local data recirculation, wait states, and cycle stealing
US5862353A (en) * 1997-03-25 1999-01-19 International Business Machines Corporation Systems and methods for dynamically controlling a bus
US5996037A (en) * 1997-06-03 1999-11-30 Lsi Logic Corporation System and method for arbitrating multi-function access to a system bus
US6006303A (en) * 1997-08-28 1999-12-21 Oki Electric Industry Co., Inc. Priority encoding and decoding for memory architecture
JP4019333B2 (ja) * 1998-02-13 2007-12-12 富士通株式会社 ヘッドic回路及び記録装置
US6047336A (en) * 1998-03-16 2000-04-04 International Business Machines Corporation Speculative direct memory access transfer between slave devices and memory
US6182112B1 (en) 1998-06-12 2001-01-30 Unisys Corporation Method of and apparatus for bandwidth control of transfers via a bi-directional interface
US6199135B1 (en) 1998-06-12 2001-03-06 Unisys Corporation Source synchronous transfer scheme for a high speed memory interface
US6330646B1 (en) * 1999-01-08 2001-12-11 Intel Corporation Arbitration mechanism for a computer system having a unified memory architecture
US6519666B1 (en) 1999-10-05 2003-02-11 International Business Machines Corporation Arbitration scheme for optimal performance
US8834864B2 (en) * 2003-06-05 2014-09-16 Baxter International Inc. Methods for repairing and regenerating human dura mater
KR101034493B1 (ko) * 2004-01-09 2011-05-17 삼성전자주식회사 화상 변환 장치, 화상 변환을 위한 직접 메모리 액세스장치 및 화상 변환을 지원하는 카메라 인터페이스
JP2006155387A (ja) * 2004-11-30 2006-06-15 Yamaha Corp コンピュータシステム
WO2008002297A1 (en) * 2006-06-27 2008-01-03 Thomson Licensing Method and apparatus for performing arbitration
GB2473505B (en) * 2009-09-15 2016-09-14 Advanced Risc Mach Ltd A data processing apparatus and a method for setting priority levels for transactions
US8713277B2 (en) * 2010-06-01 2014-04-29 Apple Inc. Critical word forwarding with adaptive prediction
CN111478840A (zh) * 2020-04-15 2020-07-31 联合华芯电子有限公司 用于总线系统的双速率仲裁中继设备
CN113821470A (zh) * 2020-06-19 2021-12-21 平头哥(上海)半导体技术有限公司 总线设备、嵌入式系统和片上系统
RU2749911C1 (ru) * 2020-12-25 2021-06-21 Акционерное Общество "Крафтвэй Корпорэйшн Плс" Аппаратная реализация механизма использования одной памяти несколькими устройствами

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0340347A2 (en) * 1983-09-22 1989-11-08 Digital Equipment Corporation Bus arbitration system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4481580A (en) * 1979-11-19 1984-11-06 Sperry Corporation Distributed data transfer control for parallel processor architectures
US4453211A (en) * 1981-04-28 1984-06-05 Formation, Inc. System bus for an emulated multichannel system
US4967344A (en) * 1985-03-26 1990-10-30 Codex Corporation Interconnection network for multiple processors
US4837677A (en) * 1985-06-14 1989-06-06 International Business Machines Corporation Multiple port service expansion adapter for a communications controller
US4924427A (en) * 1985-11-15 1990-05-08 Unisys Corporation Direct memory access controller with direct memory to memory transfers
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
JPS6366654A (ja) * 1986-09-08 1988-03-25 Matsushita Electric Ind Co Ltd 同期型バス
US4947368A (en) * 1987-05-01 1990-08-07 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
EP0321628B1 (en) * 1987-12-23 1992-11-04 International Business Machines Corporation Shared memory interface for a data processing system
US5001625A (en) * 1988-03-24 1991-03-19 Gould Inc. Bus structure for overlapped data transfer
US5016162A (en) * 1988-03-30 1991-05-14 Data General Corp. Contention revolution in a digital computer system
US4987529A (en) * 1988-08-11 1991-01-22 Ast Research, Inc. Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters
US5006982A (en) * 1988-10-21 1991-04-09 Siemens Ak. Method of increasing the bandwidth of a packet bus by reordering reply packets

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0340347A2 (en) * 1983-09-22 1989-11-08 Digital Equipment Corporation Bus arbitration system

Also Published As

Publication number Publication date
HU215867B (hu) 1999-03-29
AU639589B2 (en) 1993-07-29
KR950014505B1 (ko) 1995-12-02
MX173460B (es) 1994-03-04
EP0476990A2 (en) 1992-03-25
DE69132344T2 (de) 2001-02-15
CA2050129C (en) 1996-05-14
PL167608B1 (pl) 1995-09-30
DE69132344D1 (de) 2000-09-07
FI914429A (fi) 1992-03-22
SG42853A1 (en) 1997-10-17
AU8261291A (en) 1992-03-26
US5195185A (en) 1993-03-16
EP0476990B1 (en) 2000-08-02
FI914429A0 (fi) 1991-09-20
CA2050129A1 (en) 1992-03-22
BR9103929A (pt) 1992-05-26
EP0476990A3 (en) 1993-08-04
HU913024D0 (en) 1992-01-28
HUT58931A (en) 1992-03-30
RU2110838C1 (ru) 1998-05-10
CS287491A3 (en) 1992-04-15
NO913707L (no) 1992-03-23
PL291778A1 (en) 1992-06-01
JPH0810445B2 (ja) 1996-01-31
CZ282214B6 (cs) 1997-06-11
NO913707D0 (no) 1991-09-20
CN1060166A (zh) 1992-04-08
PT99006A (pt) 1993-10-29
KR920006858A (ko) 1992-04-28
JPH04246758A (ja) 1992-09-02

Similar Documents

Publication Publication Date Title
CN1037553C (zh) 共用每个周期的动态总线仲裁与授权
EP0587865B1 (en) Sharing of bus access among multiple state machines with minimal wait time and prioritization of like cycle types
CN1207670C (zh) 具有重叠读写操作和可伸缩地址流水线化的数据传送系统
EP0318221B1 (en) Controlling responding by users of an intercommunications bus
US7305510B2 (en) Multiple master buses and slave buses transmitting simultaneously
US5745708A (en) Method for and apparatus for operating a local communications module in arbitrating for mastership of a data transfer across a back plane bus in industrial automation controller
US4099231A (en) Memory control system for transferring selected words in a multiple memory word exchange during one memory cycle
US5469548A (en) Disk array controller having internal protocol for sending address/transfer count information during first/second load cycles and transferring data after receiving an acknowldgement
US6314484B1 (en) Computer system with a bus having a segmented structure
US4774422A (en) High speed low pin count bus interface
EP0170021B1 (en) Data processing system with a plurality of processors accessing a common bus to interleaved storage
EP0450233A2 (en) Bus access for digital computer system
US20080294879A1 (en) Asynchronous Ripple Pipeline
US4837785A (en) Data transfer system and method of operation thereof
US5859986A (en) Bandwidth efficient method and means for resynchronizing a master and slave over a clocked, arbitrated, bidirectional multistate parallel bus using local data recirculation, wait states, and cycle stealing
CN1806234A (zh) 带有多路复用存储器的数据处理电路
US5455912A (en) High speed/low overhead bus arbitration apparatus and method for arbitrating a system bus
JPH02500549A (ja) ピン数の少ない高性能バスインターフェイス
US5815674A (en) Method and system for interfacing a plurality of bus requesters with a computer bus
US5822766A (en) Main memory interface for high speed data transfer
JPH0218639A (ja) モジュール式メモリ
JPH06168202A (ja) バスウェイト装置
KR0142289B1 (ko) 다중 프로세스 시스템에 있어서 시스템버스 전송제어장치
GB2324230A (en) Symmetric arbitration protocol with priority override
CN1309360A (zh) 控制芯片组之间具有插队功能的总线仲裁方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C15 Extension of patent right duration from 15 to 20 years for appl. with date before 31.12.1992 and still valid on 11.12.2001 (patent law change 1993)
OR01 Other related matters
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 19980225

Termination date: 20100821