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

具有持续端口配置的SAS控制器制造技术

技术编号:7809350 阅读:215 留言:0更新日期:2012-09-27 08:10
具有持续端口配置的SAS控制器。本发明专利技术涉及网络中的SAS控制器。SAS控制器设备,包括:处理器;可操作地连接至处理器的非易失性存储器,该非易失性存储器被配置以存储端口和PHY配置信息;可操作地连接至处理器的多个PHY,每一PHY被配置以连接到一SAS装置;以及计算机可执行程序代码,其被配置以:自动配置所述多个PHY中的至少一个PHY在所述处理器上运行;在存储器内存储PHY配置信息;以及在一个或多个PHY经历一状态改变事件后,基于PHY配置信息重新配置所述一个或多个PHY。SAS控制器上当连接的SAS装置重新启动、重新设置或暂时断开时,可以保持一致的端口和PHY配置信息,防止端口冲突。

【技术实现步骤摘要】

本专利技术涉及在电子计算机和数字处理系统中的多机数据传输,具体涉及在网络中的SAS控制器。
技术介绍
小型计算机系统接ロ(SCSI)是ー套计算机和外围设备之间的物理连接和传输数据的标准和协议。SCSI最常用来连接计算机到存储设备,如硬盘驱动器或磁盘驱动器。串行连接SCSI (SAS)是ー种计算机总线,用于将数据移到和移出使用SCSI标准和协议的计算机存储器设备。SAS控制器是具有多个双向SAS连接点(PHYs)的设备。PHY是ー个收发器,它联系物理链路和实现数据编码和管理重设序列协议。在SAS控制器中每ー个PHY都可连接ー 个SAS装置,PHY包括实施与连接的设备通信的硬件设备。多个PHY组成多个端ロ,以方便和简化与ー个特定PHY连接的SAS装置的连接过程;例如,ー个SAS装置可以通过几个PHY连接到ー个SAS控制器,这些PHY可与ー个单一端ロ(宽端ロ)相关联,访问SAS装置是通过共同的端ロ,从而增加了端ロ的带宽,并SAS控制器是负责为有效负载平衡所有的PHY。SAS控制器可要求每个PHY是手动配置,使初始安装费时费力的。此外,对系统拓扑的任何改变同样是费时费カ的,而且容易出现人为错误。ー些SAS控制器包括自动配置端口和PHY的功能,因此可以消除人为因素,并且使系统容易改变拓扑。SAS装置偶尔会失去电源,重新启动,重新设置或失去与SAS控制器的连接。ー个试图从一端ロ发送或取回信息装置与一 PHY相关联,而这个PHY不再与SAS装置连接,这将会遇到ー个重大的错误。SAS控制器包含自动配置端口和PHY的功能,其中PHY识别因为系统拓扑改变和与PHY相关联的端ロ与SAS装置断开所引起的连接失败。此性能会阻止其它设备试图访问已断开的SAS装置,当如果SAS装置重新连接至SAS控制器吋,也可从想要连接到SAS装置的其它设备端ロ使SAS装置分离。
技术实现思路
本专利技术提供了ー种方法和设备,用于维持在连接的SAS装置重启、电源周期以及芯片重设中保持一致的SAS端ロ配置。所述设备是具有多个PHY、一处理单元和非易失性存储器的SAS控制器。即使在SAS装置从PHY断开预期的SAS设备可能重新连接到相同的PHY时,在所述非易失性存储器中,SAS控制器为PHY保存配置信息在PHY配置数据结构中。保持一致SAS端ロ配置的方法,包括当SAS装置从与PHY配置数据结构相关联的一 PHY断开时,从PHY配置数据结构中清除SAS装置的SAS地址,以及设置与所述PHY相关联的ー链路别名为无效值以防止其它设备试图通过所述PHY与SAS装置通信,但保留所述SAS装置的SAS地址在端ロ配置数据结构中。如果SAS装置重新连接到相同的PHY上,例如SAS装置完成一个电源周期,SAS控制器用存储在PHY配置数据结构和端ロ配置数据结构中的信息自动重新配置PHY。然后SAS控制器比较所述PHY与其它每个自动配置的PHY,以确保没有PHY具有相冲突的配置信息。附图说明图I是本专利技术的一个实施方案的流程图;图2是本专利技术的另ー实施方案的流程图;图3是根据图I和图2所述的方法配置SAS控制器的组织结构图;图4是根据图I和图2所示的实施方法配置的SAS控制器的框图。具体实施例方式參考附图对本专利技术实质主题做详细的说明。权利要求限定本专利技术的保护范围,多数的替代方案、修改方案和同等方案都包括在内。为了清楚的目的,在
内相关联的现有技术并没有详细描述,以避免不必要的模糊描述。參照图I所示用于创建SAS控制器的初始配置的方法的典型示例操作。所述方法通过SAS控制器内部的处理单元来执行。SAS控制器包括ー个或多个被组织成ー个或多个端ロ的PHY。每个端ロ可以由一端ロ配置数据结构表示,以及每个PHY可以由ー PHY配置数据结构表示。在操作100中,SAS控制器可首先确定与SAS控制器相关联的端ロ是否已经被初始化;如果端ロ已经初始化,则为端ロ创建初始配置的方法是不需要的,该方法将结束。如果端ロ没有被初始化,SAS控制器可以通过分配预定的值给每个端ロ配置数据结构中的元素初始化所有端ロ 102。所述预定的值来源于SAS控制器内部的存储器所存储的配置数据结构。SAS控制器可以初始化一个或多个端ロ控制器104 ; —个端ロ控制器表不一个与SAS装置相关联的SAS地址。每个端ロ控制器可以由一端ロ控制器配置数据结构表示。然后SAS控制器确定是否有PHY要配置106。如果没有PHY要配置,则SAS控制器可设置ー个内部标志来表明初始化端ロ配置已经完成108,并且该方法可以结束。如果有PHY要配置,则SAS控制器可以顺序地处理每个PHY以添加PHY给ー适当的端ロ。根据SAS控制器存储的配置数据所述端ロ可以开始与PHYs相关联。在操作110中,SAS控制器确定与每个PHY相关联的端ロ是否已经顺序地与现有的PHY成员相关联。如果端ロ没有与现有的任何PHY成员相关联,则SAS控制器可以为端ロ分配一端ロ控制器112。然后SAS控制器可以确定是否根据SAS控制器所存储的配置数据自动或手动地配置PHY 114。如果自动配置PHY,则SAS控制器可以在与所述PHY相关联的配置数据结构中设置ー标志来表明所述PHY自动配置116 ;然后SAS控制器可根据存储在SAS控制器中的配置数据存储ー值118,该值表示代表PHY配置数据结构中的一动态端ロ组118 ; SAS控制器可在表示动态端ロ组的全局数据结构中设置ー数据元,该数据元表明该PHY属于此动态端ロ组120。另ー方面,如果是手动配置PHY,则SAS控制器可在与所述PHY相关联的PHY配置数据结构中设置ー标志来表明所述PHY是手动配置122。对于自动和手动配置PHY 二者来说,SAS控制器都可通过在与所述PHY相关联的PHY配置数据结构中记录端口数目来増加PHY作为与其相关联端ロ的成员124,并在端ロ配置数据结构中记录数据来表明PHY是端ロ成员。具体来说,SAS控制器可设置ー个位(bit)来代表PHY在端口数据结构中的位掩码成员。SAS控制器通过存储在与端ロ控制器相关联的端ロ控制器配置数据结构中的端口数目来关联端ロ与端ロ控制器126。然后SAS控制器通过在具体与所述PHY相关联的SAS控制器硬件中设置ー数据元为唯一标识所述端ロ的值128。最后,SAS控制器可以为PHY存储配置信息130,例如与所述PHY相关联的端口和动态端ロ组。同样过程可以为SAS控制器中的每ー个PHY执行。通过所述方法,根据SAS控制器所存储的配置信息将SAS控制器配置到一初始状态。SAS控制器支持手动配置PHYs和自动配置PHYs ;但是手动配置PHY与自动配置PHY不应当关联相同的端ロ,因为系统拓扑的变化导致自动配置PHYs变化不会反映相应手动配置PHY变化,潜在地导致端ロ分配不协调。參照图2所示,在SAS控制器根据存储在存储器内的配置数据初始化配置后,当SAS控制器发生状态改变吋,重新自动配置SAS控制器的典型操作方法。状态改变是指SAS控制器中的ー个PHY的状态改变,例如SAS装置与PHY 连接或者断开,连接到PHY的SAS装置重新启动,或者连接到PHY的SAS装置断电。每当状态发生变化的时候,SAS控制器都可设置ー个内部标志来表明SAS控制器需要重新配置。PHY状态改变时重新本文档来自技高网
...

【技术保护点】

【技术特征摘要】
2011.02.07 US 13/021,8901.一种SAS控制器设备,包括 一处理器; 可操作地连接至所述处理器的非易失性存储器,该非易失性存储器被配置以存储端ロ和PHY配置信息; 可操作地连接至所述处理器的多个PHY,每ー PHY被配置以连接到一 SAS装置;以及 计算机可执行程序代码,其被配置以 自动配置所述多个PHY中的至少ー个PHY在所述处理器上运行; 在所述存储器内存储PHY配置信息;以及 在ー个或多个PHY经历ー状态改变事件后,基于此PHY配置信息重新 配置所述ー个或多个PHY。2.根据权利要求I所述的设备,其中连接到所述ー个或多个PHY的一SAS装置松开与所述ー个或多个PHY的连接,并在没有介于中间的SAS装置被连接到所述ー个或多个PHY吋,随后恢复与所述ー个或多个PHY的连接。3.根据权利要求I所述的设备,其中所述计算机可执行程序代码被进一歩配置以 在与所述多个PHY中的ー个PHY相关联的一数据结构中设置ー数据元,该数据元指示所述多个PHY中的所述ー个PHY是自动配置的; 在与所述多个PHY中的ー个PHY相关联的一数据结构中存储动态端ロ组信息,该动态端ロ组信息指示所述多个PHY中的所述ー个PHY是ー动态端ロ组中的ー员; 在与至少ー个端ロ相关联的一数据结构中设置ー数据元,该数据元指示所述多个PHY中所述ー个PHY是所述至少ー个端ロ中的ー员; 在与一端ロ控制器相关联的一数据结构中设置ー数据元,该数据元指示至少ー个端ロ与所述端ロ控制器相关联;以及 在与一硬件链路别名相关联的一数据结构中设置ー数据元,该硬件链路别名与所述多个PHY中的所述ー个PHY相关联,该数据元指示所述多个PHY中的所述ー个PHY所述至少一个端ロ相关联,其中所述至少一个端ロ有PHYs成员。4.根据权利要求I所述的设备,其中所述计算机可执行程序代码被进一歩配置以 为至少ー个端ロ分配一端ロ控制器,其中所述至少ー个端ロ没有任何PHYs成员; 在与所述多个PHY中的ー个PHY相关联的一数据结构中设置ー数据元,该数据元指示所述多个PHY中的所述ー个PHY是自动配置的; 在与所述多个PHY中的所述ー个PHY相关联的一数据结构中存储动态端ロ组信息,该动态端ロ组信息指示所述多个PHY中的所述ー个PHY是某ー动态端ロ组中的ー员; 在与所述多个PHY中的所述ー个PHY相关联的一数据结构中设置ー数据元,该数据元指示所述多个PHY中的所述ー个PHY是某ー动态端ロ组中的ー员; 在与至少ー个端ロ相关联的一数据结构中设置ー数据元,该数据元指示所述多个PHY中所述ー个PHY是所述至少ー个端ロ中的ー员; 在与一端ロ控制器相关联的一数据结构中设置ー数据元,该数据元指示至少ー个端ロ与所述端ロ控制器相关联;以及 在与一硬件链路别名相关联的一数据结构中设置ー数据元,该硬件链路别名与所述多个PHY中的所述ー个PHY相关联,该数据元指示所述多个PHY中的所述ー个PHY所述至少一个端ロ相关联,其中所述至少一个端ロ有PHYs成员。5.根据权利要求I所述的设备,其中所述计算机可执行程序代码被进一歩被配置以 确定是否所述多个PHY中的ー个或多个PHY已经历了一状态改变事件; 确定是否所述多个PHY中的ー个PHY是活动的;以及 确定是否所述多个PHY中的所述ー个PHY是自动配置的。6.根据权利要求5所述的设备,其中所述计算机可执行程序代码被进一歩配置以 从ー数据元清除一 SAS地址,该数据元被配置以存储一 SAS地址;以及 设置ー硬件链路别名,该硬件链路别名被配置以表示所述多个PHY中的所述ー个PHY为某ー无效值,其中所述多个PHY中的所述ー个PHY是非活动的且是自动配置的。7.根据权利要求5所述的设备,其中所述计算机可执行程序代码被进一歩配置以 比较所述多个PHY中的所述ー个PHY与所述多个PHY中的一第二 PHY,其中所述多个PHY中的所述第二 PHY是自动配置的,并且其中所述多个PHY中的所述第二 PHY已经历一状态变化事件;以及 确定是否所述多个PHY中的所述ー个PHY和所述多个PHY中的所述第二 PHY连接至一单个SAS装置,其中所述多个PHY中的所述ー个PHY是活动的且是自动配置的。8.根据权利要求7所述的设备,其中所述计算机可执行程序代码被进一歩配置以 创建一新端ロ ;以及 关联所述多个PHY中的所述ー个PHY与所述新端ロ,其中所述多个PHY中的所述ー个PHY和所述多个PHY中的所述第二 PHY不连接至相同的SAS装置,以及其中所述多个PHY中的所述ー个PHY和所述多个PHY中的所述第二 PHY与相同的端ロ相关联。9.根据权利要求7所述的设备,其中所述计算机可执行程序代码被进一歩配置以 为所述多个PHY中的所述ー个PHY修改配置信息,以使所述多个PHY中的所述ー个PHY和所述多个PHY中的所述第二 PHY与相同的端ロ相关联,其中多个PHY中的所述ー个PHY和所述多个PHY中的所述第二 PHY与相同动态端ロ组中的不同端ロ相关联,以及其中所述多个PHY中的所述ー个PHY和所述多个PHY中的所述第二 PHY连接至相同的SAS装置;以及 在与所述多个PHY中的所述ー个PHY相关联的一数据结构中设置ー数据元,其中所述数据元...

【专利技术属性】
技术研发人员:布拉德·D·百思莫欧文·帕里铭仁·王
申请(专利权)人:LSI公司
类型:发明
国别省市:

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

1