KR20080032167A - 컴퓨터 시스템의 제어 장치 및 방법 - Google Patents

컴퓨터 시스템의 제어 장치 및 방법 Download PDF

Info

Publication number
KR20080032167A
KR20080032167A KR1020087003207A KR20087003207A KR20080032167A KR 20080032167 A KR20080032167 A KR 20080032167A KR 1020087003207 A KR1020087003207 A KR 1020087003207A KR 20087003207 A KR20087003207 A KR 20087003207A KR 20080032167 A KR20080032167 A KR 20080032167A
Authority
KR
South Korea
Prior art keywords
computer system
error
functional units
mode
functional unit
Prior art date
Application number
KR1020087003207A
Other languages
English (en)
Inventor
라인하르트 바이베를레
베른트 뮐러
에베르하르트 뵐
요르크 콜라니
라이너 그멜리히
Original Assignee
로베르트 보쉬 게엠베하
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20080032167A publication Critical patent/KR20080032167A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/006Identification
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/845Systems in which the redundancy can be transformed in increased performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Control By Computers (AREA)
  • Multi Processors (AREA)

Abstract

본 발명은 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하는 컴퓨터 시스템의 제어 방법 및 장치에 관한 것으로, 사전 설정 가능한 조건에 따라 상기 기능 유닛들의 활성화 및/또는 비활성화가 이루어진다.
기능 유닛, 성능 모드, 비교 모드, 비교 소자, 메모리 소자, 컴퓨터 시스템

Description

컴퓨터 시스템의 제어 장치 및 방법{Device and method for controlling a computer system}
본 발명은 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하는 컴퓨터 시스템의 제어 장치 및 방법에 관한 것이다.
마이크로 컨트롤러(μC) 또는 ASIC과 같은 복합 반도체 디바이스의 제조는 에러의 빈도가 높다. 구조체의 크기가 점점 더 작아지면, 도핑은 정적 공정이기 때문에, 장기적으로도 제조상의 에러가 불가피하다. 많은 노력과 개발에도 불구하고 에러 빈도는 미래에도 증가할 것이다. 수율(yield), 즉 제조된 디바이스의 개수에 대한 정확히 작동하는 디바이스들의 비율은 공지된 제조 과정에 있어서 약 90%(즉, 이 경우에도 불량은 이미 10%)이지만, 훨씬 더 낮을 수도 있다. 수율을 높이기 위한 메커니즘은 직접적으로 비용을 감소시킨다. 또한 테스트- 및 제조 분석 면에서, 에러가 있는 디바이스들을 다룰 수 있어야 한다는 조건이 강화된다.
플래시, RAM 또는 ROM과 같은 메모리 모듈의 제조시 에러를 허용하기 위해, 오늘날 이미 부분적으로 사용되는 수단은 에러 코렉팅 코드(error correcting code, ECC)이다. 이 경우, 데이터 비트의 저장 외에 테스트 비트도 함께 저장된다. 테스트 비트는, 단지 1 비트(또는 공지된 최대 개수의 비트)의 왜곡시에도 에 러가 추가 로직에 의해 검출되고 교정되도록 되어 있다. 이것은, 전체 디바이스(또는 디바이스의 상응하는 부분 소자)에 에러가 있더라도 정확한 결과를 제공하게 한다. 테스트 비트를 함께 저장하는 것은 많은 추가 비용을 필요로 하는 한편, 필요한 추가 로직은 실제로 많은 추가 비용을 유발하지 않는다.
반도체 회로, 특히 컴퓨터 시스템 내의 반도체 회로에서 에러는 상기 회로의 작동시에도 나타난다. 대부분의 경우에, 영구적인 에러의 경우에도 체계적 형태의 높은 가용성을 보장하는 것은 불가능하다. 소수의 예외들 중 하나가 메모리용 ECC-메커니즘이다. 프로세서, 특히 CPU에서의 과도 에러에 대해, 복구(recovery) 또는 리셋(reset)-방법이 공지되어 있다. 그러나, 실행 유닛 내의 에러에 대해서는 영구 에러를 허용하기 위한 실재적이고 경제적인 구상이 공지되어 있지 않다.
본 발명의 제 1 목적은, 특히 에러가 있는 기능 유닛들을 포함하는 디바이스들에도 사용이 가능해짐으로써, μC 또는 반도체 디바이스들의 제조 공정시 수율을 개선하는 것이다. 본 발명의 제 2 목적은, 작동중 디바이스들의 가용성을 높이는 것이다. 이를 위해, 하나의 디바이스에서 에러를 가진 실행 유닛들(예컨대 코어, ALU, 프로세서들)을 식별할 수 있고, 상기 디바이스가 사용되는 시스템의 작동시 비상 작동 또는 그레이스풀-디그러데이션(graceful-degradation)을 가능하게 하는 수단들이 제공되어야 한다.
적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하는 예컨대 μC인 반도체 회로가 고려된다. 제조 과정의 종료시, 조립시, 진단시 또는 작동중의 테스트 단계에서, 테스트 프로그램에 의해 잠재적으로 에러가 있는 기능 유닛들이 식별된다. 이것은, 바람직하게 예컨대 전환- 및 비교 유닛에서의 전환- 및 비교 기능에 의해 이루어질 수 있고, 상기 전환- 및 비교 유닛은 기능 유닛의 출력 신호들을 적어도 하나의 다른 기능 유닛의 출력 신호들 및/또는 다른 기준 값들과 비교한다. 어떤 기능 유닛들이 에러를 갖는지가 메모리 소자 내에 저장된다. 상기 기능 유닛들은 예컨대 전환- 및 비교 유닛 또는 중단 장치에 의해 비활성화된다. 디바이스는 에러가 있는 기능 유닛을 포함하더라도 사용 가능하고 기능을 수행할 수 있다.
적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하는 컴퓨터 시스템을 제어하기 위한 방법으로서, 사전 설정 가능한 조건에 따라 기능 유닛들의 활성화 및/또는 비활성화가 이루어지는 방법이 바람직하다.
컴퓨터 시스템 내의 에러 검출을 위한 적어도 하나의 제 1 방법 단계 및/또는 에러가 있는 기능 유닛들의 식별을 위한 적어도 하나의 제 2 방법 단계의 결과에 따라 기능 유닛들의 활성화 및/또는 비활성화가 이루어지는 것을 특징으로 하는 방법이 바람직하다.
컴퓨터 시스템이 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하고, 컴퓨터 시스템의 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들이 적어도 2개의 작동 모드 사이로 전환되고, 제 1 작동 모드는 비교 모드에 해당하고, 제 2 작동 모드는 실행 모드에 해당하는 것을 특징으로 하는 방법이 바람직하다.
비교 모드에서 비교될 기능 유닛들의 출력 신호 내의 에러가 검출되고, 비교 모드는 컴퓨터 시스템 내의 에러의 검출을 위한 제 1 방법 단계에 해당하는 것을 특징으로 하는 방법이 바람직하다.
컴퓨터 시스템의 선택된 기능 유닛들이 작동 모드로 전환되고, 상기 작동 모드에서 에러가 있는 기능 유닛들의 식별은 상기 기능 유닛들의 출력 신호들이 기준값과 비교됨으로써 가능하고, 상기 작동 모드는 컴퓨터 시스템 내의 에러가 있는 기능 유닛의 식별을 위한 제 2 방법 단계에 해당하는 것을 특징으로 하는 방법이 바람직하다.
기준값들은 컴퓨터 시스템의 메모리 장치에 저장되고, 작동 모드로 전환시 에러 식별을 위해 메모리 장치로부터 판독되는 것을 특징으로 하는 방법이 바람직하다.
컴퓨터 시스템의 작동 중에 적어도 2개의 작동 모드 사이의 전환은 주기적으로 또는 필요시 이루어지는 것을 특징으로 하는 방법이 바람직하다.
적어도 2개의 작동 모드 사이의 전환은 에러가 있는 기능 유닛들의 에러 검출 및/또는 식별을 위해 이루어지는 것을 특징으로 하는 방법이 바람직하다.
에러가 있는 것으로 식별된, 컴퓨터 시스템의 기능 유닛들에 대해 구성 상태(status) 및/또는 에러 상태(status)가 형성되는 것을 특징으로 하는 방법이 바람직하다.
상기 기능 유닛의 구성 상태 또는 에러 상태에 대한 정보는, 반도체 시스템의 초기화 및/또는 작동시 판독될 수 있도록 메모리 장치 내에 저장되고, 저장된 정보는, 작동시 비활성화로 표시된 유닛의 사용이 가능하도록 처리됨으로써, 기능 유닛의 비활성화가 이루어지는 것을 특징으로 하는 방법이 바람직하다.
컴퓨터 시스템의 활성화될 수 있는 및/또는 비활성화될 수 있는 모든 기능 유닛들에 대해 구성 상태 및/또는 에러 상태가 형성되는 것을 특징으로 하는 방법이 바람직하다.
활성화될 수 있는 및/또는 비활성화될 수 있는 기능 유닛들의 구성 상태 및/또는 에러 상태에 대한 정보가 메모리 장치 내에 저장되는 것을 특징으로 하는 방법이 바람직하다. 컴퓨터 시스템이 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하고, 컴퓨터 시스템 내의 적어도 하나의 동일하거나 또는 동일한 방식의 기능 유닛이 표준적으로 비활성화되는 것을 특징으로 하는 방법이 바람직하다.
비활성화된 기능 유닛의 구성 상태에 대한 적어도 하나의 정보는 메모리 장치 내에 저장되는 것을 특징으로 하는 방법이 바람직하다.
에러가 있는 기능 유닛의 식별시 또는 식별 후에 컴퓨터 시스템의 재구성은 적어도 에러가 있는 것으로 식별된 기능 유닛이 비활성화됨으로써 이루어지는 것을 특징으로 하는 방법이 바람직하다.
에러로 인한 기능 유닛의 비활성화 경우에 상기 기능 유닛의 구성 상태 및/또는 에러 상태에 대한 정보는 메모리 장치에 기록되는 것을 특징으로 하는 방법이 바람직하다.
에러가 있는 기능 유닛의 식별시 또는 식별 후에 컴퓨터 시스템의 재구성이 이루어지고, 에러가 있는 것으로 식별된 기능 유닛이 비활성화되고, 표준적으로 비활성화되지만 에러가 없는 기능 유닛은 활성화되는 것을 특징으로 하는 방법이 바람직하다.
에러 검출을 위한 제 1 방법 단계는 비교 모드에서 컴퓨터 시스템의 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들의 정상적인 작동에 해당하는 것을 특징으로 하는 방법이 바람직하다.
에러가 있는 유닛의 식별을 위한 제 2 방법 단계는 적어도 하나의 기능 유닛에서 에러 검출 루틴의 처리 및 에러 검출 루틴의 결과와 기준값의 비교에 해당하는 것을 특징으로 하는 방법이 바람직하다.
에러가 있는 유닛의 식별을 위한 방법 단계의 실시 전에 또는 실시시에 동일하거나 또는 동일한 방식의 기능 유닛에서 상이한 기능들, 명령들, 프로그램세그먼트들 또는 프로그램의 실행을 가능하게 하는 컴퓨터 시스템의 재구성이 이루어지는 것을 특징으로 하는 방법이 바람직하다.
에러 검출 루틴의 기준값들은 에러 검출 루틴과 함께 메모리 장치에 저장되는 것을 특징으로 하는 방법이 바람직하다.
에러가 있는 기능 유닛의 식별시 또는 식별 후에 컴퓨터 시스템의 재구성이 이루어지고, 적어도 에러가 있는 것으로 식별된 기능 유닛이 비활성화되는 것을 특징으로 하는 방법이 바람직하다.
에러로 인해 기능 유닛이 비활성화되는 경우에 상기 기능 유닛의 구성 상태 및 에러 상태가 메모리 장치에 저장되는 것을 특징으로 하는 방법이 바람직하다. 컴퓨터 시스템의 재구성 전에 처리를 위해 제 1 작동 모드에서 정해진 기능들, 명령들, 프로그램세그먼트들 또는 프로그램의 적어도 일부는 컴퓨터 시스템의 재구성 후에 제 2 작동 모드에서 처리되는 것을 특징으로 하는 방법이 바람직하다.
제 1 작동 모드는 비교 모드에 해당하고, 제 2 작동 모드는 실행 모드 또는 활성 기능 유닛에 의한 에러 모드에 해당하는 것을 특징으로 하는 방법이 바람직하다.
기능 유닛들의 비활성화는 컴퓨터 시스템의 기능 유닛들에 대한 또는 기능 유닛들 사이의 전기 접속의 차단에 의해 비가역적으로 이루어지는 것을 특징으로 하는 방법이 바람직하다.
컴퓨터 시스템에 대한 전기 접속의 차단은 접속의 적어도 일부에 대한 전기 작용에 의해 이루어지는 것을 특징으로 하는 방법이 바람직하다.
컴퓨터 시스템의 작동 중에 그리고 컴퓨터 시스템의 부분이거나 또는 상기 컴퓨터 시스템에 영구적으로 연결된 장치의 사용시 기능 유닛들의 활성화 및/또는 비활성화가 이루어지는 것을 특징으로 하는 방법이 바람직하다.
적어도 2개의 동일하거나 또는 동일한방식의 기능 유닛들을 가진 컴퓨터 시스템의 제어 장치로서, 컴퓨터 시스템의 기능 유닛의 활성화 및/또는 비활성화를 사전 설정 가능한 조건에 따라 가능하게 하는 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다. 컴퓨터 시스템 내의 에러 검출 및/또는 에러가 있는 기능 유닛의 식별을 가능하게 하기 위한 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다.
컴퓨터 시스템의 적어도 2개의 동일하거나 또는 동일한방식의 기능 유닛들이 적어도 2개의 작동 모드 사이에서 전환하는 것을 가능하게 하는 전환 수단을 포함하고, 제 1 작동 모드는 비교 모드에 해당하고, 제 2 작동 모드는 실행 모드에 해당하는 것을 특징으로 하는 장치가 바람직하다.
작동 모드에서 컴퓨터 시스템의 선택된 기능 유닛들의 전환을 위한 수단을 포함하고, 상기 작동 모드에서 에러가 있는 기능 유닛의 식별은 상기 기능 유닛들의 출력 신호들과 기준값의 비교에 의해 가능한 것을 특징으로 하는 장치가 바람직하다.
기능 유닛들의 출력 신호들을 적어도 하나의 다른 기능 유닛의 출력 신호들 또는 기준값과 비교하고 불일치시 에러 정보를 제공하기 위한 비교 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다.
기능 유닛들의 출력 신호들을 위한 기준값이 저장된 메모리 수단을 포함하고, 메모리 수단으로부터 기준값을 비교 장치에 제공하기 위한 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다.
컴퓨터 시스템의 활성화될 수 있는 및/또는 비활성화될 수 있는 모든 기능 유닛에 대한 구성 상태 및/또는 에러 상태를 형성하기 위한 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다.
활성화될 수 있는 및/또는 비활성화될 수 있는 기능 유닛들의 구성 상태 또는 에러 상태에 대한 적어도 하나의 정보가 저장된 데이터의 저장을 위한 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다.
데이터의 저장 수단인 불휘발성 메모리 수단을 포함하는 장치가 포함하는 것이 바람직하다.
컴퓨터 시스템의 초기화 및/또는 작동시 메모리 장치에 저장된 기능 유닛의 구성 상태 및/또는 에러 상태를 판독하고, 판독된 데이터 및 비교 장치의 에러 신호에 따라 기능 유닛들의 활성화 및/또는 비활성화를 실행할 수 있는 수단을 포함하는 것을 특징으로 하는 장치가 바람직하다.
기능 유닛들의 비활성화를 비가역적으로 실행할 수 있는 수단을 포함하는 장치가 바람직하다.
기능 유닛들의 비가역적 비활성화를 위해 상기 기능 유닛에 대한 또는 상기 기능 유닛 내의 적어도 하나의 전기 접속을 중단시키는 수단을 포함하는 장치가 바람직하다.
전기 접속의 적어도 일부에 대한 전기 작용으로 인한 기능 유닛에 대한 또는 기능 유닛 내의 전기 접속을 중단시킬 수 있는 수단을 포함하는 장치가 바람직하다.
에러 검출, 기능 유닛의 활성화 및/또는 비활성화를 위한 수단은 컴퓨터 시스템의 부분이거나 또는 컴퓨터 시스템에 영구적으로 연결되는 것을 특징으로 하는 장치가 바람직하다.
다른 장점들 및 바람직한 실시예들은 청구범위의 특징 및 하기 설명에서 제시된다.
도 1은 스위칭 로직 및 처리 로직을 포함하는 일반 전환 소자들,
도 2는 전환 소자들과 메모리 소자와의 접속,
도 3은 메모리 소자의 사용하여 수율을 향상시키는 방법,
도 4는 가용성, 그레이스풀-디그러데이션(graceful-degradation) 및 비상 작동을 향상시키는 방법,
도 5는 전환 소자들과 제어 소자들과의 접속,
도 6은 제어 소자들을 사용하여 수율을 향상시키는 방법, 및
도 7은 가능한 메모리 소자의 구성을 나타낸다.
하기에서, 실행 유닛은 프로세서/코어/CPU, FPU(floating point unit), DSP(digital singalprocessor), 코프로세서(Coprocessor) 또는 ALU(arithmetic logical unit)일 수 있다.
도 1에는 전환- 및 비교 유닛의 일반적 경우가 2개 이상의 실행 유닛들의 사용에 대해 도시된다. 고려되는 n 실행 유닛들로부터, n개의 신호들( N140,...,N14n)이 전환- 및 비교 소자들(N100)에 전달된다. 상기 소자들은 상기 입력 신호들로부터 n개까지의 출력 신호들(N160,..,N16n)을 발생시킬 수 있다. 가장 간단한 경우에, "순수 성능 모드"에서, 모든 신호들(N14i)은 상응하는 출력 신호들(N16i)에 전달된다. 반대의 경우, "순수 비교 모드"에서 모든 신호들(N140,...N14n)은 출력 신호들(N16i) 중 정확히 하나에만 전달된다.
이 도면에, 가능한 여러 모드들이 어떻게 형성될 수 있는지가 나타난다. 이 를 위해 N100은 스위칭 로직(N110)의 논리 소자들을 포함한다. 스위칭 로직의 과제는, 어떤 입력들이 출력들로 스위칭되지 않는지, 즉 어떤 입력들이 무시되는지, 결론 없는 상태이거나 또는 비활성 상태인지를 결정하는 것이다. 스위칭 로직의 상기 기능은 하기에서 주로 스위칭 로직의 제 1 기능이라고 한다. 또한 스위칭 로직(N110)은, 얼마나 많은 출력 신호들이 있으며, 어떤 입력 신호들이 어떤 출력 신호들에 기여하는지를 결정한다. 여기에서 입력 신호는 최대, 단 하나의 출력 신호에 기여할 수 있다. 스위칭 로직의 상기 기능은 하기에서 주로 스위칭 로직의 제 2 기능이라고 한다.
수학적 형태로 다르게 표현하면, 신호들의 차단이 없으면, 스위칭 로직에 의해, 집합{N140...N14n}의 각각의 원소에 집합{N160, N16n}의 원소를 할당하는 함수가 규정된다. 개별 입력 신호가 차단되면, 일반적으로 스위칭 로직에 의해, {140,...N14n}(차단되지 않은 신호들)의 각각의 결정된 부분 집합의 원소에 집합{N160,...,N16n}의 원소가 할당되는 함수가 규정된다.
처리 로직(N120)은 출력들(N16i)의 각각에 대해, 어떤 형태로 입력들이 출력 신호에 기여하는지를 결정한다. 예컨대 다양한 변형 가능성을 기술하기 위해, 보편성의 제약 없이 출력(N160)이 신호들(N141,...,N14m)에 의해 생성되는 것이 가정된다. m=1인 경우, 간단하게 신호가 연결되고, m=2의 경우, 신호들(N141, N142)이 비교된다. 상기 비교는 동기식 또는 비동기식으로 실행될 수 있고, 비트마다, 상위 비트만에 대해서만, 또는 허용 대역으로 실행될 수 있다. 바람직한 실시예는, 실행 유닛들이 록스텝(lockstep)-작동 모드(즉, 동일 클록에서 동일 명령)로 작동 하는 것이다. 고정 클록- 또는 위상 오프셋도 바람직한 해결 방법이다.
m>=3인 경우, 다양한 가능성들이 있다.
첫 번째는, 모든 신호들이 비교되고, 적어도 2개의 상이한 값들이 존재할 경우, 선택적으로 신호화될 수 있는 하나의 에러를 검출하는 것이다.
두 번째는, m으로부터 k를 선택하는 것이다(k>m/2). 이는 비교기를 사용함으로써 이루어질 수 있다. 신호들 중 하나가 다른 것으로 검출되면, 선택적으로 에러 신호가 발생될 수 있다. 총 3개의 신호들이 상이하면, 가능한 상이한 에러 신호가 생성될 수 있다.
세 번째는, 상기 값들을 알고리즘에 제공하는 것이다. 이것은 예컨대 평균값 또는 중간값(median)의 형성, 또는 에러 허용 알고리즘(FTA)의 이용일 수 있다. 상기 FTA는 입력값들의 극값들을 삭제하고 나머지 값들에 대한 평균을 구하는 방식을 실시하는 것에 기초한다. 이러한 평균화는 나머지 값들의 전체 집합에 의해, 또는 바람직하게는 HW로 간단하게 형성되는 부분 집합에 의해 실시될 수 있다. 이러한 경우, 값들을 실제로 비교하는 것이 항상 필요하지는 않다. 평균값 형성시 예컨대 단지 더하고 나누면 되고, FTM, FTA 또는 중간값은 부분적인 분류를 필요로 한다. 경우에 따라, 본 실시예에서 극값들이 아주 큰 경우에도, 선택적으로 에러 신호가 출력될 수도 있다.
다수의 신호들을 하나의 신호로 처리하는 상기 여러 가능성들은 간단하게 비교 연산이라고 한다. 처리 로직의 과제는, 각각의 출력 신호 그리고 이로써 관련 입력 신호들을 위한 비교 연산의 정확한 형태를 결정하는 것이다. 이것은 하기에 서 처리 로직의 제 2 기능이라고 한다. 하기에서, 상기 기능에 의해 일반적으로 가능한, 에러가 있는 실행 유닛들의 식별을 처리 로직의 제 1 기능이라고 한다.
스위칭 로직(N110(즉, 전술한 기능))의 정보와 처리 로직(즉 출력 신호당, 즉 함수 값당 비교 연산의 결정)의 정보의 조합이 모드 정보이고, 이것은 모드를 결정한다. 상기 정보는 일반적 경우, 물론 다치적이고, 즉 하나의 논리 비트에 대해서만 나타낼 수 없다. 이론상 가능한 모든 모드들이 주어진 실행에서 바람직하지 않고, 바람직하게는 허용되는 모드의 개수는 제한된다. 하나의 비교 모드만 주어진 2개의 실행 유닛들만 있는 경우에, 전체 정보는 하나의 논리 비트만으로 압축될 수 있다.
일반적인 경웅에, 성능 모드로부터 비교 모드로의 전환은, 실행 유닛들이 성능 모드들에서 상이한 출력들로 나타나고, 비교 모드에서는 동일한 출력들로 나타나는 것을 특징으로 한다. 바람직하게 이것은, 성능 모드에서는 부분 시스템에서 고려될 수 있는 모든 입력 신호들(N14i)이 해당 출력 신호들(N16i)로 직접 전환되는 한편, 비교 모드에서는 입력 신호들 모두 하나의 출력으로 나타나는, 실행 유닛들의 부분 시스템이 제공됨으로써 달성될 수 있다. 대안으로서, 상기 전환은 페어링들(pairing)이 변경됨으로써도 구현될 수 있다. 이로써, 본 발명의 주어진 특징에서 허용된 모드들의 개수가 성능 모드 및 비교 모드의 경우가 되게 제한될 수 있더라도, 일반적인 경우 성능 모드 및 비교 모드라고 할 수 없다. 그러나, 항상 성능 모드로부터 비교 모드로의 전환(반대로도)이라고는 할 수 있다.
하기에는, 어떻게 이러한 전환- 및 비교 소자들 그리고 몇몇의 다른 소자들 을 이용해서, 특정 조건에서 예컨대 μC와 같은 반도체 디바이스들의 제조 공정상의 수율을 향상시킬 수 있는지 설명된다.
기본 개념이 하기에 간략하게 기술된다.
예컨대 μC와 같은 디바이스 상에는 작동시보다 더 많은 실행 유닛들이 필요하다.
따라서, 작동중 정확하게 작동하는 실행 유닛들의 전체 개수보다 더 작은 개수의 실행 유닛으로도 작동이 가능하다. 전제 조건은 정확하게 구동하지 않는 유닛들이 식별되고, 이들이 전체 시스템에 영향을 줄 수 없다는 것이다. 전술한 전환- 및 비교 유닛의 사용에 의해, 에러가 있는 실행 유닛들의 신호들이 스위칭 로직(N110)을 통해 시스템 내에서 추가로 전파되는 것이 방지될 수 있다.
처리 로직(N120)은, 상이한 실행 유닛들의 신호들의 비교를 가능하게 한다. 적합한 비교에 의해 에러가 있는 실행 유닛들이 식별될 수 있다. 이것은 충분히 에러를 커버하는 테스트 프로그램의 사용함으로써 가능하다. 경우에 따라 식별을 위한 외부 수단도 사용될 수 있다.
어떠한 시점, 예컨대 대역 끝부분, 초기화 시간 또는 조립시에 상기 테스트가 실시되고, 결과(에러가 있는 실행 유닛들의 명백한 식별)가 가능한 비휘발성 메모리에 저장되고, 상기 결과는 에러가 있는 실행 유닛들의 신호들이 작용하지 않게, 스위칭 로직(N110)에 영향을 줌으로써, 에러가 있는 실행 유닛들이 있다고 하더라도, 더 사용될 수 있는, 정확하게 작동하는 실행 유닛들을 가진 μC가 얻어진다.
이렇게 제품에서 이루어진 에러 허용에 의해 수율이 향상되는데, 그 이유는 정확하게 작동하는 실행 유닛들의 개수가 충분한 동안에는, 에러가 있는 디바이스들도 사용될 수 있기 때문이다. 이는 적용에 의존한다.
하기에는 상기 개념이 구체적으로 설명된다.
전환- 및 비교 유닛의 가능한 논리적 형태는 전술되었다. 소자들이 상기와 같이 제공되는 것과, 전술된 서브 소자들이 스위칭- 및 처리 로직으로서 제공되는 것은 여기에서 설명되는 본 발명을 적용하는데 바람직하기는 하지만, 필수적인 것은 아니다.
스위칭 로직의 제 1 기능에 있어서, 잠재적으로 에러가 있는 소자들의 출력들이 적절한 형태로 무시될 수 있는 것이 결정적으로 중요하다. 이것은, 상기 출력들이 예컨대 스위치에 의해 중단됨으로써 이루어질 수 있다. 다른 방법은, 출력들을 에러가 있는 신호에 대해 표준 "픽업"으로 전환하는 것이다. 또 다른 방법은 출력 신호들을 무효하다고 표시하는 것이다. 추가로 또는 대안으로서 사용 가능한 또 다른 방법은, 상응하는 소자들 자체가 비활성화됨으로써, 상기와 같은 출력 신호가 나타나는 것을 막는 것이다. 이것도 소자들의 비활성화, 정지, 클록 중단 또는 입력 신호들의 중단에 의해 구현될 수 있다. 이것은, 파워 손실이 최소화되고 이로써 수명, 신뢰도 및 온도 부하가 최적화되는 장점을 갖는다. 하기에서, 어떤 수단에 의해 그 출력이 무시될 수 있는 모든 실행 유닛들은 수동적 또는 비활성이라고 한다.
처리 로직의 제 1 기능에 있어서는, 우선 에러가 있는 소자들이 식별될 수 있는 것이 중요하다. 바람직한 방법은, 모든 실행 유닛들이 병렬로 동일한 프로그램을 실행하게 하는 것이다. 이것은, 실행 유닛들이 록스텝-모드로 또는 고정 클록- 또는 위상 오프셋으로 작동됨으써 구현되는 것이 바람직하지만 필수적인 것은 아니다. 적합한 비교를 통해, 다수결에 의해, 잠재적으로 에러가 있는 소자들이 식별될 수 있다. 선택적으로, 제조-, 초기화- 또는 대역 끝부분의 테스트에서 추가로 상기 프로그램의 결과들이 이전에 검출된 결과들과 외부 유닛(워치 독(watchdog), 다른 μC, 테스트 장치, ASIC)에 의해 비교될 수 있다. 이것은 2개의 실행 유닛들만 주어진 경우 특히 바람직한데, 그 이유는, 상기의 경우, 2개의 실행 유닛들 사이에 차이가 나타나면, 에러가 있는 실행 유닛의 식별을 위한 제 3의 정보가 필요하기 때문이다. 이러한 비교는 전술된 비교 연산과 더불어, 잠재적으로 에러가 있는 실행 유닛들의 명백한 식별이 가능할 때까지 쌍으로 또는 부분 집합으로만 실시되게 이루어질 수 있다. 처리 로직은 상기 제 1 기능의 결과로서 에러가 있는 소자들을 식별해야 한다.
테스트 프로그램은, 가능한 확률이 높은 에러가 나타나도록 형성되어야 한다. 이러한 프로그램의 개발을 위해, 예컨대 에러 모델(예컨대 스턱-앳-모델; stuck-at-modell)이 사용될 수 있고, 응용 코드의 일부가 실행될 수 있고 또는 완전한 명령 테스트가 실시될 수 있다. 대역 끝부분의 테스트의 경우, 상기 테스트 프로그램은 실행 유닛으로 제한되는 오늘날의 테스트 프로그램에 상응할 수 있다. 그러나 상기 테스트 프로그램은 오늘날 일반적인 대역 끝부분 테스트와 연관될 수 있고, 제 1 대역 끝부분의 테스트에 의해 이미 탈락된 디바이스들만이 상기 프로그 램에 의해 테스트될 수 있다. 상기 마지막 조치는, 그 밖의 경우에는 불량에 속하는 디바이스들만이 추가 프로세스 단계를 거치게 되는 장점을 갖는다. 상기 마지막의 "구조 단계"에 의해 선택된 각각의 디바이스는 직접 제조 공정의 수율을 향상시킨다.
처리 로직의 제 1 기능이 에러가 있는 유닛들을 식별한 후, 상기 정보가 저장되어야 한다. 본 발명에 따른 방법을 수율의 향상을 위한 제조 과정에 적용하는 경우, 바람직하게는 비휘발성 메모리 소자가 사용된다. 상기 메모리 소자 내에 어떤 실행 유닛들이 비활성인지가 저장된다.
도 2에는 상기 메모리 소자의 기능이 도시된다. 도 2의 전환- 및 비교 유닛(N500)의 소자들(N510, N520, N54i, N56i)은 도 1의 전환- 및 비교 유닛(N100)의 소자들(N110, N120, N14i, N16i)과 동일한 기능을 갖는다. 또한 메모리 소자(N530)가 도시된다. 처리 로직(520N)은 에러가 있는 것으로 식별된 실행 유닛들에 대한 정보를 메모리 소자(N530)에 전송한다. 스위칭 로직(N510)이 상기 메모리 소자를 액세스할 수 있고, 스위칭 로직의 제 1 기능은 N530에 의해 비활성으로서 표시된 소자들이 사실상 비활성이 되도록 작용할 수 있다.
메모리 소자는 당연히 전환- 및 비교 유닛 내부에 배치될 수 있지만, 그 외부에도 배치될 수 있고, 더욱이 디바이스의 외부에도 배치될 수 있다. 예컨대 제어 장치 또는 PC 내에 μC의 조립시, 외부 소자가 고려될 수 있는데, 그 이유는 광범위한 테스트가 주변 장치의 사용하에서 이루어질 수 있기 때문이다.
제조상의 수율의 향상을 위한 근본적인 방법은 도 3에 설명된다. 제 1 단 계(N600)(식별 단계)에서 에러가 있는 실행 유닛들의 식별이 이루어진다. 식별은 처리 로직(N520)의 제 1 기능 및 이로써 테스트 프로그램을 이용한다. 제 2 단계(N610)(메모리 단계)에서 에러 정보가 저장된다. 상응하는 정보는 처리 로직(N520)으로부터 메모리 소자(N530)로 전달된다. 제 3 단계(N620)(구성)에서 스위칭 로직(N510)이 N530으로부터의 정보를 이용하고, 스위칭 로직의 제 1 기능을 사용함으로써, 요구되는 능동성 및 수동성에 따라 실행 유닛들의 출력들을 구성할 수 있다. 이것은 SW에 의해 선택적으로 이루어지기는 하나, 바람직한 적용에서는 구성이 SW-컨트롤 의해 영향을 받지는 않는다.
비활성화에 대한 중요 근거는 에러가 있다는 것이다. 그러나, 바람직한 다른 실시예에서, 다른 근거도 적용될 수도 있다. 예컨대, 완전히 에러가 없는 디바이스들에 대해서도 상기 메모리 소자 내에 실행 유닛들이 비활성으로 표시되는 것도 가능하다.
특히, 테스트가 대역 끝부분에서만이 아니라, 작동중(예컨대 초기화 단계에서 또는 정상 작동 동안)에도 실행될 수 있다면, 제조 동안이 아니라 작동중에 나타나는 에러들이 검출될 수 있다. 도 1의 실시예에 도시된 바와 같이, 스위칭 로직의 제 2 기능(활성 실행 유닛들을 작동중 서로 연결) 및 처리 로직의 제 2 기능(출력에 인가된 신호들의 비교 실시)에 의해, 작동중에도 에러를 검출하고 에러가 있는 실행 유닛들을 식별하는 것이 용이하게 이루어진다.
에러가 없는 실행 유닛들이 비활성으로서 표시되면, 작동중에 에러가 나타나는 경우, 에러가 있는 것으로 식별된 유닛은 에러가 없지만 비활성인 유닛으로 교 체될 수 있다. 또한, 바람직하게는 메모리 소자(N530) 내에, 실행 유닛이 단지 비활성인지의 여부, 또는 에러가 있는지의 여부에 대한 정보가 저장된다. 바람직하게는 제공된 실행 유닛이 에러를 가진다는 정보가, 작동 중에는 보정될 수 없다.
도 7에는 메모리 소자(O100)(N530에 상응함)의 가능한 구성이 제시된다. 메모리 소자는 제 1 메모리 영역(O110)을 포함하고, 상기 제 1 메모리 영역 내에 실행 유닛들의 개수에 상응하게 메모리 지점들(O120,...,O12n)이 제공되는 것이 바람직하다. 각각의 메모리 지점은 바람직하게 적어도 1 비트로 구현된다. 메모리 지점(O12i)의 번호 또는 어드레스는 실행 유닛의 번호 또는 식별과 명백하게 연관된다. O120에서의 비트가 0이면, 예컨대 관련 실행 유닛이 활성인 것을 나타낸다. 1이면, 관련 실행 유닛이 비활성이어야 한다. 상기 정보는 에러를 허용하거나 또는 다른 정보와 연관되어 메모리 지점들(O120,...O12n) 내에 제공되고, 기본 정보 항목이 상기 응용과 관련해서 항상 동일하다.
선택적으로, 실행 유닛들의 개수에 상응하게 메모리 지점들(O130,..,O13n)이 제공되는 제 2 메모리 영역(O140)이 추가 제공된다. 각각의 메모리 지점은 바람직하게는 적어도 1 비트로 구현된다. 메모리 지점(O13i)의 번호 또는 어드레스는 실행 유닛의 번호 또는 식별과 명백하게 연관된다. O130에서의 비트가 0이면, 예컨대 관련 실행 유닛에 에러가 없다는 것을 나타낸다. 1이면, 관련 실행 유닛에 에러가 있다는 것을 의미한다. 상기 정보는 에러를 허용하거나 또는 다른 정보들과 연관되어 메모리 지점들(O130,...,O13n)에 제공되고, 기본 정보 항목이 상기 응용과 관련해서 항상 동일하다. 선택적으로, 상기 메모리 영역이 기록될 수 없거나, 또는 특수한 상황에서 또는 특수한 방법으로만 기록될 수 있으며, 이로써 한번 에러가 있는 것으로 표시된 실행 유닛이 착오로 에러가 없는 것으로 표시되지 않게 된다.
비활성이지만 에러가 없는 실행 유닛들을 사용함으로써, 에러가 없는 디바이스에 상기 방법이 제공하는 콜드 리던던시(cold redundancy)가 가용성 및 신뢰도의 향상을 위해 사용될 수 있다.
본 발명을 사용하는 다른 실시예에서, 그레이스풀-디그러데이션 모드(graceful-degradation mode) 및 림프-홈 모드(limp-home mode)가 가능하다.
여기서는, 작동중에 에러가 처리 로직의 전술된 제 2 기능에 의해 발견되는 것을 전제로 한다. 바람직하게 사용되는 실시예가 도 4에 설명된다. 우선, 단계(N700)(에러 발견)에서 에러가 발견된다. 이것은 예컨대 테스트 프로그램의 사용에 의해 이루어진다. 비교 모드가 예컨대 처리 로직 및 스위칭 로직의 제 2 기능에 의해 세팅될 수 있는 것처럼, 시스템이 비교 모드에 있다면, 이러한 에러 발견이 정상 작동시에도 가능하고, 즉 응용 소프트웨어가 테스트 프로그램으로서 작용한다. 이것은 2가지 이유 때문에 특히 바람직하다 : 한편으로는 테스트 프로그램이 제공될 필요가 없기 때문이고, 다른 한편으로는 작용하는, 실행 유닛들의 모든 에러들이 상기 방식으로 발견되기 때문이다. 단계(N705)에서, 스위칭- 및 처리 로직의 기존 구성에 의해 에러가 있는 실행 유닛이 이미 식별될 수 있는지 테스트 된다. 식별될 수 있다면, 단계들(N710 ; 에러 발견을 위한 구성 및 N720 ; 식별 단계)이 이미 종료되고, 단계(N730)로 바로 넘어간다. 이것은, 예컨대 3개의 실행 유닛들의 신호들이 비교되는 부분 시스템 내에 에러가 나타나는 경우이다. 여기(단계 N705)에서 그러한 경우가 아니면(예컨대 비교 모드로 동작하는 2개의 실행 유닛들의 부분 시스템 내에서 에러가 발견되면), 단계(N710)에서 에러 식별을 가능하게 하는 구성이 선택되어야 한다. 가장 간단하게는 이것은, 예컨대 "예상 후보들"(즉, 에러를 발생시켰던 부분시스템에 관련된 모든 실행 유닛들)이 아주 많은 다른 실행 유닛들과 함께, 스위칭 로직(N510)에 의해 출력 신호로 조합됨으로써 이루어진다. 바람직하게는 에러를 나타냈던 SW-부분이 테스트 프로그램으로서 재사용되지만, 제공된 테스트 프로그램도 사용될 수 있다. 처리 로직의 제 1 기능은, 단계(N720)를 실행하고, 에러가 있는 실행 유닛을 식별하게 한다. 그러나 대안으로서, 식별을 위해 다른 방법이 선택될 수 있다. 예컨대, 예상 후보들 중 하나가 선택되어 그것이 에러가 없는 다른 실행 유닛과 결합된다. 에러가 식별되지 않는 경우, 다른 실행 유닛에 에러가 있는 것이다. 에러가 식별되면, 상기 실행 유닛 내에 에러가 있다고 추정된다. 후자의 방법은 식별의 동일한 안전성을 제공하지는 않지만, 작동 중에 더 간단하게 사용될 수 있으므로, 예컨대 차량에서, 디바이스에 의해 영향을 받는 임계적 주행 특성이 실행되는 것이 바람직하다. 에러가 있는 실행 유닛의 식별이 종료된 후, 2개의 단계들(N730 ; 메모리 단계, N610에 상응함) 및 N740(구성, N620에 상응함))이 실행된다.
이제, 상기 마지막 단계에서 본 발명에 따른 방법에 의해 다수의 바람직한 실시예들이 제시된다.
에러는 없지만 비활성인 실행 유닛들이 충분히 많이 있는 경우, 전술한 바와 같이, 다시 완벽하게 작동될 수 있는 시스템이 제조될 수 있다.
에러가 없는 실행 유닛들이 정상 작동을 하기에 너무 적게 있는 경우, 기존 소프트웨어를 기존 실행 유닛들에서 가능한 양호하게 실행시킬 수 있다. 이것은, 시스템이 정상인 경우 실행 시간의 예비분을 가지게 되면, 특히 바람직하다. 그러면, 감소된 개수의 실행 유닛들도 작동을 보장하기에 충분한 성능을 제공할 수 있다. 이것은, 특히 성능 집약적 작동 상태들(예컨대 차량의 엔진에서 높은 회전수)이 방지됨으로써 시스템 레벨을 원조할 수 있다.
에러가 없는 실행 유닛들이 정상 작동하기에 너무 적게 있으면, 대안으로 응용의 일부만이 실행될 수 있다.
에러가 없는 실행 유닛들이 정상 작동하기에 너무 적게 있으면, 제 3 실시예에서 응용이 다른 모드로 실행될 수 있다. 예컨대 강한 비교 모드는 배제되고, 더 약한 비교 모드 또는 성능 모드로 사용될 수 있다. 이 경우, 후속 작동 동안, 더 약한 에러 검출 또는 에러 허용만이 제공되고, 이것은 상황에 따라 허용될 수 있는데, 그 이유는 상기 상태가 제한된 시간 동안만 유지되면 되기 때문이다. 상기 옵션은 본 발명에 의해 특히 용이하게 실시되며, 그 이유는 여기에 설명된 소자들 및 방법만이 사용되면 되기 때문이다. 물론, 상기 실시예들의 조합들이 고려될 수 있다.
본 발명의 개념을 사용하는 근본적으로 다른 가능성은, 잠재적으로 결함이 있는 실행 유닛들을 확실하고 가역 불가능하게 비활성화시키기 위해, 메모리 소자가 생략되고 다른 수단이 사용되는 것이다. 이것은 디바이스 내 라인의 제어(예컨 대 분리 또는 연결)에 의해 이루어진다.
여러 가능성들이 있다:
제공된 라인용 안티퓨즈(antifuse)의 사용(이것은 작동 동안, 유지 관리 동안, 조립 동안 또는 제조 동안 사용될 수 있다) 또는 라인의 기계적 처리(납땜, 분리), 레이저, 전자 빔, X선 빔에 의한 연소, 또는 특수 전기 신호 및 라인에 대한 화학적 작용이 있다.
또한, 메모리 소자를 대신하여 제어 소자들이 필요하다. 도 5에는 제어 소자들의 기능이 도시된다. 도 5의 전환- 및 비교 유닛(N800)의 소자들(N810, N820, N84i, N86i)은 도 1의 전환- 및 비교 유닛(N100)의 소자들(N110, N120, N14i, N16i)과 동일한 기능을 가진다. 또한 제어 소자들(N830)이 도시된다. 처리 로직(N820)이 에러가 있는 것으로 식별된 실행 유닛들에 대한 정보를 제어 소자들(N830)에 전송한다. 상기 제어 소자들은 예컨대 전술된 바와 같이, 실행 유닛들이 비활성화되도록 디바이스 내의 기능 그룹 또는 라인들을 제어하는 수단들을 갖는다. N830은 디바이스, 제어 장치 또는 시스템 내의 소자일 수 있고, N830은 제조 공정에서의 기계이거나 또는 상기 기계의 조작자일 수도 있다. 상기 소자는 유지 관리 동안 사용될 수도 있다. 선택적으로, 상응하는 정보가 스위칭 로직에 전달될 수 있고, 따라서, 상기 스위칭 로직은 N830에 의해 비활성으로서 표시된 소자들도 사실상 비활성이 되도록, 제 1 기능을 실행한다.
제어 소자들(N830)의 사용 하에 수율 향상을 위한 기본적 방법은 도 6에 도시된다. 제 1 단계(N900; 식별 단계)에서, 에러가 있는 실행 유닛들의 식별이 이 루어진다. 식별은 처리 로직(N820)의 제 1 기능 그리고 이로써 테스트 프로그램을 이용한다. 제 2 단계(N910)에서 에러 정보가 처리 로직(N820)으로부터 제어 소자(N830)에 전달된다. 제 3 단계(N920)에서 제어 소자들(N830)은 상기 정보를 사용하여, 제공된 수단들에 의해, 에러가 있는 소자들이 비활성이도록, 디바이스 내의 기능 그룹들 또는 라인들을 제어한다. 선택적인 제 4 단계(N930)에서 스위칭 로직(N810)이 정보를 사용하고 스위칭 로직의 제 1 기능을 사용함으로써, 요구되는 능동성 및 수동성에 따라 실행 유닛들의 출력들을 구성한다.
물론, 상기 제어 소자들도 작동 중에 사용될 수 있다. 메모리 소자의 사용에서 적용되는 모든 장점들은 여기에서도 적용될 수 있으며, 그 이유는 시스템에 대한 효과가 동일하기 때문이다. 그러나, 제어 소자들이 HW-소자들로서 시스템 내에 제공되는 것이 바람직하다.
실시예들의 설명에서 언급된 실행 유닛들 외에, 바람직한 방법 및 장치가 예컨대 아날로그-/디지털-변환기, 타이머-모듈, 인터럽트-컨트롤러(interrupt-controller), 커뮤니케이션 컨트롤러, 제어 유닛들과 같은 반도체 회로의 다른 소자들에도 사용될 수 있다. 하기에서는 반도체 회로의 상기 소자들의 전체가 기능 유닛이라는 개념에 포함된다.
다른 바람직한 실시예에서, 여기에 설명된 발명이, 다른 메모리 소자용 ECC-퓨즈와 함께 사용된다. 이 경우, 메모리 및 실행 유닛도 에러를 허용하게 설정되므로 수율을 최대화하고 작동중 최적의 가용성을 보장할 수 있는 가용성이 높은 디바이스가 형성된다.

Claims (42)

  1. 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하는 컴퓨터 시스템의 제어 방법에 있어서,
    사전 설정 가능한 조건에 따라 상기 기능 유닛들의 활성화 및/또는 비활성화가 실행되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  2. 제 1 항에 있어서, 기능 유닛들의 활성화 및/또는 비활성화는 컴퓨터 시스템 내의 에러 검출을 위한 적어도 하나의 제 1 방법 단계 및/또는 에러가 있는 기능 유닛의 식별을 위한 적어도 하나의 제 2 방법 단계의 결과에 따라 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  3. 제 1 항에 있어서, 상기 컴퓨터 시스템은 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하고, 상기 컴퓨터 시스템의 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들은 적어도 2개의 작동 모드로 전환되고, 제 1 작동 모드는 비교 모드에 해당하고, 제 2 작동 모드는 실행 모드에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  4. 제 2 항 및 제 3 항에 있어서, 상기 비교 모드에서 비교될 기능 유닛들의 출력 신호들 내의 에러가 검출되고, 상기 비교 모드는 컴퓨터 시스템 내의 에러 검출 을 위한 제 1 방법 단계에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서, 상기 컴퓨터 시스템의 선택된 기능 유닛들은, 상기 기능 유닛들의 출력 신호들을 기준값과 비교함으로써 에러가 있는 기능 유닛의 식별이 가능한 작동 모드로 전환되고, 상기 작동 모드는 컴퓨터 시스템 내의 에러가 있는 기능 유닛의 식별을 위한 제 2 방법 단계에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  6. 제 5 항에 있어서, 상기 기준값은 상기 컴퓨터 시스템의 메모리 장치에 저장되고, 작동 모드로 전환시 에러 식별을 위해 메모리 장치로부터 판독되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  7. 제 3 항 또는 제 5 항에 있어서, 상기 컴퓨터 시스템의 작동 중에 적어도 2개의 작동 모드 사이의 전환은 주기적으로 또는 필요시 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  8. 제 7 항에 있어서, 에러 검출 및/또는 에러가 있는 기능 유닛의 식별을 위해 적어도 2개의 작동 모드 사이의 전환이 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서, 상기 컴퓨터 시스템의 적어도 에러가 있는 것으로 식별된 기능 유닛에 대해 구성 상태 및/또는 에러 상태가 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  10. 제 9 항에 있어서, 상기 기능 유닛의 구성 상태 또는 에러 상태에 대한 정보는 반도체 시스템의 초기화시 및/또는 작동시 판독될 수 있도록 메모리 장치에 저장되고, 상기 저장된 정보는 작동시 비활성화로 표시된 유닛의 사용이 불가능하도록 처리됨으로써, 기능 유닛의 비활성화가 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  11. 제 1 항 내지 제 10 항 중 어느 한 항에 있어서, 상기 컴퓨터 시스템의 활성화될 수 있는 및/또는 비활성화될 수 있는 모든 기능 유닛에 대해 구성 상태 및/또는 에러 상태가 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  12. 제 11 항에 있어서, 활성화될 수 있는 및/또는 비활성화될 수 있는 기능 유닛들의 구성 상태 및/또는 에러 상태에 대한 정보가 메모리 장치에 저장되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  13. 제 1 항에 있어서, 상기 컴퓨터 시스템은 적어도 2개의 동일하거나 또는 동 일한 방식의 기능 유닛들을 포함하고, 적어도 하나의 동일하거나 또는 동일한 방식의 기능 유닛은 상기 컴퓨터 시스템에서 표준적으로 비활성화되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  14. 제 13 항에 있어서, 비활성화된 기능 유닛의 구성 상태에 대한 적어도 하나의 정보는 메모리 장치에 저장되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  15. 제 14 항에 있어서, 에러가 있는 기능 유닛의 식별시 또는 식별 후에 컴퓨터 시스템의 재구성은, 적어도 에러가 있는 것으로 식별된 기능 유닛이 비활성화됨으로써 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  16. 제 15 항에 있어서, 에러로 인한 기능 유닛의 비활성화 경우에 상기 기능 유닛의 구성 상태 및/또는 에러 상태에 대한 정보는 메모리 장치에 기록되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  17. 제 15 항에 있어서, 에러가 있는 기능 유닛의 식별시 또는 식별 후에 컴퓨터 시스템의 재구성이 이루어지고, 에러가 있는 것으로 식별된 기능 유닛이 비활성화되고, 표준적으로 비활성화되지만 에러가 없는 기능 유닛이 활성화되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법 .
  18. 제 3 항에 있어서, 에러 검출을 위한 제 1 방법 단계는 비교 모드에서 컴퓨터 시스템의 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛의 적절한 작동에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  19. 제 18 항에 있어서, 에러가 있는 유닛의 식별을 위한 제 2 방법 단계는 적어도 하나의 기능 유닛에서 에러 검출 루틴의 처리 및 에러 검출 루틴의 결과와 기준값의 비교에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  20. 제 19 항에 있어서, 에러가 있는 유닛의 식별을 위한 방법 단계의 실행 전에 또는 실시시에, 동일하거나 또는 동일한 방식의 기능 유닛에서 상이한 기능들, 명령들, 프로그램 세그먼트 또는 프로그램의 실행을 가능하게 하는 컴퓨터 시스템의 재구성이 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  21. 제 19 항에 있어서, 상기 에러 검출 루틴의 상기 기준값은 상기 에러 검출 루틴과 함께 메모리 장치에 저장되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  22. 제 19 항에 있어서, 에러가 있는 기능 유닛의 식별시 또는 식별 후에 상기 컴퓨터 시스템의 재구성이 이루어지고, 적어도 에러가 있는 것으로 식별된 기능 유 닛이 비활성화되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  23. 제 22 항에 있어서, 에러로 인한 기능 유닛의 비활성화 경우에 상기 기능 유닛의 구성 상태 및 에러 상태가 메모리 장치에 기록되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  24. 제 22 항에 있어서, 컴퓨터 시스템의 재구성 전에 제 1 작동 모드에서 처리를 위해 정해진 기능들, 명령들, 프로그램 세그먼트들 또는 프로그램의 적어도 일부는 컴퓨터 시스템의 재구성 후에 제 2 작동 모드에서 처리되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  25. 제 24 항에 있어서, 제 1 작동 모드는 비교 모드에 해당하고, 제 2 작동 모드는 실행 모드 또는 활성 기능 유닛 하나만 포함하는 에러 모드에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  26. 제 15 항 또는 제 22 항에 있어서, 상기 기능 유닛들의 비활성화는 컴퓨터 시스템의 기능 유닛에 대한 또는 상기 기능 유닛들 간의 전기 접속의 차단에 의해 비가역적으로 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  27. 제 26 항에 있어서, 상기 컴퓨터 시스템에서 전기 접속의 차단은 접속의 적 어도 일부에 작용하는 전기 작용에 의해 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  28. 제 1 항 내지 제 27 항 중 어느 한 항에 있어서, 상기 컴퓨터 시스템의 작동 중에 그리고 상기 컴퓨터 시스템의 부분이거나 또는 상기 컴퓨터 시스템에 영구적으로 연결된 장치의 사용 하에 기능 유닛의 활성화 및/또는 비활성화가 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  29. 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들을 포함하는 컴퓨터 시스템의 제어 장치에 있어서, 상기 컴퓨터 시스템의 기능 유닛들의 활성화 및/또는 비활성화를 사전 설정 가능한 조건에 따라 가능하게 하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  30. 제 29 항에 있어서, 상기 컴퓨터 시스템 내의 에러 검출 및/또는 에러를 가진 기능 유닛들의 식별을 가능하게 하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  31. 제 30 항에 있어서, 상기 컴퓨터 시스템의 적어도 2개의 동일하거나 또는 동일한 방식의 기능 유닛들이 적어도 2개의 모드 사이에서 전환하는 것을 가능하게 하는 전환 수단을 포함하고, 제 1 작동 모드는 비교 모드에 해당하고, 제 2 작동 모드는 실행 모드에 해당하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  32. 제 30 항에 있어서, 상기 컴퓨터 시스템의 선택된 기능 유닛들을 상기 기능 유닛들의 출력 신호들을 기준값과 비교함으로써 에러가 있는 기능 유닛들의 식별을 가능하게 하는 작동 모드로 전환하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  33. 제 32 항에 있어서, 상기 기능 유닛들의 출력 신호들을 적어도 하나의 다른 기능 유닛의 출력 신호 또는 기준값과 비교하고, 불일치시 에러 정보를 형성하기 위한 비교 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  34. 제 33 항에 있어서, 상기 기능 유닛들의 출력 신호들에 대한 기준값들이 저장된 메모리 수단을 포함하고, 상기 메모리 수단으로부터 기준값들을 비교 장치에 제공하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  35. 제 1 항 내지 제 34 항 중 어느 한 항에 있어서, 상기 컴퓨터 시스템의 활성화될 수 있고 및/또는 비활성될 수 있는 모든 기능 유닛들에 대한 구성 상태 및/또는 에러 상태를 형성하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  36. 제 1 항 내지 제 35 항 중 어느 한 항에 있어서, 활성화될 수 있고 및/또는 비활성화될 수 있는 기능 유닛들의 구성 상태 및/또는 에러 상태에 대한 적어도 하나의 정보가 저장되는, 데이터를 저장하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  37. 제 36 항에 있어서, 데이터의 저장을 위한 상기 수단은 불휘발성 메모리 수단인 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  38. 제 1 항 내지 제 37 항 중 어느 한 항에 있어서, 상기 컴퓨터 시스템의 초기화시 및/또는 작동시 메모리 장치 내에 저장된, 기능 유닛들의 구성 상태 및/또는 에러 상태를 판독하고, 판독된 데이터 및 비교 장치의 에러 신호에 따라 상기 기능 유닛들의 활성화 및/또는 비활성화를 실행할 수 있는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  39. 제 1 항 내지 제 38 항 중 어느 한 항에 있어서, 상기 기능 유닛들의 비활성화를 비가역적으로 실행할 수 있는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  40. 제 39 항에 있어서, 상기 기능 유닛들의 비가역적 비활성화를 위해 상기 기 능 유닛에 대한 또는 상기 기능 유닛 내의 적어도 하나의 전기 접속을 차단하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  41. 제 40 항에 있어서, 전기 접속의 적어도 일부에 대한 전기 작용에 의해 상기 기능 유닛들에 대한 또는 상기 기능 유닛들 내의 전기 접속을 차단할 수 있는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  42. 제 1 항 내지 제 41 항 중 어느 한 항에 있어서, 상기 기능 유닛들의 에러 검출, 활성화 및/또는 비활성화를 위한 수단은 상기 컴퓨터 시스템의 부분이거나 또는 상기 컴퓨터 시스템에 영구적으로 연결되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
KR1020087003207A 2005-08-08 2006-07-21 컴퓨터 시스템의 제어 장치 및 방법 KR20080032167A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005037262A DE102005037262A1 (de) 2005-08-08 2005-08-08 Vorrichtung und Verfahren zur Steuerung eines Rechnersystems
DE102005037262.7 2005-08-08

Publications (1)

Publication Number Publication Date
KR20080032167A true KR20080032167A (ko) 2008-04-14

Family

ID=37478820

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087003207A KR20080032167A (ko) 2005-08-08 2006-07-21 컴퓨터 시스템의 제어 장치 및 방법

Country Status (7)

Country Link
EP (1) EP1915691A1 (ko)
JP (1) JP2009506406A (ko)
KR (1) KR20080032167A (ko)
CN (1) CN101238449A (ko)
DE (1) DE102005037262A1 (ko)
TW (1) TW200732907A (ko)
WO (1) WO2007017359A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017204691B3 (de) * 2017-03-21 2018-06-28 Audi Ag Steuervorrichtung zum redundanten Ausführen einer Betriebsfunktion sowie Kraftfahrzeug

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3783250A (en) * 1972-02-25 1974-01-01 Nasa Adaptive voting computer system
US4342083A (en) * 1980-02-05 1982-07-27 The Bendix Corporation Communication system for a multiple-computer system
US4327437A (en) * 1980-07-30 1982-04-27 Nasa Reconfiguring redundancy management

Also Published As

Publication number Publication date
EP1915691A1 (de) 2008-04-30
DE102005037262A1 (de) 2007-02-15
WO2007017359A1 (de) 2007-02-15
JP2009506406A (ja) 2009-02-12
TW200732907A (en) 2007-09-01
CN101238449A (zh) 2008-08-06

Similar Documents

Publication Publication Date Title
US5515383A (en) Built-in self-test system and method for self test of an integrated circuit
US10042791B2 (en) Abnormal interrupt request processing
US20060200278A1 (en) Generic software fault mitigation
US7900036B2 (en) System and method for implementing boot/recovery on a data processing sysem
RU2453903C2 (ru) Способ и устройство для контроля работоспособности блока управления двигателем внутреннего сгорания
US4493078A (en) Method and apparatus for testing a digital computer
CN112015599B (zh) 错误恢复的方法和装置
US7966536B2 (en) Method and apparatus for automatic scan completion in the event of a system checkstop
JP5608409B2 (ja) 自己診断システム及び検査回路判定方法
JP6341795B2 (ja) マイクロコンピュータ及びマイクロコンピュータシステム
JP5367970B2 (ja) 信号処理システムを起動/再起動する方法及び信号処理システム
US7774690B2 (en) Apparatus and method for detecting data error
KR20080032166A (ko) 반도체 회로를 구성하는 장치 및 방법
US6854081B1 (en) Initializing/diagnosing system in on-chip multiprocessor system
KR20050121729A (ko) 프로그램 제어식 유닛 및 방법
KR20080032167A (ko) 컴퓨터 시스템의 제어 장치 및 방법
JP2009151420A (ja) ソフトウェア動作監視装置、プログラム
JP2003167755A (ja) 信号処理系の故障診断方法および装置
CN109213638B (zh) 半导体装置
JP6588068B2 (ja) マイクロコンピュータ
Weiherer et al. Software-Based Triple Modular Redundancy with Fault-Tolerant Replicated Voters
JP2009506408A (ja) 複数の実行ユニットを有する計算機システム内のプロセスを分析する方法および装置
JP6275098B2 (ja) 制御装置およびレジスタの故障復帰方法
US20200300915A1 (en) Semiconductor device, method for diagnosing semiconductor device, and diagnosis program for semiconductor device
JP2021189988A (ja) 電子制御装置及び電子制御装置の制御方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application