CN108958645B - 管理数据存储目标设备的物理层 - Google Patents

管理数据存储目标设备的物理层 Download PDF

Info

Publication number
CN108958645B
CN108958645B CN201810225117.8A CN201810225117A CN108958645B CN 108958645 B CN108958645 B CN 108958645B CN 201810225117 A CN201810225117 A CN 201810225117A CN 108958645 B CN108958645 B CN 108958645B
Authority
CN
China
Prior art keywords
physical layer
target physical
target
controller
host
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.)
Active
Application number
CN201810225117.8A
Other languages
English (en)
Other versions
CN108958645A (zh
Inventor
D.E.格哈特
N.E.奥特梅尔
陈昕
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.)
Western Digital Technologies Inc
Original Assignee
Western Digital Technologies 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 Western Digital Technologies Inc filed Critical Western Digital Technologies Inc
Publication of CN108958645A publication Critical patent/CN108958645A/zh
Application granted granted Critical
Publication of CN108958645B publication Critical patent/CN108958645B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • 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/4063Device-to-bus coupling
    • G06F13/409Mechanical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • 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
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • 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
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Abstract

本公开的实施例总体上涉及管理数据存储目标设备的物理层。在一个实施例中,一种由数据存储设备的控制器通过链路重置自动管理数据存储目标设备的物理层的方法包括:在第一链路重置期间发送用于多个目标物理层的公共目标物理地址;将所述公共目标物理层地址存储在所述数据存储设备的非易失性存储器中;重置所述目标物理层;并且在第二链路重置期间发送用于所述多个目标物理层的所存储的公共目标物理层地址。在另一实施例中,一种由数据存储设备的控制器自动管理数据存储目标设备的物理层的方法包括:匹配用于多个目标物理层的接收到的主机地址,并且用所匹配的接收到的主机地址将所述多个目标物理层配置到用于所述多个目标物理层的宽端口中。

Description

管理数据存储目标设备的物理层
技术领域
本公开的实施例总体上涉及管理数据存储目标设备的物理层。
背景技术
主机计算设备通过目标上的端口与诸如数据存储设备的目标进行通信。目标端口包括一个或多个物理层,其被称为phys。物理层是实现物理层功能的电路。对于使用SAS接口协议的数据存储设备,窄目标端口具有单个物理层,而宽目标端口具有两个或更多个物理层。目标物理层通过物理链路(诸如电缆或光纤)物理地耦接到其他主机物理层。物理层使用通过端口的物理链路接收和发送的信号执行各种功能。
目标物理层SAS地址通常经由供应商模式设定或针对特定用户授权配置的唯一固件进行手动配置。目标物理层SAS地址预先限定为以窄端口配置或宽端口配置操作。模式设定或唯一固件方法需要对新选择的模式设定或新固件进行手动干预以更新目标配置中的更改,例如当目标在系统之间移动时,当目标的布线发生变化时,或当耦合到目标的扩展器发生配置更改时。因此,手动干预静态地提供宽端口配置。
期望目标物理层分组在宽端口中,以改善链路故障容忍度、优化数据传输并改善目标物理层的功率管理。然而,SAS协议没有提供如何在目标物理层上建立宽端口链路的限定机制。主机通常通过以下方式在初始开机或启动时管理宽端口配置:在主机想要以宽端口配置的每个物理层上呈现具有共同 SAS地址的目标。如果目标按照通过手动干预的设定在这些物理层上以公共 SAS地址进行响应,则建立宽端口。如果目标按照典型的缺省设定在这些物理层上以不同的SAS地址进行响应,则建立窄端口。
目标不知道主机可能尝试将哪个物理层分组到宽端口中。在宽端口中使用或选择之前,主机对目标的物理层没有任何可见性。因此,需要进入宽端口中的目标物理层的改善的管理。
发明内容
本公开的实施例总体上涉及管理数据存储目标设备的物理层(phys)。
在一个实施例中,一种由数据存储设备的控制器通过链路重置(link reset) 自动管理数据存储目标设备的物理层的方法包括:在第一链路重置期间,发送用于多个目标物理层的公共目标物理地址,将所述公共目标物理层地址存储在所述数据存储设备的非易失性存储器中,重置所述目标物理层,以及在第二链路重置期间,发送用于所述多个目标物理层的所存储的公共目标物理层地址。
在一个实施例中,一种数据存储设备包括控制器、多个物理层、包含查找表的非易失性存储器、以及包含指令的非暂时性计算机可读存储介质。当由所述控制器执行时,所述指令使得所述控制器发送用于所述物理层的公共物理层地址,将所述公共物理层地址存储在所述查找表中,重置所述物理层,以及发送所存储的公共物理层地址。在另一实施例中,所述数据存储设备包括控制器、端口、多个物理层、以及将所述端口自动配置为宽端口的装置。
在另一实施例中,一种由数据存储设备的控制器自动管理数据存储目标设备的物理层的方法包括匹配用于多个目标物理层上的接收到的主机地址并且用所匹配的接收到的主机地址将所述多个目标物理层配置到用于所述多个目标物理层的宽端口中。
在另一实施例中,一种数据存储设备包括控制器、一个或多个端口、多个物理层、以及包含指令的非暂时性计算机可读存储介质。当由所述控制执行时,所述指令使得所述控制器接收用于配置到公共端口中的最大物理层限制的设定,以及在不超出所述最大物理层限制的设定的情况下,将所述多个物理层配置到所述一个或多个端口中。在又一实施例中,一种数据存储设备包括控制器、一个或多个端口、多个物理层、以及将所述多个物理层配置到用于物理层的至少宽端口中的装置,所述宽端口具有匹配的接收到的主机地址。
在又一实施例中,一种管理数据存储目标设备的物理层的方法包括等待接收目标物理层上的主机地址,并且在等待接收所述目标物理层上的主机地址之后,发送用于所述目标物理层的目标物理层地址。
在又一实施例中,一种数据存储设备包括控制器、第一物理层和第二物理层、以及包含指令的非暂时性计算机可读存储介质。当由所述控制执行时,所述指令使得所述控制器等待接收所述第一物理层上的主机地址,并且在等待接收所述第一物理层上的主机地址之后,发送用于所述第一物理层的物理层地址。在一个实施例中,一种数据存储设备包括控制器、多个物理、以及装置,所述装置用于确定在SAS识别窗口期间要发送的物理层地址,以将所述物理层配置为宽端口配置。
在一个实施例中,一种管理数据存储目标设备的物理层的方法包括:配置包括第一目标物理层的目标端口,以及重新配置包括第一目标物理层和第二目标物理层的目标端口。
在一个实施例中,一种数据存储设备包括控制器、第一物理层和第二物理层、端口、以及包含指令的非暂时性计算机可读存储介质。当由所述控制执行时,所述指令使得所述控制器配置所述端口以包括所述第一物理层,并且重新配置所述端口以包括所述第一物理层和所述第二物理层。在又一实施例中,一种数据存储设备包括控制器、一个或多个端口、多个物理层、以及装置,所述装置用于将所述多个物理层配置为一配置。所述配置选自由以下中的一个构成的组:(1)四个窄端口,(2)两个窄端口和一个宽端口,(3) 一个窄端口和一个宽端口,(4)两个宽端口,以及(5)一个宽端口。
附图说明
为了能够详细理解本公开的上述特征,可以通过参考实施例来获得上面简要概述的本公开的更具体描述,其中一些实施例在附图中示出。然而,要注意的是,附图仅示出了本公开的典型实施例,并且因此不被认为是对其范围的限制,因为本公开可以允许其他等效实施例。
图1是根据一个实施例的系统的示意图。
图2是根据一个实施例的示出了目标的各个物理层的管理的流程图。
图3A-3E是根据示例1的图示了目标物理层管理的表。
图4A-4D是根据示例2的图示了目标物理层管理的表。
图5A-5D是根据示例3的图示了目标物理层管理的表。
为了便于理解,在可能的情况下使用相同的附图标记来表示附图中共有的相同元件。可以设想的是,在一个实施例中公开的元件可以有利地用于其他实施例,而无需特定的叙述。
具体实施方式
在下文中,参考本公开的实施例。然而,应当理解的是,本公开不限于具体描述的实施例。相反,无论是否涉及不同实施例,都可以设想用以下特征和元件的任何组合来实现和实践本公开。此外,尽管本公开的实施例可以实现优于其他可能的解决方案和/或现有技术的优点,但是给定的实施例是否实现特定的优点并不限制本公开。因此,下面的方面、特征、实施例和优点仅仅是说明性的,并且不被认为是所附权利要求的元素或限制,除非在(多个)权利要求中明确记载。同样地,对“本公开”的引用不应被解释为本文所公开的任何创造性主题的概括,并且不应被认为是所附权利要求的要素或限制,除非在(多个)权利要求中明确记载。
本公开的实施例总体上涉及端口自动配置。更具体地,本公开的实施例涉及将目标物理层自动配置到窄端口和/或宽端口中。
图1是根据一个实施例的系统100的示意图。如图所示,系统100包括一个或多个启动器或主机150,以及一个或多个目标设备102,诸如数据存储设备。主机150可以利用包含在目标设备102中的非易失性存储器(NVM) 106来存储和取回数据。
主机150可以包括广泛范围的设备,诸如计算机服务器、网络附加存储 (NAS)单元、台式计算机、笔记本(即膝上型计算机)计算机、平板电脑 (即“智能”垫)、机顶盒、电话手机(即“智能”电话)、电视机、照相机、显示设备、数字媒体播放器、视频游戏控制台和视频流设备。在某些实施例中,主机150包括具有处理单元或能够处理数据的任何形式的硬件的任何设备,包括通用处理单元(诸如中央处理单元(CPU))、专用硬件(诸如专用集成电路(ASIC))、可配置硬件(诸如现场可编程门阵列(FPGA))、或由软件指令,微代码或固件配置的任何其他形式的处理单元。
目标设备102的NVM 106可以配置为将信息长期存储为非易失性存储器空间,并且在电源开/关循环之后保留信息。非易失性存储器的示例包括闪存存储器、相变存储器、ReRAM存储器、MRAM存储器、磁介质(包括叠瓦磁(shingle magnetic)记录)、光盘、软盘、电可编程只读存储器(EPROM),电可擦除可编程只读存储器(EEPROM)、以及其他固态存储器。磁介质非易失性存储器可以是目标设备102中的一个或多个磁盘。每个盘片可以包含数据的一个或多个磁道的一个或多个区域。
目标设备102可以包括与NVM 106相接口的硬件引擎114。当目标设备102是固态驱动器时,硬件引擎114可以是控制对NVM 106的读取和写入操作的逻辑引擎。当目标设备102是硬盘驱动器时,硬件引擎114可以是磁读取/写入头以及伴随硬件,以配置、驱动和处理由磁读/写头感测的信号。
目标设备102可以包括在目标设备102的操作期间用于短期存储或临时存储器的易失性存储器112。易失性存储器112在断电时不保留存储的数据。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器 (DRAM)、静态随机存取存储器(SRAM)、以及其他形式的易失性存储器。
目标设备102可以包括控制器110,其可以管理目标设备102的一个或多个操作。控制器110可以经由一个或多个目标端口108与主机150相接口,并管理经由硬件引擎114向NVM 106存储数据和从NVM 106取回数据。例如,控制器110可以管理对NVM 106和易失性存储器112的写入和读取。控制器可以包括存储器管理器118,其管理NVM 106和易失性存储器112之间的存储器分配。控制器110可以包括软件、硬件和/或固件的任何组合。
为了便于说明,目标设备102包括图1中未示出的附加部件。例如,目标设备102可以包括电力输送部件,例如电池、电容器或超级电容器。目标设备102可以包括印刷电路板(PCB),其将目标设备102的部件与电互连目标设备102的部件的导电迹线机械地附接。
目标设备102可以包括任何形状因数和任何外壳。在一些示例中,目标设备102的物理尺寸和连接器配置可以符合一个或多个标准形状因数。一些示例标准形状因数包括但不限于3.5”固态驱动器(SSD)或硬盘驱动器 (HDD)、2.5”SDD或HDD、或1.8”SSD或HDD。
目标设备102可以执行存储用于操作目标设备的代码或指令的非暂时性计算机可读介质140。非暂时性计算机可读介质140可以包含在NVM 106中或目标设备102的固件中。
目标设备102可以包括一个或多个物理连接116A-116N,其也称为物理层(单数)或多个物理层(复数)。主机150可以包括一个或多个物理层168A- 168N。每个物理层可以包括用于与其他设备的物理层进行通信的发送器和接收器。例如,目标设备102的目标物理层116A-116N可以配置为通过一个或多个通信链路190或通过一个或多个扩展器(未示出)与主机150的主机物理层168A-168N进行通信。在某些实施例中,目标设备102可以包括四个物理层116A–116D。在又一些其他示例中,目标设备102可以包括多个物理层116A-116N。
目标物理层116A-116N可以配置到一个或多个目标端口108中,且主机物理层168A-168N可以配置到一个或多个主机端口170中。目标端口108和主机端口170可以包括用于交换数据和交换操作的一个或多个总线。经由目标物理层116A-116N的目标端口108可以配置为接收和发送与将由目标物理层116A-116N执行的操作相关联的信号。可由目标物理层116A-116N执行的操作的示例包括写入操作、读取操作、数据传输或数据删除,等等。
配置到单个端口中的单个目标物理层116是窄端口。配置到单个端口中的两个或更多个目标物理层116A-116N是宽端口。目标设备102的目标端口 108可以配置为以多种配置与主机150进行通信。例如,对于具有四个物理层116A-116D的目标设备102,目标端口108可以配置为以下窄宽端口配置: (i)四个窄端口,每一个具有一个目标物理层;(ii)两个窄端口,每一个具有目标物理层,以及一个宽端口,具有两个目标物理层;(iii)一个窄端口,具有一个目标物理层,以及一个宽端口,具有三个目标物理层;(iv)两个宽端口,每一个具有两个目标物理层;以及(v)一个宽端口,具有四个目标物理层。
通常,目标端口108的宽端口配置与主机端口170是相互独立的。目标设备102的目标端口108可以配置成各种窄-宽端口配置,而主机150的主机端口170可以配置成不同的窄-宽端口配置。
目标物理层116A–116N电连接到控制器110,允许数据在主机150和控制器110之间进行交换。目标物理层116A-116N是控制器110的一部分,且被划分为用于控制器110的内部逻辑设备的子区块,但是为了便于说明,已经示出为连接到控制器的元件。在一些示例中,目标端口108通过一个或多个目标物理层116A-116N的电连接可以允许目标设备102从主机150接收电力。
目标设备102的目标端口108可以根据任何合适的协议操作。在某些实施例中,目标端口108遵循串行连接的SCSI(SAS)接口协议操作。在其他实施例中,目标端口108可以根据以下接口协议中的一个或多个来操作:例如串行连接的SCSI(SAS)、高级技术附件(ATA)(诸如串行ATA(SATA)、并行ATA)、光纤通道仲裁环路(FCAL)、小型计算机系统接口(SCSI)、外围组件互连(PCI)、PCI-EXPRESS(PCIe)和非易失性存储器EXPRESS (NVMe)协议。
图2是根据一个实施例的示出了目标设备的各个目标物理层的管理的流程图250。为了说明的目的,如图1所示,将对包括具有通过通信链路190 耦接到主机150的四个目标物理层116A-116D的存储器存储设备的目标设备102描述实施例。各个物理层的管理的实施例可以用于除了图1所示的系统之外的其他目标设备和其他存储器存储设备。例如,目标设备的各个目标物理层的管理实施例可以用于具有两个目标物理层或具有四个以上目标物理层的目标存储器存储设备。
在图框200,已经在目标设备102和主机150之间建立链路。用于与主机150的链路的目标物理层116A-116D的目标物理层SAS地址通过目标设备102的固件或硬件存储在NVM106中。这些存储的目标物理层SAS地址被称为最后(last)目标物理层SAS地址。
在图框201,目标设备102执行目标物理层重置序列,例如SAS协议下的目标物理层重置序列。目标物理层重置序列可以在目标设备102的通电、硬重置或管理重置时执行,例如当目标设备102在系统之间移动时,当目标设备102发生电缆改变时,当耦接到目标设备(102)的扩展器(未示出)发生配置改变时,或者当系统发生其他更新时。在物理层重置序列期间,在主机150和目标设备102之间交换带外(out of band,OOB)信号以建立共同支持的速度并建立通信协议。每个目标物理层116可以在不同的时间和以不同的顺序完成目标物理层重置序列。
在图框202,对于已经完成物理层重置的目标物理层116,目标设备102 利用该特定目标物理层的缺省目标物理层SAS地址来初始化要发送给主机 150的目标识别帧。识别帧包括SAS地址和物理层标识符以创建目标物理层 116和主机物理层168之间的链路。目标设备102可以继续执行其他目标物理层116的目标物理层重置,同时目标设备102对已经完成目标物理层重置的目标物理层116执行识别序列。
在图框203,目标设备102检查配置模式设定,当存在宽端口机会时,使得目标物理层116A-116D能够自动配置成宽端口配置。配置模式设定是目标物理层116A-116D在公共目标端口108中所需的最大数目。为了说明的目的,这种模式设定可以被命名为最大物理层自动宽端口配置(MPAWPC)模式设定。例如,当MPAWPC设定为1时,目标设备102可以只为公共目标端口108分配一个目标物理层116。因此,每个目标物理层以窄端口配置操作。当MPAWPC设定为2时,目标设备102可以为公共目标端口108分配最多两个目标物理层(即,两个或更少)。当MPAWPC设定为3时,目标设备102可以为公共目标端口108分配最多三个目标物理层(即,三个或更少)。当MPAWPC设定为4时,目标设备102可以为公共目标端口108分配最多四个目标物理层(即,四个或更少)。如果目标设备102具有四个以上的目标物理层116A-116N,则MPAWPC设定可以大于4、以及1、2、3或 4。MPAWPC设定可以选自主机150提供给目标设备102的主机模式页面控制命令。
当MPAWPC设定为1时,目标物理层116A-116D到宽端口的自动配置被禁用。在图框211,目标设备102用在图框202处提供的缺省目标SAS识别地址发送目标识别帧。在目标设备102接收主机识别地址SAS地址之后,在目标物理层116上完成识别序列,并且与其中目标物理层处于缺省端口配置的主机150建立链路。
当MPAWC设定大于1时,目标设备102自动确定将目标物理层116A- 116D分组到(多个)公共目标端口108中以进行宽端口配置的机会。因此,当MPAWPC设定为两个或更多时,启用目标设备102的目标物理层116A- 116D到宽端口的自动配置。
在图框204,目标设备102用来自图框200的最后目标物理层SAS地址来更新要发送的目标识别帧。
在图框205处,目标设备102等待或保留用于该特定目标物理层的目标识别帧,直到接收到主机识别帧,或直到一定量的超时窗口(诸如超时窗口的80%)。目标设备102等待或保留目标识别帧以接收主机识别帧,使得如果存在宽端口机会,则目标设备102可以将目标物理层116A-116D调整为宽端口配置。
在图框205,当目标设备102在SAS协议下的识别序列的超时窗口之前没有接收到主机识别帧时,目标设备102在图框211用在图框204提供的最后目标物理层SAS地址发送目标识别帧。该特定的目标物理层在收到主机识别SAS地址之后完成链路重置,并且配置为窄端口配置或宽端口配置,这取决于链路重置是否已在具有相同的目标物理层SAS地址的其他目标物理层上完成。如果最后目标地址将目标物理层配置到窄端口中,则目标物理层可以配置到窄端口中。如果最后目标地址将目标物理层配置到宽端口中,并且主机地址未从最后配置发生改变(例如,主机发送与之前完成宽端口配置相同的SAS地址),则目标物理层可以配置到宽端口中。通过在流程图250 中描述的管理流程下更新处理的其他目标物理层的目标识别帧,该特定目标物理层可以稍后从窄端口重新配置到宽端口中,或从宽端口重新配置到具有 (多个)额外目标物理层的另一宽端口中。
在图框205,当目标设备102在识别序列的超时窗口之前接收到主机识别帧时,目标设备102进行到图框206。在图框206,目标设备102在物理层SAS地址查找表中搜索在其他目标物理层上呈现的匹配的接收到的主机识别SAS地址。如果存在多于一个匹配的接收到的主机识别SAS地址,则目标设备102可以使用附加标准进行附加搜索以确定最佳映射。例如,目标设备102可以搜索最后目标物理层SAS地址上的匹配。
在图框207,(i)当目标设备102没有找到与另一目标物理层匹配的特定目标物理层116的匹配的主机识别SAS地址时,或(ii)当将特定目标物理层116分组到宽端口中将超过MPAWPC设定时,目标设备102进行到图框209,在图框209中,用该特定目标物理层的缺省目标SAS地址更新目标识别帧。在图框210,目标设备102用该特定目标物理层116的接收到的主机识别SAS地址和最后目标SAS地址更新物理层地址SAS地址查找表。在图框211发送该识别帧,这将该特定目标物理层116配置为缺省端口配置。通过在流程图250中描述的管理流程下更新处理的其他目标物理层的目标识别帧,稍后可以重新配置该特定目标物理层116。
在图框207,当目标设备102找到与另外(多个)目标物理层(即,匹配的(多个)目标物理层)匹配的特定目标物理层的匹配的主机识别SAS地址,且当用匹配的(多个)目标物理层将特定目标物理层分组到宽端口中时不会超过MPAWPC设定时,目标设备102进行到图框208。在图框208,目标设备102用匹配的(多个)物理层的最后目标物理层SAS地址来该特定的目标物理层的目标识别帧。在图框210,目标设备102用该特定匹配的(多个)物理层的接收到的主机识别SAS地址和最后目标SAS物理层地址更新物理层地址SAS地址查找表。该特定目标物理层匹配到与具有匹配的(多个目标物理层)的宽端口中。因此,用特定目标物理层将匹配的目标物理层从窄端口重新配置到宽端口,或者重新配置匹配的(多个)目标物理层以扩展先前的宽端口来包括该特定的目标物理层。
在图框211,目标设备102发送该特定目标物理层的目标识别帧,以建立目标设备102与主机150之间的链路。如流程图250所示,目标物理层 116A-116D中的每一个可以进行通过目标管理流程,直到目标物理层116A- 116D中的每一个在图框211中发送其目标物理层SAS识别地址以完成链路序列。
管理流程可以进行返回到图框200,以将目标物理层116A-116D的目标物理层SAS地址作为最后目标物理层SAS地址存储在目标设备102的NVM 106中。当其他目标物理层116A-116D完成链路序列或其他目标物理层重置时,这些最后目标物理层SAS地址可用于配置或重新配置目标物理层116A- 116D。
图2的描述说明了一个管理流程。其他过程流程是可能的。例如,流程图250中的某些图框可以是可选的或可以是冗余的。在其他示例中,流程图 250中的某些图框可以以不同的序列排序。在其他示例中,流程图250中的某些图框可以分离成两个或更多个图框。在其他示例中,流程图250中的某些图框可以组合。
示例
以下的示例是用于说明执行图2中的流程图250中所描述的目标物理层管理流程的各种实施例的本发明的各种实施例以及替代实施例。为了说明的目的,将在包括具有四个目标物理层的存储器存储设备的目标设备上描述这些示例,例如图1中描述的目标设备102。除非在权利要求中明确阐述,否则这样的示例并不意味着限制本发明的范围。
示例1
在示例1中,模式设定MPAWPC值被设定为4,使得目标宽端口可以包含最多四个目标物理层。
图3A中的表300示出了在任何目标物理层完成链路重置序列之前的目标物理层SAS地址查找表的初始状态。物理层端口映射和SAS地址是基于端口配置模式设定和缺省目标物理层SAS地址配置的。在该示例中,端口配置模式为每个目标物理层提供四个单独的唯一缺省目标SAS地址311、312、313、314,以用于缺省窄端口配置。
如图3B中的物理层SAS地址查找表300所示,目标设备完成目标物理层0上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为4,启用宽端口自动配置。目标设备在发送识别帧之前等待接收目标物理层0上的主机物理层SAS地址321。主机接收到的物理层 SAS地址321被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于尚未接收到其他主机SAS地址,因此未找到匹配的或公共主机SAS 地址。目标设备使用缺省目标物理层SAS地址311发送识别帧,以在目标物理层0上建立缺省端口(在本示例中是缺省窄端口)。SAS链路重置序列在目标物理层0上完成。目标物理层0的最后目标物理层SAS地址331用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图3C中的物理层SAS地址查找表所示,目标设备完成目标物理层1 上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为4,启用宽端口自动配置。目标设备在发送识别帧之前等待接收目标物理层1上的主机物理层SAS地址322。主机接收到的物理层 SAS地址322被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于在目标物理层1上的主机接收到的物理层SAS地址322与目标物理层0上的主机接收到的SAS地址321不匹配,并且是唯一地址,所以不存在目标宽端口的机会。目标设备使用缺省目标物理层SAS地址312发送识别帧,以在目标物理层1上建立窄端口。SAS链路重置序列在物理层1上完成。目标物理层1的最后目标物理层SAS地址332用在发送的识别SAS 地址中使用的值来更新,并存储在非易失性存储器中。
如图3D中的物理层SAS地址查找表所示,目标设备完成目标物理层2 上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为4,启用宽端口自动配置。目标设备在发送识别帧之前等待接收目标物理层2上的主机物理层SAS地址323。主机接收到的物理层 SAS地址323被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。在主机SAS地址查找期间,在目标物理层0和目标物理层2上找到匹配的公共SAS地址321、323。由于将目标物理层0和目标物理层2配置到宽端口中不会超过MPAWPC设定,通过借助用于目标物理层0的最后目标物理层SAS地址331来更新目标物理层2的识别SAS地址,目标设备用目标物理层0和目标物理层2建立宽端口。目标设备发送更新的识别帧,且 SAS链路重置序列在物理层2上完成。宽端口在目标物理层0和目标物理层 2之间动态地建立。目标物理层2的最后目标物理层SAS地址333用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图3E中的物理层SAS地址查找表300所示,目标设备完成目标物理层3上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为4,启用宽端口自动配置。目标设备在发送识别帧之前等待接收目标物理层3上的主机物理层SAS地址324。主机接收到的物理层 SAS地址324被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。在主机SAS地址查找期间,在目标物理层0、目标物理层2和目标物理层3上找到匹配的公共SAS地址321、323、324。由于将目标物理层0、目标物理层2和目标物理层3配置到宽端口中不会超过MPAWPC设定,通过借助用于目标物理层0和目标物理层2的最后目标物理层SAS地址331、 333来更新目标物理层3的识别SAS地址,目标设备用目标物理层0、目标物理层2和目标物理层3建立宽端口。目标设备发送更新的识别帧,且SAS 链路重置序列在物理层3上完成。宽端口在目标物理层0、目标物理层2和目标物理层3之间动态地建立。目标物理层3的最后目标物理层SAS地址 334用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
示例2
在示例2中,模式设定MPAWPC值被设定为2,使得目标宽端口可以包含最多两个目标物理层。
如图4A中的物理层SAS地址查找表400所示,目标设备完成目标物理层0上的链路重置序列。物理层端口映射和SAS地址是基于端口配置模式设定和缺省目标物理层SAS地址配置的。在该示例中,端口配置模式为每个目标物理层提供四个单独的唯一目标SAS地址411、412、413、414,以用于缺省窄端口配置。目标设备完成标物理层0上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为2,启用宽端口自动配置。目标设备在发送识别帧之前等待接收目标物理层0上的主机物理层SAS地址421。主机接收到的物理层SAS地址421被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于尚未接收到其他主机SAS 地址,因此未找到匹配的或公共主机SAS地址。目标设备使用缺省目标物理层SAS地址411发送识别帧,以在目标物理层0上建立缺省端口(在本示例中是缺省窄端口)。SAS链路重置序列在目标物理层0上完成。目标物理层0的最后目标物理层SAS地址431用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图4B中的物理层SAS地址查找表400所示,目标设备完成目标物理层1上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为2,启用宽端口自动配置。目标设备等待接收目标物理层1上的主机物理层SAS地址422。主机接收到的物理层SAS地址422被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于在目标物理层1上的主机接收到的物理层SAS地址422与目标物理层0上的主机接收到的SAS地址421匹配,所以存在目标宽端口的机会。由于将目标物理层0和目标物理层1配置到宽端口中不会超过2的MPAWPC设定,通过借助用于目标物理层0的最后目标物理层SAS地址431来更新目标物理层1 的识别SAS地址,目标设备用目标物理层0和目标物理层1建立宽端口。目标设备发送更新的识别帧,且SAS链路重置序列在物理层1上完成。宽端口在目标物理层0和目标物理层1之间动态地建立。目标物理层1的最后目标物理层SAS地址432用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图4C中的物理层SAS地址查找表400所示,目标设备完成目标物理层2上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为2,启用宽端口自动配置。目标设备等待接收目标物理层2上的主机物理层SAS地址423。主机接收到的物理层SAS地址423被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于在目标物理层2上的主机接收到的物理层SAS地址423与目标物理层0上的和目标物理层1的主机接收到的SAS地址421、422匹配,所以存在扩展的目标宽端口的机会。然而,由于将目标物理层0、目标物理层1和目标物理层2配置到宽端口中将会超过2的MPAWPC设定,目标设备使用缺省目标SAS413 发送识别帧,以在目标物理层2上建立窄端口。SAS链路重置序列在物理层 2上完成。目标物理层2的最后目标物理层SAS地址433用在发送的识别 SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图4D中的物理层SAS地址查找表400所示,目标设备完成目标物理层3上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为2,启用宽端口自动配置。目标设备等待接收目标物理层3上的物理层SAS地址424。主机接收到的物理层SAS地址424被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。在主机SAS地址查找期间,在目标物理层0、目标物理层1、目标物理层2和目标物理层3上找到匹配的公共SAS地址421、422、423、424。由于将目标物理层0、目标物理层1和目标物理层3配置到宽端口中将会超过2的MPAWPC设定,目标设备确定是否存在使用其他目标物理层的其他宽端口机会。由于将目标物理层2和目标物理层3配置到宽端口中不会超过2的MPAWPC设定,通过借助用于目标物理层2的最后目标物理层SAS地址433来更新目标物理层 3的识别SAS地址,目标设备用目标物理层2和目标物理层3建立宽端口。目标设备发送识别帧,且SAS链路重置序列在目标物理层3上完成。宽端口在目标物理层2和目标物理层3之间动态地建立。目标物理层3的最后目标物理层SAS地址434用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
目标设备现在已经将四个目标物理自动配置到两个宽端口中,每个端口具有两个目标物理(即,2×2配置)。
示例3
在示例3中,模式设定MPAWPC值被设定为2,使得目标宽端口可以包含最多两个目标物理层。目标设备之前已经将物理层0和物理层1配置到宽端口中。
图5A中的物理层SAS地址查找表500的初始状态具有针对物理层0和物理层1初始化的最后目标物理层SAS地址531、532。然后,图5A示出了目标设备完成物理层1上的链路重置序列。物理层端口映射和SAS地址是基于端口配置模式设定和缺省目标物理层SAS地址配置的。在该示例中,端口配置模式为处于缺省窄端口配置每个目标物理层提供四个单独的唯一目标SAS地址511、512、513、514。目标设备完成目标物理层1上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC 为2,启用宽端口自动配置。目标设备等待接收目标物理层1上的主机物理层SAS地址522。主机接收到的物理层SAS地址522被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于尚未接收到其他主机SAS 地址,因此未找到匹配的或公共主机SAS地址。目标设备使用缺省目标物理层SAS地址512发送识别帧,以在目标物理层1上建立缺省端口(在本示例中是缺省窄端口)。SAS链路重置序列在目标物理层1上完成。目标物理层1的最后目标物理层SAS地址532用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图5B中的物理层SAS地址查找表500所示,目标设备完成目标物理层3上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为2,启用宽端口自动配置。目标设备等待接收目标物理层3上的主机物理层SAS地址524。主机接收到的物理层SAS地址524被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于在目标物理层3上的主机接收到的物理层SAS地址524与目标物理层1上的主机接收到的SAS地址522不匹配,并且是唯一地址,所以不存在目标宽端口的机会。目标设备使用缺省目标SAS地址514发送识别帧,以在目标物理层3 上建立窄端口。SAS链路重置序列在物理层3上完成。目标物理层3的最后目标物理层SAS地址534用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图5C中的物理层SAS地址查找表500所示,目标设备完成目标物理层2上的链路重置序列。目标设备检查是否启用宽端口自动配置。在该示例中,由于MPAWPC为2,启用宽端口自动配置。目标设备等待接收目标物理层2上的主机物理层SAS地址523。主机接收到的物理层SAS地址523被记录在查找表中。目标设备搜索匹配的或公共主机SAS地址。由于在目标物理层2上的主机接收到的物理层SAS地址523与目标物理层3上的主机接收到的SAS地址524匹配,所以存在目标宽端口的机会。由于将目标物理层2和目标物理层3配置到宽端口中不会超过2的MPAWPC设定,通过借助用于目标物理层2的最后目标物理层SAS地址534来更新目标物理层3 的识别SAS地址,目标设备用目标物理层3和目标物理层2建立宽端口。目标设备发送识别帧,且SAS链路重置序列在目标物理层2上完成。宽端口在目标物理层2和目标物理层3之间动态地建立。目标物理层2的最后目标物理层SAS地址533用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。
如图5D中的物理层SAS地址查找表500所示,目标设备完成目标物理层0上的链路重置序列。目标设备检查是否启用宽端口自动配置。由于 MPAWPC为2,启用宽端口自动配置。目标设备在一定量的超时窗口(如超时窗口的80%)等待主机识别帧被接收,但尚未接收到目标物理层0上的主机识别帧。由于尚未接收到目标物理层0的主机SAS地址,在目标物理层重置之前,目标物置层借助用于目标物理层0的最后目标物理层SAS地址 531(在这种情况下,是目标物理层1的相同的SAS地址)发送目标物理层 0的识别SAS地址。目标设备接收主机物理层SAS地址511。SAS链路重置序列在目标物理层0上完成。由于在物理层0上接收到的主机物理层SAS地址与在物理层1上接收到的主机物理层SAS地址匹配,宽端口在目标物理层0和目标物理层1之间动态地建立。目标物理层0的最后目标物理层SAS 地址531用在发送的识别SAS地址中使用的值来更新,并存储在非易失性存储器中。在该示例中,目标设备在接收到主机识别SAS地址之前发送目标物理层0的最后目标物理层SAS地址,且如果主机识别SAS地址在接收到时与物理层1公共,则提供在目标物理层0上建立宽端口的机会。
目标设备现在已经将四个目标物理自动配置到两个宽端口中,每个端口具有两个目标物理(即,2×2配置)。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,通过目标设备或数据存储设备动态地将各个目标物理层管理为宽端口配置。例如,目标设备不是立即发送目标识别帧,而是等待接收主机识别帧,例如在流程图250的图框205,并且将目标物理层配置到宽端口中以匹配接收到的主机识别SAS地址,例如在流程图250的图框210。目标设备在SAS识别序列期间策略性地使用识别超时窗口,以等待接收主机SAS识别地址。然后,目标设备调整目标端口配置。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,各个目标物理层更新的管理重新配置以前的端口配置。例如,当另一个目标物理层呈现有公共主机识别SAS地址时,目标物理层从窄端口重新配置为宽端口,或当该目标物理层呈现有公共主机识别SAS地址时,目标物理层被重新配置以扩展先前的宽端口来包括另一目标物理层。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,通过电源重置或链路重置发送一致的SAS目标地址,将各个目标物理层管理为窄端口或宽端口配置。最后目标物理层SAS地址永久存储在非易失性存储器中,因此SAS地址不会在重置时重新创建。当目标物理层上电并且链路被重置时,缺省目标物理层SAS地址可以准备发送,但如果存在宽端口机会,则替换为存储在非易失性存储器中的最后目标物理层SAS地址值。在某些实施例中,目标设备可以使用相同的SAS目标地址通过重置而将目标自动重新配置为宽端口配置,而不依赖于目标物理层完成SAS链路重置序列的顺序。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,模式设置提供了指定宽端口中的目标物理层的最大数量的灵活性。例如,对于在某些情况下具有四个目标物理层的目标设备,可能需要两个宽端口的配置,每个端口具有两个目标物理层(即2×2配置)。因此,2的模式设定使得目标设备能够在有机会时以2×2配置自动配置目标物理层。在另一示例中,对于在某些情况下具有四个目标物理层的目标设备,可能需要一个宽端口的配置,端口具有四个目标物理层(即1×4配置)。因此,四的模式设定使得目标设备能够在有机会时以1×4配置自动配置目标物理层。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,各个目标物理层更新的管理可以以缺省设定进行。例如,如果达到了端口中期望的最大目标物理层的模式设定,则目标设备可以使用缺省目标物理层SAS地址,以将目标物理层配置到缺省目标端口中。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,目标设备可动态地更新目标SAS地址,以与主机呈现的宽端口机会对齐,而无需人工干预。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,目标设备自动适应系统配置更改。当目标在系统之间移动时、当目标设备发生电缆变化时、当耦接到目标设备的扩展器进行配置更改时、或系统发生其他更新时,系统配置更改可能会发生。例如,在某些实施例中,期望使目标设备具有安装在多个系统中的公共部件编号。由于公共部件编号目标设备只能有一个缺省设定,目标设备可以通过模式设定动态地调整宽端口,无需下载新代码,也不需要对主机进行任何更改。
在某些实施例中,如图2的流程图250和示例1-3中所述的各个目标物理层的管理符合SAS标准。
在某些实施例中,如图2的流程图250和示例1-3中所述的各种目标物理层的管理符合现有基础设施(例如,扩展器、机箱、总线、电缆等),而无需任何附加的固件或硬件更改。在某些实施例中,如图2的流程图250和实例1-3中所述的各个目标物理层的管理可以在不添加任何附加的固件或硬件的情况下实现。
在某些实施例中,如图2的流程图250和示例1-3中所描述的,通过将用于识别帧的地址存储在非易失性存储器中来记住通过重置的宽端口配置。
本公开的某些实施例提供以下一个或多个方面。一种方法和数据存储设备,通过与主机宽端口机会自动对齐,其以宽端口配置自动配置存储设备的物理层。一种方法和数据存储设备,其允许存储设备适应在与主机的不同连接之间移动数据存储设备。一种方法和数据存储设备,其符合SAS标准。一种方法和数据存储设备,其符合现有的基础设施(即,扩展器,机箱和HBA)。一种方法和数据存储设备,其记住通过启动/电源重置的宽端口配置。一种方法和数据存储设备,其能够自动配置每个宽端口的最大数量物理层。
尽管前述内容针对本公开的实施例,但是在不脱离本公开的基本范围的情况下可以设计本公开的其他和进一步的实施例,并且本发明的范围由所附的权利要求确定。

Claims (10)

1.在数据存储目标设备与主机之间的链路重置的情况下,由电耦接到所述主机的多个主机物理层的所述数据存储目标设备的控制器自动管理所述数据存储目标设备的多个目标物理层的方法,所述方法包括:
从所述主机接收用于所述数据存储目标设备的端口的最大物理层限制的主机模式设定;
从所述主机接收呈现在所述多个目标物理层中的第一目标物理层上的第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第二目标物理层上的所述第一主机地址;
由所述控制器确定,将所述第一目标物理层和所述第二目标物理层分组到第一宽端口中是否超过所述最大物理层限制;
当由所述控制器确定将所述第一目标物理层和所述第二目标物理层分组到所述第一宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第一目标物理层和所述第二目标物理层配置到所述第一宽端口中;以及
在所述第一宽端口上执行操作,所述操作选自由以下构成的组:所述数据存储目标设备的非易失性存储器的写入操作、读取操作、数据传输和数据删除。
2.如权利要求1所述的方法,还包括:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第三目标物理层上的第二主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第四目标物理层上的第二主机地址;以及
由所述控制器确定,将所述第三目标物理层和所述第四目标物理层分组到第二宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第三目标物理层和所述第四目标物理层分组到所述第二宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第三目标物理层和所述第四目标物理层配置到所述第二宽端口中。
3.如权利要求1所述的方法,还包括:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第三目标物理层上的所述第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第一目标物理层和第二目标物理层上的所述第一主机地址,其中所述第一目标物理层和所述第二目标物理层被配置在所述第一宽端口中;
由所述控制器确定,将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层配置到所述第一宽端口中。
4.如权利要求1所述的方法,还包括:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第三目标物理层上的所述第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第一目标物理层和第二目标物理层上的所述第一主机地址,其中所述第一目标物理层和所述第二目标物理层被配置在所述第一宽端口中;
由所述控制器确定,将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中超过所述最大物理层限制时,由所述控制器将所述第三目标物理层配置到窄端口中。
5.如权利要求4所述的方法,还包括:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第四目标物理层上的所述第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第一目标物理层、第二目标物理层和第三目标物理层上的所述第一主机地址,其中所述第三目标物理层被配置在窄端口中;
所述控制器确定,将所述第四目标物理层与所述第三目标物理层分组到第二宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第四目标物理层与所述第三目标物理层分组到所述第二宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第四目标物理层与所述第三目标物理层配置到所述第二宽端口中。
6.一种电耦接到主机的数据存储目标设备,包括:
控制器;
多个目标物理层;以及
包含指令的非暂时性计算机可读存储介质,在所述数据存储目标设备与所述主机之间的链路重置的情况下,当由所述控制器执行时,所述指令使得所述控制器:
从所述主机接收用于所述数据存储目标设备的公共端口的最大物理层限制的主机模式设定;
从所述主机接收呈现在所述多个目标物理层中的第一目标物理层上的第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第二目标物理层上的所述第一主机地址;
由所述控制器确定,将所述第一目标物理层和所述第二目标物理层分组到第一宽端口中是否超过所述最大物理层限制;
当由所述控制器确定将所述第一目标物理层和所述第二目标物理层分组到所述第一宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第一目标物理层和所述第二目标物理层配置到所述第一宽端口中;以及
在所述第一宽端口上执行操作,所述操作选自由以下构成的组:所述数据存储目标设备的非易失性存储器的写入操作、读取操作、数据传输和数据删除。
7.如权利要求6所述的数据存储目标设备,其中所述非暂时性计算机可读存储介质还使得所述控制器:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第三目标物理层上的第二主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第四目标物理层上的所述第二主机地址;
由所述控制器确定,将所述第三目标物理层和所述第四目标物理层分组到第二宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第三目标物理层和所述第四目标物理层分组到所述第二宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第三目标物理层和所述第四目标物理层配置到所述第二宽端口中。
8.如权利要求6所述的数据存储目标设备,其中所述非暂时性计算机可读存储介质还使得所述控制器:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第三目标物理层上的所述第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第一目标物理层和第二目标物理层上的所述第一主机地址,其中所述第一目标物理层和所述第二目标物理层被配置在所述第一宽端口中;
由所述控制器确定,将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层配置到所述第一宽端口中。
9.如权利要求6所述的数据存储目标设备,其中所述非暂时性计算机可读存储介质还使得所述控制器:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第三目标物理层上的所述第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第一目标物理层和第二目标物理层上的所述第一主机地址,其中所述第一目标物理层和所述第二目标物理层被配置在所述第一宽端口中;
由所述控制器确定,将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第三目标物理层与所述第一目标物理层和所述第二目标物理层分组到第一宽端口中超过所述最大物理层限制时,由所述控制器将所述第三目标物理层配置到窄端口中。
10.如权利要求9所述的数据存储目标设备,其中所述非暂时性计算机可读存储介质还使得所述控制器:
由所述控制器从所述主机接收呈现在所述多个目标物理层中的第四目标物理层上的所述第一主机地址;
由所述控制器匹配呈现在所述多个目标物理层中的第一目标物理层、第二目标物理层和第三目标物理层上的所述第一主机地址,其中所述第三目标物理层被配置在窄端口中;
所述控制器确定,将所述第四目标物理层与所述第三目标物理层分组到第二宽端口中是否超过所述最大物理层限制;以及
当由所述控制器确定将所述第四目标物理层与所述第三目标物理层分组到所述第二宽端口中没有超过所述最大物理层限制时,由所述控制器将所述第四目标物理层与所述第三目标物理层配置到所述第二宽端口中。
CN201810225117.8A 2017-05-19 2018-03-19 管理数据存储目标设备的物理层 Active CN108958645B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/599,931 US10565041B2 (en) 2017-05-19 2017-05-19 Managing phys of a data storage target device
US15/599,931 2017-05-19

Publications (2)

Publication Number Publication Date
CN108958645A CN108958645A (zh) 2018-12-07
CN108958645B true CN108958645B (zh) 2021-07-30

Family

ID=64269634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810225117.8A Active CN108958645B (zh) 2017-05-19 2018-03-19 管理数据存储目标设备的物理层

Country Status (3)

Country Link
US (2) US10565041B2 (zh)
CN (1) CN108958645B (zh)
DE (1) DE102018105428A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7584319B1 (en) * 2005-03-31 2009-09-01 Pmc-Sierra, Inc. Connection management in serial attached SCSI (SAS) expanders
CN101788971A (zh) * 2003-12-18 2010-07-28 英特尔公司 适配器接口的地址分配
CN102693201A (zh) * 2011-02-07 2012-09-26 Lsi公司 具有持续端口配置的sas控制器
CN105359120A (zh) * 2013-06-11 2016-02-24 西部数据技术公司 使用双phy来支持多个pcie链路宽度
CN108228494A (zh) * 2016-12-09 2018-06-29 慧与发展有限责任合伙企业 用于存储驱动器的端口模式

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4536981B2 (ja) * 1999-08-31 2010-09-01 キヤノン株式会社 情報信号処理装置及び情報信号処理方法
US7710974B2 (en) * 2004-08-12 2010-05-04 Cisco Technology, Inc. Method and apparatus for dynamically allocating traffic in a physical layer device
US7769831B2 (en) * 2005-03-22 2010-08-03 Lsi Corporation System and method for SAS PHY dynamic configuration
US7451255B2 (en) * 2005-09-28 2008-11-11 Intel Corporation Hardware port scheduler (PTS) having register to indicate which of plurality of protocol engines PTS is to support
US20070093124A1 (en) 2005-10-20 2007-04-26 Lsi Logic Corporation Methods and structure for SAS expander optimization of SAS wide ports
US7673185B2 (en) 2006-06-08 2010-03-02 Dot Hill Systems Corporation Adaptive SAS PHY configuration
US7936767B2 (en) * 2007-04-30 2011-05-03 International Business Machines Corporation Systems and methods for monitoring high speed network traffic via sequentially multiplexed data streams
US7912995B1 (en) 2007-12-20 2011-03-22 Emc Corporation Managing SAS topology
CN101404645B (zh) * 2008-04-29 2011-11-16 华为技术有限公司 多端口的以太网接口及其实现方法和物理层接口
US8312177B2 (en) * 2010-09-24 2012-11-13 Dell Products L.P. System and method for dynamically configuring a target device
WO2012066625A1 (ja) * 2010-11-16 2012-05-24 富士通株式会社 通信システムの制御方法、通信システム、通信装置
JP5736870B2 (ja) * 2011-03-16 2015-06-17 富士通株式会社 ストレージ装置、コントローラおよびアドレス管理方法
US9088908B2 (en) * 2011-06-08 2015-07-21 Marvell World Trade Ltd. Efficient transmission for low data rate WLAN
US9535866B2 (en) * 2011-06-15 2017-01-03 Dell Products L.P. Asymmetric storage device wide link
US8775876B2 (en) * 2011-11-22 2014-07-08 Lsi Corporation Method to improve I/O reliability on a degraded wide port connection
US8843666B2 (en) * 2012-03-02 2014-09-23 Lsi Corporation Method for optimizing wide port power management in a SAS topology
US8874821B2 (en) * 2012-04-17 2014-10-28 Hewlett-Packard Development Company, L.P. Determination of a zoned portion of a service delivery system
US8959374B2 (en) 2012-07-31 2015-02-17 Hewlett-Packard Development Company, L.P. Power management for devices in a data storage fabric
US8924751B2 (en) 2012-07-31 2014-12-30 Hewlett-Packard Development Company, L.P. SAS power management
US9032143B2 (en) * 2012-09-04 2015-05-12 Lsi Corporation Enhanced memory savings in routing memory structures of serial attached SCSI expanders
CN103812712B (zh) * 2012-11-05 2018-10-26 深圳市共进电子股份有限公司 网络设备吞吐量的测试方法和系统
US8788724B2 (en) 2012-11-30 2014-07-22 Hewlett-Packard Development Company, L.P. Storage device to provide access to storage resources over a data storage fabric
US9304960B2 (en) * 2013-06-04 2016-04-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Delayed physical link activation in serial attached small computer system interface devices that utilize smart cabling
US20150006814A1 (en) 2013-06-28 2015-01-01 Western Digital Technologies, Inc. Dynamic raid controller power management
TW201508487A (zh) * 2013-08-27 2015-03-01 Hon Hai Prec Ind Co Ltd 調整sas擴展器位址的系統及方法
US9542349B2 (en) * 2013-12-04 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Wide port emulation at serial attached SCSI expanders using virtual physical links
WO2015087417A1 (ja) * 2013-12-11 2015-06-18 株式会社日立製作所 ストレージ装置及び制御方法
US9537743B2 (en) * 2014-04-25 2017-01-03 International Business Machines Corporation Maximizing storage controller bandwidth utilization in heterogeneous storage area networks
US10635154B2 (en) * 2016-12-19 2020-04-28 Western Digital Technologies, Inc. Intelligent SAS phy power management
US10425333B2 (en) * 2017-05-19 2019-09-24 Western Digital Technologies, Inc. Managing phys of a data storage target device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101788971A (zh) * 2003-12-18 2010-07-28 英特尔公司 适配器接口的地址分配
US7584319B1 (en) * 2005-03-31 2009-09-01 Pmc-Sierra, Inc. Connection management in serial attached SCSI (SAS) expanders
CN102693201A (zh) * 2011-02-07 2012-09-26 Lsi公司 具有持续端口配置的sas控制器
CN105359120A (zh) * 2013-06-11 2016-02-24 西部数据技术公司 使用双phy来支持多个pcie链路宽度
CN108228494A (zh) * 2016-12-09 2018-06-29 慧与发展有限责任合伙企业 用于存储驱动器的端口模式

Also Published As

Publication number Publication date
US20180335941A1 (en) 2018-11-22
DE102018105428A1 (de) 2018-11-22
US20200151044A1 (en) 2020-05-14
CN108958645A (zh) 2018-12-07
US10565041B2 (en) 2020-02-18
US10922160B2 (en) 2021-02-16

Similar Documents

Publication Publication Date Title
US10901636B2 (en) Target optimized auto provisioning of storage in a discoverable storage network
US8830836B1 (en) Storage proxy with virtual ports configuration
US10394573B2 (en) Host bus adapter with built-in storage for local boot-up
US10754811B2 (en) Multi-mode NVMe over fabrics devices
US11748037B2 (en) Physical disk and virtual disk mapping in storage systems
US20180032471A1 (en) Self-configuring ssd multi-protocol support in host-less environment
US10025502B2 (en) Fibre channel initiator alias/port suggestion and autocomplete
US9172586B1 (en) Method and system for writing tag and data
US10785154B2 (en) Managing phys of a data storage target device
US10229085B2 (en) Fibre channel hardware card port assignment and management method for port names
US20070022218A1 (en) Network-attached storage device having a connection to a local user device
CN108958645B (zh) 管理数据存储目标设备的物理层
US10002093B1 (en) Configuring multi-line serial computer expansion bus communication links using bifurcation settings
US10534733B2 (en) Flexible I/O slot connections
US10097636B1 (en) Data storage device docking station
US9710170B2 (en) Processing data storage commands for enclosure services
US11561699B2 (en) Input-output path selection using switch topology information
KR102155659B1 (ko) 멀티-모드 장치 및 그것의 동작 방법
US20230325343A1 (en) Self-configuring ssd multi-protocol support in host-less environment
US9223518B1 (en) Method and system for remote cache direct data placement
US20200233831A1 (en) Self-configuring ssd multi-protocol support in host-less environment
US9384008B1 (en) Method and system for operating system recovery from a network device including user selectable options for storing an OS image in local storage of a caching device
US20200257648A1 (en) Self-configuring ssd multi-protocol support in host-less environment
KR102407210B1 (ko) 멀티-모드 장치 및 그것의 동작 방법
US20200192836A1 (en) Multiple-path thunderbolt storage apparatus and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant