CN1013068B - 具有可编程序直接存贮器存取控制的计算机系统 - Google Patents
具有可编程序直接存贮器存取控制的计算机系统Info
- Publication number
- CN1013068B CN1013068B CN88100962A CN88100962A CN1013068B CN 1013068 B CN1013068 B CN 1013068B CN 88100962 A CN88100962 A CN 88100962A CN 88100962 A CN88100962 A CN 88100962A CN 1013068 B CN1013068 B CN 1013068B
- Authority
- CN
- China
- Prior art keywords
- dma
- assignment
- passage
- external unit
- computer system
- 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
Links
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
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- 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
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
- G06F13/30—Handling 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
-
- 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
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/3625—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access
-
- 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
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/374—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
本发明计算机系统,当外部设备数比系统的DMA通道数多时,所有外设都能进行DMA存取,有些DMA通道归某些外设专有,而另一些则被其余的外设所共享,称为“可编程序的”DMA通道,每个进行DMA存取的外设都有一个通道优先级值。当要求进行DMA存取时,将该值传给判优总线。获得总线的通道优先级值就与预先存贮的DMA通道赋值相比较。如果比较是成功的,则相应的外设就得到有相应赋值的DMA通道。
Description
本发明涉及用于微型计算机或小型计算机系统的DMA(直接存储器存取)控制器。特别是,本发明提供一个DMA控制器,用了它,比系统所提供的物理DMA通道数目多得多的外部设备都能够进行DMA数据传输。
许多现代的计算机系统运用DMA通道,使得外部设备能够不经过CPU(中央处理器)就与主存交换数据。不经过CPU的好处是提高了数据输率,并且改善了整个系统的效率,这是因为在数据传输时,CPU是空闲的,它可以执行其他任务。
当前最通常的作法一直是对每一个允许进行DMA存取的外部设备提供一个物理的DMA通道。采用这种方案的计算机系统实例是IBM的个人计算机。
但是,一个用户可以用于他(她)的计算机系统的外部设备数目在不断增加,预计这种趋势将继续下去。例如,最近已开始使用的有:光盘读出器,附加通讯设备,硬盘文件,磁带备份设备,高速打印机,等等。它们都能够很好地进行DMA存取。
另外,进一步增加物理的DMA通道,对系统硬件来说是昂贵的,这包括集成电路数目,插件板空间,以及总线空间。让操作是相互排斥的外部设备共享DMA通道,这是人们一直想用的办法。例如,IBM XT和AT计算机系统就用了共享DMA通道这种办法。但是如需要用附加的子程序来防止那些与每个DMA通道相联的外部设备同时操作时,这种方案需要大范围地修改操作系统,当文件控制器不够“聪明”以致不能进行重叠查找操作时,也会产生明显的操作负担。有些时候问题是复合的,例如当一个局域网部件和一个文件控制器享有相同的DMA等级并且一个局域网文件服务子程序必须在这两个设备之间来回交换时。
Bardotti等的美国专利3925766揭示了一个计算机系统,该系统中的外部设备被指定了优先级,并按这个优先级来选择与存储器通讯的存取要求。优先级的指定可以根据要求信号的产生原因或中央处理器的特定加载条件而改变,但是不提供任何DMA通路。
Suzuki等的美国专利4400771,揭示了一个多处理器系统,这些处理器的每一个都能存取一个专门的存储器。一个可编程序的寄存器线路存储着优先级信息,它是给每个处理器指定存储器存取的优先权等级。可以用外部线路,或至少用一个处理器来人工改变这种优先级信息。但是Suzuki等的专利仍然没有让多个外部设备用DMA存取一个存储器。
Nadir的美国专利4257095中总线判优技术学说是有价值的。
下面提到的这些美国专利涉及使用DMA控制器的计算机系统的一般背景情况:Dinwiddie,Jr.等的专利4371932;Larson的专利4419728;Peterson的专利4538224;Brewer等的专利4556962;以及Hallberg的专利4584703。
本发明的目的是给出一个使用DMA控制器的计算机系统。它的外部设备数多于系统所提供的物理DMA通道数,这些外部设备能够共享DMA通道,而不会遇到上述以前的技术方法中遇到的那些问题。
本发明进一步的目的是提供这样的计算机系统,它的每个可进行DMA存取的外部设备都被指定了自己的DMA存取判优级。
本发明还有一个目的,就是提供这样的计算机系统,其分配给外部设备的DMA通道可以容易的用软件控制而不对操作系统进行大量的修改。
根据本发明上述的和其他的目的,这里给出的计算机系统,它包括要求DMA存取的许多外部设备,且外部设备的数目大于系统所提供的DMA通道数。这些外部设备中有些是固定分配的,专用某些DMA通道,而另外一些外部设备则共享剩余的DMA通道。这些被共享的剩余通道被称为“可编程序的”DMA通道。那些增加出来的DMA通道不是物理的,因此又可称为“虚拟的”DMA通道,以此把它们与那些物理的或“实的”DMA通道区别开来。
给每个外部设备指定一个通道优先级。一个判优线路存储DMA通道指定值,系统中提供的每个DMA通道有一个指定值。对每个有专用DMA通道的外部设备,存储的是一个固定的DMA通道指定值;而对剩余的外部设备,它们共享着那些可编程序的DMA通道,存储的是一个可编程序的DMA通道定值。
当一个外部设备要进行DMA存取时,就把它的通道优先级值传给判优总线。最高的通道优先级值得到判优总线。将这一通道优先级值与固定和可编程序的DMA通道指定值进行比较。如果该通道优先级值与某个被存储的固定或可编程序的DMA通道指定值相匹配,则它被授权存取相应的DMA通道。
图1示出使用本发明的一个计算机系统的框图。
图2是一个用来说明本发明操作的概念图。
图3是一个详细描述图1那个计算机系统外部设备的判优线路的逻辑图。
图4是详细说明图1那个计算机系统的总线图。
图5是用于本发明的计算机系统中的中央判优控制线路的详细逻辑图。
图6是使用本发明的DMA控制线路的详细逻辑图。
对本发明最佳实施例的详细说明。
首先参照附图的图1,它给出一个计算机系统的框图,本发明在其中得到很好地使用。
CPU经过系统总线26与主存15,总线控制器16,以及数学协同处理器14通讯。CPU与相联的外部设备之间的通讯经过总线控制器16,该控制器与外部设备的结合是通过一条系列总线25。在这个例子中,外部设备包括一个辅存17,两个通讯设备18和19,一个硬盘文件20,一个光盘21,以及两个软磁盘22和23。只要系统需要,当然也能够使用其它的外部设备。这些外部设备通常用DMA从动装置24表示。
一个DMA控制器12至少用于对所选的那些外部设备直接进行存储器存取。为此,系列总线,或至少是它的一部分,分支到DMA控制器12,下面还将详细地说明。对每个允许DMA存取的外部设备提供一条判优线路24,并为有判优线路的每个外部设备指定一个判优(优先)级。一个中央判优控制线路11与DMA控制器相关连,用来在同时请求DMA存取的外部设备中进行判优选择,并通知DMA控制器哪一个外部设备将进行存取,这一点下面还将更详细地说明。
在具体体现本发明的计算机系统中,允许进行DMA存取的外部设备数多于系统提供的物理DMA通道数。依照本发明,这些设备中的一部分分有自己专用的DMA通道,而另一部分则共享剩余的DMA通道。在共享(可编程序)通道上,存取是依照预先指定的优先级进行的。
在这个例子中,假定有8个物理的DMA通道,用0到7表示。并进一步假定通道0和4是共享的,而剩余的通道1~3和5~7,则分给单个的外部设备。
现在参照图2,这是一个用来说明本发明原理的概念图。有两套输入提供给一个比较装置。一套输入由来自总线ARBUS(判优总线)的四根线组成。ARBUS上的值表示当前要求一个DMA通道并有最高判优(优先)级的外部设备。如果该外部设备是那些具有1~3或5~7专用通道中的一个,则可以直接用该通道存取。否则,如果外部设备是那些必须共享一个可编程序DMA通道中的一个(通道0和4),则仅在它的优先级与寄存器6和7中的一个预置值相一致时,存取才允许进行。这一操作将在下面参照图3~6时给出更为详细的说明。
图3是一个判优线路28的逻辑图,它用于每个允许进行DMA存取的外部设备。赋给外部设备的判优级置于寄存器70中,下文称它为通道优先级赋值寄存器。这一点可以用许多众所周知的技术作到。常用的办法是,CPU经过一个预先指定的口子来寻址外部设备,以便于能够用软件设置判优级。这一点可以用下列设施完成:BIOS(基本输入输出系统),复位时的POST(电源接通自测),操作系统,或所期望的应用程序。否则,可能用硬件开关来输入通道优先级的赋值。
实际的判优线路是用判优器72实现的。这一线路,包括图3所示的各种信号,在1983年6月13日的电气和电子工程师学会出版的美国国家标准/电气和电子工程师学会标准号ANSI/IEEEStd696-1983中给出了详尽的揭示和讨论。一般说来,体现在判优方案中的每个设备都提供了这样一种线路,这些线路经过ARBUS连在一起。本例所示的ARBUS有四个数据行TMAO-TMA3,允许16种不同的判优级。但是能够使用任意期望的数。在由控制信号PHLDA和HOLD指定的判优时间段中,所有期望从总线赢得控制的设备(它们有IWANT信号被置为高(“1”)状态),把它们的判优(优先)级传输给ARBUS。在图3的例子中,当信号/APRIO(这里“/”表示一个“低为真”信号)变为低(“0”)信号时,就发生这种情况。随后,保持在寄存器70中的值经过与门17选通到选优器72,然后到ARBUS线的TMA0-TMA3。在判优期结束时,ARBUS线TMA0-TMA3上的值将是具有最高优先级的设备的判优级值。这里提到的各种信号的波形在引用的ANSI/IEEE标准中都已详细示出。
在讨论的具体装置中,ARBUS构成序列总线25的一部分,它使外部设备同总线控制器16相连,从而也同CPU10相连。图4描述了ARBUS与序列总线25的关系。
图5和图6分别示出了中央判优控制线路11与DMA控制器12的细节。下面给出对它们的说
明。
如图5所示,用来自ARBUS的信号HOLD和PHLDA产生一个信号/ARBTIME。在争夺DMA通道的外部设备中进行判优时,/ARBTIME处于“0”状态。它保持这种“0”状态,直到ARBUS上的信号达到稳定状态条件,也就是足够长的时间来完成判优。为了产生/ARBTIME,PHLDA先经非门61倒相,然后与HOL胜一起作为异或门62的两个输入。一个单稳态多谐振荡器63被来自异或门62的输出脉冲前沿所触发,该单稳态线路和输出脉冲周期比ARBUS上的判断时间长。这个单稳态多谐振荡器的输出与异或门62的输出再经过或门64就产生/ARBTIME。当然也可能有其他产生/ARBTIME的方式。一种方式是,让来自每个设备的DMA要求信号一起经过或运算,并用这个或运算的输出来产生一个适当长度的脉冲信号。无论如何,基本的要求是在ARBUS上进行判优时,要置/ARBTIME为“0”状态以确定时间周期。
对于系统中每个可编程序的物理DMA通道,提供了一个比较逻辑40,同时对每个固定通道提供一个比较逻辑49,用于可编程序DMA通道(本例中是通道0和通道4)的每个比较逻辑40都包括一个寄存器41,它又称为DMA通道赋值寄存器,CPU用DMA通道赋值来加载它,除了寄存器41被一套开关所替换外,用来固定通道的比较逻辑49与比较逻辑40是完全相同的。比较逻辑49中的一套开关是人工设置的,用来给通道赋值。这里仅仅给出了一个比较逻辑40和49的细节,因为其它的比较逻辑40和49都是同样的,它们的输入信号也是相同的。
可编程序通道(比较逻辑40)的寄存器41的输出和固定通道(比较逻辑49)的开关输出同TMA0-TMA3信号经过一套异或门42比较后,它们的输出就成了或非门43的输入。如果在判优周期结束时通道赋值与TMA0-TMA3所表示的值相匹配,即如果那时相应的信号是同一状态,则或非门43的输出(比较0-比较7)将为“1”状态。当然,每次只能够有一个或非门43真有输出。
现在参照图6,在判优期结束时,/ARBTIME返回到“1”电平,将由处于“1”状态的那个比较0-比较7信号置DMA控制器12的两个锁存器51之一为“1”。其他那些比较0-比较7将处于“0”状态,从而将置锁存器51的相应位置为“0”。
锁存器51的输出被用作2个串联着的DMA控制器集成电路52的相应DMA请求输入(DREQ0-DREQ3)。在讨论的这个具体装置中,集成电路52都是英特尔(Intel)公司制造的一种8237可编程序DMA控制器。该DMA控制器集成电路52被用或非门53串联起来。CPU可以是任意的英特尔IAPX86系列微处理器,如8088,8086或80286。要了解两个DMA控制器集成电路与CPU间联接的细节,可以参考1985年英特尔微处理系统元件手册第2-57页到第2-71页。
对于有专用DMA通道赋值的外部设备,一旦外部设备得到ARBUS,它就能立即使用DMA通道。对于共享一个DMA通道的外部设备,当它得到ARBUS时,只有它的通道优先级赋值,该值保持在它的通道优先级赋值寄存器70中,与两个寄存器41之一中所置的DMA通道优先级赋值相匹配时,它才能立即使用一个DMA通道。当然,基本输入输出系统,操作系统或应用程序可以连续不断地用程序重调保持在两个可编程序通道比较逻辑40的DMA通道赋值寄存器41中的通道赋值,以确保所有要求存取的外部设备最终能使用一个DMA通道。可以实现许多不同的编程序方案,来控制存贮在DMA通道赋值寄存器41以及由现有应用决定的判优线路的通道优先级赋值寄存器70中的值。一个简单的例子是,在优先级赋值寄存器70中设置的值是固定的,而在DMA通道赋值寄存器41中置的值是轮换的,其中至少有一些是优先级赋值寄存器70中的值,这样就给每个与可编程序DMA通道相联系的外部设备一个能使用DMA通道的机会。如果使用的是有它们自己控制器的“智能”外部设备,就可能实现更加复杂的方案。例如,当希望存取一个用可编程序通道的外部设备时,该外部设备可以询问操作系统或基本输入输出系统是否有可供使用的可编程序通道。如果有一个可以使用的通道,则该通道号就设置在寄存器70和41中以保证存取能够进行。然而,因为选择编程序模式已经超出了本发明的范围而在
用户的领域中,因此这里不再讨论更进一步的例子了。
本发明的其他应用也是意料之中的。例如,使用本发明提供的可编程序DMA通道,用它作专用通道的备用通道,可以提供改善了的系统可靠性。
应当懂得,在能够对如上所述的本发明的结构和教学进行改进时,这种改进将落在本发明的精神和范围之内,就像附在这里的专利范围中所说明的那样。
Claims (8)
1、一个计算机系统,包括:提供多个DMA通道的装置;具有要求DMA存取装置的许多外部设备,以及至少把一个上述的外部设备分配给上述的一个专用DMA通道进行DMA存取并让上述的其他外部设备共享剩余的DMA通道进行DMA存取的装置。
其特征为,上述的分配装置包括将要求DMA存取的上述其它外部设备的通道优先级赋值最高的一个与预先确定且编程的一组DMA通道的赋值加以比较的装置,以及当上述其它外部设备之一具有的最高通道优先级赋值与一个上述预先编程的DMA通道赋值相对应时,授权该外部设备存取相应于这个赋值的DMA通道的装置。
2、根据权利要求1所述的计算机系统,其特征为所述比较装置包括存储所述预先确定的一组DMA通道赋值的装置,和同时将所述最高通道优先级赋值与所述通道赋值组比装的装置。
3、根据权利要求2所述的计算机系统,其特征为还包括改变所述剩余DMA通道的赋值的装置。
4、一个计算机系统,它包括:许多外部设备,每个都被分配了一个通道优先级赋值;判优总线装置,和在每个所述外部设备中用于请求DMA存取而将其通道优先级赋值放入判优总线装置以确定同时请求DMA存取的外部设备的最高通道优先级赋值的装置,其特征为还包括:
存储第一和第二组DMA通道赋值的装置,所述DMA通道赋值在数量上少于所述外部设备的数目且等于所述计算机系统中的DMA通道数目,所述第一组DMA通道赋值是固定的且对应于所述通道优先级赋值中预先决定的一部分,所述第二组DMA通道赋值是可编程的且可分配给其余所述通道优先级赋值;
将从所述判优总线得到的最高通道优先赋值与所述存储的DMA通道赋值组进行比较的装置;
当所述最高通道优先赋值等于所述第一和第二组中所述DMA通道赋值之一时将DMA存取授予所对应的外部设备的装置。
5、根据权利要求4所述的计算机系统,其特征在于所述存储装置包括对于每一个所述可编程DMA通道赋值通过所述计算机系统后中央处理器可编程的寄存器。
6、根据权利要求5所述的计算机系统,其特征为所述存储装置包括对于每一个所述固定DMA通道赋值,有固定输入各DMA通道赋值的装置。
7、一种在计算机系统中控制DMA存取的方法,在该计算机系统中艺多请求DMA存取的外部设备每个都被分配了一个通道优先级赋值,所述方法其特征为包括步骤:
固定存储专用于外部设备的DMA通道的第一组DMA通道赋值,且可编程存储多个外部设备共享DMA通道的第二组DMA通道赋值。
由每个请求DMA存取的外部设备将其通道优先级赋值传送到总线上;
在所述总线上判优确定同时请求DMA存取的外部设备最高优先级赋值;
将所述最高优先级赋值与所述第一和第二组DMA通道侧值比较;以及
当所述最高优先级赋值等于所述第一、第二组中所包含DMA通道赋值之一时,授予对应外部设备进行DMA存取。
8、根据权利要求7所述的方法,其特征为所述比较步骤包括同时将所述最高通道优先级赋值与所述第一组和第二组比较。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/030,786 US4901234A (en) | 1987-03-27 | 1987-03-27 | Computer system having programmable DMA control |
US030,786 | 1987-03-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN88100962A CN88100962A (zh) | 1988-12-14 |
CN1013068B true CN1013068B (zh) | 1991-07-03 |
Family
ID=21856024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN88100962A Expired CN1013068B (zh) | 1987-03-27 | 1988-02-25 | 具有可编程序直接存贮器存取控制的计算机系统 |
Country Status (17)
Country | Link |
---|---|
US (1) | US4901234A (zh) |
EP (1) | EP0288607B1 (zh) |
JP (1) | JPS63244158A (zh) |
KR (1) | KR950008227B1 (zh) |
CN (1) | CN1013068B (zh) |
AR (1) | AR240681A1 (zh) |
AT (1) | ATE81220T1 (zh) |
BE (1) | BE1000819A3 (zh) |
DE (3) | DE3782045T2 (zh) |
ES (1) | ES2035027T3 (zh) |
FR (1) | FR2613095A1 (zh) |
GB (1) | GB2202977B (zh) |
GR (1) | GR3006676T3 (zh) |
HK (2) | HK33692A (zh) |
IT (1) | IT1216132B (zh) |
NL (1) | NL185106C (zh) |
SG (1) | SG13092G (zh) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5185864A (en) * | 1989-06-16 | 1993-02-09 | International Business Machines Corporation | Interrupt handling for a computing system with logical devices and interrupt reset |
US5307468A (en) * | 1989-08-23 | 1994-04-26 | Digital Equipment Corporation | Data processing system and method for controlling the latter as well as a CPU board |
DE3928481C2 (de) * | 1989-08-29 | 1994-09-22 | Diehl Gmbh & Co | Prioritätsorientiertes dezentrales Busvergabesystem |
EP0453863A2 (en) * | 1990-04-27 | 1991-10-30 | National Semiconductor Corporation | Methods and apparatus for implementing a media access control/host system interface |
US5519684A (en) * | 1990-05-14 | 1996-05-21 | Casio Computer Co., Ltd. | Digital recorder for processing in parallel data stored in multiple tracks |
US5974015A (en) * | 1990-05-14 | 1999-10-26 | Casio Computer Co., Ltd. | Digital recorder |
EP0473280B1 (en) * | 1990-08-31 | 1996-04-17 | Advanced Micro Devices, Inc. | Communication control system for a computer and peripheral devices |
US5581530A (en) * | 1990-09-06 | 1996-12-03 | Casio Computer Co., Ltd. | Digital recorder for processing of parallel data stored in multiple tracks and using cross-fade processing |
WO1992015060A1 (en) * | 1991-02-19 | 1992-09-03 | International Business Machines Corporation | Channel selection arbitration |
US5530901A (en) * | 1991-11-28 | 1996-06-25 | Ricoh Company, Ltd. | Data Transmission processing system having DMA channels running cyclically to execute data transmission from host to memory and from memory to processing unit successively |
US6026443A (en) * | 1992-12-22 | 2000-02-15 | Sun Microsystems, Inc. | Multi-virtual DMA channels, multi-bandwidth groups, host based cellification and reassembly, and asynchronous transfer mode network interface |
US5640598A (en) * | 1994-07-12 | 1997-06-17 | Mitsubishi Denki Kabushiki Kaisha | Data transfer processing system |
US5495614A (en) * | 1994-12-14 | 1996-02-27 | International Business Machines Corporation | Interface control process between using programs and shared hardware facilities |
JP3320233B2 (ja) * | 1995-02-06 | 2002-09-03 | キヤノン株式会社 | 記録装置 |
US5664197A (en) * | 1995-04-21 | 1997-09-02 | Intel Corporation | Method and apparatus for handling bus master channel and direct memory access (DMA) channel access requests at an I/O controller |
US5761534A (en) * | 1996-05-20 | 1998-06-02 | Cray Research, Inc. | System for arbitrating packetized data from the network to the peripheral resources and prioritizing the dispatching of packets onto the network |
US6154793A (en) * | 1997-04-30 | 2000-11-28 | Zilog, Inc. | DMA with dynamically assigned channels, flexible block boundary notification and recording, type code checking and updating, commands, and status reporting |
US6092137A (en) * | 1997-11-26 | 2000-07-18 | Industrial Technology Research Institute | Fair data bus arbitration system which assigns adjustable priority values to competing sources |
US6473780B1 (en) * | 1998-04-01 | 2002-10-29 | Intel Corporation | Scheduling of direct memory access |
US6260081B1 (en) * | 1998-11-24 | 2001-07-10 | Advanced Micro Devices, Inc. | Direct memory access engine for supporting multiple virtual direct memory access channels |
US7089344B1 (en) * | 2000-06-09 | 2006-08-08 | Motorola, Inc. | Integrated processor platform supporting wireless handheld multi-media devices |
JP2003006003A (ja) * | 2001-06-18 | 2003-01-10 | Mitsubishi Electric Corp | Dmaコントローラおよび半導体集積回路 |
JP4245852B2 (ja) * | 2002-03-19 | 2009-04-02 | 富士通マイクロエレクトロニクス株式会社 | ダイレクトメモリアクセス装置 |
US7062582B1 (en) * | 2003-03-14 | 2006-06-13 | Marvell International Ltd. | Method and apparatus for bus arbitration dynamic priority based on waiting period |
US20050038946A1 (en) * | 2003-08-12 | 2005-02-17 | Tadpole Computer, Inc. | System and method using a high speed interface in a system having co-processors |
US7533195B2 (en) * | 2004-02-25 | 2009-05-12 | Analog Devices, Inc. | DMA controller for digital signal processors |
US7240129B2 (en) * | 2004-02-25 | 2007-07-03 | Analog Devices, Inc. | DMA controller having programmable channel priority |
US7130982B2 (en) * | 2004-03-31 | 2006-10-31 | International Business Machines Corporation | Logical memory tags for redirected DMA operations |
US8006001B2 (en) * | 2004-09-22 | 2011-08-23 | Lsi Corporation | Method and apparatus for manipulating direct memory access transfers |
US7386642B2 (en) * | 2005-01-28 | 2008-06-10 | Sony Computer Entertainment Inc. | IO direct memory access system and method |
US7680972B2 (en) * | 2005-02-04 | 2010-03-16 | Sony Computer Entertainment Inc. | Micro interrupt handler |
JP2006216042A (ja) * | 2005-02-04 | 2006-08-17 | Sony Computer Entertainment Inc | 割り込み処理のためのシステムおよび方法 |
US7483422B2 (en) * | 2005-02-10 | 2009-01-27 | International Business Machines Corporation | Data processing system, method and interconnect fabric for selective link information allocation in a data processing system |
US7395361B2 (en) * | 2005-08-19 | 2008-07-01 | Qualcomm Incorporated | Apparatus and methods for weighted bus arbitration among a plurality of master devices based on transfer direction and/or consumed bandwidth |
US20090259789A1 (en) * | 2005-08-22 | 2009-10-15 | Shuhei Kato | Multi-processor, direct memory access controller, and serial data transmitting/receiving apparatus |
JP4499008B2 (ja) * | 2005-09-15 | 2010-07-07 | 富士通マイクロエレクトロニクス株式会社 | Dma転送システム |
US7689732B2 (en) * | 2006-02-24 | 2010-03-30 | Via Technologies, Inc. | Method for improving flexibility of arbitration of direct memory access (DMA) engines requesting access to shared DMA channels |
CN106294233B (zh) * | 2015-06-29 | 2019-05-03 | 华为技术有限公司 | 一种直接内存访问的传输控制方法及装置 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BE622921A (zh) * | 1961-10-06 | |||
US3766526A (en) * | 1972-10-10 | 1973-10-16 | Atomic Energy Commission | Multi-microprogrammed input-output processor |
IT971304B (it) * | 1972-11-29 | 1974-04-30 | Honeywell Inf Systems | Sistema di accesso a priorita variabile dinamicamente |
US4075691A (en) * | 1975-11-06 | 1978-02-21 | Bunker Ramo Corporation | Communication control unit |
US4400771A (en) * | 1975-12-04 | 1983-08-23 | Tokyo Shibaura Electric Co., Ltd. | Multi-processor system with programmable memory-access priority control |
US4090238A (en) * | 1976-10-04 | 1978-05-16 | Rca Corporation | Priority vectored interrupt using direct memory access |
US4257095A (en) * | 1978-06-30 | 1981-03-17 | Intel Corporation | System bus arbitration, circuitry and methodology |
US4437157A (en) * | 1978-07-20 | 1984-03-13 | Sperry Corporation | Dynamic subchannel allocation |
US4558412A (en) * | 1978-12-26 | 1985-12-10 | Honeywell Information Systems Inc. | Direct memory access revolving priority apparatus |
CA1132265A (en) * | 1978-12-26 | 1982-09-21 | Minoru Inoshita | Direct memory access revolving priority apparatus |
US4281381A (en) * | 1979-05-14 | 1981-07-28 | Bell Telephone Laboratories, Incorporated | Distributed first-come first-served bus allocation apparatus |
US4371932A (en) * | 1979-07-30 | 1983-02-01 | International Business Machines Corp. | I/O Controller for transferring data between a host processor and multiple I/O units |
US4516199A (en) * | 1979-10-11 | 1985-05-07 | Nanodata Computer Corporation | Data processing system |
IT1209338B (it) * | 1980-07-24 | 1989-07-16 | Sits Soc It Telecom Siemens | Disposizione circuitale per il trasferimento di dati tra la memoria di un elaboratore elettronico e le unita' di interfaccia delle periferiche ad esso collegate. |
JPS58223833A (ja) * | 1982-06-23 | 1983-12-26 | Fujitsu Ltd | ダイレクト・メモリ・アクセス制御方式 |
US4528626A (en) * | 1984-03-19 | 1985-07-09 | International Business Machines Corporation | Microcomputer system with bus control means for peripheral processing devices |
US4688166A (en) * | 1984-08-03 | 1987-08-18 | Motorola Computer Systems, Inc. | Direct memory access controller supporting multiple input/output controllers and memory units |
JPS61131153A (ja) * | 1984-11-30 | 1986-06-18 | Toshiba Corp | Dma転送制御方式 |
JPS61133461A (ja) * | 1984-12-04 | 1986-06-20 | Fujitsu Ltd | Dma転送制御方式 |
US4847750A (en) * | 1986-02-13 | 1989-07-11 | Intelligent Instrumentation, Inc. | Peripheral DMA controller for data acquisition system |
-
1987
- 1987-03-27 US US07/030,786 patent/US4901234A/en not_active Expired - Lifetime
- 1987-11-27 FR FR8716750A patent/FR2613095A1/fr not_active Withdrawn
- 1987-12-04 BE BE8701395A patent/BE1000819A3/fr not_active IP Right Cessation
- 1987-12-10 GB GB8728927A patent/GB2202977B/en not_active Revoked
- 1987-12-15 DE DE8787118545T patent/DE3782045T2/de not_active Expired - Fee Related
- 1987-12-15 ES ES198787118545T patent/ES2035027T3/es not_active Expired - Lifetime
- 1987-12-15 AT AT87118545T patent/ATE81220T1/de not_active IP Right Cessation
- 1987-12-15 EP EP87118545A patent/EP0288607B1/en not_active Expired - Lifetime
- 1987-12-25 JP JP62327583A patent/JPS63244158A/ja active Granted
-
1988
- 1988-02-25 CN CN88100962A patent/CN1013068B/zh not_active Expired
- 1988-02-27 KR KR1019880002038A patent/KR950008227B1/ko not_active IP Right Cessation
- 1988-03-18 IT IT8819827A patent/IT1216132B/it active
- 1988-03-23 AR AR31037988A patent/AR240681A1/es active
- 1988-03-23 NL NLAANVRAGE8800715,A patent/NL185106C/xx not_active IP Right Cessation
- 1988-03-25 DE DE8804104U patent/DE8804104U1/de not_active Expired
- 1988-03-25 DE DE3810231A patent/DE3810231A1/de active Granted
-
1992
- 1992-02-11 SG SG130/92A patent/SG13092G/en unknown
- 1992-05-07 HK HK336/92A patent/HK33692A/xx unknown
- 1992-12-24 GR GR920403114T patent/GR3006676T3/el unknown
-
1997
- 1997-09-24 HK HK97101822A patent/HK1000295A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
NL8800715A (nl) | 1988-10-17 |
HK33692A (en) | 1992-05-15 |
JPS63244158A (ja) | 1988-10-11 |
KR950008227B1 (ko) | 1995-07-26 |
IT1216132B (it) | 1990-02-22 |
EP0288607B1 (en) | 1992-09-30 |
GR3006676T3 (zh) | 1993-06-30 |
DE8804104U1 (de) | 1988-06-30 |
JPH0467224B2 (zh) | 1992-10-27 |
GB8728927D0 (en) | 1988-01-27 |
IT8819827A0 (it) | 1988-03-18 |
AR240681A1 (es) | 1990-08-31 |
ES2035027T3 (es) | 1993-04-16 |
BE1000819A3 (fr) | 1989-04-11 |
KR880011675A (ko) | 1988-10-29 |
GB2202977A (en) | 1988-10-05 |
NL185106B (nl) | 1989-08-16 |
SG13092G (en) | 1992-04-16 |
NL185106C (nl) | 1990-01-16 |
FR2613095A1 (fr) | 1988-09-30 |
DE3782045D1 (de) | 1992-11-05 |
DE3782045T2 (de) | 1993-04-15 |
US4901234A (en) | 1990-02-13 |
HK1000295A1 (en) | 1998-02-20 |
ATE81220T1 (de) | 1992-10-15 |
GB2202977B (en) | 1991-07-24 |
CN88100962A (zh) | 1988-12-14 |
DE3810231A1 (de) | 1988-10-06 |
DE3810231C2 (zh) | 1989-10-26 |
EP0288607A1 (en) | 1988-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1013068B (zh) | 具有可编程序直接存贮器存取控制的计算机系统 | |
US5388228A (en) | Computer system having dynamically programmable linear/fairness priority arbitration scheme | |
US5129090A (en) | System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration | |
US4536839A (en) | Memory request arbitrator | |
US4920486A (en) | Distributed arbitration apparatus and method for shared bus | |
EP0078389B1 (en) | Bus contention resolution in data processing apparatus having multiple independant users | |
US6073199A (en) | History-based bus arbitration with hidden re-arbitration during wait cycles | |
US4365294A (en) | Modular terminal system using a common bus | |
US4796232A (en) | Dual port memory controller | |
US4972313A (en) | Bus access control for a multi-host system using successively decremented arbitration delay periods to allocate bus access among the hosts | |
US4730268A (en) | Distributed bus arbitration for a multiprocessor system | |
US5548762A (en) | Implementation efficient interrupt select mechanism | |
GB2171542A (en) | System employing tightly coupled processors | |
CA2114374C (en) | Bus coupling information processing system for multiple access to system bus | |
US5241661A (en) | DMA access arbitration device in which CPU can arbitrate on behalf of attachment having no arbiter | |
US6029219A (en) | Arbitration circuit for arbitrating requests from multiple processors | |
KR100486247B1 (ko) | 버스의 사용 빈도를 제어할 수 있는 방법 및 장치 | |
US5349690A (en) | Fair arbitration scheme for arbitrating between multiple nodes in a computer system seeking control of a common bus | |
US5038274A (en) | Interrupt servicing and command acknowledgement system using distributed arbitration apparatus and shared bus | |
US5450591A (en) | Channel selection arbitration | |
US5931931A (en) | Method for bus arbitration in a multiprocessor system | |
JPH05173985A (ja) | プログラマブルコントローラ | |
JP2504818B2 (ja) | マルチプロセッサ装置における共通メモリ制御方法 | |
JPH081632B2 (ja) | 共有バスを有するデータ処理システムおよびその優先度決定回路 | |
CA1299295C (en) | Dma access arbitration device in which cpu can arbitrate on behalfof attachment having no arbiter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C13 | Decision | ||
GR02 | Examined patent application | ||
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 | ||
ASS | Succession or assignment of patent right |
Owner name: LIAN XIANG(SINGAPORE)PRIVATE LTD. Free format text: FORMER OWNER: IBM CORP. Effective date: 20061027 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20061027 Address after: Singapore Changi Patentee after: Lenovo (Singapore) Pte. Ltd. Address before: New York, USA Patentee before: International Business Machines Corp. |
|
C17 | Cessation of patent right | ||
CX01 | Expiry of patent term |