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

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

Info

Publication number
KR20070067169A
KR20070067169A KR1020077009363A KR20077009363A KR20070067169A KR 20070067169 A KR20070067169 A KR 20070067169A KR 1020077009363 A KR1020077009363 A KR 1020077009363A KR 20077009363 A KR20077009363 A KR 20077009363A KR 20070067169 A KR20070067169 A KR 20070067169A
Authority
KR
South Korea
Prior art keywords
switching
clock
mode
clock frequency
computer system
Prior art date
Application number
KR1020077009363A
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
Priority claimed from DE200410051992 external-priority patent/DE102004051992A1/de
Priority claimed from DE200410051950 external-priority patent/DE102004051950A1/de
Priority claimed from DE200510037231 external-priority patent/DE102005037231A1/de
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20070067169A publication Critical patent/KR20070067169A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Hardware Redundancy (AREA)

Abstract

컴퓨터 시스템의 제어용 장치 및 방법은 특히 멀티 프로세스 시스템의, 적어도 2 개의 실행 유닛들 및 전환 수단들을 포함하고, 상기 스위칭 수단들에 의해 컴퓨터 시스템의 적어도 2 개의 상이한 작동 모드들 사이에서 전환될 수 있고, 작동 모드들 사이의 스위칭에 의해 컴퓨터 시스템의 클럭 주파수의 전환이 실시된다.
컴퓨터 시스템, 성능 모드, 비교 모드, 스위칭 수단, 클럭 주파수

Description

컴퓨터 시스템의 제어 장치 및 방법 {METHOD AND DEVICE FOR CONTROLLING A COMPUTER SYSTEM}
본 발명은 컴퓨터 시스템의 적어도 2 개의 상이한 작동 모드들 사이의 전환이 이루어질 수 있는, 적어도 2 개의 실행 유닛들을 포함한 컴퓨터 시스템의 제어 장치 또는 방법에 관한 것이다.
알파 입자 또는 우주 방사선에 의해 일어나는 일시적 에러는 점점 직접 반도체 회로에 대한 문제가 된다. 구조 폭의 감소, 전압의 감소 및 클럭 주파수의 상승에 의해, 알파 입자 또는 우주 방사선으로 인한 전하의 변화가 직접 회로의 논리 값을 왜곡시킬 확률이 증가한다. 그 결과로서 잘못된 평가 결과가 도출될 수 있다. 특히 차량 내의 안전 관련 시스템에서 상기 에러들은 확실하게 검출되어야 한다.
전자 장치의 오동작이 확실하게 검출되어야 하는, 차량의 안전 관련 시스템, 예를 들면 ABS-제어 시스템에서, 상기 시스템의 제어 장치가 적절한 경우, 일반적으로 에러 인지를 위한 리던던시가 사용된다. 그러므로, 예를 들면 공지된 ABS-시스템에서 각각 완전 마이크로 컨트롤러가 중복되고, 전체 ABS-기능들이 리던던트식으로 계산되고 일치가 검사된다. 결과가 불일치하면, ABS-시스템이 스위치 오프된 다.
마이크로 컨트롤러는 실질적으로 메모리 모듈들(예를 들면 RAM, ROM, Cache), 프로세서(CPU, 코어) 및 입력-/출력-인터페이스, 소위 주변장치들(예를 들면 A/D-변환기, CAN-인터페이스)로 구성된다. 메모리 소자들은 체크 코드(패리티 또는 ECC)에 의해 효과적으로 모니터링될 수 있고, 주변 장치들은 응용 사양에 따라(application-specific) 종종 센서- 또는 액추에이터-신호 경로의 부분으로서 모니터링될 수 있기 때문에, 다른 리던던시 조치는 마이크로 컨트롤러의 코어의 단독 이중화로 이루어진다.
적어도 2 개의 통합된 코어를 포함한 상기 마이크로 컨트롤러는 듀얼-코어 아키텍쳐로도 알려져 있다. 상기 2 개의 코어들은 리던던트 및 클럭 동기식으로 (록스텝-모드, lockstep-mode) 동일한 프로그램 세그먼트를 실행하고, 상기 2 개의 코어들의 결과가 비교되고 비교 결과에 따라 에러가 검출된다. 듀얼-코어 시스템의 상기 구성은 비교 모드라고 할 수 있다.
듀얼-코어 아키텍쳐는 다른 응용에서 성능 향상을 위해서도 사용된다. 상기 2 개의 코어들은 상이한 프로그램, 프로그램 세그먼트 및 명령들을 실행하므로, 시스템 성능을 향상시킬 수 있으므로, 듀얼-코어 시스템의 상기 구성은 성능 모드라고도 할 수 있다. 또한 상기 시스템은 대칭 멀티 프로세서 시스템(SMP)이라고도 할 수 있다.
상기 시스템의 확장은 특수 주소 및 특수화된 하드웨어-장치들에 대한 액서스를 이용한 상기 2 개의 모드들 사이의 소프트웨어에 의한 전환이다. 비교 모드 에서 코어의 출력 신호들은 서로 비교된다. 성능 모드에서 상기 2 개의 코어들은 대칭 멀티 프로세서 시스템(SMP)으로서 작동하고 상이한 프로그램들, 프로그램 세그먼트들 또는 명령들을 실행한다.
μC의 클럭 주파수가 작동시에도 변할 수 있는 것은 종래 기술에 공지되어 있다. 예를 들면 클럭 주파수의 감소에 의해 전력을 절약할 수 있고 따라서 출력 손실을 감소시킬 수 있다. 2 개의 모드들 사이의 전환을 가능하게 하는 μC에서 각각의 응용에 따라, 모드에 대한 신뢰성이 향상되어야 하는 요구가 있다. 이에 대해 종래 기술에는 해결책이 공지되어 있지 않다.
따라서 본 발명의 목적은 멀티 프로세서 시스템의 클럭 주파수를 요구에 따라, 에너지 소비, 전기 출력 손실 및 전자기 방사선을 감소시키거나 또는 간섭 빈도를 줄이도록 조정하는 것이다.
컴퓨터 시스템의 적어도 2 개의 상이한 작동 모드들 사이의 전환이 이루어질 수 있는, 적어도 2 개의 실행 유닛들을 포함한 컴퓨터 시스템의 제어 장치 또는 방법은, 공지된 해결 방법과 달리, 작동 모드들 사이의 전환에 의해서 컴퓨터 시스템의 클럭 주파수의 전환도 이루어지는 장점을 가진다.
선택된 응용에서 비교 모드에서의 클럭 주파수가 성능 모드에서의 클럭 주파수보다 더 높다. 다른 응용에서 성능 모드에서의 클럭 주파수가 비교 모드에서의 클럭 주파수보다 높은 것이 특히 바람직할 수 있다. 또한, 클럭 주파수들 사이의 비율은 적어도 2 개의 작동 모드들에서 유효 성능이 동일하도록 선택되는 것이 바람직하다.
또한, 적어도 하나의 제 2 클럭 주파수는, 클럭 변경 및/또는 클럭 매칭을 위한 유닛이 전환 수단, 특히 전환- 및 비교 유닛으로부터의 신호에 의해 제어됨으로써 발생되는 것이 바람직하다. 또한, 적어도 하나의 제 2 클럭 주파수를 발생시키기 위해 제어 가능한 PLL이 사용되는 것도 바람직하다.
바람직하게는 또한, 적어도 하나의 제 2 클럭 주파수는, 주파수 매칭을 위한 적어도 2 개의 독립 장치들이 제공되어, 상기 장치들의 적어도 2 개의 출력 신호들 사이에서 제어되어 전환될 수 있음으로써 발생된다. 바람직하게는, 주파수 매칭을 위한 적어도 2 개의 독립 장치들의 출력 신호들 사이에서의 전환은 전환 수단들, 특히 전환- 및 비교 유닛으로부터의 신호에 의해 제어된다.
다른 장점 및 바람직한 실시예는 청구항의 특징들 및 실시예에서 제시된다.
도 1은 2 개의 실행 유닛들(H100a 및 H100b) 및 전환- 및 비교 유닛 (H110)을 포함한 멀티 프로세서 시스템,
도 2는 2 개의 실행 유닛들(H100a 및 H100b) 및 2 개의 클럭 변화 유닛(H210 및 H220)을 포함한 멀티 프로세서 시스템,
도 3은 2 개보다 더 많은 실행 유닛에 사용하기 위한 일반 전환- 및 비교 소자, 그리고
도 4는 일반 모드의 신호를 발생시키는 일반 전환- 및 비교 소자이다.
본 발명은, 멀티 프로세서 시스템에서 클럭 주파수의 전환이 상기 프로세서 시스템의 적어도 2 개의 작동 모드들 사이에서의 전환과 결합되는 방법에 관한 것이다.
본 발명의 대상은 적어도 2 개의 실행 유닛들 및 전환- 및 비교 유닛을 포함하는 멀티 프로세서 시스템이고, 상기 시스템은 적어도 2 개의 작동 모드들 "성능 모드"와 "비교 모드" 사이에서 전환될 수 있다. 프로세서 시스템의 전체 성능은 설정된 작동 모드에 따라 다르다.
실행 유닛은 하기에서 프로세서/코어/CPU, 및 FPU(floating point unit, 부동 소수점 처리 장치), DSP(digital signal processor, 디지털 신호 처리기), 코프로세서 또는 ALU(arithmetic logical unit, 산술 논리 연산 장치)로서 나타낸다.
성능 모드 및 비교 모드의 개념을 설명하기 위해, 도 3에는 2 개보다 많은 실행 유닛들에 사용하기 위한 전환- 및 비교 소자의 일반적 경우가 도시된다. n개의 고려하려는 실행 유닛들에 의해 n개의 신호들(N140,..,N14n)이 전환- 및 비교 소자(N100)로 전달된다. 상기 비교 소자는 상기 입력 신호들로부터 n개까지의 출력 신호(N160,...,N16n)를 발생시킬 수 있다. 가장 간단한 경우, 즉 "순수 성능 모드"의 경우, 모든 신호들(N14i)이 상응하는 출력 신호들(N16i)로 전송된다. 반대의 극단의 경우, 즉 "순수 비교 모드"의 경우, 모든 신호들(N140,..,N14n)이 출력 신호들(N16i) 중 정확히 하나로만 전송된다.
본 도면에는, 다양한 고려 가능한 모드들이 어떻게 형성되는지가 도시된다. 이를 위해, 본 도면에는 스위칭 로직(N110)의 논리 소자가 포함된다. 우선, 논리 소자는, 우선 얼마나 많은 출력 신호들이 총괄적으로 존재하는지를 검출한다. 그 후, 스위칭 로직(N110)은 어떤 입력 신호들이 어떤 출력 신호들에 기여하는지를 결정한다. 이 경우 하나의 입력 신호는 정확히 하나의 출력 신호에 기여한다. 수학적으로 달리 표현하면, 즉 스위칭 로직에 의해, 집합{N140,..,N14n}의 각각의 원소에 집합{N160,...,N16n}의 원소 하나가 할당되는 함수가 정의된다.
그러면, 처리 로직(N120)은 출력들(N16i) 각각에 대해 어떤 형태로 입력들이 상기 출력 신호에 기여하는지를 결정한다. 예를 들면 다양한 변형 가능성들을 설명하기 위해, 출력(N160)이 신호들(N141,..,N14m)에 의해 발생되는 것이, 일반성(generality)의 제한 없이 가정된다. m=1이라면, 이것은 간단히 신호의 전달에 사응하고, m=2라면, 신호들(N141, N142)이 비교된다. 상기 비교는 동기식 또는 비동기식으로 실시될 수 있고, 비트 단위로, 또는 중요 비트로만 또는 허용 오차 대역으로도 실시될 수 있다.
m=3이라면, 더 많은 가능성들이 있다.
제 1의 가능성은 모든 신호들을 비교하여 적어도 2 개의 다양한 값들이 존재하면, 에러를 검출하고 이를 선택적으로 신호화할 수 있는 것이다.
제 2의 가능성은 m으로부터 k-선택(k>m/2)을 실시하는 것이다. 이것은 비교기를 사용함으로써 실시될 수 있다. 신호들 중 하나가 편차를 갖는 것으로 검출되면, 선택적으로 에러 신호가 발생될 수 있다. 모든 3 개의 신호들이 상이하면, 상이한 에러 신호가 발생될 수 있다.
제 3의 가능성은, 상기 값들을 알고리즘에 대입하는 것이다. 이것은 예를 들면 평균값, 중앙값을 형성하거나, 또는 오차 허용 알고리즘(FTA)의 사용일 수 있다. 상기 FTA는 입력 값들의 극값들을 삭제하고, 나머지 값들을 평균화하는 것에 기초한다. 상기 평균화는 나머지 값 전체에 대해 또는 바람직하게는 HW로 쉽게 형성되는 일부에 대해 이루어질 수 있다. 이 경우, 항상 값들을 실제로 비교할 필요는 없다. 평균값 형성은 예를 들면 더하여 나눔으로써 구한다. FTM, FTA 또는 중앙값은 부분적인 분류를 필요로 한다. 경우에 따라 여기에서 극단의 값들이 충분히 큰 경우에도, 선택적으로 에러 신호가 출력될 수 있다.
다수의 신호들을 하나의 신호로 처리하는 상기의 다양한 가능성들은 축약해서 비교 연산이라 한다. 처리 로직의 과제는 출력 신호 각각에 대한, 그리고 그에 따라 관련 입력 신호에 대한 비교 연산의 정확한 형태를 결정하는 것이다. 스위칭 로직(N110)의 정보(즉 상기 함수)와 처리 로직의 정보(출력 신호당, 즉 함수 값당 비교 연산의 결정)의 조합은 모드 정보이고, 이것은 모드를 결정한다. 상기 정보는 일반적 경우에 당연히 다의적이다. 즉, 단 하나의 논리 비트에 의해서 나타낼 수 없다. 이론적으로 가능한 모든 모드들이 주어진 실시에서 유용한 것은 아니고, 바람직하게는 허용된 모드의 개수가 제한된다. 강조할 점은, 단 하나의 비교 모드가 있는 단 2 개의 실행 유닛들의 경우, 전체 정보가 단 하나의 논리 비트로 함축될 수 있다는 것이다. 성능 모드로부터 비교 모드로의 전환은 일반적인 경우에 성능 모드에서 상이한 출력들로 나타내지는 실행 유닛들이 비교 모드에서는 동일 출력으로 나타내짐으로써 특성화된다. 이것은, 부분 시스템에서 고려되어야 하는 모든 입력 신호들(N14i)을 성능 모드에서는 해당하는 출력 신호들(N16i)로 바로 전환 하는 한편, 비교 모드에서는 상기 모든 입력 신호들이 하나의 출력으로 나타내지는 실행 유닛들의 부분 시스템이 주어짐으로써 바람직하게 실시된다. 대안으로, 상기 전환은 쌍들을 변경함으로써도 실시될 수 있다. 이로 인해, 일반적인 경우 본 발명의 주어진 구성에서 허용되는 모드들의 수를, 상기 경우와 같이 제한할 수 있다 하더라도, 성능 모드 및 비교 모드는 중요하지 않다. 그러나 성능 모드로부터 비교 모드로의 (또한 반대로의) 전환은 항상 중요하다.
상기 모드들 사이의 전환은 소프트웨어에 의해 제어되고 작동시 다이나믹하게 이루어질 수 있다. 전환은 특수 전환 지시, 특수 지시 시퀀스, 또는 명백히 특성화된 지시의 실행에 의해, 또는 멀티 프로세서 시스템의 실행 유닛들 중 적어도 하나에 의한 특정 주소들의 액세스에 의해 실시된다.
에러 회로 로직(N130)은 에러 신호를 모으고, 예를 들면 출력들(N16i)이 스위치에 의해 차단되도록 선택적으로 상기 출력들을 수동(passive) 스위칭시킬 수 있다.
제 1의 바람직한 실시예에서, 프로세서 시스템의 클럭 주파수의 전환은, 사용자에게 제공된 유효 성능이 작동 모드와 무관하게 동일하게(또한 특정 한계들 내에서 유사하게) 유지되도록 이루어진다. 이를 위해 -성능 모드로부터 시작해서- 비교 모드로의 전환시 클럭 주파수는 클럭 주파수의 전환 없이 비교 모드보다 성능 모드에서의 성능을 증가시키는 계수로 정확히 증가되어야 한다.
PE=PA ,v=PA ,P*fp/fv
상기 식에서, PE = 유효 성능(사용자에게 유용함)
PA ,P = 성능 모드에서의 원래 성능
PA ,v = 비교 모드에서의 원래 성능
fv = 비교 모드에서의 클럭 주파수
fp = 성능 모드에서의 클럭 주파수
상기 응용의 실질적인 장점은, 사용자에게 유용한 유효 성능이 동일하게 유지되는 것이다. 즉, 모드와 무관하게 유지되는 것이다. 상기 구성에서, 성능 모드는 프로세서 시스템의 유효 성능을 더 향상시키는 것이 아니라, 비교 모드에서의 작동과 비교하여 성능은 동일하게 유지하면서 에너지 소비 및 간섭 방사선을 감소시킨다. 시스템 디자인에 따라, 비교 모드에서 일정한 한계 내에서 오버 클럭킹이 일어날 수 있다. 이것은 잠재적으로 일시적 에러(EMV, 용량성 결합)에 대한 더 높은 빈도를 야기하지만, 동시에 비교 모드에서는 매우 우수한 에러 검출을 가능하게 할 수 있다. 상기 장점은 스케줄-문제를 해결하는데 특히 유용할 수 있는데, 왜냐하면 스케줄-알고리즘은 항상 실행 시간을 필요로 하기 때문이다. 이것은 상기 실시예에서 하나의 모드에 대한 할당에 무관하다. 이로써 SW-개발시 더 유연하고 더 모듈 방식의 플랫폼 스트래티지가 가능하다.
제 2 실시예에서 정 반대의 할당이 제안된다. 클럭 주파수의 감소에 의해, 일시적 에러(예를 들면 공급 전압의 단기적 간섭 펄스, 소프트 에러)의 빈도가 줄 어든다. 비교 모드가 더 낮은 클럭 주파수로 작동되면, 상기 작동 모드에서 프로그램 부분들의 실행은 더 낮은 에러 빈도로, 즉 더 높은 클럭 주파수로 실행할 때 보다 더 안정적이다. 록스텝-모드(비교 모드)에서 계산되는 프로그램 부분들은 응용 사양에 따라 에러 검출에 대한 더 높은 요구 조건을 갖는다. 본 실시예에서는 에러 검출이 향상될 뿐 아니라(안전성의 관점), 잠재적으로 오류 발생 확률이 감소될 수 있다.(신뢰성 및 안전성 향상)
도 1에는 2 개의 실행 유닛들(H100a 및 H100b) 및 전환- 및 비교 유닛(H110)을 포함한 멀티 프로세서 시스템이 도시된다. 전환- 및 비교 유닛(H110)은 모드 신호(H150)를 발생시키고, 상기 신호는 클럭 변화 유닛(H120)에 의해, 비교 모드로의 전환시 클럭 주파수가 클럭 주파수의 전환 없이 비교 모드에서보다 성능 모드에서의 성능을 향상시킬 계수만큼 정확히 증가하도록, 클럭 발생 유닛(H130)의 클럭(H160)을 변경하기 위해 사용된다. 성능 모드로부터 비교 모드로의 전환시, 클럭 주파수는 정확한 계수만큼 상응하게 감소한다. 매칭된 클럭(H140a, H140b)은 나머지 유닛들에, 특히 실행 유닛들(H100a 및 H100b)에 제공된다. 클럭 발생 유닛(H130)은 PLL(phase locked loop, 위상 동기 루프) 또는 클럭 분할기이고, 이들은 클럭 발생 유닛(H130)(예를 들면 RC 공진기 또는 수정 진동자)의 기본 클럭으로부터 상기 기본 클럭을 공지된 방식으로 변경시킬 수 있다.
제 2 구성에서 클럭 변경 유닛(H120)은 성능 모드로부터 비교 모드로의 전환시 클럭을 감소시킨다. 이것은 비교 모드에서 일시적 에러에 대한 빈도를 감소시킨다. 상응하게, 비교 모드로부터 성능 모드로의 전환시 클럭이 증가한다.
모드 신호(H150)는 일반적인 형태로 도 4에 도시된다. 전환- 및 비교 소자(N100)의 신호들 및 소자들(N1100, N120, N130, N140, N141, N142, N143, N14n, N160, N161, N162, N163, N16n)은 도 3의 전환- 및 비교 소자(N100)에서와 동일한 의미를 갖는다. 추가로, 모드 신호(N150) 및 에러 신호(N170)가 본 도면에 도시된다. 모드 신호(N150)는 도 1 및 도 2의 신호(H150)에 상응한다. 선택적 에러 신호(N170)는 에러 신호를 모으는 에러 회로 로직(N130)에 의해 발생되고, 개별 에러 신호로서 직접 전달되거나 또는 거기에 포함된 에러 정보가 번들링된다. 모드 신호(N150)는 선택적이고, 상기 소자 외부에서의 상기 모드 신호의 사용은 많은 위치에서 바람직하게 사용될 수 있다. 스위칭 로직(N110)(즉 상기 기능)과 처리 로직의 정보의 조합(출력 신호, 즉 기능값 당 비교 연산의 결정)은 모드 정보이고 상기 정보는 모드를 결정한다. 상기 정보는 일반적인 경우 당연히 다의적이다. 즉 단 하나의 비트에 의해 나타낼 수 없다. 이론적으로 가능한 모든 모드들이 주어진 실시에서 유용한 것은 아니고, 바람직하게는 허용되는 모드들의 개수가 제한된다. 모드 신호는 관련 모드 정보를 외부로 보낸다. HW-실시는 바람직하게는 외부 가시 모드 신호가 구성될 수 있도록 이루어진다. 바람직하게는 처리 스위칭 로직 및 로직도 구성 가능하게 형성된다. 바람직하게는 상기 구성들이 서로 매칭된다. 대안으로서, 모드 신호의 변경만이 또는 보충적으로 모드 신호의 변경이 외부로 전달할 수 있다. 이것은 특히 2-구성에서 특히 장점을 갖는다.
도 2에는 2 개의 클럭 변경 유닛들(H210 및 H220)을 사용한 대안이 도시된다. 2 개의 실행 유닛들(H100a 및 H100b)은 클럭 전환기(H200)으로부터 클 럭(H270a, H270b)을 얻는다. 상기 전환기는 전환- 및 비교 유닛(H110)에 의해 발생된 코어 모드 신호(H150)에 따라 클럭을 전환한다. 클럭 전환기(H200)는 2 개의 클럭 입력부들을 포함하고, 상기 입력부들은 클럭들(H240 및 H250)에 의해 작동된다. 클럭(H240)은 클럭 변경 유닛(H210)에 의해 조정되고, 클럭(H250)은 클럭 변경 유닛(H220)에 의해 조정된다. 클럭 변경 유닛들(H210 및 H220)은 클럭 발생 유닛(H130)으로부터 기본 클럭(H260)을 선택적으로 얻으며, 그렇지 않으면 분리된 클럭들을 얻는다. 상기 배치는 성능 모드에서의 실행 유닛들에 대한 클럭을 감소시켜 2 개의 모드들에서의 성능을 거의 동일하게 유지시키는데 사용된다. 또한, 상기 배치는 비교 모드에서 일시적 에러에 대한 감도를 감소시키기 위해, 비교 모드에서의 클럭을 감소시키는데 사용된다.

Claims (16)

  1. 컴퓨터 시스템의 적어도 2 개의 상이한 작동 모드들 사이의 전환이 이루어질 수 있는, 적어도 2 개의 실행 유닛들을 포함한 컴퓨터 시스템, 특히 멀티 프로세서 시스템을 제어하기 위한 방법으로서,
    작동 모드들 사이의 전환에 의해, 컴퓨터 시스템의 클럭 주파수의 전환도 이루어지는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법
  2. 제 1 항에 있어서, 비교 모드에서의 클럭 주파수는 성능 모드에서의 클럭 주파수보다 높은 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  3. 제 1 항에 있어서, 성능 모드에서의 클럭 주파수는 비교 모드에서의 클럭 주파수보다 높은 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서, 상기 클럭 주파수들 사이의 비율은 적어도 2 개의 작동 모드들에서 유효 성능이 동일하도록 선택되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  5. 제 1 항에 있어서, 클럭 변경 및/또는 클럭 매칭을 위한 유닛이 전환 수단들, 특히 전환- 및 비교 유닛의 신호에 의해 제어됨으로써, 적어도 하나의 제 2 클 럭 주파수가 발생되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  6. 제 5 항에 있어서, 상기 적어도 하나의 제 2 클럭 주파수를 발생시키기 위해 제어 가능한 PLL이 사용되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  7. 제 1 항에 있어서, 주파수 매칭용 적어도 2 개의 독립 장치들이 제공되고, 상기 장치들의 적어도 2 개의 출력 신호들 사이의 전환이 제어 방식으로 이루어짐으로써 적어도 하나의 제 2 클럭 주파수가 발생되는 것을 특징으로 하는 컴퓨터 시스템의 제어 방법.
  8. 제 7 항에 있어서, 주파수 매칭용 상기 적어도 2 개의 독립 장치들의 출력 신호들 사이에서의 전환은, 전환 수단들, 특히 전환- 및 비교 유닛의 신호에 의해 제어되는 것을 특징으로 하는 특징으로 하는 컴퓨터 시스템의 제어 방법.
  9. 적어도 2 개의 실행 유닛들을 포함하는 컴퓨터 시스템, 특히 멀티 프로세서 시스템을 제어하기 위한 장치로서, 전환 수단들을 포함하고, 상기 전환 수단들에 의해 컴퓨터 시스템의 적어도 2 개의 상이한 작동 모드들 사이의 전환이 이루어질 수 있는 컴퓨터 시스템의 제어 장치에 있어서,
    상기 장치는, 작동 모드들 사이의 전환에 의해 컴퓨터 시스템의 클럭 주파수의 전환도 이루어지도록 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  10. 제 9 항에 있어서, 상기 장치는 비교 모드에서의 클럭 주파수가 성능 모드에서의 클럭 주파수보다 높게 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  11. 제 9 항에 있어서, 상기 장치는 성능 모드에서의 클럭 주파수가 비교 모드에서의 클럭 주파수보다 높게 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  12. 제 9 항 내지 제 11 항 중 어느 한 항에 있어서, 상기 장치는 클럭 주파수들 사이의 비율이 적어도 2 개의 작동 모드들에서 유효 성능이 동일하도록 선택되게 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  13. 제 9 항에 있어서, 상기 장치는 클럭 변경 및/또는 클럭 매칭을 위한 유닛을 포함하고, 상기 유닛이 전환 수단, 특히 전환- 및 비교 유닛의 신호에 의해 제어됨으로써, 적어도 하나의 제 2 클럭 주파수를 발생시키도록, 상기 장치가 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  14. 제 13 항에 있어서, 클럭 변경 및/또는 클럭 매칭을 위한 유닛은 상기 적어도 하나의 제 2 주파수를 발생시키기 위해 PLL로서 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  15. 제 9 항에 있어서, 상기 장치는, 주파수 매칭용 적어도 2 개의 독립 장치들을 포함하고, 전환 수단, 특히 전환- 및 비교 유닛에 의해 제어되어 상기 장치들의 적어도 2 개의 출력 신호들 사이의 전환이 이루어짐으로써 상기 적어도 하나의 제 2 클럭 주파수가 발생되도록 형성되는 것을 특징으로 하는 컴퓨터 시스템의 제어 장치.
  16. 제 9 항 내지 제 15 항 중 어느 한 항에 따른 장치를 포함한 컴퓨터 시스템.
KR1020077009363A 2004-10-25 2005-10-25 컴퓨터 시스템의 제어 장치 및 방법 KR20070067169A (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
DE200410051992 DE102004051992A1 (de) 2004-10-25 2004-10-25 Verfahren und Vorrichtung zur Verzögerung von Zugriffen auf Daten und/oder Befehle eines Mehrprozessorsystems
DE102004051950.1 2004-10-25
DE200410051950 DE102004051950A1 (de) 2004-10-25 2004-10-25 Verfahren und Vorrichtung zur Taktumschaltung bei einem Mehrprozessorsystem
DE102004051992.7 2004-10-25
DE200510037231 DE102005037231A1 (de) 2005-08-08 2005-08-08 Verfahren und Vorrichtung zur Steuerung eines Rechnersystems
DE102005037231.7 2005-08-08

Publications (1)

Publication Number Publication Date
KR20070067169A true KR20070067169A (ko) 2007-06-27

Family

ID=36177770

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077009363A KR20070067169A (ko) 2004-10-25 2005-10-25 컴퓨터 시스템의 제어 장치 및 방법

Country Status (5)

Country Link
US (1) US20090125749A1 (ko)
EP (1) EP1810150A2 (ko)
KR (1) KR20070067169A (ko)
CN (2) CN100520730C (ko)
WO (1) WO2006045806A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170003296U (ko) * 2016-03-14 2017-09-22 이브이지에이 코포레이션 컴퓨터 효율 제어장치

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE408863T1 (de) * 2004-10-25 2008-10-15 Bosch Gmbh Robert Datenverarbeitungssystem mit variabler taktrate
DE102005037233A1 (de) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Datenverarbeitung
US8397238B2 (en) * 2009-12-08 2013-03-12 Qualcomm Incorporated Thread allocation and clock cycle adjustment in an interleaved multi-threaded processor
US9052887B2 (en) * 2010-02-16 2015-06-09 Freescale Semiconductor, Inc. Fault tolerance of data processing steps operating in either a parallel operation mode or a non-synchronous redundant operation mode
JP5683294B2 (ja) * 2011-01-31 2015-03-11 三菱重工業株式会社 安全装置、安全装置の演算方法
JP5796311B2 (ja) 2011-03-15 2015-10-21 オムロン株式会社 制御装置およびシステムプログラム
DE102012209712A1 (de) * 2012-06-11 2013-12-12 Robert Bosch Gmbh Aktive Funktionseinschränkung eines Mikrocontrollers
WO2014080245A1 (en) 2012-11-22 2014-05-30 Freescale Semiconductor, Inc. Data processing device, method of execution error detection and integrated circuit
US9513688B2 (en) * 2013-03-16 2016-12-06 Intel Corporation Measurement of performance scalability in a microprocessor
US9823983B2 (en) 2014-09-25 2017-11-21 Nxp Usa, Inc. Electronic fault detection unit
DE102015214385A1 (de) * 2015-07-29 2017-02-02 Robert Bosch Gmbh Verfahren und Vorrichtung zum Absichern der Anwendungsprogrammierschnittstelle eines Hypervisors
CN106250200A (zh) * 2016-08-02 2016-12-21 合肥奇也信息科技有限公司 一种用于计算机划分至少一个软件应用段的执行方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5918061A (en) * 1993-12-29 1999-06-29 Intel Corporation Enhanced power managing unit (PMU) in a multiprocessor chip
TW282525B (ko) * 1994-06-17 1996-08-01 Intel Corp
JPH08202468A (ja) * 1995-01-27 1996-08-09 Hitachi Ltd マルチプロセッサシステム
JPH09305569A (ja) * 1996-01-17 1997-11-28 Texas Instr Inc <Ti> Cpuの動作特性に応じてコンピュータの動作を制御する方法と装置
US6240152B1 (en) * 1998-08-18 2001-05-29 Sun Microsystems, Inc. Apparatus and method for switching frequency modes in a phase locked loop system
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
JP3450814B2 (ja) * 2000-09-26 2003-09-29 松下電器産業株式会社 情報処理装置
US6763478B1 (en) * 2000-10-24 2004-07-13 Dell Products, L.P. Variable clock cycle for processor, bus and components for power management in an information handling system
WO2005052820A1 (en) * 2003-10-31 2005-06-09 International Business Machines Corporation Method and apparatus for dynamic system-level frequency scaling

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170003296U (ko) * 2016-03-14 2017-09-22 이브이지에이 코포레이션 컴퓨터 효율 제어장치

Also Published As

Publication number Publication date
WO2006045806A3 (de) 2006-08-03
EP1810150A2 (de) 2007-07-25
CN101048748A (zh) 2007-10-03
US20090125749A1 (en) 2009-05-14
CN101048750A (zh) 2007-10-03
WO2006045806A2 (de) 2006-05-04
CN100520730C (zh) 2009-07-29

Similar Documents

Publication Publication Date Title
KR20070067169A (ko) 컴퓨터 시스템의 제어 장치 및 방법
US8347129B2 (en) Systems on chip with workload estimator and methods of operating same
Narayanan et al. Scalable stochastic processors
Rahimi et al. Variability mitigation in nanometer CMOS integrated systems: A survey of techniques from circuits to software
US20050144492A1 (en) Processor system and method for reducing power consumption in idle mode
JP5053854B2 (ja) 少なくとも2つの実施ユニットを有する計算機システムにおける切替え方法および装置
US11402891B2 (en) System, apparatus and method for loose lock-step redundancy power management
US20090106609A1 (en) Semiconductor integrated circuit and debug mode determination method
EP3329345A1 (en) Masking a power state of a core of a processor
US11106271B2 (en) System, apparatus and method for dynamically controlling error protection features of a processor
KR20070085279A (ko) 복수의 컴포넌트를 구비한 컴퓨터 시스템에서 신호를생성하기 위한 방법 및 장치
Sim et al. A dual lockstep processor system-on-a-chip for fast error recovery in safety-critical applications
WO2017030766A1 (en) Transparently monitoring power delivery in a processor
EP2247992B1 (en) Clock switching circuits and methods
US20090249174A1 (en) Fault Tolerant Self-Correcting Non-Glitching Low Power Circuit for Static and Dynamic Data Storage
Ferreira et al. Low latency reconfiguration mechanism for fine-grained processor internal functional units
US20080270747A1 (en) Method and Device for Switching Over Between Operating Modes of a Multi-Processor System Using at Least One External Signal
Rotta et al. Real-time dynamic hardware reconfiguration for processors with redundant functional units
CN113924540A (zh) 用于处理器中的传感器驱动的和基于试探的最低能量点跟踪的系统、装置和方法
Imai et al. Fault diagnosis and reconfiguration method for network-on-chip based multiple processor systems with restricted private memories
CN101243411A (zh) 分析具有多个执行单元的计算机系统中的进程的方法和设备
Kriebel et al. Fault-Tolerant Computing with Heterogeneous Hardening Modes
do Nascimento et al. Exploiting guard band limits for energy gains in MPSoCs
Sim Multitasking CPU for Safety-Critical Real-Time Embedded Applications
CN101243397A (zh) 用于控制计算机系统的方法和设备

Legal Events

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