《统一I/O适配器.pdf》由会员分享,可在线阅读,更多相关《统一I/O适配器.pdf(16页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103154920 A(43)申请公布日 2013.06.12CN103154920A*CN103154920A*(21)申请号 201180048076.6(22)申请日 2011.10.1761/405,091 2010.10.20 USG06F 13/38(2006.01)G06F 13/40(2006.01)(71)申请人马维尔国际贸易有限公司地址巴巴多斯圣米加勒(72)发明人 AP格利 P苏塔尔德加D格德斯(74)专利代理机构北京市金杜律师事务所 11256代理人酆迅 郑振(54) 发明名称统一I/O适配器(57) 摘要描述了与统一混合输入/输出适配器相关联。
2、的系统、方法以及其它实施例。根据一个实施例,一种装置包括输入/输出(I/O)互连(120),被配置为与主机设备(140)相连接并且提供与该主机设备(140)的通信。该装置还包括网络适配器(110),连接至该I/O互连(120)并且被配置为与网络存储(170)进行通信。该装置包括主机适配器(120),连接至该I/O互连(130)并且被配置为与第一存储设备(180)和第二存储设备(190)进行通信。第一存储设备(180)具有比第二存储设备(190)更高的延迟。该装置进一步包括存储逻辑(150),被配置为对I/O互连(130)进行控制以使得来自主机设备(140)的存储访问请求经由主机适配器(120)。
3、而被高速缓存在第二存储设备(190)中。(30)优先权数据(85)PCT申请进入国家阶段日2013.04.02(86)PCT申请的申请数据PCT/US2011/056532 2011.10.17(87)PCT申请的公布数据WO2012/054380 EN 2012.04.26(51)Int.Cl.权利要求书3页 说明书7页 附图5页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书3页 说明书7页 附图5页(10)申请公布号 CN 103154920 ACN 103154920 A1/3页21.一种装置,包括:输入/输出(I/O)互连(130),被配置为与主机设备(140)相连。
4、接并且提供与所述主机设备(140)的通信;网络适配器(110),连接至所述I/O互连(130)并且被配置为与网络存储(170)进行通信;主机适配器(120),连接至所述I/O互连(130)并且被配置为与第一存储设备(180)和第二存储设备(190)进行通信,其中所述第一存储设备(180)比所述第二存储设备(190)具有更高的延迟;以及存储逻辑(150),被配置为对所述I/O互连(130)进行控制以使得来自所述主机设备(140)的存储访问请求经由所述主机适配器(120)而被高速缓存在所述第二存储设备(190)中。2.根据权利要求1所述的装置,进一步包括:服务逻辑(160),被配置为如果从在所述第。
5、二存储设备(190)中高速缓存的所述存储访问请求中选择的请求寻址到所述网络存储(170),则控制所述主机适配器(120)向网络适配器(110)发送所述选择的请求以进行处理,并且如果所述选择的请求寻址到所述第一存储设备(180),则控制所述主机适配器(120)对所述选择的请求进行处理。3.根据权利要求1所述的装置,其中所述I/O互连(130)被配置为通过在集成电路中实现的将所述I/O互连与所述主机适配器和所述网络适配器相连接的可切换连接路径而在所述主机适配器、所述网络适配器和所述主机设备之间提供通信。4.根据权利要求1所述的装置,其中所述主机设备是对通过所述I/O互连与所述网络适配器和所述主机适。
6、配器进行通信的多个操作系统实例进行操作的多核处理器,并且其中所述I/O互连、所述主机适配器和所述网络适配器在被配置为在与所述主机设备进行通信的芯片上实现。5.根据权利要求1所述的装置,其中所述存储逻辑被配置为控制所述I/O互连以当所述存储访问请求寻址到所述网络存储或所述第一存储时对来自所述主机设备的所述存储访问请求重新定向以通过所述第二存储设备中的高速缓存对所述存储访问请求进行服务。6.根据权利要求1所述的装置,其中所述I/O互连被配置为向所述主机设备提供对所述网络适配器和所述主机适配器的访问,并且其中所述I/O互连被配置为在所述网络适配器和所述主机适配器之间提供端对端通信。7.根据权利要求1。
7、所述的装置,其中所述I/O互连是外围组件开关,其被配置为在所述主机设备和所述主机适配器之间以及所述主机设备和所述网络适配器之间有选择地切换通信。8.一种方法,包括:提供(210)输入/输出(I/O)互连(130)以在主机设备(140)和主机适配器(120)之间以及在所述主机设备(140)和网络适配器(110)之间切换通信,其中所述主机适配器与第一存储设备(180)和第二存储设备(190)进行通信,其中所述第一存储设备(180)具有比所述第二存储设备(190)更高的延迟,并且其中所述网络适配器(110)与所述网络存储(170)进行通信;将来自所述主机适配器的存储访问请求高速缓存(230)在所述第。
8、二存储设备中;权 利 要 求 书CN 103154920 A2/3页3如果所述存储访问请求寻址到所述第一存储设备,则由所述主机适配器对所述存储访问请求进行处理(250);以及如果所述存储访问请求寻址到所述网络存储,则经由所述I/O互连将来自所述第二存储设备的所述存储访问请求发送(270)至所述网络适配器以便进行处理。9.根据权利要求8所述的方法,进一步包括:提供经由所述I/O互连的在所述主机适配器和所述网络适配器之间的通信路径。10.根据权利要求9所述的方法,其中提供经由所述I/O互连的在所述主机适配器和所述网络适配器之间的通信路径包括使用在集成电路中实现的将所述I/O互连与所述主机适配器和所。
9、述网络适配器相连接的可切换连接路径。11.根据权利要求8所述的方法,进一步包括:通过与外围组件互连快速(PCIe)标准相兼容的至所述主机设备的通信路径在所述I/O互连中接收所述存储访问请求。12.根据权利要求8所述的方法,进一步包括:从在所述主机设备中的多核处理器上操作并且通过所述I/O互连与所述网络适配器和所述主机适配器进行通信的操作系统实例接收所述存储访问请求,其中所述存储访问请求是来自所述多个操作系统实例中的一个操作系统实例的存储器访问请求。13.根据权利要求8所述的方法,进一步包括:将来自所述I/O互连上的所述主机设备的所述存储访问请求重新定向至所述主机适配器。14.根据权利要求13所。
10、述的方法,其中重新定向所述存储访问请求包括当所述存储访问请求指向所述网络存储或所述第一存储设备时重新定向所述存储访问请求。15.根据权利要求8所述的方法,进一步包括:经由所述I/O互连在所述主机适配器和所述网络适配器之间提供通信路径以在所述网络适配器和所述主机适配器之间促成端对端通信。16.一种集成电路,包括:主机适配器(120),连接至输入/输出(I/O)互连并且被配置为与第一存储设备和第二存储设备进行通信,其中所述第一存储设备具有比所述第二存储设备更高的延迟;以及存储逻辑(150),被配置为控制所述I/O互连以使得所述读/写请求经由所述主机适配器而被高速缓存在低延迟存储设备中。17.根据权。
11、利要求16所述的集成电路,进一步包括:服务逻辑,被配置为如果从在所述第二存储设备中高速缓存的所述读/写请求中选择的请求寻址到与网络适配器进行通信的网络存储,则控制所述主机适配器向所述网络适配器发送所述选择的请求,并且如果所述选择的请求寻址到所述第一存储设备,则控制所述主机适配器向所述第一存储设备发送所述选择的请求,并且其中所述网络适配器连接至所述I/O互连。18.根据权利要求16所述的集成电路,其中所述I/O互连被配置为通过在集成电路中实现的将所述I/O互连与所述主机适配器和所述网络适配器相连接的可切换连接路径而提供在所述主机适配器、网络适配器和所述主机设备之间的通信,其中所述可切换连接路径将。
12、所述I/O互连连接至被配置为与所述主机设备相连接的接口,并且其中所述I/O互连权 利 要 求 书CN 103154920 A3/3页4是被配置为在所述主机设备和所述主机适配器之间以及在所述主机设备和所述网络适配器之间有选择地切换通信的外围组件开关。19.根据权利要求16所述的集成电路,其中所述主机设备是对通过所述I/O互连与网络适配器和所述主机适配器进行通信的多个操作系统实例进行操作的多核处理器,并且其中所述I/O互连在被配置为与所述主机设备进行通信的芯片上实现。20.根据权利要求16所述的集成电路,其中所述存储逻辑被配置为对I/O互连进行控制以当所述读/写请求被从所述主机设备发送至网络存储或。
13、所述第一存储时重新定向所述读/写请求以通过所述低延迟存储设备中的高速缓存对所述读/写请求进行服务。21.根据权利要求16所述的集成电路,其中所述I/O互连被配置为向所述主机设备提供对网络适配器和所述主机适配器的访问,并且其中所述I/O互连被配置为在所述网络适配器和所述主机适配器之间提供端对端通信。权 利 要 求 书CN 103154920 A1/7页5统一 I/O 适配器0001 相关申请的交叉引用0002 本公开内容要求于2010年10月20日提交的美国临时申请序列号61/405,091的权益,其通过引用的方式结合于此。背景技术0003 这里出于一般地呈现本公开内容的背景的目的而提供该背景技。
14、术的描述。当前署名的发明人在该背景技术章节中所描述工作的程度的工作以及可能在提交时并不以其它方式限定为现有技术的描述的各方面既未明确地也未暗示地被承认为相对于本公开内容的现有技术。0004 输入/输出(I/O)瓶颈是会对计算系统中的性能造成不利影响的处理困难的一个示例。多核处理器是一种体验到I/O瓶颈的技术。0005 许多多核处理器通过对操作系统的多个实例进行操作来改进处理器的使用。多核处理器可以提供系统资源的多个虚拟实例以适应来自不同操作系统实例的I/O请求。然而,虽然资源可以具有多个虚拟实例,但是仍然存在仅仅单一的物理资源。该矛盾由于物理资源无法同时服务多个请求而导致了I/O瓶颈。0006。
15、 除了I/O瓶颈的增加之外,虚拟化也会通过管理虚拟实例的软件例程而引起处理开销。因此,虽然多核处理器中的虚拟化会带来更好的处理器利用,但是其也导致了若干的低效问题。发明内容0007 在一个实施例中,一种装置包括输入/输出(I/O)互连,被配置为与主机设备相连接并且提供与该主机设备的通信。该装置还包括网络适配器,连接至该I/O互连并且被配置为与网络存储进行通信,以及连接至该I/O互连的主机适配器。该主机适配器被配置为与第一存储设备和第二存储设备进行通信。第一存储设备具有比第二存储设备更高的延迟。该I/O互连被配置为通过在集成电路中实现的将该I/O互连与主机适配器和网络适配器相连接的可切换连接路径。
16、而提供在主机适配器、网络适配器和主机设备之间的通信。0008 在一个实施例中,该I/O互连是外围组件开关,其被配置为在主机设备和主机适配器之间以及主机设备和网络适配器之间有选择地切换通信。该装置进一步包括存储逻辑,其被配置为控制该I/O互连以使得来自主机设备的存储访问请求经由主机适配器而被高速缓存在第二存储设备中。该存储逻辑被配置为控制该I/O互连以当存储访问请求寻址到网络存储或第一存储设备时对来自主机设备的存储访问请求重新定向以通过第二存储设备中的高速缓存对该存储访问请求进行服务。0009 在另一个实施例中,该装置包括服务逻辑,其被配置为如果从在该第二存储设备中高速缓存的该存储访问请求中选择。
17、的请求寻址到该网络存储,则控制该主机适配器向网络适配器发送该选择的请求以进行处理,并且如果该选择的请求寻址到该第一存储设备,则控制该主机适配器对该选择的请求进行处理。说 明 书CN 103154920 A2/7页60010 在另一个实施例中,一种方法包括提供输入/输出(I/O)互连以在主机设备和主机适配器之间以及在主机设备和网络适配器之间切换通信。该主机适配器与第一存储设备和第二存储设备进行通信,并且该第一存储设备具有比第二存储设备更高的延迟。该网络适配器与网络存储进行通信。0011 该方法还包括将来自主机适配器的存储访问请求高速缓存在第二存储设备中,并且如果该存储访问请求寻址到该第一存储设备。
18、,则由该主机适配器对该存储访问请求进行处理。该方法包括如果该存储访问请求寻址到该网络存储,则经由该I/O互连将来自第二存储设备的存储访问请求发送至网络适配器以便进行处理。0012 在一个实施例中,该方法包括使用在集成电路中实现的将该I/O互连与主机适配器和网络适配器相连接的可切换连接路径而提供经由I/O互连的在主机适配器和网络适配器之间的通信路径。在另一个实施例中,该方法包括当存储访问请求指向网络存储或第一存储设备时将来自该I/O互连上的主机设备的存储访问请求重新定向至主机适配器。0013 在另一个实施例中,一种集成电路包括主机适配器,连接至输入/输出(I/O)互连并且被配置为与高延迟存储设备。
19、和低延迟存储设备进行通信。该集成电路还包括存储逻辑,其被配置为控制该I/O互连以使得读/写请求经由主机适配器而被高速缓存在低延迟存储设备中。在一个示例中,该主机设备是对通过该I/O互连与网络适配器和主机适配器进行通信的多个操作系统实例进行操作的多核处理器。该I/O互连例如在被配置为与主机设备进行通信的芯片上实现。此外,该存储逻辑被配置为控制该I/O互连以当读/写请求从主机设备发送至网络存储或高延迟存储时重新定向该读/写请求以通过低延迟存储设备对该读/写请求进行服务。附图说明0014 并入说明书中并且构成其一部分的附图图示了本公开内容的各种系统、方法和其它实施例。将理解,图中所图示的部件边界(例。
20、如,框、框组或其它形状)表示边界的一个示例。在一些示例中,一个部件可以被设计为多个部件或者多个部件可以被设计为一个部件。在一些示例中,被示出为另一部件的内部组件的部件可以被实施为外围组件,并且反之亦然。此外,部件可能并未依比例进行绘制。0015 图1图示了统一混合适配器的一个实施例。0016 图2图示了与统一混合适配器中的通信相关联的方法的一个实施例。0017 图3图示了与统一混合适配器相关联的网络适配器的一个实施例。0018 图4图示了与统一混合适配器相关联的主机适配器的一个实施例。0019 图5图示了在多个集成电路上实现的统一混合适配器第一个实施例。具体实施方式0020 这里对与统一混合适。
21、配器中的通信相关联的系统、方法和其它实施例的示例进行描述。在一个实施例中,统一混合适配器通过在单个适配器中实施多个虚拟化资源来提高多核处理器的效率。以这种方式实施系统资源从处理器去除了I/O瓶颈和处理管理开销以提供对资源的有效访问。0021 参考图1,示出了统一混合适配器100的一个实施例,其在主机设备140和一个或说 明 书CN 103154920 A3/7页7多个系统资源之间提供输入/输出(I/O)互连130。在一个实施例中,统一混合适配器100可以在包括网络适配器110和主机适配器120的具有系统资源的设备中实施。I/O互连130例如将主机适配器120和网络适配器110连接至主机设备14。
22、0。在一个实施例中,I/O互连130是外围组件开关,其有选择地在诸如主机设备140和网络适配器110之类的组件之间切换通信。网络适配器110例如提供对网络存储170的网络访问。主机适配器120例如提供对高延迟存储180和低延迟存储190的访问。0022 在一个实施例中,统一混合适配器100还包括一个或多个逻辑。例如,统一混合适配器100包括存储逻辑150和服务逻辑160。存储逻辑150和服务逻辑160被配置为对主机设备140进行操作并且在改善访问延迟的同时向主机设备140提供对多个系统资源(例如,网络存储170和高延迟存储180)的访问。在一个实施例中,存储逻辑150和服务逻辑160被配置为对。
23、主机设备140进行操作并且向主机设备140提供对多个系统资源的访问。将结合图2对统一混合适配器100的功能细节进行描述。0023 参考图2,图示了与统一混合适配器100中的通信相关联的方法200的一个实施例。从方法200由统一混合适配器100实施并执行以对通过I/O互联130发送的通信进行控制的角度对图2进行讨论。0024 例如,在210,方法200提供I/O互连(例如,I/O互连130)。其进行操作以在统一混合适配器100中的组件之间切换通信。I/O互连130和主机设备140之间的接口对从主机设备140到统一混合适配器100中的部件所传输的通信或者从统一混合适配器100中的部件到主机设备14。
24、0所传输的通信进行中继。0025 在一个实施例中,提供I/O互连130包括提供可在部件之间(例如,在主机适配器120、网络适配器110和主机设备140之间)进行切换的多个连接/通信路径。例如,I/O互连130的可切换连接路径能够将主机适配器120和网络适配器110连接至主机设备140并且还将网络适配器110连接至主机适配器120。因此,在一个示例中,I/O互连130是基于用于在I/O互连130所接收的通信的目的地地址而有选择地改变通信路径的开关。如以下将要描述的,通信包括来自主机设备140并且指向网络存储170或高延迟存储180的存储访问请求(例如,读/写请求)。I/O互连130对路径进行切换。
25、以将该读/写请求指向适当组件。0026 例如,I/O互连130是2x1开关、Nx1开关(其中N表示正整数)、NxN开关等的开关。在一个实施例中,I/O互连130是与外围组件互连快速(PCIe)标准相兼容和/或能够被实施为与作为标准变化的PCIe标准衍生形式相兼容的开关。0027 继续图2,在220,方法200通过I/O互连130将来自主机设备140的读/写请求指向主机适配器120。在一个示例中,控制逻辑150控制I/O互连130以将来自主机设备140的读/写请求指向主机适配器120而无论该读/写请求的目的地如何。然而,当通信到达时,适配器100并不了解该请求的类型是什么。例如,存储逻辑120被。
26、配置为识别来自主机设备140的通信何时是读/写请求并且控制I/O互连130以切换连接路径而将该读/写请求指向主机适配器120。在一个示例中,存储逻辑150通过确定请求是否寻址到网络存储170或高延迟存储180而将该请求识别为读/写请求。如果是,则该方法假定该请求为读/写请求。以这种方式,存储逻辑150使得读/写请求被指向主机适配器120,而其它通信(例如,基本网络通信、非存储访问请求)则如主机设备140原本所请求的那样进行定说 明 书CN 103154920 A4/7页8向。0028 在230,方法200经由主机适配器120将读/写请求高速缓存在低延迟存储设备190中。在一个实施例中,主机适配。
27、器120自动将已经从I/O互联130指向低延迟设备190的读/写请求进行转发以进行高速缓存。在另一个实施例中,主机适配器120和/或相关联逻辑(例如,服务逻辑160)对读/写请求执行高速缓存操作。例如,高速缓存操作可以包括确定读/写请求是否在低延迟存储190中引起高速缓存错失事件、高速缓存命中事件或其它高速缓存事件。以这种方式,读/写请求被有效高速缓存在低延迟存储190中。0029 在一个实施例中,定向和高速缓存读/写请求对于主机设备140而言是透明的。好像该请求被引向所寻址的设备那样,主机设备140例如进行操作以向统一混合适配器100发送读/写请求或者从统一混合适配器100接收读/写请求。以。
28、这种方式,与例如到网络存储170的I/O请求相关联的延迟得以改善。在一个实施例中,以这种方式对读/写请求(例如,存储访问请求)进行定向和高速缓存提供了有所改进的请求服务而并不对主机设备140的操作进行修改。0030 此外,统一混合适配器100对多于一个资源(例如,网络存储170、高延迟存储180)提供访问。典型地,单个适配器仅对单个资源提供访问。由于请求被发送至单个而不是多个适配器,所以将多个适配器合并为统一混合适配器100缓解了来自主机设备140的处理开销。因此,主机设备140对单个适配器的请求进行处理以便对多个资源进行访问。统一混合适配器100在改进主机设备140的操作的同时为主机设备14。
29、0提供了对网络适配器110和主机适配器120的透明访问。0031 一旦读/写请求被指向并高速缓存在低延迟存储190中,请求就例如由它们所寻址的存储设备有选择地进行处理。例如,考虑来自主机设备140的向网络存储170写入信息块的请求。在该示例中,该请求经由I/O互连130而被指向(例如,在220)主机适配器而不是被发送至用于对网络存储170(实际目的地)进行访问的网络适配器110。反而在230,主机适配器120初始地将该请求高速缓存在低延迟存储190中。0032 在一个实施例中,在高速缓存了写入请求之后,主机适配器可以好像从网络存储170发送的确认那样向主机设备140发送该信息已经被存储的确认。。
30、以这种方式,主机设备140相信写入请求已经被处理,这允许主机设备140继续并完成与该请求相关联的任意剩余动作。由于将写入请求处理至高速缓存中比将该请求处理至网络存储170中更快,所以这减少了与在网络存储170中处理该写入请求相关联的延迟。0033 然而,虽然被高速缓存,但是由于数据还没有实际被存储在网络存储170中,所以写入请求还没有完成。相反,该请求被临时高速缓存在低延迟存储190中。因此,在一个实施例中,服务逻辑160从低延迟存储190选择写入请求以如原始意图的那样实现该请求。服务逻辑160例如基于与请求相关联的优先级、服务质量和/或到达顺序或者其它所期望的选择处理来选择要实现的读/写请求。
31、。0034 在240,方法200通过确定之前被高速缓存的所选择的读/写请求是否寻址到高延迟存储设备180而继续。如果所选择的请求寻址到高延迟存储180,则该方法进行至250并且主机适配器120对该请求进行服务。在另一个实施例中,如果所选择的请求寻址到连接至主机适配器120的任意存储设备,则主机适配器120对该请求进行服务。0035 在240,如果该请求并未寻址到高延迟存储,则该方法移动到260,其中方法200识说 明 书CN 103154920 A5/7页9别所选择的读/写请求是否寻址到网络存储170。如果所选择的读/写请求寻址到网络存储170,则方法200进行至270并且经由I/O互连130。
32、将所选择的读/写请求发送至网络适配器110以便进行处理。网络适配器110通过网络连接与网络存储170和/或其它网络存储设备进行通信。因此,网络适配器110将所选择的读/写请求传输至网络存储170以处理该请求。0036 将请求从主机适配器120发送至网络适配器110是I/O互连130如何在统一混合适配器100内提供端对端通信的一个示例。端对端通信例如是主机适配器120和网络适配器110之间的直接通信。当以这种方式进行通信时,主机设备140并不作为中介而参与,这允许主机设备通过不执行这样的功能而减少处理开销。0037 虽然已经关于方法200对要素240-270进行了讨论,但是在一个实施例中,服务逻。
33、辑160控制主机适配器120来执行要素240至270。因此,在其它实施例中,方法200由统一混合适配器100中的一个或多个逻辑所执行。0038 参考图3,图示了网络接口卡(NIC)300的一个实施例。NIC300是图1的网络适配器110的一个实施例。如图1所示,NIC300包括PCIe端点(EP)接口310以与I/O互连130相连接。NIC300还包括一个或多个虚拟NIC320、虚拟开关330、网络协议栈卸载引擎340、媒体访问控制(MAC)350以及提供到网络的连接的以太网端口360的连接。0039 在一个实施例中,NIC300是与多核处理器一起操作以提高处理器性能的聚合网络适配器(CNA)。
34、。例如,考虑经由I/O互连130连接至NIC300的主机设备(例如,图1中的主机设备140)是使用多核处理器的服务器。该多核处理器对多个操作系统实例进行操作以提高处理器性能。操作系统实例与NIC300中的不同虚拟NIC320进行通信以经由以太网360获得对网络的访问。除了为主机设备140上运行的操作系统实例提供虚拟NIC320之外,网络协议栈卸载引擎340针对从主机设备所发送的通信执行协议处理。以这种方式,处理从主机卸载到NIC300。虚拟开关330将通信从与不同操作系统实例进行通信的不同虚拟NIC320切换至卸载引擎340。在一个实施例中,卸载引擎340是被用来将TCP/IP栈的处理卸载到N。
35、IC300的TCP卸载引擎(TOE)。卸载引擎340可以包括互联网小型计算机系统接口(iSCSI)和/或以太网光纤通道(FCoE)以便使用10GB以太网或更高速度进行通信。0040 此外,包括NIC300的网络适配器110的实施例对图1的网络存储170提供访问。例如,在主机设备上运行的操作系统实例通过向网络适配器110发送读/写请求来访问网络存储170。网络存储170例如是网络附加存储(NAS)、存储域网络(SAN)或可通过连接至网络适配器110的网络进行访问的其它存储设备。在其它实施例中,网络适配器110还提供向其它网络设备或其它网络存储设备的网络通信。0041 继续至图4,图示了图1的主机。
36、适配器120的另一个实施例。在该实施例中,主机适配器120包括处理器410、PCIe端点连接420以及用于提供与附接于主机适配器120的SCSI存储设备的通信的串行连接SCSI(SAS)核心控制器430。PCIe端点连接420提供到I/O互联130的PCIe兼容连接。0042 在一个实施例中,主机适配器120通过控制器420提供到多个存储设备的连接。如图4所示,SAS核心控制器430将主机适配器120与两个存储设备(即,SSD440和HDD450)相连接。固态设备(SSD)440是低延迟存储设备,其提供用于对数据(例如,读/写请求)进行高速缓存的低延迟访问时间。硬盘驱动器(HDD)450是被主。
37、机设备140用来存储信息说 明 书CN 103154920 A6/7页10的高延迟存储设备。相对于SSD440的访问速度,该延迟是“高”的。0043 虽然主机适配器120被图示为与两个存储设备相连接,但是应当理解的是,主机适配器120可以根据实施方式而连接至更大或更小数目的设备。例如,主机适配器120可以向包括硬盘驱动器、磁带、磁带库等的高延迟存储提供通信。主机适配器例如还向包括闪存、随机访问存储、缓冲器、寄存器SSD等的低延迟存储提供通信。0044 在一个实施例中,主机适配器120通过控制器(例如,SAS控制器430)提供对存储设备的访问。该控制器例如是主机总线适配器(HBA)控制器、小型计。
38、算机系统接口(SCSI)控制器、光纤通道控制器、外部串行高级技术附件(eSATA)控制器、电子集成驱动器(IDE)控制器、火线控制器、通用串行总线(USB)控制器等。0045 图5图示了来自图1的统一混合适配器100的附加实施例,其配备有单独的集成电路和/或芯片。在该实施例中,来自图1的网络适配器110被实现为单独的集成电路500。此外,I/O互连130是独立的集成电路510。另外,主机适配器120、存储逻辑150和服务逻辑160也在独立的集成电路520上实现。该电路经由连接路径进行连接以传输信号。0046 在集成电路510中实现的I/O互连130通过系统接口连接至主机设备140。该系统接口例。
39、如是PCIe接口、PCI接口、英特尔快速通道互连(QPI)接口、超传输(HT)接口等。I/O互连130的可切换连接路径例如在将I/O互连130与主机适配器120和网络适配器120相连接的集成电路510中实现。0047 虽然集成电路500、510和520被图示为分离的集成电路,但是它们可以被集成到共用电路板上。此外,与所图示的相比,集成电路500、510和520可以被组合为更少的集成电路或者划分为更多的集成电路。此外,在另一个实施例中,集成电路520中所图示的逻辑150和160可以是单独的电路或者被组合成单独的专用集成电路。在其它实施例中,与逻辑150和160相关联的功能可以被实现为由处理器(例。
40、如,图4的处理器410)所执行的固件。0048 下文包括这里采用的所选择术语的定义。该定义包括落入术语范围之内并且可以被用于实施的组件的各种示例和/或形式。该示例并非旨在于限制。术语的单数和复数形式都可以处于该定义之内。0049 对“一个实施例”、“实施例”、“一个示例”、“示例”等的引用指示这样描述的(多个)实施例或(多个)示例可以包括特定特征、结构、特性、性质、要素或限制,但是并非每个实施例或示例都必然地包括该特定特征、结构、特性、性质、要素或限制。此外,短语“在一个实施例中”的重复使用虽然可以,但是并不必然指代相同的实施例。0050 如这里所使用的“逻辑”包括但不限于用于执行(多个)功能。
41、或(多个)动作,和/或引起来自另一逻辑、方法和/或系统的功能或动作的硬件、固件、在非瞬态介质上存储或在机器上执行的指令和/或各项的组合。逻辑可以包括具有所编程指令的微处理器、离散逻辑(例如,ASIC)、模拟电路、数字电路、编程的逻辑设备、包含指令的存储器设备等。逻辑可以包括一个或多个门电路、门电路组合,或者其它电路组件。在描述多个逻辑的情况下,可以有可能将多个逻辑整合为一个物理逻辑。类似地,在描述单个逻辑的情况下,可以有可能将该单个逻辑在多个物理逻辑之间进行分布。这里所描述的一个或多个组件和功能可以使用一个或多个逻辑部件来实施。0051 虽然出于说明简化的目的而将所图示的方法示出并描述为一系列的块。但是方法说 明 书CN 103154920 A10。