CN1098527A - 外部件互联为基础的计算机系统的直接存储器存取逻辑支持 - Google Patents
外部件互联为基础的计算机系统的直接存储器存取逻辑支持 Download PDFInfo
- Publication number
- CN1098527A CN1098527A CN94108101A CN94108101A CN1098527A CN 1098527 A CN1098527 A CN 1098527A CN 94108101 A CN94108101 A CN 94108101A CN 94108101 A CN94108101 A CN 94108101A CN 1098527 A CN1098527 A CN 1098527A
- Authority
- CN
- China
- Prior art keywords
- bus
- dma
- standard
- bridge
- controller
- 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.)
- Granted
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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4009—Coupling between buses with data restructuring
- G06F13/4018—Coupling between buses with data restructuring with data-width conversion
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
DMA支持机构包括以选出的标准I/O装置
的名义执行DMA周期的直接存储器存取(DMA)
控制器,和使DMA周期能通过外部总线执行的直
接存储器存取(DMA)支持逻辑。DMA支持逻辑包
括直联到带有I/O桥的DMA控制器的边带信号,
边带信号包括判别DMA控制器为其执行DMA周
期的所选取I/O装置总线大小的信息。
Description
本发明一般是关于发生在计算机系统的存储器操作,更具体而言,本发明是关于对通过总线桥接而互联的大量总线的计算机系统中的直接存储器存取(DMA)的逻辑支持。
典型的计算机系统包括多个总线,系统中的每一个总线都有多个装置联在其上面,并且他们通过总线相互局部地进行通讯。通过不同的总线进行整个系统内的通讯是必要的,然而,这就要求联在一个总线上的装置能对联在另一个总线上的装置进行读出或写入信息或者反之。为个允许联在不同总线的装置之间进行整个系统内有通讯,提供了总线与总线之间的桥接(接口)以匹配一总线协议书另一总线协议书的通讯。
已知的总线对总线的桥接包括了下述转让给IBM公司的已经公开了的并且正在进行审查的专利申请:申请号为07/815992、标题为“具有双总线结构的计算机系统的总线控制逻辑”;申请号是07/816184、标题为“奇偶错误检测和恢复”;申请号是07/816204、标题为“高速缓冲存储器检测和数据无效技术”;申请号是07/816203、标题为“具有双总结构的计算机系统的总线接口逻辑”;申请号为07/816691、标题为“总线接口单元的双向数据存储机构”;申请号是07/816693、标题为“控制总线操作速度的总线接口”;申请号是07/816116、标题为“具有双总线结构的计算机系统的判优控制逻辑”;申请号是07/816698、标题为“在总线对总线接口中决定地址位置的方法和装置”,以上申请在1992年2月2日递交的,这些申请描述了允许联在系统中不同总线上的装置进行整个系统内的通讯的机构。
在多总线计算机系统中的每一个总线对总线的桥接是用来联接系统中的两个总线,可以使用各种类型的总线以构成给定的计算机系统。作为例子,标准的I/O总线可以包括ISA或微通道(“MC-A”)总线,这些总线经常用来把现存的外部设备I/O装置联到以集中的、高性能的总线为核心构筑的系统。
一个已经广泛接受的这类高性能总线之一是PCI(外部部件相互联接)总线,该总线能在相对短的时间间隔内进行极快的数据传输(有至每秒转输120兆字节数据),PCI总线能实现如此高的性能,部分原因是因为它能直接接到其它的高速总线上,例如能联到联接CPU的系统总线上,这就提供了接在PCI总线的装置和接到系统总线的装置之间的快速数据传输。事实上,在一些高集成装置的操作中,例如某图形数据包控制器,就要求使用高性能总线例如PCI总线直接联接到系统总线上,此外,PCI总线结构并不需要任何“粘接逻辑”去操作联接到它上面的外部设备,其它总线的粘接逻辑典型地是由各种各样的硬件成份组成,例如解码器,缓冲器或锁存器等,它们安装在外部设备和总线之间。
主PCI总线是在33MHz的同步时钟信号下操作,通过PCI总线传送的数据串是32比特长的。在PCI总线上的32比特的数据串被称为双字(DWORO),它可以分为4个字节,每个字节包括一个8比特的数据,由PCI总线运载的地址和数据信息被多路转接成为一个信号。多路转接取消了要求分开地址线和数据线的要求,和其它总线结构相反,也减少了PCI总线环境所要的信号的数量。PCI总线结构所需的信号的数量是在45-47之间,而非多路转接总线典型地需要该数字的两倍,因此,由于信号的数量减少了,需要支持接到PCI总线的装置的联接线引线的数量也减少了相应的数量。因此,PCI结构特别适用于高集成的台式计算机系统。
1993年4月30发表的“外部部件相互联接(PCI)版本2.0说明书”;1992年11月1发表的“基本的PCI系统设计指南”,版本0.6;和1992年11月6发表的“外部部件相互联接(PCI)插入板/联接器附弄”(草案)提供了PCI总线结构的操作和结构的更详细描述;以上的全部文章是由PCI专门工作小组给出的,它们的全文在此作为参考文献。
如果在PCI总线和标准的I/O总线之间的通讯协议不同,在计算机系统中将PCI总线接至标准的I/O总线就会有问题。例如,和接到一标准I/O总的装置比,联接到PCI总线的装置能以不同的方式处理直接存储器存取(DMA)周期。DMA周期是这样一种操作,在该操作中,在DMA控制器的控制下数据在系统存储器和输入/输出单元之间进行传输而无需CPU的干预。直接联接到PCI总线的大多数装置一般都是高性能的32位总线主装置,这些主装置具有它们自己的内置DMA控制逻辑。这样的总线主装置并不需要依赖系统提供的DMA控制器,由此允许装置依靠自己启动DMA传输而不是依靠系统DMA控制器去启动DMA传输。DMA从装置一般是低性能的、较便宜的并且要在系统DMA控制器的帮助下执行DMA传送。
典型的DMA从装置的实例是串行端口,并行端口和软盘装置。为了维持包括有标准I/O总线例如ISA或MC-A总线的任一系统的硬件和软件兼容性,这就要求这些标准I/O装置和标准系统DMA控制器共存在一个系统内。DMA控制器可以是ISA或PS2结构。虽然ISA和PS2 DMA控制器略微不同,但它们都需要一组专门的信号以进行控制判优和数据传送。需要一DMA控制器来维持与现存硬件(I/O装置)的兼容性。
DMA控制器有特殊的功能,如要求判优,确定总线尺寸,DMA周期(例如,传输定时和端口计数),和各种操作模式(例如,单次/脉冲式/请求/级联)。DMA控制器一般地设置在标准的I/O总线上,这样没有标准的I/O总线就构不成系统。PCI总线对具有位于在PCI总线上的DMA控制器的系统不提供信号或支持。
在标准I/O总线上的I/O装置可能比接到PCI总线上的装置更少地面向性能和更多地需要DMA控制器的帮助以执行DMA周期(例如,没有内置的DMA控制器的8、16或32位的I/O装置)。当DMA控制器为不同类型的从装置管理DMA周期时,它需要动态确定总线尺寸,这指它需要知道一特定从装置的大小(8位,16位,等),并且以该装置的名义管理DMA周期。标准的I/O总线,例如AT
,ISA或MICROCHANNEL
总线一般支持这样动态确定总线尺寸。
但是因为PCI总线在结构上并没有设置这样动态确定总线大小的能力,所以PCI总线不能支持涉及DMA从装置的DMA周期。因此联接到其本身又联接到PCI总线的标准I/O桥的DMA从装置就不能由DMA控制器通过PCI总线控制的以它们的名义执行的DMA操作。然而,如果多总线系统结构要求在标准I/O总线的DMA从装置通过PCI总线对系统存储器进行存取时,这样的操作是必要的。
本发明的目的是为在通过标准总线桥与高性能总线(例如PCI总线)连接的标准I/O总线上的DMA从装置提供一支持DMA周期的机制,以便允许DMA控制器以从装置的名义通过PCI总线执行对系统存储器的DMA周期。通过确定允许系统DMA控制器总是存在在PCI总线上的对于标准I/O桥的边带接口就提供了该机制。通过使用边带,在任选扩展总线上的DMA从装置也能获得支持。此外,DMA特定的边带信号也可以使用现存的边带信号进行多路传输。
本发明解决了通过PCI总线以从I/O装置的名义支持DMA周期的问题。本发明定义了在DMA控制器和标准DMA兼容扩展总线之间提供必要联系的包含边带信号的PCI总线的扩展。一些边带信号利用判优信号进行多路传输,以便减少在PCI总线上实现DMA周期支持所必需的引线数量。
为了通过PCI总线以I/O装置的名义管理I/O周期,DMA控制器必须为正在管理I/O周期的I/O装置确定该装置的总线的大小(即该装置是8,16或32位的装置)。该信息是由多路传输边带信号提供的。该边带信号直接联接在DMA控制器和支持DMA兼容扩展总线的I/O桥之间。
图1是按本发明原理构成的信息处理系统的方框图;
图2是在图1的系统中所示的系统判优控制点的一实施例的方框图;
图3是在图1的系统中所示的系统判优控制点的另一实施例的方框图;
图4A是表示在相应于图2和图3所示的实施例的判优模式期间输入到系统判优控制点的定义的表;
图4B是表示在相应于图2和图3所示的实施例的允许模式期间输入到系统判优控制点的另一定义的表;
图5是表示多路传输的判优边带信号的表。
现参看图1,多总线信息处理系统10如图用标号10表示,包括:(ⅰ)处理器、高速缓冲存储器和存储器组合12,通过S-总线16联接到S-总线(系统总线)装置14和(ⅱ)主PCI装置18,通过主PCI总线22联接到S-总线装置中的一个主PCI主桥20。处理器、高速缓冲存器和存储器组合12,S-总线装置14,PCI装置18和在图1中示出的其它部件的更详细的描述将在下面给出。
处理器、高速缓冲存储器和存储器组合12包括中央处理单元(CPU)24,自检单元26,存储器控制器28,CPU高速缓冲存储器30和基本系统存储器32。CPU24的最佳实施例是英特尔公司的商标为ⅰ486的32位微处理器,可以考虑系统10使用其它类型的CPU来实现,特别是其它类型的486微处理器。自检电路26提供了一个在电源接通后对CPU 24进行自检的内置式自检电路(BIST)。自检电路也控制能被S-总线装置14的任一个包括在内的自检特性。
CPU 24通过CPU局部总线34联到自检电路26和存储器控制器28。存储器控制器28通过基本系统存储器总线36被联接到基本系统存储器32。存储器控制器28通过基本系统存储器总线36控制对基本系统存储器32的读和写操作,该操作不是由CPU 24通过CPU局部总线34建立就是由S-总线装置14通过S-总线16建立。因为存储器控制器具有管理两个总线操作的能力,所以可以同时管理在基本系统存储器总线36和CPU局部总线34上的操作。CPU局部总线32,基本系统存储器总线36和系统总线均是32位总线,它们当中任一个都包括其特有的数据,地址和控制信息路径(在图1中的“D”,“A”和“C”)。
基本系统存储器32提供整个系统的存储能力并且可以包括非交错存储器卡或交错存储器卡。CPU高速缓冲存储器30允许短时间存储不是从基本系统存储器32获得的信息就是从在系统10内位于其它地方的扩展存储器内获得的信息。例如,这样的扩展存储器可以设置在系统内的外部连接的I/O装置上。CPU高速缓冲存储器30可以包括随机存取存储器(RAM,没有示出),该存储器用来临时存取由CPU 24频每存取的基本系统存储器32的地址位置。CPU 24直接存取存储在CPU高速缓冲存储器30内的信息,然而存取存在基本系统存储32内的信息就必需由存储器控制器28来处理。
存储器控制器28通过基本系统存储器总线36控制着所有的对基本系统存储器32的存取。存储器控制器对基本系统存储器32建立系统存储器周期,在该周期内不是CPU24就是S-总线装置14中的一个通过存储器控制器28对基本系统存储器进行存取。在一个存取周期内,存储器控制器并不传送信息到系统总线上。然而,如果存储器控制器认定它所管理的操作是一个I/O周期,存储器控制器将信息传送到系统总线,以供S-总线装置对此进行存取。如果I/O周期是为一S-总线装置指定的,相应的S-总线装置就以一译码命令来响应存储器控制器。如果I/O操作是为主PCI装置18指定的,PCI主桥20就以一译码命令来响应存储器控制和传送I/O周期到相应的主PCI装置。
系统时钟模块38为S-总线装置14提供一单个时钟信号,和为CPU 24提供一对时钟信号。在最佳实施例中,提供给S-总线的时钟信号是33MHz。提供给CPU 24的两个时钟信号分别为33MHz和60MHz。CPU需要两个时钟信号是因为它的内部操作是66M,但通过CPU局部总线34的通讯是33MHz。
处理器、高速缓冲存储器和存储器组合12和S-总线装置之间的通讯是由存储器控制器28通过32位系统总线16进行管理的。如图1最佳实施例所示,还连接到S-总线的是直接存储器存取(DMA)控制器40、系统判优控制点(SACP)42、输入/输出(I/O)控制器44、PCMCIA控制器46和电源管理控制器48。在需要更完善的电源管理控制的情况下,任选电源管理控制器50也可联到电源管理控制器48上。S-总线16上的缓冲器52是在DMA控制器40和I/O控制器44的中间。如图1所示,当然可以考虑,除了如图所示的外,其它S-总线装置14也可联到总线16。
PCMCIA控制器46是直接联到PCMCIA卡槽54上。通过缓冲器58外部I/O装置56可以联接到PCMCIA卡槽54上。外部I/O装置56是由I/O控制器44控制的。联到I/O控制器上的是日历钟60和RAM模块62。I/O控制器44支持各种端口,包括鼠标端口64,串联端口66,并联端口68和键盘端口70。
除了支持在S-总线16上的S-总线装置14外,系统10也支持第二个高速、宽带宽总线,该总线在最佳实施例中是主PCI总线22。在系统10中的主PCI装置18通过主PCI总线22相互通讯。主PCI装置通过PCI主桥20和CPU、高速缓冲存储器和存储器组合12及联在S-总线16上的其它S-总线装置14进行通讯,该桥本身也是联到S-总线上的一S-总线装置。因此,PCI主桥20作为S-总线16和主PCI总线之间接口并为这两个总线和任何能联到这两个总线上的外部装置提供有效的通讯手段。
PCI主桥20是低等待时间的互联机构,通过该机构CPU 24或其它S-总线装置14可以对主PCI装置18或连在它们上面的装置进行直接存取。桥20也提供高性能路径,该路径允许主PCI装置或与其连接的装置迅速而直接对基本系统存储器32进行存取。此外,主桥20提供了所有必要的硬件以便在S-总线16和主PCI总线22之间提供一接口,所以数据能在这些总线之间进行传送。
主PCI总线22能够支持各种与PCI兼容的装置。如图1所示,这些装置可以包括图形控制器72,串联SCSI(小型计算机系统接口)控制器74,预留PCMCIA控制器76,标准I/O总线(例如ISA或MICROCHANNEL
(“MC-A”))桥78(在此也称为扩展桥)和PCI次桥80。但是,在图1所示的联到主PCI总线的装置只是实施PCI总线结构的系统的一个实例,因此,公开的示范性结构无论如何不打算用来限制本发明。
图形控制器72一般以VRAM82方式被提供存储能力,该存储能力使图型控制器缓冲在其内部的视频帧并能控制由PCI总线结构支持的任何已知的图形数据包。SCSI控制器74作为联到SCSI总线86的SCSI装置84和主PCI总线22之间的接口并能够控制由PCI总线结构所支持的任何一SCSI装置。预留PCMCIA控制器76与控制卡槽88连接并对其进行控制。
标准总线桥78作为联到标准(MC-A或ISA)总线92的I/O装置90和主PCI总线22之间的接口。通过次PCI总线96,次PCI装置94联接到PCI次桥80。任何数目的未识别次PCI装置94能连接到次PCI总线96。PCI次桥80作为联到次PCI总线96的次PCI装置94和主PCI总线22的接口。
DMA控制器40,PCI主桥20,和I/O控制器44控制着基本系统存储器32和在外部I/O装置56上或在标准I/O装置90上的扩展存储器之间的信息交换。DMA控制器40也为CPU、高速缓冲存储器和存储器组合12提供了三种功能。首先,DMA控制器48利用小型计算机子系统控制块(SCB)结构去构成DMA通道,这就避免了使用编程I/O去构成DMA通道的必要性。其次,DMA控制器提供了缓冲功能,以便最佳化在低速存储器扩展装置和通常较快的基本系统存储器32之间的数据传送。第三,DMA控制器提供了8通道、32位的直接基本系统存储器存取功能。当提供直接基本系统存储器存取功能时,DMA控制器40可以工作在两种模式中之一中。在第一种操作模式中,DMA控制器工作在编程I/O模式中,在该模式中,DMA控制器在功能上是CPU24的从装置。在第二种操作模式中,DMA控制器本身是在系统总线上的主装置。
DMA控制器40总是作为第三方总线主装置而起作用。它决不是数据的起源和目的地,但它在源单元和目的单元之间提供传送数据的手段。虽然在图上示出它是驻留在(联在)系统总线上,但DMA控制器可不必驻留在系统总线上。DMA控制器通常管理从存储器到I/O装置,或从I/O装置到存储器的数据传送。存储器可以是基本系统存储器32或是在外部I/O装置56上的外部存储器,或是标准I/O装置90上的外部存储器。
联在标准(例如ISA或MC-A)总线92上的标准I/O装置90可以是8位的装置,16位装置,或32位装置。本发明的PCI主桥20和系统判优控制点的设计能允许在(ⅰ)CPU24,(ⅱ)联在主PCI总线22上的主PCI装置18,(ⅲ)联在标准I/O总线92上的标准装置90和受I/O控制器44控制的外部I/O装置56的整个系统的基础上进行同时的判优。SACP 42作为标准I/O装置90,CPU 24,主PCI装置18和外部I/O装置56的判优器。
在图2和3给出个实现SACP 42的方框图。图2给出了当图1示出的系统不包括联在主PCI总线22上的标准总线桥78时所使用的系统判优控制点实施例的方框图。图3给出了当图1示出的系统包括联到主PCI总线的标准总线桥78时所使用的系统判优控制点的第二实施例的方框图。
首先参看图2,当不出现标准总线桥78时,所使用的SACP 42包括存储体判优控制点(BACP)100,PCI判优控制点(PACP)102,和直接连接的判优控制点(DACP)104。BACP 100对PACP 102和DACP 104请求对总线22进行控制进行判优。PACP102管理着由CPU 24和主PCI装置18交付给它的对主PCI总线的存取请求(总称“BANKO)请求。DACP104处理由I/O控制器44以它所控制的外部装置I/O装置56的名义交付给DACP 104的对主PCI总线请求。如以下参看图3所描述的那样,DACP 104也管理在包括与主PCI总线22连接的标准总线78的系统中,由标准总线桥78以与其连接的标准I/O装置90的名义提出的对主PCI总线存取请求。
由标准总线桥78和I/O控制器44提出的对主PCI总线请求也总称为“BANKI请求”。除管理由PACP 102和DACP 104提供的对主PCI总线存取请求外,BACP 100还适合于管理由PCI次桥80以联在其上的次PCI装置的名义提供的对主PCI总线请求(总称为“BANK2请求)。本发明可设想进一步的扩展以便包括不同于在图2和3示出的存储单元判优器(PACP 102,DACP 104和PCI次桥80)。如果其他PCI桥以联在PCI总线22上的多层结构被包括在系统内,那么这些其它的次PCI桥本身将在所联装置之间进行判优并且对BACP 100提出“BANKN”请求。
上述描述的分级结构为系统10提供了判优方案,在该方案中,(ⅰ)CPU和主PCI装置之间的判优的管理是独立于(ⅱ)由I/O控制器控制的外部I/O装置和联在标准总线桥78上(如有的话)的标准I/O装置之间的判优。PACP 102接收直接来自多达5个PCI装置18和CPU 24对PCI总线22进行取存的请求。5个PCI装置提供它们的请求到在PACP上的10条请求/批准线上,从请求0#到请求4#(这里使用的符号“#”表示负的激活信号)。PCI装置被准许通过准许线GNTO#到GNT4#对主PCI总线22进行存取。请求线和批准线是在主PCI装置18和PACP102之间的直接连线。
虽然CPU 24通过存储器控制器28对基本系统存储器进行存取,但如果CPU请求对主PCI总线22进行存取,那它必须象主PCI装置18提出请求那样进行竟争。一旦CPU 24获得了系统总线16的控制,主桥将在主PCI总线和系统总线之间提供总线主接口,并且提供PCU 24作为PCI的主控。虽然PCI主桥不执行判优,但它执行协议对话,缓冲和加速系统总线和PCI总线之间的匹配。
对CPU 24的主PCI主总线存取请求通过线BREQ直接提供到PACP 102,该信号作为抢先的信号(i486类型处理器的典型信号)送到PACP。通过CPU 24和PACP 102之间的专用线HOLD和HLDA,CPU24用一保持/保持认可协议。在系统的实施例中,其中CPU并不是i486结构,PACP-CPU接口是不知道的,因此除了i486的BREQ/HOLD/HLDA外,PACP还必须支持PCI请求/批准信号握手(CPUREQ#和CPUGNT#)。CPU和PCT装置的每一个为进行判优都有发往和从PACP 102返回的直接请求线和批准线。
PACP102可以以两种不同方式处理主PCI装置18和CPU24之间的未决请求。一种方法是循环调度式处理请求,其中PACP能够按顺序为未决请求服务。另一种方法是按固定的优先权管理请求。如果判优优先权分配每一个PCI装置18和CPU 24,那么第二种方法是可行的。特别是,CPU请求线BREQ/CPUREQ#和主PCI装置请求线REQOREQ4#都具有可编程优先级。可按涉及PCI装置带宽决定优先权级别。例如,具有宽带宽和低缓冲能力的PCI装置和具有较小带宽和/或较高缓冲能力的装置相比,应分配有较高的优先权。
不管采取那种方法,PACA102在BANKO请求中进行判优,并且确定哪一个PCI装置或CPU应保持其优先权,并且确定哪一个PCI装置或CPU应保持其优先权,并且在BANKO-REQ#线上提供选取的装置到BACP,并且同时还有其它存储体判优器(BANK1-REQ,BANK2-REQ#等)提供的请求。编程的BACP 104提供给每个存储体判优器选定的时间间隔,在该间隔中由存储体判优器选定的装置获准对主PCI总线22进行存取。通过BACP到批准线的输出(BANKO-GNT#,BANK1-GNT#,BANK2-GNT#,等)选择的装置获准对主PCI总线22进行存取。
如上面所解释,BACP 100是SACP 42中的最高级判优器。它对在整个系统内的基础上管理主PCI总线存取请求的各个单独存储体判优器所提供的请求进行判优。上面已经描述了第一个存储体判优器PACP 102(BANKO)的操作。第二个存储单元判优器DACP 104(BANK1)的操作描述如下。
DACP 104是在由I/O控制器44控制的外部I/O装置56之间进行判优(当在系统的实施例中不使用标准总线桥78时),或者当标准总线桥78包含在系统时,DACP 104是在外部I/O装置56和联在标准总线桥78上的标准I/O装置90之间进行判优。外部I/O装置56和外部I/O装置90可以是和微通道(MC-A)或和ISA结构相兼容的。虽然DACP可以实现响应ISA类型的控制信号,但从图2和3来看,如联在其上面的控制信号所示,DACP 104响应对的MC-A结构。
继续看图2(没有标准的总线桥),在直接联在MC-A装置支持106指定的区段,DACP 104接收了由I/O控制器44以外部I/O装置56的名义来的总线存取请求。这些请求是通过DPREEMPTIN#线实现的。DACP 104的直联MC-A装置支持部分106在判优和批准周期交替,以执行对竟争对主PCI总线22进行存取的外部I/O装置进行判优。DARBGNT#线的状态指明直联MC-A装置支持部分106是在判优周期还是在批准周期。通过DPREEMPTOUT线管理总线存取请求。DPREEMPTOUT#输出和DPREEMPTIN#输入遵守MC-A协议。直联MC-A装置支持部分106的其它入和出信号线将结合图3的内容加以描述。
联到或从图2中的DACP 104出来的桥-请求#,桥-批准#和桥-边带信号线均是不起作用的,因为没有接标准总线桥78。
然而,在图3中,系统10包括了联到主PCI总线22的标准总线(扩展)桥78。在这个实施例中,DACP104在由I/O控制器44控制的外部I/O装置56和联在由标准总线桥78支持的标准I/O总线92的标准I/O装置90之间进行判优,这些装置的每一个都竟争对初始PCI总线22进行存取。如同上面所解释的,外部I/O装置56和标准I/O装置90不是与MC-A兼容就是与ISA兼容。
请求0#/批准0#到请求4#/批准4#的5个请求/批准线对仍被主PCI装置18用来请求和被获准对PCI总线进行存取。然而,这些请求/批准是直联入第二个PCI判优控制点PACP 2 108而不是PACP 102。PACP2 108实际位于在标准总线桥78的内部并被级联到PACP102。PACP2 108在所联的主PCI随装置之间进行判优并且提供信号总线存取请求PACP2-请求#到主PACP102。判优优先权与它们在PACP 102内被管理的类似方式加以处理。PACP然后在CPU 24(在桥请求/CPU请求#线上提出的总线存取请求)和具有最高的优先权PCI装置(在PACP2-请求#线提出的总线存取请求)之间进行判优。通过PACP2批准#线,主PCI装置使它们对PCI总线存取的请求获得批准。
在图3的实施例中,由于在PCI装置之间判优是在SACP 42的外面进行处理的,联入到SACP或从其联出的请求/批准线的功能对图3的系统重新加以定义。图4是对应图2和图3示出的实施例的联接SACP 42引线的定义表。在系统不具有联在主PCI总线(图2)标准总线桥时由主PCI装置用来请求和获准对PCI总线22进行存取的五对请求/批准线请求0#和批准0#至请求4#和批准4#在当系统包括了标准部线桥78时(图3)又重新加以定义。因为PACP2 108处理主PCI装置部线存取请求在SACP 42的外面并且提供一单一请求到PACP102,REQ4#被得新定义为单一请求PACP2-请求#。类似地,GNT4被得新定义为从PACP至PACPC的单一批准线PACP2-GNT#。进入到PACP 102或从其出的请求0#/批准0#至请求3#批准3#均不起作用。
在图3的系统中有8根输入/输出信号线(请求0#/批准0#至请求3#/批准3#)不起作用,8个新的引线连线可用来作SACP 42的输入,SACP的输入是由PACP2所释放出来的。图3的系统需要这些输入/输出信号线以允许对标准I/O装置90的判优和外部I/O装置56同时发生。如图3所示,中心判优控制点CACP 110实际位于MC-A桥78上,管理MC-A装置90的判优。(在ISA装置的情况下,通过ISA-桥请求#和ISA-桥认可线,该装置判优可由与ISA-相兼容判优装置加以处理,因此ISA协议支持联到ISA相兼容的判优装置的装置直接发出请求和得到认可。)
通过发出PREEMPT#信号到CACP 110,一MC-A装置请求判优。CACP交替由ARBNT#线状态表示的判优和批准周期。在发出PREEMPT#信号时,CACP进入判优状态,在此期间MC-A装置驱动它们的判优识别输出(ARBID(0-3))。在300毫微秒后,最高优先权MC-A装置判优优先权识别仍保持在ARBID(0-3)线上。如果已经判别由CACP提出的请求具有的优先权超过I/O控制器44以外部I/O装置56的名义提出的请求优先权时,DACP激活桥-批准#信号线。(如图4所示,对应图2中系统无用的信号线请求3#/批准3#被重新定义为桥-请求#和桥-批准#信号线,联入或联出到DACP 104)。如果扩展桥78是包括在系统内,在判优周期内桥-请求#信号用来作为以扩展总线主控或DMA受控的名义提出请求,在DMA批准周期桥-请求#信号作为BURST#信号,在级联/总线主控操作时桥-请求信号表明传送的结束。当DACP 104批准对PCI总线22进行存取时,桥-批准信号指示MC-A装置90。判别批准#(ARBGNT#)线进入了批准状态和最高优先权MC-A装置判别它已经被选出了和它的总线存取请求已经被批准了。
那些一起在审理过程中的专利申请,申请号为07/777777,申请日为1991,10,15,标题为“使用判优保持控制总线分配”,和申请号为07/816116,申请日为1992,1,2,标题为“具有双总线结构的计算机系统的判优控制逻辑”,更详细地简明了CACP110的操作,这些专利申请的内容包括进去作为参考。
6个留下的输入进入SACP 42,请求0#/批准0#至请求2#/批准2#被重新定义为6个桥-边带信号(在图2的系统中是不用的)。桥-边带信号并没有在PCI结构说明书内加以定义,但要求用来支持判优和支持PCI总线上的DMA外部设备,例如联在标准总线桥78上的标准I/O装置90,以提供有效的PCI-IDA,或PCI-MC-A接口。桥-边带线用SACP 42直联到标准总线桥78。对看图4,这些桥-边带信号有不同的定义,这取决于标准总线桥78是与MC-A或是与ISA-兼容。6个边频带包括了识别信息(在MC-A中是ARBID(0)到ARBID(3),而在ISA中是ISA-DACK(0)至ISA-DACK(2)这些识别信息判断I/O装置提出的PCI总线存取请求。
参看本发明MC-A实施例,使用ARBID(0)至ARBID(3),桥边带信号线用来传送识别信息到涉及主PCI装置18和MC-A装置90请求存取PCI总线22的SACP 42。这些四根线的状态告诉PACP 102,初始PCI装置18获得由PACP2 108管理的管理的建立判优的过程,四根线的状态带理一步告诉DACP 104,MC-A装置90获得了在CACP 110管理下的获得建立判优过程。在提供识别主PCI装置提出对PACP2的总线存取请求和识别MC-A装置提出对CACP 110部线存取请求的信息时,PACP和DACP可以更公正地分别在(ⅰ)主PCI装置和CPU之间及(ⅱ)由扩展桥支持的I/O装置和直联外部I/O装置之间进行判优。
通过I/O控制器44涉及外部I/O装置56提出的PCI总线存储请求的识别信息是由从直联MC-A装置支持部分106来的DARBIN(0-3)输入到DARBOUT(0-3)输出加以传送的。各自的DARBIN和DARBOUT线是必要的,因为和CACP 110不同的是,直联MC-A装置支持部分106并不配有公开集合器双向判优识别线。否则,由直联MC-A装置支持部分106执行的判优如同它是在CACP 110中那样被管理。以这样的方式,DACP 104判别由CACP 110提出的请求是否比由I/O控制器44提出的请求有更高优先权并且把存储体1-请求#交给BACP。
所有的外部I/O装置56和标准的I/O装置90都分配有判优优先权级。DACP 104配有比较器,该比较器比较判优优先权级以判别那个装置应获准对PCI总线22进行存取。类似地,PACP 102判别是否由PACP2 108提出的请求优先级高于CPU 24的请求,并且提出存储体0-请求#到BACP 100。BACP是编程的并提供每一个存储体判优器特定的时间间隔,在该时间间隔内适当的存储器判优器假定以它所要进行判优的装置的名义控制PCI总线22。各个存储体判优器再把分给它们的时间再细分给与他们样关存储体装置。如果没有存储体提出请求,BACL停在PACP 102,因为这是CPU 24驻留的地方。CACP 110和PACP2 108两者需要判别信息。通过判优边带信号,该信息送往主判优器。图5是信号能多路传输的一种方法。
存储体判优点的任一个均有与其有关的输出到BACP 100的空闲和超时信号。就空闲信号而论(PACP 102的PACP-IDLE,DACP104的DACP-IDLE,和PCI次桥80的PSB-IDLE),每一个存储器判优器具有编程的批准的定时器和空闲的定时器。当其它存储体正在请求对PCI总线进行存取时,批准定时器确定将给予一个存储体的最大时间间隔,和确定多长时间存储体0-批准#至存储体-批准#信号将被激活。空闲定时器定义了在失去支总线进行存取之前装置能在PCI总线失去激活最大时间间隔。例如,如果已经获许对主PCI总线进行存取的一装置,在它占用总线时间已经到时之前,完成在总线上的数据传输空闲定时器将监示PCI总线的活动,如果在预定的时钟周期内并没检测出活动,就撤消对PCI总线的存取资格而分配给其它的请求装置。当一装置对初始PCI总线的存取权已经被撤回了,但它未能在预定的时间间隔撤离总线,超时信号(PACP 102的PACP-TOUT,DACP 104的DACP-TOUT,PCI第二桥80的PSB-TOUT)就被启动。
对CACP 110的BURST#输入为已经在标准I/O总线控制下并且能通过总线发脉冲式信息的MC-A提供了方法,并且表明它已经准备好执行脉冲式操作(通过标准I/O总线进行0多于一个数据的传送)。通过为脉冲式传送装置在批准的模式下维持标准I/O总线的控制CAPA 110响应该请求,直到在标准I/O总线上完经实现多个数据的传送。在完成在标准I/O总线上脉冲式传送后I/O装置取消在分段#请求线上的信号,CACP判别该I/O装置已脱离总线和开始下一个判优周期。在非脉冲式传送的情况下,在输入到CACP的S0/S1#,BURST#和CMD#信号线给出传送结束信号线时,CACP 110判别该I/O装置已经脱离总线。(通过DCHNLACT输入直联MC-A装置支持部分106判别外部I/O装置已经完成数据传输)。
除了允许上述判优分级系统外,桥-边带信号也受DMA控制器的监示,并且用来对超过PCI总线的DMA周期提供支持,并且来往于标准I/O装置90和一系统存储器32之间。为了支持通过PCI总线22的DMA周期,需要三种类别的信号:总线周期控制信号,判优控制信号和DMA控制信号。总线周期控制信号在PCI修改版本2.0说明书中进行了定义。在上述讨论的图4A对判优控制信号作了总结。DMA控制信号在图4B中作了总结并且在下面讨论。在SACP判优和操作模式中一些桥-边带信号被多路通讯以具有不同的功能。带有判优控制信号多路通讯的DMA控制信号减少了在PCI总线22上实现DMA周期支持的必要的引线数目。
一旦DACP 104通过桥-批准线指出一I/O装置90已经获准对PCI总线进行存取,在I/O桥78的CACP 110将批准状态识别信息传送给该I/O装置90(通过改变它ARBGNT#线的状态)。该I/O装置可以开始进行读或写周期。如果该I/O装置能够作为在标准I/O总线92上的总线主装置,DMA控制器40不必进行读或写操作。如果该I/O装置作为在I/O总线92上的从装置,DMA控制器40以该I/O装置的名义管理I/O周期。
为了以I/O装置的名义管理I/O周期,DMA控制器40必需判别它所要管理I/O周期为那个I/O装置的总线尺寸大小(那,该装置是8,16或32位装置)。该动态总线尺寸大小是以DMA控制器40的名义要求的以防止DMA控制器和在I/O桥78的I/O装置90之间的数据丢失。例如,DMA控制器对8位DMA从装置建立了32位写操作,32位写操作必须传换为4个8位写周期。如果I/O桥78缓冲32位信息和继续执行传换周期,和该I/O装置表明,它不能接收更多的数据,这就根本不可有或继续对I/O装置写或把数据返回到DMA控制器或系统存储器。在这种情况下的DMA控制器无法知道数据还没有写入到该I/O装置。因此,为防止在I/O桥78丢失数据,DMA控制器40需要动态地检测总线大小以允许它而不是I/O桥78支去执行转换周期。在检测它执行-I/O周期为该I/O装置的总线大小时,DMA控制器40能缓冲任何不为该I/O装置接收的任何数据和如果需要能顺序地对该装置进行下一个写周期。
然而,PCI总线22并不能在I/O桥78和DMA控制器40之间提供总线大小的信息。该信息是由多路传输的桥边带信号提供的。如图4B所示,几个但不是全部桥-边带信号进行多路传输。(在MC-A上下文中,在判优模式中批准0#(GNTO#)和批准1#(GNT1#)在批准模式分别重新定义为TC#和DMAACT)。)在一特定I/O周期最后一字节数据传送到或出桥时,TC#信号是由DMA控制器发出而由I/O桥78进行读的信号。DMAACT#表明是否DMA控制器已经启动,和由桥用来判别是否DMA从装置或者总线主装置已经获准。
如果DMAACT#没有发同出,在I/O总线92上的总线主装置已经获准,如上所述,在D0/S1#,脉冲式(BURST#)上已给出传送结束信号和CMD#输入到CACP,CACP 110判别总线主控装置已经脱离总线。然而,DMMACT发出信号(或称激活)向I/O桥78表明,DMA控制器40以I/O装置90的名义传送到或传送出存储器(I/O周期和不是存储器周期),而桥不必执行任何传换周期。在从多路传输的桥-边频带信号中判别I/O装置的类型(即,8,16,或32位)并且以该装置的名义执行转换周期,在这种情况下,MDA控制器执行转换周期,解释如下。
DMAACT#保持低直至所有读和写已经完成了。通过驱动返回到使用桥-请求信号DMA脉冲式信号(BURST#),I/O装置表明传输长度。(当最后的I/O读写发生时,I/O桥可能再次进入判优状态,SACP42必需保持批准状态直至DMAACT#线去激励表明DMA已经完成了通过PCI总线传送数据。)
在判优模式中的ARBID(1)和ARBID(2)在获准模式中分别再定义为BS16#和BS8#。这些信号中的每一个由DMA控制器读出。通过激活BS8# CACP 1110向DMA控制器表明,由PCI总线主装置获准的I/O装置是一个8位装置。类似地,由BS16#激励时,CACP 110表明,获准使用PCI的装I/O装置是16位装置。当BS16#和BS8#两者同时去激励时,指明是32位装置。在判优模式中的ARBID(3)在获准模式中重新定义为BSV#由I/O桥78激活的BSB#向DMA控制器表明在该时间内BS16#和BS8#信号是有效的。DMA控制器需要这三个信号BS16#,BS8#和BSV#识别该I/O装置并且以该装置的名义执行I/O周期,此时该I/O装置可为8,16,或32位装置,该三个信号进而用来确保相对于桥周期的时间TC#被驱动激活。
就标准I/O桥78和I/O总线92的ISA执行情况而论,在判优模式下的批准0#和批判1#在批准的模式下分别重新定义为TC#和DMAACT#。然而这并不需要别总线大小的信号BSV#,BS8#和BS16#,因为ISA总线支持八个通道的四个是为8位装置专用的和3个是为16位装置保留的。因此DMA控制器40知道每一个通道上装置的类型和对应这些线的桥-边带信号也不在ISA上下文中使用。
至此,为包括高性能总线例如PCI总线的多总线计算机系统的DMA周期逻辑的最佳实施例已经描述了。把上面的描述记在心中,然而,应理解,这描述仅作为实例描述的,发明并不局限在已描述的特殊的实施例中,在不脱离发明精神的前提下可以进行各种各样的重新安排,修改和替换。
Claims (11)
1、信息处理系统,包括中央处理单元(CPU);
一系统总线,联接所说的CPU到系统存储器,使得所说的CPU能读取数据或写数据到所说的系统存储器;
一接到所说CPU的第二系统总线;
一联接所说第二系统总线到外部设备总线的主桥;
一输入/输出(I/O)桥,联接所说的外部设备总线到标准的I/O总线,所说的标准I/O总线具有联到它上面的大量的标准I/O装置;和
一判优逻辑,在判优模式中,在竟争存取所说的标准I/O总线的大量的标准I/O装置之间进行判优,其中在批准的模式中,选出的标准I/O装置获准对所说的标准I/O总线进行存取;其特征是:还包括:
一直接存储器存取(DMA)控制器,以选中的标准I/O装置的名义执行DMA周期,其中数据在所说的系统存储器和所说选中I/O装置之间进行传送而不受到所说CPU的干预;和
使所说DMA周期能够通过所说外部总线被执行的直接存储器存取(DMA)支持逻辑。
2、权利要求1的系统,其特征是所说的DMA支持逻辑包括直联到带有所说I/O桥的所说DMA控制器的边带信号,所说的边带信号包括识别所选I/O装置总线尺寸大小的信息,所说的DMA控制器为所选装置执行所说DMA周期。
3、在计算机系统中使用的直接存储器存取(DMA)支持机构,它包括:通过第一系统总线联到系统存储器的一中央处理单元(CPU);(ⅱ)联到所说CPU的第二系统总线;(ⅲ)把所说第二系统总线联到外部总线的主桥;(ⅳ)把所说外部总线联到标准I/O总线的输入/输出(I/O)桥,所说的标准I/O总线具有联在它上面的大量的标准I/O装置;(ⅴ)判优逻辑,在判优模式中,在竟争对所说标准I/O总线进行存取的所说的大量的标准I/O装置中进行判优,其中在批准的模式时选中的标准I/O装置获准对所说的标准I/O总线进行存取;其特征是DMA支持机构还包括:
一直接存储器存取(DMA)控制器,它以所说选中标准I/D装置的名义执行DMA周期,其中数据是在所说系统存储器和所选I/D装置间传送而不受所说CPU的干涉;和
一直接存储器存取(DMA)支持逻辑,它能使所说MDA周期通过所说的外部总线被执行,所说的DMA支持逻辑包括直接联到带有I/O桥的所说DMA控制器的边带信号,所说边带信号包括识别所选I/O装置总线尺寸大小的信息,控制器为所选装置执行所说的DMA周期。
4、权利要求1或3的系统,其特征是外部总线遵循外部部件互联(PCI)结构。
5、权利要求1或3的系统,其特征是所说DMA控制器驻留在所说外部总线上。
6、权利要求1或3的系统,其特征是所说DMA控制器驻留在所说第二系统总线上。
7、权利要求1或3的系统,其特征地;所说的外部总线和所说的第二系统总线具有至少32位的数据宽度。
8、权利要求1或3的系统,其特征是所说的标准I/O总线遵循微通道结构。
9、权利要求1或3的系统,其特征是所说的标准I/O总线遵循ISA结构。
10、权利要求1或3的系统,其特征是所说的计算机系统还包括(ⅰ)驻留在所说第二系统总线并且联接所说第二系统总线到外部I/O总线的I/O控制器;(ⅱ)大量联到所说外部I/O总线上的外部I/O装置;和其中所说的DMA控制器以所说外部I/O装置的名义执行DMA周期,其中数据在所说系统存储器和所说外部I/O装置之间传送而不受所说CPU的干预。
11、权利要求1或3的系统,其特征是:当所说的判优逻辑在判优模式时,所说多路传输的边带信号执行第一功能,而当所说判优逻辑是在所说的批准模式时,该边频带信号执行第二功能。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/068,477 US5450551A (en) | 1993-05-28 | 1993-05-28 | System direct memory access (DMA) support logic for PCI based computer system |
US068,477 | 1993-05-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1098527A true CN1098527A (zh) | 1995-02-08 |
CN1069426C CN1069426C (zh) | 2001-08-08 |
Family
ID=22082827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN94108101A Expired - Lifetime CN1069426C (zh) | 1993-05-28 | 1994-05-26 | 信息处理系统 |
Country Status (10)
Country | Link |
---|---|
US (1) | US5450551A (zh) |
EP (1) | EP0628914B1 (zh) |
JP (1) | JP2505114B2 (zh) |
KR (1) | KR970000842B1 (zh) |
CN (1) | CN1069426C (zh) |
AT (1) | ATE186412T1 (zh) |
BR (1) | BR9402105A (zh) |
CA (1) | CA2124031C (zh) |
DE (1) | DE69421453T2 (zh) |
TW (1) | TW260769B (zh) |
Families Citing this family (110)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW276312B (zh) * | 1992-10-20 | 1996-05-21 | Cirrlis Logic Inc | |
US5805927A (en) * | 1994-01-28 | 1998-09-08 | Apple Computer, Inc. | Direct memory access channel architecture and method for reception of network information |
US5655151A (en) * | 1994-01-28 | 1997-08-05 | Apple Computer, Inc. | DMA controller having a plurality of DMA channels each having multiple register sets storing different information controlling respective data transfer |
US5828856A (en) * | 1994-01-28 | 1998-10-27 | Apple Computer, Inc. | Dual bus concurrent multi-channel direct memory access controller and method |
US5761450A (en) * | 1994-02-24 | 1998-06-02 | Intel Corporation | Bus bridge circuit flushing buffer to a bus during one acquire/relinquish cycle by providing empty address indications |
US5805834A (en) * | 1994-03-30 | 1998-09-08 | Zilog, Inc. | Hot reconfigurable parallel bus bridging circuit |
US5696917A (en) * | 1994-06-03 | 1997-12-09 | Intel Corporation | Method and apparatus for performing burst read operations in an asynchronous nonvolatile memory |
BR9507958A (pt) * | 1994-06-08 | 1998-05-26 | Intel Corp | Interface de conector de unidade de disco para uso em barramento de pci |
WO1996008773A2 (en) * | 1994-09-16 | 1996-03-21 | Cirrus Logic, Inc. | Pcmcia dma data bus mastering |
US5546590A (en) * | 1994-09-19 | 1996-08-13 | Intel Corporation | Power down state machine for PCMCIA PC card applications |
US5619726A (en) * | 1994-10-11 | 1997-04-08 | Intel Corporation | Apparatus and method for performing arbitration and data transfer over multiple buses |
US5619728A (en) * | 1994-10-20 | 1997-04-08 | Dell Usa, L.P. | Decoupled DMA transfer list storage technique for a peripheral resource controller |
US5555383A (en) * | 1994-11-07 | 1996-09-10 | International Business Machines Corporation | Peripheral component interconnect bus system having latency and shadow timers |
US5561820A (en) * | 1994-11-30 | 1996-10-01 | International Business Machines Corporation | Bridge for interfacing buses in computer system with a direct memory access controller having dynamically configurable direct memory access channels |
US5621902A (en) * | 1994-11-30 | 1997-04-15 | International Business Machines Corporation | Computer system having a bridge between two buses with a direct memory access controller and an alternative memory access controller |
US5623697A (en) * | 1994-11-30 | 1997-04-22 | International Business Machines Corporation | Bridge between two buses of a computer system with a direct memory access controller having a high address extension and a high count extension |
US5678064A (en) * | 1994-12-01 | 1997-10-14 | International Business Machines Corporation | Local bus-ISA bridge for supporting PIO and third party DMA data transfers to IDE drives |
US5642489A (en) * | 1994-12-19 | 1997-06-24 | International Business Machines Corporation | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management |
US5867717A (en) * | 1994-12-22 | 1999-02-02 | Texas Instruments Incorporated | Dynamic system clocking and address decode circuits, methods and systems |
US5835733A (en) * | 1994-12-22 | 1998-11-10 | Texas Instruments Incorporated | Method and apparatus for implementing a single DMA controller to perform DMA operations for devices on multiple buses in docking stations, notebook and desktop computer system |
US5568619A (en) * | 1995-01-05 | 1996-10-22 | International Business Machines Corporation | Method and apparatus for configuring a bus-to-bus bridge |
US6212589B1 (en) * | 1995-01-27 | 2001-04-03 | Intel Corporation | System resource arbitration mechanism for a host bridge |
US5596729A (en) * | 1995-03-03 | 1997-01-21 | Compaq Computer Corporation | First arbiter coupled to a first bus receiving requests from devices coupled to a second bus and controlled by a second arbiter on said second bus |
US5729762A (en) * | 1995-04-21 | 1998-03-17 | Intel Corporation | Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent |
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 |
US5761443A (en) * | 1995-06-07 | 1998-06-02 | Advanced Micro Systems, Inc. | Computer system employing a bus conversion bridge for interfacing a master device residing on a multiplexed peripheral bus to a slave device residing on a split-address, split-data multiplexed peripheral bus |
US6219754B1 (en) | 1995-06-07 | 2001-04-17 | Advanced Micro Devices Inc. | Processor with decompressed video bus |
US5978860A (en) * | 1995-06-07 | 1999-11-02 | Dell Usa, L.P. | System and method for disabling and re-enabling at least one peripheral device in a computer system by masking a device-configuration-space-access-signal with a disable or re-enable signal |
US5590377A (en) * | 1995-06-07 | 1996-12-31 | Ast Research, Inc. | Automatic control of distributed DMAs in a PCI bus system supporting dual ISA buses |
US5692219A (en) * | 1995-06-07 | 1997-11-25 | Dell Usa, Lp | System and method for disabling or re-enabling PCI-compliant devices in a computer system by masking the idsel signal with a disable or re-enable signal |
US5752081A (en) * | 1995-06-08 | 1998-05-12 | Vlsi Technology, Inc. | Signalling system and method for allowing a direct memory access (DMA) input/output (I/O) device on the peripheral component interconnect (PCI) bus to perform DMA transfers |
JP3576647B2 (ja) * | 1995-08-11 | 2004-10-13 | 株式会社東芝 | コンピュータシステム |
US5790897A (en) * | 1995-08-21 | 1998-08-04 | New Media Corp. | Plug-in computer card with internal audio speaker element |
US5644734A (en) * | 1995-08-24 | 1997-07-01 | Ncr Corporation | Method and apparatus for multiplexing bus connector signals with sideband signals |
US5752076A (en) * | 1995-08-31 | 1998-05-12 | Intel Corporation | Dynamic programming of bus master channels by intelligent peripheral devices using communication packets |
US5692211A (en) * | 1995-09-11 | 1997-11-25 | Advanced Micro Devices, Inc. | Computer system and method having a dedicated multimedia engine and including separate command and data paths |
US5784650A (en) * | 1995-09-11 | 1998-07-21 | Avanced Micro Devices, Inc. | System for increasing multimedia performance and other real time applications by including a local expansion bus and a multimedia bus on the computer system motherboard |
US5812800A (en) * | 1995-09-11 | 1998-09-22 | Advanced Micro Devices, Inc. | Computer system which includes a local expansion bus and a dedicated real-time bus and including a multimedia memory for increased multi-media performance |
US5784592A (en) * | 1995-09-11 | 1998-07-21 | Advanced Micro Devices, Inc. | Computer system which includes a local expansion bus and a dedicated real-time bus for increased multimedia performance |
US5805842A (en) * | 1995-09-26 | 1998-09-08 | Intel Corporation | Apparatus, system and method for supporting DMA transfers on a multiplexed bus |
US5682484A (en) * | 1995-11-20 | 1997-10-28 | Advanced Micro Devices, Inc. | System and method for transferring data streams simultaneously on multiple buses in a computer system |
US5754801A (en) * | 1995-11-20 | 1998-05-19 | Advanced Micro Devices, Inc. | Computer system having a multimedia bus and comprising a centralized I/O processor which performs intelligent data transfers |
US5905879A (en) * | 1995-11-20 | 1999-05-18 | Advanced Micro Devices, Inc. | System and method for transferring periodic data streams on a multimedia bus |
US5754807A (en) * | 1995-11-20 | 1998-05-19 | Advanced Micro Devices, Inc. | Computer system including a multimedia bus which utilizes a separate local expansion bus for addressing and control cycles |
US5797018A (en) * | 1995-12-07 | 1998-08-18 | Compaq Computer Corporation | Apparatus and method of preventing a deadlock condition in a computer system |
US5748921A (en) * | 1995-12-11 | 1998-05-05 | Advanced Micro Devices, Inc. | Computer system including a plurality of multimedia devices each having a high-speed memory data channel for accessing system memory |
JP3403284B2 (ja) * | 1995-12-14 | 2003-05-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理システム及びその制御方法 |
US5764929A (en) * | 1995-12-18 | 1998-06-09 | International Business Machines Corporation | Method and apparatus for improving bus bandwidth by reducing redundant access attempts |
US6148356A (en) * | 1995-12-27 | 2000-11-14 | Intel Corporation | Scalable computer system |
US5828865A (en) * | 1995-12-27 | 1998-10-27 | Intel Corporation | Dual mode bus bridge for interfacing a host bus and a personal computer interface bus |
US6134622A (en) * | 1995-12-27 | 2000-10-17 | Intel Corporation | Dual mode bus bridge for computer system |
US5859990A (en) * | 1995-12-29 | 1999-01-12 | Intel Corporation | System for transferring data segments from a first storage device to a second storage device using an alignment stage including even and odd temporary devices |
US5963721A (en) * | 1995-12-29 | 1999-10-05 | Texas Instruments Incorporated | Microprocessor system with capability for asynchronous bus transactions |
US5790814A (en) * | 1996-01-23 | 1998-08-04 | Dell U.S.A., L.P. | Technique for supporting semi-compliant PCI devices behind a PCI-to-PCI bridge |
KR0167726B1 (ko) * | 1996-01-30 | 1999-01-15 | 김광호 | 버스의 우선권 선택장치 |
US6317803B1 (en) | 1996-03-29 | 2001-11-13 | Intel Corporation | High-throughput interconnect having pipelined and non-pipelined bus transaction modes |
US5911051A (en) * | 1996-03-29 | 1999-06-08 | Intel Corporation | High-throughput interconnect allowing bus transactions based on partial access requests |
US5774744A (en) * | 1996-04-08 | 1998-06-30 | Vlsi Technology, Inc. | System using DMA and descriptor for implementing peripheral device bus mastering via a universal serial bus controller or an infrared data association controller |
US5845151A (en) * | 1996-04-08 | 1998-12-01 | Vlsi Technology, Inc. | System using descriptor and having hardware state machine coupled to DMA for implementing peripheral device bus mastering via USB controller or IrDA controller |
US5778194A (en) * | 1996-04-08 | 1998-07-07 | Symbios, Inc. | Method and apparatus for measuring performance of a computer bus |
SG77135A1 (en) * | 1996-04-26 | 2000-12-19 | Texas Instruments Inc | Method and system for assigning a channel number to a received data packet |
US5898892A (en) * | 1996-05-17 | 1999-04-27 | Advanced Micro Devices, Inc. | Computer system with a data cache for providing real-time multimedia data to a multimedia engine |
US5754884A (en) * | 1996-05-20 | 1998-05-19 | Advanced Micro Devices | Method for improving the real-time functionality of a personal computer which employs an interrupt servicing DMA controller |
US5748944A (en) * | 1996-05-31 | 1998-05-05 | International Business Machines Corporation | Apparatus for slave DMA emulation on a computer system bus |
US5748945A (en) * | 1996-05-31 | 1998-05-05 | International Business Machiens Corporation | Method for slave DMA emulation on a computer system bus |
US6000043A (en) * | 1996-06-28 | 1999-12-07 | Intel Corporation | Method and apparatus for management of peripheral devices coupled to a bus |
US5802269A (en) * | 1996-06-28 | 1998-09-01 | Intel Corporation | Method and apparatus for power management of distributed direct memory access (DDMA) devices |
US5748640A (en) * | 1996-09-12 | 1998-05-05 | Advanced Micro Devices | Technique for incorporating a built-in self-test (BIST) of a DRAM block with existing functional test vectors for a microprocessor |
US5867645A (en) * | 1996-09-30 | 1999-02-02 | Compaq Computer Corp. | Extended-bus functionality in conjunction with non-extended-bus functionality in the same bus system |
US5805836A (en) * | 1996-12-10 | 1998-09-08 | International Business Machines Corporation | Method and apparatus for equalizing grants of a data bus to primary and secondary devices |
US5907689A (en) * | 1996-12-31 | 1999-05-25 | Compaq Computer Corporation | Master-target based arbitration priority |
US5974496A (en) * | 1997-01-02 | 1999-10-26 | Ncr Corporation | System for transferring diverse data objects between a mass storage device and a network via an internal bus on a network card |
US5978866A (en) * | 1997-03-10 | 1999-11-02 | Integrated Technology Express, Inc. | Distributed pre-fetch buffer for multiple DMA channel device |
US6016525A (en) * | 1997-03-17 | 2000-01-18 | Lsi Logic Corporation | Inter-bus bridge circuit with integrated loopback capability and method for use of same |
US5909559A (en) * | 1997-04-04 | 1999-06-01 | Texas Instruments Incorporated | Bus bridge device including data bus of first width for a first processor, memory controller, arbiter circuit and second processor having a different second data width |
US6195593B1 (en) | 1997-09-03 | 2001-02-27 | Seiko Epson Corporation | Reusable modules for complex integrated circuit devices |
US6442632B1 (en) | 1997-09-05 | 2002-08-27 | Intel Corporation | System resource arbitration mechanism for a host bridge |
US6393508B2 (en) | 1997-09-30 | 2002-05-21 | Texas Instruments Incorporated | Method and apparatus for multiple tier intelligent bus arbitration on a PCI to PCI bridge |
US6049845A (en) * | 1997-11-05 | 2000-04-11 | Unisys Corporation | System and method for providing speculative arbitration for transferring data |
US6230219B1 (en) | 1997-11-10 | 2001-05-08 | International Business Machines Corporation | High performance multichannel DMA controller for a PCI host bridge with a built-in cache |
US6098133A (en) * | 1997-11-28 | 2000-08-01 | Motorola, Inc. | Secure bus arbiter interconnect arrangement |
US6233639B1 (en) | 1999-01-04 | 2001-05-15 | International Business Machines Corporation | Memory card utilizing two wire bus |
US6615291B1 (en) * | 1999-03-08 | 2003-09-02 | Minolta Co., Ltd. | DMA controller with dynamically variable access priority |
US6560740B1 (en) | 1999-08-03 | 2003-05-06 | Advanced Micro Devices, Inc. | Apparatus and method for programmable built-in self-test and self-repair of embedded memory |
US6463483B1 (en) * | 2000-01-19 | 2002-10-08 | Bae Systems Controls, Inc. | Low latency input-output interface |
US6636929B1 (en) | 2000-04-06 | 2003-10-21 | Hewlett-Packard Development Company, L.P. | USB virtual devices |
US6748492B1 (en) * | 2000-08-07 | 2004-06-08 | Broadcom Corporation | Deterministic setting of replacement policy in a cache through way selection |
US6732234B1 (en) * | 2000-08-07 | 2004-05-04 | Broadcom Corporation | Direct access mode for a cache |
US6848024B1 (en) | 2000-08-07 | 2005-01-25 | Broadcom Corporation | Programmably disabling one or more cache entries |
US6950893B2 (en) * | 2001-03-22 | 2005-09-27 | I-Bus Corporation | Hybrid switching architecture |
US6748495B2 (en) | 2001-05-15 | 2004-06-08 | Broadcom Corporation | Random generator |
US6715042B1 (en) * | 2001-10-04 | 2004-03-30 | Cirrus Logic, Inc. | Systems and methods for multiport memory access in a multimaster environment |
US7266587B2 (en) * | 2002-05-15 | 2007-09-04 | Broadcom Corporation | System having interfaces, switch, and memory bridge for CC-NUMA operation |
TW576977B (en) * | 2002-09-11 | 2004-02-21 | Sunplus Technology Co Ltd | Structure and method for planning control commands and data access |
US20040059862A1 (en) * | 2002-09-24 | 2004-03-25 | I-Bus Corporation | Method and apparatus for providing redundant bus control |
US7493429B2 (en) * | 2003-07-08 | 2009-02-17 | Microsoft Corporation | Communication of information via a side-band channel, and use of same to verify positional relationship |
JP2005078161A (ja) * | 2003-08-28 | 2005-03-24 | Canon Inc | 記録装置 |
US7930444B2 (en) * | 2005-06-30 | 2011-04-19 | Freescale Semiconductor, Inc. | Device and method for controlling multiple DMA tasks |
US8001430B2 (en) * | 2005-06-30 | 2011-08-16 | Freescale Semiconductor, Inc. | Device and method for controlling an execution of a DMA task |
US20090125647A1 (en) * | 2005-06-30 | 2009-05-14 | Citibank, N.A. | Device And Method For Executing A DMA Task |
WO2007003984A1 (en) | 2005-06-30 | 2007-01-11 | Freescale Semiconductor, Inc. | Device and method for arbitrating between direct memory access task requests |
US7525957B2 (en) * | 2005-09-01 | 2009-04-28 | Emulex Design & Manufacturing Corporation | Input/output router for storage networks |
WO2007083197A1 (en) | 2006-01-18 | 2007-07-26 | Freescale Semiconductor Inc. | Device having data sharing capabilities and a method for sharing data |
US7949815B2 (en) * | 2006-09-27 | 2011-05-24 | Intel Corporation | Virtual heterogeneous channel for message passing |
KR100868766B1 (ko) * | 2007-01-31 | 2008-11-17 | 삼성전자주식회사 | 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치 |
US7689758B2 (en) * | 2007-07-12 | 2010-03-30 | Atmel Corporation | Dual bus matrix architecture for micro-controllers |
US8255593B2 (en) * | 2009-09-29 | 2012-08-28 | Oracle America, Inc. | Direct memory access with striding across memory |
US9542251B2 (en) * | 2013-10-30 | 2017-01-10 | Oracle International Corporation | Error detection on a low pin count bus |
CN104731744B (zh) * | 2015-03-13 | 2017-07-04 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种基于SiP的可重构嵌入式计算机模块 |
US11743723B2 (en) * | 2019-09-16 | 2023-08-29 | Microstrategy Incorporated | Predictively providing access to resources |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5101478A (en) * | 1985-06-28 | 1992-03-31 | Wang Laboratories, Inc. | I/O structure for information processing system |
US5003465A (en) * | 1988-06-27 | 1991-03-26 | International Business Machines Corp. | Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during DMA read/write operations between a common memory and an input/output device |
US5276845A (en) * | 1988-08-25 | 1994-01-04 | Yamaha Corporation | Apparatus with multiple buses for permitting concurrent access to a first memory by a processor while a DMA transfer is occurring between a second memory and a communications buffer |
US5083259A (en) * | 1988-12-07 | 1992-01-21 | Xycom, Inc. | Computer bus interconnection device |
JP2986176B2 (ja) * | 1990-05-11 | 1999-12-06 | 株式会社日立製作所 | バス権制御方式およびバスシステム |
EP0472274A1 (en) * | 1990-08-24 | 1992-02-26 | International Business Machines Corporation | Data processing apparatus having connectors to receive system components |
CA2051029C (en) * | 1990-11-30 | 1996-11-05 | Pradeep S. Sindhu | Arbitration of packet switched busses, including busses for shared memory multiprocessors |
US5301282A (en) * | 1991-10-15 | 1994-04-05 | International Business Machines Corp. | Controlling bus allocation using arbitration hold |
US5265211A (en) * | 1992-01-02 | 1993-11-23 | International Business Machines Corporation | Arbitration control logic for computer system having dual bus architecture |
US5280623A (en) * | 1992-03-04 | 1994-01-18 | Sun Microsystems, Inc. | Versatile peripheral bus |
-
1993
- 1993-05-28 US US08/068,477 patent/US5450551A/en not_active Expired - Lifetime
-
1994
- 1994-05-20 CA CA002124031A patent/CA2124031C/en not_active Expired - Lifetime
- 1994-05-24 JP JP6108859A patent/JP2505114B2/ja not_active Expired - Lifetime
- 1994-05-25 DE DE69421453T patent/DE69421453T2/de not_active Expired - Lifetime
- 1994-05-25 AT AT94303783T patent/ATE186412T1/de not_active IP Right Cessation
- 1994-05-25 EP EP94303783A patent/EP0628914B1/en not_active Expired - Lifetime
- 1994-05-26 CN CN94108101A patent/CN1069426C/zh not_active Expired - Lifetime
- 1994-05-26 KR KR1019940011537A patent/KR970000842B1/ko not_active IP Right Cessation
- 1994-05-27 BR BR9402105A patent/BR9402105A/pt not_active IP Right Cessation
- 1994-08-12 TW TW083107407A patent/TW260769B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
CN1069426C (zh) | 2001-08-08 |
DE69421453D1 (de) | 1999-12-09 |
EP0628914A1 (en) | 1994-12-14 |
KR970000842B1 (ko) | 1997-01-20 |
CA2124031C (en) | 1999-08-24 |
CA2124031A1 (en) | 1994-11-29 |
ATE186412T1 (de) | 1999-11-15 |
JPH06337840A (ja) | 1994-12-06 |
US5450551A (en) | 1995-09-12 |
EP0628914B1 (en) | 1999-11-03 |
DE69421453T2 (de) | 2000-05-18 |
JP2505114B2 (ja) | 1996-06-05 |
TW260769B (zh) | 1995-10-21 |
BR9402105A (pt) | 1994-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1069426C (zh) | 信息处理系统 | |
US7761642B2 (en) | Serial advanced technology attachment (SATA) and serial attached small computer system interface (SCSI) (SAS) bridging | |
CN1205562C (zh) | 总线系统的分隔事务协议 | |
US6119196A (en) | System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates | |
US6493776B1 (en) | Scalable on-chip system bus | |
JP5872560B2 (ja) | 高速メモリ・システム | |
US7305510B2 (en) | Multiple master buses and slave buses transmitting simultaneously | |
JP4083987B2 (ja) | 多重レベル接続識別を備えた通信システム | |
US6052738A (en) | Method and apparatus in a packet routing switch for controlling access at different data rates to a shared memory | |
US8244950B2 (en) | Buffering non-posted read commands and responses | |
US4937734A (en) | High speed bus with virtual memory data transfer and rerun cycle capability | |
US7797467B2 (en) | Systems for implementing SDRAM controllers, and buses adapted to include advanced high performance bus features | |
CN1179283C (zh) | 数据通信的方法和数据通信的集线器 | |
AU628407B2 (en) | High speed bus with virtual memory data transfer capability | |
US7016994B2 (en) | Retry mechanism for blocking interfaces | |
CN1095127C (zh) | 用于处理器类型和总线协议变化的通用结构的计算机系统 | |
CN1922598A (zh) | 用于支持pci桥中的多功能pci设备的延迟事务的方法与装置 | |
CN1636198B (zh) | 用于传送流动分组的装置、系统和方法 | |
US6604159B1 (en) | Data release to reduce latency in on-chip system bus | |
JP3377797B2 (ja) | 複数のデータ処理エージェントの間でデータを転送するバスにおいて、第1のエージェントがサービスの必要を第2のエージェントへ知らせる方法 | |
CN1337625A (zh) | 温备用双工设备及其操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CX01 | Expiry of patent term |
Expiration termination date: 20140526 Granted publication date: 20010808 |