KR20060052924A - 데이터 처리 시스템 및 데이터 처리 방법 - Google Patents

데이터 처리 시스템 및 데이터 처리 방법 Download PDF

Info

Publication number
KR20060052924A
KR20060052924A KR1020067001925A KR20067001925A KR20060052924A KR 20060052924 A KR20060052924 A KR 20060052924A KR 1020067001925 A KR1020067001925 A KR 1020067001925A KR 20067001925 A KR20067001925 A KR 20067001925A KR 20060052924 A KR20060052924 A KR 20060052924A
Authority
KR
South Korea
Prior art keywords
processing
data
local controller
coprocessor
processing element
Prior art date
Application number
KR1020067001925A
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 KR20060052924A publication Critical patent/KR20060052924A/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/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • 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/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • 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/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • 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)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Advance Control (AREA)

Abstract

프로그래밍가능 플랫폼은 중앙 처리 유닛(CPU), 코프로세서(COP1, COP2), 및 다양한 프로세서를 접속시키는 공용 시스템 버스(SB)를 포함한다. 미디어 처리 애플리케이션에서, 기능의 처리는 중앙 처리 유닛 및 코프로세서에 분산된다. 이러한 기능은 하드웨어, 소프트웨어, 또는 이들의 조합으로 실시된다. 각 프로세서의 사용은, 미디어 처리 애플리케이션의 특징에 따라, 단일 애플리케이션의 실행 동안 상이한 애플리케이션들 모두를 마찬가지로 변화시킨다. 그 결과, 하나 이상의 코프로세서는 미디어 처리의 특정 부분 동안 효과적으로 사용되지 않는다. 동기식 시스템의 경우, 이들 코프로세서는 계속해서 전력을 소비한다. 본 발명에 따르면, 코프로세서는 그 코프로세서의 작업부하(workload)에 따라 국소 제어기에 의해 공급 전력이 감소할 수 있다. 그 결과, 전력 제어가 분산되고 자동적이며, 코프로세서의 필요 처리 용량에만 의존한다.

Description

데이터 처리 시스템 및 데이터 처리 방법{FLEXIBLE POWER REDUCTION FOR EMBEDDED COMPONENTS}
본 발명은 데이터 처리 시스템 및 데이터 처리 방법에 관한 것이다.
프로그래밍가능 플랫폼은 중앙 처리 유닛(CPU), 하나 이상의 코프로세서, 및 다양한 프로세서를 접속시키는 공용 버스를 포함한다. 미디어 처리 애플리케이션에서는, 기능의 처리가 중앙 처리 유닛 및 코프로세서에 분산된다. 이러한 기능은 하드웨어, 소프트웨어, 또는 이들은 혼합 내에서 규정된다. 이러한 선택은, 특히, 기능 자체, 기능의 제조량, 및 논의 중인 회로에 의존한다. CPU는 소프트웨어 제어되며, 적합한 소프트웨어의 사용에 의해 많은 상이한 희망 목적용으로 채택되어 훌륭한 유연성(flexibility)을 제공할 수 있다. 코프로세서는 특정 기능을 실행하는 데 전용된다. 일반적으로, 주어진 기능에 대해서, 소프트웨어 제어형 프로세서는 일반적으로 실리콘 영역 및 전력 소비 측면에서는 그 기능에 전용되는 코프로세서보다 덜 효율적이지만, 더 유연하다. CPU는 또한 플랫폼용 제어기로서 작용할 수도 있다.
미디어 처리는 비디오, 그래픽 또는 오디오 처리를 포함한다. 각 코프로세서의 활용은, 미디어 처리 애플리케이션의 특성 또는 특정 용도의 동작 모드에 따라, 단일 애플리케이션의 실행 동안 상이한 애플리케이션들 모두에 대해서 마찬가지로 변화할 수 있다. 그 결과, 하나 이상의 코프로세서는 특정 부분의 미디어 처리 동안에 효율적으로 활용되지 못할 수도 있다. 동기식 시스템의 경우, 그러한 코프로세서는 계속해서 전력을 소비하는데, 이는 코프로세서가 여전히 클록 신호를 수신하기 때문이다. 동기식 프로그램가능 플랫폼의 전력 소비를 감소시키기 위해서, 플랫폼의 클록 주파수는 최고의 활용도를 갖는 코프로세서에 따라 낮아질 수 있다. 다른 방안은 플랫폼의 공급 전압을 낮추는 것이다. 사용되지 않는 코프로세서는 또한 공급받는 전력이 정적으로 감소할 수 있다. 그러나, 이러한 모든 경우에 있어서, 상당한 양의 코프로세서는 여전히 특정한 순간에 필요한 처리 용량보다 더 많은 처리 용량을 제공할 것이며, 이에 따라 필요한 전력보다 더 많은 전력을 소비한다.
본 발명의 목적은, 전력을 동적으로 감소시키는 분산형 전력 제어 및 개별 소자를 구비한 데이터 처리 시스템을 제공하는 데 있다.
이 목적은, 적어도 하나의 클록 설비의 제어 하에, 데이터를 동기식으로 처리하도록 구성된 다수의 처리 소자를 포함하는 데이터 처리 시스템을 이용하여 달성된다. 데이터 처리 시스템은 다수의 처리 소자 중 하나의 처리 소자와 연관되는 적어도 하나의 국소 제어기, 및 다수의 처리 소자의 처리 소자들 사이에 데이터를 교환하도록 구성된 데이터 통신 수단을 더 포함하며, 국소 제어기는 처리 소자의 필요 처리 용량에 따라 연관된 처리 소자의 공급 전력을 감소시키도록 구성된다. 코프로세서의 작업부하(workload)에 따라, 국소 제어기는 코프로세서의 공급 전력을 감소시켜서, 전력을 동적으로 제어한다. 각각의 코프로세서가 국소 제어기를 구비하고 있으므로, 전력 관리는 처리 시스템 전체에 분산된다. 다시 말해, 전력 관리를 위한 범용 제어 메커니즘이 필요하지 않다. 이러한 범용 제어 메커니즘은, 특히 비교적 많은 수의 처리 소자를 구비한 데이터 처리 시스템의 경우, 상당한 양의 오버헤드를 유도하며, 용도에서의 차이점이 이를 더욱 악화시킬 수도 있다. 개별 코프로세서의 전력 제어는 나머지 처리 시스템에 대해 명백한데, 이는 다른 코프로세서가 그 특정 코프로세서의 현재 전력 상태에 관해 알 필요가 없음을 의미한다. 항상, 필요한 경우, 임의의 처리 소자 또는 처리 소자들의 조합은 자동으로 이용가능하게 될 것이다. 처리 소자의 전력 감소는 처리 소자를 휴면 모드(sleep mode)가 되게 하는 것 뿐 아니라 처리 소자에 대해 전력을 완전히 차단하는 것도 포함한다.
US2002/0007463A1에는 서버로서 동작하는 다수의 유닛을 포함하는 컴퓨터 시스템이 설명되어 있다. 각각의 유닛은 적어도 하나의 프로세서, 및 프로세서의 활성화 정도를 식별하는 활성화 감시기를 구비하고 있다. 각각의 유닛은 세 가지 상이한 모드에서 동작가능하여, 실질적으로 상이한 전력 소비율을 갖는다. 제어기는 컴퓨터 시스템의 유닛들에 연결되어, 각 유닛으로부터 활성화 정도에 대한 정보를 수신한다. 제어기는 이 정보를 분석하여 각 유닛의 동작 모드를 결정한다. 이어서, 제어기는 결정된 동작 모드에서 그 유닛이 동작할 것을 지시하는 명령을 각 유닛에 생성한다. 그러나, 이 문헌에는 범용 제어 메커니즘이 필요하지 않은 분산형 전력 관리 시스템이 기술되어 있지 않다.
US2003/0025689A1에는 컴퓨터 시스템과 같은 전자 디바이스용 전력 관리 방법이 설명되어 있다. 이 방법은 여러 가지 전력 보존 기술을 포함하여, 정적 전력 제어, 동적 전력 제어, 및 프로그래밍가능 클록 비를 갖는 하나 이상의 상이한 프로그래밍가능 클록 수단을 포함하는 유연한 클록 발생기를 포함한다. 정적 전력 제어는 상이한 시간에 임의의 사용되지 않는 기능 모듈의 공급 전력을 감소시키는 데 사용된다. 동적 전력 제어는 클로킹 메커니즘(clocking mechanism)을 활용하여 전체 시스템의 전력 소비를 감소시킨다. 유연한 클록 발생기를 사용하면, 적절한 클록 속도가 설정되어, 충분한 클록 속도를 가까운 특정 태스크에 제공한다. 그러나, 이 문헌에는 하나 이상의 하드웨어의 공급 전력을 개별적이고 동적으로 감소시키는 방법이 기술되어 있지 않다.
본 발명의 실시예는, 데이터 처리 시스템이 다수의 처리 소자 중 하나의 처리 소자에 연관되는 적어도 하나의 버퍼를 더 포함하되, 버퍼는 연관된 처리 소자 와 데이터 통신 수단 사이에서 데이터를 교환하도록 구성되고, 국소 제어기는 연관된 버퍼의 충만(filling) 정도로부터 연관된 처리 소자의 필요 처리 용량을 결정하도록 구성되는 것을 특징으로 한다. 연관된 버퍼의 충만 정도를 이용하는 것은, 연관된 처리 소자의 작업부하를 판별하는 비교적 간단한 방식이다. 버퍼가 비어 있는 경우, 국소 제어기는 처리 소자의 공급 전력을 감소시킨다. 버퍼가 적어도 부분적으로 다시 충만되지만, 국소 제어기는 처리 소자의 공급 전력을 증가시킨다.
본 발명의 실시예는, 데이터 처리 시스템이 제어 프로세서를 더 포함하되, 국소 제어기는 제어 프로세서로부터 연관된 처리 소자의 필요 처리 용량에 대한 정보를 수신하도록 구성되고, 국소 제어기는 연관된 처리 소자의 처리 용량에 대한 정보를 가지도록 더 구성되는 것을 특징으로 한다. 이 정보를 이용하여, 국소 제어기는 대응하는 처리 소자가 휴지 상태에 있는 시간 간격을 판별하여, 이 시간 간격의 길이에 따라 처리 소자의 공급 전력을 감소시킨다. 일단 처리 소자가 처리할 새로운 데이터를 수신하면, 국소 제어기는 대응하는 처리 소자의 공급 전력을 증가시킨다.
본 발명의 실시예는 다수의 처리 소자 중의 처리 소자가 연관된 국소 제어기에 필요 처리 용량을 통지하는 인터럽트를 발생시키도록 더 구성된다. 처리 소자는, 데이터 처리를 완료한 경우, 대응하는 국소 제어기를 통지한다. 이어서 국소 제어기는 처리 소자의 공급 전력을 감소시킨다. 처리용의 새로운 데이터가 도달하는 순간, 처리 소자의 공급 전력은 다시 증가한다.
본 발명의 실시예는, 클록 주기 시퀀스가 데이터 양의 처리 동작을 초래하되, 데이터 처리 시스템은 다수의 처리 소자 중 처리 소자용 프로그래밍가능 스톨링(stall) 클록 주기를 구현하는 프로그래밍가능 수단을 더 포함하고, 프로그래밍가능 스톨링 클록 주기는 클록 주기 시퀀스의 클록 주기들 사이에 산재되는 것을 특징으로 한다. 데이터 블록에 규칙적인 시간이 제공되는 경우는, 데이터 블록의 처리가 다음 데이터 블록의 도달 전에 이미 완료된 경우일 수 있다. 데이터 처리를 위한 클록 주기들 사이의 스톨링 주기의 프로그래밍은 코프로세서의 대역폭 소비의 피크 부하를 감소시키기 위해서 사용될 수 있다. 한편, 남은 시간은 전력 절약을 위해 코프로세서의 공급 전력을 감소시키는 데 사용될 수 있다. 이 실시예의 장점은, 대역폭 소비 확장과 전력 절약 사이의 상충관계(trade off)를 활용하게 하며, 시스템의 요건에 따라 최적화를 이루게 한다는 것이다.
본 발명의 실시예는 적어도 하나의 처리 소자가 데이터 통신 수단을 따라 데이터 전송율 제어용의 대역폭 제어 유닛과 연관되고, 대역폭 제어 유닛은 허용된 최대 데이터율을 초과하는 경우의 데이터 전송을 제한하는 것을 특징으로 한다. 데이터 블록이 처리를 위해 규칙적인 시간에 제공되는 경우는, 데이터 블록의 처리가 다음 데이터 블록의 도달 이전에 이미 완료된 경우가 될 수도 있다. 대역폭 제어 유닛은 실질적으로 수행되는 기능에 적합한 수준으로 처리 소자에 의한 대역폭의 소비를 채택할 수 있다. 대역폭 소비는 두 개의 데이터 블록이 도달하는 사이 시간 간격에 대해 평균화될 수 있다. 대안으로, 남은 시간은 코프로세서의 공급 전력을 감소시키는 데 사용될 수 있다. 이전 실시예의 경우에서와 같이, 대역폭 소비 확장과 전력 절약 사이의 최적화는 시스템 요건에 따라 이루어질 수 있다.
본 발명의 다른 실시예는 종속항에서 기술된다.
본 발명에 따르면, 청구항 9에 따른 데이터 처리 방법이 마찬가지로 제공된다.
도 1은 본 발명에 따른 데이터 처리 시스템의 실시예를 나타낸 도면,
도 2는 본 발명에 따른 데이터 처리 시스템의 다른 실시예를 나타낸 도면,
도 3은 대역폭 제어 유닛의 실시예를 나타낸 도면이다.
도 1 및 도 2는 본 발명에 따른 데이터 처리 시스템의 실시예를 예시한다. 도 1 및 도 2를 참조하면, 데이터 처리 시스템은 시스템 버스 SB, 공용 메모리 MEM, 입력 유닛 IU, 출력 유닛 OU, 중앙 처리 유닛 CPU, 코프로세서 COP1 및 COP2, 버스 인터페이스 BI1 및 BI2, 국소 제어기 CTR1 및 CTR2를 포함한다. 또한, 데이터 처리 시스템은, 도 1 및 도 2에는 도시하지 않았지만, 클록 신호를 시스템의 모든 소자에 전송하는 시스템 클록을 포함한다. 대안의 실시예에서, 데이터 처리 시스템은 상이한 클록 속도로 시스템의 다양한 소자들을 동작시키는 다수의 클록을 가진다. 시스템 버스 SB 및 메모리 MEM은 중앙 처리 유닛 CPU, 입력 유닛 IU, 출력 유닛 OU, 코프로세서 COP1 및 COP2에 의해 공유된다. 데이터 처리 시스템은, 예를 들어, 비디오, 그래픽 또는 오디오 처리 분야의 미디어 처리 애플리케이션을 실행한다. 중앙 처리 유닛 CPU는 전체 시스템을 제어한다. 메모리 MEM을 제어한 다음, 중앙 처리 유닛 CPU는 코프로세서 COP1 및 COP2 내의 각종 제어 레지스터를 즉시 액세스한다. 중앙 처리 유닛 CPU는 또한 미디어 처리 애플리케이션의 기능 중 일부를 포함하는 소프트웨어 프로그램을 실행한다. 코프로세서 COP1 및 COP2는 특정 미디어 처리 기능을 하드웨어로 실행하는 데 전용이며, 미디어 처리 애플리케이션의 이들 기능은 코프로세서 COP1 및 COP2 상으로 맵핑된다. 예를 들어, MPEG 애플리케이션의 경우, 이산 코사인 변환(Discrete Cosine Transform: DCT) 기능 또는 움직임 추정 기능을 나타내는 기능은 각각 코프로세서 COP1 및 COP2 상으로 맵핑될 수 있으며, 이들 특정 기능을 실행하는 데 전용된다. 음색(speech) 또는 화상 입력과 같은 입력 데이터는 입력 유닛 IU를 거쳐서 수신되며, 이어서 중앙 처리 유닛 CPU와 코프로세서 COP1 및 COP2에 의해 처리된다. 출력 데이터는 출력 유닛 OU에 기록되며, 출력 유닛 OU는, 몇 가지 예를 들어, 다른 데이터 처리 시스템 또는 디스플레이 디바이스에 데이터를 출력한다. 몇몇 실시예에서, 입력 유닛 IU는 규칙적인 시간 간격으로 입력 데이터를 수신한다. 다른 실시예에서, 입력 유닛 IU는, 몇 가지 예를 들어, 미디어 애플리케이션 또는 입력 데이터 소스에 따라서 입력 데이터 버스트(bursts of input data)를 수신한다. 몇몇 실시예에서, 출력 유닛 OU는 데이터를 버스트 출력한다. 상이한 실시예에서, 출력 유닛 OU는 데이터를 버스트로 출력한다. 데이터 처리 동안 획득한 중간 결과는 코프로세서 COP1 및 COP2 또는 중앙 처리 유닛 CPU에 의해 시스템 버스 SB를 거쳐서 메모리 MEM 내에 저장될 수 있으며, 이어서 추후의 처리를 위해 메모리 MEM으로부터 검색될 수 있다. 코프로세서 COP1 및 COP2, 입력 유닛 IU, 출력 유닛 IO, 및 중앙 처리 유닛 CPU 중 다양한 소자들이 시스템 버스 SB를 거쳐서 다른 소자와는 개별적으로 데이터 전송을 개시할 수 있으므로, 중재 메커니즘은 버스 전송을 순차화하는 데 필수적이며, 도시하지 않은 경우로 메모리 액세스를 제어한다. 이를 위해, 버스 중재 기가 사용될 수 있지만, 도 1 및 도 2에는 도시하지 않았다. 코프로세서 COP1 및 COP2는 각각 버스 인터페이스 BI1 및 BI2를 거쳐서 시스템 버스 SB와 통신한다. 이들 버스 인터페이스 BI1 및 BI2는 시스템 버스 SB로부터 코프로세서에 전송되어야 하는 데이터를 버퍼링하는 입력 버퍼와, 코프로세서로부터 시스템 버스 SB로 전송되어야 하는 데이터를 버퍼링하는 출력 버퍼를 포함한다. 대안 실시예에서, 두 개의 개별 버스 인터페이스는 코프로세서에 사용될 수 있으며, 각각 입력 버퍼 및 출력 버퍼를 포함한다. 또 다른 실시예에서, 코프로세서는 입력 데이터 수신용의 다수의 버스 인터페이스 및/또는 데이터 출력용의, 예를 들어 상이한 화상에 관련된 데이터를 상이한 버스 인터페이스를 거쳐서 전송하는 다수의 버스 인터페이스를 구비한다. 입력 및 출력 버퍼는 시스템 버스 SB가 코프로세서 COP1 및 COP2와는 별개로 작업하게 한다. 국소 제어기 CTR1 및 CTR2는 각각 코프로세서 COP1 및 COP2의 작업부하에 따라 이들 코프로세서의 공급 전력을 감소시킬 수 있는데, 이는 다음 단락에서 설명될 것이다. 코프로세서 COP1 및 COP2는, 예를 들어, 전용 하드웨어, 또는 전용 기능을 실행하는 소프트웨어가 장전된 프로그래밍가능 프로세서(예를 들어, Very Large Instruction Word Processor), 또는 재구성가능 하드웨어(예를 들어, Field Programmable Gate Array)에 의해 구현될 수 있다.
여러 실시예에서, 데이터 처리 시스템은, 예를 들어, 데이터 처리 시스템이 설계된 미디어 처리 애플리케이션의 유형에 따라, 두 개 이상의 코프로세서, 또는 다수의 CPU, 또는 다수의 메모리 유닛을 구비한다. 대안으로, 입력 유닛 IU 및 출력 유닛 OU는 코프로세서 내에 통합될 수 있다.
이제, 도 1을 참조하면, 국소 제어기 CTR1은 버스 인터페이스 IB1에 연결되고, 국소 제어기 CTR2는 버스 인터페이스 IB2에 연결된다. 데이터 처리 동안, 입력 데이터는 버스 인터페이스 BI1 및 BI2의 입력 버퍼에 전송된다. 데이터 처리는 규칙적인 처리 주기 내에서 스트리밍 처리, 즉, 몇 가지 예를 들어, 비디오 필드 또는 프레임, 데이터 슬라이스의 처리를 포함한다. 코프로세서 COP1 및 COP2는 버스 인터페이스 BI1 및 BI2의 대응하는 입력 버퍼로부터 이들 데이터를 판독하고, 그 데이터를 처리하며, 버스 인터페이스 BI1 및 BI2의 대응하는 출력 버퍼에 결과 데이터를 기록한다. 시스템 버스 SB를 거쳐서, 결과 데이터는 메모리 MEM 또는 출력 유닛 OU에 기록된다. 시스템 버스 SB는 공유 리소스이며, 데이터 처리 동안에는, 코프로세서 COP1이 시스템 버스 SB를 거쳐서 메모리 MEM으로부터의 데이터를 검색하라는 요청을 개시하고 그와 동시에 데이터 처리 시스템의 다른 소자들에 의한 일련의 버스 요청이 여전히 계류 중인 상황이 발생할 수도 있다. 코프로세서 COP1의 버스 요청은 버스 요청의 큐(queue)에 추가되고, 코프로세서 COP1은 BI1의 입력 버퍼 내에 저장된 데이터를 계속해서 처리한다. 입력 버퍼가 비는(empty) 순간, 코프로세서 COP1은 버스 인터페이스 BI1에 의해 스톨링된다. 국소 제어기 CTR1은 대응하는 입력 버퍼가 비어 있는지를 검출하고, 코프로세서 COP1의 공급 전력을 감소시킨다. 코프로세서 COP1에 의해 개시된 버스 요청이 처리되자마자, 데이터는 메모리 MEM으로부터 버스 인터페이스 BI1의 입력 버퍼에 기록된다. 국소 제어기 CTR1은 버스 인터페이스 BI1의 입력 버퍼가 데이터를 포함하고 있는지를 검출하고, 코프로세서 COP1의 공급 전력을 증가시켜서, 대응하는 입력 버퍼로부터의 데이터를 계속해서 처리한다. 그 결과, 코프로세서가 처리해야 하는 데이터의 양에 따라서만, 동적인 분산형 전력 제어가 획득된다. 또한, 국소 제어기는 비교적 단순한 하드웨어만을 필요로 한다. 대안 실시예에서는, 특정 양의 데이터가 대응하는 입력 버퍼 내에 존재하게 된 후에만 처리 소자의 공급 전력이 증가한다. 몇몇 실시예에서, 입력 유닛 IU 및/또는 출력 유닛 OU는 또한 국소 제어기를 구비하는데, 국소 제어기는, 어떤 데이터도 수신되거나 출력되지 않는 경우, 예를 들어, 데이터의 전송이 버스트를 거쳐가는 경우, 대응하는 유닛의 공급 전력을 감소한다.
도 2를 참조하면, 국소 제어기 CTR1은 버스 인터페이스 BI1에 연결되고, 국소 제어기 CTR2는 버스 인터페이스 BI2에 연결되며, 국소 제어기 CTR1 및 CTR2 모두는 시스템 버스 SB에 연결된다. 스트리밍 처리 동안, 중앙 처리 유닛 CPU는, 코프로세서의 제어 레지스터 내에 정보를 기록함으로써, 코프로세서 COP1 및 COP2를 구동하여 데이터를 처리하기 시작하게 한다. 이 정보는, 메모리 MEM의 메모리 어드레스, 처리될 비디오 프레임의 높이 및 폭, 및 그 프로세서에 의해 처리되어야 하는 초당 프레임의 수를 포함한다. 비디오 프레임의 높이 및 폭은 하나의 비디오 프레임용으로 처리되어야 하는 데이터의 양과 관련된다. 코프로세서 COP1 또는 COP2가 주어진 비디오 프레임용 데이터 처리를 완료한 순간, 코프로세서는 중앙 처리 유닛 CPU에 통지할 인터럽트를 생성한다. 본 발명의 실시예에서, 코프로세서 COP1 및 COP2는 또한 대응하는 국소 제어기 CTR1 및 CTR2에 인터럽트를 전송하며, 이어서 이들 대응하는 국소 제어기 CTR1 및 CTR2는 각각 코프로세서 COP1 및 COP2의 공급 전력을 감소한다. 다른 실시예에서, 국소 제어기 CTR1 및 CTR2는 대응하 는 코프로세서가 처리해야 하는 초당 프레임의 수에 대한 정보를 저장하는 레지스터를 구비한다. 이 정보는 중앙 처리 유닛 CPU에 의해 코프로세서 COP1 및 COP2의 레지스터 내에 저장될 수 있다. 이 정보를 사용하여, 국소 제어기 CTR1 및 CTR는 두 개의 비디오 프레임 수신 시간 간격을 계산한다. 코프로세서 COP1 및 COP2가 일련의 비디오 프레임 처리를 시작하는 순간, 대응하는 국소 제어기는 내부 타이머를 시동한다. 코프로세서 COP1 및 COP2가 비디오 프레임 처리를 완료한 경우, 인터럽트는 국소 제어기 CTR1 및 CTR2에 각각 전송된다. 국소 제어기 CT1 및 CTR2는 인터럽트 수신 시간과 다음 비디오 프레임 처리 시간 사이의 간격을 판별한다. 그 시간 간격의 길이에 따라, 국소 제어기 CTR1 및 CTR2는 대응하는 코프로세서 COP1 및 COP2의 공급 전력을 감소한다. 규칙적인 처리 주기 내에서의 전력 감소 및 증가는 제한점을 가지는데, 이는 코프로세서로의 전력 감소 및 증가 동작이 마찬가지로 전력을 소비하기 때문이다. 국소 제어기 CTR1 및 CTR2는, 예를 들어, 인터럽트 수신 시간과 다음 프레임 처리 시작 시간 사이의 간격에 대한 최소 값을 저장하는 프로그래밍가능 레지스터를 가질 수 있다. 실질적인 시간 간격이 이 최소 값과 같거나 더 큰 경우에만, 국소 제어기 CTR1 및 CTR2는 대응하는 코프로세서의 공급 전력을 감소한다. 다음 비디오 프레임의 처리가 시작되어야 하는 순간, 국소 제어기 CTR1 및 CTR2는 대응하는 코프로세서의 공급 전력을 각각 감소한다. 대안 실시예에서, 코프로세서 COP1 및 COP2는 다음 데이터 블록 처리를 요청한 경우에 중앙 처리 유닛 CPU에 의해 전력이 증가한다.
본 발명의 다른 실시예에서, 중앙 처리 유닛 CPU는, 코프로세서가 데이터 처 리 시에 이용하는 클록 주기 시퀀스의 클록 주기들 사이에 산재하는 코프로세서 COP1 및 COP2용의 스톨링 주기를 구현하도록 더 프로그래밍될 수 있다. 스톨링 주기 동안, 코프로세서 COP1 및 COP2는, 여전히 클록 신호를 수신하기는 하지만, 그들의 대응하는 국소 제어기에 의해 발생하는 스톨링 주기로 인해 응답하지는 않는다. 실질적인 데이터 전송율을 낮추는 스톨링 주기의 사용은, 본원의 양수인에게 양도되었으며 본 명세서에 참조로 인용되고 있는 미국 동시 계속 출원 일련 번호 제 09/920,042(대리인 번호 PHNL010506)호에서 더 설명된다. 분산형 데이터 처리에 있어서, 데이터는 시스템 버스 SB로부터 신속하게 및/또는 고강도 버스트(high-intensity bursts)로 제시되거나 요청된다. 이러한 전달이 단시간 프레임 내에 발생하는 경우, 전체 시스템 버스 용량은 용이하고 빈번하게 초과되어, 전송을 요청하는 소자에 대한 스톨링 상황을 유발한다. 스톨링 주기는 시스템 버스 SB를 거치는 실질적인 데이터 전송율을 낮추는 데 사용될 수 있는데, 이는 코프로세서가 하나 이상의 스톨링 주기를 실행할 때 그 코프로세서에 의해서 어떤 버스 요청도 이루어지지 않기 때문이다. 이 실시예의 장점은, 적시에, 코프로세서의 전력 소비 감소와 시스템 버스 SB의 대역폭 소비 확장 사이의 상충관계를 허용한다는 것이다. 주어진 데이터 세트, 예를 들어, 비디오 프레임에 대한 코프로세서의 실제 처리 시간이 두 개의 비디오 프레임들 사이의 시간 간격보다 작은 경우, 이 시간차는 일반 처리 주기들 사이 내에 프로그래밍가능 스톨링 주기를 추가함으로써 대역폭 소비를 확장하거나 또는 이전 실시예에서 설명한 바와 같이 두 개의 비디오 프레임들 사이의 각 시간 간격에 대한 시간 주기 동안 코프로세서의 공급 전력을 감소하는 데 사 용될 수 있다. 미디어 처리 애플리케이션, 데이터 처리 시스템의 구성 및 시스템 요건에 따라, 대역폭 소비 확산 및 전력 소비 감소 사이의 최적화가 이루어질 수 있다.
도 2를 다시 참조하면, 또 다른 실시예에서, 국소 제어기 CTR1 및 CTR2는 소위 대역폭 제어 유닛을 더 포함한다. 실제 데이터 전송율을 낮추는 대역폭 제어 유닛의 사용은, 본원의 양수인에게 양도되었으며 본 명세서에 참조로 인용되고 있는 미국 동시 계속 출원서(대리인 번호 PHNL030795)호에서 더 설명된다. 이들 대역폭 제어 유닛을 사용하여, 코프로세서 COP1 및 COP2에 의한 대역폭 소비는 대응하는 국소 제어기 CTR1 및 CTR2에 의해 제어되어, 코프로세서 COP1 및 COP2의 평균 데이터 처리 속도를 각각 효과적으로 늦출 수 있다. 그러나, 필요에 따라, 추가의 전용 용량이 제공되어, 대부분의 경우에 스톨링 상황이 더 이상 성공적이지 않게 할 수 있다. 예를 들어, 버스 중재기에 의한 버스 중재는 여전히 필요한데, 이는 코프로세서 COP1 및 COP2가 여전히 버스 전송을 동시에 개시할 수 있기 때문이다. 국소 제어기 CTR1 및 CTR2는 비디오 프레임의 높이 및 폭, 대응하는 코프로세서가 처리해야 하는 초당 프레임의 수, 및 대응하는 코프로세서의 계산 용량에 대한 정보를 저장하는 레지스터를 구비한다. 이 정보는 중앙 처리 유닛 CPU에 의해 레지스터 내에 저장될 수 있다. 이 정보를 사용하여, 국소 제어기 CTR1 및 CTR2는 대응하는 코프로세서에 의해 하나의 비디오 프레임용 데이터를 처리하는 데 요구되는 최소 시간, 두 개의 비디오 프레임 수신 시간 사이의 시간 간격, 및 대역폭 소비에 허용된 최대 데이터율을 계산한다. 허용된 최대 데이터율은 비디오 프레임의 높이 및 폭과 선택된 시간 간격에 기초하고 있는데, 선택된 시간 간격은 길어봤자 두 개 비디오 프레임들 사이의 시간 간격이다. 대역폭 제어 유닛은 대응하는 코프로세서 COP1 및 COP2의 평균 대역폭 소비를 그들의 허용된 최대 데이터율로 제한한다. 코프로세서 COP1 및 COP2가 비디오 프레임 처리 동안 특정 주기에서 자신들 소유의 인용 대역폭보다 이용가능한 대역폭을 더 적게 갖는 경우, 그들 프로세서는, 대체로, 다음 비디오 프레임의 수신 전에, 후속 시간 주기에서의 불일치를 파악(catch-up)할 수 있다. 특정의 유리한 실시예에서, 이러한 파악 시간은, 두 개의 비디오 프레임들 사이의 시간 간격의 말미에 위치하며 최대 시스템 버스 대역폭이 지정되는 소위 이완 시간(slack time) 내에 제공된다. 코프로세서 COP1 및 COP2가 일련의 비디오 프레임을 처리하기 시작하는 순간, 대응하는 국소 제어기는 내부 타이머를 시동한다. 코프로세서 COP1 및 COP2가 비디오 프레임 처리를 완료한 경우, 인터럽트는 국소 제어기 CTR1 및 CTR2에 각각 전송된다. 국소 제어기 CTR1 및 CTR2는 인터럽트 수신과 다음 비디오 프레임 처리 시작 사이의 시간 주기를 결정한다. 이 시간 간격의 길이에 따라, 국소 제어기 CTR1 및 CTR2는 대응하는 코프로세서 COP1 또는 COP2의 공급 전력을 감소한다. 국소 제어기 CTR1 및 CTR2는, 예를 들어, 인터럽트 수신과 다음 프레임 처리 시작 사이의 시간 간격에 대한 최소 값을 저장하는 프로그래밍가능 레지스터를 가질 수 있다. 실제 시간 간격이 이 최소 값과 같거나 더 큰 경우에만, 국소 제어기 CTR1 및 CTR2는 대응하는 코프로세서의 공급 전력을 감소한다. 다음 비디오 프레임 처리가 시작되어야 하는 순간, 국소 제어기 CTR1 및 CTR2는 각각 코프로세서 COP1 및 COP2의 공급 전력을 증가시킨다. 이 실시예의 장점은, 적시에, 코프로세서의 전력 소비 감소와 시스템 버스 SB의 대역폭 확장 사이의 상충관계를 허용한다는 것이다. 코프로세서의 허용된 최대 데이터율을 계산하기 위한 시간 간격은 두 개의 비디오 프레임들 사이의 시간 간격과 동일하게 선택될 수 있으며, 이 경우에는 그 프로세서의 대역폭 소비가 최대로 확장될 수 있다. 반면, 허용된 최대 데이터율을 계산하기 위한 시간 간격이 비디오 프레임 처리에 요구되는 최소 시간과 동일하게 선택되어, 두 개의 비디오 프레임들 사이의 시간 간격의 리마인더 동안 코프로세서가 공급 전력을 감소시키게 하고 전력 소비 감소를 최대화할 수 있다. 미디어 처리 애플리케이션, 데이터 처리 시스템의 구성 및 시스템 요건에 따라, 대역폭 소비 확장과 전력 소비 감소 사이의 최적화가 이루어질 수 있다.
도 3은 버스 인터페이스 BI를 거쳐서 시스템 버스 SB에 연결된 코프로세서 COP 뿐 아니라, 대역폭 제어 유닛 BCTR을 포함하는 제어 유닛 CTR의 실시예를 도시한다. 대역폭 제어 유닛은 평균 계산 유닛 AV를 포함하여 버스 인터페이스 BI를 거쳐서 시스템 버스에 전송되는 데이터 평균량 Sta을 계산한다. 이를 위해, 평균 계산 유닛은 버스 인터페이스 BI를 거쳐서 발생하는 데이터 전송량을 나타내는 신호 St를 수신한다. 대역폭 제어 유닛 BCTR은 허용된 데이터율 St1에 대한 표시를 저장하는 레지스터 LIM을 더 포함한다. 비교기 CMP는 이들 신호를 비교하고 게이트 G를 제어 신호 CT로 제어한다. 일반적으로, 게이트 G는 버스 인터페이스 BI로부터의 버스 요청 BRI를 신호 BRO로서 버스 중재기에 전송하며, 버스 중재기는 버스가 이용가능한 경우에 확인 신호 ACK로 응답할 것이다. 그러나, 버스 인터페이 스 BI를 거쳐서 시스템 버스에 전송되는 데이터 평균량 Sta가 허용된 최대 데이터율 St1을 초과하는 경우, 제어 신호 CT는 게이트 G가 버스 요청 신호 BRI를 차단하게 한다. 그 경우, 어떤 요청 BRO도 중재기에 의해 수신되지 않으며, 평균 값 Sta가 허용된 값 ST1보다 아래의 값으로 감소할 때까지 추가 데이터 전송이 방지된다. 반면, 다른 디바이스, 예를 들어 높은, 우선순위를 가진 CPU가 버스를 점유했기 때문에 시스템 버스 SB가 소정 시간 동안 이용가능하지 않게 되는 경우, 전송된 데이터 평균량 Sta는 실질적으로 허용된 값 ST1보다 낮다. 그 경우, 코프로세서 COP는 평균값 Sta가 다시 허용된 값 St1에 다시 도달할 때까지 데이터 전송을 일시적으로 증가시키는 기회가 있다.
전술한 실시예는 본 발명을 제한하기보다는 예시하는 것이며, 당업자는 첨부하는 청구범위의 범주로부터 벗어나지 않고서 많은 대안 실시예를 설계할 수 있을 것이라는 점에 유의해야 한다. 청구범위에 있어서, 괄호 사이에 있는 임의의 참조부호는 청구범위를 제한하는 것으로 이해되어서는 안 된다. "포함하는"이라는 단어는 청구범위에 나열된 소자 또는 단계 이외의 소자 또는 단계가 존재함을 배제하지 않는다. 소자의 단수 표현은 그러한 소자가 다수 개 존재함을 배제하지 않는다. 본 발명은 여러 가지 별개의 소자를 포함하는 하드웨어 및 적절히 프로그래밍된 컴퓨터에 의해 구현될 수 있다. 여러 가지 수단을 나열한 디바이스 청구항에서, 이들 수단 중 몇 개는 동일 하드웨어 항목 및 동종의 하드웨어 항목에 의해 구현될 수 있다. 실질적으로 상이한 종속항에 특정한 측정치가 인용된다는 단순한 사실은 이들 측정치의 조합이 유리하게 사용될 수 없다는 것을 나타내지는 않는다.

Claims (10)

  1. - 적어도 하나의 클록 설비의 제어 하에, 데이터를 동기식으로 처리하는 다수의 처리 소자들(COP1, COP2)과,
    - 상기 다수의 처리 소자들 중의 한 처리 소자와 연관되는 적어도 하나의 국소 제어기(CTR1, CTR2)와,
    - 상기 다수의 처리 소자들 중의 처리 소자들 사이에 데이터를 교환하는 데이터 통신 수단(SB)을 포함하되,
    상기 국소 제어기는 자신과 연관되는 처리 소자의 공급 전력을 그 처리 소자의 필요 처리 용량에 따라서 감소시키는
    데이터 처리 시스템.
  2. 제 1 항에 있어서,
    상기 국소 제어기는 또한 자신과 연관되는 처리 소자의 공급 전력을 그 처리 소자의 필요 처리 용량에 따라서 증가시키는
    데이터 처리 시스템.
  3. 제 1 항에 있어서,
    - 상기 다수의 처리 소자들 중의 상기 처리 소자와 연관되는 적어도 하나의 버퍼(BI1, BI2)를 더 포함하되,
    상기 버퍼는 자신이 연관되는 처리 소자와 상기 데이터 통신 수단 사이에 데이터를 교환하고,
    상기 국소 제어기는 자신이 연관되는 처리 소자의 필요 처리 용량을 상기 연관된 버퍼의 충진 정도(filling degree)로부터 판별하는
    데이터 처리 시스템.
  4. 제 1 항에 있어서,
    제어 프로세서를 더 포함하되,
    상기 국소 제어기는 상기 연관된 처리 소자의 필요 처리 용량에 대한 정보를 상기 제어 프로세서로부터 수신하고,
    상기 국소 제어기는 상기 연관된 처리 소자의 처리 용량에 대한 정보를 더 가지는
    데이터 처리 시스템.
  5. 제 1 항에 있어서,
    상기 다수의 처리 소자들 중 상기 처리 소자는 또한 자신이 연관되는 국소 제어기에 필요 처리 용량을 통지하는 인터럽트(interrupt)를 발생시키는
    데이터 처리 시스템.
  6. 제 1 항에 있어서,
    클록 주기 시퀀스는 소정 양의 데이터 처리 동작을 초래하고,
    상기 데이터 처리 시스템은 상기 다수의 처리 소자들 중의 상기 처리 소자에 대한 프로그래밍가능 스톨링 클록 주기(programmable stall clock cycles)를 구현하는 프로그래밍가능 수단을 더 포함하며,
    상기 프로그래밍가능 스톨링 클록 주기는 상기 클록 주기 시퀀스 중의 클록 주기들 사이에 산재하는
    데이터 처리 시스템.
  7. 제 1 항에 있어서,
    적어도 하나의 처리 소자는 상기 데이터 통신 수단을 따라서 데이터 전송율을 제어하는 대역폭 제어 유닛(BCTR) - 상기 대역폭 제어 유닛은 상기 데이터 전송율이 허용된 최대 데이터율을 초과하는 경우에 데이터 전송을 제한함 - 에 연관되는
    데이터 처리 시스템.
  8. 제 1 항에 있어서,
    메모리 설비(MEM)를 더 포함하되,
    상기 데이터 통신 수단은 또한 상기 메모리 설비와 상기 다수의 처리 소자들 중의 상기 처리 소자들 사이에 데이터를 교환하는
    데이터 처리 시스템.
  9. - 적어도 하나의 클록 설비의 제어 하에, 동기식으로 데이터를 처리하는 다수의 처리 소자들(COP1, COP2)과,
    - 상기 다수의 처리 소자들 중의 한 처리 소자와 연관되는 적어도 하나의 국소 제어기(CTR1, CTR2)와,
    - 상기 다수의 처리 소자들 중의 처리 소자들 사이에 데이터를 교환하는 데이터 통신 수단(SB)을 포함하는 데이터 처리 시스템을 이용하여 데이터를 처리하는 방법으로서,
    - 상기 처리 소자에 데이터를 제공하는 단계와,
    - 어떤 데이터도 상기 처리 소자에 의한 처리에 이용가능하지 않은 경우, 상기 국소 제어기에 의해 상기 처리 소자의 공급 전력을 감소시키는 단계를 포함하는
    데이터 처리 방법.
  10. 제 9 항에 있어서,
    - 데이터가 상기 처리 소자에 의한 처리에 이용가능한 경우, 상기 국소 제어기에 의해 상기 처리 소자의 공급 전력을 증가시키는 단계를 더 포함하는
    데이터 처리 방법.
KR1020067001925A 2003-07-30 2004-07-26 데이터 처리 시스템 및 데이터 처리 방법 KR20060052924A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03102338 2003-07-30
EP03102338.5 2003-07-30

Publications (1)

Publication Number Publication Date
KR20060052924A true KR20060052924A (ko) 2006-05-19

Family

ID=34089710

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067001925A KR20060052924A (ko) 2003-07-30 2004-07-26 데이터 처리 시스템 및 데이터 처리 방법

Country Status (6)

Country Link
US (1) US20060206729A1 (ko)
EP (1) EP1652056A1 (ko)
JP (1) JP2007500392A (ko)
KR (1) KR20060052924A (ko)
CN (1) CN1829952A (ko)
WO (1) WO2005010736A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9501114B2 (en) 2012-07-16 2016-11-22 Samsung Electronics Co., Ltd. Apparatus and method for managing power based on data

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213167A (ja) * 2006-02-07 2007-08-23 Fujitsu Ltd 電力制御プログラム、サーバシステム、および電力制御方法
TWI317468B (en) * 2006-02-20 2009-11-21 Ite Tech Inc Method for controlling power consumption and multi-processor system using the same
WO2008009368A1 (en) * 2006-07-21 2008-01-24 Sony Service Centre (Europe) N.V. System and method of prioritising tasks
US7676683B2 (en) * 2006-08-24 2010-03-09 Sony Computer Entertainment Inc. Method and system for rebooting a processor in a multi-processor system
US8046565B2 (en) * 2006-12-06 2011-10-25 Kabushiki Kaisha Toshiba Accelerator load balancing with dynamic frequency and voltage reduction
JP2010513025A (ja) * 2006-12-21 2010-04-30 ダウ グローバル テクノロジーズ インコーポレイティド 改善されたすすフィルター
WO2009105103A1 (en) * 2008-02-21 2009-08-27 Hewlett-Packard Development Company, L.P. Systems and methods of component voltage adjustment
WO2009134219A1 (en) 2008-04-28 2009-11-05 Hewlett-Packard Development Company, L.P. Adjustable server-transmission rates over fixed-speed backplane connections within a multi-server enclosure
NO330275B1 (no) * 2008-12-19 2011-03-21 Tandberg Telecom As Fremgangsmate i en videokodings-/-dekodingsprosess
JP5578811B2 (ja) * 2009-06-30 2014-08-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
US8452997B2 (en) 2010-04-22 2013-05-28 Broadcom Corporation Method and system for suspending video processor and saving processor state in SDRAM utilizing a core processor
CN101968678A (zh) * 2010-08-10 2011-02-09 东莞环亚高科电子有限公司 一种嵌入式Linux设备低功耗电源管理设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5388217A (en) * 1991-12-13 1995-02-07 Cray Research, Inc. Distributing system for multi-processor input and output using channel adapters
US5737615A (en) * 1995-04-12 1998-04-07 Intel Corporation Microprocessor power control in a multiprocessor computer system
JPH11202988A (ja) * 1998-01-13 1999-07-30 Hitachi Ltd システム消費電力制御方法
US6141762A (en) * 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
JP2001109729A (ja) * 1999-10-12 2001-04-20 Nec Corp マルチプロセッサシステムにおける消費電力制御装置および方法
US6990594B2 (en) * 2001-05-02 2006-01-24 Portalplayer, Inc. Dynamic power management of devices in computer system by selecting clock generator output based on a current state and programmable policies
US7318164B2 (en) * 2001-12-13 2008-01-08 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
US7392411B2 (en) * 2003-04-25 2008-06-24 Ati Technologies, Inc. Systems and methods for dynamic voltage scaling of communication bus to provide bandwidth based on whether an application is active

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9501114B2 (en) 2012-07-16 2016-11-22 Samsung Electronics Co., Ltd. Apparatus and method for managing power based on data

Also Published As

Publication number Publication date
EP1652056A1 (en) 2006-05-03
CN1829952A (zh) 2006-09-06
WO2005010736A1 (en) 2005-02-03
JP2007500392A (ja) 2007-01-11
US20060206729A1 (en) 2006-09-14

Similar Documents

Publication Publication Date Title
US6173348B1 (en) Using a control line to insert a control message during a data transfer on a bus
US5784647A (en) Interface for fetching highest priority demand from priority queue, predicting completion within time limitation then issuing demand, else adding demand to pending queue or canceling
US5819111A (en) System for managing transfer of data by delaying flow controlling of data through the interface controller until the run length encoded data transfer is complete
US5574868A (en) Bus grant prediction technique for a split transaction bus in a multiprocessor computer system
KR20060052924A (ko) 데이터 처리 시스템 및 데이터 처리 방법
US5469577A (en) Providing alternate bus master with multiple cycles of bursting access to local bus in a dual bus system including a processor local bus and a device communications bus
US5475850A (en) Multistate microprocessor bus arbitration signals
KR100708096B1 (ko) 버스 시스템 및 그 실행 순서 조정방법
JP2002366507A (ja) 複数チャネルdmaコントローラおよびプロセッサシステム
US5974479A (en) System for executing, canceling, or suspending a DMA transfer based upon internal priority comparison between a DMA transfer and an interrupt request
JP2007519058A (ja) データ処理用データ処理システム及び方法
JP4151362B2 (ja) バス調停方式、データ転送装置、及びバス調停方法
JP2865131B2 (ja) データ転送方式
JPH08171528A (ja) データ処理装置
WO2002093392A1 (fr) Processeur de donnees
EP1416393B1 (en) Processor interface having a stream register and a FIFO
JPH09218859A (ja) マルチプロセッサ制御システム
JP3481357B2 (ja) Dmaデータ転送制御方式
JP2806405B2 (ja) マイクロプロセッサ
JPH09212452A (ja) バス制御装置
JP2002091899A (ja) データ転送制御装置およびデータ転送方法
JPH06149703A (ja) メッセージ転送制御装置
JPH10124445A (ja) 情報処理装置およびコントローラ
JPH04178869A (ja) マルチプロセッサシステムの割込み制御装置とその割込み通信方法
JPH03262063A (ja) Dma転送のバス制御回路

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