KR20090095500A - 다수의 클록 도메인 사이의 결정을 촉진하는 장치, 시스템,방법 및 머신 판독 가능한 매체 - Google Patents

다수의 클록 도메인 사이의 결정을 촉진하는 장치, 시스템,방법 및 머신 판독 가능한 매체 Download PDF

Info

Publication number
KR20090095500A
KR20090095500A KR1020090018398A KR20090018398A KR20090095500A KR 20090095500 A KR20090095500 A KR 20090095500A KR 1020090018398 A KR1020090018398 A KR 1020090018398A KR 20090018398 A KR20090018398 A KR 20090018398A KR 20090095500 A KR20090095500 A KR 20090095500A
Authority
KR
South Korea
Prior art keywords
counter
value
execution unit
threshold
logic
Prior art date
Application number
KR1020090018398A
Other languages
English (en)
Other versions
KR101196494B1 (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
Application filed by 인텔 코포레이션 filed Critical 인텔 코포레이션
Publication of KR20090095500A publication Critical patent/KR20090095500A/ko
Application granted granted Critical
Publication of KR101196494B1 publication Critical patent/KR101196494B1/ko

Links

Images

Classifications

    • 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
    • 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/12Synchronisation of different clock signals provided by a plurality of clock generators
    • 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/06Clock generators producing several clock signals
    • 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

Abstract

컴퓨터 시스템 또는 집적 회로 내에서 다수의 클로킹 도메인 사이의 결정을 촉진하는 기법이 제공된다. 일 실시예에서, 하나 이상의 실행 유닛은 다수의 상이한 클로킹 도메인을 갖는 프로세서 시스템 내에서 다수의 클록에 대한 결정 상태에 위치한다.

Description

다수의 클록 도메인 사이의 결정을 촉진하는 장치, 시스템, 방법 및 머신 판독 가능한 매체{TECHNIQUE FOR PROMOTING DETERMINISM AMONG MULTIPLE CLOCK DOMAINS}
본 발명은 전반적으로 정보 프로세싱의 분야에 관한 것으로서, 보다 구체적으로, 컴퓨팅 시스템 및 마이크로프로세서의 분야에 관한 것이다.
현재의 마이크로프로세서로 더 많은 기능이 통합됨에 따라, 프로세서 내의 기능 유닛은 상기한 클록 주파수, 위상 등에서 동작될("클로킹될") 필요가 있다. 동일한 프로세서 내의 많은 클로킹 도메인에 의해 테스트와 같은 목적으로 결정을 촉진할 때에 복잡성이 증가하게 된다. 몇몇 테스트 기법은 주기적 시스템 관리 인터럽트(periodic system management interrupt : PSMI)를 사용하여 프로세서 상에서 실행되는 프로그램을 통해 스테핑하고 프로그램 내의 각종 지점에서 프로세싱의 결과를 반환할 수 있다.
PSMI는 논리 분석기가 환형 버퍼 내의 외부 버스 활동도를 추적하는 한편, 논리 분석기 내에 2개의 연속적인 것이 존재하는 것을 항상 보증하는데 충분할 정 도로 빈번하게 시스템 관리 인터럽트(system management interrupt : SMI)가 주기적으로 생성되는 디버그 방법이다. PSMI 핸들러는 메모리에 대해 내부 프로세서 상태를 저장하여 프로세서의 많은 내부 상태가 이후에 프로세서의 소프트웨어 모델 또는 에뮬레이터 상에서 재구성되도록 허용하고, 추정 정보는 디버그를 재생하도록 사용된다.
전형적으로, PSMI는 실행 리소스와 같은 프로세싱 리소스에 의존하며, 결정 결과가 프로세서에 의해 반환되도록 프로세서 내의 다른 이벤트와 동기화된다. PSMI의 기법의 사용은, 예를 들어, 동일한 프로세서 내에서 통합됨으로 인해, 클로킹 도메인의 수가 증가함에 따라 보다 어려워진다.
본 발명의 실시예는 예시를 위한 것이고, 제한적인 것은 아니며, 첨부 도면에서 유사한 참조 부호는 유사한 요소를 지칭한다.
컴퓨터 시스템 또는 집적 회로 내에서 다수의 클로킹 도메인 사이의 결정을 촉진하는 기법이 제공된다.
본 발명에 있어서, 하나 이상의 실행 유닛은 다수의 상이한 클로킹 도메인을 갖는 프로세서 시스템 내에서 다수의 클록에 대한 결정 상태에 위치한다.
도 1은 본 발명의 적어도 일 실시예가 사용될 수 있는 마이크로프로세서를 도시한다. 특히, 도 1은 하나 이상의 프로세서 코어(105 및 110)를 갖고, 이들 각각은 적어도 하나의 비(non)CPU 기능 유닛(107 및 113)을 갖는 마이크로프로세서(100)를 도시한다. 또한 도 1에는 기능 유닛(107 및 113)에 의해 수행되지 않는 다른 동작을 수행할 수 있는 비CPU 기능 유닛(107 및 113)이 도시되어 있다. 일 실시예에서, 기능 유닛(107, 113 및 115)은 그래픽 프로세싱, 메모리 제어, 오디오, 비디오, 디스크 제어, 디지털 신호 프로세싱 등의 주변 기기 제어와 같은 기능을 포함할 수 있다. 몇몇 실시예에서, 마이크로프로세서(100)는 I/O 제어와 같이 도 1에 도시되지 않은 다른 로직을 또한 포함할 수 있다. 일 실시예에서, 멀티프로세서 시스템 내의 각각의 마이크로프로세서 또는 멀티코어 프로세서 내의 각각의 프로세서 코어는 적어도 일 실시예에 따라, 다수의 클록 도메인을 갖는 프로세서 내에서 결정을 촉진하는 기법을 가능하게 하도록 로직을 포함하거나 또는 그렇지 않으면 로직(119)과 연관될 수 있다. 로직은 일 실시예에 따른 프로세서 내의 하나 이상의 클록 또는 이벤트와 하나 이상의 실행 리소스를 동기화하기 위한 하드웨어 회로를 포함할 수 있다. 다른 실시예에서, 로직(119)은 다수의 클로킹 도메인을 갖는 프로세서에서 실행 리소스 내의 결정을 촉진하는데 도움을 주는 소프트웨어를 포함할 수 있다. 다른 실시예에서는 본 명세서에서 기술된 결정 촉진 기법을 수행하는데 하드웨어 및 소프트웨어의 결합이 사용될 수 있다.
일 실시예에서, 애플리케이션, 운영 체제, BIOS, 펌웨어 등과 같은 소프트웨 어 프로그램의 향상, 디버그 또는 최적화에 있어 지원하기 위해, 프로세서 내의 다양한 기능으로 인해 다수의 클로킹 도메인을 갖는 프로세서 내에서 실행 리소스를 결정 상태에 놓이도록 로직이 집적 회로의 내부 또는 외부에서 사용될 수 있다. 예를 들어, 일 실시예에서, 로직(119)은 다수의 상이한 주파수 또는 위상을 갖는 다수의 상이한 클록으로부터 공통의 클록 에지 또는 이벤트에 근거하여 공통 클록을 생성하도록 유니버설 클록 펄스 생성기(universal clock pulse generator : UCPG)를 포함한다. 일 실시예에서, UCPG의 출력은 UCPG에 의해 나타내어진 바와 같이, 프로세서 내의 각종 클록에 대해 결정 상태에 있는 실행 리소스를 촉진하기 위해, 특정의 임계 카운트 값에서 또는 특정의 임계 카운트 값 이상에서 실행 리소스가 디버그되거나 또는 최적화될 프로그램과 연관된 프로세싱 인스트럭션을 개시하도록 할 때, 카운터의 상태를 변경하도록 사용된다.
예를 들어, 일 실시예에서, 카운터는 초기 값으로 초기화되고 동기화될 실행 유닛이 정지한다. UCPG로부터의 신호 에지가 카운터를 감분(또는 일 실시예에서,증분)하도록 함에 따라, 카운터는 "0" 값과 같은 특정의 임계 값에 도달하여, 실행 유닛에 대해 인터럽트가 생성하도록 한다. 그 다음에 실행 유닛은 UCPG 신호의 생성에 기여하는 프로세서 내의 각종 클록에 대한 결정 지점에서 실행 인스트럭션을 개시한다. 프로세서 내의 각종 클로킹 도메인에 대한 결정 상태에서의 실행에 의해, 프로세싱 코드는 보다 신뢰성 있는 방식으로, PSML과 같은 기법을 이용하여 디버그되거나 또는 최적화될 수 있다. 일 실시예에서, 본 명세서에서 기술된 기법은 그래픽, 메모리 제어, 각종 주변 기기 제어와 같은 다수의 상이한 기능, 다수의 프 로세서 코어를 갖는 프로세서(시스템 온 칩(system-on-chip : SoC) 프로세서와 같은)에서 사용될 수 있다. 본 명세서에서 기술된 기법은 개별적인 집적 회로 사이에서 다수의 기능이 분배되는 컴퓨터 시스템에서 또한 사용될 수 있다.
도 2는, 예를 들어, 본 발명의 일 실시예가 사용될 수 있는 프런트 사이드 버스(front-side-bus : FSB) 컴퓨터 시스템을 도시한다. 임의의 프로세서(201, 205, 210 또는 215)는 프로세서 코어(223, 227, 233, 237, 243, 247, 253, 257) 내에서 또는 이들 중 하나와 달리 연관된 임의의 로컬 레벨 1(L1) 캐쉬 메모리(220, 225, 230, 235, 240, 245, 250, 255)로부터의 정보를 액세스할 수 있다. 또한, 임의의 프로세서(201, 205, 210 또는 215)는 공유 레벨 2(L2) 캐쉬(203, 207, 213, 217) 중 임의의 하나로부터 또는 칩셋(265)을 통해 시스템 메모리(260)로부터 정보를 액세스할 수 있다. 도 2의 프로세서 중 하나 이상은 다수의 클록 도메인 사이에서 프로세싱 결정을 촉진하도록 로직을 포함하거나 또는 그렇지 않으면 로직(219)과 연관될 수 있다.
도 2에 도시된 FSB 컴퓨터 시스템에 부가하여, 포인트 투 포인트(point-to-point : P2P) 상호 접속 시스템 및 링 상호 접속 시스템을 포함하는 본 발명의 각종 실시예와 결합하여 다른 시스템 구성이 사용될 수 있다. 도 3의 FSB 시스템은, 예를 들어, 몇 개의 프로세서를 포함할 수 있으며, 이들 중 단지 2개의 프로세서(370, 380)만이 예시로서 도시되어 있다. 프로세서(370, 380)는 메모리(32, 34)와 접속하도록 로컬 메모리 콘트롤러 허브(memory controller hub : MCH)(372, 382)를 각각 포함할 수 있다. 프로세서(370, 380)는 포인트 투 포인트(point-to- point : PtP) 인터페이스 회로(378, 388)를 이용하여 PtP 인터페이스(350)를 통해 데이터를 교환할 수 있다. 프로세서(370, 380)는 각각 PtP 인터페이스 회로(376, 394, 386, 398)를 이용하여 개별적인 PtP 인터페이스(352, 354)를 통해 데이터를 교환할 수 있다. 칩셋(390)은 고 성능 그래픽 인터페이스(339)를 통해 고 성능 그래픽 회로(338)와 데이터를 또한 교환할 수 있다. 본 발명의 실시예는 임의의 수의 프로세싱 코어를 갖는 임의의 프로세서 내에, 또는 도 3의 PtP 버스 에이전트의 각각 내에 위치할 수 있다. 일 실시예에서, 임의의 프로세서 코어는 로컬 캐쉬 메모리(도시되지 않음)를 포함하거나 또는 그렇지 않으면 로컬 캐쉬 메모리와 연관될 수 있다. 또한, 공유 캐쉬(도시되지 않음)는 양 프로세서 외부의 프로세서에 포함될 수 있으나, P2P 상호 접속을 통해 프로세서와 접속됨에 따라, 프로세서가 저 전력 모드에 위치하는 경우 하나 또는 양 프로세서의 로컬 캐쉬 정보는 공유 캐쉬에 저장될 수 있다. 도 3의 프로세서 또는 코어 중 하나 이상은 시스템 내의 프로세서 또는 다른 집적 회로 내에서 실행 결정을 촉진하기 위한 로직을 포함하거나 또는 그렇지 않으면 로직과 연관될 수 있다. 로직은 PSMI와 같은 기법을 이용하여 프로그램을 디버그하거나 또는 최적화하는데 도움을 주기 위해, 본 명세서에서 기술된 바와 같이, 실행 리소스를 결정 상태에 위치하도록 하나 이상의 카운터 및 UCPG와 같은 스토리지를 포함하거나 또는 스토리지와 연관될 수 있다.
도 4는 본 발명의 적어도 일 실시예를 수행하는 로직을 도시한다. 일 실시예에서, 로직(419)은 다수의 상이한(또는 동일한) 주파수 및/또는 위상을 갖는 다수의 상이한 클록 펄스(403)를 수신하고 주파수 및 위상이 상이한 클록 펄스의 공 통 상태에 대응하는 공통 클록 펄스를 생성하도록 UCPG(401)를 포함한다. 예를 들어, 일 실시예에서, 카운터는 0이 아닌 값으로부터 0으로 카운트 다운한다. UCPG는 다수의 클록 신호에 대해 결정하는 신호를 생성하는 것을 보증하는 다수의 상이한 기법을 구현할 수 있으며, 이들의 각각은 역 위상이거나 또는 상이한 주파수를 가질 수 있다. 일 실시예에서, 로직(419)은 UCPG로부터의 출력 신호(407)에 대응하는 주파수에서 초기 값으로부터 임계 값으로 카운트하는 카운터(405)를 또한 포함한다. 예를 들어, 일 실시예에서, 카운터는 0이 아닌 값으로 설정되고 "0" 값과 같은 임계 값으로 카운트 다운하는 반면, 다른 실시예에서 카운터는 "0"과 같은 값으로 초기화되고, 임계 값으로 카운트 업한다. 일 실시예에서, 카운터(405)는 다수의 카운터일 수 있으며, 각각은 적어도 2개의 상이한 클로킹 도메인에 대해 하나 이상의 실행 리소스를 결정 상태에 위치하도록 결합하여 또는 개별적으로 작동한다.
카운터가 임계 값에 도달하는 경우, 적어도 하나의 실행 유닛이 정지된 상태로부터 인터럽트되도록 하고 적어도 하나의 실행 유닛이 UCPG 클록 펄스에 대한 결정 상태에 위치하도록 하여, UCPG 클록 펄스에 의해 나타내어진 클록 대해 실행 유닛을 결정 상태로 위치시킬 수 있다. 로직(419)을 이용하여, PSMI와 같은 디버그 또는 최적화 기법은 다수의 클로킹 도메인을 갖는 프로세서에서 실행되는 프로그램을 개발하거나 또는 디버그하는데 도움을 주도록 사용될 수 있다.
도 5는 실시예가 사용되는 프로세서 또는 시스템 구성에 관계없이, 본 발명의 적어도 일 실시예와 결합하여 사용될 수 있는 동작의 플로우차트를 도시한다. 동작(501)에서, 카운터는 초기 상태로 초기화된다. 일 실시예에서, 초기 상태는 0보다 큰 값을 나타낸다. 동작(505)에서, 대응하는 실행 유닛 또는 유닛들이 중지한다. 동작(510)에서, 유니버설 클록 펄스 생성기(UCPG)는 UCPG 클록 펄스의 에지와 동기하여 카운터가 감분하도록 한다. 다른 실시예에서, UCPG 펄스는 카운터가 값을 증분하도록 한다. 동작(515)에서, 카운터가 임계 값에 도달하는 경우, 동작(520)에서 UCPG 클록 펄스에 의해 나타내어진 클록에 대해 실행 인스트럭션을 결정 방식으로 실행하도록 대응하는 실행 유닛(들)이 활성화된다. UCPG 클록 펄스와 동기화된 프로세서 내의 각종 클록으로 실행 유닛(들)을 결정 상태로 하는 것에 의해, PSMI아 같은 디버그 또는 최적화 기법은 다수의 클로킹 도메인을 갖는 프로세서 또는 시스템 상에서 실행하도록 의도된 소프트웨어 프로그램을 디버그하거나 개발하는데 도움을 주도록 사용될 수 있다.
적어도 일 실시예의 하나 이상의 측면은 머신이 본 명세서에서 기술된 기법을 수행하는 로직을 머신이 제조하도록 하는 머신에 의해 판독되는 경우 프로세서 내의 각종 로직을 나타내는 머신 판독 가능한 매체 상에 저장된 대표적인 데이터에 의해 구현될 수 있다. "IP 코어"로서 알려진 이러한 표현은 실질적인 머신 판독 가능한 매체("테이프") 상에 저장되고 각종 고객에 공급되거나, 로직 또는 프로세서를 실질적으로 형성하는 제조 머신으로 로드하기 위한 설비를 제조한다.
따라서, 마이크로 아키텍처(micro-architectural) 메모리 영역 액세스를 지향하는 방법 및 장치가 기술되었다. 상기 설명은 예시적인 것이며 제한적이지 않은 것으로 의도된다는 것을 이해해야 한다. 당 분야에서 통상의 지식을 가진 자라 면 상기 설명을 판독하여 이해함에 있어 다수의 다른 실시예가 명백할 것이다. 따라서, 본 발명의 범위는 청구 범위가 제공되는 균등물의 전체 범위와 함께 첨부된 청구 범위를 참조하여 결정되어야 한다.
도 1은 본 발명의 적어도 일 실시예가 사용될 수 있는 마이크로프로세서의 블록도이고,
도 2는 본 발명의 적어도 일 실시예가 사용될 수 있는 공유 버스 컴퓨터 시스템의 블록도이며,
도 3은 본 발명의 적어도 일 실시예가 사용될 수 있는 포인트 투 포인트 상호 접속 컴퓨터 시스템의 블록도이고,
도 4는 본 발명의 적어도 일 실시예가 사용될 수 있는 로직의 블록도이며,
도 5는 본 발명의 적어도 일 실시예를 수행하도록 사용될 수 있는 동작의 플로우차트.
도면의 주요 부분에 대한 부호의 설명
100 : 마이크로프로세서
105, 110 : 프로세서 코어
107, 113, 115 : 기능 유닛
119 : 로직

Claims (20)

  1. 다수의 상이한 주파수 및 위상을 갖는 다수의 상이한 클록 신호에 공통인 클록 펄스를 생성하는 유니버설 클록 펄스 생성기(universal clock pulse generator: UCPG)와,
    상기 UCPG 클록 펄스에 비례하는 주파수에서 초기 값으로부터 임계 값으로 카운트하는 카운터와,
    상기 카운터가 상기 임계 값에 도달하는 결과로서 중지된 상태(halted state)로부터 활성화될 적어도 하나의 실행 유닛을 포함하는
    장치.
  2. 제 1 항에 있어서,
    상기 적어도 하나의 실행 유닛은 상기 카운터를 초기 상태로 리세트하는
    장치.
  3. 제 1 항에 있어서,
    상기 초기 값은 0이 아닌(non-zero) 값이며 상기 임계 값은 0 값인
    장치.
  4. 제 1 항에 있어서,
    상기 UCPG 클록 펄스 주파수는 상기 카운터의 카운트 시의 변경 주파수인
    장치.
  5. 제 1 항에 있어서,
    인스트럭션 디코더, 인스트럭션 스케줄러 및 인스트럭션 리타이어먼트(retirement) 유닛을 더 포함하는
    장치.
  6. 소프트웨어 프로그램을 포함하는 메모리와,
    상기 소프트웨어 프로그램을 수행하며, 적어도 하나의 실행 유닛 및 다수의 기능에 대응하는 다수의 클로킹 도메인을 갖는 프로세서와,
    상기 다수의 클로킹 도메인에 대해 상기 적어도 하나의 실행 유닛 내의 결정을 촉진하고, 유니버설 클럭 펄스에 대응하는 레이트(rate)에서 초기 값으로부터 임계 값으로 카운트하는 카운터를 포함하는 로직을 포함하되,
    상기 유니버설 클럭 펄스는 상기 다수의 클로킹 도메인으로부터의 다수의 클록에 동기화되는
    시스템.
  7. 제 6 항에 있어서,
    상기 소프트웨어 프로그램의 디버그를 지원하는 주기적 시스템 관리 인터럽트(periodic system management interrupt : PSMI) 로직을 더 포함하며, 상기 PSMI 로직은 상기 결정 촉진 로직에 따라 상기 다수의 클로킹 도메인과 동기화되는
    시스템.
  8. 제 7 항에 있어서,
    상기 프로세서는 CPU, 그래픽 엔진, 메모리 제어 유닛 및 적어도 하나의 주변 기기 제어 유닛을 포함하는
    시스템.
  9. 제 8 항에 있어서,
    다수의 프로세서를 더 포함하는
    시스템.
  10. 제 9 항에 있어서,
    상기 다수의 프로세서 중 적어도 2개는 다수의 클로킹 도메인을 갖는
    시스템.
  11. 카운터를 초기 값으로 초기화하는 단계와,
    상기 카운터에 결합된 실행 유닛을 중지하는 단계와,
    유니버설 클록 펄스 생성기(universal clock pulse generator : UCPG) 신호 주파수에 비례하는 레이트로 상기 카운터 값을 변경하는 단계와,
    상기 카운터가 임계 값에 도달한 이후에 상기 실행 유닛을 활성화하는 단게를 포함하는
    방법.
  12. 제 11 항에 있어서,
    상기 실행 유닛은 상기 카운터가 초기 값에 위치하도록 하는
    방법.
  13. 제 11 항에 있어서,
    상기 UCPG 신호는 다수의 클로킹 도메인으로부터의 다수의 클록 신호를 나타내는
    방법.
  14. 제 11 항에 있어서,
    상기 실행 유닛은 상기 카운터 값이 상기 임계 값에 도달한 이후에 인터럽트 신호를 생성함으로써 활성화되는
    방법.
  15. 제 11 항에 있어서,
    상기 초기 카운터 값은 0이 아닌 값이며 상기 임계 값은 0 값인
    방법.
  16. 인스트럭션 세트가 저장된 머신 판독 가능한 매체로서, 상기 인스트럭션은 머신에 의해 실행시에 상기 메인이
    실행 유닛 내에서 다수의 인스트럭션을 실행하는 단계와,
    다수의 인스트럭션에 의한 결정 지점에서 주기적 시스템 관리 인터럽트(periodic system management interrupt : PSMI) 신호를 생성하는 단계로서, 상기 결정 지점은 상기 실행을 다수의 클록 도메인으로부터의 다수의 클록에 대해 알려진 상태에 위치시키는 결정 로직의 결과이고, 상기 결정 로직은 상기 카운터가 임계 값에 도달하는 경우 상기 실행이 중지된 상태로부터 활성화하도록 하는 카운터를 포함하며, 상기 카운터는 상기 다수의 클록 도메인으로부터의 상기 다수의 클록을 나타내는 유니버설 클록 펄스에 비례하는 레이트로 상기 임계값까지 카운트하는 단계를 포함하는 방법을 실행하는
    머신 판독 가능한 매체.
  17. 제 16 항에 있어서,
    상기 초기 값은 0보다 큰 값이고 상기 임계 값은 0인
    머신 판독 가능한 매체.
  18. 제 16 항에 있어서,
    상기 초기 값은 0이고 상기 임계 값은 0보다 큰
    머신 판독 가능한 매체.
  19. 제 16 항에 있어서,
    상기 실행 유닛은 시스템 온 칩(system-on-chip : SoC) 프로세서와 연관되는
    머신 판독 가능한 매체.
  20. 제 19 항에 있어서,
    상기 SoC 프로세서는 적어도 하나의 CPU, 그래픽 엔진, 메모리 콘트롤러 및 적어도 하나의 주변 기기 콘트롤러를 포함하는
    머신 판독 가능한 매체.
KR1020090018398A 2008-03-05 2009-03-04 다수의 클록 도메인 사이의 결정을 촉진하는 장치, 시스템,방법 및 머신 판독 가능한 매체 KR101196494B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/042,985 US8312309B2 (en) 2008-03-05 2008-03-05 Technique for promoting determinism among multiple clock domains
US12/042,985 2008-03-05

Publications (2)

Publication Number Publication Date
KR20090095500A true KR20090095500A (ko) 2009-09-09
KR101196494B1 KR101196494B1 (ko) 2012-11-01

Family

ID=40953295

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090018398A KR101196494B1 (ko) 2008-03-05 2009-03-04 다수의 클록 도메인 사이의 결정을 촉진하는 장치, 시스템,방법 및 머신 판독 가능한 매체

Country Status (7)

Country Link
US (1) US8312309B2 (ko)
JP (1) JP5336228B2 (ko)
KR (1) KR101196494B1 (ko)
CN (1) CN101526831B (ko)
DE (1) DE102009010627A1 (ko)
RU (1) RU2432601C2 (ko)
TW (1) TWI395089B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8103816B2 (en) * 2008-10-28 2012-01-24 Intel Corporation Technique for communicating interrupts in a computer system
GB2507049A (en) 2012-10-16 2014-04-23 Ibm Synchronizing Trace Data
US9043521B2 (en) 2012-11-13 2015-05-26 Intel Corporation Technique for communicating interrupts in a computer system
US11200184B1 (en) * 2020-12-22 2021-12-14 Industrial Technology Research Institute Interrupt control device and interrupt control method between clock domains
US11764834B2 (en) 2022-02-15 2023-09-19 Raytheon Company Device for and method of synchronizing multiple beamforming devices

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3999169A (en) * 1975-01-06 1976-12-21 The United States Of America As Represented By The Secretary Of The Navy Real time control for digital computer utilizing real time clock resident in the central processor
US4099255A (en) * 1976-12-10 1978-07-04 Honeywell Information Systems Inc. Interrupt apparatus for enabling interrupt service in response to time out conditions
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
EP0449305B1 (en) * 1990-03-28 1999-07-21 Nec Corporation Data processor for generating pulse signal in response to external clock
JPH0776931B2 (ja) * 1990-11-27 1995-08-16 工業技術院長 情報処理システム
US5295257A (en) * 1991-05-24 1994-03-15 Alliedsignal Inc. Distributed multiple clock system and a method for the synchronization of a distributed multiple system
US5586332A (en) * 1993-03-24 1996-12-17 Intel Corporation Power management for low power processors through the use of auto clock-throttling
DE69505224T2 (de) * 1994-07-22 1999-05-20 Advanced Micro Devices Inc Computersystem
JPH0898284A (ja) * 1994-07-25 1996-04-12 Nippondenso Co Ltd データ受信装置,送信装置および通信装置
JPH1165898A (ja) * 1997-08-21 1999-03-09 Hitachi Ltd 電子計算機の保守方式
EP0939491B1 (en) * 1998-02-27 2007-04-18 Lucent Technologies Inc. Clock pulse generator
US6128745A (en) * 1998-05-28 2000-10-03 Phoenix Technologies Ltd. Power management inactivity monitoring using software threads
US6118306A (en) * 1998-12-03 2000-09-12 Intel Corporation Changing clock frequency
JP2001013179A (ja) * 1999-06-29 2001-01-19 Mitsubishi Electric Corp リングオシレータクロック周波数測定方法、リングオシレータクロック周波数測定回路、およびマイクロコンピュータ
US6724850B1 (en) * 2000-08-31 2004-04-20 Hewlett-Packard Development Company, L.P. Deterministic hardware behavior between multiple asynchronous clock domains through the novel use of a PLL
US6948098B2 (en) * 2001-03-30 2005-09-20 Cirrus Logic, Inc. Circuits and methods for debugging an embedded processor and systems using the same
DE10229129C1 (de) * 2002-06-28 2003-12-11 Advanced Micro Devices Inc Debug-Schnittstelle für einen Ereigniszeitgeber
US20040040013A1 (en) * 2002-08-26 2004-02-26 Mohit Kalra Time-based breakpoints in debuggers
US6987404B2 (en) * 2003-10-10 2006-01-17 Via Technologies, Inc. Synchronizer apparatus for synchronizing data from one clock domain to another clock domain
US7269768B2 (en) * 2004-03-18 2007-09-11 Intel Corporation Method and system to provide debugging of a computer system from firmware
CN1780488B (zh) * 2004-11-23 2010-05-05 中兴通讯股份有限公司 一种程控交换机系统时钟校准装置
JP4847734B2 (ja) * 2005-10-31 2011-12-28 ルネサスエレクトロニクス株式会社 半導体集積回路装置、それのデバッグシステム及びデバッグ方法。
WO2008020513A1 (fr) * 2006-08-14 2008-02-21 Nec Corporation débogueur et procédé de débogage

Also Published As

Publication number Publication date
CN101526831A (zh) 2009-09-09
TWI395089B (zh) 2013-05-01
KR101196494B1 (ko) 2012-11-01
DE102009010627A1 (de) 2009-09-17
RU2432601C2 (ru) 2011-10-27
TW200944997A (en) 2009-11-01
JP2010020752A (ja) 2010-01-28
CN101526831B (zh) 2013-05-08
US20090228736A1 (en) 2009-09-10
JP5336228B2 (ja) 2013-11-06
US8312309B2 (en) 2012-11-13
RU2009107795A (ru) 2010-09-10

Similar Documents

Publication Publication Date Title
JP4584315B2 (ja) 仮想マシン環境におけるタイマ・オフセット機構
US9690603B2 (en) Central processing unit, information processing apparatus, and intra-virtual-core register value acquisition method
US7689867B2 (en) Multiprocessor breakpoint
JP5438215B2 (ja) 複数のコアおよびスレッドについてのタイムスタンプカウンタ(tsc)のオフセットの制御
EP1358557B1 (en) Operating system-independent method and system of determining cpu utilization
KR20130126717A (ko) 낮은 오버헤드를 갖는 전력 프로파일 정보의 획득
TW201508635A (zh) 多核心微處理器動態重新配置
TW201510860A (zh) 多核心同步機制
US20170293541A1 (en) Self-testing in a processor core
US8370684B2 (en) Microprocessor with system-robust self-reset capability
US20180276052A1 (en) Deadlock detector, system including the same and associated method
KR101196494B1 (ko) 다수의 클록 도메인 사이의 결정을 촉진하는 장치, 시스템,방법 및 머신 판독 가능한 매체
TW201333694A (zh) 於即時指令追蹤紀錄中之除錯動作的選擇性紀錄技術
KR20080054409A (ko) 변화를 탐지하는 클러스터 아키텍처
US7269756B2 (en) Customizable event creation logic for hardware monitoring
US9092333B2 (en) Fault isolation with abstracted objects
WO2023107789A1 (en) Deterministic replay of a multi-threaded trace on a multi-threaded processor
US20210173004A1 (en) Debug state machine triggered extended performance monitor counter
US9600422B2 (en) Monitoring accesses to memory in a multiprocessor system
US11880231B2 (en) Accurate timestamp or derived counter value generation on a complex CPU
van der Put Time-predictability of a computer system

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: 20151002

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee