主机端口冗余度选择的制作方法

文档序号:6454450阅读:177来源:国知局
专利名称:主机端口冗余度选择的制作方法
技术领域
本公开涉及提供到装置的冗余路径、具体来说是到串行 高级技术配件(SATA)装置的冗余路径的系统中的连接管理。
背景技术
点对点存储协议、如串行高级技术配件(SATA)协议一次 支持存储装置与主机总线适配器之间的一个活动通信。在多主机总线 适配器系统中,端口选择器可耦合在多个主机总线适配器与存储装置 之间,以便通过允许多个主机总线适配器访问存储装置来提供冗余路 径。虽然所有主机总线适配器可访问存储装置,但是,在任一时刻可 以仅存在主机总线适配器之一与存储装置之间的一个活动通信。存储 装置觉察不到多个主机总线适配器。 在面向连接的环境中、在主机总线适配器与存储装置之 间建立连接时,向主机总线适配器提供对存储装置的独占访问权,直 到存储装置中的所有未决命令完成为止。在当前主机总线适配器的所 有未决命令已经完成时,可关闭当前连接,并且可在主机总线适配器 的另一个与存储装置之间建立另一个连接。因此,多主机系统中的各 主机总线适配器管理它们到存储装置的连接,以便确保在所有未决命 令已经完成之前没有关闭该连接。 具有支持对存储装置的多主机访问的串行附连小型计算 机系统接口 (SAS)的主机总线适配器可使用SATA隧道协议(STP)来与 SATA装置进行通信。STP是STP主机或主机总线适配器与SATA装置之 间的面向连接的协议,它在SAS环境中建立隧道,并允许交换SATA帧 信息结构(FIS)。
多个STP主机可经由若干SAS扩展器或多级SAS扩展器 和STP/SATA桥、使用STP与SATA装置连接。STP/SATA桥装置是一种 装置,其中包含STP目标端口、 SATA主机端口以及在STP目标端口与 SATA主机端口之间转发信息所需的功能,以便使SAS域中的STP主机 端口能够与SATA域中的SATA装置进行通信。可将STP/SATA包含在 SAS扩展器之一中。当STP/SAS桥接受从STP主机对于存储装置的连接时, STP/SAS桥中的STP目标建立存储装置到那个特定STP主机的联系。 STP/SATA桥不能接受从任何其它STP主机对于那个存储器的任何连 接,直到由STP主机清除该联系或者STP/SATA桥^f皮重置。


通过阅读以下详细描述并参照附图,要求权益的主题的 实施例的特征会变得非常明显,附图中,相似的标号表示相似部件, 以及附图包括 图1是包括根据本发明的原理的联系管理器的一个实施 例的存储系统的框图; 图2是图l所示的STP/SATA桥中包含的联系管理器的一 个实施例的框图;图3是用于监视连接的活动的方法的一个实施例的流程
图; 图4是图1所示的STP/SATA桥中的联系管理器的另一个 实施例的框图; 图5是联系管理器的一个实施例的框图,它包括对于通 过端口复用器与图1所示的STP/SATA桥耦合的多个装置的支持;以及 图6是联系管理器的另一个实施例的框图,它包括对于 通过端口复用器与图1所示的STP/SATA桥耦合的多个装置的支持。 虽然以下详细描述将参照要求权益的主题的说明性实施例进行,但是,本领域的技术人员将会清楚地知道它的许多备选、修 改和变更。因此,预计要求权益的主题^皮广义地看待,并且仅如所附 权利要求书所阐明的来定义。
具体实施例方式
在本发明的一个实施例中,通过监^L串行高级技术配件 (SATA)隧道协议(STP) /SATA桥中的连接的活动而不是等待STP主机关 闭连接,减少了关闭连接的时间。通过监视连接的活动,当不存在与 当前STP主机关联的未决命令、并且存在来自另一个STP主机与在 STP/SATA桥的另一侧的存储装置连接的请求时,STP/SATA桥可关闭该 连接。监视由STP/SATA桥中的联系管理器来执行,从而允许没有联系 管理支持的STP主机通过STP/SATA桥来访问SATA存储装置。 通过支持STP/SATA桥的联系管理,系统的整体输入/输 出性能得到改进,因为降低了软件/存储器存取和处理器计算需求。此 外,通过当没有存在未决命令而另一个STP主机正等待访问SATA装置 时自动关闭连接,来优化链路利用。 对于将帧从串行附连小型计算机系统接口 (SAS)域传递 到SATA域的STP/SATA桥来描述本发明的一个实施例。在"信息技术-串行附连SCSI - 1.1"(国际信息技术标准委员会(INCITS) T10技术委 员会的美国国家标准草案,Project T10/1562-D,修订版1, 2003年 9月18日由ANSI发布,以下称作"SAS标准")中描述了 SAS协议的 一个版本。在"串行ATA:高速串行化AT配件"(修订版本1.0a, 2003 年l月7日由串行ATA工作小组发布,以下称作"SATA标准")中描 述了 SATA协议的一个版本。SATA II协议定义对SATA标准协议的扩 展。 通过使用端口选择器,SATA 11协议提供对于到SATA装 置的冗余路径的支持。端口选择器允许两个不同的主机总线适配器与 同一个SATA装置连^妄,以便创建到该装置的冗余路径,从而允许主机总线适配器被修复、替换或升级,同时仍然通过另一个主机总线适配
器来提供对SATA装置的访问。虽然主机总线适配器的每个可访问SATA 装置,但是, 一次只有一个从主机总线适配器之一到SATA装置的连接 是活动的。为了增加可与SATA装置连接的STP主机的数量,SAS存储 系统可包括多个SAS扩展器或多级SAS扩展器和STP/SATA桥。 图1是包括根据本发明的原理的联系管理器102的一个 实施例的存储系统100的框图。联系管理器102管理从多个主机总线 适配器104-1、 ...、 104-n其中之一通过一个或多个SAS扩展器 106-1..... 106-3和STP/SATA桥108到SATA装置110的连接。 STP/SATA桥108是一种扩展器装置,它包括STP目标端 口、 SATA主机端口以及在STP目标端口与SATA主机端口之间转发帧 所需的功能,以便使SAS域中的STP端口能够与SATA域中的SATA装 置110进行通信。SAS协议包括SATA隧道协议(STP),它通过使用STP 在SAS环境中建立允许交换SATAFIS的隧道,来允许SAS主4几、例如 主机总线适配器104-1访问SATA装置110。 SATA装置110可以;l:磁盘 驱动器、闪存卡、光盘(CD)驱动器、数字视频光盘(DVD)驱动器或磁带 驱动器。SAS扩展器106-1与SATA装置110耦合,并通过SAS隧
道传送SATA FIS,以便传送给主机总线适配器(STP主机)104-1.....
104-N。 STP/SATA桥108可在物理上设置在SAS扩展器106-1中,如 图1所示的实施例中那样。 通过使用原语,在STP主机与STP/SATA桥108中的STP 目标之间执行握手和事件信令。原语是以10位特殊字符、如K28. 5或 K28. 3开始的4字节的定义序列。SAS原语用于各种信令和握手功能, 例如关闭连接的CLOSE原语以及开启连接的OPEN原语。"开启"地址 帧通常用于开启STP主机与STP目标之间的连接。当STP主机接收来 自STP目标的"开启接受"原语时,开启连^:。在已经开启连接之后,主机总线适配器104-1、 ...、 104-n中的STP主机与STP/SATA桥108中的STP目标端口交换SATA FIS。 SATAFIS包括多个双字(32位),以之后跟随有效载荷、循环冗余校验 (CRC)的原语(帧开始(S0F))开始,并以另 一个原语(帧结束(EOF))结 束。FIS包括FIS类型字段,它指明帧中包含的有效载荷的类型。存 在由类型字段所标识的有效载荷的许多类型,它们由SATA标准来定 义。它们包括命令、状态和设置装置位(SDB) (FIS类型Alh)。在一个 实施例中,命令包括寄存器FIS-主机到装置(FIS类型27h),并且状 态包括寄存器FIS-装置到主机(FIS类型34h)。在"串行ATA:高速串 行化AT配件"(修订版本1. Oa, 2003年1月7日由串行ATA工作小组 发布)中描述了各FIS类型的格式。SAS扩展器处理SAS环境的连接建 立路径中的SATA FIS到SATA装置110的路由。 由于一个以上STP主才几可同时请求访问同一个SATA装 置,因此,联系用来防止装置争用。联系是由STP目标端口进入的状 态,在其中,它拒绝接受来自除了已经建立连接的STP主机之外的STP 主机的连接请求。通过使用联系,STP主机具有对SATA装置的独占访 问权,直到联系被清除。 STP/SATA桥108中的联系管理器102管理STP主机与STP 目标端口之间的联系。可由STP主机通过向STP目标端口发出请求清 除联系的CLOSE原语,来清除联系。可由STP主机通过向STP目标端 口发送正常CLOSE原语,暂时关闭连接而没有清除联系,以便允许另 一个SATA装置与STP主机连接或者允许向SAS扩展器发出串行管理协 议(SMP)命令。 图2是图1所示的STP/SATA桥108中包含的联系管理器 102的一个实施例的框图。 在所示实施例中,SATA装置110支持原生命令队列 (Native Command Queuing) (NCQ),它允许多个命令在SATA装置中 排队。通过允许SATA装置优化读和写请求的执行顺序,NCQ改进了 SATA 装置的性能。不是按照接收到命令的顺序来执行命令,而是为了最佳性能而对SATA装置的内部命令队列进行重排序,例如,可根据读和写 请求中的数据的物理位置来对命令进行重排序,以便减少硬盘驱动器 中的寻找时间量。 通过使用NCQ,SATA装置110可保存多达32个未决命令, 并且可对那些命令的处理进行排序。各排队命令由标记值来标识。在 一个存在多达32个未决命令的实施例中,在设置装置位FIS中提供 32位(4字节),它从SATA装置IIO被发送,以便传送SATA装置110 中32个可能未决的命令的每个的未决状态。将32位作为活动命令 (SActive)位的32位元素阵列来处理,每个可能未决的命令一个。阵 列是位有效的,使得阵列中的位'n,对应于标记值为'n,的命令的 未决状态。联系管理器102包括用于管理STP主机与STP目标之间 的联系的活动命令寄存器(SActive寄存器)202。在一个实施例中, SActive寄存器202具有32位,其中一位对应于每个可能未决的命令。 位0对应于标记值OOh的命令,而位31对应于标记值OlFh的命令。 存在未决命令时位设置为'1,,否则设置为'0,。不是管理每个STP 主机中的联系,而是将一个所有STP主机所共享的SActive寄存器包 含在STP/SATA桥108中。因此,STP/SATA桥108充当管理STP主机 的联系的"智能"桥,优化了资源,并且减少了 STP主机与STP/SATA 桥之间管理联系的带宽使用。命令监视器200监视通过STP/SATA桥 108从STP主机端口转发给SATA目标端口的SATA FIS,检测SATA命 令FIS,并提取各SATA命令FIS中包含的NCQ标记。NCQ标记标识指 派给正发送到SATA装置110的当前命令的标记值。标记值对应于 SActive寄存器202中的32位其中之一。 在所示实施例中,每当命令FIS、如主机到装置(27h)寄 存器FIS到达STP/SATA桥108的STP目标端口 、以^使通过SATA主才几 端口被转发给SATA装置110时,与命令FIS中存储的NCQ标记值对应 的位在SActive寄存器202中设置为T 。在非NCQ才莫式中,由于SATA装置中只可存在一个未决命令,因此,在命令未决时,在SActive 寄存器202中仅有位0设置为T 。 联系管理器中的状态监视器204监视在STP/SATA桥108 中的目标端口上从SATA装置110所接收的各状态FIS,以便转发给主 机端口。例如,从SATA装置llO、通过STP/SATA桥108接收到SATA 主机端口的设置装置位FIS提供在SATA装置110中排队的未决命令的 状态。设置装置位FIS包括32位SActive字段,其中每个位对应于可 能排队的命令之一。根据包含于设置装置位FIS的SActive字段中的 位的状态,状态监视器204根据设置装置位FIS中的SActive字段的 状态来清除联系管理器的SActive寄存器202中的位,或者根据状态 FIS来清除非NCQ模式中的位0。 图3是用于监视连接的活动的方法的一个实施例的流程 图。将结合图2、针对支持原生命令队列的SATA装置来描述图3。 在框300,联系管理器102检查是否已经在STP主机与 STP/SATA桥108中的STP目标端口之间建立了连接。如果尚未建立连 接,则处理继续进行框300,等待建立连接。如上所述,通过交换原 语,在STP主机与STP/SATA桥中的STP目标端口之间建立连接。建立 STP主机与STP/SATA桥108中的STP目标端口之间以及最终到SATA 装置110的连接。如果已经建立连接,则处理继续进行框301,处理 从SATA装置或STP主机所接收的SATA FIS。 在框S01,命令监视器200检查从STP端口所接收的SATA FIS,以及状态监视器204检查通过SATA端口从SATA装置110所接收 的SATA FIS。如果由STP端口接收到SATA FIS,则处理继续进行框 302。如果由SATA端口接收到SATA FIS,则处理继续进行框306。在框302,命令监视器200检查在STP/SATA桥108中的 STP端口上所接收的FIS中的FIS类型。如果FIS类型指明命令FIS, 则处理继续进行框304。如果没有,则处理继续进行框301,等待另一 个SATA FIS由SATA端口或STP端口4妾收。
在框304,如果以NCQ模式进行操作,则命令监视器200 在活动命令寄存器202中设置与命令FIS中包含的NCQ标记的值对应 的位。如果以非NCQ模式进行操作,则由于SATA装置中只可存在一个 活动命令,所以仅设置活动命令寄存器202的位0。处理继续进行框 301,等待另一个SATA FIS到达STP端口或SATA端口。 在框306,状态监视器204检查由SATA端口所接收的FIS 中的FIS类型。如果FIS类型是设置装置位FIS或装置到主机状态寄 存器FIS,则处理继续进行框308。如果不是,则处理继续进行框301, 等待另一个SATA FIS由STP端口或SATA端口接收。 在框308,如果以NCQ才莫式进行操作,则清除活动命令 寄存器202中与所接收FIS中的NCQ标记对应的位。如果以非NCQ模 式进行操作,则清除活动命令寄存器202中的位0。处理继续进行框 310。 在框310,联系管理器102中的状态监视器204检查是 否已经完成向SATA装置发出的所有命令,也就是说,是否已经清除活 动命令寄存器202中的所有位(设置为零)。如果是,则处理继续进行 框312。如果不是,则处理继续进行框301,等待另一个SATA FIS。 在框312,联系管理器102检查是否存在另一个请求访 问SATA装置110的STP主机。如果没有当前连接的未决命令,则联系 管理器102可在存在来自另 一个STP主机的未决请求时关闭当前连接, 而可在不存在未决请求时使当前连接保持开启。在一个备选实施例中, 即使不存在来自另一个主机的未决请求并且链路已经空闲一段时间 (可以是用户能够定义的),则也可关闭连接。如果存在来自另一个 主机的未决请求或者链路已经空闲一段时间,则处理继续进行框314。 如果不是,则处理继续进行框301,等待SATA FIS。 在框314,向原始STP主机发送关闭连接原语,并接受 到另一个STP主机的连接。这样,如果存在等待使用装置的另一个STP 主机,则当前STP主机与该装置之间的连接^1自动关闭,而不是等待STP主机关闭该连接。这提高了 STP主机与SATA装置之间的链路带宽 的利用。STP/SATA桥108可接受来自另一个STP主机的连接请求,并 且活动命令寄存器202可用来监视连接的未决命令。通过STP/SATA桥 108监视连接的未决命令,各STP主机不需要支持联系管理。 已经针对支持原生命令队列的SATA装置描述了一个实 施例。在以非原生命令队列模式进行操作时,状态FIS被发送以指明 命令完成,并且可用来监视装置中的未决命令的状态。只有一个未决 命令,状态FIS足以指明未决命令的状态。在以原生命令队列模式进 行操作时,将状态FIS从装置发送给主机,仅指明主机可发送另一个 待加入装置队列的命令FIS。因此,在以原生命令队列模式进行操作 时,附加FIS(SDB FIS)通过指明已经完成的命令,来提供装置中的未 决命令的状态。 已经针对无错误地完成所有未决命令的情况描述了 一个 实施例。但是,可能存在错误条件,例如,装置可能不回送NCQ命令 状态。在那种情况下,主机可使命令超时,并且可重新发出该命令。 但是,桥的活动命令寄存器中的对应位不会被清除,因为没有由SATA 装置发送SDBFIS。因此,在命令超时之后,STP主机可向桥发送串行 管理协议(SMP)命令,以便清除该位或递减计数器。 另外,按照SATA标准,如果使用NCQ命令,则SATA装 置110中的所有未决命令必须是NCQ命令。如果主机发出任何其它类 型的命令、例如编程输入输出或常规直接存储器存取命令,则SATA装 置IIO将中止所述未决NCQ命令。在这种情况下,SATA装置110将在 接收到具有未决NCQ命令的非NCQ命令之后发送设置装置位FIS,以 便清除活动命令寄存器中的所有位。STP主机还可检查已经清除 SActive寄存器中的所有位。 如果SATA装置110例如因链路上送往SATA装置100的 带外(OOB)信号而^^皮重置,则可能发生另一个错误条件。STP/SATA桥 108在检测到这种错误条件时可清除活动命令寄存器(将所有位设置为'0, ) 202,或者STP主机可清除STP/SATA桥108中的活动命令寄存 器202。 在一个备选实施例中,不是使用活动命令寄存器来监视 连接的未决命令,而是通过使用事务计数器来监视SATA装置中的未决 命令。 图4是图1所示的STP/SATA桥108中的联系管理器400 的另一个实施例的框图。联系管理器400包括未决事务计数器402、 命令监视器404和状态监视器406。虽然在STP主机与SATA装置之间 建立了连接,但是,未决事务计数器402设置成缺省值,并且每当命 令监视器404检测到STP端口所接收的、待转发给SATA装置110的命 令FIS时递增。每当对于特定连接将没有差错的NCQ模式的设置装置 位FIS从装置发送到主机时,递减未决事务计数器402。 如果未决事务计数器402处于缺省值并且存在另 一个请 求访问STP/SATA桥108后面的装置的STP主机,则将关闭连接请求发 送给当前STP主机,并且STP/SATA桥108向另一个STP主机自动发送 接受连接原语。例如,另一个STP主机可向STP/SATA桥108发送开启 地址帧,以便请求建立连接。如果根据未决事务计数器402中存储的 计数值仍然存在当前连接的未决命令,则STP/SATA桥108可通知请求 STP主机关于装置正忙,或者只是拒绝连接请求。但是,如果没有当 前连接的未决命令,也就是说,未决事务计数器402处于缺省值,则 STP/SATA桥108可关闭连接,并且建立另一个请求STP主机与该装置 之间的新连接。 已经针对将单个SATA装置与多个STP主机连接的联系管 理器描述了联系管理器400的实施例。端口复用器是一种用于一个活 动主机连接与多个SATA装置进行通信的机制。例如,SATAII端口复 用器允许STP主机同时与多达15个装置进行通信。STP主机知道它正 与多个装置进行通信,但是装置不知道它们正在被复用。通过使用FIS 中的端口复用器端口字段来执行复用。端口复用器存储SATA FIS并根据端口复用器端口字段从STP主机转发SATA FIS。 作为STP主机与STP/SATA桥108中的STP目标端口之间 建立的连接,当端口复用器与STP/SATA桥108耦合时,可存在多达 15个不同装置的未决命令。因此,结合图2和图4所述的联系管理器 102、 400的实施例可修改为支持图5和图6所示的端口复用器。 图5是联系管理器500的一个实施例的框图,它包括对 于通过端口复用器与图1所示的STP/SATA桥108耦合的多个SATA装 置的支持。 联系管理器500包括每个装置一个活动命令寄存器504, 它可通过SATA端口与端口复用器耦合。STP主机标识与端口复用器耦 合的SATA装置,其中通过FIS中的端口复用器端口 (PMP)字段将命令 FIS引导到端口复用器。例如,通过四个位,PMP字段可标识与端口复 用器耦合的15个装置其中之一。 在包括与STP/SATA桥中的SATA端口耦合的端口复用器 的系统中,到STP主机的连接可访问与端口复用器耦合的SATA装置的 任一个。因此,联系管理器500包括用于每个可能的SATA装置的活动 命令寄存器。从命令FIS中提取NCQ标记,以便在活动命令寄存器中 设置适当的位,如结合从STP主机到STP目标的访问与STP/SATA桥耦 合的单个SATA装置的连4妻的实施例所述。联系管理器500还提取命令 FIS中的PMP字段,以便确定将命令引导到哪一个SATA装置。 除了标识排队的和完成的命令的活动命令位之外,设置 装置位FIS还包括PMP字段,它用作选择与从其中发送设置装置位FIS 的端口复用器的另一侧的SATA装置关联的活动命令寄存器的索引。当命令FIS经过STP/SATA桥108时,联系管理器500提 取端口复用器端口 (PMP)字段,以便用作选择与SATA装置关联的活动 命令寄存器的索引。NCQ标记用于选择所选活动命令寄存器中的位。 由于与当前连接关联的STP主机可能在端口复用器的另 一侧的SATA装 置的每个中具有未决命令,因此,STP/SATA桥在确定是否将活动连接切换到另一个STP主机之前,等待所有活动命令寄存器^f皮清除。 图6是联系管理器600的另一个实施例的框图,它包括 对于通过端口复用器与图1所示的STP/SATA桥108耦合的多个装置的 支持。 联系管理器600包括通过端口复用器可访问的各SATA 装置的未决事务计数器602。命令FIS中的PMP字段的值以及设置装 置位FIS或装置到主机状态寄存器FIS用作选择与SATA装置关联的计 数器的索引。缺省值监视器606监视未决事务计数器的每个的值,并 且通过确定缺省值是否存储在未决事务计数器的每个中,来提供关于 是否已经完成所有未决命令的指示。通过跟踪发送给主机的未决命令, 当所有计数器处于缺省值并且存在另一个请求访问STP/SATA桥的STP 主机时,联系管理器600可将控制自动转移到另一个STP主机。 STP/SATA桥向原始STP主机发送关闭连接,并接受与另一个STP主机 的新连才妻。 这样,通过在STP/SATA桥中提供联系管理,各STP主机 无需包括对联系管理的支持。还减少了用于将连接从当前STP主机切 换到另 一个STP主机的时间。 除了包含在STP/SATA桥的一个实施例中之外,还可易于 将联系管理器包含在使用SATA原生命令队列(NCQ)的任何系统中,因 为联系管理器比现有联系方法更少依靠应用软件和固件。 本领域的技术人员清楚地知道,本发明的实施例中涉及 的方法可包含在包括计算机可用介质的计算机程序产品中。例如,这 样一种计算机可用介质可由例如光盘只读存储器(CD ROM)光盘或常规 ROM装置等只读存储器装置或者其中存储了计算机可读程序代码的计 算机磁盘组成。 虽然参照本发明的实施例具体示出和描述了本发明的实 施例,但是,本领域的技术人员会理解,可对它们进行形式和细节上 的各种变更,而没有背离所附权利要求书包含的本发明的实施例的范围。
权利要求
1. 一种设备,包括第一端口,能够使用第一协议接收来自主机的命令;第二端口,能够使用第二协议向装置转发命令;以及联系管理器,能够监视所述主机与所述装置之间的已建立连接的命令和响应,并且能够检测没有与所述装置关联的未决命令。
2. 如权利要求l所述的设备,其中,在检测到来自另一个主机的 访问请求时,所述联系管理器能够在检测到没有所述装置的未决命令 时自动关闭所述连接。
3. 如权利要求2所述的设备,其中,所述联系管理器能够在关闭 到所述主机的所述连接之后,接受到所述另 一个主机的新连接。
4. 如权利要求l所述的设备,其中,所述第一协议是串行高级技 术配件隧道协议(STP)协议。
5. 如权利要求2所述的设备,其中,所述第二协议是串行高级技 术配件(SATA)协议。
6. 如权利要求l所述的设备,其中,所述联系管理器通过根据从 所述主机接收到所述装置的命令递增计数,并根据从所述装置所接收 的响应递减所述计数,来监视未决事务。
7. 如权利要求l所述的设备,其中,所述联系管理器通过具有每个事务一位的寄存器来监视未决事务,位能够在检测到命令时被设置, 并且能够在检测到所述命令的响应时被清除。
8. 如权利要求l所述的设备,其中,所述装置能够通过端口复用 器与所述装置端口耦合,所述端口复用器允许所述主机在到所述端口 复用器的所述已建立连接上与多个装置进行通信,并且所述联系管理 器能够监视与所述多个装置关联的未决命令。
9. 如权利要求8所述的设备,其中,所述联系管理器通过多个寄 存器来监视未决命令,其中各寄存器与所述装置之一关联,并且各寄存器具有每个未决命令一位,位能够在检测到向所述装置发出的命令 时被设置,并且能够在检测到所述命令不再是未决时被清除。
10. —种方法,包括使用第 一协议接收来自主机的命令; 使用第二协议向装置转发命令;监视所述主机与所述装置之间的已建立连接的命令和响应;以及 检测没有与所述装置关联的未决命令。
11. 如权利要求10所述的方法,还包括在检测到来自另 一个主机的访问请求时,在检测到没有所述装置 的未决命令时自动关闭所述连接。
12. 如权利要求11所述的方法,还包括在关闭到所述主机的所述连接之后,接受到所述另 一个主机的新 连接。
13. 如权利要求10所述的方法,其中,所述第一协议是串行高级 技术配件隧道协议(STP)协议。
14. 如权利要求13所述的方法,其中,所述第二协议是串行高级 技术配件(SATA)协议。
15. 如权利要求IO所述的方法,其中,监视还包括 根据从所述主机发送到所述装置的命令来递增计数;以及 根据来自所述装置的响应来递减所述计数。
16. 如权利要求10所述的方法,其中,监视还包括 在检测到命令时,在具有每个事务一位的寄存器中设置位;以及 在检测到响应时,清除所述寄存器中与所述事务对应的所述位。
17. 如权利要求10所述的方法,其中,监视还包括监视与所述连接的所述主机通过端口复用器可访问的多个装置关 联的未决命令。
18. 如权利要求17所述的方法,还包括提供多个寄存器,各寄存器与所述装置之一关联,并且各寄存器具有每个未决命令一位;在检测到向所述装置之一发出的命令时,在与所述装置关联的寄 存器中设置位;以及在检测到所述命令不再是未决时,清除所述寄存器中的所述位。
19. 一种包括具有关联信息的机器可访问介质的产品,其中,所 述信息在^皮访问时使机器执行使用第一协议接收来自主机的命令; 使用第二协议向装置转发命令;监视所述主机与所述装置之间的已建立连接的命令和响应;以及 检测没有与所述装置关联的未决命令。
20. 如权利要求19所述的产品,还包括在检测到来自另一个主机的访问请求时,在检测到没有所述装置 的未决命令时自动关闭所述连接。
21. 如权利要求20所述的产品,还包括在关闭到所述主机的所述连接之后,接受到所述另 一个主机的新 连接。
22. —种系统,包括 ^f兹盘驱动器;以及与所述磁盘驱动器耦合的桥,所述桥包括 第 一端口 ,能够使用第 一协议接收来自主机的命令; 第二端口,能够使用第二协议向所述磁盘驱动器转发命令;以及 联系管理器,能够监视所述主机与磁盘驱动器之间的已建立连接 的命令和响应,并且能够检测没有与所述磁盘驱动器关联的未决命令。
23. 如权利要求22所述的系统,其中,在检测到来自另一个主机 的访问请求时,所述联系管理器能够在检测到没有所述装置的未决命 令时自动关闭所述连接。
24. 如权利要求23所述的系统,其中,所述联系管理器能够在关 闭到所述主机的所述连接之后,接受到所述另 一个主机的新连接。
全文摘要
一种用于将第一存储协议转换成第二协议的桥包括联系管理器。联系管理器接受来自主机的连接,并且建立使用第二协议的装置与使用第二协议的主机之间的连接。联系管理器监视通过连接从主机所接收的命令以及从装置所接收的响应。在检测到没有装置的未决命令时,如果存在另一请求到装置的新连接的主机,则桥可关闭到装置的连接,并建立装置与另一主机之间的新连接。
文档编号G06F13/14GK101416170SQ200780012262
公开日2009年4月22日 申请日期2007年3月19日 优先权日2006年3月29日
发明者N·张, P·塞托 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1