[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20090046841A - Power Management in Data Processing Devices with Masters and Slaves - Google Patents

Power Management in Data Processing Devices with Masters and Slaves Download PDF

Info

Publication number
KR20090046841A
KR20090046841A KR1020097003290A KR20097003290A KR20090046841A KR 20090046841 A KR20090046841 A KR 20090046841A KR 1020097003290 A KR1020097003290 A KR 1020097003290A KR 20097003290 A KR20097003290 A KR 20097003290A KR 20090046841 A KR20090046841 A KR 20090046841A
Authority
KR
South Korea
Prior art keywords
slave
master
unit
transaction
units
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
KR1020097003290A
Other languages
Korean (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 에이알엠 리미티드
Priority to KR1020097003290A priority Critical patent/KR20090046841A/en
Publication of KR20090046841A publication Critical patent/KR20090046841A/en
Ceased legal-status Critical Current

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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

인터커넥트(14)에 의해 접속되는 마스터 유닛(8,10)과 슬레이브 유닛(6, 18, 20)을 포함하는 집적회로 등의 장치(2)가 개시되어 있다. 트랜잭션으로 전달되는 통상의 데이터 신호(22) 및 어드레스 신호(24) 외에도, 다음 트랜잭션이 슬레이브 유닛에 전달될 때까지 시간 간격을 특정하는 사용 신호(26)가 전달된다. 로컬 슬레이브 전력 제어기(34)는 그러한 사용 신호(26)에 응답해서 저전력 모드로 전환하고, 우선적으로 수신되어야 하는 다음 트랜잭션에 응답하기 위한 적정 시간에 동작 모드로 되돌아간다.An apparatus 2, such as an integrated circuit, comprising a master unit 8, 10 and a slave unit 6, 18, 20 connected by an interconnect 14 is disclosed. In addition to the usual data signal 22 and address signal 24 delivered in a transaction, a usage signal 26 is also specified which specifies the time interval until the next transaction is delivered to the slave unit. The local slave power controller 34 switches to the low power mode in response to such usage signal 26 and returns to the mode of operation at the appropriate time to respond to the next transaction that must be received first.

인터커넥트, 마스터, 슬레이브, 트랜잭션, 데이터 처리장치 Interconnect, Master, Slave, Transaction, Data Processing Unit

Description

마스터 및 슬레이브를 갖는 데이터 처리장치에서의 전력 관리{POWER MANAGEMENT IN A DATA PROCESSING DEVICE HAVING MASTERS AND SLAVES}POWER MANAGEMENT IN A DATA PROCESSING DEVICE HAVING MASTERS AND SLAVES}

본 발명은 데이터 처리장치의 분야에 관한 것이다. 특히, 본 발명은 그러한 장치 내부의 전력 소모의 관리에 관한 것이다.The present invention relates to the field of data processing apparatus. In particular, the present invention relates to the management of power consumption inside such devices.

휴대전화 및 컴퓨터 등의 시스템 온 칩 집적회로 및 장치들의 전력 소모는 중요한 관심사다. 휴대할 수 없는 장치에 있어서도, 전력 소모를 줄이는 것은 중요한데, 왜냐하면 전력 소모를 줄이면 비용이 줄어들고, 냉각, 패키징(packaging) 및 발전 시설의 설계가 단순화되어, 신뢰성이 증가하기 때문이다.Power consumption of system-on-chip integrated circuits and devices such as mobile phones and computers is an important concern. Even for non-portable devices, reducing power consumption is important because reducing power consumption reduces costs, simplifies the design of cooling, packaging, and power generation facilities, increasing reliability.

공지의 전력 관리 방식은 2가지의 주 그룹으로 나뉜다. 우선 가장 일반적인 종류는, 예를 들면, 어떤 비활성의 기간 후에 표시를 오프하거나 CPU 클럭을 다운하는, 아이들 타임아웃(idle timeouts) 등의 휴리스틱(heuristic) 전력 관리 방식이다. 두 번째의 종류는, 스토캐스틱(stochastic) 또는 마르코브(markove) 모델을 이용해서, 예를 들면, 장치가 사용되지 않고 그것을 중지시키는 경우를 예측하려고 시도하는 방식이다. 이러한 종류의 방식은 작동 시스템 레벨에서 제어되는 적응형 주파수 및 전압 크기 조정(scaling)을 포함한다.Known power management schemes are divided into two main groups. First and foremost, the most common kind is a heuristic power management scheme, such as idle timeouts, for example, turning off the display after a period of inactivity or down the CPU clock. The second kind is by using a stochastic or markov model, for example, attempting to predict when the device is not in use and stopping it. This kind of approach involves adaptive frequency and voltage scaling controlled at the operating system level.

공지의 전력 관리 방식의 개론은, "A Survey of Design Techniques For System Level Dynamic Power Management" by Luca Benini et al, IEEE Transactions On Very Large Scale Integration(VLSI) Systems, Volume 8, No.3, June 2002에서 발견할 수 있다.An overview of known power management approaches is provided in "A Survey of Design Techniques For System Level Dynamic Power Management" by Luca Benini et al, IEEE Transactions On Very Large Scale Integration (VLSI) Systems, Volume 8, No. 3, June 2002. You can find it.

상기의 모든 방식의 문제점은, 일부의 파워 딜레이 트레드 오프(power-delay trade off)를 유도하기 쉽다는 점, 즉 이들 방식은 전력을 절약하지만, 레이턴시(latency)를 증가시킨다는 점이다. 많은 처리 유닛들 및 주변장치들을 포함하는 시스템 온 칩 시스템에 있어서의 전력 관리가 특히 어렵다. 예를 들면, 메모리 등의 공유 주변장치는 특별한 시간 간격으로 특별한 처리기에 의해 사용되지만, 그 간격 동안 다른 처리기에 의해 낮은 레이턴시에서 요구될 수도 있다. AMBA 3 AXI 전력 관리 채널 및 IEEE 802.11 무선 프로토콜 등의 공지의 방식은, 그러한 시스템 전력 문제점을 해결하기 위해서 한 전력 관리자에 의존한다. 이들 집중화된 방식은 보다 큰 시스템에는 잘 스케일(scale)시키지 않는다. 메인 통신 버스에 어렵게 라우트(route)되는 전력 관리 신호화(signaling)의 통합은 추가의 오버헤드를 나타내어 어려움을 준다.The problem with all of the above schemes is that it is easy to induce some power-delay trade off, i.e. these schemes save power but increase latency. Power management is particularly difficult in system-on-chip systems that include many processing units and peripherals. For example, shared peripherals such as memory are used by special processors at special time intervals, but may be required at low latency by other processors during that interval. Known schemes, such as the AMBA 3 AXI power management channel and IEEE 802.11 wireless protocol, rely on one power manager to solve such system power problems. These centralized approaches do not scale well to larger systems. The integration of power management signaling, which is difficult to route to the main communication bus, presents additional overhead and challenges.

본 발명의 일 국면에 따른 데이터 처리장치는, Data processing apparatus according to an aspect of the present invention,

1개 이상의 마스터 유닛과,One or more master units,

1개 이상의 슬레이브 유닛과,One or more slave units,

상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트 를 구비하고,An interconnect connected to the at least one master unit and the at least one slave unit to route transactions, including data transfer transactions, along a wiring path between the at least one master unit and the at least one slave unit; ,

상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛이 수신하는 트랜잭션은, 다음 트랜잭션이 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛에 전해지는 경우를 나타내는 사용 예측(usage prediction)을 지정하는 1개 이상의 사용 신호를 포함하며,A transaction that is received by at least one slave unit of the one or more slave units is 1 that specifies usage prediction that indicates when a next transaction is passed to the at least one slave unit of the one or more slave units. Contains more than one usage signal,

상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛은, 상기 1개 이상의 사용 신호에 응답하여, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 기간에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제2의 슬레이브 전력 상태로 전환하는 로컬 슬레이브 전력 제어기를 구비하고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시(response latency)를 갖는다.At least one slave unit of the one or more slave units, in response to the one or more usage signals, selects the at least one slave unit of the one or more slave units before the next transaction is expected to be received. A local slave power controller which transitions to a first slave power state in the second slave power state and switches the at least one slave unit of the one or more slave units to a second slave power state at a suitable time for servicing the next transaction. Wherein the first slave power state has lower power consumption than the second slave power state, and wherein the first slave power state has a response latency longer than the second slave power state. Have

본 기술은 마이크로 아키텍처(micro-architectureal) 레벨에서 장치가 신호화(signaling)되도록 비활성화되는 기간을 거의 정확게 표시하는 것을 가능하게 함으로써 파워 딜레이 트레드 오프가 감소된 전력을 관리하려고 시도한다. 이것에 의해 복잡하고 부정확한 발견(heuristic) 및/또는 예측 모델에 대한 요구사항이 제거된다. 본 기술은, 전력 관리를 개개의 슬레이브 및 마스터에 위임한다. 그것은 관련된 복잡한 중앙 전력 제어기를 필요로 하지 않기 때문에 쉽게 스케일(scalable) 할 수 있다.The technique attempts to manage power with reduced power delay tread-off by making it possible to almost accurately indicate the period of time during which devices are deactivated to be signaled at the micro-architectureal level. This eliminates the need for complex and inaccurate heuristic and / or predictive models. This technique delegates power management to individual slaves and masters. It can be easily scaled because it does not require a complex central power controller involved.

바람직한 실시 예에 있어서, 좀더 일반적으로 사용신호들이 그들 자신의 라우팅/버스를 가질 수 있더라도, 전력 관리 신호들은 이행(implementation)과 확장성(scalability)을 완화하기 위한 다른 통신 신호들과 함께 라우트될 수 있다. 배선 경로는 함께 라우트된 다양한 신호들을 가진 결합된 버스 또는 그들 자신의 라우팅을 가진 여러 개의 분리 버스일 수도 있다. 표준 통신의 일부로서의 전력 관리 신호화를 포함하면 확장성에 도움이 된다.In a preferred embodiment, power management signals may be routed along with other communication signals to mitigate implementation and scalability, although more generally the usage signals may have their own routing / bus. have. The wiring path may be a combined bus with various signals routed together or several separate buses with their own routing. Including power management signaling as part of standard communications helps with scalability.

사용 신호들은 초기화되고 있는 트랜잭션과 그 트랜잭션을 위한 타겟과의 사이의 서로 다른 포인트에서 발생 및 변경(중재)될 수 있다. 마스터 유닛은, 슬레이브에 트랜잭션을 발행하기 위해 언제 옆에 있었는지를 정확하게 식별해서 그 트랜잭션과 함께 적절한 사용 신호들을 조직화할 수 있을 것이므로, 사용 신호들의 하나의 중요한 소스는, 트랜잭션을 발행하는 마스터 유닛이다. 사용 신호들을 삽입 또는 변경하기 위한 또 다른 적절한 포인트는, 인터커넥트의 레벨에 있을 것인데, 그것은, 예를 들면 인터커넥트 내에서 행해지는 중재 결정으로 인해, 전체로서 장치의 상태와 관련된 정보를 가질 것이고, 주어진 슬레이브의 사용이 그 트랜잭션을 초기화하는 마스터로 표시되는 것보다 긴 기간 동안 반복될 것 같지 않다는 것을 판정할 수도 있다.Usage signals may be generated and changed (mediated) at different points between the transaction being initialized and the target for that transaction. One important source of usage signals is the master unit issuing the transaction, because the master unit will be able to accurately identify when it was next to issue a transaction to the slave and organize appropriate usage signals with that transaction. . Another suitable point for inserting or changing usage signals would be at the level of the interconnect, which would have information relating to the state of the device as a whole, for example due to an arbitration decision made within the interconnect, It may be determined that the use of is unlikely to be repeated for a longer period of time than indicated by the master initiating the transaction.

바람직한 실시 예에 있어서의 인터커넥트는, 복수의 마스터 유닛으로부터의 각각의 트랜잭션이 사용 신호들 사이를 중재하는 기능을 제공하여, 목표 슬레이브 장치에 전달되는 중재된 사용 신호를 제공한다. 인터커넥트는, 어떤 사용 신호를 타겟 슬레이브 장치에 전달할 것인가를 결정할 때 현 트랜잭션과 관련된 정보뿐만 아니라 이전 사용 정보 및 슬레이브에 대한 이전의 트랜잭션을 고려한 위치에 있다.The interconnect in a preferred embodiment provides the ability for each transaction from a plurality of master units to mediate between usage signals, thereby providing an arbitrated usage signal that is delivered to the target slave device. The interconnect is in a position that considers previous usage information and previous transactions for the slave as well as information related to the current transaction in determining which usage signal to send to the target slave device.

슬레이브 유닛에 제공된 정교함(sophistication)의 레벨은 변할 수 있고, 바람직하게는 슬레이브 유닛은, 각각의 전력 소모와 응답 레이턴시를 갖는 복수의 저전력 상태를 가질 것이고, 전형적으로는 전력소모가 작을수록 응답 레이턴시가 더 커진다. 다음 트랜잭션이 도달할 것으로 예상되기 전의 간격에 의존해서, 슬레이브 유닛은 진입하기 위한 적절한 파워다운 모드를 선택할 수 있고, 예를 들면, 진입하는데 긴 기간이 걸리고, 다음 트랜잭션에 대한 간격이 짧을 때는 탈출하는데 긴 시간이 걸리는 딥 파워다운 모드에 진입하는 것은 가치가 없을 수도 있지만, 약간의 전력을 절약하기 위해 그 짧은 기간 동안 클럭을 간단히 정지시키는 것은 가치가 있을 수도 있다.The level of sophistication provided to the slave unit may vary, and preferably the slave unit will have a plurality of low power states with respective power consumption and response latency, and typically, the smaller the power consumption, the more the response latency will be. Gets bigger Depending on the interval before the next transaction is expected to arrive, the slave unit can select an appropriate power-down mode to enter, for example, it takes a long time to enter and exits when the interval for the next transaction is short. Entering a long time deep power-down mode may not be worthwhile, but simply stopping the clock for that short period of time to save some power may be worthwhile.

또한, 복수의 슬레이브 유닛에 의해 유리하게 공유될 수 있는 로컬 슬레이브 전력 제어기는 다음 트랜잭션에 대한 간격뿐만 아니라 슬레이브 유닛의 현재의 상태에 의존해서 저전력 상태를 선택할 수 있고, 예를 들면, 특별한 트랜잭션과 접속되어 있지 않은 어떤 다른 활동을 서비스하는 등, 관계있는 슬레이브 유닛과 관련된 어떤 다른 상태 변수(state variable)가 있을 수 있는데, 그것은, 슬레이브 유닛이 다음 트랜잭션에 대한 간격으로 표시된 특별한 저전력 모드로 파워다운할 수 없다는 것을 나타낸다.In addition, the local slave power controller, which can be advantageously shared by a plurality of slave units, can select a low power state depending on the current state of the slave unit as well as the interval for the next transaction, for example, to connect with a particular transaction. There may be some other state variable associated with the associated slave unit, such as servicing some other activity that is not scheduled, which could allow the slave unit to power down to a special low power mode indicated at intervals for the next transaction. Indicates no.

상기는 적절한 로컬 슬레이브 전력 제어기를 내장하고 있는 한 개의 슬레이 브 유닛만의 관점에서 설명되어서 유용하지만, 이 기술은, 다수의 슬레이브 유닛이 사용 신호들에 응답해서 각각의 로컬 슬레이브 전력 제어기를 포함하는 시스템에서 쉽게 스케일가능하고 유리하다는 것을 인식할 수 있을 것이다. 마찬가지로, 이 기술은 사용 신호들을 발생하기 위한 적절하게 구성된 다수의 마스터 유닛들을 내장하고 있는 시스템에 매우 적합하다.The above is useful because it is described in terms of only one slave unit incorporating a suitable local slave power controller, but this technique is a system in which multiple slave units include each local slave power controller in response to usage signals. It will be appreciated that it is readily scalable and advantageous at. Likewise, this technique is well suited for systems containing a large number of properly configured master units for generating usage signals.

바람직한 기술에 의하면, 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛으로부터의 트랜잭션 수신시의 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛은, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛에 수신통지(acknowledgement)를 발행하고, 상기 수신통지는 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛이 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛에 대한 상기 트랜잭션을 완료하는 경우를 나타내는 1개 이상의 지연 예측 신호들을 포함하고,According to a preferred technique, at least one slave unit of the one or more slave units upon receiving a transaction from one master unit of the one or more master units is received by the one master unit of the one or more master units. One or more delays that issue an acknowledgment, wherein the receipt notification indicates when at least one slave unit of the one or more slave units completes the transaction for one master unit of the one or more master units; Includes prediction signals,

상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛은, 상기 1개 이상의 지연된 예측 신호에 응답하여, 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛을, 상기 트랜잭션의 완료가 예상되기 전의 간격에서 제1의 마스터 전력 상태로 전환하고, 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛을, 상기 트랜잭션의 완료를 위한 적절한 시간에 제2의 마스터 전력 상태로 전환하는 로컬 마스터 전력 제어기를 구비하고, 상기 제1의 마스터 전력 상태는 상기 제2의 마스터 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 마스터 전력 상태는 상기 제2의 마스터 전력 상태보다 더 긴 응답 레이턴시를 갖는다.One master unit of the one or more master units may, in response to the one or more delayed prediction signals, select one master unit of the one or more master units in a first interval at an interval before the completion of the transaction is expected. A local master power controller for transitioning to a master power state and transitioning one of said one or more master units to a second master power state at an appropriate time for completion of said transaction; The master power state has a lower power consumption than the second master power state, and the first master power state has a longer response latency than the second master power state.

사용 신호들에 따른 슬레이브 유닛들의 지능적이고 결정론적인 파워다운은 마스터 유닛들로 역행하여 확장될 수 있다. 트랜잭션의 수신시 슬레이브 유닛(아마도 사용 신호 라인/접속을 재사용)으로부터 되돌아온 수신통지 신호는, 슬레이브 유닛이 트랜잭션을 완료할 수 있으려면 얼마나 시간이 더 걸리는지를 나타낼 수 있으므로, 마스터 유닛이 트랜잭션의 완료를 기다리는 동안 저전력 모드에 진입할 가능성, 예를 들면 예를 들면 메모리 페치(fetch)를 서비스할 때의 레이턴시에 진입할 가능성이 있다.Intelligent and deterministic power down of the slave units in accordance with the usage signals can be extended back to the master units. The receipt notification signal returned from the slave unit (possibly reusing the use signal line / connection) upon receipt of the transaction may indicate how long it takes for the slave unit to complete the transaction, so that the master unit may not complete the transaction. There is a possibility to enter a low power mode while waiting, for example to enter latency when servicing a memory fetch.

본 기술 및 사용 신호들은, 주어진 트랜잭션에 포함된 마스터와 슬레이브의 전력 모드를 제어하기 위해서 사용될 뿐만 아니라, 슬레이브와 마스터와의 사이의 경로에 있어서의 1개 이상의 중재 회로를 트리거시켜서 감소된 전력 소모 상태에 진입시키는 일을 할 수도 있다. 이것은 인터커넥트의 부분을 포함할 수도 있는데, 여기에서는 그 인터커넥트의 부분이 사용 신호들로 표시된 것과 같은 결정된 기간 동안 휴지 상태에 있을 것이라는 것이 알려져 있다. 이것은 한층 더 전력을 절약할 수 있다.The present technology and usage signals are not only used to control the power mode of the master and slave involved in a given transaction, but also reduce power consumption by triggering one or more arbitration circuits in the path between the slave and the master. You can also do something to get into. This may include a portion of the interconnect, where it is known that the portion of the interconnect will be idle for a determined period of time, such as indicated by usage signals. This can further save power.

사용 신호들은 다양한 서로 다른 방식으로 지연을 나타낼 수 있지만, 제공될 필요가 있는 사용신호들의 수와 표시될 수 있는 지연 범위와의 사이의 유용한 트레드 오프(trade off)는, 대수의 인코딩이 사용되는 곳에 있는 것이다. 표현 가능한 가장 낮은 비제로 값은, 사용가능한 가장 낮은 유효한 비활성 간격보다 작은 전위 파워다운 간격을 전달할 가치가 없으므로 통신될 수도 있는 슬레이브 중의 어느 것인가의 가장 낮은 유효한 비활성 간격에 대응하도록 선택될 수 있다.The signals used may represent a delay in a variety of different ways, but a useful trade off between the number of signals used to be provided and the delay range that can be indicated is where a large number of encodings are used. It is. The lowest non-zero representable value may be selected to correspond to the lowest valid inactive interval of any of the slaves that may be communicating since it is not worth delivering a potential power down interval less than the lowest valid inactive interval available.

다음 트랜잭션까지의 시간이 불명확한 경우, 이것은 사용 신호들에 의해서도 전달될 수 있고, 로컬 슬레이브 전력 제어기는 그것에 응답해서 원한다면 저전력 소모 모드로 전환할 수 있다. 슬레이브 유닛은 다음 트랜잭션을 위한 적절한 시간에 우선적으로 파워 업하는 것이 불가능하기 때문에 어떤 레이턴시가 그러한 불명확한 시간 간격과 관련이 있을 것이라는 것을 인식할 것이다.If the time until the next transaction is unclear, it can also be conveyed by the usage signals, and the local slave power controller can respond to it and switch to a low power consumption mode if desired. The slave unit will recognize that some latency will be associated with such an indeterminate time interval because it is impossible to preferentially power up at the appropriate time for the next transaction.

어느 사용신호를 주장할지를 사용 신호들의 소스가 선택할 수 있는 방식은 변할 수 있다. 한 형태의 실시 예에 있어서, 사용 지정 레지스터는 마스터 유닛과 관련되어 있어도 되고, 마스터 유닛에서 일어나는 트랜잭션과 관련해서 어느 사용 신호가 발생되어야 하는지를 지정하는 값으로 소프트웨어 제어 하에서 기록가능할 수도 있다. 이것에 의해 사용 신호들이 지정되는 방식으로 많은 유연성이 제공되지만, 그 대가로 어떤 소프트웨어 중재가 필요하게 된다. 그러한 사용 값의 소프트웨어 프로그래밍은 파워업시 또는 시스템 초기화시에 행해질 수 있다. The manner in which the source of use signals can select which use signal to claim may vary. In one form of embodiment, the usage designation register may be associated with the master unit or may be writable under software control to a value that specifies which usage signal should be generated in connection with a transaction occurring in the master unit. This provides a great deal of flexibility in the way the signals used are specified, but in return some software intervention is required. Software programming of such usage values can be done at power up or at system initialization.

선택적인 것으로서, 또는 사용 신호들을 지정하기 위한 레지스터의 사용 외에, 사용 신호값이 마스터로서 기능하고 트랜잭션을 초기화하는 프로세서에서 실행되는 프로그램 명령 내에서 인코딩될 수도 있다. 따라서, 프로그램에 의해 초기화되는 다음 트랜잭션이 발생할 때를 알고 있는 것으로, 각 트랜잭션은 컴파일러에 의해 자동적으로 소프트웨어가 기록되었던 시간에서 결정되었던 것과 관련된 그 자신의 사용신호를 가질 수 있다.As an alternative, or in addition to the use of a register to designate the usage signals, the usage signal value may be encoded in a program instruction executed in a processor that functions as a master and initiates a transaction. Thus, knowing when the next transaction initiated by the program occurs, each transaction can have its own usage signal associated with what was determined at the time the software was automatically written by the compiler.

또 다른 선택적인 것 또는 추가는, 스레드 액티비티(thread activity)와 같은 시스템의 파라미터를 모니터링하는 작동 시스템 프로그램이, 슬레이브에 발행되 고 있는 트랜잭션과 사용 값을 관련짓기 위한 적절한 프로그램 명령을 지정해서 이용하기 위해서 어떤 사용 값을 결정하는 곳에 있을 것이다. Another option or addition is to use an operating system program that monitors system parameters, such as thread activity, by specifying the appropriate program command to associate usage values with transactions being issued to the slave. In order to determine what value to use.

다음 트랜잭션에 대한 간격에 관한 정보를 전달하는 것뿐 아니라, 사용 신호들을 이용해서, 로컬 셧다운, 글로벌 셧다운, 로컬 슬립, 글로벌 슬립, 로컬 클록 정지, 글로벌 클럭 정지, 로컬 클럭 속도 지정, 글로벌 클럭 속도 지정, 낮은 동작 전압 모드, 낮은 리키지 모드, 웨이크업 및/또는 간격 확장 등의, 파워 커맨드들을 전달할 수도 있다. 사용 신호들은 이미 인터커넥트를 통해서 라우트되므로 시스템 주위의 파워 커맨드들을 전달하기 위한 편리한 전달수단(vehicle)을 제공한다.In addition to passing information about the interval for the next transaction, use signals to use local shutdown, global shutdown, local sleep, global sleep, local clock stop, global clock stop, local clock rate specification, global clock rate specification. Power commands, such as, low operating voltage mode, low leakage mode, wake up and / or interval extension, and the like. Usage signals are already routed through the interconnect, providing a convenient vehicle for delivering power commands around the system.

본 기술은 넓은 다양한 서로 다른 형태를 갖는 장치들에 적용될 수도 있다는 것을 알게 될 것이다. 이 기술은 특히 집적회로 또는 멀티칩 모듈 내에서의 사용에 매우 적합하지만, 복수의 접속된 집적회로를 지닌 인쇄회로기판에도 확장가능하고, 예를 들면, 특히 전력 부족 슬레이브는 오프 칩 메모리일 것이고, 상술한 사용 신호 기술을 이용하여 이것을 파워다운하는 것이 바람직할 것이다.It will be appreciated that the present technology may be applied to a wide variety of different shaped devices. This technique is particularly well suited for use in integrated circuits or multichip modules, but is also scalable to printed circuit boards having a plurality of connected integrated circuits, for example, a particularly low power slave would be off-chip memory, It would be desirable to power this down using the usage signal technique described above.

인터커넥트는 프로세서 코어와 캐시 메모리와의 사이와 같이, 한 개의 마스터 유닛과 한 개의 슬레이브 유닛 간의 전용 접속을 포함하는, 많은 형태를 지닐 수 있지만, 그 기술은 예를 들면 영국, 캠브리지의 ARM Limited에 의해 제공된 AXI 인터커넥트 시스템 등, 좀더 일반적인 포인트 투 포인트 접속을 제공하는 인터커넥트의 환경에서 확장가능하고 특히 적용가능하다.The interconnect can take many forms, including a dedicated connection between one master unit and one slave unit, such as between the processor core and the cache memory, but the technique can be used, for example, by ARM Limited, Cambridge, UK. It is scalable and particularly applicable in the context of interconnects that provide more general point-to-point connections, such as the provided AXI interconnect system.

또 다른 국면에서 보면, 본 발명은, 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛 및 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 이용하여 데이터를 처리하는 방법을 제공하고, 상기 데이터 처리방법은, In another aspect, the invention includes data transfer transactions along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and at least one slave unit, A method of processing data using an interconnect connected to said at least one master unit and said at least one slave unit to route transactions, said data processing method comprising:

상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신된 트랜잭션 - 상기 트랜잭션은, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션이 전해지는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함한다 -을 발생하는 단계와,A transaction received by at least one slave unit of the one or more slave units, wherein the transaction specifies one usage prediction that indicates when a next transaction is passed to at least one slave unit of the one or more slave units; Generating the above usage signal;

상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛의 로컬 슬레이브 전력 제어기를 이용하는 상기 1개 이상의 사용 신호들에 응답해서, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션을 서비스하기 위한 적절한 시간에 제2의 슬레이브 전력 상태로 전환하는 단계 - 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖고 - 를 포함한다.In response to the one or more usage signals using a local slave power controller of at least one of the one or more slave units, the next transaction may be received by the at least one slave unit of the one or more slave units. Transitioning to a first slave power state in an interval before it is expected, and transitioning at least one slave unit of the one or more slave units to a second slave power state at an appropriate time to service the next transaction. The first slave power state has a lower power consumption than the second slave power state, and the first slave power state has a response latency longer than the second slave power state.

또 다른 국면에서 보면, 본 발명에 따른 데이터 처리장치는,In another aspect, the data processing apparatus according to the present invention,

1개 이상의 마스터 유닛 수단과,One or more master unit means,

1개 이상의 슬레이브 유닛 수단과,One or more slave unit means,

상기 1개 이상의 마스터 유닛 수단과 상기 1개 이상의 슬레이브 유닛 수단 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛 수단과 상기 1개 이상의 슬레이브 유닛 수단에 접속된 인터커넥트 수단을 구비하고,Connected to the one or more master unit means and the one or more slave unit means to route transactions, including data transfer transactions, along a wiring path between the one or more master unit means and the one or more slave unit means. With interconnect means,

상기 1개 이상의 슬레이브 유닛 수단 중의 적어도 한 개의 슬레이브 유닛 수단이 수신한 트랜잭션은, 다음 트랜잭션이 상기 1개 이상의 슬레이브 유닛 수단 중 적어도 한 개의 슬레이브 유닛 수단에 전달되는 경우를 나타내는 사용 예측을 지정하는 1개 이상의 사용 신호를 포함하고,The transaction received by at least one slave unit means of the one or more slave unit means is one that specifies usage prediction that indicates when a next transaction is delivered to at least one slave unit means of the one or more slave unit means. More than use signal,

상기 1개 이상의 슬레이브 유닛 수단 중의 적어도 한 개의 슬레이브 유닛 수단은, 상기 1개 이상의 사용 신호에 응답하여, 상기 1개 이상의 슬레이브 유닛 수단 중의 적어도 한 개의 슬레이브 유닛 수단을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 수단 중의 적어도 한 개의 슬레이브 유닛 수단을 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제1의 슬레이브 전력 상태로 전환하는, 로컬 슬레이브 전력 제어기 수단을 구비하고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖는다.At least one slave unit means of the one or more slave unit means, in response to the one or more usage signals, expects at least one slave unit means of the one or more slave unit means to receive the next transaction. Local to transition to a first slave power state in an interval before the transition, and to transition at least one slave unit means of the one or more slave unit means to a first slave power state at an appropriate time for servicing the next transaction. And slave power controller means, wherein the first slave power state has a lower power consumption than the second slave power state, and the first slave power state has a longer response latency than the second slave power state. Has

다른 국면에서 보면, 본 발명은, 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛 및 상기 1개의 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트 하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 구비하고, 상기 1개 이상의 슬레이브 유닛의 적어도 한 개의 슬레이브 유닛이 수신한 트랜잭션이 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션을 전달하는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함하는 장치 내부에 사용하는 슬레이브 유닛을 제공하고, 상기 슬레이브 유닛은, In another aspect, the present invention provides a transaction comprising data transfer transactions along a wiring path between at least one master unit, at least one slave unit, at least one master unit and at least one slave unit. An interconnect connected to said at least one master unit and said at least one slave unit to route traffic, wherein a transaction received by at least one slave unit of said at least one slave unit is at least one of said at least one slave unit; Providing a slave unit for use inside a device including one or more usage signals specifying usage prediction that indicates when to deliver the next transaction to the two slave units, wherein the slave unit comprises:

상기 1개 이상의 사용 신호에 응답해서, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제2의 슬레이브 전력 상태로 전환하는, 로컬 슬레이브 전력 제어기를 구비하고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖는다.In response to the one or more usage signals, transitioning at least one slave unit of the one or more slave units to a first slave power state at an interval before the next transaction is expected to be received, And a local slave power controller for transitioning at least one slave unit of the slave units to a second slave power state at a suitable time for servicing the next transaction, wherein the first slave power state is selected from the second slave power state. It has a lower power consumption than the slave power state, and the first slave power state has a longer response latency than the second slave power state.

또 다른 국면에서 보면, 본 발명은, 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개의 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 구비하는 장치 내부에 사용하는 마스터 유닛을 제공하고, 상기 마스터 유닛은,In another aspect, the present invention includes data transfer transactions along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and at least one slave unit, Providing a master unit for use within an apparatus having an interconnect connected to the at least one master unit and the at least one slave unit to route transactions, wherein the master unit comprises:

상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신되고, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션을 전달하는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함하는, 트랜잭션을 발생하도록 구성된 트랜잭션 발생기를 구비한다.One or more usage signals received by at least one slave unit of the one or more slave units and specifying usage prediction that indicates when to deliver a next transaction to at least one slave unit of the one or more slave units. And a transaction generator configured to generate a transaction.

또 다른 국면에서 보면, 본 발명은, 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개의 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 구비하는 장치 내부에 사용하는 인터커넥트를 제공하고, 상기 인터커넥트는,In another aspect, the present invention includes data transfer transactions along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and at least one slave unit, Providing an interconnect for use inside a device having an interconnect connected to said at least one master unit and said at least one slave unit to route transactions, said interconnect comprising:

상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신되고, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션을 전달하는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함하는, 트랜잭션을 전달하도록 구성된 신호 연결부를 포함한다.One or more usage signals received by at least one slave unit of the one or more slave units and specifying usage prediction that indicates when to deliver a next transaction to at least one slave unit of the one or more slave units. And a signal connection configured to carry the transaction.

본 발명의 실시 예들은 첨부도면을 참조하면서 이하의 예에 의해서 설명될 것이다.Embodiments of the present invention will be described by the following examples with reference to the accompanying drawings.

도 1은 전력 관리 기술을 이용하는 장치를 개략적으로 도시한 도면이다.1 is a schematic diagram of an apparatus utilizing power management techniques.

도 2는 마스터와 슬레이브 간의 트랜잭션과 관련하여 인터커넥트를 통해서 전달된 병렬 신호들을 개략적으로 도시한 도면이다.FIG. 2 is a diagram schematically illustrating parallel signals carried over an interconnect in connection with a transaction between a master and a slave.

도 3은 사용 신호들의 인코딩의 일례를 개략적으로 도시한 도면이다.3 is a diagram schematically illustrating an example of encoding of use signals.

도 4는 로컬 슬레이브 전력 제어기를 내장한 슬레이브 유닛을 개략적으로 도시한 도면이다.4 is a diagram schematically illustrating a slave unit incorporating a local slave power controller.

도 5는 로컬 슬레이브 전력 제어기를 개략적으로 도시한 도면이다.5 schematically illustrates a local slave power controller.

도 6은 로컬 슬레이브 전력 제어기의 동작을 개략적으로 나타낸 흐름도이다.6 is a flowchart schematically illustrating the operation of a local slave power controller.

도 7은 로컬 마스터 전력 제어기를 내장한 마스터 유닛을 개략적으로 도시한 도면이다.7 is a schematic view of a master unit incorporating a local master power controller.

도 8은 로컬 마스터 전력 제어기의 동작을 개략적으로 도시한 흐름도이다.8 is a flow chart schematically illustrating the operation of a local master power controller.

도 9는 사용 신호 중재 기능을 내장한 인터커넥트를 개략적으로 도시한 도면이다.9 is a schematic diagram illustrating an interconnect incorporating a usage signal arbitration function.

도 10은 사용 신호 중재를 개략적으로 도시한 흐름도이다.10 is a flowchart schematically illustrating use signal arbitration.

도 1은 집적회로(4)와 슬레이브 서브시스템(6)을 내장한 인쇄 회로 기판 형태의 장치(2)를 나타낸다. 집적회로(4)는 멀티 칩 모듈, 시스템 온 칩 집적회로 또는 표준 집적회로일 수 있다. 집적회로는 마스터 유닛(8), 마스터로서도 기능을 하는 프로세서 코어(10), 및 프로세서 코어(10)에 접속된 캐시 메모리(12)를 내장하고 있다. 캐시 메모리(12)는 프로세서 코어(10)에 대해서 슬레이브로서 기능을 하고, 인터커넥트(14)에 대해서는 마스터로서도 기능을 한다. 프로세서 코어(10)와 캐시 메모리(12)와의 사이에는, 후술하는 바와 같이 제시된 기술에 따라 사용(usage) 신호들을 전달하는 전용의 인터커넥트(16)가 있다. 인터커넥트(14)는 이 실시 예에 있어서는 공지의 AXI 기술에 따라 접속을 위한 중개 기능과 포인트 투 포인트(point-to-point) 접속성을 내장한 AXI 인터커넥트의 변형된 형태이다. 슬레이브 18, 20, 6 중의 하나와 같은, 슬레이브 유닛이 그것의 다음 트랜잭션을 수신할 때의 표시를 보내는 본 기술에 따라 사용 신호들을 제공함으로써 이 공지의 기능성을 능가하여 인터커넥트(14)가 확장된다. 슬레이브 서브시스템(6)은 인터커넥트(14)에 관한 슬레이브로서 작용하지만, 본질적으로는, 한층 더 신호 라우팅(routing)을 요구하고, 관계있는 트랜잭션(transaction)에 의존해서 사용되거나 혹은 사용되지 않는 한 개의 관련 기능 소자 이상을 갖는다. 슬레이브 서브시스템(6)은, 로컬 메모리가 특별한 트랜잭션을 서비스할 수 없을 때 요구되는 하드 디스크 드라이브 등, 어떤 로컬 메모리 및 추가적으로 어떤 높은 순위의 메모리를 가진 메모리 시스템일 수 있다.1 shows an apparatus 2 in the form of a printed circuit board incorporating an integrated circuit 4 and a slave subsystem 6. The integrated circuit 4 may be a multi chip module, a system on chip integrated circuit or a standard integrated circuit. The integrated circuit includes a master unit 8, a processor core 10 also functioning as a master, and a cache memory 12 connected to the processor core 10. The cache memory 12 functions as a slave to the processor core 10 and also functions as a master for the interconnect 14. Between the processor core 10 and the cache memory 12 is a dedicated interconnect 16 that carries usage signals in accordance with the techniques presented below, as described below. Interconnect 14 is a variant of the AXI interconnect in this embodiment, which incorporates intermediary functionality and point-to-point connectivity for connectivity in accordance with known AXI techniques. The interconnect 14 extends beyond this known functionality by providing usage signals in accordance with the present technology which sends an indication when the slave unit receives its next transaction, such as one of the slaves 18, 20, 6. The slave subsystem 6 acts as a slave to the interconnect 14, but in essence one that requires more signal routing and is used or not depending on the transaction involved. There is more than a related functional element. The slave subsystem 6 may be a memory system with some local memory and additionally some higher rank memory, such as a hard disk drive that is required when local memory cannot service a particular transaction.

도 2는 인터커넥트(14)에 의해 전달된 트랜잭션의 신호 형성부를 개략적으로 나타낸다. 이들 신호는 데이터 신호(22), 어드레스 신호(24) 및 사용 신호(26)를 포함한다. 어드레스 신호(24) 및 데이터 신호(22)는 공지의 AXI 시스템과 프로토콜을 따를 수 있고, 이들 공지의 시스템 프로토콜에 따라 (개별적으로 또는 함께) 라우트 및 중재될 수도 있다. 사용 신호(26)는 이 트랜잭션에 추가되고, 동일한 라우팅 중재 및 지연에 영향을 받도록 동일 라우팅을 추종할 수 있다. 사용 신호(26)는 대안으로 그들 자신의 라우팅 및 중재를 개별적으로 가지고 있다. 사용 신호(26)는 이것이 공지된 경우, 그 마스터로부터 시작되어 그 목표 슬레이브 유닛에 전달되는 다음 트랜잭션이 발생하는 경우를 지정하는 정보를 전달한다. 이 정보는 적절한 파 워다운 모드로 그 자체를 파워다운하고, 우선적으로 바람직하지 않은 레이턴시(latency)를 초래하지 않고 그 다음 트랜잭션을 서비스하기 위한 적절한 시간에 그 자체를 파워 백업(back up)하도록 슬레이브에 의해 사용될 수 있다.2 schematically illustrates the signal formation of a transaction carried by interconnect 14. These signals include a data signal 22, an address signal 24, and a use signal 26. The address signal 24 and the data signal 22 may follow known AXI systems and protocols, and may be routed and arbitrated (individually or together) in accordance with these known system protocols. Usage signal 26 may be added to this transaction and follow the same routing to be affected by the same routing arbitration and delay. The use signal 26 alternatively has its own routing and arbitration separately. The usage signal 26 conveys information, when known, that specifies when the next transaction, starting from its master and delivered to its target slave unit, occurs. This information powers itself down to the appropriate power-down mode and preferentially slaves itself back up at the appropriate time to service the next transaction without incurring undesirable latency. Can be used by.

도 3은 예를 들면 3비트 사용 신호가 사용되는 인코딩의 일례를 개략적으로 도시한 것이다. 이 인코딩은 모두가 아니라 제1 및 제2의 값에 대하여 대수적이다. 제1의 값은 예측되지 않은 간격을 특정하고, 슬레이브가 활성 상태로 있어야 한다는 것을 나타낸다. 마지막 인코딩은 미결정 간격을 나타내고, 우선적인 파워업이 없는 슬립 모드를 개시하는 등, 다양한 다른 방식으로 슬레이브에 의해 해석될 수도 있다. 이들 극단적인 행위 사이에서는, 인코딩은 전형적인 AXI 인터커넥트 이행의 경우에, 4개의 클럭 사이클 등, 지지된 다수의 최소 파워다운 간격에 의하여 표현되는, 다음 트랜잭션에 대한 간격을 나타낸다. 이 가장 작은 간격보다 작은 입상(granularity)을 제공할 필요가 없다.3 schematically shows an example of encoding in which a 3-bit usage signal is used, for example. This encoding is algebraic for the first and second values but not all. The first value specifies an unexpected interval and indicates that the slave should be active. The last encoding may be interpreted by the slave in a variety of other ways, such as indicating an indeterminate interval, initiating a sleep mode with no preferential powerup. Among these extreme behaviors, encoding represents the interval for the next transaction, represented by a number of minimum supported power down intervals, such as four clock cycles, in the case of a typical AXI interconnect implementation. There is no need to provide granularity less than this smallest gap.

도 4는 슬레이브 유닛(28)을 개략적으로 도시한 것이다. 이것은 AXI 트랜잭션을 위해서 예상된 것과 같은 사실상 통상의 방식으로 그리고 슬레이브 유닛(28)에 의해 제공된 기능성에 따라 수신된 트랜잭션을 처리하는 다수의 기능 블록 30, 32를 내장하고 있다. 또한, 기능 블록(30)으로부터 전달된 상태 정보 및 사용 신호들에 응답하는 로컬 슬레이브 전력 제어기(34)를 설치하여, 얼마 동안 파워다운 모드에 진입해야 하는지와, 수신된 트랜잭션을 서비스한 이후에 복수의 파워다운 모드 중의 하나의 파워다운 모드에 진입하는 것이 적합한지 여부를 판정한다. 슬레이브 유닛(28)이 파워다운되면, 적절한 클럭 제어 신호 및/또는 전압 제어 신호들을 기능 블록 30, 32에 공급하여, 이 파워다운을 개시하고 다음에 우선적인 파워 업을 개시한다. 로컬 슬레이브 전력 제어기(34)는 또한 복수의 슬레이브 유닛에 의해 공유되어도 된다.4 schematically shows a slave unit 28. It incorporates a number of functional blocks 30, 32 that process the received transaction in a substantially conventional manner as expected for the AXI transaction and in accordance with the functionality provided by the slave unit 28. In addition, by installing a local slave power controller 34 in response to the status information and usage signals delivered from the function block 30, how many times the power-down mode should be entered and after the received transaction has been serviced It is determined whether it is appropriate to enter one of the power down modes of the power down mode. When the slave unit 28 is powered down, it supplies the appropriate clock control signals and / or voltage control signals to the function blocks 30, 32 to initiate this power down and then to initiate the preferential power up. The local slave power controller 34 may also be shared by a plurality of slave units.

도 5는 로컬 슬레이브 전력 제어기(34)를 보다 자세히 개략적으로 도시한 것이다. 사용 신호들은 슬레이브 유닛(28)의 현 상태의 1개 이상의 국면을 나타내는 상태 변수와 함께 전력 제어 로직(36)에 공급된다. 이들 신호를 결합해서 사용하여 파워다운 모드에 슬레이브 유닛(28)이 얼마만큼의 시간 동안 있어야 하는지를 판정한다. 이것에 따라, 적절한 타이머 값이 타이머(28)로 로드되고, 이 타이머는, 우선적인 웨이크업이 요구되어 전력 제어 로직(36)에 전달되는 웨이크업 신호를 발생할 때까지 시간의 경과(예를 들면 최소의 파워다운 간격의 단위로)를 카운트 다운한다. 적절한 파워다운 모드에 진입하기 위해서 전력 제어 로직(36)에 의해 생성된 클럭 제어 신호 및 전압 제어 신호는 다양한 다른 효과를 가질 수 있다. 클럭 신호는 다른 값으로 정지 또는 슬로우(slow)될 수 있다. 전압은 낮아지거나 오프될 수 있다. 시스템은 낮은 리키지 모드 또는 전력을 줄이기 위해 행해지는 일부 다른 전압 조작으로 둘 수 있다. 다양한 파워다운 모드가 알려져 있지만 어떤 것이든 사용될 수 있다.5 schematically illustrates the local slave power controller 34 in more detail. The usage signals are supplied to the power control logic 36 with state variables representing one or more aspects of the current state of the slave unit 28. These signals are used in combination to determine how long the slave unit 28 should be in power down mode. As such, the appropriate timer value is loaded into timer 28, which elapses time (e.g., until a wake-up signal is generated that is required for priority wake-up and communicated to power control logic 36). Count down) in units of minimum power down interval. The clock control signal and voltage control signal generated by the power control logic 36 to enter the appropriate power down mode can have a variety of different effects. The clock signal can be stopped or slowed to another value. The voltage can be lowered or turned off. The system can be placed in a low leakage mode or some other voltage manipulation made to reduce power. Various power down modes are known, but any can be used.

도 6은 전력 제어 로직(36)에 의해 행해지는 제어를 개략적으로 도시한 흐름도이다. 스텝 40에서, 시스템은 수신될 사용 신호들을 기다린다. 그러한 신호들이 수신되면, 스텝 42에서의 처리는 다음 트랜잭션 및 현재의 슬레이브 상태까지 간격의 길이에 의존해서 진입되어야 하는 파워다운 모드를 선택한다. 간격이 짧으면, 진입 및 탈출하는데 많은 시간이 걸리는, 딥 파워다운 모드에 진입하는 것은 가치가 없다. 마찬가지로, 슬레이브 유닛(28)의 현 상태는 표시된 간격과는 관계없이 진입되는 (그 상태 변수에 의해 신호화되는) 파워다운 모드에 제한이 있을 수 있다. 파워다운 모드가 선택되었을 경우, 웨이크업(wakeup) 시간이 결정될 수 있다. 서로 다른 파워다운 모드가 탈출하는데 서로 다른 많은 시간이 걸리기 때문에 웨이크업이 전에 또는 후에 발생할 것을 요구한다. 스텝 44에서, 타이머(38)는 필요한 웨이크업 포인트에 대한 간격으로 로드된다. 스텝 46은 스텝 40에서 검출되었던 사용 신호들과 함께 일어나는 현 트랜잭션이 완료되었는지 여부를 체크한다. 이 트랜잭션이 완료되었다면, 처리는 스텝 48로 진행되고, 스텝 48에서, 선택된 파워다운 모드에 적합한 클럭 및 전압을 제어하기 위한 신호가 발행되어 슬레이브 유닛이 파워다운 모드로 전환된다. 스텝 50은, 타이머가 필요한 웨이크업 포인트에 도달했는지 여부를 연속해서 체크한다. 웨이크업 포인트가 도달된 경우, 처리는 스텝 52로 진행되고, 스텝 52에서 웨이크업이 개시되고, 전력 제어 로직(36)은 적절한 클럭 제어 및 전압 제어 신호들을 발행해서 다음 트랜잭션에 응답할 수 있는 동작 모드로 슬레이브 유닛(28)을 이동시킨다. 전력 제어 로직(36)의 목적은, 수신될 다음 트랜잭션을 위한 적절한 시간에서만 다음 트랜잭션을 준비하도록 그 동작 모드로 슬레이브 유닛(28)을 이동시키는 것이다.6 is a flow diagram schematically illustrating the control performed by the power control logic 36. In step 40, the system waits for usage signals to be received. When such signals are received, the process at step 42 selects the power down mode that should be entered depending on the length of the interval until the next transaction and the current slave state. If the interval is short, it is not worth entering deep power down mode, which takes a long time to enter and exit. Likewise, the current state of slave unit 28 may be limited in the power down mode that is entered (signaled by its state variable) regardless of the indicated interval. When the power down mode is selected, a wakeup time may be determined. Because different power-down modes take many different times to escape, they require wakeups to occur before or after. In step 44, the timer 38 is loaded at intervals for the required wake up point. Step 46 checks whether the current transaction occurring with the usage signals that were detected in step 40 has been completed. If this transaction is completed, processing proceeds to step 48, in which a signal for controlling the clock and voltage appropriate for the selected power down mode is issued to switch the slave unit to the power down mode. Step 50 continuously checks whether the timer has reached the required wakeup point. If the wakeup point has been reached, processing proceeds to step 52, the wakeup is initiated at step 52, and the power control logic 36 is capable of issuing appropriate clock control and voltage control signals to respond to the next transaction. Move the slave unit 28 to the mode. The purpose of the power control logic 36 is to move the slave unit 28 to its mode of operation to prepare the next transaction only at the appropriate time for the next transaction to be received.

도 6에는 도시하지 않았지만, 슬레이브 유닛(28)은 사용 신호들을 이용해서 슬레이브 유닛(28)이 단지 수신된 트랜잭션을 완료할 수 있으려면 얼마나 시간이 더 걸릴지를 나타내는 초기 마스터에 수신통지를 반송할 수도 있다. 이 수신통지 신호를 마스터가 사용해서, 완료된 트랜잭션을 수신하기 위한 적절한 시간에 우선적으로 그 자체를 파워 업하는 마스터 유닛에 의해 만약 완료된 트랜잭션의 수신까지 적합하다면 그 자체를 파워다운한다.Although not shown in FIG. 6, the slave unit 28 may use the usage signals to send a receipt notification to the initial master indicating how much longer it will take for the slave unit 28 to complete a received transaction only. have. This receive notification signal is used by the master to power down itself if it is suitable for the reception of the completed transaction by the master unit, which first powers itself up at the appropriate time to receive the completed transaction.

도 7은 마스터 유닛(54)을 개략적으로 도시한 것이다. 마스터 유닛(54)은 사실상 공지의 방식으로 AXI 트랜잭션들과 같은 트랜잭션들을 발생하고, 프로그램가능하면 프로그램 명령에 응답하는 1개 이상의 기능 블록 56, 58을 내장하고 있다. 또한, 마스터 유닛(54) 내부에는 로컬 마스터 전력 제어기(60)가 설치되어 있다. 로컬 마스터 전력 제어기(60)는 인터벌 레지스터(interval register;62) 내에 저장된 1개 이상의 소프트웨어 기록가능한 간격값; 신호 라인(64) 상에 디코딩된 간격을 주는 프로그램 명령 내부의 필드로부터의 디코딩된 신호들; 및 마스터 유닛(54)으로부터 슬레이브 유닛으로 발송된 트랜잭션에 따라 어떤 사용 신호(68)를 발생할 것인가를 결정할 때, 마스터 유닛(54)의 현 상태를 특정하는 상태 가변 신호(66)에 응답한다. 사용 신호들은, 다음에 슬레이브에 대한 트랜잭션을 개시한다는 것을 마스터 유닛(54)이 예상하는 경우를 특정할 것이다. 이 표시된 사용 신호값은, 절대적으로 보증할 수 없지만, 예를 들어, 예상하지 않은 인터럽트의 발생으로 인해, 마스터 유닛(54) 자체 내의 마이크로 아키텍처 레벨에서 결정되므로, 비교적 정확하다고 하는 경향이 있다.7 schematically shows a master unit 54. The master unit 54 contains one or more functional blocks 56, 58 that generate transactions, such as AXI transactions, in a known manner and, in response, are programmable. In addition, a local master power controller 60 is provided inside the master unit 54. The local master power controller 60 may include one or more software recordable interval values stored in an interval register 62; Decoded signals from a field inside a program instruction giving a decoded interval on signal line 64; And when determining which usage signal 68 to generate according to the transaction sent from the master unit 54 to the slave unit, responds to the state variable signal 66 specifying the current state of the master unit 54. The usage signals will specify when the master unit 54 expects to start a transaction for the slave next. This indicated usage signal value is not absolutely guaranteed, but tends to be relatively accurate since it is determined at the microarchitecture level within the master unit 54 itself, for example, due to the occurrence of an unexpected interrupt.

로컬 마스터 전력 제어기(60)는, 사용 신호 라인(68)을 통해서 슬레이브로부터 패스백(passed back)된 수신통지 신호에 응답해서, 파워다운 모드로부터의 진입 및 탈출을 정당화하는 기간 동안, 트랜잭션을 완료하지 않는다는 것을, 예를 들면 요청된 데이터를 복귀시키지 않는다는 것을 슬레이브가 나타낼 때 마스터 유닛(54)을 파워다운한다. 따라서, 로컬 마스터 전력 제어기는 기능 블록 56, 58에 전달되는 클럭 제어 신호와 전압 제어 신호를 발생해서 마스터(54) 내의 파워다운 모드에 진입한다.The local master power controller 60 completes the transaction for a period of time justifying entry and exit from the power down mode, in response to a receive notification signal passed back from the slave via the usage signal line 68. Power down master unit 54 when the slave indicates that it does not, for example does not return the requested data. Thus, the local master power controller generates a clock control signal and a voltage control signal that are passed to function blocks 56 and 58 to enter the power down mode in master 54.

도 8은, 로컬 마스터 전력 제어기(60)에 의해 행해지는 제어를 개략적으로 나타낸 것이다. 스텝 70에서의 처리는 발행될 필요가 있는 트랜잭션을 기다린다. 트랜잭션이 발행되면, 스텝 72에서는 레지스터(62) 내부의 인터벌 레지스터 값에 의해 지정된 가장 짧은 간격으로부터 그 트랜잭션을 수행하는 사용 신호들에서 특정되는 간격; 디코딩된 간격 신호 라인(64) 상의 어떤 프로그램 명령으로부터의 디코딩 간격; 및 상태 변수 신호 라인(66) 상의 상태 변수에 의해 특정되는 어떤 제약에 대한 의존성을 결정한다. 이 결정이 완료하면, 스텝 74는 트랜잭션과 함께 신호 라인(68) 상에 사용 신호들을 발행한다. 스텝 76은 슬레이브가 트랜잭션을 완료할 수 있으려면 얼마나 시간이 더 걸리는지를 나타내는 슬레이브로부터 패스백되는 수신통지 신호를 기다린다. 그러한 수신통지 신호가 수신되면, 처리가 스텝 78로 진행되고, 이 스텝 78에서는 특별한 마스터 유닛(54)에 의해 지지되는 복수의 파워다운 모드, 예를 들면, 클럭 정지, 클럭 둔화(slowing), 저전압, 낮은 리키지, 슬립, 파워다운, 데이터 리텐션(retention) 등으로부터 선택됨에 따라, 사용되는 파워다운 모드를 결정한다. 스텝 80에서, 사용되는 파워다운 모드와 관련된 필요한 웨이크업 시간에 대한 간격을 결정해서, 로컬 마스터 전력 제어기(60) 내부의 타이머로 로드한다. 스텝 82에서, 로컬 마스터 전력 제어기(60)는 마스터 유닛(54)을 파워다운 모드로 전환한다. 스텝 84에서, 로컬 마스터 전력 제어기(60)는 타이머가 웨이크업 포인트에 도달할 때까지 기다리고, 이 포인트에서, 시간 처리가 스텝 86으로 진행하고, 마스터 유닛(54)은 어떤 다른 방식으로 완료된 트랜잭션 또는 복귀되는 데이터를 위해서 적절한 시간에 그 동작 모드로 되돌아간다(switch back).8 schematically illustrates the control performed by the local master power controller 60. The process at step 70 waits for a transaction that needs to be issued. If a transaction is issued, step 72 includes: an interval specified in usage signals that perform the transaction from the shortest interval specified by the interval register value inside register 62; Decoding interval from any program command on decoded interval signal line 64; And a dependency on any constraint specified by the state variable on state variable signal line 66. Once this determination is complete, step 74 issues usage signals on signal line 68 with the transaction. Step 76 waits for a receive notification signal to pass back from the slave indicating how long it takes for the slave to complete the transaction. If such a reception notification signal is received, processing proceeds to step 78 where a plurality of power down modes supported by the special master unit 54, for example, clock stop, clock slowing, low voltage. The low power, sleep, power down, data retention, etc., determines the power down mode used. In step 80, the interval for the required wake up time associated with the power down mode used is determined and loaded into a timer inside the local master power controller 60. In step 82, the local master power controller 60 switches the master unit 54 into a power down mode. In step 84, the local master power controller 60 waits until the timer reaches the wakeup point, at which point time processing proceeds to step 86, and the master unit 54 completes the transaction or Switch back to that mode of operation at the appropriate time for the data to be returned.

도 9는 본 기술에 따라 사용되는 인터커넥트 블록(14)을 개략적으로 도시한 것이다. 이 인터커넥트 블록(14)은 공지의 AXI 기술 또는 다른 기술에 따라 제어 정보뿐만 아니라 어드레스 및 데이터의 라우팅을 지지한다. 이들 공지의 기능을 지지하기 위해서 인터커넥트(14) 내에 포함된 소자들은 이 기술분야에서 잘 알려져 있으므로 여기에서는 더 설명하지 않는다. 그것의 통상의 소자들뿐 아니라 인터커넥트(14)는 마스터들과 슬레이브들 간의 인터커넥트(14)를 통과하는 사용 신호들을 중재하는 기능을 하는 인터커넥트 사용 신호 중재 블록(88)을 포함한다. 타이머(90)는 최소 파워다운 인터벌 스텝, 예를 들면 4클럭 사이클로 증가하는 타임 인덱스 값을 제공한다. 사용 신호가 트랜잭션과 관련해서 수신되면, 이들 마스터가 다음에 관련이 있는 특별한 슬레이브를 요구하는 경우를 나타내고 접속된 마스터와 관련이 있는 저장된 타임 인덱스 값이, 타겟 슬레이브 유닛의 현재 수신된 사용 신호로 표시된 것 전 혹은 후에 그러한 다음의 사용을 나타내는지 아닌지를 결정한다. 이들 저장된 타임 인덱스 값은 레지스터 92 및 94 내에 홀드된다. 저장된 다음 사용 요구사항이 현재 수신된 사용 신호들에 표시된 것 전에 있으면, 인터커넥트 사용 신호 중재 블록(88)은 사용 신호를 변경하고, 간격을 교체하여, 레지스터 92, 94 내의 저장된 다음 사용값 중의 하나로 표시된 것과 같은 짧은 간격으로 특정한 다. 현재의 수신된 사용 신호들로 나타낸 다음 사용이 저장된 것들 중의 어느 한 개보다 전에 있으면, 트랜잭션과 함께 변경되지 않은 채로 전해질 것이다.9 schematically illustrates an interconnect block 14 used in accordance with the present technology. This interconnect block 14 supports routing of addresses and data as well as control information in accordance with known AXI techniques or other techniques. The elements included in interconnect 14 to support these known functions are well known in the art and will not be described further herein. Interconnect 14, as well as its conventional elements, includes an interconnect usage signal arbitration block 88 that functions to mediate usage signals passing through interconnect 14 between masters and slaves. The timer 90 provides a time index value that increases with a minimum power down interval step, for example four clock cycles. When a usage signal is received in connection with a transaction, it indicates that these masters require a special slave that is next relevant and the stored time index value associated with the connected master is indicated by the currently received usage signal of the target slave unit. Determine whether it represents the next use before or after it. These stored time index values are held in registers 92 and 94. If the next stored usage requirement is before the one currently displayed in the received usage signals, the interconnect usage signal arbitration block 88 modifies the usage signal and replaces the interval, indicating one of the next stored usage values in registers 92 and 94. Are specified at short intervals, such as one. If the next usage indicated by the current received usage signals is before any one of those stored, it will be delivered unchanged with the transaction.

본 예에서는, 다수의 마스터들 간의 중재가 인터커넥트(14) 내에서 행해진다는 것을 알 수 있을 것이다. 대체물로서, 특히 슬레이브 유닛이, 다수의 마스터로부터의 오버랩핑 트랜잭션을 다루기 위해 설치된 시스템을 가지고 있었고 또 이미 설계되어 있었던, 메모리 컨트롤러 등, 좀더 복잡한 형태였다면, 슬레이브 유닛 자체 내에서 중재를 행할 수 있다.In this example, it will be appreciated that mediation between multiple masters is done within interconnect 14. As an alternative, in particular, if the slave unit had a system installed to handle overlapping transactions from multiple masters and was more complex, such as a memory controller, which had already been designed, it would be possible to arbitrate within the slave unit itself.

그 데이터 및 어드레스 라우팅 기능을 제공할 때의 인터커넥터(14)는 인터커넥터(14)를 통과하는 사용 신호들에 응답해서 선택적으로 파워 업 및 파워다운될 수 있는 다양한 서로 다른 부분들을 내장하고 있다. 인터커넥트 블록(14)은 어떤 기간 동안 특별한 경로가 요구되지 않을 것이므로 그 경로를 파워다운할 수 있다는 것과, 그것이 인터커넥트 블록의 외부에 있는 추가 부분들 또는 그 자체의 부분들인지 그리고 그것을 통과하는 사용 신호들에 응답하여 그들 자신의 로컬 전력 제어에 영향을 받지 않는지를, 사용신호들로부터 결정할 수 있다.Interconnect 14, when providing its data and address routing functions, incorporates a variety of different parts that can be selectively powered up and powered down in response to usage signals passing through interconnect 14. The interconnect block 14 may power down that path because no special path will be required for some period of time, and whether it is additional parts or parts of itself outside of the interconnect block, and the usage signals passing through it. In response, it is possible to determine from the use signals whether they are not affected by their own local power control.

도 10은 인터커넥트 사용 신호 중재 블록(88)에 의해 행해지는 중재를 개략적으로 도시한 흐름도이다. 스텝 96에서, 인터커넥트 사용 신호 중재 블록(88)은 트랜잭션을 기다린다. 그러한 트랜잭션이 수신되면, 스텝 98에서는 수신된 트랜잭션에서 관련된 사용 신호들로부터 유도된 다음 사용 시간과, 레지스터 92, 94 내에 저장되는 것과 같은 이들 다른 마스터들로부터 이전에 수신된 트랜잭션을 위한 다른 마스터의 다음 사용 시간 인덱스를 비교한다. 스텝 100에서는 어떤 다른 마스터 가 다음 사용에 대해서 좀 더 짧은 간격을 나타냈는지 여부를 판정한다. 어떤 다른 마스터가 좀더 짧은 간격을 가지면, 처리는 스텝 102로 진행되고, 그 밖에는 이 스텝 102는 바이패스되고, 여기서 수신된 사용 신호들은, 인터커넥트 블록(14) 자체에 의해 부과되는 어떤 추가 지연에 응답하여, 그리고 인터커넥트 블록(14)이 감지하는 마스터 중의 어느 하나에 대하여 가장 짧은 간격을 나타내도록 변경된다. 인터커넥트 사용 신호 중재 블록(88)은 인터커넥트 블록(14)의 상태를 특정하는 상태 가변 신호들에 응답하여, 공지의 AXI 기술에 따라 동작하는 데이터 및 어드레스 라우팅 블록이 시스템 내부의 어떤 다른 소자에 특별한 패스웨이(pathway)를 할당했다는 등, 또 이것이 다음 트랜잭션이 사실상 관련된 슬레이브 유닛에 도달할 수 있을 때까지 상기의 모두에 관계없이 다른 시간 간격을 부과할 것이라는 등의 요인들을 나타낼 수 있다. 또 스텝 104에서는, 트랜잭션이 수신되는 마스터의 다음 사용 시간 인덱스가, 레지스터 92, 94 중의 적절한 한 개 내에서 갱신된다. 스텝 106에서, 중재된 사용 신호들은 타겟 슬레이브 유닛에 발행된다.10 is a flow diagram schematically illustrating the arbitration performed by the interconnect usage signal arbitration block 88. In step 96, the interconnect usage signal arbitration block 88 waits for a transaction. If such a transaction is received, then at step 98 the next usage time derived from the related usage signals in the received transaction and the next of the other masters for previously received transactions from these other masters, such as those stored in registers 92 and 94; Compare usage time indexes. In step 100 it is determined whether any other master has shown a shorter interval for the next use. If any other master has a shorter interval, processing proceeds to step 102, whereby step 102 is bypassed, where the received usage signals respond to any additional delay imposed by the interconnect block 14 itself. Then, the interconnect block 14 is changed to show the shortest interval for any one of the masters to sense. Interconnect usage signal arbitration block 88 responds to state variable signals that specify the state of interconnect block 14 so that data and address routing blocks operating in accordance with known AXI techniques are specific to any other device within the system. Assigning a wayway, etc., and this may indicate factors that will impose a different time interval regardless of all of the above until the next transaction can actually reach the associated slave unit. In step 104, the next use time index of the master from which the transaction is received is updated in the appropriate one of the registers 92 and 94. In step 106, the arbitrated usage signals are issued to the target slave unit.

다음 트랜잭션에 대한 시간 간격을 특정할 뿐만 아니라, 현재의 트랜잭션의 완료까지의 시간 간격을 나타내는 수신통지 신호들을 패스백(pass back)하기 위해 사용되는 사용신호들은, 편리하게 그리고 스케일가능하게 통상의 데이터 및 어드레스 라우팅 인프라스트럭처(infrastructure)에 대한 시스템 피기 백킹(piggy-backing)을 통해서 라우트되는 더 많은 표준 파워다운 명령들을 전달해도 된다. 로컬 슬레이브 전력 제어기, 로컬 마스터 전력 제어기 및 인터커넥트 블록 자체의 전력 제어기에 공급될 수 있는 파워다운 신호들의 예로서, 로컬 셧다운, 글로벌 셧다 운, 로컬 슬립, 글로벌 슬립, 로컬 클럭 정지, 글로벌 클럭 정지, 로컬 클럭 속도 지정, 글로벌 클럭 속도 지정, 저동작 전압 모드, 낮은 리키지 모드, 웨이크업 및 간격 확장(이것은 다음 트랜잭션 또는 트랜잭션의 완료까지 이미 지정된 시간 간격을 확장하는 명령이다)과 같은 명령들이 있다. In addition to specifying a time interval for the next transaction, the usage signals used to pass back receive notification signals representing the time interval until the completion of the current transaction are conveniently and scalable to normal data. And more standard power down instructions routed through system piggy-backing to the address routing infrastructure. Examples of power down signals that may be supplied to the local slave power controller, the local master power controller, and the power controller of the interconnect block itself include, for example, local shutdown, global shutdown, local sleep, global sleep, local clock stop, global clock stop, local. There are instructions such as clock rate specification, global clock rate specification, low operating voltage mode, low liquidity mode, wake up and interval extension (this is an instruction to extend the already specified time interval until the next transaction or completion of a transaction).

Claims (52)

데이터 처리장치로서,As a data processing device, 1개 이상의 마스터 유닛과,One or more master units, 1개 이상의 슬레이브 유닛과,One or more slave units, 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 구비하고,An interconnect connected to the at least one master unit and the at least one slave unit to route transactions including data transfer transactions along a wiring path between the at least one master unit and the at least one slave unit, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신되는 트랜잭션은, 다음 트랜잭션이 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛에 전해지는 경우를 나타내는 사용 예측을 지정하는 1개 이상의 사용 신호를 포함하며,One or more uses that specify a usage prediction indicating that a transaction received by at least one slave unit of the one or more slave units indicates that a next transaction is passed to the at least one slave unit of the one or more slave units. Signal, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛은, 상기 1개 이상의 사용 신호에 응답하여, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제2의 슬레이브 전력 상태로 전환하는, 로컬 슬레이브 전력 제어기를 구비하고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖는 것을 특징으로 하는 데이터 처리장치.The at least one slave unit of the one or more slave units, in response to the one or more usage signals, selects the at least one slave unit of the one or more slave units before the next transaction is expected to be received. Local slave power, transitioning to a first slave power state in an interval, and transitioning the at least one slave unit of the one or more slave units to a second slave power state at an appropriate time to service the next transaction And a controller, wherein the first slave power state has a lower power consumption than the second slave power state, and wherein the first slave power state has a longer response latency than the second slave power state. Characterized in that the data processing device. 제 1 항에 있어서,The method of claim 1, 트랜잭션을 발행하는 마스터 유닛은, 상기 마스터 유닛의 현 상태에 의존해서 상기 트랜잭션 내부에 상기 1개 이상의 사용 신호를 제공하는 것을 특징으로 하는 데이터 처리장치.And a master unit issuing a transaction provides the one or more usage signals within the transaction depending on the current state of the master unit. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 인터커넥트는 상기 데이터 처리장치의 현 상태에 의존해서 상기 트랜잭션 내에 상기 1개 이상의 사용 신호를 제공하는 것을 특징으로 하는 데이터 처리장치.And wherein said interconnect provides said one or more usage signals within said transaction depending on the current state of said data processing device. 제 3 항에 있어서,The method of claim 3, wherein 상기 인터커넥트는 복수의 마스터 유닛으로부터의 각 트랜잭션이 수신한 사용 신호들 사이를 중재해서, 상기 복수의 마스터 유닛 중의 어느 것인가로부터 상 기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션이 전해지는 경우를 나타내고, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛에 전달되는, 중재된 사용 신호들을 제공하는 것을 특징으로 하는 데이터 처리장치.The interconnect mediates between usage signals received by each transaction from a plurality of master units, so that the next transaction is delivered from any of the plurality of master units to the at least one slave unit of the one or more slave units. Indicates a case and provides arbitrated usage signals that are delivered to the at least one slave unit of the one or more slave units. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 4, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛은, 상기 제1의 슬레이브 전력 상태로서 사용될 수 있는 응답 레이턴시 및 각각의 전력소모가 있는 복수의 저전력 상태를 갖고, 상기 로컬 슬레이브 전력 제어기는 상기 다음 트랜잭션이 예상되기 전의 상기 간격에 의존해서 상기 복수의 저전력 상태 중 어느 것을 상기 제1의 슬레이브 전력 상태로서 사용할 것인지를 선택하는 것을 특징으로 하는 데이터 처리장치.The at least one slave unit of the one or more slave units has a plurality of low power states with respective power consumption and response latency that may be used as the first slave power state, and the local slave power controller is configured to perform the following operation. And which of the plurality of low power states to use as the first slave power state depending on the interval before a transaction is expected. 제 5 항에 있어서,The method of claim 5, wherein 상기 로컬 슬레이브 전력 제어기는 또한 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛의 현 상태에 의존해서 상기 복수의 저전력 상태 중 어느 것을 상기 제1의 슬레이브 전력 상태로서 사용할 것인지를 선택하는 것을 특징으로 하는 데이터 처리장치.The local slave power controller also selects which of the plurality of low power states to use as the first slave power state depending on the current state of the at least one slave unit of the one or more slave units. Data processing device. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 6, 상기 1개 이상의 사용 신호에 응답하는 로컬 슬레이브 전력 제어기를 각각 포함하는 복수의 슬레이브 유닛을 구비하는 것을 특징으로 하는 데이터 처리장치.And a plurality of slave units each including a local slave power controller responsive to said at least one usage signal. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 7, 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛으로부터의 트랜잭션의 수신시의 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛은, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛에 수신통지를 발행하고, 상기 수신통지는, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛이 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛에 대한 상기 트랜잭션을 완료하는 경우를 나타내는 1개 이상의 지연 예측 신호들을 포함하고,At least one slave unit of the one or more slave units upon receipt of a transaction from one master unit of the one or more master units issues a receipt notification to the one master unit of the one or more master units and And the reception notification includes one or more delay prediction signals indicating when the at least one slave unit of the one or more slave units completes the transaction for the one master unit of the one or more master units. and, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛은, 상기 1개 이상의 지연된 예측 신호에 응답하여, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛을, 상기 트랜잭션의 완료가 예상되기 전의 간격에서 제1의 마스터 전력 상태로 전환하고, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛을, 상기 트랜잭션의 완료를 위한 적정 시간에 제2의 마스터 전력 상태로 전환 하는 로컬 마스터 전력 제어기를 구비하고, 상기 제1의 마스터 전력 상태는 상기 제2의 마스터 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 마스터 전력 상태는 상기 제2의 마스터 전력 상태보다 더 긴 응답 레이턴시를 갖는 것을 특징으로 하는 데이터 처리장치.The one master unit of the one or more master units may be configured to remove the one master unit of the one or more master units in an interval before the completion of the transaction is expected in response to the one or more delayed prediction signals. A local master power controller for transitioning to a master power state of one and transitioning said one master unit of said one or more master units to a second master power state at an appropriate time for completion of said transaction; A first master power state has lower power consumption than the second master power state, and the first master power state has a longer response latency than the second master power state Device. 제 8 항에 있어서,The method of claim 8, 상기 1개 이상의 지연 예측 신호는 또한 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛과 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛과의 사이의 경로에서 1개 이상의 중재 회로 소자를 트리거시켜서 감소된 전력 소모 상태에 진입시키는 일을 하는 것을 특징으로 하는 데이터 처리장치.The at least one delay prediction signal also triggers at least one arbitration circuit element in a path between the at least one slave unit of the at least one slave unit and the at least one master unit of the at least one master unit. And enter a reduced power consumption state. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 9, 상기 인터커넥트는,The interconnect is 개별적으로 제어가능한 전력 상태를 갖는 복수의 부분들과,A plurality of portions having individually controllable power states, 상기 1개 이상의 사용 신호에 응답해서 상기 인터커넥트의 상기 복수의 부분들의 각 전력 상태를 제어하는 로컬 인터커넥트 전력 제어기를 포함하는 것을 특징으로 하는 데이터 처리장치.And a local interconnect power controller for controlling each power state of the plurality of portions of the interconnect in response to the one or more usage signals. 제 1 항 내지 제 10 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 10, 상기 1개 이상의 사용 신호는 복수의 사용신호들을 포함하고, 상기 사용 예측의 적어도 일부 값에 대하여 대수 인코딩을 이용하는 것을 특징으로 하는 데이터 처리장치.Wherein said at least one usage signal comprises a plurality of usage signals and uses algebraic encoding for at least some values of said usage prediction. 제 1 항 내지 제 11 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 11, 상기 1개 이상의 사용 신호로 표현된 가장 낮은 비제로 값에 대응하는 사용 예측은, 상기 1개 이상의 슬레이브 유닛 중의 한 개의 슬레이브 유닛에 대한 가장 낮은 유효한 불활성 간격에 대응하는 것을 특징으로 하는 데이터 처리장치.The usage prediction corresponding to the lowest non-zero value represented by the one or more usage signals corresponds to the lowest valid inactive interval for one slave unit of the one or more slave units. 제 1 항 내지 제 12 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 12, 상기 1개 이상의 사용 신호는 상기 다음 트랜잭션 전에 미결정의 시간을 나타내는 값을 갖고, 상기 로컬 슬레이브 전력 제어기는 그것에 응답해서 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을 저전력 소모 모드로 전환하는 것을 특징으로 하는 데이터 처리장치.The one or more usage signals have a value indicating an undetermined time before the next transaction, and the local slave power controller is responsive to switching the at least one slave unit of the one or more slave units to a low power consumption mode. Characterized in that the data processing device. 제 1 항 내지 제 13 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 13, 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛에 의해 발생하는 사용 신호들을 지정하는 소프트웨어 기록가능한 값을 저장하고, 상기 1개 이상의 마스터 유닛 중의 각각의 한 개의 마스터 유닛과 관련된 적어도 한 개의 사용 지정 레지스터를 구비하는 것을 특징으로 하는 데이터 처리장치.Store a software recordable value specifying usage signals generated by one master unit of the one or more master units, and storing at least one usage assignment register associated with each one master unit of the one or more master units. Data processing apparatus characterized in that it comprises. 제 1 항 내지 제 14 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 14, 프로그램 명령에 응답해서 상기 트랜잭션들 중의 하나의 트랜잭션을 초기화하는 프로세서를 구비하고, 상기 프로그램 명령을 가진 필드는 상기 트랜잭션과 관련되는 상기 1개 이상의 사용 신호에 대한 값을 지정하는 것을 특징으로 하는 데이터 처리장치.And a processor for initiating one of the transactions in response to a program command, wherein the field with the program command specifies a value for the one or more usage signals associated with the transaction. Device. 제 15 항에 있어서,The method of claim 15, 상기 프로그램 명령은, 작동 시스템 프로그램의 일부이며, 상기 필드는 상기 작동 시스템 프로그램에 의해 결정된 것으로서 상기 장치의 적어도 일부분의 현 상태에 의존해서 변경되는 것을 특징으로 하는 데이터 처리장치.And said program command is part of an operating system program, said field being determined by said operating system program and changing depending on the current state of at least a portion of said device. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 16, 상기 1개 이상의 사용 신호는 또한 1개 이상의 파워 커맨드들을 전달할 수 있는 것을 특징으로 하는 데이터 처리장치.And the one or more usage signals can also carry one or more power commands. 제 17 항에 있어서,The method of claim 17, 상기 1개 이상의 파워 커맨드들은,The one or more power commands, 로컬 셧다운;Local shutdown; 글로벌 셧다운;Global shutdown; 로컬 슬립;Local sleep; 글로벌 슬립;Global slip; 로컬 클럭 정지;Local clock stop; 글로벌 클럭 정지;Global clock stop; 로컬 클럭 속도 지정;Local clock speed specification; 글로벌 클럭 속도 지정;Global clock rate specification; 낮은 동작 전압 모드;Low operating voltage mode; 낮은 리키지 모드;Low liquidity mode; 웨이크업; 및Wake up; And 간격 확장Interval expansion 중의 한 개 이상을 포함하는 것을 특징으로 하는 데이터 처리장치.And at least one of the data processing apparatus. 제 1 항 내지 제 18 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 18, 상기 장치는,The device, 집적회로;Integrated circuits; 멀티 칩 모듈; 및Multi-chip module; And 복수의 접속된 집적회로를 가진 인쇄회로기판 중의 하나인 것을 특징으로 하는 데이터 처리장치.And a printed circuit board having a plurality of connected integrated circuits. 제 1 항 내지 제 19 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 19, 상기 인터커넥트는 포인트 투 포인트 인터커넥트인 것을 특징으로 하는 데이터 처리장치.And wherein said interconnect is a point-to-point interconnect. 제 1 항 내지 제 19 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 19, 상기 인터커넥트는 한 개의 마스터 유닛과 한 개의 슬레이브 유닛 간의 전용의 연결부인 것을 특징으로 하는 데이터 처리장치.And wherein said interconnect is a dedicated connection between one master unit and one slave unit. 제 21 항에 있어서,The method of claim 21, 상기 1개의 마스터 유닛은 프로세서 코어이고, 상기 1개의 슬레이브 유닛은 캐시 메모리인 것을 특징으로 하는 데이터 처리장치.And said one master unit is a processor core and said one slave unit is a cache memory. 제 1 항 내지 제 22 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 22, 상기 사용 신호들은 상기 트랜잭션의 일부를 형성하는 1개 이상의 다른 신호와 공유된 배선 경로에서 라우트되는 것을 특징으로 하는 데이터 처리장치.And said usage signals are routed in a wiring path shared with one or more other signals forming part of said transaction. 제 1 항 내지 제 23 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 23, 상기 로컬 전력 제어기는 복수의 슬레이브 유닛들에 의해 공유되는 것을 특징으로 하는 데이터 처리장치.And said local power controller is shared by a plurality of slave units. 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 이용하여 데이터를 처 리하는 방법으로서, The at least one master unit to route transactions, including data transfer transactions, along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and the at least one slave unit And a method for processing data using an interconnect connected to the at least one slave unit, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신되는 트랜잭션 - 상기 트랜잭션은, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션이 전해지는 경우를 나타내는 사용 예측을 지정하는 1개 이상의 사용 신호를 포함한다 - 을 발생하는 단계와,A transaction received by at least one slave unit of the one or more slave units, wherein the transaction specifies a usage prediction that indicates when a next transaction is passed to the at least one slave unit of the one or more slave units. Generating at least one usage signal; 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛의 로컬 슬레이브 전력 제어기를 이용하는 상기 1개 이상의 사용 신호들에 응답해서, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제2의 슬레이브 전력 상태로 전환하는 단계 - 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖는다 - 를 포함하는 것을 특징으로 하는 데이터 처리방법.In response to the one or more usage signals using a local slave power controller of the at least one slave unit of the one or more slave units, the at least one slave unit of the one or more slave units, Transition to a first slave power state in an interval before it is expected to be received, and move the at least one slave unit of the one or more slave units to a second slave power state at an appropriate time to service the next transaction. Transitioning, wherein the first slave power state has lower power consumption than the second slave power state and the first slave power state has a response latency longer than the second slave power state. Data processing room comprising method. 제 25 항에 있어서,The method of claim 25, 상기 트랜잭션 내부의 상기 1개 이상의 사용 신호는 마스터 유닛의 현 상태에 의존해서 상기 마스터 유닛에 의해 제공되는 것을 특징으로 하는 데이터 처리방 법.The one or more usage signals within the transaction are provided by the master unit depending on the current state of the master unit. 제 25 항 또는 제 26 항에 있어서,The method of claim 25 or 26, 상기 트랜잭션 내부의 상기 1개 이상의 사용 신호는 상기 장치의 현 상태에 의존해서 상기 인터커넥트에 의해 제공되는 것을 특징으로 하는 데이터 처리방법.And said one or more usage signals within said transaction are provided by said interconnect depending on the current state of said device. 제 27 항에 있어서,The method of claim 27, 복수의 마스터 유닛으로부터의 각각의 트랜잭션이 수신한 사용 신호들 간을 상기 인터커넥트로 중재하여, 상기 복수의 마스터 유닛 중의 어느 것인가로부터의 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션이 전달되는 경우를 나타내고, 상기 1개 이상의 슬레이브 유닛의 상기 적어도 한 개의 슬레이브 유닛에 전달되는 중재된 사용 신호들을 제공하는 것을 포함한 것을 특징으로 하는 데이터 처리방법.Mediate between the usage signals received by each transaction from a plurality of master units with the interconnect, so that a next transaction is added to the at least one slave unit of the one or more slave units from any of the plurality of master units; Indicating a case of delivery and providing mediated usage signals delivered to said at least one slave unit of said at least one slave unit. 제 25 항 내지 제 28 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 28, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛은, 상기 제1의 슬레이브 전력 상태로서 사용될 수 있는 응답 레이턴시와 각각의 전력 소모를 지닌 복수의 저전력 상태를 갖고, 상기 로컬 슬레이브 전력 제어기는 상기 다음 트랜잭션을 예상하기 전의 상기 간격에 의존해서 상기 복수의 저전력 상태 중 어느 것을 상기 제1의 슬레이브 전력 상태로서 사용할 것인가를 선택하는 것을 특징으로 하는 데이터 처리방법.The at least one slave unit of the one or more slave units has a plurality of low power states with a response latency and respective power consumption that can be used as the first slave power state, and the local slave power controller is configured to perform the following operation. And which of the plurality of low power states to use as the first slave power state, depending on the interval before the transaction is expected. 제 29 항에 있어서,The method of claim 29, 상기 로컬 슬레이브 전력 제어기는 또한 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛의 현 상태에 의존해서 상기 복수의 저전력 상태 중 어느 것을 상기 제1의 슬레이브 전력 상태로서 사용할 것인가를 선택하는 것을 특징으로 하는 데이터 처리방법.The local slave power controller is further configured to select which of the plurality of low power states to use as the first slave power state depending on the current state of the at least one slave unit of the one or more slave units. How to process data. 제 25 항 내지 제 30 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 30, 로컬 슬레이브 전력 제어기를 각각 포함하는 복수의 슬레이브 유닛들은 상기 1개 이상의 사용 신호에 응답하는 것을 특징으로 하는 데이터 처리방법.And a plurality of slave units each comprising a local slave power controller responsive to said at least one usage signal. 제 25 항 내지 제 31 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 31, 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛으로부터의 트랜잭션 의 수신시의 상기 1개 이상의 슬레이브 유닛의 적어도 한 개의 슬레이브 유닛은, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛에 수신통지를 발행하고, 상기 수신통지는, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛이 상기 1개 이상의 마스터 유닛 중의 한 개의 마스터 유닛에 대한 상기 트랜잭션을 완료하는 경우를 나타내는 1개 이상의 지연 예측 신호를 포함하며,At least one slave unit of the one or more slave units upon receipt of a transaction from one master unit of the one or more master units issues a receipt notification to the one master unit of the one or more master units and The reception notification includes one or more delay prediction signals indicating when at least one slave unit of the one or more slave units completes the transaction for one master unit of the one or more master units, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛의 로컬 마스터 전력 제어기를 이용하는 상기 1개 이상의 지연 예측 신호에 응답해서, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛을, 상기 트랜잭션의 완료를 예상하기 전의 간격에서 제1의 마스터 전력 상태로 전환하고, 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛을, 상기 트랜잭션을 완료하기 위한 적정 시간에 제2의 마스터 전력 상태로 전환하며, 상기 제1의 마스터 전력 상태는 상기 제2의 마스터 전력 상태보다 낮은 전력 소모를 갖고, 상기 제1의 마스터 전력 상태는 상기 제2의 마스터 전력 상태보다 긴 응답 레이턴시를 갖는 것을 특징으로 하는 데이터 처리방법.In response to the one or more delay prediction signals using a local master power controller of the one of the one or more master units, expecting the one of the one or more master units to complete the transaction. Transitioning to a first master power state at an interval before the following, switching the one master unit of the one or more master units to a second master power state at an appropriate time to complete the transaction, and Wherein the master power state has a lower power consumption than the second master power state, and wherein the first master power state has a response latency longer than the second master power state. 제 32 항에 있어서,The method of claim 32, 상기 1개 이상의 지연 예측 신호는, 또한 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛과 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛 간의 경로에서 1개 이상의 중재 회로 소자를 트리거시켜서 감 소된 전력소모 상태에 진입시키는 일을 하는 것을 특징으로 하는 데이터 처리방법.The at least one delay prediction signal is further reduced by triggering at least one arbitration circuit element in a path between the at least one slave unit of the at least one slave unit and the at least one master unit of the at least one master unit. A method of processing data, characterized in that to enter the power consumption state. 제 25 항 내지 제 33 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 33, 상기 인터커넥트는 개별적으로 제어가능한 전력 상태를 갖는 복수의 부분들을 포함하고, 상기 방법은 상기 인터커넥트의 로컬 인터커넥트 전력 제어기를 이용하는 상기 1개 이상의 사용 신호에 응답해서 상기 인터커넥트의 상기 복수의 부분들의 각각의 전력 상태를 제어하는 것을 더 포함한 것을 특징으로 하는 데이터 처리방법.The interconnect includes a plurality of portions having individually controllable power states, and the method includes powering each of the plurality of portions of the interconnect in response to the one or more usage signals using a local interconnect power controller of the interconnect. Further comprising controlling a state. 제 25 항 내지 제 34 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 34, wherein 상기 1개 이상의 사용 신호는 복수의 사용 신호들을 포함하고, 상기 사용 예측의 적어도 일부 값에 대하여 대수 인코딩을 이용하는 것을 특징으로 하는 데이터 처리방법.Wherein said at least one usage signal comprises a plurality of usage signals and uses algebraic encoding for at least some values of said usage prediction. 제 25 항 내지 제 35 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 35, 상기 1개 이상의 사용 신호로 나타낸 가장 낮은 비제로 값에 대응하는 사용 예측은 상기 1개 이상의 슬레이브 유닛 중의 한 개의 슬레이브 유닛에 대한 가장 낮은 유효한 불활성 간격에 대응하는 것을 특징으로 하는 데이터 처리방법.The usage prediction corresponding to the lowest non-zero value indicated by the one or more usage signals corresponds to the lowest valid inactive interval for one slave unit of the one or more slave units. 제 25 항 내지 제 36 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 36, 상기 1개 이상의 사용 신호는 상기 다음 트랜잭션 전에 미결정 시간을 나타내는 값을 갖고, 상기 방법은, 상기 로컬 슬레이브 전력 제어기를 이용하는 미결정 시간을 나타내는 상기 값에 응답하여, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을 저전력 소모 모드로 전환하는 것을 더 포함한 것을 특징으로 하는 데이터 처리방법.The at least one usage signal has a value representing an indeterminate time before the next transaction, and the method is responsive to the value representing an indeterminate time using the local slave power controller; And switching the two slave units to the low power consumption mode. 제 25 항 내지 제 38 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 38, 소프트웨어 제어 하에 상기 1개 이상의 마스터 유닛 중의 각 한 개의 마스터 유닛과 관련된 적어도 한 개의 사용 지정 레지스터 내에 상기 1개 이상의 마스터 유닛 중의 상기 한 개의 마스터 유닛에 의해 생성되는 사용 신호들을 지정하는 값을 저장하는 것을 포함한 것을 특징으로 하는 데이터 처리방법.Storing a value specifying usage signals generated by the one master unit of the one or more master units in at least one usage assignment register associated with each one of the one or more master units under software control. Data processing method comprising the. 제 25 항 내지 제 38 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 38, 상기 트랜잭션들 중의 한 개의 트랜잭션을 초기화하는 프로세서에 의해 실행 되는 프로그램 명령에 응답하는 것을 포함하고, 상기 프로그램 명령을 지닌 필드는 상기 트랜잭션과 관련되는 상기 1개 이상의 사용 신호에 대한 값을 지정하는 것을 특징으로 하는 데이터 처리방법.Responsive to a program instruction executed by a processor that initiates one of the transactions, wherein the field with the program instruction specifies a value for the one or more usage signals associated with the transaction. Data processing method. 제 39 항에 있어서,The method of claim 39, 상기 프로그램 명령은 작동 시스템 프로그램의 일부이며, 상기 필드는 상기 작동 시스템 프로그램에 의해 결정된 것으로서 상기 장치의 적어도 일부의 현 상태에 의존해서 변경되는 것을 특징으로 하는 데이터 처리방법.The program command is part of an operating system program, and the field is determined by the operating system program and is changed depending on the current state of at least a portion of the apparatus. 제 25 항 내지 제 40 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 40, 상기 1개 이상의 사용 신호는 또한 1개 이상의 파워 커맨드들을 전달할 수 있는 것을 특징으로 하는 데이터 처리방법.And said at least one usage signal is also capable of conveying at least one power command. 제 41 항에 있어서,42. The method of claim 41 wherein 상기 1개 이상의 파워 커맨드들은,The one or more power commands, 로컬 셧다운;Local shutdown; 글로벌 셧다운;Global shutdown; 로컬 슬립;Local sleep; 글로벌 슬립;Global slip; 로컬 클럭 정지;Local clock stop; 글로벌 클럭 정지;Global clock stop; 로컬 클럭 속도 지정;Local clock speed specification; 글로벌 클럭 속도 지정;Global clock rate specification; 낮은 동작 전압 모드;Low operating voltage mode; 낮은 리키지 모드;Low liquidity mode; 웨이크업; 및Wake up; And 간격 확장Interval expansion 중의 1개 이상을 포함한 것을 특징으로 하는 데이터 처리방법.A data processing method comprising at least one of the above. 제 25 항 내지 제 42 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 42, 상기 방법은,The method, 집적회로;Integrated circuits; 멀티 칩 모듈; 및Multi-chip module; And 복수의 접속된 집적회로를 가진 인쇄회로기판 중의 하나의 내부에서 행해지는 것을 특징으로 하는 데이터 처리방법.A data processing method characterized in that it is performed inside one of a printed circuit board having a plurality of connected integrated circuits. 제 25 항 내지 제 43 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 43, 상기 인터커넥트는 포인트 투 포인트 인터커넥트인 것을 특징으로 하는 데이터 처리방법.And wherein said interconnect is a point-to-point interconnect. 제 25 항 내지 제 43 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 43, 상기 인터커넥트는 한 개의 마스터 유닛과 한 개의 슬레이브 유닛 간의 전용의 연결부인 것을 특징으로 하는 데이터 처리방법.And wherein said interconnect is a dedicated connection between one master unit and one slave unit. 제 45 항에 있어서,The method of claim 45, 상기 1개의 마스터 유닛은 프로세서 코어이고, 상기 1개의 슬레이브 유닛은 캐시 메모리인 것을 특징으로 하는 데이터 처리방법.And said one master unit is a processor core and said one slave unit is a cache memory. 제 25 항 내지 제 46 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 46, 상기 사용 신호들은 상기 트랜잭션의 일부를 형성하는 1개 이상의 다른 신호들과 공유된 배선 경로에서 라우트되는 것을 특징으로 하는 데이터 처리방법.And said usage signals are routed in a wiring path shared with one or more other signals forming part of said transaction. 제 25 항 내지 제 47 항 중 어느 한 항에 있어서,The method according to any one of claims 25 to 47, 상기 로컬 전력 제어기는 복수의 슬레이브 유닛들에 의해 공유되는 것을 특징으로 하는 데이터 처리방법.The local power controller is shared by a plurality of slave units. 데이터 처리장치로서,As a data processing device, 1개 이상의 마스터 유닛 수단과,One or more master unit means, 1개 이상의 슬레이브 유닛 수단과,One or more slave unit means, 상기 1개 이상의 마스터 유닛 수단과 상기 1개 이상의 슬레이브 유닛 수단 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛 수단과 상기 1개 이상의 슬레이브 유닛 수단에 접속된 인터커넥트 수단을 구비하고,Connected to the one or more master unit means and the one or more slave unit means to route transactions, including data transfer transactions, along a wiring path between the one or more master unit means and the one or more slave unit means. With interconnect means, 상기 1개 이상의 슬레이브 유닛 수단 중의 적어도 한 개의 슬레이브 유닛 수단이 수신한 트랜잭션은, 다음 트랜잭션이 상기 1개 이상의 슬레이브 유닛 수단 중 상기 적어도 한 개의 슬레이브 유닛 수단에 전달되는 경우를 나타내는 사용 예측을 지정하는 1개 이상의 사용 신호를 포함하고,A transaction received by at least one slave unit means of the one or more slave unit means specifies a usage prediction that indicates when a next transaction is delivered to the at least one slave unit means of the one or more slave unit means. Contains more than one usage signal, 상기 1개 이상의 슬레이브 유닛 수단 중의 적어도 한 개의 슬레이브 유닛 수단은, 상기 1개 이상의 사용 신호에 응답하여, 상기 1개 이상의 슬레이브 유닛 수단 중의 상기 적어도 한 개의 슬레이브 유닛 수단을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬레이브 유닛 수단 중의 상기 적어도 한 개의 슬레이브 유닛 수단을, 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제2의 슬레이브 전력 상태로 전환하는 로컬 슬레이브 전력 제어기 수단을 구비하고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖는 것을 특징으로 하는 데이터 처리장치.At least one slave unit means of said at least one slave unit means is configured to receive said at least one slave unit means of said at least one slave unit means in response to said at least one usage signal. Transition to a first slave power state in an interval before it is expected, and transitioning said at least one slave unit means of said one or more slave unit means to a second slave power state at an appropriate time for servicing said next transaction. Local slave power controller means, wherein the first slave power state has a lower power consumption than the second slave power state, and wherein the first slave power state is longer than the second slave power state. Day characterized by having a response latency Processor. 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개의 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 구비하고, 상기 1개 이상의 슬레이브 유닛의 적어도 한 개의 슬레이브 유닛이 수신한 트랜잭션이, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션을 전달하는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함하는, 장치 내부에 사용하는 슬레이브 유닛으로서, The at least one master unit to route transactions, including data transfer transactions, along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and the at least one slave unit And an interconnect connected to said at least one slave unit, wherein a transaction received by at least one slave unit of said at least one slave unit delivers a next transaction to at least one slave unit of said at least one slave unit. A slave unit to be used inside a device, comprising one or more usage signals specifying usage prediction that indicates when 상기 1개 이상의 사용 신호에 응답해서, 상기 1개 이상의 슬레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션이 수신될 것으로 예상되기 전의 간격에서 제1의 슬레이브 전력 상태로 전환하고, 상기 1개 이상의 슬 레이브 유닛 중의 상기 적어도 한 개의 슬레이브 유닛을, 상기 다음 트랜잭션을 서비스하기 위한 적정 시간에 제2의 슬레이브 전력 상태로 전환하는 로컬 슬레이브 전력 제어기를 구비하고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 더 낮은 전력 소모를 갖고, 상기 제1의 슬레이브 전력 상태는 상기 제2의 슬레이브 전력 상태보다 긴 응답 레이턴시를 갖는 것을 특징으로 하는 슬레이브 유닛.In response to the one or more usage signals, transitioning the at least one slave unit of the one or more slave units to a first slave power state at an interval before the next transaction is expected to be received, the one A local slave power controller for transitioning said at least one slave unit of said slave unit to a second slave power state at a suitable time for servicing said next transaction, wherein said first slave power state is said first; And have a lower power consumption than the slave power state of two, and wherein the first slave power state has a response latency longer than the second slave power state. 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개의 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 갖는 장치 내부에 사용하는 마스터 유닛으로서, The at least one master unit to route transactions, including data transfer transactions, along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and the at least one slave unit And a master unit for use inside a device having an interconnect connected to said at least one slave unit, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신되고, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션을 전달하는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함하는, 트랜잭션을 발생하도록 구성된 트랜잭션 발생기를 구비하는 것을 특징으로 하는 마스터 유닛.One or more usage signals received by at least one slave unit of the one or more slave units and specifying usage prediction that indicates when to deliver a next transaction to at least one slave unit of the one or more slave units. And a transaction generator configured to generate a transaction. 1개 이상의 마스터 유닛과, 1개 이상의 슬레이브 유닛과, 상기 1개 이상의 마스터 유닛과 상기 1개의 이상의 슬레이브 유닛 간의 배선 경로를 따라, 데이터 전송 트랜잭션들을 포함하는, 트랜잭션들을 라우트하도록 상기 1개 이상의 마스터 유닛과 상기 1개 이상의 슬레이브 유닛에 접속된 인터커넥트를 갖는 장치 내부에 사용하는 인터커넥트로서, The at least one master unit to route transactions, including data transfer transactions, along a wiring path between at least one master unit, at least one slave unit, and at least one master unit and the at least one slave unit An interconnect used within a device having an interconnect connected to said at least one slave unit, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 의해 수신되고, 상기 1개 이상의 슬레이브 유닛 중의 적어도 한 개의 슬레이브 유닛에 다음 트랜잭션을 전달하는 경우를 나타내는 사용 예측을 지정하는 1개의 이상의 사용 신호를 포함하는, 트랜잭션을 전달하도록 구성된 신호 연결부를 포함하는 것을 특징으로 하는 인터커넥트.One or more usage signals received by at least one slave unit of the one or more slave units and specifying usage prediction that indicates when to deliver a next transaction to at least one slave unit of the one or more slave units. And a signal connection configured to carry a transaction.
KR1020097003290A 2009-02-18 2006-07-28 Power Management in Data Processing Devices with Masters and Slaves Ceased KR20090046841A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020097003290A KR20090046841A (en) 2009-02-18 2006-07-28 Power Management in Data Processing Devices with Masters and Slaves

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020097003290A KR20090046841A (en) 2009-02-18 2006-07-28 Power Management in Data Processing Devices with Masters and Slaves

Publications (1)

Publication Number Publication Date
KR20090046841A true KR20090046841A (en) 2009-05-11

Family

ID=40856536

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097003290A Ceased KR20090046841A (en) 2009-02-18 2006-07-28 Power Management in Data Processing Devices with Masters and Slaves

Country Status (1)

Country Link
KR (1) KR20090046841A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140067071A (en) * 2011-09-30 2014-06-03 인텔 코포레이션 Constrained boot techniques in multi-core platforms
US10007323B2 (en) 2012-12-26 2018-06-26 Intel Corporation Platform power consumption reduction via power state switching

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140067071A (en) * 2011-09-30 2014-06-03 인텔 코포레이션 Constrained boot techniques in multi-core platforms
US9552039B2 (en) 2011-09-30 2017-01-24 Intel Corporation Constrained boot techniques in multi-core platforms
US10007323B2 (en) 2012-12-26 2018-06-26 Intel Corporation Platform power consumption reduction via power state switching
US10564705B2 (en) 2012-12-26 2020-02-18 Intel Corporation Platform power consumption reduction via power state switching
US11422615B2 (en) 2012-12-26 2022-08-23 Intel Corporation Platform power consumption reduction via power state switching
US11768533B2 (en) 2012-12-26 2023-09-26 Tahoe Research, Ltd. Platform power consumption reduction via power state switching

Similar Documents

Publication Publication Date Title
US8291244B2 (en) Power management in a data processing device having masters and slaves
US10585448B2 (en) Low power autonomous peripheral management
US8438416B2 (en) Function based dynamic power control
JP6197196B2 (en) Power efficient processor architecture
KR100881774B1 (en) Method and apparatus for providing deterministic power-on voltage in a system where the voltage level is controlled by a processor
JP4182801B2 (en) Multi-processor system
US10732697B2 (en) Voltage rail coupling sequencing based on upstream voltage rail coupling status
JP7098326B2 (en) Methods and devices for controlling the power state of the link
CN101558366A (en) Direct memory access controller
KR20040091705A (en) Low power system and method for a data processing system
KR20150012235A (en) Voltage regulator control system
CN116490839A (en) Mechanism for performing distributed power management for multiple GPU systems
US10474592B2 (en) Control of semiconductor devices
JP3665030B2 (en) Bus control method and information processing apparatus
CN116225995B (en) Bus system and chip
KR20090046841A (en) Power Management in Data Processing Devices with Masters and Slaves
JP2002007316A (en) Low power consumption computer system
US20190391943A1 (en) Semiconductor device and bus generator
US8675444B2 (en) Synchronized command throttling for multi-channel duty-cycle based memory power management
KR20060042176A (en) Multi-Layer System and Clock Control Method
JPH1083343A (en) Method for accessing memory
US11575457B2 (en) Power-smart packet processing
JP3914404B2 (en) Power saving interface device and power saving method
JP3980401B2 (en) Memory access control system and memory access control method
KR20250025382A (en) Domain clock and power activation control circuit and related method for reducing voltage droop

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20090218

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20110704

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20130208

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20130628

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20130208

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I