KR100637780B1 - 분산된 노드 환경에서의 현장 교체 가능형 유닛의 결함분리를 위한 1차 에러 소스의 식별 방법, 메카니즘 및그의 컴퓨터 시스템 - Google Patents

분산된 노드 환경에서의 현장 교체 가능형 유닛의 결함분리를 위한 1차 에러 소스의 식별 방법, 메카니즘 및그의 컴퓨터 시스템 Download PDF

Info

Publication number
KR100637780B1
KR100637780B1 KR20040027491A KR20040027491A KR100637780B1 KR 100637780 B1 KR100637780 B1 KR 100637780B1 KR 20040027491 A KR20040027491 A KR 20040027491A KR 20040027491 A KR20040027491 A KR 20040027491A KR 100637780 B1 KR100637780 B1 KR 100637780B1
Authority
KR
South Korea
Prior art keywords
error
counters
computer
counter
count value
Prior art date
Application number
KR20040027491A
Other languages
English (en)
Other versions
KR20040093405A (ko
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
Priority to US10/425,441 priority Critical
Priority to US10/425,441 priority patent/US20040216003A1/en
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20040093405A publication Critical patent/KR20040093405A/ko
Application granted granted Critical
Publication of KR100637780B1 publication Critical patent/KR100637780B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system

Abstract

본 발명은 컴퓨터 시스템을 통해 전파하여 2차 에러를 유발시키는 1차 에러 소스를 식별하는 방법을 제공하며, 이 방법은 컴퓨터 부품(예를들어, 프로세싱 유닛)에 개별적으로 관련되어 있는 복수의 카운터를 초기화시키고, 컴퓨터 부품이 작동할 때 카운터를 증분시키지만 소정의 카운터에 관련된 컴퓨터 부품이 에러를 검출할 때에는 그 소정의 카운터를 중지시키며, 그리고나서 어느 카운터가 최저 카운트값을 갖는지를 판정함으로써 행해진다. 카운터는 초기화 신호의 수신시의 상대 지연량에 기초하여 동기화된다. 에러가 보고될 때, 진단 코드는 최저 카운트값을 갖는 카운터에 관련된 특정 컴퓨터 부품에 대한 에러 이벤트를 로그한다.
에러 소스의 검출, 카운터, 레지스터, 진단 코드, 결함 분리 로직

Description

분산된 노드 환경에서의 현장 교체 가능형 유닛의 결함 분리를 위한 1차 에러 소스의 식별 방법, 메카니즘 및 그의 컴퓨터 시스템{MECHANISM FOR FIELD REPLACEABLE UNIT FAULT ISOLATION IN DISTRIBUTED NODAL ENVIRONMENT}

도 1은 전반적으로 동일한 4개의 프로세싱 유닛 중의 하나에 대한 내부 상세구조가 도시되어 있는 종래의 대칭형 멀티-프로세서(SMP) 컴퓨터 시스템을 도시하고 있는 블록도.

도 2는 도 1에 도시된 SMP 컴퓨터 시스템의 프로세서에 대한 통신 토폴로지를 예시하고 있는 블록도.

도 3은 본 발명의 일실시예에 따른 프로세서 그룹 레이아웃과 통신 토폴로지를 도시하고 있는 블록도.

도 4는 본 발명에 따라, 특정 프로세싱 유닛이 1차 에러 소스인지의 여부를 판정하기 위해서 결함 분리 회로가 사용된 도 3의 프로세서 그룹내의 프로세싱 유닛(칩) 중의 하나를 도시하고 있는 블록도.

도 5는 본 발명에 따른 결함 분리 회로의 일실시예를 예시하는 하이레벨의 모식도.

<도면의 주요 부분에 대한 부호의 간단한 설명>

44a, 44b, 44c, 44d, 44e, 44f : 멀티칩 모듈

46a, 46b, 46c, 46d, 48a, 48b, 48c, 48d : 버스

S, T, U, V : 프로세싱 유닛

56a, 56b : 프로세서 코어

58 : 메모리 서브시스템

60 : 결함 분리 회로

본 발명은 전반적으로는 컴퓨터 시스템에 관한 것으로, 보다 구체적으로는 복잡한 통신 토폴로지(communication topology)에서 상호접속되는 다수의 부품 중 어느 하나의 부품, 특히 프로세싱 유닛, 메모리 디바이스 등과 같은 현장 교체 가능한 유닛으로부터 야기될 수도 있는 시스템 에러의 소스를 판정하는 개량된 방법에 관한 것이다.

종래의 대칭형 멀티-프로세서 컴퓨터 시스템(10)의 기본 구조가 도 1에 도시되어 있다. 컴퓨터 시스템(10)은 하나 또는 그 이상의 프로세서 그룹에 배열된 하나 또는 그 이상의 프로세싱 유닛을 가지며, 도시된 시스템에서는 프로세서 그룹(14)에 4개의 프로세싱 유닛(12a, 12b, 12c 및 12d)이 존재한다. 프로세싱 유닛은 패브릭 버스(fabric bus)(16)를 통해 시스템(10)의 다른 부품과 통신한다. 패브릭 버스(16)는 하나 또는 그 이상의 서비스 프로세서(18a, 18b), 시스템 메모리 디바이스(20) 및 각종의 주변장치(22)에 접속된다. 추가의 프로세서 그룹을 상 호접속시키기 위해 프로세서 브릿지(24)가 선택적으로 사용될 수 있다. 컴퓨터 시스템(10)은 펌웨어(도시되지 않음)[이 펌웨어는 컴퓨터 시스템의 기본적인 입력/출력 로직을 저장하고, 컴퓨터 시스템이 최초에 시동(부팅)될 때마다 주변장치들 중 하나로부터 운영체계를 탐색해내어 로드하는 것임]를 포함하여도 좋다.

시스템 메모리 디바이스(20)(RAM)는 프로세싱 유닛이 사용하는 프로그램 명령어 및 연산자 데이타를 휘발성(일시적) 상태로 저장한다. 주변장치(22)는 예를들어 PCI 호스트 브릿지를 사용하는 주변 부품 상호접속(PCI : Peripheral Component Interconnect) 로컬 버스를 통해 패브릭 버스(16)에 접속될 것이다. PCI 브릿지는 적은 레이턴시(대기시간) 경로(low latency path)를 제공하며, 이 경로를 통해 프로세싱 유닛(12a, 12b, 12c 및 12d)은 버스 메모리 또는 I/O 어드레스 공간내의 어느 곳에 있는 PCI 장치라도 액세스할 수 있다. PCI 호스트 브릿지(22)는 또한 고대역폭 경로를 제공하여 PCI 장치가 RAM(20)을 액세스하도록 한다. 이러한 PCI 장치는 네트워크 어댑터와; 영구 저장 장치(예를들어, 하드 디스크)에의 상호접속을 제공하는 소규모 컴퓨터 시스템 인터페이스(SCSI; Small Computer System Interface) 어댑터와; 키보드, 디스플레이 장치에 접속된 그래픽 어댑터 및 디스플레이 장치와 함께 사용하기 위한 그래픽 포인팅 장치(마우스)를 포함한 입력/출력(I/O) 장치에의 접속을 위한 산업 표준 아키텍쳐(ISA; Industry Standard Architecture) 확장 버스와 같은 확장 버스 브릿지를 포함할 수 있다.

대칭형 멀티-프로세서(SMP; Symmetric Multi-Processor) 컴퓨터에서는 프로세싱 유닛(12a, 12b, 12c 및 12d) 모두가 전반적으로 동일하다. 즉, 이들 프로세 싱 유닛 모두는 공통적인 명령어 및 프로토콜 세트 또는 서브세트를 사용하여 연산하며, 전반적으로 똑같은 아키텍쳐를 갖는다. 프로세싱 유닛(12a)에 도시된 바와 같이, 각각의 프로세싱 유닛은 컴퓨터를 작동시키기 위해 프로그램 명령어를 실행하는 하나 또는 그 이상의 프로세서 코어(26a, 26b)를 포함할 것이다. 일례의 프로세서 코어는 International Business Machine Corp.에 의해 시판되는 PowerPC™ 프로세서를 포함하며, 이 프로세서는 각종의 실행 유닛, 레지스터, 버퍼, 메모리 및 기타 기능 유닛이 모두 집적회로에 의해 형성되는 단일의 집적회로 슈퍼스칼라 마이크로프로세서를 구성한다. 프로세서 코어는 명령어 축약형 컴퓨팅(RISC; Reduced Instruction Set Computing) 기술에 따라 동작할 것이며, 슈퍼스칼라 아키텍쳐의 성능을 추가로 향상시키기 위해 명령어의 파이프라인화(pipelining) 및 비순차 실행(out-of-order execution) 모두를 채용할 것이다.

각각의 프로세서 코어(12a, 12b)는 고속 메모리 디바이스를 사용하여 구현된 온보드(L1) 캐쉬(실제적으로, 별도의 명령어 캐쉬와 데이타 캐쉬)를 포함한다. 캐쉬는 흔히 프로세서에 의해 반복적으로 액세스될 수도 있는 값을 일시적으로 저장하여 시스템 메모리(20)로부터 값을 로딩하는 장시간의 단계를 회피함으로써 처리 속도를 향상시키기 위해 사용된다. 프로세싱 유닛은 개별적으로 코어(26a, 26b)의 일부가 되는 양쪽 L1 캐쉬를 메모리 콘트롤러(30)와 함께 지원하는 제2 레벨(L2) 캐쉬(28)와 같은 또다른 캐쉬를 포함할 수 있다. 패브릭 버스(16)를 통해 액세스될 수 있는 L3 캐쉬(32)와 같은 추가의 캐쉬 레벨이 제공될 수도 있을 것이다. 각 캐쉬 레벨은 최상위 레벨(L1)에서 최하위 레벨(L3)로 갈수록 점차적으로 더 많은 정보를 저장할 수 있지만, 액세스 시간이 길어진다는 단점을 갖는다. 예를들어, 프로세서내의 온보드 L1 캐쉬는 128 KByte 메모리의 저장 용량을 가질 것이고, L2 캐쉬(28)는 512 KByte의 저장 용량을 가질 것이며, L3 캐쉬(32)는 2 MByte의 저장 용량을 가질 것이다. 하자(瑕疵)있는 프로세싱 유닛 부품의 수리/교체를 용이하게 하기 위해, 각각의 프로세싱 유닛(12a, 12b, 12c 및 12d)은 교체가능한 회로 기판, 플러그 결합가능한 모듈 또는 유사한 현장 교체가능한 유닛(FRU; Field Replaceable Unit)의 형태로 구성될 것이며, 이들은 모듈 형태로 시스템(10)에 용이하게 교환해 넣거나 뺄 수 있다.

멀티-프로세서 컴퓨터 시스템은 크기와 복잡도가 증가하기 때문에, 시스템의 각종 부품에서 발생하는 에러의 진단 및 정정에 대한 강조가 증대되고 있다. 이들 부품에 이식된 에러 정정 코드(ECC; Error Correction Code) 로직에 의해 일부 에러가 정정될 수 있기는 하지만, 정정 코드가 정정 및 검출할 수 있는 에러의 수에 있어서 정정 코드가 한계를 나타내기 때문에 여전히 이들 에러의 원인을 판정할 필요성이 존재한다. 일반적으로, 사용된 ECC 코드는 SEC/DED 타입(Single Error Correct/Double Error Detect Type)이다. 그러므로, 지속적인 정정 가능한 에러가 발생할 때, 2차 에러가 정정 불가능한 에러를 야기하여 시스템이 고장나는 것을 방지하기 위해 가능한 한 신속히 하자 부품의 FRU 교체를 요청하는 것이 바람직하다. 컴퓨터 시스템에 시스템 에러를 초래하는 결함 또는 하자가 생기면, 그러한 시스템 오염은 SMP 패브릭에 접속된 다른 칩들 또는 디바이스들로 흘러들어가는 2차 에러를 유발시킬 수 있기 때문에 1차 에러의 발원 소스(original source)를 판정하기가 어려울 수 있다. 이러한 시스템 오염은 복구 가능한 상태 또는 체크스톱(checkstop)(시스템 결함) 상태 중의 한 상태의 형태를 취할 수 있다. 다수의 에러는 퍼포먼스 이슈(performance issue)로 인해 전파가 허용된다. 즉시 에러 정정 방식(in-line error correction)은 시스템에 상당한 지연을 유발시킬 수 있으므로, ECC 방식은 데이타 패킷의 소스 또는 중간 노드에서가 아닌 데이타 패킷의 최종 목적지(데이타 "소비자")에서만 사용될 수도 있다. 따라서, 복구 가능한 에러에 대해, 원하지 않은 레이턴시를 시스템에 추가함이 없이 데이타를 포워딩하기 전에 ECC 정정을 행하기에는 충분한 시간이 부족하곤 하여서, 불량 데이타가 후속 노드 또는 칩에 고의적으로 전파될 수도 있다. 복구 가능한 에러 및 체크스탑 에러 모두에 대해, 진단용 펌웨어가 시스템을 분석하고 에러의 1차 소스를 확실하게 판정할 수 있어서 적절한 동작이 취해질 수 있게 되는 것이 중요하다. 정정 동작은 부품의 예방적인 수리, 선택된 리소스의 구성해제(deconfiguration) 및/또는 하자 부품이 정상 작동 유닛(fully operational unit)으로 교환 제거될 수 있는 FRU인 경우 하자 부품의 교체를 위한 서비스 요청을 포함할 수 있다.

시스템(10)에 대하여, 에러 발생의 최초 원인을 분리시키기 위해 사용된 방법은 각각의 부품에 하나씩 배치된 복수의 카운터 또는 타이머와, 부품들간에 루프를 형성하는 통신 링크를 활용한다. 예를들어, 시스템(10)의 프로세서를 위한 통신 토폴로지가 도 2에 도시되어 있다. 복수의 데이타 경로 또는 버스(34)가 토폴로지내의 인접 프로세서 코어간의 통신을 허용한다. 각각의 프로세서 코어는 고유 프로세서 식별 번호가 할당된다. 일실시예에서, 한 프로세서 코어, 이 경우에는 코어(26a)가 1차 모듈로써 지정된다. 이 1차 모듈은 프로세싱 유닛(12b)내의 프로세서 코어 중의 한 코어에 정보를 제공하는 통신 버스(34)를 갖는다. 통신 버스(34)는 데이타 비트, 제어 비트 및 에러 비트를 포함할 수 있다. 이 종래 기술의 설계에서, 소정 프로세서 코어내에 있는 각각의 카운터는 에러가 최초로 검출될 때 증분을 개시하며, 시스템 에러 표식이 전체 버스 토폴로지를 경유하여[버스(34)내의 에러 비트를 통해] 그 소정 코어에 돌아온 후, 카운터는 정지한다. 이어서, 카운터는 카운트값이 최고인 부품(1차 에러 소스를 나타냄)을 식별하기 위해 검사될 수 있다.

결함 분리(fault isolation; 결함 파급효과 방지라고도 함)에 대한 이 방법은 단순 링(단일-루프) 토폴로지에서는 실현 가능하기는 하지만, 예를들어 통신 토폴로지에서 십자로 교차하는 다중 루프를 가질 수도 있는 더 복잡한 프로세싱 유닛 구조에서는 실행 가능하지 않다. 이러한 구조에서는 카운트값이 최고인 카운터가 하자 부품에 해당한다는 것을 보장하지 못한다. 그 이유는, 1차 에러를 겪고 있는 칩이 정확하게 어느 칩인지 그리고 특정 데이타 또는 명령어 패킷이 패브릭 토폴로지를 따라 어떻게 라우팅되고 있는지 판정되는 것이 예측 불가능하게, 에러가 토폴로지를 통해 전파할 수 있기 때문이다. 결함 분리 시스템이 판정을 위해 부품을 모니터할 수 있는 중앙 제어 포인트를 갖는 것으로 설계될 수도 있지만, 현대의 전산화(컴퓨팅)에 있어서의 추세는 이러한 중앙 제어가 시스템 전체 셧다운을 초래할 수 있는 단일 고장 포인트를 제공하기 때문에 이러한 중앙 제어로부터 멀어지고 있다. 따라서, 복잡한 통신 토폴로지를 갖는 컴퓨터 시스템에서 결함을 분리시켜 다 수의 부품 중에서 시스템 에러의 소스를 정확하게 지적해내는 향상된 방법을 고안하는 것이 바람직할 것이다. 그 방법이 추가의 상호접속으로 칩 배선을 추가로 복잡하게 하지 않고 부품간의 현존 경로를 활용할 수 있다면 추가의 장점이 될 것이다.

따라서, 본 발명의 한 목적은 에러의 소스를 식별하기 위해 컴퓨터 시스템에 대한 향상된 진단 방법을 제공하는 것이다.

본 발명의 다른 목적은 토폴로지적으로 복잡한 통신 경로와 함께 하는 프로세서 코어와 같은 부품을 갖는 컴퓨터 시스템에 적용될 수 있는 이러한 방법을 제공하는 것이다.

본 발명의 또다른 목적은 다른 컴퓨터 부품에 전파되어 이들 부품에서 2차 에러를 발생할 수도 있는 에러의 1차 소스의 위치를 확인해내는 방법 및 시스템을 제공하는 것이다.

전술한 목적은 컴퓨터 시스템의 일부분을 통해 전파하여 2차 에러를 발생하는 에러의 1차 소스를 식별하는 방법으로 달성되며, 상기 방법은 일반적으로, 컴퓨터 부품(예를들어, 프로세싱 유닛)에 개별적으로 관련되어 있는 복수의 카운터를 초기화하는 단계와, 컴퓨터 부품이 작동할 때에는 카운터를 증분시키지만 그 카운터의 관련 컴퓨터 부품이 에러를 검출한 때에는 소정 카운터를 일시중지시키는 단계와, 어느 카운터가 최저 카운트값을 갖는지를 판정하는 단계를 포함한다. 그 카운터는 1차 에러 소스가 되는 컴퓨터 부품에 해당한다. 카운터는 초기화 신호의 수신시의 상대 지연량(relative delays)에 기초하여 동기화된다. 소정 카운터는 그 카운터와 동일한 집적회로칩 상에 있는 부품에서의 에러의 검출 또는 상이한 집적회로칩으로부터의 에러 신호의 검출의 결과로 일시중지될 수도 있을 것이다. 에러가 보고될 때, 진단 코드는 최저 카운트값을 갖는 카운터에 관련된 특정 컴퓨터 부품에 대해 에러 이벤트를 로그(log)한다.

카운터가 현재의 카운트를 제로 부근으로 할때[모듈로 방식(nodulo fashion)] 야기될 수 있는 잠재적인 문제점을 방지하기 위해, 각각의 카운터는 각각의 카운터에 대한 최대 카운트값이 컴퓨터 부품 토폴로지 전체의 최대 에러 전파 지연량의 적어도 2배인 사이클 타임에 대응하도록 충분한 저장용량이 제공될 수도 있을 것이다. 진단 코드는 임의의 낮은 랩어라운드 값(wraparound value)을 인식하고, 어느 카운터가 진정한 최소 카운트를 갖는지를 판정할 때에 최대 카운트를 적절하게 더한다. 복구 가능한 에러의 결과로 나타나는 장치 결함(hard fault)[즉, "스턱(stuck)" 비트]의 잠재적인 문제점을 추가로 방지하기 위해, 결함 분리 제어는 컴퓨터 부품간의 통신 경로를 활동정지시키고, 그 컴퓨터 부품상의 결함 분리 레지스터를 클리어하며, 그리고나서 통신 경로를 재개시킬 수 있다.

본 발명의 전술한 목적, 특징 및 장점뿐만 아니라 추가의 목적, 특징 및 장점은 다음의 상세한 설명에서 더욱 명백해질 것이다.

상이한 도면에서의 동일한 도면 참조부호의 사용은 유사하거나 동일한 구성 요소를 나타낸다.

도면, 특히 도 3을 참조하면, 본 발명에 따라 구성된 대칭형 멀티-프로세서(SMP) 컴퓨터 시스템에 대한 프로세서 그룹(40)의 일실시예가 도시되어 있다. 이 특정 실시예에서, 프로세서 그룹(40)은 프로세싱 유닛의 3개의 드로워(drawer)(42a, 42b 및 42c)로 구성된다. 3개의 드로워만이 도시되어 있지만, 프로세서 그룹은 더 적은 수 또는 추가의 드로워를 가질 수 있다. 드로워는 SMP 시스템에의 물리적인 설치를 위해 관련 프레임내로 슬라이드 결합되도록 기계적으로 설계된다. 프로세싱 유닛 드로워의 각각은 2개의 멀티-칩 모듈(MCM)을 갖는다. 즉, 드로워 42a는 MCM 44a와 44b를 갖고, 드로워 42b는 MCM 44c와 44d를 가지며, 드로워 42c는 MCM 44e와 44f를 갖는다. 이 경우에도, 상기 구성은 드로워당 2개 이상의 MCM을 포함할 수 있다. 그 다음에 각각의 MCM은 4개의 집적회로칩 또는 개별적인 프로세싱 유닛을 갖는다(5개 이상 또는 3개 이하로 제공될 수도 있다). 소정 MCM를 위한 4개의 프로세싱 유닛은 문자 "S", "T", "U" 및 "V"로 표기된다. 따라서, 도 3에 도시된 총 24개의 프로세싱 유닛 또는 칩이 존재한다.

각각의 프로세싱 유닛은 전송된 데이타 및 명령어의 타겟팅(targeting)을 가능하게 하기 위해 고유 식별 번호(PID)가 할당된다. MCM 중의 하나, 이 경우에는 MCM 44a가 1차 모듈로 지정되고, 그 모듈의 1차 칩 S가 서비스 프로세서에 의해 직접 제어된다. 각각의 MCM은 현장 교체 가능한 유닛(FRU)으로써 제조되어 특정 칩이 하자를 나타내게 되는 경우 모듈 또는 드로워내의 다른 부분의 필연적인 동반 교체없이도 신규의 기능 유닛으로 교환 제거될 수 있다. 이와 달리, FRU는 기술자의 숙련도, 즉 FRU가 드로워의 구성 및 고객 환경에서 얼마나 용이하게 교체할 수 있는지에 따라 드로워 자체(바람직한 실시예)가 될 수도 있을 것이다.

프로세서 그룹(40)은 도 1과 관련하여 설명되는 바와 같이 추가의 메모리 계층, 통신 패브릭 및 주변장치와 같은 다른 부품들을 포함할 수도 있는 SMP 시스템에의 사용에 적합화된다. SMP 컴퓨터 시스템을 위한 운영체계로는 특정 부품, 즉 FRU가 시스템의 나머지 부품이 실행중인 동안에 오프-라인 상태가 되도록 하여 FRU의 교체가 전체 시스템을 다운 상태로 하지 않고서도 이루어질 수 있도록 하는 운영체계가 바람직하다.

통신 패브릭을 통해 이용 가능한 상호접속외에도 성능 상의 이유로 특정의 칩간에 다양한 데이타 경로가 제공된다. 도 3에 도시된 바와 같이, 이들 경로는 약간의 드로워간 버스(46a, 46b, 46c 및 46d)와 드로워내 버스(48a, 48b 및 48c)를 포함한다. 또한 소정 프로세싱 칩을 그 동일 모듈 상의 모든 다른 프로세싱 칩에 접속시키는 모듈내 버스도 존재한다. 일례의 실시예에서, 이들 경로의 각각은 128 비트의 데이타, 40 제어 비트 및 1 에러 비트를 제공한다. 추가적으로, 도시된 바와 같은 S 칩 접속(46, 48)과 유사하게, T 칩을 다른 T 칩과 접속시키고, U 칩을 다른 U 칩과 접속시키고, V 칩을 다른 V 칩과 접속시키는 버스가 존재할 것이다. 그들 버스는 도시의 간략화를 위해 생략되었다. 이 특정 실시예에서, 모든 이들 칩간에 존재하는 버스 인터페이스가 에러 신호를 포함하기는 하지만, 그 에러 신호는 토폴로지 복잡도를 제한함에도 불구하고 최대 접속도와 에러 전파 속도를 달성하도록 도시된 칩상에서 유일하게 실제적으로 사용된다.

도 4를 참조하면, 프로세싱 유닛의 각각은 전반적으로 동일하고, 소정 칩(50)은 필수적으로 복수의 클럭 제어된 부품(52) 및 독립 실행 부품(free-running component)(54)으로 구성된다. 클럭 제어된 부품은 2개의 프로세서 코어(56a, 56b), 메모리 서브시스템(58) 및 결함 분리 회로(60)를 포함한다. 하나의 집적회로칩 상에 2개의 프로세서 코어가 포함된 것으로 도시되어 있지만, 더 많거나 더 적은 수의 프로세서 코어가 존재할 수도 있다. 각각의 프로세서 코어(56a, 56b)는 그 자신의 제어 로직과, 별도의 실행 유닛, 레지스터 및 버퍼의 세트와, 각각의 제1 레벨(L1) 캐쉬(각각의 코어내의 별도의 명령어 및 데이타 캐쉬)를 갖는다. 코어내의 L1 캐쉬 및 로드/저장 유닛은 메모리 계층으로부터 데이타를 판독하고 메모리 계층에 데이타를 기입하기 위해 메모리 서브시스템(58)과 통신한다. 메모리 서브시스템(58)은 제2 레벨(L2) 캐쉬 및 메모리 콘트롤러를 포함할 것이다. 프로세서 코어 및 메모리 서브시스템은 전술한 절에서 설명된 데이타 경로에로의 인터페이스(62)를 통해 다른 칩과 통신할 수 있다.

칩(50)의 독립 실행 부품은 스캔 통신(SCOM : Scan Communication) 콘트롤러(66) 및 스캔 링 콘트롤러(68)에 접속되는 JTAG 인터페이스(64)를 포함한다. JTAG 인터페이스(64)는 칩(50)의 내부 제어 인터페이스와 서비스 프로세서간의 액세스를 제공한다. JTAG 인터페이스(64)는 테스트 액세스 포트 및 바운더리-스캔 아키텍쳐에 관한 전기 전자 기술자 협의회(IEEE; Institute of Electrical and Electronic Engineers) 표준 1149.1에 따른다. SCOM은 시스템 클록을 실행중인 상태로 남겨두면서 내부 레지스터의 판독 및 기입을 허용하는 JTAG 프로토콜에의 연장이다.

SCOM 콘트롤러(66)는 클록 콘트롤러(70) 및 직렬-병렬 변환기(72)에 접속된다. SCOM 콘트롤러(66)는 클록이 여전히 실행하면서 서비스 프로세서로 하여금 클록 제어된 부품에 위치된 "위성"을 추가로 액세스할 수 있게 한다. 이들 SCOM 위성은 부품내의 각종 기능을 인에이블시키기 위해 사용될 수 있는 내부 제어 및 에러 레지스터를 갖는다. SCOM 콘트롤러(66)는 또한 서비스 프로세서의 수반을 요구하지 않고서도 더 많은 칩-대-칩 통신을 제공하는 외부 SCOM(또는 XSCOM) 인터페이스에도 접속될 것이다. SCOM 위성 및 XSCOM 칩-대-칩 인터페이스의 추가의 세부사항은 본 명세서의 미국 출원과 동일자로 미국 출원되고 본 명세서에 참조되는 "CROSS-CHIP COMMUNICATION MECHANISM IN DISTRIBUTED NODE TOPOLOGY"라는 명칭의 미국 특허 출원번호 10/xxx,xxx호(대리인 문서관리 번호 AUS920030211US1)에서 확인할 수 있다. 스캔 링 콘트롤러(68)는 함수 클록이 정지된 내부 래치 상태에 정상적인 JTAG 스캔 함수(LSSD 타입)를 제공한다.

프로세서 그룹(40)내의 프로세싱 유닛의 각각이 도 4에 도시된 구조를 포함하지만, 특정 프로세싱 유닛 또는 유닛의 서브세트가 추가 포트와 같이 필요시 특수한 기능장치에 제공될 것이다.

도 5를 참조하면, 결함 분리 회로(60)가 매우 상세히 도시되어 있다. 각각의 프로세싱 칩(또는 더욱 보편적으로는 SMP 시스템내의 임의의 FRU)은 결함 분리 회로내에 커운터/타이머(76)를 갖는다. 이들 카운터는 어느 부품이 시스템의 다른 "다운스트림" 부품에 전파되어 2차 에러를 발생할 수도 있는 에러의 1차 소스인지를 판정하기 위해 사용된다. 배경 기술의 설명부분에 언급된 바와 같이, 종래 기술의 결함 분리 기술은 에러가 검출될 때 개시하는 카운터를 사용하고, 에러가 링 토폴로지를 가로지른 후에 정지한다. 그러므로 카운트값이 가장 큰 카운터가 에러의 소스에 해당한다. 반대로, 본 발명은 부팅시(또는 에러 이벤트 이전의 몇몇 다른 공통 초기화 시각)에 카운터(76)의 전부를 개시시키고, 그리고나서 에러 상태를 검출하는 즉시 소정 카운터가 즉각적으로 정지된다. 카운트값이 가장 적은 카운터가 에러의 발원 소스인 부품을 식별한다.

카운터(76)는 에러 신호에 의해 작동되는 래치(78)에 의해 에러의 최초 발생시에 동결, 또는 일시중지된다. 에러 신호는 에러 정정 코드(ECC) 회로, 함수 제어 체커, 또는 코어(56a, 56b)나 메모리 서브시스템(58)에 관련된 패리티 체킹 회로로부터 내부적으로 오거나, 데이타 경로에 포함된 단일 비트 에러 라인으로부터 외부적으로 온다. 서비스 프로세서내에서 실행되는 프로세서 런타임 진단 코드는 에러가 결함 분리 회로(60)에 의해 검출되는 최초의 순간에 대응하는 최저 카운트를 어느 카운터가 갖는지를 판정하기 위해 JTAG 인터페이스를 통해 카운터(76)를 검사할 수 있다. 진단 코드는 1차 소스로써 식별된 대응 부품에 대한 에러 이벤트를 로그할 것이다. 복구 가능한 에러에 대해, 전체 프로세스는 프로세서가 여전히 실행하면서 발생한다. 이 향상된 결함 분석은 결함이 발생한 후의 더욱 신속한 수리 및 더 많은 가동시간(uptime)의 결과로 나타난다. 소정 FRU에 대한 최초 보고된 에러에 관해 서비스 호출이 이루어질 필요가 없다. 에러 정보는 진단 코드에 의해 수집될 수 있으며, 특정 FRU에 대한 에러의 수가 관련된 임계치를 초과하는 경우, 서비스 호출이 이루어진다. 이 방식은 시스템으로 하여금 반드시 하자 하드웨어를 나타내주지는 않는 분리된 "소프트 오류" 이벤트와, 결함 또는 하자를 겪고 있는 부품을 나타내주는 더 영구적인 혹은 "장치 오류" 이벤트간의 구별을 가능하게 한다.

각각의 카운터(76)에 대한 클록 (증분) 주파수는 동일하지만, 카운트의 적절한 해석을 보장하기 위해 카운터의 전부가 동기화되어야만 한다. 동기화는 부팅시에 수행될 수 있다. 예시의 실시예에서, 단일 비트 에러 라인이 동기화 신호를 위해 사용되지만, 이와 달리 별도의 신호가 제공될 수도 있다. 이러한 방식으로, 시스템이 최초로 기동될 때, 카운터(76)를 리셋시키는 동기화 로직(80)을 작동시키도록 에러 신호가 사용될 수 있다. 동기화 로직(80)은 특정 칩에 대한 에러 신호의 레이턴시를 감안한다. 즉, 상이한 칩내의 상이한 카운터는 초기화 에러 신호를 수신할시의 상대 지연량에 기초하여 0이 아닌 상이한 초기화 값을 가질 수 있을 것이다(이와 달리 이 레이턴시는 카운터 전부가 0 값으로 리셋된다면 에러 사이클의 다른 끝단에서 진단 코드에 의해 고려될 수도 있다). 모든 카운터는 진단 코드가 에러를 처리한 후에 클리어 및 재동기화된다. 특별화된 동기화 하드웨어(80) 대신, 이와 달리 JTAG 및 SCOM 인터페이스를 통해 카운터를 동기화하도록 서비스 프로세서가 사용될 수도 있다.

카운터(76)가 제한된 카운트값을 갖기 때문에, 카운터는 카운터가 그 최대값으로 증분될 때에 현재의 카운트를 0으로 하는 모듈로 패션으로 작동한다. 최대 카운트값이 상당히 작다면, 그것은 진단 코드가 카운트 결과를 오해할 수도 있도록 하여, 예를들어 실제로 그 카운터가 모듈로 랩어라운드(modulo wraparound)로 인해 더 높은 카운트를 나타낼 때에 카운터내의 제로값을 최저 카운트로써 식별한다. 이러한 문제점을 해소하기 위해, 각각의 카운터는 최대 카운트값이 시스템 주변의 최대 에러 전파 지연량, 즉 그 대부분의 시간이 에러가 프로세서 그룹(40)을 종단하는데 소요될 것임,의 2배인 사이클 타임(클록 주파수에 기초한)에 대응하도록 보장하기에 충분한 저장장치가 제공된다. 이것을 알고 있는 진단 코드는 그것과 발견된 최대 카운트간의 커다란 차이(최대 전파 지연량을 초과하는)에 의해 적은 랩어라운드 값을 인지할 수 있고, 단순히 최저 카운트를 식별할 때의 랩어라운드 값을 모듈로 계산에 넣을 수 있다(예를들어, 최대 카운트 값을 임의의 랩어라운드 값에 가산함에 의해).

복구 가능한 결함(예를들어, ECC 보호된 인터페이스 상의 단일의 "스턱" 비트)의 경우에서, 결함 분리는 더욱 어렵게 될 수 있다. 이러한 경우, 결함 분리 레지스터(FIR; Fault Isolation Register)가 클리어될 때, 통신 토폴로지의 주변으로 전파하는 중앙부에서 또다른 에러가 존재할 수도 있다. 특별한 주의가 취해지지 않는다면, FIR이 클리어될 수 있고, 새로운 중앙부에서 에러 보고가 개시하여, 중간의 2차 에러를 1차 에러로 잘못 인식하는 결과로 나타날 것이다. 이 문제점은 임의의 중간 트래픽을 제거하기 위해 통신 경로를 일시적으로 활동정지시키고, 모든 칩에서 FIR 및 카운터를 동기적으로 클리어하며, 그리고나서 통신 경로를 다시 재개시킴으로써 해소될 것이다. 이러한 방식으로, 중간 결함 전파(propagation)가 잘못된 분리 레지스터를 잘못하여 작동시킬 수 없게 된다. 이 활동정지 시간은 매우 짧아서 프로세싱 유닛 또는 I/O 장치는 통신 토폴로지를 사용하기 위한 정상적인 중재에 의한 지연량과 다르게 느끼지 못하게 되어, 고객은 진단 코드가 복구 가능한 에러의 소스를 클리어할 때의 동작정지를 느끼지 못하게 된다.

본 발명을 특정 실시예를 참조하여 설명하였지만, 이러한 설명은 제한적인 의미로 해석되어서는 안된다. 당업자라면 본 발명의 상세한 설명을 참조하여 개시된 실시예 및 본 발명의 다른 실시예에 대한 각종의 변형이 가능할 것이다. 예를들어, 본 발명은 프로세싱 유닛에 관련된 결함 분리 회로의 내용을 설명하였지만, 본 발명은 단지 프로세싱 유닛만이 아니라 특히 FRU 같은 컴퓨터 시스템의 어떠한 부품에도 적용할 수 있다. 따라서, 이러한 변형은 첨부된 특허청구범위에 한정된 바와 같은 본 발명의 정신 또는 기술사상으로부터 일탈함이 없이 이루어질 수 있는 것으로 간주된다.

Claims (21)

  1. 컴퓨터 시스템의 일부분을 통해 전파하고 2차 에러를 유발시키는 1차 에러 소스를 식별하는 방법에 있어서,
    각각 복수의 컴퓨터 부품에 관련되어 있는 복수의 카운터를 초기화하는 초기화 단계와;
    컴퓨터 부품이 작동할 때 상기 복수의 카운터를 증분시키는 증분 단계와;
    상기 복수의 카운터 중의 소정의 한 카운터에 관련된 컴퓨터 부품이 에러를 검출할 때 상기 복수의 카운터 중의 상기 소정의 한 카운터를 일시중지시키는 일시중지 단계와;
    상기 일시중지 단계 후에, 상기 복수의 카운터 중의 어느 카운터가 최저 카운트값을 갖는지를 판정하는 판정 단계
    를 포함하는 1차 에러 소스의 식별 방법.
  2. 제1항에 있어서, 상기 초기화 단계는 초기화 신호의 수신시의 상대 지연량에 기초하여 상기 복수의 카운터의 각각을 동기화하는 단계를 포함하는 것인 1차 에러 소스의 식별 방법.
  3. 제1항에 있어서, 상기 복수의 카운터 중의 한 카운터는 집적회로칩 상에 존재하고, 그 동일 회로칩 상에 있는 부품내의 에러를 검출하는 단계에 응답하여 일 시중지되는 것인 1차 에러 소스의 식별 방법.
  4. 제1항에 있어서, 상기 복수의 카운터 중의 한 카운터는 제1 집적회로칩 상에 있고, 제2 집적회로칩으로부터의 에러 신호를 검출하는 단계에 응답하여 일시중지되는 것인 1차 에러 소스의 식별 방법.
  5. 제1항에 있어서, 상기 판정 단계에 응답하여, 최저 카운트값을 갖는 카운터에 관련된 특정 컴퓨터 부품에 대한 에러 이벤트를 로그하는 단계를 더 포함하는 것인 1차 에러 소스의 식별 방법.
  6. 제1항에 있어서, 상기 복수의 카운터 중의 한 카운터는 최대 카운트값을 초과하여 한배 또는 그 이상의 배로 증분된 후의 낮은 랩어라운드 값에서 일시중지되며;
    상기 판정 단계는 최대 카운트값을 낮은 랩어라운드 값에 가산하는 단계를 포함하는 것인 1차 에러 소스의 식별 방법.
  7. 제1항에 있어서, 컴퓨터 부품간의 통신 경로를 활동정지시키는 활동정지 단계와;
    상기 활동정지 단계 후에, 컴퓨터 부품 상의 결함 분리 레지스터를 클리어하는 클리어 단계와;
    상기 클리어 단계 후에 통신 경로를 재개시키는 재개 단계를 더 포함하는 것인 1차 에러 소스의 식별 방법.
  8. 컴퓨터 시스템의 일부분을 통해 전파하고 2차 에러를 발생하는 에러의 1차 소스를 식별하는 장치에 있어서,
    복수의 컴퓨터 부품에 각각 관련되고, 각각이 컴퓨터 부품이 작동할 때에 초기화 및 증분되는 복수의 카운터와;
    상기 복수의 카운터 중의 소정 카운터에 관련된 컴퓨터 부품이 에러를 검출할 때에 상기 복수의 카운터 중의 상기 소정 카운터를 일시중지시키는 일시중지 수단과;
    상기 복수의 카운터 중의 어느 카운터가 최저 카운트값을 갖는지를 판정하는 판정 수단
    을 구비하는 1차 에러 소스의 식별 장치.
  9. 제8항에 있어서, 상기 복수의 카운터는 초기화 신호의 수신시의 상대 지연량에 기초하여 동기화되는 것인 1차 에러 소스의 식별 장치.
  10. 제8항에 있어서, 상기 복수의 카운터 중의 특정 카운터가 집적회로칩 상에 존재하고, 상기 일시중지 수단은 동일 집적회로칩 상에 있는 부품에서의 에러의 검출에 응답하여 상기 특정 카운터를 일시중지시키는 것인 1차 에러 소스의 식별 장치.
  11. 제8항에 있어서, 상기 복수의 카운터 중의 특정 카운터는 제1 집적회로칩 상에 존재하고, 상기 일시중지 수단은 제2 집적회로칩으로부터의 에러 신호의 검출에 응답하여 상기 특정 카운터를 일시중지시키는 것인 1차 에러 소스의 식별 장치.
  12. 제8항에 있어서, 최저 카운트값을 갖는 카운터에 관련된 특정 컴퓨터 부품에 대한 에러 이벤트를 로그하는 진단 코드를 더 포함하는 것인 1차 에러 소스의 식별 장치.
  13. 제8항에 있어서, 각각의 카운터에는 각각의 카운터에 대한 최대 카운트값이 컴퓨터 부품 주변의 최대 에러 전파 지연량의 적어도 2배인 사이클 타임에 대응하도록 충분한 저장장치가 제공되는 것인 1차 에러 소스의 식별 장치.
  14. 제8항에 있어서, 상기 판정 수단은 컴퓨터 부품간의 통신 경로를 활동정지시키고, 통신 경로가 활동정지되는 동안 컴퓨터 부품 상의 결함 분리 레지스터를 클리어하며, 그리고나서 통신 경로를 재개시키는 것인 1차 에러 소스의 식별 장치.
  15. 컴퓨터 시스템에 있어서,
    복수의 프로세싱 유닛과;
    상기 프로세싱 유닛에 프로그램 명령어 및 연산자 데이타를 제공하는 메모리 계층과;
    상기 복수의 프로세싱 유닛 중의 여러 프로세싱 유닛간의 통신을 허가하는 데이타 경로와;
    상기 복수의 프로세싱 유닛에 각각 관련되고, 각각이 상기 복수의 프로세싱 유닛이 작동할 때 초기화 및 증분되는 복수의 카운터와;
    상기 복수의 카운터 중의 소정 카운터에 관련된 프로세싱 유닛이 에러를 검출할 때에 상기 복수의 카운터 중의 상기 소정 카운터를 일시중지시키는 결함 분리 로직과;
    상기 복수의 카운터 중의 어느 카운터가 최저 카운트값을 포함하는지를 판정하는 수단
    을 포함하는 컴퓨터 시스템.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
KR20040027491A 2003-04-28 2004-04-21 분산된 노드 환경에서의 현장 교체 가능형 유닛의 결함분리를 위한 1차 에러 소스의 식별 방법, 메카니즘 및그의 컴퓨터 시스템 KR100637780B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US10/425,441 2003-04-28
US10/425,441 US20040216003A1 (en) 2003-04-28 2003-04-28 Mechanism for FRU fault isolation in distributed nodal environment

Publications (2)

Publication Number Publication Date
KR20040093405A KR20040093405A (ko) 2004-11-05
KR100637780B1 true KR100637780B1 (ko) 2006-10-25

Family

ID=33299511

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20040027491A KR100637780B1 (ko) 2003-04-28 2004-04-21 분산된 노드 환경에서의 현장 교체 가능형 유닛의 결함분리를 위한 1차 에러 소스의 식별 방법, 메카니즘 및그의 컴퓨터 시스템

Country Status (3)

Country Link
US (1) US20040216003A1 (ko)
JP (1) JP2004326775A (ko)
KR (1) KR100637780B1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7379418B2 (en) * 2003-05-12 2008-05-27 International Business Machines Corporation Method for ensuring system serialization (quiesce) in a multi-processor environment
US7801702B2 (en) 2004-02-12 2010-09-21 Lockheed Martin Corporation Enhanced diagnostic fault detection and isolation
US20050223288A1 (en) * 2004-02-12 2005-10-06 Lockheed Martin Corporation Diagnostic fault detection and isolation
US7584420B2 (en) * 2004-02-12 2009-09-01 Lockheed Martin Corporation Graphical authoring and editing of mark-up language sequences
US7177662B2 (en) * 2004-04-02 2007-02-13 Broadcom Corporation Multimode wireless communication device
US7447957B1 (en) * 2005-08-01 2008-11-04 Sun Microsystems, Inc. Dynamic soft-error-rate discrimination via in-situ self-sensing coupled with parity-space detection
JP4586750B2 (ja) * 2006-03-10 2010-11-24 日本電気株式会社 コンピュータシステムおよび起動監視方法
US7596724B2 (en) * 2006-03-31 2009-09-29 Intel Corporation Quiescence for retry messages on bidirectional communications interface
US20080052281A1 (en) 2006-08-23 2008-02-28 Lockheed Martin Corporation Database insertion and retrieval system and method
US20080256400A1 (en) * 2007-04-16 2008-10-16 Chih-Cheng Yang System and Method for Information Handling System Error Handling
JP4512621B2 (ja) * 2007-08-06 2010-07-28 株式会社日立製作所 分散システム
US8855093B2 (en) * 2007-12-12 2014-10-07 Broadcom Corporation Method and system for chip-to-chip communications with wireline control
US8667504B2 (en) * 2008-06-20 2014-03-04 Netapp, Inc. System and method for achieving high performance data flow among user space processes in storage system
US20100306442A1 (en) * 2009-06-02 2010-12-02 International Business Machines Corporation Detecting lost and out of order posted write packets in a peripheral component interconnect (pci) express network
JPWO2012172682A1 (ja) * 2011-06-17 2015-02-23 富士通株式会社 演算処理装置及び演算処理装置の制御方法
JP5970987B2 (ja) * 2012-07-05 2016-08-17 富士通株式会社 故障検出装置、故障検出方法および故障検出プログラム
EP2951706B1 (en) * 2013-01-30 2017-06-21 Hewlett-Packard Enterprise Development LP Controlling error propagation due to fault in computing node of a distributed computing system
CN103198000A (zh) * 2013-04-02 2013-07-10 浪潮电子信息产业股份有限公司 一种linux系统下的故障内存位置定位方法
US10579499B2 (en) * 2017-04-04 2020-03-03 International Business Machines Corporation Task latency debugging in symmetric multiprocessing computer systems
US10642693B2 (en) * 2017-09-06 2020-05-05 Western Digital Technologies, Inc. System and method for switching firmware
US10817361B2 (en) 2018-05-07 2020-10-27 Hewlett Packard Enterprise Development Lp Controlling error propagation due to fault in computing node of a distributed computing system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5023779A (en) 1982-09-21 1991-06-11 Xerox Corporation Distributed processing environment fault isolation
US5383201A (en) 1991-12-23 1995-01-17 Amdahl Corporation Method and apparatus for locating source of error in high-speed synchronous systems
US20020194319A1 (en) 2001-06-13 2002-12-19 Ritche Scott D. Automated operations and service monitoring system for distributed computer networks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS594054B2 (ko) * 1979-04-17 1984-01-27 Hitachi Ltd
US4679195A (en) * 1985-04-10 1987-07-07 Amdahl Corporation Error tracking apparatus in a data processing system
US4852095A (en) * 1988-01-27 1989-07-25 International Business Machines Corporation Error detection circuit
US4916697A (en) * 1988-06-24 1990-04-10 International Business Machines Corporation Apparatus for partitioned clock stopping in response to classified processor errors
US5758065A (en) * 1995-11-30 1998-05-26 Ncr Corporation System and method of establishing error precedence in a computer system
US6516429B1 (en) * 1999-11-04 2003-02-04 International Business Machines Corporation Method and apparatus for run-time deconfiguration of a processor in a symmetrical multi-processing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5023779A (en) 1982-09-21 1991-06-11 Xerox Corporation Distributed processing environment fault isolation
US5383201A (en) 1991-12-23 1995-01-17 Amdahl Corporation Method and apparatus for locating source of error in high-speed synchronous systems
US20020194319A1 (en) 2001-06-13 2002-12-19 Ritche Scott D. Automated operations and service monitoring system for distributed computer networks

Also Published As

Publication number Publication date
US20040216003A1 (en) 2004-10-28
JP2004326775A (ja) 2004-11-18
KR20040093405A (ko) 2004-11-05

Similar Documents

Publication Publication Date Title
KR101696124B1 (ko) 고성능 인터커넥트 물리 계층
DeOrio et al. A reliable routing architecture and algorithm for NoCs
Prodromou et al. Nocalert: An on-line and real-time fault detection mechanism for network-on-chip architectures
Bartlett et al. Commercial fault tolerance: A tale of two systems
US6948092B2 (en) System recovery from errors for processor and associated components
US7134117B2 (en) Instruction tracing in data processing systems
US7668923B2 (en) Master-slave adapter
US7415630B2 (en) Cache coherency during resynchronization of self-correcting computer
US7770067B2 (en) Method for cache correction using functional tests translated to fuse repair
EP0749069B1 (en) Synchronized data transmission between elements of a processing system
US8707094B2 (en) Fault tolerant stability critical execution checking using redundant execution pipelines
US7398427B2 (en) Isolation of input/output adapter error domains
KR100337215B1 (ko) 불량 패리티 또는 제로 바이트 인에이블을 통한 pci장치로의입출력 로드/기억동작을 위한 향상된 오류 처리 방법
US7237144B2 (en) Off-chip lockstep checking
US7506217B2 (en) Apparatus and method for software-based control flow checking for soft error detection to improve microprocessor reliability
KR100570134B1 (ko) 자체 치유 칩과 칩 사이의 인터페이스
US6151689A (en) Detecting and isolating errors occurring in data communication in a multiple processor system
EP0260584B1 (en) Fault tolerant computer achitecture
US6393582B1 (en) Error self-checking and recovery using lock-step processor pair architecture
AU616213B2 (en) Method and apparatus for synchronizing a plurality of processors
CN100375050C (zh) 高可靠性处理器的片上机制
CA1259415A (en) High level self-checking intelligent i/o controller
US6886107B2 (en) Method and system for selecting a master controller in a redundant control plane having plural controllers
US7137028B2 (en) Method and apparatus for improving reliability in microprocessors
US9449717B2 (en) Memory built-in self-test for a data processing apparatus

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee