当前位置: 首页 > 专利查询>Q逻辑公司专利>正文

用于优化DMA信道选择的方法和系统技术方案

技术编号:2838371 阅读:209 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种主机总线适配器,其耦合到网络和主机计算系统。所述主机总线适配器包含直接存储器存取(“DMA”)模式检测模块,其从仲裁模块接收DMA信道标识符信息,所述仲裁模块从多个DMA信道接收请求,其中所述DMA模式检测模块包含DMA计数器,所述DMA计数器对所述仲裁模块专门服务单个DMA信道的次数进行计数,且如果DMA计数器值等于阈值,那么所述DMA模式检测模块启用单信道模式,在所述单信道模式期间,忽略标准交易规则来确定用于传送数据的DMA请求长度。启用所述单信道模式达某一持续时间。所述主机总线适配器包含基于规则的分段逻辑,其可通过主机总线适配器固件和/或单信道模式条件的检测而被启用和/或禁用。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算系统,且更明确地说,涉及优化直接存储器存取(“DMA”)信道仲裁。
技术介绍
通常使用存储区域网络(“SAN”),其中使多个存储器存储装置可用于各种主机计算系统。通常通过各种控制器/适配器来将SAN中的数据从多个主机系统(其包含计算机系统、服务器等)移动到存储系统。主机系统通常包含若干功能组件。这些组件可包含中央处理单元(CPU)、主存储器、输入/输出(“I/O”)装置和流式存储装置(streaming storage device)(例如,磁带驱动器)。在常规系统中,主存储器经由系统总线或本地存储器总线耦合到CPU。主存储器用于在执行时间向CPU提供对存储在主存储器中的数据和/或程序信息的存取权。通常,主存储器由随机存取存储器(RAM)电路组成。具有CPU和主存储器的计算机系统通常被称为主机系统。主机系统通常使用接口(例如,“PCI”总线接口)经由主机总线适配器(“HRA”,也可称为“控制器”和/或“适配器”)与存储系统通信。PCI代表外围组件互连(PeripheralComponent Interconnect),由Intel Corporation开发的本地总线标准。PCI标准全文以引用的方式并入本文中。大多数现代计算系统除包含较一般的扩展总线(例如,ISA总线)外还包含PCI总线。PCI是64位总线,且可以33或66MHz的时钟速度运行。PCI-X是另一标准总线,其与使用PCI总线的现有PCI卡兼容。PCI-X将PCI的数据传送速率从132MBps改进为多达1GBps。PCI-X标准由IBM、Hewlett PackardCorporation和Compaq Corporation开发,以提高高带宽装置(例如,千兆位以太网标准(Gigabit Ethernet standard)和光纤信道标准(Fibre Channel Standard))以及作为群集的一部分的处理器的性能。也使用各种其它标准接口来将数据从主机系统移动到存储装置。光纤信道是这样的一个标准。光纤信道(其全文以引用的方式并入本文中)是美国国家标准学会(AmericanNational Standard Institute,ANSI))提出的一组标准,其提供针对存储的串行传输协议和网络协议(例如,HIPPI、SCSI、IP、ATM和其它协议)。光纤信道提供输入/输出接口以满足信道和网络用户两者的需求。iSCSI是基于小型计算机系统接口(“SCSI”)的另一标准(其全文以引用的方式并入本文中),其使主机计算机系统能够与包含磁盘和磁带装置、光学存储装置以及打印机和扫描仪的多种外围装置一起执行块数据输入/输出(“I/O”)操作。主机系统与外围装置之间的传统的SCSI连接是通过并行布线进行的,且受到距离和装置支持约束条件的限制。对于存储应用来说,开发iSCSI以利用基于光纤信道和千兆位以太网标准的网络结构。iSCSI在已建立的联网基础设施上利用SCSI协议,且界定用于在TCP/IP网络上启用块存储应用的构件。iSCSI界定SCSI协议与TCP/IP的映射。HBA使用DMA模块来在存储器位置之间或存储器位置与输入/输出端口之间执行数据传送。DMA模块通过利用传送控制信息来初始化DMA单元中的控制寄存器而起作用,而不涉及微处理器。传送控制信息通常包含源地址(待传送的数据块的开头部分的地址)、目的地地址和数据块的大小。DMA单元向装置提供地址和总线控制信号并从装置中提供地址和总线控制信号,以用于读取和/或写入循环。在DMA单元中建构特定信道,以允许存储装置将数据直接传送到存储器存储装置且从存储器存储装置传送数据。可通过来自存储装置或主机系统的DMA请求信号(DREQ)来激活信道。DMA单元接收所述DREQ;提供DMA确认信号(DACK);且通过所述信道将数据传送到存储装置或从存储装置传送数据。HBA通常使用多个DMA信道,且具有仲裁模块,所述仲裁模块对于PCI(或PCI-Express)链路的存取进行仲裁。这允许HBA通过有效地处理命令、状态和数据来对(信道之间的)上下文进行仲裁和切换。以周期性短脉冲的形式对多个信道提供服务。在每个仲裁循环之后,当连接到选定信道时,即使所述选定信道与先前仲裁循环中的先前选定的信道相同,也存在用于对数据管线进行重新加载的额外时间。因此,如果多个信道不在使用中,那么最小仲裁循环增加了(多个时钟循环的)等待时间且影响整体性能。等待时间的原因是对于每一DMA循环来说都必须加载并更新某些资源。当连续的请求从同一DMA信道出现,且其它信道都不请求存取时,每次对所述同一信道提供服务时都存在额外的损失,因为在有效信道被重新初始化(或“重新装备”)的时间期间,另一信道不传送数据。HBA常常必须在DMA信道之间,尤其在同时处理状态、命令和数据时,执行频繁的上下文切换。在其它情况下,HBA可通过主要使用单个DMA信道来操作。这在(例如)发生较大数据传送且特定DMA单元获得存取权的情况下发生。这些情况(即,单信道使用或频繁的上下文切换)是不可预测的。常规HBA不能自动感测单信道使用和相应地调节仲裁循环。并且,工业标准(例如,PCI-Express标准)提供关于存储器读取/写入请求何时必须基于最大有效负载、最大读取请求大小和地址/数据对准而终止的交易规则。由于这些规则的缘故,较大DMA请求可能必须被分段成较小区块。在常规系统中,在准许同一DMA信道对下一片段进行另一请求之前,接收第一数据片段的完成。这是因为每个DMA信道仅允许一个未解决的请求。重复请求-响应序列,直到整个DMA请求完成为止。如果单个信道重复地用于较大数据传送,那么请求-响应-请求循环消极地影响整体性能。因此,需要一种系统和方法,其可自动感测同一DMA信道是否正用于数据传送;将某一标准请求和分段规则禁用某一周期;且通过减小仲裁频率来有效率地传送数据。
技术实现思路
在本专利技术的一个方面,提供一种主机总线适配器,其耦合到网络和主机计算系统。所述主机总线适配器包含直接存储器存取(“DMA”)模式检测模块,其从仲裁模块接收DMA信道标识符信息,所述仲裁模块从多个DMA信道接收请求,其中所述DMA模式检测模块包含DMA计数器,其对所述仲裁模块专门服务单个DMA信道的次数进行计数,且如果DMA计数器值等于阈值,那么所述DMA模式检测模块启用单信道模式,在所述单信道模式期间,忽略标准交易规则来确定用于传送数据的DMA请求长度。启用所述单信道模式,持续某一持续时间。所述主机总线适配器包含基于规则的分段逻辑,其可通过主机总线适配器固件和/或单信道模式条件的检测而被启用和/或禁用。DMA模式检测模块包含寄存器,其存储阈值,且所述阈值是可编程的。所述多个DMA信道包含位于主机总线适配器的接收和发射路径中的DMA信道。在本专利技术的另一方面,提供一种允许主机计算系统通过网络与多个装置通信的系统。所述系统包含主机总线适配器,所述主机总线适配器包含DMA模式检测模块,其从仲裁模块接收DMA信道标识符信息,所述仲裁模块从多个DMA信道接收请求,其中所述DMA模式检测模块包含DMA计数器,其对所述仲裁模块专门服务单个DMA信道的次数进行计数,且如果DMA计数器值等于阈值,本文档来自技高网
...

【技术保护点】
一种主机总线适配器,其耦合到网络和主机计算系统,所述主机总线适配器包括:直接存储器存取(“DMA”)模式检测模块,其从仲裁模块接收DMA信道标识符信息,所述仲裁模块从多个DMA信道接收请求,其中所述DMA模式检测模块包含DMA计数器 ,所述DMA计数器对所述仲裁模块专门服务单个DMA信道的次数进行计数,且如果所述DMA计数器值等于阈值,那么所述DMA模式检测模块启用单信道模式,在所述单信道模式期间,忽略标准交易规则来确定用于传送数据的DMA请求长度。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:布拉德利S森克森匡福D朱拉金德拉R甘地
申请(专利权)人:Q逻辑公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1