CN101044466A - 用于优化网络中的数据传送的方法和系统 - Google Patents
用于优化网络中的数据传送的方法和系统 Download PDFInfo
- Publication number
- CN101044466A CN101044466A CNA2005800318193A CN200580031819A CN101044466A CN 101044466 A CN101044466 A CN 101044466A CN A2005800318193 A CNA2005800318193 A CN A2005800318193A CN 200580031819 A CN200580031819 A CN 200580031819A CN 101044466 A CN101044466 A CN 101044466A
- Authority
- CN
- China
- Prior art keywords
- data
- host computer
- computer system
- devices
- plural devices
- 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.)
- Pending
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供一种用于将数据从主机系统传送到多个装置的方法和系统。每一装置可耦合到具有不同串行速率的链路,用于从所述主机系统接受数据。所述系统包含多个可编程的DMA信道,所述DMA信道经编程以同时用接收装置将接受数据的速率来传输数据。所述方法包含对DMA信道进行编程,所述DMA信道可用与所述接收装置将接受数据的速率相似的速率来传输数据。
Description
技术领域
本发明涉及联网系统,且更确切地说涉及对直接存储器存取(“DMA”)信道进行编程,以便用与接收装置可接受数据的速率相似的速率来传输数据。
背景技术
在多个存储器存储装置可供各种主机计算系统利用的情况下,通常使用存储区域网络(“SAN”)。SAN中的数据通常通过各种控制器/适配器从多个主机系统(包含计算机系统)移动到存储系统。
主机系统通常使用“PCI”总线接口经由主机总线适配器(“HBA”,也可称作“控制器”和/或“适配器”)与存储系统通信。PCI表示外围组件互连,这是由IntelCorporation提出的一种局域总线标准。PCI标准全文以引用的方式并入本文中。大多数现代计算系统除了较普遍的扩展总线外还包含PCI总线。PCI是可以33,66或133MHz的时钟速度运行的64位总线。
PCI-X是与现有的使用PCI总线的PCI卡兼容的另一标准总线。PCI-X将PCI的数据传送速率从132MBps改进到高达每秒1千兆位。PCI-X标准(全文以引用的方式并入本文中)由IBM,Hewlett Packard Corporation以及Compaq Corporation提出,以提高高带宽装置(例如,千兆位以太网标准和光纤信道标准)以及作为群集的一部分的处理器的性能。
也使用各种其它标准接口来将数据从主机系统移动到存储装置。光纤信道是这样一种标准。光纤信道(全文以引用的方式并入本文中)是美国国家标准学会(ANSI)提出的一组标准,其提供存储用的串行传输协议和网络协议,例如HIPPI,SCSI,IP,ATM以及其它协议。光纤信道提供满足信道和网络用户两者的要求的输入/输出接口。
光纤信道支持三种不同的拓扑:点对点、仲裁环路以及光纤信道结构。点对点拓扑将两个装置直接附接。仲裁环路拓扑将装置附接在环路中。光纤信道结构拓扑将主机系统直接附接到一结构,再将其连接到多个装置。光纤信道结构拓扑允许若干种媒体类型互连。
iSCSI是基于小型计算机系统接口(“SCSI”)的另一标准(全文以引用的方式并入本文中),其使得主机计算机系统能够与多种外围装置(包含磁盘和磁带装置、光学存储装置以及打印机和扫描仪)一起执行块数据输入/输出(“I/O”)操作。
主机系统与外围装置之间的传统SCSI连接是通过并行线缆进行的,且受到距离和装置支持约束条件的限制。对于存储应用,开发出iSCSI以利用基于光纤信道和千兆位以太网标准的网络架构。iSCSI在已建立的联网基础设施上利用SCSI协议,并界定用于在TCP/IP网络上启用块存储应用的构件。iSCSI界定SCSI协议与TCP/IP的映射。
如今SANS较为复杂,且以各种速率将数据从存储子系统移动到主机系统,所述速率例如为每秒1千兆位(可称为“Gb”或“Gbps”)、2Gb、4Gb、8Gb和10Gb。传送速率的差别可导致以下关于图1C所描述的瓶颈。值得注意的是,虽然以下实例是关于使用光纤信道标准的SAN,但问题可能会出现在使用其它任何标准或协议的任何联网环境中。图1C展示连接到结构140以及装置141、142和143的主机系统200的实例。具有控制器106以及端口138和139的主机系统(包含计算机、文件服务器系统或类似装置)200耦合到结构140。交换结构140又耦合到装置141、142和143。装置141、142和143可为独立的磁盘存储系统或多个磁盘存储系统(例如,RAID系统,如下所述)。装置141、142和143以不同链路数据传送速率耦合到结构140。举例来说,装置141具有以1Gb操作的链路,装置142具有以2Gb操作的链路,且装置143具有以4Gb操作的链路。
主机系统200可使用高速链路来传送数据,例如,用10Gb链路分别向装置141、142和143发送数据。交换结构140通常先使用数据缓冲器144来存储主机系统200发送的数据,然后所述数据才被传送到连接的装置中的任何一者。结构140试图通过使用标准缓冲和流控制技术来吸收传送速率上的差别。
当使用高速链路(例如,10Gb)的装置(例如,主机系统200)将数据发送给耦合到以较低速率(例如,1Gb)操作的链路的装置时会出现问题。当主机系统200将数据传送到期望用于装置141、142和/或143的交换结构140时,数据缓冲器144会变满。一旦缓冲器145变满,便触发标准光纤信道流控制过程。这会向发送装置(在此实例中为主机系统200)施加反压力。此后,主机系统200必须将其数据传输速率降低为接收装置的链路速率。这会导致高速带宽降级。
这一问题的一个原因在于,通常发送装置(例如,主机系统200)中的DMA信道经设置以用于待发送的整个数据块。一旦帧传送速率因反压力而下降,DMA信道设置就会被卡住,直到传送完成为止。因此,需要这样一种系统和方法:其允许主机系统使用基于接收装置接收数据的能力的数据传送速率。
发明内容
在本发明的一个方面中,提供一种用于将数据从主机系统传送到多个装置的系统。每一装置可耦合到具有不同串行速率的链路,用于从主机系统接受数据。所述系统包含多个DMA信道,所述DMA信道同时操作且经编程以用与接收装置将接受数据的速率相似的速率来传输数据。
在本发明的另一方面中,提供一种用于将数据从主机系统传送到多个装置的电路。所述电路包含多个DMA信道,所述DMA信道同时操作且经编程以用与接收装置将接受数据的速率相似的速率来传输数据。
在本发明的又一方面中,提供一种用于从耦合到多个装置的主机系统传送数据的方法,其中所述多个装置可能以不同的串行速率接受数据。所述方法包含对多个DMA信道进行编程,所述DMA信道可同时用与接收装置将接受数据的速率相似的速率来传输数据。
在本发明的又一方面中,高效地使用高速数据传送链路来基于接收装置的接受速率传送数据。提供这个简要概括以便可快速地了解本发明的性质。通过参看以下关于附图对本发明的优选实施例所作的详细描述,可实现对本发明的更为彻底的了解。
附图说明
现在将参看优选实施例的附图来描述本发明的前述特征及其它特征。在附图中,相同组件具有相同参考标号。所说明的实施例的意图是说明但不限制本发明。附图包含以下各图:
图1A是展示SAN的各个组件的方框图;
图1B是根据本发明一个方面的主机总线适配器的方框图,所述适配器使用多个可编程的DMA信道来针对不同I/O(输入/输出)用不同速率传输数据;
图1C展示使用多种传送速率从而导致高速带宽降级的光纤信道系统的方框图;
图1D展示根据本发明一个方面的传输方DMA模块的方框图;
图2是根据本发明一个方面所使用的主机系统的方框图;和
图3是根据本发明一个方面,用于将多个DMA信道编程为针对不同I/O以不同速率传输数据的可执行步骤的过程流程图;和
图4展示RAID拓扑,其可使用本发明的适应性方面。
不同图中使用相似参考标号指示相似或相同项目。
具体实施方式
以下定义是依照其通常(但并非专门)在实施本发明的各个适应性方面的光纤信道环境中使用的情况提供的。
“光纤信道ANSI标准”:所述标准全文以引用的方式并入本文中,其描述用于支持与IPI、SCSI、IP、ATM等相关联的其它高级协议的高性能串行链路的物理接口、传输和信令协议。
“结构(Fabric)”:一种将各种与其附接的端口互连且能够通过使用FC-2帧标题中提供的目的地识别符来路由光纤信道帧的系统。
“RAID”:廉价磁盘冗余阵列,包含使用提供对多个磁盘的存取的交错存储技术连接的存储装置。
“端口”:泛指N.Sub--端口或F.Sub--端口。
为了便于了解优选实施例,将描述SAN、主机系统和HBA的总体架构和操作。接着将参考主机系统和HBA的总体架构来描述优选实施例的具体架构和操作。
SAN概述:
图1A展示SAN系统100,其使用HBA 106(称作“适配器106”),用于使用光纤信道存储区域网络114和115在主机系统((例如,图1C中的200)具有主机存储器101)与各种系统(例如,存储子系统116和121、磁带库118和120以及服务器117)之间通信。主机系统200使用驱动器102,所述驱动器102经由适配器106使用输入/输出控制块(“IOCB”)来协调数据传送。
在主机存储器101中维持请求队列103和响应队列104,用于使用适配器106来传送信息。主机系统200经由PCI总线105通过PCI核心模块(接口)137与适配器106通信,如图1B所示。
主机系统200:
图2展示主机系统200的方框图,所述主机系统200代表计算机、服务器或其它类似装置,其可耦合到光纤信道结构以便于进行通信。一般来说,主机系统200通常包含主机处理器202,所述主机处理器202耦合到计算机总线201以用于处理数据和指令。在本发明的一个方面中,主机处理器202可为Intel CorpTM制造的Pentium系列微处理器。
计算机可读易失性存储器单元203(例如,也图示为系统存储器101(图1A)且在本说明书中可互换使用的随机存取存储器单元)可与总线201耦合,以用于为主机处理器202和/或主机系统200的其它此类系统临时存储数据和指令。
计算机可读非易失性存储器单元204(例如,只读存储器单元)也可与总线201耦合,以用于为主机处理器202存储非易失性数据和指令。数据存储装置205用于存储数据,且可为磁盘或光盘。
HBA 106:
图1B展示适配器106的方框图。适配器106包含传输和接收方的处理器(也可称作“定序器”)112和109,分别用于处理从存储子系统接收的数据和将数据传输到存储子系统。此背景下的传输路径是指经由适配器106从主机存储器101到存储系统的数据路径。接收路径是指经由适配器106来自存储子系统的数据路径。值得注意的是,只有一个处理器用于接收和传输路径,且本发明并不限于任何特定数目/类型的处理器。缓冲器111A和111B分别用于在接收和传输路径中存储信息。
除了接收和传输路径上的专用处理器之外,适配器106还包含处理器106A,其可为精简指令集计算机(“RISC”),用于执行适配器106中的各种功能。
适配器106还包含光纤信道接口(也称作光纤信道协议管理器“FPM”)113A,其分别在接收和传输路径中包含FPM 113B和113。FPM 113B和FPM 113允许数据移动到装置141、142和143(如图1C所示)以及从装置141、142和143中移动出来。
适配器106还通过本机存储器接口122(分别经由连接116A和116B(图1A))耦合到外部存储器108和110(下文中可互换地指代)。提供本机存储器接口122用于管理本机存储器108和110。本机DMA模块137A用于获得存取权以从本机存储器(108/110)中移动数据。
适配器106还包含串行/解串器(“SERDES”)136,用于将数据从10位格式转换成8位格式和进行相反的转换。
适配器106进一步包含:请求队列DMA信道(0)130、响应队列DMA信道131、请求队列(1)DMA信道132,所述DMA信道与请求队列103和响应队列104介接;以及命令DMA信道133,用于管理命令信息。
接收和传输路径均分别具有DMA模块129和135。传输路径也具有调度器134,其耦合到处理器112并对传输操作进行调度。多个DMA信道在传输路径上同时运行,且经设计以用与装置可接收数据的速率相似的速率来发送帧分组数据。仲裁器107在多个DMA信道请求之间进行仲裁。
DMA模块一般(例如,下文参看图1D描述的135,和129)用于在存储器位置之间或者在存储器位置与输入/输出端口之间执行传送。DMA模块通过用传送控制信息对DMA单元中的控制寄存器进行初始化来在不涉及微处理器的情况下运作。传送控制信息一般包含源地址(待传送的数据块的开始处的地址)、目的地地址和数据块的大小。
对于写入命令,处理器202在系统存储器101中建立共享的数据结构。此后,响应于所述写入命令,将信息(数据/命令)从主机存储器101移动到缓冲存储器108。
处理器112(或106A)确定接收端(装置/链路)可接受数据的数据速率。基于接收端的接受速率,将DMA信道编程为以该速率传送数据。可使用光纤信道扩展链路服务(ELS)或通过其它手段(例如发送的主机系统(或发送装置)与接收装置之间的通信)来获知接收装置的链路速度。可将多个DMA信道编程为以不同速率同时传输数据。
传输(“XMT”)DMA模块135:
图1D展示具有多个DMA信道147、148和149的传输方(“XMT”)DMA模块135的方框图。值得注意的是,本发明的适应性方面不限于任何特定数目的DMA信道。
模块135耦合到PCI核心137中的状态机146。传输调度器134(图1B所示)对DMA信道(147、148和149)进行配置,以便用与目的地装置的接收速率相似的速率向仲裁器107进行请求。这会将来自多个环境的帧交错到多个装置,并因此高效地使用高速链路带宽。
数据从帧缓冲器111B移动到SERDES 136,SERDES 136将串行数据转换成并行数据。来自SERDES 136的数据以适当的装置可接受数据的速率移动到所述装置。
图3展示根据本发明一个方面,用于通过将多个DMA信道编程为针对不同I/O以不同速率传输数据来传送数据的可执行过程步骤的过程流程图。
详细参看图3,在步骤S301中,主机处理器202接收传送数据的命令。所述命令遵守上文定义的光纤信道协议。主机驱动器102在系统存储器101中写入关于命令的预备信息(IOCB),并更新邮箱(未图示)中的请求队列指针。
在步骤S302中,处理器106A读取IOCB、确定要执行什么操作(即,读取或写入)、要传送多少数据、数据定位在系统存储器101中的哪个位置,以及接收装置可接收数据的速率(对于写入命令)。
在步骤S303中,处理器106A在本机存储器(即,108或110)中建立数据结构。
在步骤S304中,将DMA信道(147、148或149)编程为用与接收装置的链路传送速率相似的速率传输数据。如上所述,可在登录期间以及主机系统200与装置之间的通信起始时得到此信息。可将多个DMA信道编程为针对不同I/O操作而以不同速率同时传输数据。
在步骤S305中,DMA模块135向仲裁器107发送获得对PCI总线的存取权的请求。
在步骤S306中,提供对特定DMA信道的存取权,并将数据从缓冲存储器108(和/或110)传送到帧缓冲器111B。
在步骤S307中,将数据移动到SERDES模块136,以供经由结构140传输到适当的装置。数据传送遵守上文定义的各种光纤信道协议。
在本发明的一个方面中,上述过程可用于RAID环境。在RAID拓扑中,数据存储在多个磁盘上,且存储系统可包含许多可用一个或一个以上RAID级别配置的磁盘存储装置。
图4展示可使用本发明一个方面的RAID拓扑的简单实例。图4展示RAID控制器300A,其使用端口305和306而耦合到多个磁盘301、302、303和304。光纤信道结构140通过HBA 106耦合到RAID控制器300A。
可如上文所述将多个DMA信道编程为在接收链路的传送速率低于传输速率时用不同速率同时传输数据。
在此描述内容中,术语存储装置、系统、磁盘、磁盘驱动器以及驱动器可互换使用。所述术语具体包含具有可旋转底板或圆盘的磁性存储装置、数字视频光盘(DVD)、CD-ROM或CD读/写装置、抽取式盒式媒体(不论是磁性、光学、磁光)等。所属领域的一般技术人员将了解本文提供的描述内容背景下的细微差别。
虽然已参照具体实施例描述了本发明,但这些实施例只是说明性的而并没有限制性。根据本揭示内容和所附权利要求书,将了解本发明的许多其它应用和实施例。上述适应性方面适用于链路传送速率之间存在区别的任何联网环境。
Claims (15)
1.一种用于将数据从一主机系统传送到复数个装置的系统,其中所述复数个装置耦合到可能具有不同串行速率的链路以从所述主机系统接受数据,所述系统包括:
复数个可编程的DMA信道,其同时操作以便用一与所述复数个装置将接受数据的一速率相似的速率传输数据。
2.根据权利要求1所述的系统,其进一步包括:
仲裁逻辑,其从一特定DMA信道接收向一装置传送数据的请求。
3.根据权利要求1所述的系统,其中所述主机系统是一存储区域网络的一部分。
4.根据权利要求1所述的系统,其中所述复数个装置是光纤信道装置。
5.根据权利要求1所述的系统,其中所述复数个装置是非光纤信道装置。
6.根据权利要求1所述的系统,其中用一结构来将所述主机系统耦合到所述复数个装置。
7.一种用于将数据从一主机系统传送到复数个装置的电路,其中所述复数个装置耦合到可能具有不同串行速率的链路以从所述主机系统接受数据,所述电路包括:
复数个可编程的DMA信道,其同时操作以便用一与所述复数个装置将接受数据的一速率相似的速率传输数据。
8.根据权利要求7所述的电路,其进一步包括:
仲裁逻辑,其从一特定DMA信道接收向一装置传送数据的请求。
9.根据权利要求7所述的电路,其中所述主机系统是一存储区域网络的一部分。
10.根据权利要求7所述的电路,其中所述复数个装置是光纤信道装置。
11.根据权利要求7所述的电路,其中所述复数个装置是非光纤信道装置。
12.一种用于将数据从主机系统传送到复数个装置的方法,其中所述复数个装置耦合到可能具有不同串行速率的链路以从所述主机系统接受数据,所述方法包括:
将复数个DMA信道编程为用一与一接收装置将接受数据的一速率相似的速率同时传输数据;和
用一与所述接收装置将接受所述数据的一速率相似的数据速率从一存储器缓冲器传送数据。
13.根据权利要求12所述的方法,其中所述主机系统是一存储区域网络的一部分。
14.根据权利要求12所述的方法,其中所述复数个装置是光纤信道装置。
15.根据权利要求12所述的方法,其中所述复数个装置是非光纤信道装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/948,404 | 2004-09-23 | ||
US10/948,404 US20060064531A1 (en) | 2004-09-23 | 2004-09-23 | Method and system for optimizing data transfer in networks |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101044466A true CN101044466A (zh) | 2007-09-26 |
Family
ID=35677650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800318193A Pending CN101044466A (zh) | 2004-09-23 | 2005-09-07 | 用于优化网络中的数据传送的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20060064531A1 (zh) |
EP (1) | EP1810161A1 (zh) |
CN (1) | CN101044466A (zh) |
WO (1) | WO2006036468A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106133600A (zh) * | 2014-12-10 | 2016-11-16 | 互应化学工业株式会社 | 感光性树脂组合物、阻焊剂组合物和被覆盖的印刷线路板 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7930462B2 (en) * | 2007-06-01 | 2011-04-19 | Apple Inc. | Interface controller that has flexible configurability and low cost |
US8284792B2 (en) * | 2007-06-01 | 2012-10-09 | Apple Inc. | Buffer minimization in interface controller |
US7720064B1 (en) * | 2007-12-21 | 2010-05-18 | Qlogic, Corporation | Method and system for processing network and storage data |
US8391300B1 (en) * | 2008-08-12 | 2013-03-05 | Qlogic, Corporation | Configurable switch element and methods thereof |
US8225004B1 (en) * | 2010-03-31 | 2012-07-17 | Qlogic, Corporation | Method and system for processing network and storage data |
Family Cites Families (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4268906A (en) * | 1978-12-22 | 1981-05-19 | International Business Machines Corporation | Data processor input/output controller |
US4783739A (en) * | 1979-11-05 | 1988-11-08 | Geophysical Service Inc. | Input/output command processor |
US4333143A (en) * | 1979-11-19 | 1982-06-01 | Texas Instruments | Input process sequence controller |
US4449182A (en) * | 1981-10-05 | 1984-05-15 | Digital Equipment Corporation | Interface between a pair of processors, such as host and peripheral-controlling processors in data processing systems |
US4777595A (en) * | 1982-05-07 | 1988-10-11 | Digital Equipment Corporation | Apparatus for transferring blocks of information from one node to a second node in a computer network |
US4549263A (en) * | 1983-02-14 | 1985-10-22 | Texas Instruments Incorporated | Device interface controller for input/output controller |
US4783730A (en) * | 1986-09-19 | 1988-11-08 | Datapoint Corporation | Input/output control technique utilizing multilevel memory structure for processor and I/O communication |
US5276807A (en) * | 1987-04-13 | 1994-01-04 | Emulex Corporation | Bus interface synchronization circuitry for reducing time between successive data transmission in a system using an asynchronous handshaking |
US4803622A (en) * | 1987-05-07 | 1989-02-07 | Intel Corporation | Programmable I/O sequencer for use in an I/O processor |
US5129064A (en) * | 1988-02-01 | 1992-07-07 | International Business Machines Corporation | System and method for simulating the I/O of a processing system |
US5212795A (en) * | 1988-10-11 | 1993-05-18 | California Institute Of Technology | Programmable DMA controller |
US5321816A (en) * | 1989-10-10 | 1994-06-14 | Unisys Corporation | Local-remote apparatus with specialized image storage modules |
US5249279A (en) * | 1989-11-03 | 1993-09-28 | Compaq Computer Corporation | Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands |
US5347638A (en) * | 1991-04-15 | 1994-09-13 | Seagate Technology, Inc. | Method and apparatus for reloading microinstruction code to a SCSI sequencer |
US5388237A (en) * | 1991-12-30 | 1995-02-07 | Sun Microsystems, Inc. | Method of and apparatus for interleaving multiple-channel DMA operations |
JPH07122865B2 (ja) * | 1992-01-02 | 1995-12-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | バス動作の動作速度を制御するようにしたバス・インターフェースを有するコンピュータ・システム |
DE69328320T2 (de) * | 1992-01-09 | 2000-11-30 | Cabletron Systems Inc | Vorrichtung und Verfahren zur Datenübertragung zu und von einem Wirtrechnersystem |
US5280587A (en) * | 1992-03-31 | 1994-01-18 | Vlsi Technology, Inc. | Computer system in which a bus controller varies data transfer rate over a bus based on a value of a subset of address bits and on a stored value |
US5647057A (en) * | 1992-08-24 | 1997-07-08 | Texas Instruments Incorporated | Multiple block transfer mechanism |
US5371861A (en) * | 1992-09-15 | 1994-12-06 | International Business Machines Corp. | Personal computer with small computer system interface (SCSI) data flow storage controller capable of storing and processing multiple command descriptions ("threads") |
US5448702A (en) * | 1993-03-02 | 1995-09-05 | International Business Machines Corporation | Adapters with descriptor queue management capability |
US5828856A (en) * | 1994-01-28 | 1998-10-27 | Apple Computer, Inc. | Dual bus concurrent multi-channel direct memory access controller and method |
US6049802A (en) * | 1994-06-27 | 2000-04-11 | Lockheed Martin Corporation | System and method for generating a linked list in a computer memory |
US5568614A (en) * | 1994-07-29 | 1996-10-22 | International Business Machines Corporation | Data streaming between peer subsystems of a computer system |
US5632016A (en) * | 1994-09-27 | 1997-05-20 | International Business Machines Corporation | System for reformatting a response packet with speed code from a source packet using DMA engine to retrieve count field and address from source packet |
US5828903A (en) * | 1994-09-30 | 1998-10-27 | Intel Corporation | System for performing DMA transfer with a pipeline control switching such that the first storage area contains location of a buffer for subsequent transfer |
US5761427A (en) * | 1994-12-28 | 1998-06-02 | Digital Equipment Corporation | Method and apparatus for updating host memory in an adapter to minimize host CPU overhead in servicing an interrupt |
US5613162A (en) * | 1995-01-04 | 1997-03-18 | Ast Research, Inc. | Method and apparatus for performing efficient direct memory access data transfers |
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 |
US5917723A (en) * | 1995-05-22 | 1999-06-29 | Lsi Logic Corporation | Method and apparatus for transferring data between two devices with reduced microprocessor overhead |
US5671365A (en) * | 1995-10-20 | 1997-09-23 | Symbios Logic Inc. | I/O system for reducing main processor overhead in initiating I/O requests and servicing I/O completion events |
US5968143A (en) * | 1995-12-13 | 1999-10-19 | International Business Machines Corporation | Information handling system for transfer of command blocks to a local processing side without local processor intervention |
US5892969A (en) * | 1996-03-15 | 1999-04-06 | Adaptec, Inc. | Method for concurrently executing a configured string of concurrent I/O command blocks within a chain to perform a raid 5 I/O operation |
US5758187A (en) * | 1996-03-15 | 1998-05-26 | Adaptec, Inc. | Method for enhancing performance of a RAID 1 read operation using a pair of I/O command blocks in a chain structure |
US5835496A (en) * | 1996-04-30 | 1998-11-10 | Mcdata Corporation | Method and apparatus for data alignment |
US5881296A (en) * | 1996-10-02 | 1999-03-09 | Intel Corporation | Method for improved interrupt processing in a computer system |
US6233244B1 (en) * | 1997-02-14 | 2001-05-15 | Advanced Micro Devices, Inc. | Method and apparatus for reclaiming buffers |
US6526518B1 (en) * | 1997-05-22 | 2003-02-25 | Creative Technology, Ltd. | Programmable bus |
US6115761A (en) * | 1997-05-30 | 2000-09-05 | Lsi Logic Corporation | First-In-First-Out (FIFO) memories having dual descriptors and credit passing for efficient access in a multi-processor system environment |
JP3542463B2 (ja) * | 1997-07-29 | 2004-07-14 | Necエレクトロニクス株式会社 | 集積回路装置、その動作制御方法 |
US5905905A (en) * | 1997-08-05 | 1999-05-18 | Adaptec, Inc. | System for copying IOBS from FIFO into I/O adapter, writing data completed IOB, and invalidating completed IOB in FIFO for reuse of FIFO |
US6055603A (en) * | 1997-09-18 | 2000-04-25 | Emc Corporation | Method and apparatus for performing pre-request operations in a cached disk array storage system |
US6085277A (en) * | 1997-10-15 | 2000-07-04 | International Business Machines Corporation | Interrupt and message batching apparatus and method |
US5983292A (en) * | 1997-10-15 | 1999-11-09 | International Business Machines Corporation | Message transport mechanisms and methods |
US6078970A (en) * | 1997-10-15 | 2000-06-20 | International Business Machines Corporation | System for determining adapter interrupt status where interrupt is sent to host after operating status stored in register is shadowed to host memory |
US6138176A (en) * | 1997-11-14 | 2000-10-24 | 3Ware | Disk array controller with automated processor which routes I/O data according to addresses and commands received from disk drive controllers |
KR100564665B1 (ko) * | 1997-11-17 | 2006-03-29 | 시게이트 테크놀로지 엘엘씨 | 온-칩 메모리에서 데이터 보전을 위해 crc를 사용하는방법 및 장치 |
US6553564B1 (en) * | 1997-12-12 | 2003-04-22 | International Business Machines Corporation | Process and system for merging trace data for primarily interpreted methods |
US6119254A (en) * | 1997-12-23 | 2000-09-12 | Stmicroelectronics, N.V. | Hardware tracing/logging for highly integrated embedded controller device |
US6006340A (en) * | 1998-03-27 | 1999-12-21 | Phoenix Technologies Ltd. | Communication interface between two finite state machines operating at different clock domains |
US6185620B1 (en) * | 1998-04-03 | 2001-02-06 | Lsi Logic Corporation | Single chip protocol engine and data formatter apparatus for off chip host memory to local memory transfer and conversion |
JP3994360B2 (ja) * | 1998-05-20 | 2007-10-17 | ソニー株式会社 | 情報処理装置、情報処理方法、および記録媒体 |
US6167465A (en) * | 1998-05-20 | 2000-12-26 | Aureal Semiconductor, Inc. | System for managing multiple DMA connections between a peripheral device and a memory and performing real-time operations on data carried by a selected DMA connection |
US6145123A (en) * | 1998-07-01 | 2000-11-07 | Advanced Micro Devices, Inc. | Trace on/off with breakpoint register |
US20060117274A1 (en) * | 1998-08-31 | 2006-06-01 | Tseng Ping-Sheng | Behavior processor system and method |
US6269413B1 (en) * | 1998-10-30 | 2001-07-31 | Hewlett Packard Company | System with multiple dynamically-sized logical FIFOs sharing single memory and with read/write pointers independently selectable and simultaneously responsive to respective read/write FIFO selections |
US6425034B1 (en) * | 1998-10-30 | 2002-07-23 | Agilent Technologies, Inc. | Fibre channel controller having both inbound and outbound control units for simultaneously processing both multiple inbound and outbound sequences |
US6425021B1 (en) * | 1998-11-16 | 2002-07-23 | Lsi Logic Corporation | System for transferring data packets of different context utilizing single interface and concurrently processing data packets of different contexts |
US6463032B1 (en) * | 1999-01-27 | 2002-10-08 | Advanced Micro Devices, Inc. | Network switching system having overflow bypass in internal rules checker |
US6546010B1 (en) * | 1999-02-04 | 2003-04-08 | Advanced Micro Devices, Inc. | Bandwidth efficiency in cascaded scheme |
US6233629B1 (en) * | 1999-02-05 | 2001-05-15 | Broadcom Corporation | Self-adjusting elasticity data buffer with preload value |
US6269410B1 (en) * | 1999-02-12 | 2001-07-31 | Hewlett-Packard Co | Method and apparatus for using system traces to characterize workloads in a data storage system |
US6434630B1 (en) * | 1999-03-31 | 2002-08-13 | Qlogic Corporation | Host adapter for combining I/O completion reports and method of using the same |
US6504846B1 (en) * | 1999-05-21 | 2003-01-07 | Advanced Micro Devices, Inc. | Method and apparatus for reclaiming buffers using a single buffer bit |
US6564271B2 (en) * | 1999-06-09 | 2003-05-13 | Qlogic Corporation | Method and apparatus for automatically transferring I/O blocks between a host system and a host adapter |
US6363385B1 (en) * | 1999-06-29 | 2002-03-26 | Emc Corporation | Method and apparatus for making independent data copies in a data processing system |
US6457090B1 (en) * | 1999-06-30 | 2002-09-24 | Adaptec, Inc. | Structure and method for automatic configuration for SCSI Synchronous data transfers |
US6343324B1 (en) * | 1999-09-13 | 2002-01-29 | International Business Machines Corporation | Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices |
US6721799B1 (en) * | 1999-09-15 | 2004-04-13 | Koninklijke Philips Electronics N.V. | Method for automatically transmitting an acknowledge frame in canopen and other can application layer protocols and a can microcontroller that implements this method |
US6594329B1 (en) * | 1999-11-01 | 2003-07-15 | Intel Corporation | Elastic buffer |
US6775693B1 (en) * | 2000-03-30 | 2004-08-10 | Baydel Limited | Network DMA method |
US6725388B1 (en) * | 2000-06-13 | 2004-04-20 | Intel Corporation | Method and system for performing link synchronization between two clock domains by inserting command signals into a data stream transmitted between the two clock domains |
US6636909B1 (en) * | 2000-07-05 | 2003-10-21 | Sun Microsystems, Inc. | Adaptive throttling for fiber channel disks |
US7093236B2 (en) * | 2001-02-01 | 2006-08-15 | Arm Limited | Tracing out-of-order data |
JP2002281080A (ja) * | 2001-03-19 | 2002-09-27 | Fujitsu Ltd | パケットスイッチ装置およびマルチキャスト送出方法 |
US6871248B2 (en) * | 2001-09-29 | 2005-03-22 | Hewlett-Packard Development Company, L.P. | Isochronous transactions for interconnect busses of a computer system |
US7080289B2 (en) * | 2001-10-10 | 2006-07-18 | Arm Limited | Tracing multiple data access instructions |
TW564623B (en) * | 2002-02-22 | 2003-12-01 | Via Tech Inc | Device and method for comma detection and word alignment in serial transmission |
US20040117690A1 (en) * | 2002-12-13 | 2004-06-17 | Andersson Anders J. | Method and apparatus for using a hardware disk controller for storing processor execution trace information on a storage device |
US7302616B2 (en) * | 2003-04-03 | 2007-11-27 | International Business Machines Corporation | Method and apparatus for performing bus tracing with scalable bandwidth in a data processing system having a distributed memory |
TWI249681B (en) * | 2003-07-02 | 2006-02-21 | Via Tech Inc | Circuit and method for aligning data transmitting timing of a plurality of lanes |
EP1656777A1 (en) * | 2003-08-11 | 2006-05-17 | Koninklijke Philips Electronics N.V. | Auto realignment of multiple serial byte-lanes |
US7155553B2 (en) * | 2003-08-14 | 2006-12-26 | Texas Instruments Incorporated | PCI express to PCI translation bridge |
US7234007B2 (en) * | 2003-09-15 | 2007-06-19 | Broadcom Corporation | Adjustable elasticity FIFO buffer have a number of storage cells equal to a frequency offset times a number of data units in a data stream |
US7631118B2 (en) * | 2003-12-31 | 2009-12-08 | Intel Corporation | Lane to lane deskewing via non-data symbol processing for a serial point to point link |
US7404115B2 (en) * | 2004-02-12 | 2008-07-22 | International Business Machines Corporation | Self-synchronising bit error analyser and circuit |
US7231560B2 (en) * | 2004-04-16 | 2007-06-12 | Via Technologies, Inc. | Apparatus and method for testing motherboard having PCI express devices |
US7502377B2 (en) * | 2004-10-29 | 2009-03-10 | Intel Corporation | PCI to PCI express protocol conversion |
TWI273427B (en) * | 2004-11-09 | 2007-02-11 | Via Tech Inc | Method and related apparatus for configuring lanes of each port |
KR20060081522A (ko) * | 2005-01-10 | 2006-07-13 | 삼성전자주식회사 | 피씨아이 익스프레스의 바이트 스큐 보상방법 및 이를위한 피씨아이 익스프레스 물리 계층 수신기 |
US7447965B2 (en) * | 2005-05-03 | 2008-11-04 | Agere Systems Inc. | Offset test pattern apparatus and method |
US7230549B1 (en) * | 2005-09-09 | 2007-06-12 | Qlogic, Corporation | Method and system for synchronizing bit streams for PCI express devices |
US8867683B2 (en) * | 2006-01-27 | 2014-10-21 | Ati Technologies Ulc | Receiver and method for synchronizing and aligning serial streams |
-
2004
- 2004-09-23 US US10/948,404 patent/US20060064531A1/en not_active Abandoned
-
2005
- 2005-09-07 EP EP05794987A patent/EP1810161A1/en not_active Withdrawn
- 2005-09-07 CN CNA2005800318193A patent/CN101044466A/zh active Pending
- 2005-09-07 WO PCT/US2005/031660 patent/WO2006036468A1/en active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106133600A (zh) * | 2014-12-10 | 2016-11-16 | 互应化学工业株式会社 | 感光性树脂组合物、阻焊剂组合物和被覆盖的印刷线路板 |
CN106133600B (zh) * | 2014-12-10 | 2018-11-13 | 互应化学工业株式会社 | 感光性树脂组合物、阻焊剂组合物和被覆盖的印刷线路板 |
Also Published As
Publication number | Publication date |
---|---|
US20060064531A1 (en) | 2006-03-23 |
WO2006036468A1 (en) | 2006-04-06 |
EP1810161A1 (en) | 2007-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4690202B2 (ja) | 高可用性大容量ストレージデバイスシェルフ | |
US6421742B1 (en) | Method and apparatus for emulating an input/output unit when transferring data over a network | |
US7669000B2 (en) | Host bus adapter with multiple hosts | |
JP4871880B2 (ja) | ストレージシェルフ・ルータ集積回路 | |
US7787490B2 (en) | Method and apparatus for multiplexing multiple protocol handlers on a shared memory bus | |
US7080190B2 (en) | Apparatus and method for providing transparent sharing of channel resources by multiple host machines | |
US7984252B2 (en) | Storage controllers with dynamic WWN storage modules and methods for managing data and connections between a host and a storage device | |
CN101040271A (zh) | 用于优化dma信道选择的方法和系统 | |
US20070005833A1 (en) | Transmit buffers in connection-oriented interface | |
US6694392B1 (en) | Transaction partitioning | |
CN101044466A (zh) | 用于优化网络中的数据传送的方法和系统 | |
US7669190B2 (en) | Method and system for efficiently recording processor events in host bus adapters | |
CN1976310A (zh) | 在网络中通过总线接口进行通信的方法和系统 | |
US7366802B2 (en) | Method in a frame based system for reserving a plurality of buffers based on a selected communication protocol | |
US7886105B2 (en) | Combined fibre channel and SAS host bus adapter | |
US20070076685A1 (en) | Programmable routing for frame-packet based frame processing | |
CN100351766C (zh) | 一种磁盘阵列系统 | |
EP2300925B1 (en) | System to connect a serial scsi array controller to a storage area network | |
US9201599B2 (en) | System and method for transmitting data in storage controllers | |
JP4432388B2 (ja) | 入出力制御装置 | |
CN101044727A (zh) | 使用直插式信用扩充器与主机总线适配器的方法及系统 | |
JP4930554B2 (ja) | 入出力制御装置 | |
KR102518287B1 (ko) | PCIe 인터페이스 장치 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |