KR20020050300A - Peer to peer interconnect diagnostics - Google Patents

Peer to peer interconnect diagnostics Download PDF

Info

Publication number
KR20020050300A
KR20020050300A KR1020027006532A KR20027006532A KR20020050300A KR 20020050300 A KR20020050300 A KR 20020050300A KR 1020027006532 A KR1020027006532 A KR 1020027006532A KR 20027006532 A KR20027006532 A KR 20027006532A KR 20020050300 A KR20020050300 A KR 20020050300A
Authority
KR
South Korea
Prior art keywords
loop
error
peer
link
count
Prior art date
Application number
KR1020027006532A
Other languages
Korean (ko)
Other versions
KR100824109B1 (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 KR20020050300A publication Critical patent/KR20020050300A/en
Application granted granted Critical
Publication of KR100824109B1 publication Critical patent/KR100824109B1/en

Links

Classifications

    • 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit

Abstract

디스크 드라이브와 같은, 정보 처리 시스템(information handling system)은 루프의 다른 장치와 통신하는 제어기를 포함하고, 분산된(distributed) 또는 피어 투 피어(peer-to-peer) 루프 에러 진단을 수행한다. 루프의 한 가지 예는 파이버 채널 연결 루프(FC-AL)이다. 분산된 또는 피어 투 피어 에러 진단은, 에러 카운트가 증가하고 있는지 아닌지를 결정하기 위하여 상기 에러 카운트를 모니터함에 의해 바로 가까이에 업스트림(upstream) 장치와 바로 가까이에 업스트림 링크의 에러를 식별하고 진단한다. 증가하는 에러 카운트 또는 변경된 루프 구성은 에러의 출처(source of the error)가 업스트림 장치가 아님을 지시하고, 변경되지 않은 에러 카운트 및 변경되지 않은 루프 구성은 상기 에러의 출처가 상기 업스트림 링크임을 지시한다.An information handling system, such as a disk drive, includes a controller that communicates with other devices in a loop and performs distributed or peer-to-peer loop error diagnosis. One example of a loop is a fiber channel connection loop (FC-AL). Distributed or peer-to-peer error diagnostics identify and diagnose errors in the upstream link in the immediate vicinity of the upstream device by monitoring the error count to determine if the error count is increasing. Increasing error count or changed loop configuration indicates that the source of the error is not an upstream device, and unchanged error count and unchanged loop configuration indicates that the source of the error is the upstream link. .

Description

피어 투 피어 인터커넥트 진단법 {PEER TO PEER INTERCONNECT DIAGNOSTICS}Peer-to-Peer Interconnect Diagnostics {PEER TO PEER INTERCONNECT DIAGNOSTICS}

임의의 컴퓨터 시스템의 한 가지 핵심 구성요소는 데이타를 기억하기 위한 장치이다. 컴퓨터 시스템은 데이타가 기억될 수 있는, 다른 많은 장소들을 갖고 있다. 컴퓨터 시스템의 대량의 데이타를 저장하기 위한 하나의 공통적인 장소는 디스크 드라이브상이다. 디스크 드라이브의 가장 기초적인 부분들은, 회전되는 디스크, 상기 디스크 위의 다양한 위치로 변환기를 이동시키는 액츄에이터, 및 상기 디스크에 그리고 디스크로부터 데이타를 기록하고 판독하는데 사용되는 전기 회로이다. 상기 디스크 드라이브는 또한 데이타가 상기 디스크 표면으로부터 성공적으로 검색되고 기록될 수 있도록 데이타를 인코딩하기 위한 회로를 포함한다. 마이크로프로세서는, 상기 데이타를 요구하는(requesting) 컴퓨터에 재전달하고 요구하는 컴퓨터로부터 상기 디스크에 기억하기 위해 데이타를 얻을 뿐만 아니라 디스크 드라이브의 대부분의 동작을 제어한다.One key component of any computer system is a device for storing data. Computer systems have many other places where data can be stored. One common place for storing large amounts of data in computer systems is on disk drives. The most basic parts of a disc drive are the disc being rotated, the actuator moving the transducer to various positions on the disc, and the electrical circuitry used to write and read data to and from the disc. The disk drive also includes circuitry for encoding data so that data can be successfully retrieved and written from the disk surface. The microprocessor controls most of the operation of the disk drive as well as getting data back to the requesting computer and storing it on the disk from the requesting computer.

정보를 대표하는(representative) 데이타는 상기 기억 장치 디스크의 표면상에 기억된다. 디스크 드라이브 시스템은 기억 장치 디스크(storage disk)상의 트랙상에 기억된 정보를 판독하고 기록한다.Representative data is stored on the surface of the storage disk. The disk drive system reads and writes information stored on tracks on a storage disk.

파이버 채널(Fibre Channel; FC)은 ANSI에 의해 표준화된 직렬 데이타 전송 구조이다. 유명한 FC 표준은 파이버 채널 연결 루프(Fibre Channel Arbitrated Loop; FC-AL)이다. 이러한 표준은 분산된 데이지 체인 방식 루프(distributed daisy-chained loop)를 형성한다. FC는 상기 루프상에서 피어 투 피어 통신을 제공한다.Fiber Channel (FC) is a serial data transmission structure standardized by ANSI. The famous FC standard is the Fiber Channel Arbitrated Loop (FC-AL). These standards form a distributed daisy-chained loop. FC provides peer to peer communication over the loop.

FC-AL은 새로운 대용량 기억 장치 및 매우 높은 대역폭을 요구하는 다른 주변 장치에 대하여 설계되었다. FC-AL은 다른 상위 레벨 프로토콜에 부가하여 소형 컴퓨터 시스템 인터페이스(Small Computer System Interface; SCSI; 스카시) 명령어 집합(command set)을 지지한다. FC에 대해 이러한 상위 레벨 프로토콜을 사상(mapping)하는 것은 FC-4 계층으로서 언급된다.FC-AL is designed for new mass storage and other peripherals that require very high bandwidth. FC-AL supports the Small Computer System Interface (SCSI) command set in addition to other high level protocols. Mapping this higher level protocol to the FC is referred to as the FC-4 layer.

FC-AL에서, 원 장치(originating device)로부터 나온 정보는, 수신 장치(recipient device)에 도달하기 전에, 다수 개의 다른 장치 및 상기 장치들 사이의 링크를 통해 통과할 수 있다. 다중 링크상에서 정보를 통과시키는 것은 포인트 대 포인트 연결에 있어서 존재하는 한계 및 실패 링크(marginal and failing link)를 격리(isolating)하는 것에 복잡성을 부가하며, 한계 링크(marginal links)를 격리하는 데는 세 가지 종래 기술이 존재한다. 한계 FC 링크를 격리하는 한 가지 기술은 문제되는 링크를 격리하기 위해 링크 상태를 사용하는 것이다. 두 번째 접근법은 FC-4 사상의 에러 리포팅(error-reporting) 특성을 사용한다. 세 번째 접근법은 상기 두 방법을 결합한 것이다.In FC-AL, information from an originating device may pass through a number of other devices and a link between the devices before reaching a recipient device. Passing information over multiple links adds complexity to isolating marginal and failing links that exist in point-to-point connections, and there are three ways to isolate marginal links: There is a prior art. One technique for isolating limit FC links is to use link state to isolate the offending link. The second approach uses the error-reporting feature of FC-4 mapping. The third approach combines the two methods.

상기 세 가지 기술에 대한 근본적인 요구조건은 위상(topology)(즉, 연결 순서(connection order))에 대한 정보이다. 상기 위상에 대한 정보는, 루프 위치 맵 으로부터 FC-AL 형성 루프 초기화 동안 또는 내재 수단에 의해 얻을 수 있다. 내재 수단의 한 가지 예는 하드 주소(hard addresses)를 사용하는 디스크 드라이브의 외장이다.The fundamental requirement for the three techniques is information about topology (ie, connection order). The phase information can be obtained from the loop position map during FC-AL forming loop initialization or by implicit means. One example of an inherent means is the exterior of a disk drive using hard addresses.

한계 링크(marginal link)의 격리에 링크 상태를 사용하는 것에 관한 첫 번째 접근법은 상기 루프 상의 적어도 하나의 장치의 관리 애플리케이션(management application; MA)을 요구한다. 몇 개의 MA는 임의의 것의 실패(failure)를 보상하기 위해 구현될 수 있다. MA는 정상 루프 동작 중 주기적으로 상기 루프를 폴링(poll)하거나 아니면 사건을 보고(report)하는 링크 에러를 검출하는 장치를 요구할 수 있다. 폴링 모드(polling mode)에서, 모든 장치에 축적된 링크 상태는 한계 링크의 위치를 찾아내기 위해 사용된다. 상기 리포트 에러(report error)에서, 에러를 보고하는 모든 장치로부터 축적된 상태, 식별 모드(identification mode)는 한계 링크의 위치를 찾아내기 위해 사용된다.The first approach to using link state for isolation of marginal links requires a management application (MA) of at least one device on the loop. Several MAs can be implemented to compensate for the failure of anything. The MA may require an apparatus to detect link errors that periodically poll the loop or otherwise report an event during normal loop operation. In polling mode, the link state accumulated in all devices is used to locate the limit link. In the report error, the status, identification mode, accumulated from all devices reporting the error, is used to locate the limit link.

하나의 에러의 출처를 격리하는 것은 이러한 접근법으로 가능하나 보장되지는 않는다.Isolating the source of an error is possible with this approach but is not guaranteed.

링크 상태의 사용은 상기 접근법 FC-4를 독립적이게 만든다. 이것이 다수 개의 프로토콜 루프에서의 이점이다. 그러나, 링크 상태 사용의 결점은 상기 루프의 효율을 감소시키는 폴링 또는 리포트 에러 모드 오버헤드(overhead)이다.The use of link state makes the approach FC-4 independent. This is an advantage in multiple protocol loops. However, a drawback of using link state is polling or report error mode overhead, which reduces the efficiency of the loop.

두 번째 접근법은 FC-4 사상의 에러-리포팅 특성을 사용한다. 루프상의 에러의 출처를 격리하기 위해 FC-4 보고된 에러를 사용하는 것은 상기 에러의 로그(log)를 유지하는 것을 요구한다. 상기 출처는 어떤 장치가 에러를 보고하고 있고 어떤 장치가 아닌지를 결정하기 위해 상기 로그를 분석함에 의해 위치가 밝혀진다.The second approach uses the error-reporting nature of FC-4 mapping. Using the FC-4 reported error to isolate the source of the error on the loop requires keeping a log of the error. The source is located by analyzing the log to determine which device is reporting an error and which device is not.

루프상의 에러의 출처를 격리하기 위해 FC-4 보고된 에러들을 사용함는 것은 링크 에러 히스토리(history)를 유지하고 상기 루프를 폴링하기 위한 MA에 대한 요구조건을 제거한다. 상기 루프를 폴링하지 않는 것은 상기 루프상의 오버헤드를 감소시킨다. 부가적으로, 에러들은 그것들이 발생할 때 단지 보고된다.Using FC-4 reported errors to isolate the source of the error on the loop removes the requirement for the MA to poll the loop and maintain the link error history. Not polling the loop reduces overhead on the loop. In addition, errors are only reported when they occur.

루프상의 에러의 출처를 격리하기 위해 FC-4 보고된 에러를 사용하는 것은 하나의 마스터(master) 장치가 모든 보고된 에러를 받는 구현예에서 가장 잘 수행한다. 상기 구현예 중 하나는 단일의 이니시에이터(initiator) SCSI 기억 장치 서브시스템(initiator SCSI storage subsystem)이다.Using FC-4 reported errors to isolate the source of errors on the loop is best performed in an implementation where one master device receives all reported errors. One such implementation is a single initiator SCSI storage subsystem.

단지 FC-4 에러 상태에 의존하는 데에는 적어도 세 가지 결점이 존재한다. 하나의 에러 발생은 그 출처를 격리하기에 충분한 정보를 제공하지 않는다. 더욱이, 상태는 상기 에러의 출처를 격리하도록 히스토리를 형성하기 위해 축적되어야 한다. 마지막으로, 다수 개의 프로토콜 또는 FC-4 상태를 받는 다수 개의 장치를 지지하는 루프에서, 상기 에러들이 공통 수신 장치(common destination device)에 보고되지 않기 때문에 구현이 어려워진다.There are at least three drawbacks to relying solely on the FC-4 error condition. An error occurrence does not provide enough information to isolate the source. Moreover, states must accumulate to form a history to isolate the source of the error. Finally, in a loop that supports multiple devices receiving multiple protocols or FC-4 status, implementation becomes difficult because the errors are not reported to a common destination device.

한계 FC 링크를 격리하는 세 번째 기술은 상기 문제의 링크를 격리하기 위해 링크 상태와 FC-4 에러 리포팅을 사용한다. 폴링이 사용되지 않고 하나의 에러 출처 격리가 가능하다.The third technique of isolating limit FC links uses link status and FC-4 error reporting to isolate the link in question. Polling is not used and one error source isolation is possible.

임의의 링크 상태 사용과 관련하여, MA는 모든 장치의 에러 카운트를 유지하기 위해 필요하다. FC-4 에러가 보고되거나 또는 상기 MA가 링크 에러를 검출할 때, 상기 MA는 가능한 모든 에러 출처를 결정하기 위해 모든 장치로부터 축적된 링크 상태를 판독한다.Regarding the use of any link state, the MA is needed to maintain the error count of all devices. When an FC-4 error is reported or the MA detects a link error, the MA reads the accumulated link status from all devices to determine all possible error sources.

다수 개의 FC-4를 구비한 루프상 구현의 단점은 상기 MA가 모든 FC-4들을 지원해야 한다는 것이다.The disadvantage of an on-loop implementation with multiple FC-4s is that the MA must support all FC-4s.

도 1을 참조하면, SCSI 파이버 채널 프로토콜(FCP)로 구성된 루프(100)의 다이어그램이 나타나 있다. 상기 루프는 SCSI 이니시에이터 장치(110)를 포함하고, 상기 이니시에이터 장치는 SCSI 목표 장치(120, 130, 및 140)와 통신하면서 루프 마스터(loop master)로서 이용된다. 장치(120)와 장치(130) 사이의 링크 또는 인터커넥트(150)는 한계 및/또는 실패이다.Referring to FIG. 1, a diagram of a loop 100 composed of SCSI Fiber Channel Protocol (FCP) is shown. The loop includes a SCSI initiator device 110, which is used as a loop master in communication with the SCSI target devices 120, 130, and 140. The link or interconnect 150 between device 120 and device 130 is limited and / or failed.

FC-4에 의해 제공된 에러 검출 및 리포팅은 이용가능할 때 한계 링크의 격리를 위해 사용될 수 있다.The error detection and reporting provided by FC-4 can be used for isolation of the limit link when available.

한계 링크(150)로 인해, 루프 마스터(110)는 명령 시간 경과(command time-outs)와 데이타 에러를 경험할 것이다. 상기 명령 시간 경과는 명령, 전송 준비(transfer ready), 또는 응답(response) 프레임(frames)동안 에러의 결과이다. 이러한 프레임들은 그것들이 에러 상태로 수신될 때 버려진다. 상기 시간 경과가 목표, 명령에 대해 버려진 프레임들로부터, 또는 목표, 전송 준비 및 응답으로부터 나온 것이기 때문에, 불량 링크의 위치는 결정될 수 없다.Due to limit link 150, loop master 110 will experience command time-outs and data errors. The command timeout is the result of an error during a command, transfer ready, or response frames. These frames are discarded when they are received in error. Since the time elapsed is from frames discarded for the target, command, or from the target, transmission ready and response, the location of the bad link cannot be determined.

데이타 기록(write data) 동작 중, 장치(120)는 루프 마스터(110)로부터 데이타상의 에러를 경험하지 않는다. 그러나, 장치(120)와 장치(130)는 한계 링크에 의해 유발된 에러를 검출할 것이다. 데이타 기록상의 에러는 FCP 응답에 보고된다.During a write data operation, the device 120 does not experience errors on the data from the loop master 110. However, device 120 and device 130 will detect errors caused by the limit link. Errors in the data record are reported in the FCP response.

데이타 판독 동작 중, 루프 마스터(110)는 장치(130)와 장치(140)로부터 데이타 판독상의 에러를 검출하지 않는다.During a data read operation, loop master 110 does not detect errors in data reads from device 130 and device 140.

필요한 것은 루프의 위상에 관한 정보를 요구하지 않는 루프 에러 진단법이고, 그것은 루프 오버헤드 트래픽(loop overhead traffic)을 감소시키며 진단법의 효율을 증가시킨다.What is needed is a loop error diagnostic that does not require information about the phase of the loop, which reduces loop overhead traffic and increases the efficiency of the diagnostic.

본 발명은 루프 진단 분야에 관한 것이다. 더욱 상세히는, 본 발명은 피어 투 피어(peer-to-peer) 인터페이스 진단에 관한 것이다.The present invention relates to the field of loop diagnostics. More particularly, the present invention relates to peer-to-peer interface diagnostics.

도 1은 SCSI FC 채널 프로토콜 장치들로 구성된 종래의 루프에 관한 블록 다이어그램이다.1 is a block diagram of a conventional loop comprised of SCSI FC channel protocol devices.

도 2는 복수 개의 디스크 스택(disk stack) 및 디스크들의 표면에 그리고 표면으로부터 변환기를 로딩 및 언로딩하기 위한 램프(ramp) 어셈블리를 구비한 디스크 드라이브의 분해도이다.2 is an exploded view of a disk drive having a plurality of disk stacks and a ramp assembly for loading and unloading transducers on and from the surface of the disks.

도 3은 루프 에러 진단 방법의 프로세스 다이어그램이다.3 is a process diagram of a loop error diagnosis method.

도 4는 루프 에러 진단 방법의 프로세스 다이어그램이다.4 is a process diagram of a loop error diagnosis method.

도 5는 분산된 데이지 체인 방식 피어 투 피어 루프의 장치상에 국소적으로기록된 에러 조건을 식별하는 방법에 관한 프로세스 다이어그램이다.5 is a process diagram of a method of identifying locally written error conditions on a device in a distributed daisy chained peer to peer loop.

도 6은 에러를 결정, 진단, 및 해결하는 방법에 관한 프로세스 다이어그램이다.6 is a process diagram of a method for determining, diagnosing, and resolving errors.

도 7은 업스트림 장치 및/또는 업스트림 링크의 에러를 결정하는, 루프의 피어 장치에 관한 블록 다이어그램이다.7 is a block diagram of a peer device in a loop that determines errors in upstream devices and / or upstream links.

도 8은 피어 장치의 루프 에러 격리 관리 애플리케이션에 관한 블록 다이어그램이다.8 is a block diagram of a loop error isolation management application of a peer device.

도 9는 컴퓨터 시스템에 관한 개략도이다.9 is a schematic diagram of a computer system.

에러 출처 격리에 대한 피어 투 피어 접근법에서, 관리 애플리케이션(MA)기능은 루프상의 모든 장치에 분산되어 있다. 링크 상태(link status)는 에러 출처 격리에 사용된다. 더욱 상세히, 각각의 장치는 동일성 및 그것의 입력, 업스트림 장치(upstream device)에 연결된 장치의 링크 에러 상태를 유지한다. 장치가 그것의 입력상의 링크 에러를 검출할 때, 상기 장치는 링크 에러 카운트를 위해 상기 업스트림 장치에 대한 요구를 일으킨다.In a peer-to-peer approach to error source isolation, management application (MA) functionality is distributed across all devices in the loop. Link status is used for error source isolation. In more detail, each device maintains the identity and link error status of the device connected to its input, upstream device. When a device detects a link error on its input, the device makes a request to the upstream device for a link error count.

상기 업스트림 장치에 대한 링크 상태가, 장치가 또한 링크 에러를 검출하고 있음을 지시할 때, 상기 에러의 출처는 상기 루프상의 링크와 다르다. 만약 상기 업스트림 장치로부터의 링크 상태가 그것이 에러를 검출하고 있음을 지시하지 않는다면, 상기 에러의 출처는 상기 업스트림 장치와 상기 장치 그 자체 사이의 인터커넥트일 것이다. 그 다음에 상기 장치는 상기 인터커넥트가 한계(marginal)에 있음을 확인하기 위해 상기 업스트림 장치와 그 자체 사이 진단 전달(diagnostic transfers)을 일으킨다.When the link status for the upstream device indicates that the device is also detecting a link error, the source of the error is different from the link on the loop. If the link status from the upstream device does not indicate that it is detecting an error, the source of the error will be an interconnect between the upstream device and the device itself. The device then causes diagnostic transfers between the upstream device and itself to confirm that the interconnect is at marginal.

루프 에러 진단법에 관한 본 발명은 루프의 완전한 위상에 대한 정보를 요구하지 않는다는 이점을 갖는다. 본 발명은 또한 에러 격리(error isolation)가 상기 루프의 각각의 장치에 분산되어 있기 때문에 루프 오버헤드 트래픽(loop overhead traffic)을 감소시킨다. 더욱이 문제되는 에러의 출처와 가장 가까운 장치가 상기 진단법을 수행하기 때문에 루프 진단법의 효율성이 증가된다. 부가하여, 상기 장치가 유휴(idle)일 때 각 장치의 진단 기능이 수행가능하게 되므로 본 발명은 루프상의 각 장치의 성능 저하를 최소화하고, 그에 의하여, 상기 진단법이 더 높은 우선순위 작업동안 상기 장치의 성능에 영향을 미치는 것을 방지한다.The present invention regarding loop error diagnostics has the advantage that it does not require information about the complete phase of the loop. The present invention also reduces loop overhead traffic because error isolation is distributed to each device in the loop. Moreover, the efficiency of the loop diagnostics is increased because the device closest to the source of the error in question performs the diagnostics. In addition, the present invention minimizes performance degradation of each device on a loop since the diagnostic function of each device can be performed when the device is idle, whereby the diagnostic method allows the device to run during higher priority tasks. To avoid affecting its performance.

바람직한 실시예에 대한 이하의 상세한 설명에서, 이에 관한 부분을 형성하는 첨부된 도면을 참조하여, 본 발명이 구현될 수 있는 특정 실시예를 예시하는 방식으로 표현된다. 본 발명의 범위를 벗어나지 않는 한, 다른 실시예가 사용될 수 있고 구조적인 변경이 만들어질 수 있다.In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings which form a part hereby, in a manner exemplifying the specific embodiments in which the invention may be implemented. Other embodiments may be used and structural changes may be made without departing from the scope of the present invention.

본 출원서에 기재된 본 발명은 회전 구동(rotary actuation) 아니면 선형 구동(linear actuation)을 갖는 디스크 드라이브의 모든 기계적인 구성에 유용하다. 부가하여, 본 발명은 또한 하드 디스크 드라이브, 집 드라이브(zip drive), 플로피 디스크 드라이브 및 임의의 다른 드라이브 유형을 포함한, 표면으로부터 변환기(transducer)를 언로딩(unloading)하고 변환기를 파킹(parking)하는 것이 요구될 수 있는 모든 유형의 디스크 드라이브에 유용하다. 도 2는 회전식 액츄에이터(rotary actuator)를 갖는 디스크 드라이브(200)의 한 가지 유형에 관한 분해도이다. 상기 디스크 드라이브(200)는 하우징 또는 베이스(212)와 커버(214)를 포함한다. 상기 베이스(212)와 커버(214)는 디스크 외장을 형성한다. 액츄에이터 어셈블리(220)는 액츄에이터 축(actuator shaft)(218)상에 상기 베이스(212)에 회전가능하게 부착되어 있다. 상기 액츄에이터 어셈블리(220)는 복수 개의 암(223)을 갖는 빗 모양의(comb-like) 구조(222)를 포함한다. 로드 빔(load beams) 또는 로드 스프링(load springs)(224)들이 상기 빗 구조(222)상의 분리된 암(223)들에 부착된다. 로드 빔 또는 로드 스프링들은 또한 서스펜션(suspensions)으로서 언급된다. 각각의 로드 스프링(224)의 말단에 부착된 것은 자기 변환기(magnetic transducer)(250)를 수반하는 슬라이더(226)이다. 상기 변환기(250)를 구비한 상기 슬라이더(226)는 주로 헤드라고 불리우는 것을 형성한다. 많은 슬라이더들이 하나의 변환기(250)을 갖는다는 점이 주목되어야 하며, 이는 상기 도면들에 나타나 있는 바와 같다. 본 발명이 하나 이상의 변환기를 갖는 슬라이더들, 예를 들어 하나의 변환기(250)가 일반적으로 판독에 사용되고 또다른 변환기가 일반적으로 기록에 사용되는 MR 또는 자기 저항(magneto resistive) 헤드로서 언급되는 것과 같은 것에 마찬가지로 적용가능함을 또한 주목해야 한다. 보이스 코일(voice coil)(228)은 상기 로드 스프링(224) 및 상기 슬라이더(226)의 반대편, 상기 액츄에이터 암 어셈블리(220)의 끝에 있다.The invention described in this application is useful for all mechanical configurations of disc drives with either rotary actuation or linear actuation. In addition, the present invention also provides for unloading transducers from the surface and parking transducers, including hard disk drives, zip drives, floppy disk drives and any other drive type. This is useful for all types of disk drives that may be required. 2 is an exploded view of one type of disk drive 200 having a rotary actuator. The disk drive 200 includes a housing or base 212 and a cover 214. The base 212 and the cover 214 form a disk enclosure. An actuator assembly 220 is rotatably attached to the base 212 on an actuator shaft 218. The actuator assembly 220 includes a comb-like structure 222 having a plurality of arms 223. Load beams or load springs 224 are attached to the separate arms 223 on the comb structure 222. Load beams or load springs are also referred to as suspensions. Attached to the distal end of each load spring 224 is a slider 226 carrying a magnetic transducer 250. The slider 226 with the transducer 250 forms what is often called a head. It should be noted that many sliders have one transducer 250, as shown in the figures. As the present invention refers to sliders having one or more transducers, for example one transducer 250 is generally referred to as an MR or magneto resistive head for reading and another transducer is generally used for writing. It should also be noted that it is equally applicable. A voice coil 228 is opposite the rod spring 224 and the slider 226, at the end of the actuator arm assembly 220.

제 1 자석(230) 및 제 2 자석(231)은 상기 베이스(212) 내부에 부착된다. 도 2에 도시되어 있듯이, 상기 제 2 자석(231)은 상기 커버(214)와 연결되어 있다. 상기 제 1 자석 및 제 2 자석(230, 231)과 상기 보이스 코일(228)은 보이스 코일모터의 핵심 구성요소이고, 상기 보이스 코일 모터는 상기 액츄에이터 축(218)에 대해 상기 액츄에이터 어셈블리를 회전시키기 위해 상기 액츄에이터 어셈블리(220)에 힘을 인가한다. 또한 스핀들 모터(spindle motor)가 상기 베이스(212)에 설치된다. 상기 스핀들 모터는 스핀들 허브(spindle hub)(233)라 불리우는 회전 부분을 포함한다. 본 특정한 디스크 드라이브에서, 상기 스핀들 모터는 상기 허브내에 있다. 도 2에서, 많은 개수의 디스크(234)는 상기 스핀들 허브(233)에 부착된다. 다른 디스크 드라이브에서, 하나의 디스크 또는 다른 개수의 디스크들은 상기 허브에 부착될 수 있다. 본 명세서에 기재된 본 발명은 하나의 디스크를 갖는 디스크 드라이브와 마찬가지로 복수 개의 디스크를 갖는 디스크 드라이브에 똑같이 적용가능하다. 본 명세서에 기재된 본 발명은, 상기 허브(233)내에 있거나 상기 허브 아래에 있는 스핀들 모터를 구비한 디스크 드라이브에 또한 똑같이 적용가능하다.The first magnet 230 and the second magnet 231 are attached to the base 212. As shown in FIG. 2, the second magnet 231 is connected to the cover 214. The first and second magnets 230, 231 and the voice coil 228 are key components of a voice coil motor, and the voice coil motor is adapted to rotate the actuator assembly about the actuator shaft 218. Force is applied to the actuator assembly 220. In addition, a spindle motor is installed in the base 212. The spindle motor includes a rotating portion called a spindle hub 233. In this particular disk drive, the spindle motor is in the hub. In FIG. 2, a large number of disks 234 are attached to the spindle hub 233. In other disk drives, one disk or another number of disks may be attached to the hub. The invention described herein is equally applicable to a disk drive having a plurality of disks as well as a disk drive having one disk. The invention described herein is equally applicable to a disk drive with a spindle motor in or under the hub 233.

다음으로 도 3을 참조하면, 루프 에러 진단 방법(method of loop error diagnostics)(300)의 프로세스 다이어그램이 나타나 있다. 방법(300)은 루프의 업스트림(upstream) 장치의 동일성(identity)을 결정하는 단계(310)를 포함한다. 그 후에, 방법(300)은 상기 동일성을 기억하는 단계(320)를 포함한다. 하나의 실시예에서, 상기 결정 단계(310)와 상기 기억 단계(320)는 장치의 초기 설정(initialization) 동안 수행된다. 또 하나의 실시예에서는, 상기 루프의 업스트림 장치의 동일성은 루프 맵(loop map)으로부터 검색된다. 뒤이어서, 방법(300)은 상기 루프의 상기 업스트림 장치로부터 링크 에러 카운트(link error counts)를 요구하는 단계(330)를 포함한다. 방법(300)은 또한 상기 링크 에러 카운트를 국소적으로(locally) 기억하는 단계(340)를 포함한다. 뒤이어서, 방법(300)은 에러에 대해 상기 루프를 모니터하는 단계(350)를 포함한다. 그 후에, 방법(300)은 상기 장치의 입력상에 존재하는 에러를 결정하는 단계(360)를 포함한다. 에러가 존재하지 않는다면, 상기 방법은 단계(350)에서 계속될 것이다. 만약 에러가 존재한다면, 그 다음에 상기 루프의 상기 업스트림 장치로부터 나온 현재 링크 에러 카운트(current link error count)가 요구된다(370). 상기 방법은 그 다음에 상기 루프의 구성이 변경되었는지를 결정한다. 만약 상기 루프의 구성이 변경되었다면, 그 다음에 상기 방법은 단계(310)로 이어지고, 루프의 구성이 변경되지 않는다면, 상기 방법은 상기 현재 링크 에러 카운트가 상기 기억된 에러 카운트와 비교하여 변경되었는지를 계속하여 결정한다(385). 만약 상기 현재 링크 에러 카운트가 상기 기억된 에러 카운트와 비교하여 변경되었다면, 상기 루프의 다른 곳에 에러가 있음을 지시하고, 상기 방법은 링크 에러 카운트를 국소적으로 기억하는 단계(340)로 이어진다. 만약 상기 현재 링크 에러 카운트가 기억된 에러 카운트와 비교하여 변경되지 않았다면, 상기 업스트림 장치와 상기 에러를 검출하는 장치 사이의 링크상에 에러가 발생하였고 상기 방법은 테스트 링크(390)에 계속되고 상기 에러는 보고된다(395).Referring next to FIG. 3, a process diagram of a method of loop error diagnostics 300 is shown. The method 300 includes a step 310 of determining the identity of the upstream device of the loop. Thereafter, the method 300 includes storing 320 the identity. In one embodiment, the determining step 310 and the storing step 320 are performed during initialization of the device. In another embodiment, the identity of upstream devices in the loop is retrieved from a loop map. Subsequently, the method 300 includes a step 330 of requesting link error counts from the upstream device of the loop. The method 300 also includes a step 340 of locally storing the link error count. Subsequently, the method 300 includes monitoring 350 the loop for errors. Thereafter, the method 300 includes a step 360 of determining an error present on the input of the device. If no error exists, the method will continue at 350. If an error exists, then a current link error count from the upstream device of the loop is required (370). The method then determines if the configuration of the loop has changed. If the configuration of the loop has changed, then the method proceeds to step 310, and if the configuration of the loop does not change, the method determines whether the current link error count has changed compared to the stored error count. The determination is then continued (385). If the current link error count has changed compared to the stored error count, it indicates that there is an error elsewhere in the loop, and the method continues with locally storing the link error count (340). If the current link error count has not changed compared to the stored error count, an error has occurred on the link between the upstream device and the device that detects the error and the method continues on a test link 390 and the error Is reported (395).

루프 에러 진단법에 관한 본 발명은 루프의 완전한 위상(topology)에 대한 정보를 요구하지 않으며, 에러 격리(error isolation)가 상기 루프의 각각의 장치에 분산되어 있기 때문에 루프 오버헤드 트래픽(loop overhead traffic)을 감소시킨다. 더욱이 문제되는 에러의 출처와 가장 가까운 장치가 상기 진단법을 수행하기 때문에 루프 진단법의 효율성이 증가된다. 부가하여, 상기 장치가 유휴(idle)일 때 각 장치의 진단 기능이 수행가능하게 되므로 본 발명은 루프상의 각 장치의 성능 저하를 최소화하고, 그에 의하여, 상기 진단법이 더 높은 우선순위 작업동안 상기 장치의 성능에 영향을 미치는 것을 방지한다.The present invention regarding loop error diagnostics does not require information about the complete topology of the loop and loop overhead traffic because error isolation is distributed to each device in the loop. Decreases. Moreover, the efficiency of the loop diagnostics is increased because the device closest to the source of the error in question performs the diagnostics. In addition, the present invention minimizes performance degradation of each device on a loop since the diagnostic function of each device can be performed when the device is idle, whereby the diagnostic method allows the device to run during higher priority tasks. To avoid affecting its performance.

다음에 도 4의 참조하여, 루프 에러 진단 방법(400)의 프로세스 다이어그램이 나타난다. 방법(400)은 분산된 데이지 체인 방식 피어 투 피어 루프(distributed daisy-chained peer-to-peer loop)의 장치상에 국소적으로 기록된 링크 에러 조건을 식별하는 단계(410)를 포함한다. 상기 식별 단계는 아래의 도 5와 관련하여 더 자세히 설명된다. 하나의 실시예에서, 상기 분산된 데이지 체인 방식 피어 투 피어 루프는 파이버 채널 연결 루프(Fibre Channel arbitrated loop; FC-AL)이다. 또 다른 실시예에서, 상기 장치는 도 2의 디스크 드라이브(200)와 같은 디스크 드라이브이다.Referring next to FIG. 4, a process diagram of a loop error diagnostic method 400 is shown. The method 400 includes a step 410 of identifying locally logged link error conditions on devices in a distributed daisy-chained peer-to-peer loop. The identification step is described in more detail with respect to FIG. 5 below. In one embodiment, the distributed daisy chained peer to peer loop is a Fiber Channel arbitrated loop (FC-AL). In another embodiment, the device is a disk drive, such as disk drive 200 of FIG.

파이버 채널(FC) 장치는 상기 장치가 받는 에러를 검출하고 카운트한다. 상기 카운트들은 링크 에러 상태 블럭(Link Error Status Block; LESB)에 기억된다. 장치에서 생길 수 있는 에러는 링크 실패(예를 들어, 특정된 시간 이상 시간동안 단어 동기화(word synchronization)의 손실), 동기화 손실(예를 들어, 특정된 시간 이하 시간동안의 단어 동기화 손실 및 특정된 개수 이상 단어의 무효인(invalid) 전송), 수행중인 불일치 에러(running disparity error) 또는 무효인 문자가 검출되는 무효 전송 단어, 및/또는 무효인 순환 중복 검사(cyclic redundancy check)를 포함한다.Fiber Channel (FC) devices detect and count errors that the device receives. The counts are stored in a Link Error Status Block (LESB). Errors that may occur at the device include link failure (e.g. loss of word synchronization for more than a specified time), loss of synchronization (e.g. loss of word synchronization for a specified time or less) Invalid transmission of more than a number of words, a running disparity error or an invalid transmission word for which invalid characters are detected, and / or an invalid cyclic redundancy check.

상기 LESB에서 임의의 필드(field)가 증가하고 있다면, 상기 장치는 에러를 검출하고 있는 것이다.If any field is increasing in the LESB, the device is detecting an error.

루프상 장치들로부터 상기 링크 상태를 얻기 위해 당업자에게 주지된 몇 가지 방법들이 존재한다. 한 가지 방법은 판독 링크 상태(read link status; RLS) 연장된 링크 서비스(extended link service; ELS)를 이용하는 것이고, 그것은 상기 LESB를 주소 지정된(addressed) 장치에 반환한다. RLS ELS에 대한 한 가지 실시예에서, 장치는, 상기 RLS를 받는 상기 장치에 대해 상기 LESB를 허용하는 RLS의 실행을 지원한다. 루프상의 장치 장치들(device devices)로부터 상기 링크 상태를 얻는 것에 관한 또하나의 실시예는 소형 컴퓨터 시스템 인터페이스(Small Computer System Interface; SCSI; 스카시) 로그 감지 명령(log sense command)의 사용을 통한 것이고, 그것에 디스크 드라이브는 로그 페이지(log page)의 상기 LESB를 반환한다. 이러한 방법은 애플리케이션(applications)에 FC ELS 정보를 전달하지 않는 장치 드라이버를 구비한 시스템을 위한 것이다. 루프상의 장치 장치들로부터 상기 링크 상태를 얻는 것에 관한 또 하나의 실시예는 인클로저 서비스 인터페이스(enclosure services interface; ESI)의 사용을 통한 것이고, 그것에서 디스크 드라이브는SFF 위원회 산업 그룹 사양(SFF Committee industry group specification)(SFF) 8067 형성된 인클로저 이니시에이팅된 ESI를 지지한다. 하나의 기능는 인클로저 프로세서(enclosure processor)에 LESB, 루프 초기화 카운트, 및 양 장치에 대한 현재 상태를 제공한다. 상기 인클로저 프로세서는 루프 관리(loop management)를 위해 이러한 정보를 사용하거나 그것을 또다른 관리 엔티티(management entity)에 제공할 수 있다. 루프상의 장치 장치들로부터 상기 링크 상태를 얻는 것에 관한 또 하나의 실시예는 리포트 장치 상태(report device status; RPS) ELS의 사용을 통해서이고, 그것에서 상기 RLS와 관련하여 LESB는 장치, 루프 초기화 카운트, 및 상기 장치의 현재 상태를 요구했다.There are several methods known to those skilled in the art for obtaining the link state from the devices on the loop. One way is to use read link status (RLS) extended link service (ELS), which returns the LESB to an addressed device. In one embodiment for RLS ELS, the device supports the execution of RLS to allow the LESB for the device receiving the RLS. Another embodiment of obtaining the link state from device devices on a loop is through the use of a Small Computer System Interface (SCSI) log sense command. On that, the disk drive returns the LESB of the log page. This method is for systems with device drivers that do not convey FC ELS information to applications. Another embodiment relates to obtaining the link status from device devices on a loop enclosure services interface; will through the use of (enclosure services interface ESI), in that the disk drive is S FF Board Industry Group specification (SFF Committee industry group specification (SFF) 8067 supports formed enclosure-initiated ESI. One function provides the enclosure processor with the LESB, loop initialization count, and current status for both devices. The enclosure processor may use this information for loop management or provide it to another management entity. Another embodiment of obtaining the link status from device devices on a loop is through the use of a report device status (RPS) ELS, in which the LESB is associated with the RLS device, loop initialization count. , And the current state of the device.

루프상의 장치 장치들로부터 상기 링크를 얻는 것에 대한 이러한 방법들 각각의 공통적인 구성요소는 LESB이다.A common component of each of these methods for obtaining the link from device devices on a loop is LESB.

방법(400)은 또한 에러를 진단하는 단계(420)를 포함한다. 루프 에러 진단 방법(400)은 루프의 완전한 위상에 대한 정보를 요구하지 않으며, 에러 격리가 상기 루프의 각각의 장치에 분산되어 있기 때문에 루프 오버헤드 트래픽을 감소시킨다. 더욱이 문제되는 에러의 출처와 가장 가까운 장치가 상기 진단법을 수행하기 때문에 루프 진단법의 효율성이 증가된다. 부가하여, 상기 장치가 유휴일 때 각 장치의 진단 기능이 수행가능하게 되므로 방법(400)은 루프상의 각 장치의 성능 저하를 최소화하고, 그에 의하여, 상기 진단법이 더 높은 우선순위 작업동안 상기 장치의 성능에 영향을 미치는 것을 방지한다.The method 400 also includes a step 420 of diagnosing the error. The loop error diagnostic method 400 does not require information about the complete phase of the loop and reduces loop overhead traffic because error isolation is distributed to each device in the loop. Moreover, the efficiency of the loop diagnostics is increased because the device closest to the source of the error in question performs the diagnostics. In addition, since the diagnostic function of each device is enabled when the device is idle, the method 400 minimizes the degradation of the performance of each device on the loop, whereby the diagnostic method of the device during the higher priority operation. Prevents performance impact.

다음에 도 5를 참조하면, 도 4의 단계 410에서와 같이, 분산된 데이지 체인 방식 피어 투 피어 루프라는 점에서 다른, 장치상에 국소적으로 기록된 에러 조건을 식별하는 방법(500)에 관한 프로세스 다이어그램이 나타나 있다.Referring next to FIG. 5, as in step 410 of FIG. 4, a method 500 for identifying locally recorded error conditions on a device that differs in that it is a distributed daisy chained peer to peer loop. The process diagram is shown.

방법(500)은 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 바로 가까이에(immediately) 업스트림 장치에 대한 로컬 소스(local source)로부터 현재 에러 상태 카운트를 받는 단계(510)를 포함한다. 방법(500)은 또한 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 바로 가까이에 업스트림 장치에 대한 로컬 소스로부터 이전의 에러 상태를 받는 단계(520)를 포함한다. 하나의 실시예에서, 상기 이전의 에러 상태를 받는 단계(520)는 상기 장치의 초기화 동안 수행된다. 다른 실시예에서, 상기 이전의 에러 상태를 받는 단계(520)는 상기 현재 에러 상태를 받는 단계(510) 이전, 동안 및/또는 이후에 수행된다. 그 후에, 방법(500)은 현재 에러 상태 카운트를 이전의 에러 상태 카운트와 비교하는 단계(530)를 포함한다. 뒤이어서, 방법(500)은 상기 비교가 에러를 지시하는 것을 결정하는 단계(540)를 포함한다.The method 500 includes a step 510 of receiving a current error status count from a local source for an upstream device immediately near the distributed daisy chained peer to peer loop. The method 500 also includes a step 520 of receiving a previous error condition from a local source for the upstream device in the immediate vicinity of the distributed daisy chained peer to peer loop. In one embodiment, step 520 of receiving the previous error condition is performed during initialization of the device. In another embodiment, the step 520 of receiving a previous error state is performed before, during and / or after step 510 of receiving the current error state. Thereafter, the method 500 includes a step 530 of comparing the current error state count to a previous error state count. Subsequently, the method 500 includes a step 540 of determining that the comparison indicates an error.

다음에 도 6을 참조하면, 에러를 결정, 진단, 및 해결하는 방법(600)의 프로세스 다이어그램이 나타나 있다. 방법(600)에서, 도 5의 결정 단계(540)는 현재 에러 상태 카운트가 이전의 에러 상태 카운트와 다르다는 것을 결정한다(610). 뒤이어서, 방법(600)에서, 도 4의 진단 단계(420)는 분산된 데이지 체인 방식 피어 투 피어 루프에서 상기 장치와 상기 바로 가까이에 업스트림 장치 사이의 링크를 테스트하는 단계(620)를 포함한다. 테스트 단계(620)에 관한 하나의 실시예에서, 테스트 단계는 상기 분산된 데이지 체인 방식 피어 투 피어 루프를 통해 상기 장치로부터 상기 장치로 상기 루프 주위의 데이타를 전송하는 단계와 상기 데이타를 그것이 전송된 상기 장치가 받았는지 아닌지를 결정하는 단계를 포함한다.Referring next to FIG. 6, a process diagram of a method 600 for determining, diagnosing, and resolving errors is shown. In method 600, decision step 540 of FIG. 5 determines that the current error state count is different from the previous error state count (610). Subsequently, in the method 600, the diagnostic step 420 of FIG. 4 includes testing 620 a link between the device and an upstream device in the immediate vicinity in a distributed daisy chained peer to peer loop. In one embodiment with respect to test step 620, the test step includes transmitting data around the loop from the device to the device via the distributed daisy chained peer-to-peer loop and sending the data to it. Determining whether the device has received or not.

에러가 상기 업스트림 링크에서 결정되었다면, 상기 에러가 상기 분산된 데이지 체인 방식 피어 투 피어 루프에서 상기 장치와 상기 바로 가까이에 업스트림 장치 사이의 링크에 존재하는 것으로 추정됨을 지시하면서 에러 리포트(errorreport)가 발생한다. 다른 실시예에서, 상기 발생 단계(630)은 상기 테스트 단계(620) 이전, 동안, 및/또는 이후에 수행된다.If an error was determined on the upstream link, an error report is generated indicating that the error is presumed to be present in the link between the device and the upstream device in the immediate vicinity in the distributed daisy chained peer to peer loop. do. In other embodiments, the generating step 630 is performed before, during, and / or after the testing step 620.

도 7은 루프의 피어 장치(peer apparatus)(700)의 블록 다이어그램이다.7 is a block diagram of a peer apparatus 700 in a loop.

상기 장치(700)는 루프(720)와 동작가능하게 접속된 통신 입력/출력 구성요소(communication input/output component)(710)를 포함한다. 상기 장치는 상기 업스트림 장치 및/또는 상기 업스트림 링크에서의 에러를 결정한다. 하나의 실시예에서, 상기 루프(720)는 FC-AL이다. 상기 루프(720)의 나머지 부분은 상기 피어 장치(700)로부터 상기 루프(720)에서 업스트림인, 적어도 하나의 다른 장치(미도시)를 포함한다. 하나의 실시예에서, 상기 루프의 나머지 장치는 피어 장치(700)이다. 통신 장치(710)는 루프 에러 격리 관리 애플리케이션(loop error isolation management application)(730)에 동작가능하게 접속되어 있다. 다른 실시예에서, 상기 루프 에러 격리 관리 애플리케이션(730)은 방법들(300, 400, 500 및/또는 600)의 단계들을 수행한다.The apparatus 700 includes a communication input / output component 710 operatively connected with a loop 720. The device determines an error in the upstream device and / or the upstream link. In one embodiment, the loop 720 is FC-AL. The remainder of the loop 720 includes at least one other device (not shown), upstream from the peer device 700 in the loop 720. In one embodiment, the rest of the devices in the loop are peer devices 700. The communication device 710 is operatively connected to a loop error isolation management application 730. In another embodiment, the loop error isolation management application 730 performs the steps of methods 300, 400, 500, and / or 600.

상기 피어 장치(700)은 상기 루프의 완전한 위상에 대한 정보를 요구하지 않는다. 상기 피어 장치(700)는 에러 격리가 상기 루프의 각각의 장치에 분산되어 있기 때문에 루프 오버헤드 트래픽을 감소시킨다. 더욱이 문제되는 에러 출처와 가장 가까에 있는 피어 장치(700)가 상기 진단법을 수행하기 때문에 루프 진단법의 효율성이 증가된다. 부가하여, 상기 피어 장치(700)가 유휴일 때 각 피어 장치의 진단 기능이 수행가능하게 되므로 본 발명은 루프상의 각 장치의 성능 저하를 최소화하고, 그에 의하여, 상기 진단법이 더 높은 우선순위 작업동안 상기 피어장치(700)의 성능에 영향을 미치는 것을 방지한다.The peer device 700 does not require information about the complete phase of the loop. The peer device 700 reduces loop overhead traffic because error isolation is distributed to each device in the loop. Moreover, the efficiency of the loop diagnostics is increased because the peer device 700 closest to the source of error in question performs the diagnostics. In addition, since the diagnostic function of each peer device can be performed when the peer device 700 is idle, the present invention minimizes the degradation of the performance of each device on the loop, whereby the diagnostic method is available for higher priority tasks. It is prevented from affecting the performance of the peer device 700.

하나의 실시예에서, 상기 피어 장치(700)는 도 2의 디스크 드라이브와 같은 디스크 드라이브를 포함한다.In one embodiment, the peer device 700 includes a disk drive, such as the disk drive of FIG.

도 8은 피어 장치(700)와 같은 피어 장치의 루프 에러 격리 관리 애플리케이션(MA)(800)의 블록 다이어그램이다. 상기 MA(800)는 상기 루프의 업스트림 장치의 동일성(미도시) 결정 장치(determiner)(810)를 포함한다. 상기 결정 장치(800)는 도 7의 통신 입력/출력(710)을 통하여동일성을 받는다. 상기 동일성은 로컬 기억장치(local store)(820)에 의해 상기 피어 장치(700)상에 국소적으로 기억된다. 상기 기억장치(820)는 상기 결정 장치에 동작가능하게 접속된다. 하나의 실시예에서, 상기 결정 장치(810)는 루프 맵으로부터 업스트림 장치의 동일성을 검색하는 장치(retriever)를 포함한다.8 is a block diagram of a loop error isolation management application (MA) 800 of a peer device, such as peer device 700. The MA 800 includes a determiner 810 of an upstream device of the loop. The determination device 800 receives identity through the communication input / output 710 of FIG. The identity is stored locally on the peer device 700 by a local store 820. The memory device 820 is operably connected to the determination device. In one embodiment, the determining device 810 includes a retriever that retrieves the identity of the upstream device from the loop map.

MA(800)는 또한 상기 루프의 업스트림 장치로부터 링크 에러 카운트를 요구하는 장치(requester)(830)를 포함한다. 상기 요구 장치(830)는 링크 에러 카운트의 로컬 기억 장치(840)에 동작가능하게 접속된다. 상기 링크 에러 카운트의 로컬 기억 장치(840)는 현재 링크 에러 카운트와의 최근 히스토리 비교를 위해 링크 에러 카운트를 기억한다.The MA 800 also includes a requester 830 that requests a link error count from an upstream device in the loop. The request device 830 is operatively connected to the local memory 840 of the link error count. The local memory device 840 of the link error count stores the link error count for a recent history comparison with the current link error count.

MA(800)는 또한 상기 루프의 업스트림 장치로부터 현재 링크 에러 카운트를 요구하는 장치(850)를 포함한다. 요구 장치(850)는 도 7의 통신 입력/출력(710)에 접속된다. 상기 요구 장치(850)는 링크 에러의 현재 카운트를 받는다.The MA 800 also includes a device 850 that requests a current link error count from the upstream device of the loop. The requesting device 850 is connected to the communication input / output 710 of FIG. The requesting device 850 receives a current count of link errors.

MA(800)는 또한 구성 루프 변경의 결정 장치(860)를 포함한다. 상기 결정장치(860)는 도 7의 통신 입력/출력에 동작가능하게 접속된다.The MA 800 also includes an apparatus 860 for determining a configuration loop change. The determining device 860 is operatively connected to the communication input / output of FIG.

비교기(870)는 요구 장치(850)으로부터 받은 현재 링크 에러 카운트, 기억 장치(840)으로부터 받은 기억된 에러 카운트, 및 결정 장치(860)로부터 받은 루프 구성에 대한 변경을 비교하고, 그에 맞추어 링크 에러 해결 장치(880) 아니면 장치 에러 진단 요구의 발생 장치 및 전송 장치(890)를 실행시킨다. 하나의 실시예에서, 상기 요구 장치(880)는 링크 테스터(link tester)를 포함한다.Comparator 870 compares the current link error count received from requesting device 850, the stored error count received from storage 840, and the change to the loop configuration received from decision device 860, and accordingly the link error. The device 880 or the device for generating the device error diagnosis request and the transmission device 890 are executed. In one embodiment, the requesting device 880 includes a link tester.

장치(800)의 하나의 실시예에서, 초기화기(initializer)는 루프의 업스트림 장치의 동일성 결정 장치(810)에 동작가능하게 접속되고, 상기 동일성의 로컬 기억 장치(840)에 동작가능하게 접속된다.In one embodiment of the device 800, an initializer is operably connected to the identity determining device 810 of the upstream device in the loop and operatively connected to the local storage device 840 of the same. .

장치(800)의 또 하나의 실시예에서, 링크 에러 카운트의 로컬 기억 장치에 동작가능하게 접속된 루프 에러 모니터가 포함된다. 더욱이, 피어 장치의 통신 입력상의 에러 검출 장치는 상기 모니터에 접속된다.In another embodiment of apparatus 800, a loop error monitor is operably connected to local storage of link error counts. Moreover, the error detection device on the communication input of the peer device is connected to the monitor.

시스템(700 및 800)의 구성요소는 컴퓨터 하드웨어 회로 또는 컴퓨터-판독가능 프로그램(computer-readable program), 또는 양자의 결합으로서 구현될 수 있다.Components of systems 700 and 800 may be implemented as computer hardware circuitry or computer-readable programs, or a combination of both.

더욱 상세히, 장치(700, 800)의 컴퓨터-판독가능 프로그램 실시예에서, 프로그램은 자바(Java), 스몰톡(Smalltalk) 또는 C++과 같은 객체 지향(object-oriented) 언어를 사용하여 객체 지향으로 구성될 수 있고, 상기 프로그램은 COBOL 또는 C와 같은 절차 지향(procedural) 언어를 사용하여 절차 지향으로 구성될 수있다. 소프트웨어 컴포넌트들은 당업자에게 주지된 수많은 수단, 예를 들어, 응용 프로그램 인터페이스(application program interface; A.P.I) 또는 원격 절차 호출(remote procedure call; R.P.C.), 공통 객체 요구 매개자 구조(common object request broker architecture; CORBA), 컴포넌트 객체 모델(Component Object Model; COM), 분산형 컴포넌트 객체 모델(Distributed Component Object Model; DCOM), 분산형 시스템 객체 모델(Distributed System Object Model; DSOM) 및 원격 방법 시동(Remote Method Invocation; RMI)과 같은 인터프로세스 통신 기술 중 임의의 방식으로 통신한다. 상기 컴포넌트들은 하나처럼 적은 수의 컴퓨터 상에서, 또는 컴포넌트들이 존재하는 만큼의 적어도 많은 수의 컴퓨터 상에서 실행한다.More specifically, in a computer-readable program embodiment of the apparatus 700, 800, the program is object oriented using an object-oriented language such as Java, Smalltalk or C ++. The program may be configured procedurally using a procedural language such as COBOL or C. The software components can be used in a number of ways well known to those skilled in the art, for example, an application program interface (API) or remote procedure call (RPC), common object request broker architecture (CORBA). , Component Object Model (COM), Distributed Component Object Model (DCOM), Distributed System Object Model (DSOM), and Remote Method Invocation (RMI) Communicate in any of interprocess communication techniques, such as: The components run on as few computers as one, or on at least as many computers as there are components.

도 9는 컴퓨터 시스템에 관한 개략도이다. 유리하게, 본 발명은 컴퓨터 시스템(2000)에 사용하는 것이 적절하고, 여기서 컴퓨터 시스템(2000)은 루프의 업스트림 장치에 동작가능하게 접속된 통신 장치 및 분산된 데이지 체인 방식 피어 투 피어 루프의 장치상에 국소적으로 기록된 에러 조건을 식별하기 위한 수단을 포함한다.9 is a schematic diagram of a computer system. Advantageously, the present invention is suitable for use in computer system 2000, where computer system 2000 is on a device of a distributed daisy chained peer-to-peer loop and a communication device operably connected to an upstream device of the loop. Means for identifying a locally recorded error condition.

상기 컴퓨터 시스템(2000)은 또한 전자식 시스템(electronic system) 또는 정보 처리 시스템(information handling system)으로 언급될 수 있고, 중앙 처리 유닛(central processing unit), 메모리 및 시스템 버스(bus)를 포함한다. 정보 처리 시스템은 중앙 처리 유닛(2004), 랜덤 액세스 메모리(2032), 및 상기 중앙 처리 유닛(2004)과 랜덤 액세스 메모리(2032)를 통신적으로 결합하기 위한 시스템 버스(2030)를 포함한다. 상기 정보 처리 시스템(2002)은 상술한 램프(ramp)를 포함하는 디스크 드라이브 장치를 포함한다. 상기 정보 처리 시스템(2002)는 또한 입력/출력 버스(2010) 및 몇 개의 장치 주변 장치(devices peripheral devices)를 포함하고, 2012, 2014, 2016, 2018, 2020, 및 2022와 같은 것은 상기 입력 출력 버스(2010)에 부착될 수 있다. 주변 장치는 하드 디스크 드라이브, 광자기 드라이브(magneto optical drive), 플로피 디스크 드라이브, 모니터, 키보드 및 다른 그와 같은 주변 장치를 포함할 수 있다. 디스크 드라이브의 임의의 유형은 상술한 것처럼 디스크 표면상에 슬라이더를 로딩 또는 언로딩하기 위한 방법을 사용할 수 있다.The computer system 2000 may also be referred to as an electronic system or information handling system and includes a central processing unit, a memory and a system bus. The information processing system includes a central processing unit 2004, a random access memory 2032, and a system bus 2030 for communicatively coupling the central processing unit 2004 and the random access memory 2032. The information processing system 2002 includes a disk drive device including the ramp described above. The information processing system 2002 also includes an input / output bus 2010 and several devices peripheral devices, such as 2012, 2014, 2016, 2018, 2020, and 2022. (2010). Peripherals may include hard disk drives, magneto optical drives, floppy disk drives, monitors, keyboards, and other such peripherals. Any type of disc drive may use a method for loading or unloading sliders on the disc surface as described above.

루프 에러 진단법에 관한 본 발명은 루프의 위상에 대한 정보를 요구하지 않으며, 에러 격리가 상기 루프의 각각의 장치에 분산되어 있기 때문에 루프 오버헤드 트래픽을 감소시킨다. 더욱이 문제되는 에러 출처와 가장 가까운 장치가 상기 진단법을 수행하기 때문에 루프 진단법의 효율성이 증가된다. 부가하여, 상기 장치가 유휴일 때 각 장치의 진단 기능이 수행가능하게 되므로 본 발명은 루프상의 각 장치의 성능 저하를 최소화하고, 그에 의하여, 상기 진단법이 더 높은 우선순위 작업동안 상기 장치의 성능에 영향을 미치는 것을 방지한다.The present invention regarding loop error diagnostics does not require information about the phase of the loop, and reduces loop overhead traffic since error isolation is distributed to each device in the loop. Moreover, the efficiency of the loop diagnostics is increased because the device closest to the source of error in question performs the diagnostics. In addition, since the diagnostic function of each device is enabled when the device is idle, the present invention minimizes the degradation of the performance of each device on the loop, whereby the diagnostic method may affect the performance of the device during higher priority tasks. Prevent impact.

결론(conclusion)Conclusion

마지막으로, 인터커넥트 에러를 다루기 위한 방법은 분산된 데이지 체인 방식 피어 투 피어 루프(100)의 장치상에 국소적으로 기록된 에러 조건을 식별하는 단계(410) 및 상기 에러를 진단하는 단계(420)를 포함한다. 하나의 실시예에서,본 방법은 110, 120, 130, 및/또는 140같은 장치에 의해 수행된다. 또 하나의 실시예에서, 상기 분산된 데이지 체인 방식 피어 투 피어 루프는 FC-AL(150)을 포함한다. 또다른 실시예에서, 상기 장치는 디스크 드라이브(200)이다.Finally, a method for dealing with interconnect errors includes identifying a locally logged error condition on a device of the distributed daisy chained peer to peer loop 100 (410) and diagnosing the error (420). It includes. In one embodiment, the method is performed by an apparatus such as 110, 120, 130, and / or 140. In another embodiment, the distributed daisy chained peer to peer loop comprises an FC-AL 150. In another embodiment, the device is a disk drive 200.

또다른 실시예에서, 상기 식별 단계(310)는 분산된 데이지 체인 방식 피어 투 피어 루프(100)의, 바로 가까이에 업스트림 장치(120 또는 130)에 대한 로컬 소스로부터 현재 에러 상태 카운트를 받는 단계(370), 분산된 데이지 체인 방식 피어 투 피어 루프(150)의 바로 가까이에 업스트림 장치(120 또는 130)에 대한 로컬 소스로부터 이전의 에러 상태 카운트를 받는 단계(330), 375에서처럼 현재 에러 상태 카운트를 이전의 에러 상태 카운트와 비교하는 단계, 및 상기 비교가 에러를 지시함을 결정하는 단계(385)를 포함한다. 또다른 실시예에서, 상기 현재 에러 상태 카운트를 받는 단계(370)는 상기 이전 에러 상태 카운트를 받는 단계(520) 이후에 수행된다.In another embodiment, the identifying step 310 includes receiving a current error status count from a local source for the upstream device 120 or 130 in the vicinity of the distributed daisy chained peer to peer loop 100 ( 370, receiving a previous error status count from a local source for the upstream device 120 or 130 in the immediate vicinity of the distributed daisy-chained peer-to-peer loop 150 and receiving the current error status count as in step 375. Comparing to a previous error state count, and determining 385 that the comparison indicates an error. In another embodiment, the step 370 of receiving the current error status count is performed after the step 520 of receiving the previous error status count.

부가적인 실시예에서, 상기 링크 에러 카운트를 받는 단계(330)는 상기 장치(110, 120, 130 및/또는 140)의 초기화동안 수행된다.In an additional embodiment, the step 330 of receiving the link error count is performed during the initialization of the device 110, 120, 130 and / or 140.

또 하나의 실시예에서, 상기 결정 단계(540)는 상기 현재 에러 상태 카운트가 이전의 에러 상태 카운트와 다른지를 결정하는 단계(610)를 포함한다. 상기 에러 상태 카운트가 다를 때, 상기 업스트림 장치는 또한 에러를 검출하고 상기 업스트림 장치와 상기 장치 사이의 링크는 상기 에러의 출처가 아니다.In another embodiment, the determining step 540 includes determining 610 whether the current error state count is different from a previous error state count. When the error state count is different, the upstream device also detects an error and the link between the upstream device and the device is not the source of the error.

부가적인 실시예에서, 상기 진단 단계(420)는 분산된 데이지 체인 방식 피어 투 피어 루프의 상기 장치와 상기 바로 가까이에 업스트림 장치 사이의 링크를 테스트하는 단계(620)를 포함한다. 상기 테스트 단계(620)는 또한 상기 분산된 데이지 체인 방식 피어 투 피어 루프를 통하여 상기 바로 가까이에 업스트림 장치로부터 상기 장치로 데이타를 전송하는 단계 및 상기 데이타가 전송되었을 때 상기 장치가 상기 데이타를 받지 못함을 결정하는 단계를 포함한다.In an additional embodiment, the diagnostic step 420 includes testing 620 a link between the device in the distributed daisy chained peer to peer loop and an upstream device in the immediate vicinity. The testing step 620 also includes transmitting data from the upstream device to the device in close proximity to the device via the distributed daisy chained peer to peer loop and the device does not receive the data when the data is transmitted. Determining a step.

부가적인 실시예에서, 상기 진단 단계(420)는 에러가 분산된 데이지 체인 방식 피어 투 피어 루프의 상기 장치와 바로 가까이에 업스트림 장치 사이의 링크에 있는 것으로 추정됨을 지시하는 에러 리포트를 발생하는 단계(630)를 포함한다.In an additional embodiment, the diagnostic step 420 generates an error report indicating that the error is presumed to be in a link between the upstream device and the device in close proximity to the device in a distributed daisy chained peer-to-peer loop ( 630).

본 발명은 정보 처리 시스템(900)을 포함하고, 상기 정보 처리 시스템은 루프(720)의 업스트림 장치에 동작가능하게 접속된 통신 장치(710) 및 분산된 데이지 체인 방식 피어 투 피어 루프의 장치상에 국소적으로 기록된 에러 조건을 식별하기 위한 수단(730)을 포함한다.The present invention includes an information processing system 900, which comprises a communication device 710 operatively connected to an upstream device of a loop 720 and devices on a distributed daisy chained peer to peer loop. Means 730 for identifying locally recorded error conditions.

본 발명은 또한 루프(150)의 피어 장치(700)를 포함하고, 상기 장치는 통신 입력(710) 및 상기 통신 입력과 동작가능하게 통신하고 있는 루프 에러 격리 처리 애플리케이션(730)을 포함한다. 상기 루프의 상기 루프 에러 격리 처리 장치(730)에 관한 한 가지 실시예는 루프의 업스트림 장치의 동일성을 결정하는 장치(810), 상기 결정 장치와 통신하고 있는 동일성의 로컬 기억장치(820), 상기 기억 장치와 통신하고 있는 루프의 업스트림 장치로부터 링크 에러 카운트를 요구하는 장치(830), 상기 요구 장치(830)와 통신하고 있는 링크 에러 카운트의 로컬 기억 장치(840), 루프의 업스트림 장치로부터 현재 링크 에러 카운트를 요구하는 장치(850), 구성 루프 변경을 결정하는 장치(860), 상기 결정 장치(860)와 통신하면서 현재 링크 에러 카운트와 기억된 에러 카운트를 비교하는 장치(870), 링크 에러 카운트 기억 장치(840), 현재 링크 에러 카운트의 기억 장치(850), 상기 비교 장치와 통신하고 있는 링크 에러의 해결 장치(880), 및 상기 비교 장치와 상기 동일성 기억 장치(820)와 통신하고 있는 장치 에러 진단 요구의 전송 장치(890)를 포함한다. 상기 장치(700)의 하나의 실시예에서, 상기 피어 장치(700)는 베이스 및 상기 베이스에 회전가능하게 부착된 디스크를 갖는 디스크 드라이브(200)를 포함한다. 또다른 실시예에서, 상기 해결 장치(880)는 링크 테스터를 포함한다. 또다른 실시예에서, 상기 루프의 업스트림 장치의 동일성을 결정하는 장치(810)는 루프 맵으로부터 업스트림 장치의 동일성을 검색하는 장치를 포함한다. 또다른 실시예에서, 상기 장치는 상기 루프의 업스트림 장치의 동일성 결정 장치(810)와 통신하고 있고 상기 동일성의 로컬 기억 장치와 통신하고 있는 초기화 장치를 포함한다.The present invention also includes a peer device 700 of loop 150, which includes a communication input 710 and a loop error isolation processing application 730 in operative communication with the communication input. One embodiment of the loop error isolation processing unit 730 of the loop includes a device 810 for determining identity of an upstream device in a loop, a local storage 820 of identity in communication with the determining device, and A device 830 for requesting a link error count from an upstream device in the loop communicating with the storage device, a local memory device 840 for a link error count communicating with the requesting device 830, and a current link from an upstream device in the loop. An apparatus 850 for requesting an error count, an apparatus 860 for determining a configuration loop change, an apparatus 870 for communicating with the determining apparatus 860 and comparing a current link error count with a stored error count, a link error count A memory device 840, a memory device 850 of the current link error count, a device 880 for resolving link errors communicating with the comparison device, and the same as the comparison device And a device 890 for transmitting a device error diagnosis request in communication with the storage device 820. In one embodiment of the device 700, the peer device 700 includes a disk drive 200 having a base and a disk rotatably attached to the base. In another embodiment, the resolution device 880 includes a link tester. In another embodiment, the device 810 for determining the identity of the upstream device of the loop comprises a device for retrieving the identity of the upstream device from the loop map. In another embodiment, the device includes an initialization device in communication with an identity determining device 810 of an upstream device in the loop and in communication with a local storage of the same.

디스크 드라이브와 같은 정보 처리 시스템은 루프의 다른 장치와 통신하는 제어기를 포함하고, 분산된 또는 피어 투 피어 루프 에러 진단법을 수행한다. 루프의 한 가지 예는 파이버 채널 연결 루프(FC-AL)이다. 분산된 또는 피어 투 피어 루프 에러 진단법은, 에러 카운트가 증가하는지 아닌지를 결정하기 위해 상기 에러 카운트를 모니터함에 의해, 바로 가까이에 업스트림 장치 및 바로 가까이에 업스트림 링크에 있는 에러를 식별하고 진단한다. 증가하는 에러 카운트 또는 변경된 루프 구성은 에러의 출처가 상기 업스트림 장치가 아님을 지시하고, 반면 변화하지 않는 에러 카운트와 변경되지 않은 루프 구성은 상기 에러의 출처가 상기 업스트림 링크임을 지시한다.Information processing systems, such as disk drives, include a controller in communication with other devices in a loop, and perform distributed or peer to peer loop error diagnostics. One example of a loop is a fiber channel connection loop (FC-AL). Distributed or peer-to-peer loop error diagnostics identify and diagnose errors in the upstream device at hand and in the upstream link at hand by monitoring the error count to determine whether the error count is increasing. An increasing error count or modified loop configuration indicates that the source of the error is not the upstream device, whereas an unchanging error count and an unchanged loop configuration indicate that the source of the error is the upstream link.

앞에서 언급된 설명은 예시적인 것일 뿐 본 발명을 제한하지 않는다. 다른 많은 실시예는 상기 설명을 숙지한 당업자에게 명백할 것이다. 따라서, 본 발명의 범위는 첨부된 청구범위를 참조하여 결정되어야 하고, 상기 청구범위가 특허받은 균등의 완전한 범위를 따라 결정되어야 한다.The foregoing description is by way of example only and does not limit the invention. Many other embodiments will be apparent to those of skill in the art upon reading the above description. Therefore, the scope of the present invention should be determined with reference to the appended claims, and the claims should be determined in accordance with the full range of equivalent patented.

Claims (10)

분산된 데이지 체인 방식 피어 투 피어 루프(distributed daisy-chained peer-to-peer loop)의 루프 에러 진단 방법으로서,As a loop error diagnosis method of a distributed daisy-chained peer-to-peer loop, 상기 방법이 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 장치에 의해 수행되고, 상기 방법이:The method is performed by the apparatus of the distributed daisy chained peer to peer loop, the method being: (a) 분산된 데이지 체인 방식 피어 투 피어 루프의 장치상에 국소적으로(locally) 기록된 에러 조건을 식별하는 단계; 및(a) identifying locally written error conditions on devices in a distributed daisy chained peer to peer loop; And (b) 상기 에러를 진단하는 단계를 포함하는 것을 특징으로 하는 루프 에러 진단 방법.and (b) diagnosing the error. 제 1항에 있어서,The method of claim 1, 상기 식별 단계(a)가:The identifying step (a) is: (a)(1) 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 업스트림 장치(upstream device)에 대한 로컬 소스(local source)로부터 현재 에러 상태 카운트(current error status count)를 받는 단계;(a) (1) receiving a current error status count from a local source for an upstream device of the distributed daisy chained peer to peer loop; (a)(2) 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 업스트림 장치에 대한 로컬 소스로부터 이전의 에러 상태 카운트(prior error status count)를 받는 단계; 및(a) (2) receiving a prior error status count from a local source for the upstream device of the distributed daisy chained peer to peer loop; And (a)(3) 상기 현재 에러 상태 카운트를 상기 이전의 에러 상태 카운트와 비교하는 단계를 포함하는 것을 특징으로 하는 루프 에러 진단 방법.(a) (3) comparing the current error state count with the previous error state count. 제 2항에 있어서,The method of claim 2, 상기 식별 단계(a)가, 상기 비교가 에러를 지시하고 상기 현재 에러 상태 카운트가: 이전의 에러 상태 카운트와 동일함 및 이전의 에러 상태 카운트와 동일하지 않음으로 구성된 그룹으로부터 선택됨을 결정하는 단계 (a)(4)를 더 포함하고;Wherein said identifying step (a) determines that said comparison indicates an error and said current error state count is selected from the group consisting of: equal to a previous error state count and not equal to a previous error state count ( a) (4) further; 상기 진단 단계(b)가, 상기 에러가 분산된 데이지 체인 방식 피어 투 피어 루프의 상기 장치와 상기 업스트림 장치 사이의 링크에 존재하는 것으로 추정됨을 지시하는 에러 리포트(error report)를 발생시키는 단계 (b)(1)을 포함하는 것을 특징으로 하는 루프 에러 진단 방법.The diagnostic step (b) generating an error report indicating that the error is assumed to be present in a link between the device and the upstream device in a distributed daisy chained peer to peer loop. Loop error diagnosis method comprising a. 제 3항에 있어서,The method of claim 3, wherein 상기 진단 단계(b)가:The diagnostic step (b) is: (b)(1) 상기 에러 출처(source)가 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 상기 장치와 상기 업스트림 장치 사이의 링크에 존재하는 것으로 추정됨을 결정하는 단계; 및(b) (1) determining that the error source is assumed to be present in a link between the device and the upstream device of the distributed daisy chained peer to peer loop; And (b)(2) 상기 분산된 데이지 체인 방식 피어 투 피어 루프의 상기 장치와 상기 업스트림 장치 사이의 링크를 테스트하는 단계를 포함하는 것을 특징으로 하는 루프 에러 진단 방법.(b) (2) testing a link between the device and the upstream device of the distributed daisy chained peer-to-peer loop. 제 4항에 있어서,The method of claim 4, wherein 상기 테스트 단계(b)(2)가:The test step (b) (2) is: (b)(2)(ⅰ) 상기 분산된 데이지 체인 방식 피어 투 피어 루프를 통하여 상기 업스트림 장치로부터 상기 장치로 데이타를 전송하는 단계; 및(b) (2) (iii) transmitting data from the upstream device to the device via the distributed daisy chained peer to peer loop; And (b)(2)(ⅱ) 상기 데이타가 전송되었을 때 상기 장치가 상기 데이타를 받지 못했음을 결정하는 단계를 포함하는 것을 특징으로 하는 루프 에러 진단 방법.(b) (2) (ii) determining that the device did not receive the data when the data was transmitted. 루프의 피어 장치(peer apparatus)로서,As a peer apparatus in a loop, 통신 입력(communication input); 및Communication input; And 상기 통신 입력에 동작가능하게 접속된 루프 에러 격리 관리 애플리케이션(loop error isolation management application)을 포함하는 것을 특징으로 하는 피어 장치.And a loop error isolation management application operatively connected to the communication input. 제 6항에 있어서,The method of claim 6, 상기 루프 에러 격리 관리 애플리케이션이:The loop error isolation management application: 루프의 업스트림 장치의 동일성을 결정하는 장치(determiner);A determiner for determining the identity of the upstream device of the loop; 상기 결정 장치에 동작가능하게 접속된, 상기 동일성을 기억하는 로컬 기억 장치(local store);A local store operatively connected to said determining device, said local store storing said identity; 상기 기억 장치에 동작가능하게 접속된, 상기 루프의 상기 업스트림 장치로부터 링크 에러 카운트(link error count)를 요구하는 장치(requester);A requester requesting a link error count from said upstream device in said loop operably connected to said storage device; 상기 요구 장치에 동작가능하게 접속된, 상기 링크 에러 카운트의 로컬 기억 장치;A local storage of the link error count, operatively connected to the requesting device; 상기 루프의 상기 업스트림 장치로부터 현재 링크 에러 카운트를 요구하는 장치;A device for requesting a current link error count from the upstream device in the loop; 구성 루프 변경(configuration loop changes)의 결정 장치;A device for determining configuration loop changes; 상기 결정 장치, 상기 링크 에러 카운트의 기억 장치, 및 상기 현재 링크 에러 카운트의 기억 장치와 동작가능하게 접속된, 현재 링크 에러 카운트를 상기 기억된 에러 카운트와 비교하는 장치(comparator);A comparator for comparing a current link error count with the stored error count operatively connected with the determining device, the link error count storage device, and the current link error count storage device; 상기 비교 장치에 동작가능하게 접속된, 링크 에러 해결 장치(resolver); 및A link error resolver, operatively connected to the comparison device; And 상기 비교 장치 및 상기 동일성 기억 장치에 동작가능하게 접속된, 장치 에러 진단 요구의 전송 장치를 포함하는 것을 특징으로 하는 피어 장치.And a device for transmitting a device error diagnosis request, operatively connected to said comparison device and said identity memory. 제 6항에 있어서,The method of claim 6, 상기 해결 장치가 링크 테스터(link tester)를 포함하고;The solution device comprises a link tester; 상기 루프의 업스트림 장치의 동일성 결정 장치가 루프 맵(loop map)으로부터 업스트림 장치의 동일성을 검색하는 장치(retriever)를 포함하고; 및The identity determining device of the upstream device of the loop comprises a retriever for retrieving the identity of the upstream device from a loop map; And 상기 장치가, 상기 루프의 업스트림 장치의 동일성 결정 장치에 동작가능하게 접속되고 상기 동일성의 로컬 기억 장치에 동작가능하게 접속된 초기화 장치(initializer)를 포함하는 것을 특징으로 하는 피어 장치.And the device comprises an initializer operably connected to an identity determining device of an upstream device in the loop and operatively connected to a local storage device of the same. 제 6항에 있어서,The method of claim 6, 상기 피어 장치가 디스크 드라이브를 더 포함하는 것을 특징으로 하는 피어 장치.And the peer device further comprises a disk drive. 정보 처리 시스템(information handling system)으로서,As an information handling system, 루프의 업스트림 장치에 동작가능하게 접속된 통신 장치; 및A communication device operably connected to an upstream device in the loop; And 분산된 데이지 체인 방식 피어 투 피어 루프의 장치상에 국소적으로 기록된 에러 조건을 식별하기 위한 수단을 포함하는 것을 특징으로 하는 정보 처리 시스템.Means for identifying locally recorded error conditions on devices in a distributed daisy chained peer-to-peer loop.
KR1020027006532A 1999-11-22 2000-11-22 Peer to peer interconnect diagnostics KR100824109B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16680599P 1999-11-22 1999-11-22
US60/166,805 1999-11-22
PCT/US2000/032058 WO2001038982A1 (en) 1999-11-22 2000-11-22 Peer to peer interconnect diagnostics

Publications (2)

Publication Number Publication Date
KR20020050300A true KR20020050300A (en) 2002-06-26
KR100824109B1 KR100824109B1 (en) 2008-04-21

Family

ID=22604768

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027006532A KR100824109B1 (en) 1999-11-22 2000-11-22 Peer to peer interconnect diagnostics

Country Status (6)

Country Link
JP (1) JP4672224B2 (en)
KR (1) KR100824109B1 (en)
CN (1) CN1391673A (en)
DE (1) DE10085218T1 (en)
GB (1) GB2372606B (en)
WO (1) WO2001038982A1 (en)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
KR101166734B1 (en) 2003-06-02 2012-07-19 퀄컴 인코포레이티드 Generating and implementing a signal protocol and interface for higher data rates
AU2004306903C1 (en) 2003-10-15 2009-01-22 Qualcomm Incorporated High data rate interface
KR100915250B1 (en) 2003-11-12 2009-09-03 콸콤 인코포레이티드 High data rate interface with improved link control
WO2005053272A1 (en) 2003-11-25 2005-06-09 Qualcomm Incorporated High data rate interface with improved link synchronization
EP2247070B1 (en) 2003-12-08 2013-09-25 QUALCOMM Incorporated High data rate interface with improved link synchronization
EP2375676B1 (en) 2004-03-10 2013-06-26 Qualcomm Incorporated High data rate interface apparatus and method
EP1735986B1 (en) 2004-03-17 2013-05-22 Qualcomm, Incorporated High data rate interface apparatus and method
BRPI0509147A (en) 2004-03-24 2007-09-11 Qualcomm Inc High data rate interface equipment and method
US8650304B2 (en) 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
KR100926658B1 (en) 2004-06-04 2009-11-17 퀄컴 인코포레이티드 High data rate interface apparatus and method
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8028109B2 (en) 2006-03-09 2011-09-27 Marvell World Trade Ltd. Hard disk drive integrated circuit with integrated gigabit ethernet interface module
JP4291384B2 (en) 2007-08-23 2009-07-08 ファナック株式会社 Detection method of disconnection and power supply disconnection of IO unit connected to numerical controller
CN102183548B (en) * 2011-03-16 2013-02-27 复旦大学 Failed bump positioning method based on daisy chain loop design

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3564145A (en) * 1969-04-30 1971-02-16 Ibm Serial loop data transmission system fault locator
US4769761A (en) * 1986-10-09 1988-09-06 International Business Machines Corporation Apparatus and method for isolating and predicting errors in a local area network
JPH0227819A (en) * 1988-07-18 1990-01-30 Fujitsu Ltd Switching trigger detecting circuit in line switchboad
JPH09219720A (en) * 1996-02-14 1997-08-19 Toshiba Corp Fault detection method and device for communication network
US5812754A (en) * 1996-09-18 1998-09-22 Silicon Graphics, Inc. Raid system with fibre channel arbitrated loop
JP2002368768A (en) * 2001-06-05 2002-12-20 Hitachi Ltd Electronic device compatible with fiber channel arbitration loop and method for detecting fault in the fiber channel arbitration loop

Also Published As

Publication number Publication date
JP4672224B2 (en) 2011-04-20
KR100824109B1 (en) 2008-04-21
JP2003515967A (en) 2003-05-07
CN1391673A (en) 2003-01-15
WO2001038982A1 (en) 2001-05-31
GB2372606B (en) 2004-06-02
GB2372606A (en) 2002-08-28
GB0212193D0 (en) 2002-07-03
DE10085218T1 (en) 2002-10-31

Similar Documents

Publication Publication Date Title
US6490253B1 (en) Peer to peer interconnect diagnostics
KR100824109B1 (en) Peer to peer interconnect diagnostics
US7111084B2 (en) Data storage network with host transparent failover controlled by host bus adapter
US7188201B2 (en) Storage system
US8843789B2 (en) Storage array network path impact analysis server for path selection in a host-based I/O multi-path system
KR100497990B1 (en) Method for fast queue restart after redundant i/o path failover
US7571356B2 (en) Storage control device, and error information management method for storage control device
US7302615B2 (en) Method and system for analyzing loop interface failure
US7853831B2 (en) Methods and structure for detection and handling of catastrophic SCSI errors
US20070028041A1 (en) Extended failure analysis in RAID environments
US20070174720A1 (en) Apparatus, system, and method for predicting storage device failure
US20040153833A1 (en) Fault tracing in systems with virtualization layers
US7117320B2 (en) Maintaining data access during failure of a controller
US20100275219A1 (en) Scsi persistent reserve management
US8006133B2 (en) Non-disruptive I/O adapter diagnostic testing
US8161316B1 (en) Managing loop interface instability
JP4796251B2 (en) Network storage system and control method thereof
US6865689B1 (en) Method and apparatus for fault isolation on network loops using low level error counters
JP6996602B1 (en) BMC, server system, device stability determination method and program
KR100466142B1 (en) Method and apparatus for performing drive-based updates to disk array controllers
US6990530B1 (en) Method and apparatus for fault isolation on network loops
JP2004021608A (en) Trouble detection system and method for duplex server
KR100604552B1 (en) Method for dealing with system troubles through joint-owning of state information and control commands
JP2023127085A (en) Storage device and control method
JP4087387B2 (en) Storage controller

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130326

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140326

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160318

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee