CN101971157B - 利用增强型端口倍增器的方法、装置及系统 - Google Patents

利用增强型端口倍增器的方法、装置及系统 Download PDF

Info

Publication number
CN101971157B
CN101971157B CN200980109897.9A CN200980109897A CN101971157B CN 101971157 B CN101971157 B CN 101971157B CN 200980109897 A CN200980109897 A CN 200980109897A CN 101971157 B CN101971157 B CN 101971157B
Authority
CN
China
Prior art keywords
port
multiplier
network
port multiplier
multipliers
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.)
Expired - Fee Related
Application number
CN200980109897.9A
Other languages
English (en)
Other versions
CN101971157A (zh
Inventor
C·麦斯威尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lattice Semiconductor Corp
Original Assignee
Silicon Image Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Silicon Image Inc filed Critical Silicon Image Inc
Publication of CN101971157A publication Critical patent/CN101971157A/zh
Application granted granted Critical
Publication of CN101971157B publication Critical patent/CN101971157B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0032Serial ATA [SATA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Bus Control (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)
  • Error Detection And Correction (AREA)

Abstract

在此提供了利用增强型端口倍增器的一种方法、装置及系统。在一个实施方案中,一个网络主机被配置为与网络中的一个端口倍增器相连接。该端口倍增器被配置为被级联而与多个端口倍增器以及多个网络装置相连接。

Description

利用增强型端口倍增器的方法、装置及系统
技术领域
本发明的多个实施方案总体上涉及网络的领域,并且更具体地涉及利用增强型端口倍增器的一种方法、装置及系统。背景技术
一个网络可以包括多种个人电子媒体装置的一种互连。为了共享数据、提高便利性并且更为充分地利用每一个元件,可以将不同的媒体装置连接在一起。然而,传统机制妨碍了用户享用不同元件和部件(如对端口倍增器)的潜在效益,这是通过限制这类端口倍增器的高级性能和操作。例如,传统的机制不允许端口倍增器进行级联,从而限制了一个标准的端口倍增器只具有一个单一层级的连接装置。图1展示了一种传统机制,它不允许端口倍增器104进行级联,因此只允许装置106、108构成的一个单级116通过端口倍增器104的两个装置端口112、114连接至端口倍增器104上。端口倍增器104通过主机端口110连接至一台主机102。换言之,所示的现有技术不允许端口倍增器104级联进入那些可与端口倍增器104连接的附加装置中。该1∶2端口倍增器104受限于不超过两个装置106、108的单一级116,因此这就限制了端口倍增器104以及所展示的使用该端口倍增器104的网络100的高级性能和优点。
图1的端口倍增器104可以包括串行高级技术附件(“SATA”或“串行ATA”)端口倍增器,它是一种兼容SATA-IO标准的端口倍增器。SATA 1.0规范及后期的SATA II端口倍增器规范可以在www.serialata.org上获得。串行ATA国际组织:2005年10月27日颁布的串行ATA修订版2.5(可在www.serialata.org上获得)是早期SATA规范的修订版,并且包括了关于SATA端口倍增器的信息,例如在第十六章。因为它不允许进行级联,最终结果是用户无法获得能够提供高端性能和优势的易于使用并且低成本的端口倍增器。发明概述
在此提供了利用增强型端口倍增器的一种方法、装置及系统。
在一个实施方案中,一种装置包括一个网络主机,该网络主机被配置为与网络中的一个端口倍增器相连接。该端口倍增器被配置为被级联成为与多个端口倍增器以及多个网络装置相连接。
在一个实施方案中,一种系统包括一种端口倍增器增强机制,该端口倍增器增强机制通过一个端口倍增器将一个网络主机联接到多个网络装置上,这是通过级联成为接受该多个网络装置以及多个端口倍增器来增强该端口倍增器,该多个网络装置有待连接到该网络主机上。该网络主机通过一种标准通信信号与该端口倍增器进行通信。
在一个实施方案中,一种方法包括通过一个端口倍增器将一个网络主机联接到多个网络装置上,这是通过级联成为接受该多个网络装置以及多个端口倍增器来增强该端口倍增器,该多个网络装置有待连接到该网络主机上。该方法进一步包括通过一种标准通信信号建立该网络主机与该端口倍增器之间的通信。附图简要说明
通过举例而非通过限制展示了本发明的多个实施方案,在附图的这些图例中相同的参考号代表相似的元件:
图1展示了使用一个端口倍增器的一种传统机制;
图2展示了一种网络实施方案,该网络采用一种端口倍增器增强机制的实施方案;
图3展示了一种端口倍增器增强机制的实施方案;
图4展示了一种网络实施方案,该网络采用一种端口倍增器增强机制的实施方案;
图5A至5B展示了一种网络的多个实施方案,该网络采用了一种端口倍增器增强机制的实施方案;
图6展示了一种网络实施方案,该网络采用一种端口倍增器增强机制的实施方案;
图7展示了一种端口倍增器的实施方案;
图8展示了进行端口倍增器增强的一种过程的实施方案;
图9展示了在通电后设定路由图寄存器的一种过程的实施方案;
图10A展示了一种网络的实施方案,该网络采用了一种端口倍增器增强机制以及一种设定路由图寄存器的机制;
图10B展示了用于端口倍增器的一种路由图寄存器的实施方案;
图10C展示了用于一种装置的装置端口的一种路由图寄存器的实施方案;以及
图11A至11F展示了设定路由图寄存器的一个处理序列的实施方案。详细说明
本发明的多个实施方案总体上是针对端口倍增器的增强。
如在此使用的,“网络”或“通信网络”是指在多个装置之间递送数字媒体内容(包括音乐、音频/视频、游戏、相片、以及其他内容)的一种互联的网络。例如,一个端口倍增器网络主要是用于通过一个或多个端口倍增器递送SATA、帧信息结构(FIS)等;尽管所递送的SATA及FIS可以包括数字媒体的形式。娱乐网络可包括个人娱乐网络,如家庭中的网络、商务环境中的网络、或多个装置和/或多个部件的任何其他网络。在一个网络中,某些网络装置可以作为媒体内容的来源,如数字电视调谐器、有线机顶盒、视频存储服务器、以及其他的来源装置。其他装置可以显示或使用媒体内容,如数字电视、家庭剧院系统、音频系统、游戏系统、以及其他装置。此外,某些装置(如视频与音频存储服务器)可以是旨在用于存储或传输媒体内容。某些装置可执行多项媒体功能。在一些实施方案中,这些网络装置可以同处在一个单一局域网上。在其他实施方案中,这些网络装置可以跨越多个网络区段,如通过在多个局域网之间隧道连通。这种娱乐网络可以包括多个数据编码和加密过程。
应当注意在以下示图并且贯穿本文件中,1∶15的比例仅被用作是最大数量层级(例如,网络装置和端口倍增器的个数)的一个实例,这些层级可通过主端口倍增器或顶层端口倍增器链接至一个网络主机(例如,标准SATA主机)上,该主端口倍增器或顶层端口倍增器实际上是一种二端口的端口倍增器(例如,标准的1∶2 SATA端口倍增器)。换言之,在一个实施方案中,一个标准的1∶2端口倍增器充当一个增强的1∶15端口倍增器,这样对它进行级联来接受任何数量的装置(例如15个装置以及15个端口倍增器),并使网络主机误识别并认为该标准的1∶2端口倍增器是一个具有15个端口(尽管在物理上它有两个端口)的增强的1∶15端口倍增器。
例如,利用这种技术,该端口倍增器的一个端口被用作一个常规装置端口以连接到一个网络装置(例如,磁盘驱动器)上,而第二个端口被用作一个扩展端口来接收另一个标准的1∶2端口倍增器,以充当一个增强的1∶15端口倍增器,并如此等等。可以设想,该端口倍增器的两个端口都可以用作扩展端口,在这种情况中,可以在它上面连接两个附加的端口倍增器。与此相反,在级联链中任何端口倍增器的两个端口都可以用作标准装置端口以接收最多两个网络装置,特别是在级联即将结束时。可以设想,在一些实施方案中,可以对一个端口倍增器进行增强,使其表现出具有多个端口,并且端口的数量并不限于15,而使主机误识别该端口倍增器具有所述数量的端口。贯穿本文件,顶层端口倍增器的级联层级的最大数量或者多个装置与附加端口倍增器(可以将它们级联为与顶层端口倍增器相连接)的数量是15;然而,可以设想,15个层级或15个端口倍增器或15个装置(例如,增强的1∶15端口倍增器)仅仅是为了简洁与清晰的目的使用的一个实例,而最大的数量可能是任何数值(例如,SATA协议的最大数量是15),而最小数量可以是零。
端口倍增器是指一种基于硅的装置,该装置允许它的端口与多个倍增器装置(例如,硬盘驱动器)进行通信。这些端口包括串行ATA端口。端口倍增器可置于母板的底板上,并且对包括SATA驱动器的装置而言是透明的。在一个实施方案中,端口倍增器允许对存储系统提供成本效益好的和扩展的驱动器扩充能力,这些系统是相对简单的机制,允许一个单一的活动主机与多个装置通信。此外,多个端口倍增器允许在个人电脑(PC)或带有多个装置的服务器的内部和外部均提供简单的、成本效益好的存储器可扩充能力,而且无需额外的控制器来扩展存储器。与其他技术例如通用串行卡(USB)硬盘驱动器(例如,USB 1.1,1.2.0等等)、火线技术等相比,无额外控制器可以显著地提升外部储存器中的性能。SATA主机包括一个计算机系统主机,该主机通过一个端口倍增器与SATA硬驱动器进行通信。
图2展示了一种网络200的实施方案,该网络采用了端口倍增器增强机制的一个实施方案。在一个实施方案中,采用了标准的1∶2端口倍增器204(例如,标准SATA端口倍增器)与主机202(例如,SATA主机)进行通信,该通信利用一种标准的通信信号(例如,标准SATA通信信号)。在一个实施方案中,利用一种新的端口增强协议,将标准端口倍增器204(顶层端口倍增器)增强为一种增强型1∶15端口倍增器。换言之,虽然端口倍增器204仅具有两个物理端口并且在物理上保持不变,但端口倍增器204在逻辑上被增强了,这样它充当了一个15端口的增强型端口倍增器,并且被级联成为多个层级222、224。在一个实施方案中,随着利用端口增强协议端口倍增器204的增强,使得主机识别端口倍增器204具有15个端口(此时它实际上仅有两个端口)。
顶层端口倍增器204通过基于主机的主机端口212和基于端口倍增器的主机端口226与主机202相连接。端口倍增器204的第一装置端口214被用作连接网络装置208的装置端口。端口倍增器204的第二装置端口被用作一个扩充端口218,以便级联连接另一个端口倍增器206(通过它的主机端口228)。与顶层端口倍增器204类似,第二端口倍增器206也包括一个标准的1∶2端口倍增器,但经过增强它像一个增强型的1∶15端口倍增器一样起作用,以用于通过其扩充端口220与装置端口216进行进一步的级联。第二装置210与连接到第二端口倍增器206的第三端口倍增器(未展示)形成一个第二层级224的级联,而第二端口倍增器206与第一装置208形成一个第一层级222的级联。在一个实施方案中,在任意端口倍增器204、206(以及其他未展示的)都不具有多于两个物理端口的情况下,这种形式的级联可以持续15个层级,而无需在所示的单一主机202上添加任何主机。在后续的图示中展示了端口倍增器增强网络200的多种实际的实施方式(例如,菊花链实施方式、金字塔或中枢式实施方式等)。
图3展示了一种端口倍增器增强机制300的实施方案。在一个实施方案中,端口倍增器增强机制300使用具有端口倍增器增强协议(增强协议)的端口倍增器增强模块(增强模块)306将具有两个物理端口308的标准1∶2端口倍增器302增强为一种具有相同的两个物理端口308的增强型1∶15的端口倍增器304。然而,增强型1∶15端口倍增器能够在几个层级上进行级联以接收多达15个的附加端口倍增器与网络装置。网络装置包括ATA数据包接口(ATAPI)装置、ATA装置、等等。
在一个实施方案中,新的增强模块306的新增强协议包括所需要素,范围从通电计数序列、热插拔支持、基于控制的或基于FIS的递送机制等,以便建立标准通信以及(按照可适用的情况)在主机、端口倍增器及网络装置之间增强的通信。在一个实施方案中,将磁盘簇(JBOD)修改为JBOD增强型(JBOD-E)以构成新增强型模块306的新增强协议,以用于增强多个端口倍增器,例如端口倍增器302。控制器将每一个驱动器视为一个独立的磁盘,因此每一个驱动器是一个独立的逻辑驱动器。JBOD并不提供数据冗余。此外,使用增强型端口倍增器304的网络包括一个基于JBOD-E或兼容JBOD-E的网络,而该网络的某些标准元件和部件是兼容JBOD的,但是能够与其他兼容JBOD-E的元件和部件一起工作。JBOD是指未按照独立(或廉价的)冗余磁盘阵列(RAID)配置的硬盘。RAID是指提高性能及容错的一种磁盘驱动器的子系统。换言之,RAID是指磁盘驱动器的一个类别,它结合使用多个驱动器以提高性能和容错。RAID是指一种技术,这种技术支持在不同的配置中整合使用两个或更多的硬盘驱动器,其目的是获得更好的性能、整个冗余过程中的稳定性、和/或整个聚集过程中的更大磁盘容量。
图4展示了一种网络400的实施方案,该网络采用了端口倍增器增强机制的一个实施方案。在一个实施方案中,网络400展示了端口倍增器404的一种菊花链方式的级联增强。在所示的实施方案中,对端口倍增器404进行增强以形成级联,从而增加另一个端口倍增器406和一个装置434。类似地,对端口倍增器406也进行增强以形成级联,从而增加另一个端口倍增器408和另一个装置436。这种级联过程一直持续到将端口倍增器432和装置462增加到链上为止。可以设想,多于或少于这里所示的15个装置434-462的任何数量的装置可以从该端口倍增器404级联出来。
在一个实施方案中,端口倍增器404被连接至主机402上。在主机402和顶层增强型端口倍增器404之间的通信信号被视为一种标准SATA信号464。然而,顶层增强型端口倍增器404之后的通信信号被视为增强的SATA信号466、468。换言之,标准SATA信号464是保持在顶层增强型端口倍增器404与主机402之间的,以符合SATA规范并保持装置402与404之间的标准通信。然而,使主机402误认为顶层增强型端口倍增器404具有15个端口,这允许顶层增强型端口倍增器404利用增强的SATA信号466、468进行级联而具有附加的增强型端口倍增器406-432以及装置434-462。
每个增强型端口倍增器404-432被视为一个节点,而端口倍增器404被视为与SATA主机402相连接的顶层端口倍增器,并且与最后一个装置462相连接的最后一个端口倍增器432被视为底层节点。此外,与第三方端口倍增器(未展示)相连接的端口倍增器也可被视为一个底层节点,因为它被认为是最后一个基于JBOD或JBOD-E的SATA端口倍增器;尽管如此,可以设想,第三方端口倍增器可以兼容JBOD。此外,每个节点被视为一个父和/或子节点。附接于当前节点的主机端口上的节点被视为父,而附接于当前节点的装置端口上的节点被视为子。例如,端口倍增器408对于端口倍增器410而言充当一个父节点,而其对端口倍增器406而言则充当一个子节点。因此,端口倍增器408(如同端口倍增器406、410-430一样)被视为中间节点,其中每个节点408-430既充当父节点又充当子节点。利用这种技术,顶层端口倍增器404对于端口倍增器406而言仅充当父节点,因为它没有父节点。与此相反,底层端口倍增器432对于端口倍增器430而言仅充当子节点,因为它没有子节点。在一个实施方案中,网络400是采用JBOD-E协议的JBOD-E标准网络;然而,可以设想并采用其他形式的协议。
就数据路由选择而言,在每个节点404-432处使用路由图(RouteMap)寄存器来协助除其他任务之外在节点404至432之间的通信。例如,每个节点404-432可以管理一组寄存器以在这种JBOD-E标准网络600中的这些端口进行寻址。端口是指一个连接点,它协助将一个节点与另一节点相连接。例如,这里所示的每个SATA端口倍增器404-432各具有两个端口,而一个第三方端口倍增器可以具有不同数量的端口。每个端口倍增器404-432的两个端口可以包括用于连接一个装置(例如,装置434)的装置端口(例如,装置端口470)以及用于连接另一个端口倍增器(例如,端口倍增器406)的主机端口468,如同端口倍增器404的情况。
在一个实施方案中,底层节点432没有任何依赖性地将其RouteMap寄存器更新。如果要求底层节点432向RouteMap寄存器报告,则底层节点432向它的父节点(例如,上层节点)430提供RouteMap寄存器的内容。此时父节点430具有一个有效的RouteMap寄存器并且可以相应地对其父节点428作出响应。重复这个过程,最终顶层节点404能够读取其子节点406的RouteMap寄存器。一旦顶层节点404读取了其子节点406的RouteMap寄存器,顶层节点404于是将一个端口倍增器端口(PMP)分配至它的子节点406,然后子节点406将一个PMP分配给它的子节点408,如此持续下去,直到最终底层节点432从其父节点430接收一个PMP并且所有节点404-432上的RouteMap寄存器都被设定。
为勾画出这种JBOD-E网络400的拓扑图,主机402访问每一个节点404-432以读取它们对应的RouteMap寄存器。然而,因为网络400中每一个节点404-432可能不具有它自己的标识号,因此要从主机402对独立节点404-432中的每一个进行寻址可能并不容易。为了克服这个障碍,引入令牌技术的一种实施方案,并且来自令牌所属的节点404-432的RouteMap寄存器要根据命令(例如,读取端口倍增器命令)被返回。可以通过更新相应的令牌信息寄存器(例如,TokenInfo寄存器)而使一个令牌向前或向后移动。这种技术/过程的一些特征可以包括:(1)使得一个单一令牌在整个JBOD-E网络400中是可供使用的;(2)默认的情况下,JBOD-E网络400的每一个节点404-432中的向前(例如,FWARD)与向后(例如,BWARD)被设定为零;(3)如果一个特定节点(例如节点406)的FWARD全为零,则该节点406具有一个令牌;(4)为了访问连接到一个上层节点(例如,顶层端口倍增器404)的下层节点端口倍增器(例如节点406)的RouteMap寄存器,主机402将FWARD的0位更新为1。然后,该令牌属于连接到上层节点端口倍增器404的下层节点端口倍增器406。此外,当主机402发出命令来读取端口倍增器(例如,读端口倍增器命令)以获得一个RouteMap寄存器时,从与上层节点端口倍增器404相连接的下层节点端口倍增器406接收到响应。为了到达所有节点404-432,通过重复此过程将RouteMap寄存器向前推进,例如在不同的节点404至432之间推进RouteMap寄存器,直到它从底层节点432到达主机402为止。为了向后移动令牌,主机402向TokenInfo寄存器的BWARD位写入路由图。为了简洁清楚的目的,展示了一个简化的网络400;然而,可以设想,在一个网络中可以采用任何数量的充当增强型端口倍增器的端口倍增器、装置、和/或第三方端口倍增器。
图5A展示了一个网络500的实施方案,该网络采用了一种端口倍增器增强机制的实施方案。所示的网络500提供了端口倍增器504的一种中枢式或金字塔式的级联增强。与图4中的菊花链联网机制400中15个层级的端口倍增器和装置不同,在所示的实施方案中,存在四个层级572-578的端口倍增器504-532及一个单一层580的多个网络装置534-560。这些端口倍增器532中的最后一个端口570保留不使用或未分配,因为例如已经达到了十五个装置534-562的最大值。再一次设想,可以分配任何数量的装置(包括多于或少于十五个装置);然而在本文件中,出于简洁、清晰和一致的目的,以最大数量为十五个装置为例。
在一个实施方案中,端口倍增器504包括一个标准1∶2 SATA端口倍增器,这使主机502认为该标准1∶2 SATA端口倍增器是一个增强型1∶15的SATA端口倍增器,它被级联而分配了多达15个装置534-562。这是通过以下方式进行的,首先利用一个主机端口将顶层端口倍增器504连接至主机502,并利用一个标准SATA通信信号582进行通信。然后利用顶层倍增器504的两个端口将一对端口倍增器506、508与顶层倍增器504连接,并且利用增强型SATA通信信号584进行通信。类似地,将其余的端口倍增器510-532与装置534-562连接,并利用增强型SATA通信信号使彼此互相通信。
尽管所示的实施方案采用了15个端口倍增器504-532与15个网络装置534-562,可以设想,可以使用少于或多于15的任何数量的端口倍增器或装置。例如,图5B展示了这样一种网络590,该网络采用了一种端口倍增器增强机制的实施方案。在图5B所示的实施方案中,端口倍增器592与主机591进行通信。然而,与图5A的中枢式联网机制500不同,在图5B所示的实施方案中仅加入了两个端口倍增器593、594来增强顶层端口倍增器592。这两个附加的端口倍增器593、594被进一步增强,通过两个端口倍增器593、594的每一个利用其两个端口而采用了四个网络装置595-598。
可以设想,可以对这种中枢式联网机制590作出不同改变,并且它仍可以形成并实施。例如,不用另一个端口倍增器593,可以使用另一个网络装置利用其第二(装置)端口与顶层端口倍增器592进行通信,而它的第一(主机)端口由端口倍增器594使用。如同其他图例一样,SATA主机591与顶层端口倍增器592之间的通信信号使用一种标准的SATA通信信号586,而其余的这些端口倍增器593、594和装置595-598则利用一种增强型SATA通信信号588进行通信。在一个实施方案中,网络500、590是采用JBOD-E协议的JBOD-E标准网络;然而,可以设想并采用其他形式的协议。
图6展示了一种网络600的实施方案,该网络采用了端口倍增器增强机制的一个实施方案。在所展示的实施方案中,网络600采用了包括第三方端口倍增器608、610的一种中枢式级联形式,这些第三方端口倍增器遵守一种不同的规范和/或由不同的制造商生产,并且使用增强型端口倍增器技术和协议的这两个端口倍增器608、610与其他两个标准端口倍增器604、606共同使用。例如,这两个第三方端口倍增器608、610也许是与JBOD-E协议不兼容的,并且它们也许不具有两个标准SATA端口(例如,端口倍增器608是1∶3的,具有三个端口,而端口倍增器610是1∶4的,具有四个端口、等等),但是仍然利用增强型端口倍增器机制,根据一个实施方案,使得这两个第三方端口倍增器608、610与两个1∶2的SATA端口倍增器604、606一起工作。
在一个实施方案中,顶层端口倍增器604与主机602的主机端口相通信,并进一步与兼容JBOD-E的SATA端口倍增器606和第三方端口倍增器610相通信。第三方端口倍增器610具有四个端口并且与四个网络装置620-626相连接。端口倍增器606通过一个装置端口与网络装置630相连接,并且进一步通过端口倍增器606的主机端口与一个第三方端口倍增器608相连接。第三方端口倍增器608具有三个端口并且与三个网络装置614-616相连接。如本文件中所述的其他级联网络机制一样,这个第三方中枢式级联网络600在主机602与顶层端口机制604之间也采用标准SATA通信信号628,这样使得主机602误认为顶层端口倍增器604是具有15个端口的增强型1∶15端口倍增器。然而,在端口倍增器604-610与网络装置612-626之间的通信信号是增强型SATA通信信号630。
在一个实施方案中,在通电和/或热插拔事件过程中进行计数和编号;然而无论哪种情况,SATA主机602可以不知道此计数过程。顶层端口倍增器604表现为如同是1∶15 SATA端口倍增器,因此SATA主机602将顶层端口倍增器604视为或识别为1∶15的SATA端口倍增器。例如,JBOD-E标准支持符合SATA端口倍增器规范的第三方端口倍增器608、610。当发出命令以访问第三方端口倍增器608、610时,第三方端口倍增器608和610便暴露给它们对应的父级增强型端口倍增器606和604。
例如,在通电过程中,当从主机602接收到“软件重置”命令时,顶层端口倍增器604将软件重置命令发送至相连接的第三方节点610以及下一个(子)节点端口倍增器606上,该端口倍增器对于向其发送命令的另一个第三方端口倍增器608而言充当了一个父节点。这个过程一直持续到命令到达基于ATA/ATAPI的网络驱动器612-626。在将一个寄存器FIS装置612-626发送至主机602之前,并非每一个SATA节点604、606、608、610都必须等待后续软件重置命令的完成。如果软件重置命令的签名是一个端口倍增器604、606的签名,那么读取节点604、606的型号、供货商身份(ID)或全球状态控制寄存器(GSCR)(例如GSCR[0]),以确定节点604、606是否是JBOD-E可兼容的。如果节点604、606是JBOD-E可兼容的,那么当前节点读取节点604、606的路由图(RouteMap)寄存器。此外,每个节点604、606直到其路由图寄存器包括有效信息时才需要作出响应。
在所示的实施方案中,顶层端口倍增器604对端口倍增器606和第三方端口倍增器610而言充当一个父节点。顶层端口倍增器604用作一个顶层节点,因为在它之上没有其他端口倍增器节点,但在网络600中,对于第三方端口倍增器610而言它也充当一个底层节点。类似地,端口倍增器606对顶层端口倍增器604而言充当一个子节点,而在网络600中,对于第三方端口倍增器608它充当一个父节点。在网络600中端口倍增器606对于第三方端口倍增器608而言的确用作一个底层。相反,在没有父或上层节点的情况下,端口倍增器604被视为一个顶层节点。
图7展示了端口倍增器700的一个实施方案。所展示的端口倍增器700包括一个标准SATA端口倍增器,该标准SATA端口倍增器能够作为增强型端口倍增器以便被用在具有端口倍增器增强机制的网络中,如贯穿本文件所说明的。端口倍增器700包括两个标准装置端口706、708(例如,SATA装置端口)以对接两个网络装置。采用端口倍增器增强机制的一个实施方案时,装置端口706、708中的一个用作一个主机端口以便将端口倍增器700连接至另一端口倍增器,而另一个装置端口仍可用作一个装置端口以便连接至一个装置。在另一个实施方案中,两个装置端口706、708都可以用作主机端口以连接至两个其他的端口倍增器上。贯穿本文件对这种级联端口倍增器700的端口倍增器增强机制进行了描述。
端口倍增器700进一步包括一个主机端口704(例如,SATA主机端口),如果端口倍增器700用作网络中的顶层节点端口倍增器,则这个主机端口被用于连接至一个网络主机(例如SATA主机)上,或者如果端口倍增器700用作网络中的中间层或底层节点端口倍增器,则这个主机端口被用于连接至一个父节点端口倍增器上。装置端口706、708和主机端口704通过缓冲器710-714被连接至端口倍增器核芯702上。
端口倍增器700进一步包括状态发光二极管(LED)驱动器716、内建自测(BIST)及联合测试行动小组(JTAG)机制718、锁相环(PLL)724、串行电可擦除可编程只读存储器(EEPROM)722、以及SATA外壳管理桥(SEMB)720。LED是指一种半导体二极管,正如在普通的LED电路中一样,当在p-n结正向偏置时它发出非相干的窄谱光。集成电路(IC)内的BIST机制718是验证IC内部的全部或部分功能性的一种功能。例如,可以在高级的现场总线系统中提供BIST机制718以验证其功能。JTAG 718是IEEE 1149.1标准经常使用的名称,该标准题为“标准测试访问端口及边界扫描体系结构”,它用于测试访问端口,这些端口用于利用边界扫描来测试印刷电路板。
PLL 724是指一种产生信号的电子控制系统,该信号包括相对于一个“参考”信号的相位的一种固定关系。它是现代锁相环的前身。EEPROM是指用在计算机与其他装置中以存储少量易失性数据(例如,校准表格或装置配置)的一种非易失性储存芯片。串行EEPROM 722通常运行在三个阶段:OP码阶段、寻址阶段及数据阶段。OP码通常为输入至EEPROM装置的串行输入针的前8位(或对于大多数内置集成电路间(I2C)装置是隐式的);接着是根据装置的深度的8至24位的寻址,然后是读或写数据。SEMB 720在主控制器和伴随外壳管理装置之间通过I2C总线传递带内外壳管理数据。
图8展示了用于执行端口倍增器增强过程的一个实施方案。在处理块802中,识别出一个主机(例如,SATA主机)和一个标准二端口端口倍增器(例如标准1∶2 SATA端口倍增器)。接着利用一个主机端口在处理块804中将主机连接至端口倍增器。主机和端口倍增器之间的通信是通过包括标准通信信号(例如,标准SATA通信信号)的一个通信信号来建立的。在一个实施方案中,在处理块806中,将具有新端口倍增器协议的新端口倍增器增强机制引入到主机与端口倍增器中。利用该增强机制,在处理块808中使主机误认为标准二端口端口倍增器具有多于两个的端口(例如,15个端口)。
一旦主机已经开始认可端口倍增器具有多于两个的端口,则该端口倍增器充当一个顶层端口倍增器并在处理块810中级联成为与多个端口倍增器和网络装置连接。如在之前图示中所述,通过在链上增加一个或多个端口倍增器与网络装置直到最大数量(例如,15个装置与15个端口倍增器),可以完成不同方式的级联(例如,菊花链式、中枢式、第三方中枢式等)。这种技术在之前的图示和本文件的其他地方作了进一步解释。
图9展示了在通电后设定路由图寄存器过程的实施方案。在一个实施方案中,在处理块902处进行通电,接着在处理块904处检查节点的身份。三种身份包括一个顶层节点(它在处理块906中只能是一个父节点)、一个底层节点(它在处理块916中只能是一个子节点)、或一个中间层节点(它在处理块926中可以既是父节点也是子节点)。如果节点被识别为顶层节点(例如,顶层端口倍增器),则在处理块908中顶层节点等待来自其子节点(并不一定是底层节点)的RouteMap寄存器。在处理块910中,分配PMP。接着在处理块912中,将更新的RouteMap寄存器发送至子节点,然后顶层节点在处理块914准备就绪。
如果该节点是一个底层节点,则在处理块918中填写通道编号(CHNUM)。在处理块920中,请求底层节点的父节点(并不一定是顶层节点)读取RouteMap寄存器。在处理块922中,底层节点等待父节点写入RouteMap域,然后底层节点在处理块924中准备就绪。
返回参看处理块926,如果该节点被识别为是一个中间层节点(例如,非顶层节点或底层节点),则中间层节点在处理块928中等待来自其子节点的RouteMap寄存器。在处理块930中,填写CHNUM。在处理块932中,请求中间层节点的父节点读取RouteMap寄存器。然后在处理块934中,中间层节点等待父节点更新RouteMap域,并且在处理块936中分配PMP。接着在处理块938中,父节点将更新的RouteMap寄存器发送至子节点。然后中间层节点在处理块940中准备就绪。
图10A展示了一种网络1000的实施方案,该网络采用了一种端口倍增器增强的机制及一种设定路由图寄存器的机制。在一个实施方案中,路由图(RouteMap)寄存器是在通电后设定的,并且使其准备就绪从主机1002开始传送FIS。用于节点1004-1008(例如,端口倍增器1006)的RouteMap寄存器包括关于节点1006的路由图(RouteMap)的相关信息。CHNUM_NODE是指在节点1006下或与其直接通信的装置1020的数目,而ROUTEMAP_NODE是指与属于节点1006的PMP(例如,PMP5)相对应的一个位。用于装置1010-1018(例如,第一装置Dev0,1012)的RouteMap寄存器包括与网络1000中的第一装置Dev0,1012的路由图(RouteMap)相关的信息。在这种情况下,CHNUM_D0是指Dev0端口下装置(例如装置1012)的总数,而ROUTEMAP_D0是指与属于Dev0端口的PMP(例如PMP0)相对应的每个位。与其他装置Dev1-Dev4,1014-1020(在某些情况下,可达15个装置,Dev1-DevE)相关的寄存器具有与第一装置Dev0相同的信息。
一旦更新了RouteMap寄存器,接下来就可以对远程装置进行访问。为进行主机至装置的数据传送,节点1006-1010从FIS头接收PMP号(例如PMP0-PMP5),查阅RouteMap寄存器,并且确定哪一个装置端口传送FIS。在进行装置至主机的数据传送的情况中,底层节点1106-1008(例如,直接附接于装置1012-1020或第三方端口倍增器1010的节点)相应地更新PMP域,并且非底层节点(例如,第三方端口倍增器1010)传送FIS而不作任何修改。此外,在进行主机至装置的数据传送的情况中,如果目标PMP并不存在,则利用SATA规范中的SyncEscape机制终止FIS。如果访问是为了读取PSCR区段,并且目标PMP存在,则利用PortNum获得路由信息。对于顶层节点1004而言,如果访问是为了读取PSCR区段,并且目标PMP并不存在,则将预定的默认值返回主机1002。为了避免再次传输也无法解决的冲突问题,JBOD-E中所有端口都能够接收完整的FIS。为了保证来自主机1002的主机端口的FIS能够到达装置1012-1020的目的装置端口,在一个可能的总线冲突(例如,SATA规范中的XRDY-XRDY冲突)的情况下,给予父节点较高的优先级,这样可以避免可能的总线冲突,并且数据可以畅通地传输。
在一个实施方案中,只要这些第三方端口倍增器1010符合SATA端口倍增器规范,JBOD-E就支持作为网络1000的一部分的第三方端口倍增器1010。例如,节点1008发出一串命令以访问第三方端口倍增器1010,并且将第三方端口倍增器1010的端口暴露给它的父节点1004,该节点在本实例中是顶层端口倍增器1004。节点1008发出命令(例如,软件重置命令)至PMP再到达第三方端口倍增器1010。节点1008读取GSCR[0]以获得装置1012-1016的身份,并确定第三方端口倍增器1010是否是JBOD-E可兼容的。节点1008接着读取GSCR[2]以获得第三方端口倍增器1010的装置端口的数目。节点1008通过RouteMap寄存器将装置端口的数目返回给父节点1004。节点1002维护一个表,该表将RouteMap信息转换为第三方端口倍增器1010的实际PMP。此外,该表的格式可以是对于实现方式特有的,并且不需要暴露给主机1002。
图10B展示了用于端口倍增器1004-1008的路由图寄存器1050的实施方案。所展示的用于端口倍增器1004、1006、1008的路由图(RouteMap)寄存器1050的实施方案包括用于节点1004、1006、1008的路由图相关信息,该路由图具有一个区段CHNUM_NODE1052,该区段包括在当前节点下的装置总数(例如,对于节点1006有一个装置1020),并且包括区段ROUTEMAP_NODE 1056,该区段包括与属于当前节点的PMP相对应的每一个位(例如,节点1006的PMP5对应于装置1020)。寄存器1050进一步包括一个保留区段1054以便包括其他相关信息。
图10C展示了用于装置1012-1020的装置端口的路由图寄存器1060的实施方案。所示的用于装置1012-1020的装置端口的路由图(RouteMap)寄存器1060的实施方案包括用于装置端口的相关路由图信息,该路由图具有一个区段CHNUM_D0 1062,该区段包括在一个具体装置端口下的装置总数,例如对于装置1012是D0,并且包括区段ROUTEMAP_D0 1066,该区段包括与属于该特定装置端口的PMP相对应的每一个位(例如,装置端口的PMP0对应于第一装置D0,1012)。寄存器1060进一步包括一个保留区段1064以便包括其他相关信息。
图11A至11F展示了设定路由图寄存器的处理序列的实施方案。图11A展示了端口倍增器增强网络1100,该网络具有SATA主机1102和三个兼容JBOD-E的SATA端口倍增器1104-1108,多个装置包括HDD驱动器1112-1120,其中驱动器1118、1120可以包括SATA驱动器。其他三个装置1112至1116与第三方端口倍增器1110相连接。在所展示的实施方案中,存在三个RouteMap寄存器,每一个寄存器对应于一个兼容JBOD-E的端口倍增器1104-1108,这些端口倍增器将进行更新。
图11B展示了与端口倍增器节点1104、1106、1108相关联的RouteMap寄存器1122、1124、1126。如图所示,RouteMap寄存器1122、1124、1126被设置为要被清零。图11C展示了从底层节点1106、1108开始读取RouteMap寄存器1122、1128、1130。例如,当一个装置端口1154、1158(例如,节点1106的装置端口B1154和节点1108的装置端口B 1158)被连接到一个单一装置1120、1118上时,用于对应的装置端口,DB,1154、1158的CHNUM数1128、1130是1。类似地,当一个装置端口,DA,1152未连接到任何装置上时,用于该装置端口,DB,1152的CHNUM数1128也是1。然而,如图所示,如果一个装置端口1156被连接到一个端口倍增器1110上,则用于装置端口,DA,1156的CHNUM 1130就是连接到该端口倍增器1110的装置1112、1114、1116的数目,在这种情况中该数目是对于三个装置1112、1114、1116是三。此信息通过读取端口倍增器1110的GSCR[2]获得的。用于节点1110的节点数量1130的RouteMap寄存器的CHNUM 1130只是对装置端口1156、1158的每个RouteMap寄存器的CHNUM相加,在这种情况中因为有四个装置1112、1114、1116、1118,该数是四。
类似地,如图11D所示,用于父级或顶层端口倍增器节点1104的装置端口DA 1160和DB 1162的CHNUM 1132是装置1112、1114、1116、1118和1120的装置总数,这些装置对应地通过底层或子端口倍增器1106和1108相连接。在这种情况下,对于子端口倍增器装置端口DA 1152、1156,装置端口DA 1160的CHNUM 1132是四,而对于子端口倍增器装置端口DB 1154、1158,装置端口DB1162的数目是二。端口倍增器节点1104的节点数1132是六,该数目对应地是DA与DB 1132的数目四与二之和。然后顶层端口倍增器1104将PMP分配给装置端口DA 1152(表示无装置的一个端口)、DB 1154(表示具有一个装置1120的一个端口)、DB 1158(表示具有一个装置1118的一个端口)以及DA 1156(表示通过第三方端口倍增器1110而具有三个装置1112、1114、1116的三个端口)中的每一个。
现在参看图11E,它实现了PMP分配机制的实施方案。在一个实施方案中,PMP分配机制包括一种PMP分配算法并且对于实现方式是特定的。在所示的实施方案中,简单地从一个低数至一个高数将PMP分配给装置端口1152、1154、1156、1158中的每一个。因此,顶层端口倍增器节点1104将PMP0、PMP1、PMP2及PMP3分配给装置端口A 1152、1156,将PMP4、PMP5分配给装置端口B 1154、1156。然后顶层端口倍增器1104更新RouteMap寄存器1134、1136、1138的节点数(NODE),同时子端口倍增器1106、1108更新RouteMap寄存器1134、1136、1138的装置端口数(DA、DB)。现在参考图11F,顶层节点1104更新其子节点1106与1108的RouteMap寄存器(NODE)1136与1138,同时子节点1106、1108更新其装置1120、1112-1116、1118的RouteMap寄存器(DA,DB)1136、1138。
在一个实施方案中,多个网络装置在一种客户/服务器网络系统中是互连的,例如在一种个人娱乐网络中。以上图示的网络机制是不同网络的一部分。一个网络可以包括局域网(LAN)、广域网(WAN)、城域网(MAN)、内部网、互联网等等。如在本文件的其他地方所述的,任意数量的网络装置可以被级联而与一个端口倍增器相连接,从而形成一个网络内的网络化机制。在此考虑了通过网络1025可以连接任何数量的装置。一个装置可以通过多个标准及非标准协议(包括本文件中所述的协议)向网络系统中的其他装置传送数据流,例如流媒体数据。
在以上描述中,出于解释的目的,陈述了很多具体细节来提供对本发明的透彻理解。然而,对本领域的熟练技术人员而言,应当清楚的是可以实施本发明而无需这些具体细节中的一些。在其他实例中,多种为人熟知的结构以及装置是以框图的形式示出。所展示的部件之间可能存在中间结构。在此描述的或展示的这些部件可以具有并未展示或描述的额外输入或输出。
本发明的不同实施方案可以包括不同的过程。这些过程可以通过硬件部件来执行,或者可以体现在计算机程序或者多条机器可执行的指令之中,它们可以用来使得一种通用或者专用的处理器或者逻辑电路利用这些指令进行编程来执行这些过程。可替代地,这些过程可以通过硬件和软件的组合来实施。
贯穿本文件说明的一个或多个模块、部件、或元件(如所示出在一种端口倍增器增强机制中或与其相关联的那些)可以包括硬件、软件、和/或它们的组合。在模块包含软件的情况下,可以通过一种机器/电子的装置/硬件制造物品来提供这些软件数据、指令、和/或配置。制造物品可以包括具有用于提供指令、数据等内容的机器可存取/可读媒介。该内容可以导致电子装置(例如在此说明的文件管理器、磁盘、或磁盘控制器)进行所说明的不同运作或执行。
本发明不同实施方案的多个部分可以作为计算机程序产品来提供,这可以包括其上储存了计算机程序指令的一种计算机可读取媒质,这可以用来对一台计算机(或其他电子装置)进行编程以执行根据本发明这些实施方案的过程。这种机器可读媒介可以包括但不限于软盘、光盘、致密只读存储器(CD-ROM)、以及磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或者其他类型适合储存电子指令的媒体/机器可读取媒体。此外,本发明还可以作为计算机程序产品被下载,其中该程序可以从一台远程计算机传送至一台请求计算机上。
这些方法中的很多方法仅以它们最基本的形式进行说明,但多个过程可以增加到这些方法的任何一个之中或从其中删去、并且信息可以加入这些所说明的消息中的任何一个或从其中删去而不背离本发明的基本范围。对于那些本领域的熟练技术人员而言清楚的是可以做出很多进一步的修改和适配。这些具体的实施方案并不用于限制本发明,而是仅为解释本发明。本发明的这些实施方案的范围并非由以上提供的具体实例来决定,而是仅仅由以下的权利要求来决定。
如果提及元件“A”连接到或与元件“B”相连接,元件A可以直接地连接到元件B,或者间接地连接,例如通过元件C。当说明书或权利要求书叙述由至少一个其他部件、特点、结构、过程、或特征A“导致了”一个部件、特点、结构、过程、或特征B时,这意味着“A”是“B”的至少一部分起因,但还可以存在至少一个其他部件、特点、结构、过程、或特征协助导致了“B”。如果本说明书指出一个部件、特点、结构、过程、或特征“可以”、“也许”、或“可能”包含在内时,那么不要求一定包含该具体的部件、特点、结构、或特征。如果说明书或权利要求书提及“一种/一个”要素时,这并不意味着只存在所说明的要素中的一个。
一个实施方案是本发明的一种实现方式或者一个实例。本说明书提到的“一实施方案”、“一个实施方案”、“某些实施方案”、或者“其他实施方案”是指与这些实施方案相关说明的一个具体的特点、结构、或者特性被包括在至少某些实施方案之中,但不是必须包括在所有实施方案之中。“一实施方案”、“一个实施方案”、或者“某些实施方案”等不同的表现形式并不是必须全部都针对同一批实施方案。应该认识到,在本发明的多个示例性实施方案的以上说明中,为了使得本披露流畅并且有助于理解一个或者多个不同创造性方面的目的,本发明的不同特征有时被集合在一个单独的实施方案、示图、或者其说明之中。然而,这种披露方法并不得被解释为反映了一种意图,即提出权利要求的发明所要求的特征要多于在每个权利要求中明确提到的情况。相反,如以下权利要求所反映的,多个创造性的方面在于要少于一个单独的以上披露的实施方案的全部特征。因此,在此明确地将这些权利要求结合到本说明书之中,其中每条权利要求自身独立地作为本发明的一个分别的实施方案。

Claims (13)

1.一种利用增强型端口倍增器的装置,包括:
一个网络主机,该网络主机被配置为与一个网络中的一个端口倍增器相连接;并且
该端口倍增器是与网络主机和多个端口倍增器的其它端口倍增器相连的多个端口倍增器的顶层端口倍增器,其中顶层端口倍增器是增强型端口倍增器,用以建立和维护与其它多个端口倍增器的每一个的通信,来方便在多个级联等级中网络主机、其它端口倍增器和多个网络装置之间的通信,其中其它端口倍增器由中间端口倍增器的一个或多个以及底层端口倍增器的一个或多个组成,其中一个或多个中间端口倍增器是一个或多个增强型中间端口倍增器,用以方便附加的一个或多个级联等级,其中一个或多个底层端口倍增器是一个或多个第三方端口倍增器,用以方便网络主机与一个或多个第三方网络设备之间的通信,其中该顶层端口倍增器通过一种增强型通信信号与其他端口倍增器以及所述多个网络设备通信,以便于所述网络主机与一个或多个第三方网络设备之间的通信。
2.如权利要求1所述的装置,其中该顶层端口倍增器包括具有两个端口的一种串行高级技术附件(SATA)端口倍增器。
3.如权利要求1所述的装置,其中该网络主机包括一个SATA网络主机。
4.如权利要求1所述的装置,其中该网络主机被配置为将顶层端口倍增器识别为具有多于两个端口的一个增强型端口倍增器。
5.如权利要求1所述的装置,其中该网络主机被配置为通过一种标准的SATA通信信号与该顶层端口倍增器进行通信。
6.如权利要求1所述的装置,其中该顶层端口倍增器被配置为通过多个增强型SATA通信信号与其他端口倍增器以及这些网络装置通信。
7.一种利用增强型端口倍增器的系统,包括:
一种端口倍增器网络,被配置成在多个级联等级通过多个端口倍增器将一个网络主机连接到多个网络装置上,端口倍增器网络由顶层端口倍增器、中间端口倍增器以及底层端口倍增器组成,其中:
多个端口倍增器的顶层端口倍增器被配置成将网络主机与多个端口倍增器的其它端口倍增器相连,其中顶层端口倍增器是增强型端口倍增器,用以建立和维护与多个端口倍增器的每一个的通信,来方便在多个级联等级中网络主机、其它端口倍增器和多个网络装置之间的通信,其中其它端口倍增器由一个或多个中间端口倍增器以及一个或多个底层端口倍增器组成,其中一个或多个中间端口倍增器是一个或多个增强型中间端口倍增器,用以方便附加的一个或多个级联等级,其中一个或多个底层端口倍增器是一个或多个第三方端口倍增器,用以方便网络主机与一个或多个第三方网络设备之间的通信,其中该顶层端口倍增器通过一种增强型通信信号与其他端口倍增器以及所述多个网络设备通信,以便于所述网络主机与一个或多个第三方网络设备之间的通信。
8.如权利要求7所述的系统,其中该网络主机包括一个串行高级技术附件(SATA)网络主机,其中该SATA网络主机被配置为通过一种标准通信信号与该顶层端口倍增器进行通信,并且其中该顶层端口倍增器包括一个SATA两端口的端口倍增器,并且该标准通信信号包括一种标准的SATA通信信号。
9.如权利要求7所述的系统,其中其他端口倍增器包括多个SATA两端口的端口倍增器,并且该增强型通信信号包括一种SATA增强型通信信号。
10.如权利要求7所述的系统,其中该网络主机将具有两个端口的端口倍增器识别为具有多于两个端口的一个增强型端口倍增器,其中所述增强型端口倍增器的端口的数目对应于该多个端口倍增器的数目以及该多个网络装置的数目,其中所述增强型端口倍增器通过以级联配置或树配置连接的多个端口倍增器来构造。
11.如权利要求7所述的系统,其中其他端口倍增器包括多个SATA端口倍增器和/或多个第三方端口倍增器。
12.如权利要求11所述的系统,其中该多个端口倍增器中的这些SATA端口倍增器中的每一个被增强,这是通过使其级联成为接受用于接口所需的该多个端口倍增器中的另一个端口倍增器以及该多个网络装置中的一个新的装置直至达到级联层级的一个最大数目。
13.一种利用增强型端口倍增器的方法,包括:
在多个级联等级通过多个端口倍增器将一个网络主机连接到多个网络装置上,其中多个端口倍增器由顶层端口倍增器、中间端口倍增器以及底层端口倍增器组成,其中顶层端口倍增器被配置成将网络主机与多个端口倍增器的其它端口倍增器相连以建立和维护与多个端口倍增器的每一个的通信,来方便在多个级联等级中网络主机与其它端口倍增器之间的通信,其中其他端口倍增器由一个或多个中间端口倍增器以及一个或多个底层端口倍增器组成,其中一个或多个中间端口倍增器是一个或多个增强型中间端口倍增器,用以方便附加的一个或多个级联等级,其中一个或多个底层端口倍增器是一个或多个第三方端口倍增器,用以方便网络主机与一个或多个第三方网络设备之间的通信;以及
建立在多个网络装置、端口倍增器和网络主机之间的通信;以及
通过一种增强型通信信号建立所述顶层端口倍增器、所述其他端口倍增器以及所述多个网络设备之间的通信,以便于所述网络主机与一个或多个第三方网络设备之间的通信。
CN200980109897.9A 2008-03-14 2009-03-12 利用增强型端口倍增器的方法、装置及系统 Expired - Fee Related CN101971157B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/075,906 US7904566B2 (en) 2008-03-14 2008-03-14 Method, apparatus, and system for employing an enhanced port multiplier
US12/075,906 2008-03-14
PCT/US2009/037033 WO2009114739A1 (en) 2008-03-14 2009-03-12 Method, apparatus, and system for employing an enhanced port multiplier

Publications (2)

Publication Number Publication Date
CN101971157A CN101971157A (zh) 2011-02-09
CN101971157B true CN101971157B (zh) 2014-04-09

Family

ID=40802058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980109897.9A Expired - Fee Related CN101971157B (zh) 2008-03-14 2009-03-12 利用增强型端口倍增器的方法、装置及系统

Country Status (7)

Country Link
US (1) US7904566B2 (zh)
EP (1) EP2266047B1 (zh)
JP (1) JP5576804B2 (zh)
KR (1) KR101541113B1 (zh)
CN (1) CN101971157B (zh)
TW (1) TWI541650B (zh)
WO (1) WO2009114739A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8122298B2 (en) * 2008-06-12 2012-02-21 Lsi Corporation Methods and systems for capturing error information in a SATA communication system
US9063655B2 (en) * 2010-05-12 2015-06-23 Silicon Image, Inc. Multi-level port expansion for port multipliers
US9626318B2 (en) 2012-01-26 2017-04-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for storage protocol compliance testing
US9473425B2 (en) * 2013-12-06 2016-10-18 Dell Products L.P. Systems and methods for integrating wireless local area networks on extended bridges
KR101630574B1 (ko) 2014-04-02 2016-06-15 현대중공업 주식회사 선박의 바닥판에서 해수에 돌출되는 공기분사장치
JP2019086959A (ja) 2017-11-06 2019-06-06 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
TW201933131A (zh) * 2018-01-30 2019-08-16 旺玖科技股份有限公司 支援usb主機對主機傳輸的虛擬通訊埠橋接器
JP2019159471A (ja) * 2018-03-08 2019-09-19 キヤノン株式会社 ストレージシステム、その制御方法およびプログラム
CN110989921B (zh) * 2019-10-24 2023-05-26 西安艾可萨科技有限公司 可配置存储阵列系统及其控制方法、通信设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008934A (zh) * 2005-12-20 2007-08-01 晶像股份有限公司 用于在协议定义的链路中为存储设备的系统传送补充消息的隐蔽信道
US7296094B2 (en) * 2004-08-20 2007-11-13 Lsi Corporation Circuit and method to provide configuration of serial ATA queue depth versus number of devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5619722A (en) * 1994-01-18 1997-04-08 Teramar Group, Inc. Addressable communication port expander
US20070022228A1 (en) * 2005-07-22 2007-01-25 Hicks Allison W Method to create expandable storage using serial ATA HDD
EP1748067A1 (en) * 2005-07-29 2007-01-31 Institut Pasteur Polynucleotides encoding MHC class I-restricted hTERT epitopes, analogues thereof or polyepitopes
EP1934751B1 (en) * 2005-08-25 2017-11-08 Lattice Semiconductor Corporation Smart scalable storage switch architecture
JP4897387B2 (ja) * 2006-08-10 2012-03-14 株式会社日立製作所 ストレージ装置およびこれを用いたデータの管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7296094B2 (en) * 2004-08-20 2007-11-13 Lsi Corporation Circuit and method to provide configuration of serial ATA queue depth versus number of devices
CN101008934A (zh) * 2005-12-20 2007-08-01 晶像股份有限公司 用于在协议定义的链路中为存储设备的系统传送补充消息的隐蔽信道

Also Published As

Publication number Publication date
US7904566B2 (en) 2011-03-08
JP5576804B2 (ja) 2014-08-20
WO2009114739A1 (en) 2009-09-17
EP2266047A1 (en) 2010-12-29
CN101971157A (zh) 2011-02-09
EP2266047B1 (en) 2012-06-27
JP2011515749A (ja) 2011-05-19
US20090234985A1 (en) 2009-09-17
KR20100125406A (ko) 2010-11-30
KR101541113B1 (ko) 2015-07-31
TWI541650B (zh) 2016-07-11
TW200939029A (en) 2009-09-16

Similar Documents

Publication Publication Date Title
CN101971157B (zh) 利用增强型端口倍增器的方法、装置及系统
CN101971156B (zh) 用于端口倍增器增强的方法、装置及系统
US7334075B2 (en) Managing transmissions between devices
CN103107960B (zh) 通过开关卡减少交换结构中交换故障的影响的方法和系统
US7953917B2 (en) Communications protocol expander
KR101464571B1 (ko) 가상 usb 복합 디바이스 열거
US8756345B2 (en) Methods and structure for managing protection information with a serial attached SCSI expander
EP1837750A2 (en) Computer system for controlling allocation of physical links and method thereof
CN103793347B (zh) 自配置其端口的路由属性的sas扩展器的方法和结构
US7738397B2 (en) Generating topology information identifying devices in a network topology
CN101788971A (zh) 适配器接口的地址分配
JP2021530813A (ja) 専用低レイテンシリンクを使用した複数のハードウェアアクセラレータのための統合されたアドレス空間
US8694698B2 (en) Storage system and method for prioritizing data transfer access
CN101661453B (zh) 刀片服务器中识别刀片序号的方法
CN101297265A (zh) 从网络附加存储装置断开外部存储装置的方法和装置
US10289576B2 (en) Storage system, storage apparatus, and communication method
CN107480083A (zh) 数据存储访问设备
KR20230073254A (ko) Pcie 디바이스를 위한 가상 핫 플러그 시스템 및 방법
CN107526701A (zh) 热插拔存储设备及系统
CN106990920A (zh) 存储设备扩容方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151127

Address after: oregon

Patentee after: LATTICE SEMICONDUCTOR CORPORATION

Address before: American California

Patentee before: Silicon Image Inc. A. Delaware C.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140409

Termination date: 20190312

CF01 Termination of patent right due to non-payment of annual fee