KR20110009010A - Sas 장치 및 sas 장치의 phy의 다중화 기능 관리 방법 - Google Patents

Sas 장치 및 sas 장치의 phy의 다중화 기능 관리 방법 Download PDF

Info

Publication number
KR20110009010A
KR20110009010A KR20100001819A KR20100001819A KR20110009010A KR 20110009010 A KR20110009010 A KR 20110009010A KR 20100001819 A KR20100001819 A KR 20100001819A KR 20100001819 A KR20100001819 A KR 20100001819A KR 20110009010 A KR20110009010 A KR 20110009010A
Authority
KR
South Korea
Prior art keywords
sas
phy
performance
multiplexing function
phys
Prior art date
Application number
KR20100001819A
Other languages
English (en)
Inventor
데이비드 티 우덴버그
마크 슬러츠
브라이언 제이 바니
Original Assignee
엘에스아이 코포레이션
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 엘에스아이 코포레이션 filed Critical 엘에스아이 코포레이션
Publication of KR20110009010A publication Critical patent/KR20110009010A/ko

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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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/0028Serial attached SCSI [SAS]

Abstract

본 발명은 PHY의 모니터링된 성능에 응답하여 및/또는 SAS 영역 내의 장치의 구성의 변경에 응답하여 SAS 장치의 PHY의 다중화 기능을 자동으로, 동적으로 재구성하는 방법 및 시스템에 관한 것이다. SAS 영역 내의 SAS 이니시에이터 또는 SAS 익스팬더와 같은 SAS 장치(102)는 PHY(110)의 성능(104)을 모니터링하여 대역폭 이용을 검출할 수 있고, PHY의 다중화 기능(106)을 재구성하여 장치의 PHY의 대역폭 이용을 향상시킬 수 있다. 본 장치는 또한 새로운 장치의 추가 또는 장치의 제거와 같은 SAS 영역의 토폴로지의 변경을 검출할 수 있고, 이에 따라 PHY의 다중화 기능을 조정하여 SAS 영역 내의 통신의 성능을 향상시킬 수 있다.

Description

SAS 장치 및 SAS 장치의 PHY의 다중화 기능 관리 방법{METHODS AND APPARATUS DYNAMIC MANAGEMENT OF MULTIPLEXED PHYS IN A SERIAL ATTACHED SCSI DOMAIN}
SAS는 저장 제어기를 통해 저장 장치들을 결합시키기 위한 컴퓨터 시스템에 대한 표준 그룹을 포함한다. SAS 표준 그룹의 다수의 세부사항은 www.t10.org에서 찾을 수 있다. 예컨대, 저장 제어기는 직렬 SCSI 프로토콜(SSP) 표준에 따라 (SAS 디스크 드라이브를 포함하는) 저장 장치와 통신할 수 있고, 직렬 관리 프로토콜(SMP)을 사용하는 영역에서 장치를 관리할 수 있다.
SAS 버전 2 규격(SAS-2 섹션 6.10)은 물리적 링크의 다중화 기능에 대한 규격을 추가한다. 특히, SAS-2 규격은 PHY 계층 논리가 다중화 기능을 통합하는 것을 허용한다. 본 명세서에서 사용된 "물리적 링크"는 다중화 기능이 SAS-2 표준에 의해 기술된 바와 같이 통합될 수 있는 PHY 계층 논리 요소를 지칭한다. SAS-2의 시간 기반 다중화 기능(흔히 "시간 영역 다중화" 또는 간단히 "TDM"으로 지칭됨)은 이용가능성이 높은 대역폭을 가진 물리적 링크가, 다수의 SAS 장치에 논리적 링크를 제공하도록 이용가능한 대역폭으로 논리적으로 분할되는 것을 허용한다. 예컨대, PHY는 6 Gbps의 최대 데이터 레이트를 제공할 수 있다. 만일 PHY가 다중화 기능을 사용할 수 있으면, 이용가능한 대역폭은 동일한 6 Gbps PHY를 사용하여 (논리적 링크를 통해) 두 개의 3 Gbps 장치가 결합할 수 있도록 분할될 수 있다. 각각의 장치는 최저 속도로 PHY를 사용하도록 시간의 일부에 할당될 수 있다. 또는 예컨대, 4 개의 1.5 Gbps 장치가 동일한 6 Gbps PHY를 사용할 수 있다. 이러한 다중화 특징의 일반적인 애플리케이션에서, 하나의 물리적 링크(즉, 하나의 PHY)를 사용하여 SAS 이니시에이터(initiator)가 SAS 익스팬더(expander) 장치와 결합할 수 있다. 물리적 링크는 (SAS 익스팬더 및 SAS 영역의 임의의 다른 개재 익스팬더를 통해) SAS 이니시에이터가 다수의 SAS 장치와 결합하는 데 단일 PHY가 사용될 수 있도록 다중화 기능을 인에이블링하도록 구성될 수 있다.
다중화 기능은 다른 SAS 익스팬더 또는 SAS 장치, 예컨대, 저장 장치에 결합할 때 SAS 이니시에이터 또는 SAS 익스팬더와 같은 적절한 유연성을 갖는 SAS 제어기에서 인에이블링될 수 있다. PHY가 최대 이용가능한 대역폭의 일부에서 다수의 장치를 각각 지원하기 위해 구성되는 경우에, 높은 속도의 장치는 최대 속도 능력을 사용하여 PHY와 결합되지 않을 수도 있다. 예컨대, 6 Gbps PHY가 현재 2 개의 3 Gbps 장치를 지원하도록 구성되면, 6 Gbps 장치는 그 PHY와 결합되지 못할 수 있고, 6 Gbps의 최대 능력을 이용하지 못할 수 있다(3 Gbps -처리량 능력의 절반- 로 제한될 것이다). 따라서, 6 Gbps PHY의 2 개의 "절반"(각각 다중화 기술을 사용하여 3 Gbps로 동작할 수 있음)이 접속에 이용가능할 수 있지만, 6 Gbps 장치는 최대 속도로 이에 접속할 수 없다.
현재 실시되는 바와 같이, 다중화 기능을 사용하거나 사용하지 않는 PHY의 구성은 전형적으로 현재 구성된 SAS 영역의 요구를 분석하는 관리자의 수동 프로세스에 의해 SAS 영역의 초기 구성에서만 결정된다. 다중화 기능을 사용하거나 사용하지 않는 이 정적인 초기에 결정된 PHY의 구성은 영역의 구성이 변하면/변하는 경우, 예컨대, 장치가 추가되거나 제외되는 경우에 SAS 영역의 성능을 저하시킬 수 있다. 다중화 기능은 관리자에 의해 지정된 바와 같이 각각의 PHY마다 다중화하는 구성 파라미터에 기초하여 SAS 속도 교섭 프로세스의 일부로서 PHY에 대해 결정된다. 따라서, 관리자에 의해 수동으로 결정된 구성은 SAS 영역에 대한 최초 전력 인가시("개시일(start of day)")에 설정된다. 정적 구성은 새로운 장치가 추가되거나 장치가 제거될 때 영역의 변화(예컨대, 고장)를 고려하지 않는다. 본 실시는 전체 영역이 PHY의 다중화 파라미터의 수동 재구성을 허용하는 데 본질적으로 이용가능하지 않은 것을 필요로 한다.
따라서, 영역에서 PHY의 다중화 기능을 사용하도록 구성된 SAS 영역의 성능을 유지하는 것은 진행중인 도전이다.
본 발명은 SAS 영역 내의 PHY의 성능을 자동으로 모니터링하고/하거나 장치의 추가 또는 제거로부터 SAS 영역의 변경을 감지하며, 하나 이상의 PHY의 다중화 기능을 자동으로 재구성하는 방법 및 시스템을 제공함으로써, 전술한 문제 및 다른 문제점을 해결하고, 이로써 유용한 종래 기술의 상태를 향상시킨다. 영역의 PHY 내의 다중화 기능의 현재 구성에 기초하여 저하된 성능을 감지하는 것에 응답하여, 새로운 구성이 결정되고 자동으로 재구성될 수 있다. PHY는 전체 영역의 재시작을 필요로 하지 않으면서 SAS 영역의 성능을 향상시키기 위해 다중화 기능을 인에이블링 또는 디스에이블링하도록 재구성될 수 있다. 단지 영향을 받은 재구성된 PHY만 재시작될 수 있다.
본 발명의 일 양상에서, SAS 영역 내의 SAS 장치의 PHY의 다중화 기능을 관리하는 방법이 제공된다. 그 방법은 SAS 장치에서 동작가능하다. 방법은 SAS 장치 내에서, PHY의 대역폭 성능을 모니터링하는 단계를 포함한다. 모니터링된 대역폭 성능에 응답하여, SAS 장치의 다른 PHY가 그 방법을 수행함으로써 동작이 중단되지 않게 계속하는 동안 다중화 기능의 사용을 변경하도록 PHY를 동적으로 재구성하는 단계를 포함한다.
본 발명의 다른 양상은 SAS 영역의 PHY의 다중화 파라미터를 조정하기 위해 SAS 영역과 결합된 익스팬더 장치에서 동작가능한 방법을 제공한다. 방법은 SAS 영역의 장치 및 PHY의 구성을 모니터링하고 그 구성으로부터 PHY의 다중화 파라미터에 대한 새로운 구성을 결정하는 단계를 포함한다. 이어서 방법은 새로운 구성에 기초하여 PHY의 다중화 파라미터를 조정하고, 조정된 자동화 파라미터를 사용하여 PHY를 재시작한다. 방법은 SAS 영역의 다른 PHY가 방법의 수행에 의해 동작이 중단되지 않게 계속하는 동안 수행된다.
본 발명의 또 다른 양상은 SAS 영역 내의 SAS 장치를 제공한다. SAS 장치는 SAS 영역 내의 장치 및 PHY의 구성 및 성능을 모니터링하는 구성 모니터 모듈을 포함한다. 본 장치는 또한 구성 모니터 모듈과 결합되어 SAS 영역의 장치 및 PHY의 구성 및 성능에 관한 정보를 수신하는 PHY 재구성 모듈을 포함한다. PHY 재구성 모듈은 SAS 영역의 다른 PHY가 동작이 중단되지 않게 계속하는 동안 PHY의 다중화 파라미터를 재구성한다.
도 1은 SAS 영역의 모니터링된 성능 및 그 영역의 구성의 변화에 기초하여 하나 이상의 PHY의 다중화 파라미터를 자동으로 및 동적으로 재구성하도록 본 발명의 특징 및 양상에 따라 향상된 SAS 장치를 포함하는 예시적인 SAS 영역의 블록도이다.
도 2는 SAS 영역의 모니터링된 성능 및 그 영역의 구성의 변화에 기초하여 하나 이상의 PHY의 다중화 파라미터를 자동으로 및 동적으로 재구성하도록 본 발명의 특징 및 양상에 따른 예시적인 방법을 설명하는 순서도이다.
도 3은 SAS 영역의 모니터링된 성능 및 그 영역의 구성의 변화에 기초하여 하나 이상의 PHY의 다중화 파라미터를 자동으로 및 동적으로 재구성하도록 본 발명의 특징 및 양상에 따른 다른 예시적인 방법을 설명하는 순서도이다.
도 4는 SAS 영역의 모니터링된 성능 및 그 영역의 구성의 변화에 기초하여 하나 이상의 PHY의 다중화 파라미터를 자동으로 및 동적으로 재구성하도록 본 발명의 특징 및 양상에 따른 다른 예시적인 방법을 설명하는 순서도이다.
도 5는 본 발명의 다중화 파라미터를 재구성한 후 PHY를 리셋/재시작하도록 본 발명의 특징 및 양상에 따른 다른 예시적인 방법을 설명하는 순서도이다.
도 1은 SAS 장치(102)의 하나 이상의 PHY에 대한 다중화 파라미터의 동적이고 자동화된 재구성을 제공하도록 본 발명의 특징 및 양상에 따라 향상된 SAS 장치를 포함하는 SAS 영역(100)의 블록도이다. SAS 장치(102)는 예컨대, 영역 내의 호스트 버스 어댑터(HBA)와 같은 SAS 이니시에이터 또는 SAS 익스팬더를 포함하는 임의의 SAS 제어기일 수 있다. SAS 장치(102)는 SAS 영역(100)의 다른 장치와의 결합을 위해 하나 이상의 PHY(110.1 내지 110.n)을 포함할 수 있다. 또한, SAS 버전 2(SAS-2) 표준에 따르면, PHY(110.1 내지 110.n)의 일부(또는 전부)는 다수의 장치가 단일 PHY를 통해 SAS 장치(102)와 결합될 수 있게 하도록 다중화 기능이 가능할 수 있다. 도 1에 도시된 바와 같이, PHY(110.1)는 단일 PHY 인터페이스(110.1) 및 SAS 익스팬더(114)를 통해 장치(112.1 및 112.2)의 결합을 허용하도록 다중화 능력을 제공한다. 장치(112.1 및 112.2)는 예컨대, SAS 익스팬더, 하드 디스크 드라이브((SATA:serial advanced technology attachment) 장치를 포함함)와 같은 저장 장치 등을 포함하는 임의의 적합한 SAS 장치일 수 있다. 통신 경로(150, 152.1 및 152.2)는 SAS 통신 경로, SATA 통신 경로 또는 장치(112.1, 112.2), 익스팬더(114) 및 SAS 장치(102)를 결합시키는 다른 적합한 통신 매체일 수 있다.
PHY(110.1)의 다중화 기능의 사용을 통해, 다수의 링크 계층 처리 요소(120.1, 120.2)는 각각 대응하는 장치(112.1, 112.2)에 대한 다수의 논리적 링크 접속 각각을 개방할 수 있다. 따라서, 제 1 논리적 링크는 경로(154.1), PHY(110.1), 경로(150), 익스팬더(114) 및 경로(152.1)를 통해 장치(112.1)에 결합된 링크 계층(120.1)을 포함한다. 제 2 논리적 링크는 경로(154.2), PHY(110.1), 경로(150), 익스팬더(114) 및 경로(152.2)를 통해 링크 계층(120.2)을 장치(112.2)에 결합한다. 이 방식으로, 다수의 논리적 링크는 다중화 기능을 인에이블링하도록 구성된 동일한 물리적 링크(PHY(110.1))를 공유한다고 정의된다.
SAS 장치(102)는 PHY(110.1 내지 110.n)의 성능 및/또는 구성뿐만 아니라, SAS 영역(100) 내의 장치의 전체 구성을 모니터링하는 구성 및 성능 모니터(104)를 포함할 수 있다. 특히, 구성 및 성능 모니터(104)는 다양한 PHY(110.1 내지 110.n)을 통해 교환된 SAS 프레임에 의해 측정된 성능을 나타내는 PHY 이벤트 카운터(108)에 저장된 정보뿐만 아니라 다른 성능 기준을 분석할 수 있다. PHY 이벤트 카운터(108)는 RAM(예컨대, 비휘발성 메모리 구성요소), 레지스터 파일 등과 같은 SAS 장치(102) 내의 임의의 적합한 저장 구성요소로서 구현될 수 있다. SAS 장치(102)는 하나 이상의 PHY(110.1 내지 110.n)의 다중화 파라미터를 재구성하는 PHY 다중화 재구성 모듈(106)도 포함할 수 있다. 구성 및 성능 모니터(104)에 의해 수집된 성능 기준에 기초하여, PHY 다중화 재구성 모듈(106)은 하나 이상의 PHY(110.1 내지 110.n) 상에 다중화 기능을 자동으로 인에이블링하거나 디스에이블링할 수 있다. 또한, 구성 및 성능 모니터(104)는 SAS 영역(100)의 재구성에 관한 SAS 브로드캐스트 메시지를 분석할 수 있다. 이러한 SAS 브로드캐스트 메시지는 예컨대, 새로운 장치가 SAS 영역(100)에 추가될 때 또는 SAS 영역(100)과 이전에 결합된 장치가 제거될 때 생성될 수 있다. SAS 영역의 구성의 변화에 응답하여, PHY 다중화 재구성 모듈(106)은 SAS 영역(100) 내의 다른 장치와 통신하여 SAS 장치(102)의 성능을 향상시키도록 하나 이상의 PHY(110.1 내지 110.n)의 다중화 파라미터를 더 재구성할 수 있다.
구성 및 성능 모니터(104)는 또한 SAS 익스팬더(114) 내에 도시된 바와 같이 SAS 영역(100)의 다른 장치 내에 존재하는 PHY 이벤트 카운터(116)를 검색하고 분석하는 데 SAS 프로토콜(예컨대, SMP)을 이용할 수 있다. SAS 영역(100)의 다른 장치의 이러한 성능 기준의 분석은 SAS 장치(102)가 PHY(110.1 내지 110.n)의 재구성을 제공할 뿐만 아니라, SAS 장치(102) 내의 구성 및 성능 모니터(104)의 분석에 기초하여 다른 SAS 익스팬더에게 그들 자신의 PHY를 재구성하라고 지시한다.
예로써, PHY(110.1)는 장치(102)가 단일 PHY를 공유하는 다수의 장치(112.1, 112.2)와 결합하는 것을 허용하도록 다중화 기능을 사용하여 동작하는 것으로 도시된다. 구성 및 성능 모니터(104)는, 다른 PHY가 충분히 이용되지 않는다는 점에서 복수의 PHY의 각각 상의 전체 부하가 잘 밸런싱되지 않는다고 결정할 수 있다. SAS 장치(102)의 PHY(110.1 내지 110.n)의 성능 및 구성을 모니터링함으로써 그러한 결정이 이루어지면, PHY 다중화 재구성 모듈(106)은 하나 이상의 PHY(110.1 내지 110.n) 상에 다중화 기능을 인에이블링하거나 디스에이블링하도록 다양한 PHY를 재구성하도록 선택할 수 있다. 또는, 예컨대, 새로운 장치가 SAS 영역(100)에 추가되고 장치(102)의 다른 PHY와 결합되면, 다른 PHY의 다중화 구성이 재구성될 수 있다. 예컨대, 만일 새롭게 추가된 장치가 고속 SAS 장치이면, 새로운 고속 장치가 PHY(110.n)의 이용가능한 대역폭을 완전히 이용하도록 허용하기 위해 PHY(110.n)의 다중화 기능이 디스에이블링될 수 있다. 동일한 방식으로, 만일 장치(예컨대, 112.2)가 SAS 영역(100)으로부터 제거되면, 분석은 PHY(110.1)를 통해 결합되어 있는 장치(112.1)가 PHY(110.1)의 전체 대역폭을 이용할 수 있도록 PHY(110.1)가 다중화 기능이 디스에이블링되도록 재구성함으로써 잘 이용될 수 있다고 결정할 수 있다. 당업자는 SAS 영역(100) 내의 다른 장치와 통신하고 있는 SAS 장치(102)의 전체 성능을 향상시키도록 하나 이상의 PHY의 다중화 기능을 재구성하는 다수의 다른 예시적인 분석 및 대응하는 재구성을 쉽게 알 것이다.
당업자는 SAS 영역(100) 내의, 특히 그러한 SAS 영역 내의 장치의 정규 동작에 적응된 SAS 장치(102) 내의 다수의 추가적이고 균등한 요소를 쉽게 알 것이다. 이러한 추가적이고 균등한 요소는 본 논의의 간명성 및 간결성을 위해 본 명세서에서 생략된다. 또한, 당업자는 SAS 장치(102)가 임의의 적합한 개수의 PHY(110.1 내지 110.n)를 포함할 수 있음을 쉽게 알 것이다. SAS 장치(102) 내의 PHY(110.1 내지 110.n)의 표현은 단지 본 발명의 특징 및 양상의 가능한 예시적인 일 실시예로서 의도된다. 또한, 임의의 개수의 저장 장치(예컨대, 112.1, 112.2) 및 익스팬더(예컨대, 114)는 적합한 통신 경로를 통해 SAS 장치(102)의 적합한 PHY에 결합될 수 있다. 따라서 도 1에 도시된 전체 구성은 본 발명의 특징 및 양상에 따라 강화된 SAS 장치(102)를 포함하는 SAS 영역(100)의 가능한 예시적인 일 실시예로서 의도된다.
도 2는 SAS 영역 내의 SAS 장치의 PHY의 다중화 기능을 동적으로 재구성하도록 본 발명의 특징 및 양상에 따른 예시적인 방법을 설명하는 순서도이다. 도 2의 방법은 예컨대, 도 1에 도시된 예시적인 시스템과 같은 시스템에서, 특히, 도 1의 장치(102)와 같은 SAS 장치에서 동작가능하다. 보다 더 구체적으로, 도 2의 방법은 SAS 영역의 SAS 이니시에이터 및/또는 SAS 익스팬더에서 동작가능할 수 있고, 장치 내의 프로세서 및/또는 장치 내의 적합하게 적응된 커스텀 회로에 의해 실행되는 적합하게 프로그래밍된 인스트럭션으로서 구현될 수 있다.
단계(200)는 SAS 장치의 하나 이상의 PHY의 대역폭 성능 및 구성을 모니터링하는 SAS 장치(예컨대, SAS 이니시에이터 또는 SAS 익스팬더) 내의 처리를 나타낸다. 언급한 바와 같이, 이러한 모니터링은 예컨대, SAS 장치 내의 PHY 이벤트 카운터 및/또는 SAS 장치의 다양한 PHY를 통해 SAS 장치와 결합된 장치의 PHY 이벤트 카운터를 판독함으로써 달성될 수 있다. SAS 장치 내의 PHY 이벤트 카운터에 대한 액세스는 표준 전자 회로 또는 SAS 장치 내의 메모리에 저장된 카운터 정보에 대한 프로그래밍 인스트럭션 액세스에 의해 달성될 수 있다. SAS 장치와 결합된 다른 장치의 PHY 이벤트 카운터에 대한 액세스는 예컨대, SMP 프로토콜 또는 다른 SAS 프로토콜을 사용하여 적합한 질의에 의해 또는 이와 달리 벤더 특정 통신 프로토콜(예컨대, SAS 통신 능력에 관한 측파대(sideband) 프로토콜)의 구현에 의해 수행될 수 있다.
단계(204)는 단계(200)의 모니터링에 의해 수행된 성능 정보의 분석에 응답하여 SAS 장치의 PHY의 다중화 기능을 재구성하는 SAS 장치 내의 처리를 나타낸다. 전술한 바와 같이, 재구성은 SAS 장치의 하나 이상의 PHY의 다중화 기능의 다른 재구성이 SAS 영역의 다른 장치와 통신하는 SAS 장치에 더 나은 성능을 제공할 것이라는 결정에 기초하여 SAS 장치의 하나 이상의 PHY의 다중화 기능을 인에이블링 및/또는 디스에이블링하는 것을 포함할 수 있다. SAS 영역으로부터의 SAS 장치의 추가 또는 제거는 성능 향상을 위한 새로운 구성을 발생시킬 수 있다고 검출된 다른 유형의 이벤트를 나타낼 수 있다.
도 3은 SAS 장치의 하나 이상의 PHY의 구성 및 성능을 동적으로 모니터링하고, 하나 이상의 모니터링된 PHY의 다중화 기능을 재구성하여 SAS 영역의 다른 장치와 통신하는 SAS 장치의 성능을 향상시키도록 본 발명의 특징 및 양상에 따른 다른 예시적인 방법을 설명하는 순서도이다. 도 3의 방법은 예컨대, 도 1의 영역(100)과 같은 SAS 영역에서 동작가능할 수 있고, 보다 구체적으로는 SAS 이니시에이터 및/또는 SAS 익스팬더와 같은 도 1의 SAS 장치(102)에서 동작가능할 수 있다. 보다 더 구체적으로는, 도 3의 방법은 SAS 영역의 SAS 이니시에이터 및/또는 SAS 익스팬더에서 동작가능할 수 있고, 장치 내의 프로세서 및/또는 장치 내의 적합하게 적응된 커스텀 회로에 의해 실행되는 적합하게 프로그래밍된 인스트럭션으로서 구현될 수 있다.
단계(300)는 SAS 장치의 PHY를 통해 SAS 장치와 결합된 장치의 구성 및/또는 성능을 모니터링하는 SAS 장치 내의 처리를 나타낸다. 전술한 바와 같이, 모니터링된 정보는 충분히 이용되지 않은 및/또는 과하게 이용된 PHY를 식별하기 위해 SAS 장치의 다양한 PHY 사이의 대역폭 이용(예컨대, 부하 밸런싱)을 포함할 수 있다. 또한, 모니터링된 정보는 모니터링을 수행하는 SAS 장치와 결합된 장치의 추가 또는 제거와 같은 변경을 포함하는 SAS 영역의 구성 정보를 포함할 수 있다.
단계(302)는 모니터링된 정보를 분석하여 (만일 있다면) SAS 장치의 하나 이상의 PHY에 대한 다중화 파라미터의 새로운 구성을 결정한다. 새로운 구성은 부하 밸런싱 또는 SAS 영역의 다른 장치와 통신하는 SAS 장치의 다른 성능 측정을 향상시키도록 SAS 장치의 하나 이상의 PHY의 다중화 기능을 인에이블링 및/또는 디스에이블링하는 것을 포함할 수 있다. 그렇게 결정된 후, (만일 있다면) 새로운 구성 단계(304)는 새로운 구성 정보에 기초하여 SAS 장치의 하나 이상의 PHY의 다중화 파라미터를 조정한다. 조정된 다중화 파라미터를 가진 PHY마다, 단계(306)는 새롭게 구성된 다중화 파라미터를 이용하는 새로운 속도 교섭을 허용하도록 재구성된 PHY를 재시작한다.
도 4는 도 2 및 도 3에서 논의된 처리의 추가적인 세부사항에 대한 예시적인 방법을 설명하는 순서도이다. 특히, 도 4의 예시적인 방법은 SAS 장치 내의 PHY 이벤트 카운터에 기초하여 PHY의 성능을 모니터링하고, SAS 영역의 새로운 구성을 나타내는 SAS 브로드캐스트 메시지에 기초하여 구성 변경을 모니터링하는 것을 설명한다. 도 4의 방법은 도 1에 설명된 바와 같이 SAS 영역에서, 보다 구체적으로 도 1의 장치(102)와 같은 SAS 장치에서 동작가능할 수 있다. 보다 더 구체적으로, 도 4의 방법은 SAS 영역의 SAS 이니시에이터 및/또는 SAS 익스팬더에서 동작가능할 수 있고, 장치 내의 프로세서 및/또는 장치 내의 적합하게 적응된 커스텀 회로에 의해 실행되는 적합하게 프로그래밍된 인스트럭션으로서 구현될 수 있다.
단계(400)는 이 SAS 장치 또는 이 SAS 장치와 결합된 다른 장치의 하나 이상의 PHY의 PHY 이벤트 카운터를 판독하는 처리를 나타낸다. 전술한 바와 같이, 이 SAS 장치의 PHY 카운터 정보의 판독은 일반적으로 이 SAS 장치와 연관된 레지스터 또는 다른 적합한 메모리 구조체에 저장된 정보에 대한 액세스를 필요로 한다. SAS 장치의 PHY 계층 논리 요소의 표준 특징은 전형적으로 각각의 PHY의 동작과 관련된 다양한 이벤트의 카운팅을 포함한다. 그러한 이벤트는 프레임 수신, 프레임 전송, 무효 프레임 수신 등을 포함할 수 있다. 이 SAS 장치와 결합된 다른 장치의 PHY 이벤트 카운터를 판독할 때, 다른 장치로부터 이러한 상태 정보를 질의하고 검색하는 데 SMP 프로토콜이 이용될 수 있다. 설계 선택에 관한 문제로서 다른 커스텀화 벤더 특정 프로토콜도 사용될 수 있다.
이벤트 카운터 정보에 기초하여, 단계(402)는 이 또는 다른 SAS 장치의 임의의 PHY가 현재 충분히 이용되고 있지 않은지 여부를 판정한다. 만일 예라면, 단계(412)는 SAS 영역의 전체 성능을 향상시키도록 이 또는 다른 SAS 장치의 하나 이상의 PHY에 대한 다중화 기능의 새로운 구성을 결정하도록 동작가능하다. 만일 모니터링된 성능 데이터에 기초하여 어떠한 PHY도 현재 충분히 이용되고 있지 않으면, 단계(404)는 이 SAS 장치에 의해 SAS 영역의 토폴로지 또는 구성의 변경을 나타내는 임의의 새로운 SAS 브로드캐스트 메시지가 수신되었는지 여부를 판정한다. 당업자에게 잘 알려져 있는 바와 같이, SAS 영역의 변경은 각각의 SAS 장치가 SAS 영역의 변경된 토폴로지를 재발견하도록 허용하는 SAS 브로드캐스트 메시지를 생성한다. 만일 단계(404)가 어떠한 새로운 브로드캐스트 메시지도 수신되지 않았다고 판정하면, 방법의 처리는 완료된다.
만일 단계(404)가 SAS 영역의 토폴로지 또는 구성의 변경을 나타내는 새로운 SAS 브로드캐스트 메시지가 수신되었다고 판정하면, 단계(406 내지 410)는 어떤 유형의 변경이 감지되었는지를 결정하도록 동작가능하다. 예로써, 단계(406)는 고속 장치가 이 또는 다른 SAS 장치와 새롭게 결합되는지 여부를 검출한다. 단계(408)는 저속 장치가 이 또는 다른 SAS 장치와 새롭게 결합되는지 여부를 판정한다. 단계(410)는 이 또는 다른 SAS 장치로부터 임의의 장치가 결합해제되는지 여부를 판정한다. 단계(406 내지 410)에 의해 검출된 변경 중 임의의 변경이 감지될 때, 단계(412)는 SAS 영역의 전체 성능을 향상시키기 위해 이 또는 다른 SAS 장치의 하나 이상의 PHY의 다중화 기능을 인에이블링 및/또는 디스에이블링하도록 전술한 바와 같이 새로운 구성을 결정한다. 만일 SAS 영역의 이들 예시적인 토폴로지 변경 중 어느 것도 감지되지 않으면, 방법의 처리는 완료된다.
도 2 내지 도 4의 방법은 SAS 영역에서 동작하는 PHY의 부하 밸런싱의 변경에 대해 및/또는 SAS 영역의 토폴로지 또는 구성의 변경에 응답하여 동적으로 조정하도록 SAS 장치 내에서 반복하여 수행될 수 있다. 일부 예시적인 실시예에서, 도 2 내지 도 4의 방법은 시간별(timed) 주기적으로 수행될 수 있다. 이러한 실시예에서, 영역 내의 PHY의 다중화 기능의 구성이 빈번하게 바뀔 필요가 없으므로, 모니터링하는 빈도가 특별히 높을 필요는 없다. 다른 실시예에서, 도 2 내지 도 4의 방법은 특정 성능 관련 이벤트 또는 구성 관련 이벤트의 검출에 응답하여 수행될 수 있다. 예컨대, 현재 성능 및 구성을 평가하는 방법은 SAS 영역 토폴로지의 구성 변경을 감지한 것에 응답하여 또는 영역 구성 변경의 충분한 임계 수를 감지한 것에 응답하여 수행될 수 있다. 또는, 예컨대, 현재 성능 및 구성을 평가하는 방법은 과 이용 또는 다른 성능 기준 때문에 특정 PHY 상의 정상 에러 레이트보다 높다고 감지한 것에 응답하여 수행될 수 있다.
도 5는 SAS 장치의 특정 PHY에 새롭게 구성된 다중화 파라미터를 적용하는 본 발명의 특징 및 양상에 따른 예시적인 방법을 설명하는 순서도이다. 도 5의 방법은 도 1에 도시된 바와 같이 SAS 영역에서, 특히 도 1의 장치(102)와 같은 SAS 장치에서 동작가능할 수 있다. 보다 더 구체적으로, 도 5의 방법은 SAS 영역의 SAS 이니시에이터 및/또는 SAS 익스팬더에서 동작가능할 수 있고, 장치 내의 프로세서 및/또는 장치 내의 적합하게 적응된 커스텀 회로에 의해 실행되는 적합하게 프로그래밍된 인스트럭션으로서 구현될 수 있다.
단계(500)는 먼저 재구성으로부터 이득을 얻을 수 있는 식별된 PHY에 대해 속도 교섭에서 사용된 다중화 파라미터를 조정한다. 이어서 단계(502)는 SAS 속도 교섭 프로세스가 새롭게 조정된 다중화 파라미터를 이용하여 수행되게 하도록 영향을 받은 PHY를 리셋 또는 재시작한다. 일부 실시예에서, 도 5의 방법은 단계(502)에서 현재의 트랜잭션(예컨대, 현재 개방 접속)이 완료될 수 있도록 PHY의 현재 동작에 기초하여 PHY의 리셋 또는 재시작을 스케줄링할 수 있다. 따라서 도 5의 방법의 재구성은 현재 개방 접속을 방해하지 않으면서 PHY가 리셋 또는 재시작될 수 있는 적합한 후속 시간까지 연기될 수 있다.
당업자는 도 2 내지 도 5의 방법에서 수행될 수 있는 다수의 추가적이고 균등한 단계를 쉽게 알 것이다. 이러한 추가적이고 균등한 단계는 본 개시의 간명성 및 간결성을 위해 본 명세서에서 생략될 수 있다.
본 발명은 도면 및 전술한 설명에 도시되고 기술되었지만, 이러한 도시 및 기술은 예시적이며, 격에 맞게 제한적이지 않은 것으로 간주되어야 한다. 본 발명의 일 실시예 및 그 최소 변경이 도시되고 설명되었다. 특히, 예시적인 소프트웨어 또는 펌웨어 실시예로서 도시되고 설명된 특징은 커스텀화 로직 회로로서 균등하게 구현될 수 있으며, 반대의 경우 또한 같다. 본 발명의 사상 내에 있는 모든 변경 및 수정에 대한 보호는 바람직하다. 당업자는 본 발명의 사상 내에 있는 전술한 실시예의 변경을 알 것이다. 이에 따라, 본 발명은 전술한 특정 예시 및 도시로 제한되지 않으며, 후속 특허청구범위 및 그 균등물에 의해서만 제한된다.
102 : SAS 장치 104 : 구성/성능 모니터
106 : PHY 다중화 재구성 108 : PHY 이벤트 카운터

Claims (13)

  1. SAS(Serial Attached SCSI) 영역 내의 SAS 장치에서 상기 SAS 장치의 PHY의 다중화 기능을 관리하는 방법에 있어서,
    상기 SAS 장치 내에서, 상기 PHY의 대역폭 성능을 모니터링하는 단계와,
    상기 모니터링된 대역폭 성능에 응답하여, 상기 SAS 장치의 다른 PHY가 상기 방법을 수행함으로써 동작이 중단되지 않게 계속하는 동안 다중화 기능의 사용을 변경하도록 상기 PHY를 동적으로 재구성하는 단계를 포함하는
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  2. 제 1 항에 있어서,
    상기 모니터링된 대역폭 성능으로부터 상기 PHY가 충분히 이용되지 않는다고 결정하는 단계를 더 포함하는
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  3. 제 2 항에 있어서,
    상기 재구성 단계는,
    상기 PHY의 대역폭 성능이 충분히 이용되지 않는다는 결정에 응답하여 상기 PHY의 다중화 기능을 인에이블링하는 단계를 더 포함하는
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  4. 제 2 항에 있어서,
    상기 재구성 단계는,
    상기 PHY의 대역폭 성능이 충분히 이용되지 않는다는 결정에 응답하여 상기 PHY의 다중화 기능을 디스에이블링하는 단계를 더 포함하는
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  5. 제 1 항에 있어서,
    상기 모니터링 단계는,
    하나 이상의 새로운 장치가 상기 SAS 장치와 결합됨을 검출하는 단계와,
    하나 이상의 장치가 상기 SAS 장치로부터 결합해제됨을 검출하는 단계와,
    새롭게 결합된 장치의 속도를 검출하는 단계와,
    상기 SAS 장치와 결합된 하나 이상의 장치 상의 I/O 요청 부하를 검출하는 단계
    중 하나 이상을 더 포함하는
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  6. 제 1 항에 있어서,
    상기 재구성 단계는,
    다중화 기능의 사용에 관하여 상기 PHY의 속도 교섭 파라미터를 조정하는 단계와,
    상기 PHY를 리셋하는 단계와,
    상기 조정된 속도 교섭 파라미터에 기초하여 SAS 속도 교섭이 상기 PHY 상의 다중화 기능의 사용을 결정하도록 허용하는 단계를 더 포함하는
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  7. 제 1 항에 있어서,
    상기 SAS 장치는 SAS 이니시에이터(SAS initiator)인
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  8. 제 1 항에 있어서,
    상기 SAS 장치는 SAS 익스팬더(SAS expander)인
    SAS 장치의 PHY의 다중화 기능 관리 방법.
  9. SAS(Serial Attached SCSI) 영역 내의 SAS 장치에 있어서,
    상기 SAS 영역 내의 장치와 PHY(110)의 구성 및 성능을 모니터링하는 구성 모니터 모듈(104)과,
    상기 구성 모니터 모듈과 결합되어 상기 SAS 영역의 장치와 PHY의 구성 및 성능에 관한 정보를 수신하고, 상기 SAS 영역의 다른 PHY가 동작이 중단되지 않게 계속하는 동안 PHY의 다중화 파라미터를 재구성하는 PHY 재구성 모듈(106)을 포함하는
    SAS 장치.
  10. 제 9 항에 있어서,
    SAS PHY 이벤트 카운터(108)를 더 포함하되,
    상기 구성 모니터 모듈은 상기 SAS PHY 이벤트 카운터에 기초하여 장치 및 PHY의 성능을 모니터링하는
    SAS 장치.
  11. 제 10 항에 있어서,
    상기 구성 모니터 모듈은 상기 SAS 영역 내의 다른 SAS 장치(114)의 SAS PHY 이벤트 카운터(116)에 액세스함으로써 장치 및 PHY의 성능을 또한 모니터링하는
    SAS 장치.
  12. 제 9 항에 있어서,
    상기 SAS 장치는 SAS 이니시에이터인
    SAS 장치.
  13. 제 9 항에 있어서,
    상기 SAS 장치는 SAS 익스팬더인
    SAS 장치.
KR20100001819A 2009-07-21 2010-01-08 Sas 장치 및 sas 장치의 phy의 다중화 기능 관리 방법 KR20110009010A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/506,831 US20110022736A1 (en) 2009-07-21 2009-07-21 Methods and apparatus dynamic management of multiplexed phys in a serial attached scsi domain
US12/506,831 2009-07-21

Publications (1)

Publication Number Publication Date
KR20110009010A true KR20110009010A (ko) 2011-01-27

Family

ID=42315738

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20100001819A KR20110009010A (ko) 2009-07-21 2010-01-08 Sas 장치 및 sas 장치의 phy의 다중화 기능 관리 방법

Country Status (6)

Country Link
US (1) US20110022736A1 (ko)
EP (1) EP2280351A1 (ko)
JP (1) JP5666153B2 (ko)
KR (1) KR20110009010A (ko)
CN (1) CN101963925A (ko)
TW (1) TW201104448A (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012074515A1 (en) * 2010-11-30 2012-06-07 Hewlett-Packard Development Company, L.P. Change message broadcast error detection
US8219719B1 (en) * 2011-02-07 2012-07-10 Lsi Corporation SAS controller with persistent port configuration
US9513837B2 (en) 2011-10-12 2016-12-06 Hewlett Packard Enterprise Development Lp Performance assist storage volumes
US8788736B2 (en) * 2011-12-27 2014-07-22 Lsi Corporation Methods and structure for communicating between a SATA host and a SATA target device through a SAS domain
US8626974B2 (en) 2012-01-19 2014-01-07 Lsi Corporation Methods and systems for reduced signal path count for interconnect signals within a storage system expander
US20130283264A1 (en) * 2012-04-20 2013-10-24 Lsi Corporation Method for selective replication of physical devices on a virtual self-configuring zoning expander
US9425912B2 (en) * 2013-05-15 2016-08-23 Avago Technologies General Ip (Singapore) Pte. Ltd. Lane-based multiplexing for physical links in serial attached small computer system interface architectures
US10108576B2 (en) * 2013-09-26 2018-10-23 Avago Technologies General Ip (Singapore) Pte. Ltd. Device abstracted zone management of serial attached small computer system interface topologies
WO2016014063A1 (en) * 2014-07-24 2016-01-28 Hewlett-Packard Development Company, L.P. Expander transmission data rate determination
TWI565255B (zh) * 2014-12-04 2017-01-01 英業達股份有限公司 訊號自動調整系統及方法
US10671549B2 (en) * 2015-03-25 2020-06-02 Toshiba Memory Corporation Memory system
WO2017132527A1 (en) * 2016-01-29 2017-08-03 Microsemi Storage Solutions (U.S.), Inc. Fractional multiplexing of serial attached small computer system interface links
US10171193B2 (en) 2016-01-29 2019-01-01 Microsemi Solutions (U.S.), Inc. Fractional multiplexing of serial attached small computer system interface links
US9959068B2 (en) * 2016-03-04 2018-05-01 Western Digital Technologies, Inc. Intelligent wide port phy usage
CN107291640B (zh) * 2017-06-30 2021-01-12 苏州浪潮智能科技有限公司 一种基于sas技术的数据传输的方法与装置
GB2578297B (en) * 2018-10-19 2021-07-14 Advanced Risc Mach Ltd Trusted intermediary realm
CN114615357B (zh) * 2022-03-10 2022-12-13 无锡众星微系统技术有限公司 一种sata物理链路建立方法和装置
CN116360675B (zh) * 2022-11-29 2023-10-24 无锡众星微系统技术有限公司 一种宽端口场景中的sas帧路由方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838681A (en) * 1996-01-24 1998-11-17 Bonomi; Flavio Dynamic allocation of port bandwidth in high speed packet-switched digital switching systems
JP3483464B2 (ja) * 1998-04-27 2004-01-06 キヤノン株式会社 画像処理システム及びその制御方法
CN1175350C (zh) * 2001-12-04 2004-11-10 上海复旦光华信息科技股份有限公司 主机性能监测及自动反应系统
US20070093124A1 (en) * 2005-10-20 2007-04-26 Lsi Logic Corporation Methods and structure for SAS expander optimization of SAS wide ports
US7689736B2 (en) * 2005-11-07 2010-03-30 Dot Hill Systems Corporation Method and apparatus for a storage controller to dynamically determine the usage of onboard I/O ports
JP4775846B2 (ja) * 2006-03-20 2011-09-21 株式会社日立製作所 物理リンクの割当てを制御するコンピュータシステム及び方法
JP5175483B2 (ja) * 2007-03-30 2013-04-03 株式会社日立製作所 ストレージ装置及びその制御方法

Also Published As

Publication number Publication date
CN101963925A (zh) 2011-02-02
TW201104448A (en) 2011-02-01
EP2280351A1 (en) 2011-02-02
JP2011028723A (ja) 2011-02-10
JP5666153B2 (ja) 2015-02-12
US20110022736A1 (en) 2011-01-27

Similar Documents

Publication Publication Date Title
JP5666153B2 (ja) シリアル・アタッチドscsiドメイン内の、多重化物理層の動的管理のための方法および装置
US20070093124A1 (en) Methods and structure for SAS expander optimization of SAS wide ports
EP2628092B1 (en) Device hardware agent
US9954727B2 (en) Automatic debug information collection
US8812913B2 (en) Method and apparatus for isolating storage devices to facilitate reliable communication
US7536584B2 (en) Fault-isolating SAS expander
US7738366B2 (en) Methods and structure for detecting SAS link errors with minimal impact on SAS initiator and link bandwidth
US10031736B2 (en) Automatic system software installation on boot
US10241868B2 (en) Server control method and server control device
US8510606B2 (en) Method and apparatus for SAS speed adjustment
US7565567B2 (en) Highly available computing platform
US20040228063A1 (en) IPMI dual-domain controller
US20060085595A1 (en) Identifying performance affecting causes in a data storage system
EP3349118B1 (en) Bus hang detection and find out
KR20140144520A (ko) 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법
EP2052326A2 (en) Fault-isolating sas expander
JP5736870B2 (ja) ストレージ装置、コントローラおよびアドレス管理方法
US9866443B1 (en) Server data port learning at data switch
US7453816B2 (en) Method and apparatus for automatic recovery from a failed node concurrent maintenance operation
WO2017041069A1 (en) Override subsystems for rapid recovery from serial-link errors
US11914725B2 (en) Operating system agnostic and secure bi-directional data handling
US9003068B2 (en) Service channel for connecting a host computer to peripheral devices
JP2023526174A (ja) ネットワーク・ファブリックにおける非応答ポートの隔離
US20240028723A1 (en) Suspicious workspace instantiation detection
JP2018077775A (ja) 制御装置および制御プログラム

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid