JP5879925B2 - Semiconductor device and power consumption control method for semiconductor device - Google Patents
Semiconductor device and power consumption control method for semiconductor device Download PDFInfo
- Publication number
- JP5879925B2 JP5879925B2 JP2011234615A JP2011234615A JP5879925B2 JP 5879925 B2 JP5879925 B2 JP 5879925B2 JP 2011234615 A JP2011234615 A JP 2011234615A JP 2011234615 A JP2011234615 A JP 2011234615A JP 5879925 B2 JP5879925 B2 JP 5879925B2
- Authority
- JP
- Japan
- Prior art keywords
- clock
- circuit
- packet
- information
- processing
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 72
- 239000004065 semiconductor Substances 0.000 title claims description 51
- 238000012545 processing Methods 0.000 claims description 326
- 239000000284 extract Substances 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
Images
Landscapes
- Power Sources (AREA)
Description
本発明は、半導体装置、半導体装置の消費電力制御方法に関する。 The present invention relates to a semiconductor device and a power consumption control method for the semiconductor device.
半導体装置における消費電力を削減する手段として、動作しない処理回路へクロックを供給しない指示を行う方法が用いられる。また、消費電力を削減する他の手段として、処理回路へ入力されたイネーブル信号の値に応じて、処理回路に供給されるクロックを停止する方法が用いられる。 As a means for reducing power consumption in a semiconductor device, a method of giving an instruction not to supply a clock to a processing circuit that does not operate is used. As another means for reducing power consumption, a method of stopping a clock supplied to the processing circuit according to the value of the enable signal input to the processing circuit is used.
図9は、従来の省電力制御の説明図である。例えば、図9に示すように、クロックを、インバータ301、クロックゲーティング回路302、インバータ303及び304を介して、処理回路305に供給する。クロックゲーティング回路302には、クロック制御部300からクロック制御信号が入力される。クロック制御部300は、例えばファームウェア又はソフトウェアにより実現される。例えば、クロック制御部300は、動作しない処理回路305を特定して、動作しない処理回路305に対応するクロックゲーティング回路302へのクロック制御信号をロウレベルとする。これにより、処理回路305へのクロックの供給を停止することができる。
FIG. 9 is an explanatory diagram of conventional power saving control. For example, as shown in FIG. 9, the clock is supplied to the
なお、パケット転送装置が備えるヘッダ処理部はパケット処理を実施するパケット処理回路を複数備え、回路数判定回路は通信を実施する回線数、回線から入力するトラフィック量を監視してパケット処理回路の動作の有無を判定し、この判定結果に基づき、必要の無いパケット処理回路の電源やクロックを遮断して、パケット転送装置の省電力化を実現することが提案されている。 The header processing unit included in the packet transfer apparatus includes a plurality of packet processing circuits that perform packet processing. The circuit number determination circuit monitors the number of lines that perform communication and the amount of traffic that is input from the lines, and operates the packet processing circuit. It has been proposed to realize the power saving of the packet transfer apparatus by determining the presence or absence of the packet and shutting off the power and clock of the unnecessary packet processing circuit based on the determination result.
また、通信インタフェース回路は受信信号からパケットデータを抽出し、通信インタフェース制御回路は割り込み信号を生成して出力し、ネットワークプロセッサは、パケットデータを解析して、解析結果に基づいて、パケットデータをホストプロセッサに転送するか否かを判定し、割り込み制御回路は、ネットワークプロセッサから割り込み信号を受け取った際に、ホストプロセッサを起動させ、ホストプロセッサは、電源及びクロックの供給を受けて起動し、割り込み信号を受けてパケットデータの受信処理を実行することが提案されている。 Further, the communication interface circuit extracts packet data from the received signal, the communication interface control circuit generates and outputs an interrupt signal, and the network processor analyzes the packet data, and based on the analysis result, the packet data is hosted. When the interrupt control circuit receives an interrupt signal from the network processor, the interrupt control circuit activates the host processor when the interrupt signal is received from the network processor. In response to this, it has been proposed to execute packet data reception processing.
前述したように、従来の消費電力の削減手段においては、処理回路へのクロックの供給及び停止を、クロック制御回路が制御する。しかし、クロック制御回路による手段は、大きな処理回路毎の消費電力の削減には有効であるが、処理回路規模が小さくなるほど、消費電力の削減には適用でき難くなる。 As described above, in the conventional means for reducing power consumption, the clock control circuit controls the supply and stop of the clock to the processing circuit. However, the means using the clock control circuit is effective in reducing power consumption for each large processing circuit, but it becomes difficult to apply to reducing power consumption as the processing circuit scale decreases.
具体的には、半導体装置の設計時において半導体装置のシステム仕様が与えられた段階では、回路規模が大きな処理回路の中の回路規模が小さな処理回路の詳細な設計までは完了していない。従って、この段階で、小さな処理回路毎にクロックの供給の制御手段まで設計することは、事実上不可能である。一方、小さな処理回路の詳細な設計の完了の後に、クロックの供給の制御手段を設計することは、2段階で回路を設計することになり、採用できない。また、ファームウェア又はソフトウェアにより実現されるクロック制御部により、小さな処理回路毎にクロックの供給を制御すると、ファームウェア又はソフトウェアでの処理が複雑化になり、クロック制御に起因する何らかのエラーが発生する可能性が高くなる。 Specifically, when the system specifications of the semiconductor device are given at the time of designing the semiconductor device, the detailed design of the processing circuit with a small circuit scale in the processing circuit with a large circuit scale has not been completed. Therefore, at this stage, it is practically impossible to design the control means for supplying the clock for each small processing circuit. On the other hand, designing the clock supply control means after the detailed design of the small processing circuit is completed is a circuit design in two stages and cannot be employed. Also, if the clock control unit realized by firmware or software controls the clock supply for each small processing circuit, the processing in firmware or software may become complicated, and some errors may occur due to clock control. Becomes higher.
また、処理回路へ入力されたイネーブル信号の値に応じて処理回路に供給されるクロックを停止する場合、処理回路へのクロックの供給は停止することができる。しかし、クロックを供給する回路であるクロックツリーにおいて、クロックツリーの中で、クロックの供給が停止される処理回路に対応する部分に対するクロックの供給を停止できない。このため、クロックツリー自体での消費電力を削減することができない。 In addition, when the clock supplied to the processing circuit is stopped in accordance with the value of the enable signal input to the processing circuit, the supply of the clock to the processing circuit can be stopped. However, in a clock tree that is a circuit that supplies a clock, it is not possible to stop the supply of the clock to the part corresponding to the processing circuit in which the supply of the clock is stopped in the clock tree. For this reason, the power consumption in the clock tree itself cannot be reduced.
本発明は、一側面によれば、クロックの供給を制御して消費電力を削減することが可能な半導体装置を提供する。 According to one aspect of the present invention, a semiconductor device capable of reducing power consumption by controlling clock supply is provided.
開示される半導体装置は、一側面によれば、制御部と、クロック供給部とを含む。制御部は、受信したパケットから、パケットに記録された情報であって、機能させるべき処理を特定する情報である機能情報を抽出する。クロック供給部は、抽出された機能情報と、処理を行う際にクロックを供給すべき処理回路を特定する情報である回路情報とに基づいて、抽出された機能情報により特定される機能させるべき処理を行う際にクロックを供給すべき処理回路に、クロックを供給する。 According to one aspect, the disclosed semiconductor device includes a control unit and a clock supply unit. The control unit extracts, from the received packet, function information that is information recorded in the packet and is information that specifies processing to be performed. The clock supply unit performs processing to be specified by the extracted function information on the basis of the extracted function information and circuit information that is information for specifying a processing circuit to which a clock is to be supplied when processing is performed. The clock is supplied to the processing circuit to which the clock is to be supplied when performing the above.
開示される半導体装置は、一側面によれば、クロックの供給を制御して消費電力を削減することができる。 According to one aspect of the disclosed semiconductor device, power supply can be reduced by controlling clock supply.
図1は、半導体装置の一例を示す図である。 FIG. 1 is a diagram illustrating an example of a semiconductor device.
半導体装置100は、少なくとも1個の処理回路ブロックを含む。具体的には、半導体装置100は、処理回路ブロック101と、複数の処理回路ブロック102とを含む。
The
処理回路ブロック101は、他の処理回路ブロック102に含まれない回路である。処理回路ブロック101は、上位の処理回路ブロックであり、例えば、処理回路ブロック103と、複数の処理回路ブロック104とを含む。処理回路ブロック101において、実際には、パケット200は、下位の処理回路ブロック103により受信されて処理され、また、クロック制御に用いられる。
The
処理回路ブロック102は、上位の処理回路ブロック101に含まれない回路である。処理回路ブロック102は、パケット200を受信して処理し、処理結果に基づいて新たなパケット200を生成して出力する。また、処理回路ブロック102は、自己が受信したパケット200を解析して、解析結果に基づいて、自回路、換言すれば、処理回路ブロック102のクロック制御を行う。処理回路ブロック102が、解析の処理回路ブロックを含むようにしても良い。
The
処理回路ブロック103は、上位の処理回路ブロック101に含まれる回路である。処理回路ブロック103は、パケット200を受信して処理し、処理結果に基づいて新たなパケット200を生成して出力する。また、処理回路ブロック103は、自己が受信したパケット200を解析して、解析結果に基づいて、自回路、換言すれば、処理回路ブロック103のクロック制御を行う。処理回路ブロック103が、解析の処理回路ブロックを含むようにしても良い。
The
処理回路ブロック104は、上位の処理回路ブロック101に含まれる回路である。処理回路ブロック104は、パケット200を受信せず、処理回路ブロック103からパケット200の処理結果を受信して処理する。また、処理回路ブロック104は、処理回路ブロック103からパケット200の解析結果を受信して、又は、クロック制御のための種々の信号を受信して、処理回路ブロック104のクロック制御を行う。
The
処理回路ブロック101又は処理回路ブロック103と処理回路ブロック102との間、及び、処理回路ブロック102と処理回路ブロック102との間は、パケット200により、信号が送受信される。処理回路ブロック102及び103は、前述したように、自己が受信したパケット200の解析結果に基づいて、自己のクロック制御を行う。従って、パケット200は、パケット200の受信先である処理回路ブロック102及び103にクロック供給を指示する。また、パケット200は、処理対象であるデータを含むことができる。
Signals are transmitted and received by the
処理回路ブロック101〜103を区別する場合には、例えば処理回路ブロック#1等と言う。パケット200を区別する場合には、例えばパケット#1等と言う。
When distinguishing the
図2は、処理回路ブロックの一例を示す図である。 FIG. 2 is a diagram illustrating an example of a processing circuit block.
処理回路ブロック103は、クロックゲーティング回路1と、ラッチ回路2及び3と、内部処理回路4と、省電力制御部7とを含む。内部処理回路4は、クロックツリー部5と、処理回路群6とを含む。省電力制御部7は、ORゲート回路8と、クロックゲーティング回路9と、解析制御回路10とを含む。処理回路群6は、複数の処理回路61を含む。
The
クロックは、クロックゲーティング回路1、ラッチ回路3、省電力制御部7のクロックゲーティング回路9、クロックツリー部5に入力される。クロックは、半導体装置100のクロック供給源から供給される。クロック制御信号は、クロックゲーティング回路1、ラッチ回路3に入力される。パケット200は、ラッチ回路2に入力される。クロック制御信号及びパケット200は、例えば、処理回路ブロック103の前段の処理回路ブロック102又は103から、送信され入力される。図4(A)を参照して後述するように、パケット200は、クロック制御信号に同期して送信され入力される。
The clock is input to the
従って、クロックゲーティング回路1、ラッチ回路3、クロックゲーティング回路9までは、常時、クロックが供給されている。一方、ラッチ回路2、処理回路群6、解析制御回路10には、パケット200及びクロック制御信号を受信した場合にのみ、クロックが供給される。これにより、パケット200を受信しない場合には、クロック制御信号及びパケット200の受信の有無を処理する回路、換言すれば、必要最低限の回路にのみ、クロックが供給される。
Therefore, the clock is always supplied to the
クロックツリー部5の一部、具体的には後述する図3のインバータ列51のみには、常時、クロックが供給されている。一方、インバータ列51以外のクロックツリー部5には、パケット200及びクロック制御信号を受信した場合にのみ、解析制御回路10からの制御信号に従って、パケット200を処理する回路にのみ、クロックが供給される。これにより、パケット200を受信した場合には、パケット200を受信した時点から、パケット200を処理する回路、換言すれば、処理を行う際にクロックを供給すべき処理回路61にのみ、クロックが供給される。
A clock is always supplied to a part of the
クロックゲーティング回路1としては、例えば、2入力のANDゲート回路が用いられる。クロックゲーティング回路1が、クロックが供給されている状態で、ハイレベルのクロック制御信号を受信する。これにより、クロックゲーティング回路1が開かれ、クロックが、クロックゲーティング回路1からラッチ回路2に供給される。
As the
この結果、ラッチ回路2は、クロック制御信号と共に送信が開始されたパケット200をクロックに同期して受信する。ラッチ回路2は、受信したパケット200を、内部処理回路4の処理回路群6と、省電力制御部7の解析制御回路10とに出力する。
As a result, the
ラッチ回路3は、クロックが供給されている状態で、ハイレベルのクロック制御信号を受信する。これにより、ラッチ回路3は、受信したクロック制御信号を、省電力制御部7のORゲート回路8に出力する。
The
ORゲート回路8は、ハイレベルのクロック制御信号を受信して、ハイレベルの制御信号をクロックゲーティング回路9に出力する。この時、ORゲート回路8には、後述するように、解析制御回路10からロウレベルの制御信号が入力されている。
The
クロックゲーティング回路9は、クロックが供給されている状態で、ハイレベルの制御信号を受信して、解析制御回路10にクロックを出力する。これにより、解析制御回路10は、供給が開始されたクロックに同期して、パケット200を受信し、受信したパケット200の解析を開始する。クロックゲーティング回路9からのクロックが供給される以前は、解析制御回路10は殆ど電力を消費しない。
The
解析制御回路10は、クロックツリー部5による処理回路群6へのクロックの供給を制御する制御部である。解析制御回路10は、ラッチ回路2から受信したパケット200のヘッダの解析を行い、解析の結果に基づいて、クロックツリー部5における制御判定を行い、判定の結果に基づいて、クロックツリー部5への制御指示を行う。
The
具体的には、解析制御回路10は、解析処理として、受信したパケット200のヘッダの予め定められた位置の複数のビットを抽出することにより、機能情報を抽出する。機能情報は、パケット200に記録された情報であって、機能させるべき処理を特定する情報である。
Specifically, the
解析制御回路10は、制御判定処理として、機能情報と回路情報とに基づいて、クロックを供給すべき処理回路61を特定する。回路情報は、処理を行う際にクロックを供給すべき処理回路を特定する情報である。クロックを供給すべき処理回路61は、機能情報により特定される機能させるべき処理を行う際にクロックを供給すべき回路である。
The
回路情報は、解析制御回路10により予め保持される。解析制御回路10は、回路情報として、処理とクロックを供給すべき処理回路とを、関連付けて保持する。解析制御回路10は、抽出した機能情報と、保持している回路情報とに基づいて、クロックツリー部5を制御する制御信号を生成してクロックツリー部5に入力する。
The circuit information is held in advance by the
具体的には、解析制御回路10は、例えば第1保持部と第2保持部とにより、回路情報を保持する。
Specifically, the
第1保持部は、機能情報、換言すれば、パケット200の種類を表す情報又は命令の種類を表す情報に関連付けて、機能させるべき処理を保持する。第1保持部は、例えば、図5(B)を参照して後述する、クロック制御判断テーブル12である。後述するように、パケット200の種類を表す情報又は命令の種類を表す情報は、例えば、パケット種別IDである。機能させるべき処理は、例えば、クロック制御判断、換言すれば、対応するパケット種別IDを持つパケット200を受信した場合に、行われるべき処理を示す。
The first holding unit holds processing to be performed in association with function information, in other words, information indicating the type of the
第2保持部は、機能させるべき処理に関連付けて、機能させるべき処理を行う際にクロックを供給すべき処理回路61を保持する。第2保持部は、例えば、図6(A)を参照して後述する、クロックゲーティングID判断テーブル13である。後述するように、機能させるべき処理は、処理の種別である。クロックを供給すべき処理回路61は、実際には、クロックを供給するために開くべき、クロックツリー部5のクロックゲーティング回路52及び54のID、換言すれば、ゲーティングIDとして保持される。換言すれば、第2保持部は、機能させるべき処理に関連付けて、クロックを供給すべき処理回路61にクロックを供給するために開くべき、クロックゲーティング回路52及び54のゲーティングIDを保持する。
The second holding unit holds the
なお、解析制御回路10における回路情報の保持手段は、第1保持部と第2保持部とに限られない。解析制御回路10において、回路情報は、種々の保持手段によって保持することができる。例えば、第1保持部と第2保持部とに代えて、機能情報に基づいて機能させるべき処理を求め、機能させるべき処理に基づいてクロックを供給すべき処理回路61を求める保持手段を用いるようにしても良い。また、機能情報に基づいてクロックを供給すべき処理回路61を求める保持手段を用いるようにしても良い。
The circuit information holding means in the
解析制御回路10は、制御指示として、特定した処理回路61に基づいて、制御指示を生成して、生成した制御指示をクロックツリー部5に入力する。制御指示は、クロックツリー部5を制御する制御信号である。換言すれば、解析制御回路10は、クロックゲーティング回路52及び54の各々に対応する制御指示を生成して出力し、生成した制御指示の各々をクロックゲーティング回路52及び54の各々に入力する。これにより、クロックゲーティング回路52及び54の各々が個別に制御される。この結果、クロックを供給すべき処理回路61のみにクロックを供給し、消費電力を削減することができる。クロックゲーティング回路9からのクロックが供給される以前は、処理回路群6は殆ど電力を消費しない。
The
解析制御回路10は、クロックゲーティング回路52及び54の各々に対応する制御指示の出力と共に、ORゲート回路8に、ハイレベルの制御信号を入力する。
The
クロックツリー部5は、処理回路群6にクロックを供給するクロック供給部である。クロックツリー部5は、解析制御回路10からの制御指示を受信して、クロックを供給すべき処理回路61、換言すれば、特定した処理回路61にクロックを供給する。これにより、特定した処理回路61は、ラッチ回路2から受信したパケット200の処理を行う。特定した処理回路61は、処理完了の通知の信号を解析制御回路10に送信する。
The
解析制御回路10は、処理回路61からの処理完了の通知の信号を受信して、処理完了判定を行う。具体的には、解析制御回路10は、処理回路61からの処理完了の通知の信号を受信して、ORゲート回路8にロウレベルの制御信号を入力する。
The
この時、解析制御回路10が、処理回路61からの処理完了の通知の信号を受信して、クロックゲーティング回路52及び54の各々に対応する制御指示を生成して、処理回路61へのクロックの供給を停止するようにしても良い。これにより、より早いタイミングで、処理回路61へのクロックの供給を停止することができる。この結果、クロックツリー部5において、処理回路61に対応するクロックゲーティング回路52及び54が閉じられ、結果として、全てのクロックゲーティング回路52及び54が閉じられる。従って、クロックツリー部5において、クロックが供給されることにより電力を消費するのは、インバータ列51のみである。
At this time, the
一方、クロック制御信号の送信が停止された場合、クロック制御信号は、図4(A)に示すように、ロウレベルとされる。換言すれば、クロックゲーティング回路1は、クロック制御信号のロウレベルを受信する。これにより、クロックゲーティング回路1が閉じられ、クロックがクロックゲーティング回路1からラッチ回路2に供給されなくなる。この結果、ラッチ回路2は、パケット200を処理回路群6と解析制御回路10とに出力しなくなる。これにより、処理回路群6における消費電力を削減することができる。
On the other hand, when the transmission of the clock control signal is stopped, the clock control signal is set to the low level as shown in FIG. In other words, the
ラッチ回路3は、クロック制御信号のロウレベルを受信して、受信したロウレベルのクロック制御信号を省電力制御部7のORゲート回路8に出力する。これにより、ORゲート回路8は、ロウレベルの信号をクロックゲーティング回路9に出力する。この結果、クロックゲーティング回路9は、解析制御回路10にクロックを出力しなくなる。これにより、省電力制御部7、換言すれば、解析制御回路10における消費電力を削減することができる。
The
解析制御回路10は、パケット200及びクロックを供給されない状態では、制御指示を生成しない。具体的には、解析制御回路10は、全てのクロックゲーティング回路52及び54にハイレベルの制御信号を入力する。これにより、クロックツリー部5において、全てのクロックゲーティング回路52及び54は閉じられる。従って、クロックツリー部5において、クロックの供給に起因して電力を消費するのは、インバータ列51のみである。これにより、クロックツリー部5における消費電力を削減することができる。従って、ラッチ回路3は、パケット200の受信前において、解析制御回路10、クロックツリー部5及び処理回路61へのクロックの供給を制限するクロック制御回路である。
The
半導体装置100において、処理回路61が動作するトリガは、パケット200の受信による場合が多い。パケット200を受信していない回路は、実際には動作する必要がなく、クロック供給を必要としない。そこで、パケット200の受信をトリガにクロックツリー部5の制御を行う。このために、後述するように、パケット200は、それ自体にクロックを制御する情報を持つ。換言すれば、パケット200は、自己が送信される処理回路ブロック102又は103を制御して、自律的に必要なクロックを供給させる。
In the
これにより、パケット200を受信するまでは、処理回路61にクロックが供給されていないため、消費電力を削減することができる。また、パケット200を受信した場合には、クロックの供給が必要な処理回路61だけを動作させることにより、消費電力を削減することができる。また、パケット200を受信するまでは、クロックツリー部5においてもクロックが供給されていないため、消費電力を削減することができる。また、パケット200を受信した場合には、クロックツリー部5においてクロックの供給が必要な処理回路61への経路だけにクロックを供給することにより、消費電力を削減することができる。
Thereby, since the clock is not supplied to the
なお、解析制御回路10に代えて、図8を参照して後述する処理を実行するプログラムをCPU(Central Processing Unit)上で実行することにより、解析制御回路10と同様の処理を行うようにしても良い。
Instead of the
図3は、クロックツリー部及び処理回路群の一例を示す図である。 FIG. 3 is a diagram illustrating an example of the clock tree unit and the processing circuit group.
クロックツリー部5は、クロックツリーと、クロックゲーティング回路52及び54とを含む。クロックツリーは、クロックを供給する経路であってツリー状に分岐するクロック供給経路である。具体的には、クロックツリーは、インバータ列51と、インバータ列51から複数に分岐するインバータ列53と、インバータ列53から複数に分岐するインバータ列55とを含む。インバータ列51、53及び55に含まれるインバータの数は、2個に限られない。
The
クロックゲーティング回路52及び54は、クロックツリーの分岐点の各々において、分岐点において分岐した複数の経路の各々の先頭に設けられる。具体的には、クロックゲーティング回路52は、インバータ列51と複数のインバータ列53との間において、インバータ列53のクロック供給源側に設けられる。また、クロックゲーティング回路54は、インバータ列53と複数のインバータ列55との間において、インバータ列55のクロック供給源側に設けられる。
The
処理回路群6は、例えば6個の処理回路61を含む。処理回路61の数は、6個に限られない。各々の処理回路61が行う処理は、半導体装置100の設計時点で予め定められる。例えば、「処理回路A」は、処理Aを行う処理回路61である。各々の処理回路61は、例えば異なる処理を行う。各々の処理回路61には、各々の処理回路61に対応して設けられた相互に異なるクロック供給経路を介して、クロックが供給される。なお、1個の処理回路61が複数の処理を行うようにしても良い。
The
インバータ列51は、クロック供給源に接続される。クロック供給経路は、インバータ列51にクロックゲーティング回路52を介して接続されたインバータ列53により、3つの経路に分岐する。更に、クロック供給経路は、インバータ列53にクロックゲーティング回路54を介して接続されたインバータ列55により、2つの経路に分岐する。これにより、クロックツリーは、処理回路群6に含まれる6個の処理回路61の各々に対応するように分岐し、クロック供給経路は、処理回路群6に含まれる6個の処理回路61へ異なる経路によりクロックを供給する。
The
クロックゲーティング回路52である3個の2入力ANDゲートの一方の入力端子には、インバータ列51を介して、クロック供給源からのクロックが共通に入力される。3個のクロックゲーティング回路52の他方の入力端子には、各々、解析制御回路10からの異なる制御信号が入力される。これにより、3個のクロックゲーティング回路52は、個別に制御される。
A clock from a clock supply source is commonly input to one input terminal of three two-input AND gates which are the
クロックゲーティング回路54である6個の2入力ANDゲートの一方の入力端子には、インバータ列51、クロックゲーティング回路52及びインバータ列53を介して、クロック供給源からのクロックが入力される。6個のクロックゲーティング回路54の他方の入力端子には、各々、解析制御回路10からの異なる制御信号が入力される。これにより、6個のクロックゲーティング回路52は、個別に制御される。
A clock from a clock supply source is input to one input terminal of six 2-input AND gates that are the
2入力ANDゲートの他方の入力端子には、解析制御回路10からの制御信号が、インバータにより反転された上で入力される。そこで、図3において、2入力ANDゲートの他方の入力端子には、インバータを表す「丸印」が付加されている。また、図3において、解析制御回路10から各々のクロックゲーティング回路52への制御信号線は、省略されている。
A control signal from the
例えば、図3に示すように、クロックゲーティング回路52及び54に、各々、クロックツリー部5におけるゲーティングIDを割当てる。ゲーティングIDは、クロックツリー部5において、一意にクロックゲーティング回路52又は54を特定する識別情報である。
For example, as shown in FIG. 3, the gating IDs in the
クロックゲーティング回路52は、クロックツリー部5における第1階層のゲートであるので、「1−X」のようなゲーティングIDを持つ。クロックゲーティング回路52は、図3において、左から順に「1−1」「1−2」「1−3」のゲーティングIDを持つ。図3において、Xの値は「1」〜「3」であるが、これに限られない。
Since the
クロックゲーティング回路54は、クロックツリー部5における第2階層のゲートであるので、「2−X−Y」のようなゲーティングIDを持つ。クロックゲーティング回路52は、図3において、左から順に「1−1−1」「1−1−2」「1−2−1」等のゲーティングIDを持つ。図3において、Yの値は「1」〜「2」であるが、これに限られない。
Since the
なお、例えば「1−1」のゲーティングIDを持つクロックゲーティング回路52を、クロックゲーティング回路1−1と言う場合がある。また、例えば「1−1−1」のゲーティングIDを持つクロックゲーティング回路54を、クロックゲーティング回路1−1−1と言う場合がある。
For example, the
例えば、解析制御回路10からクロックゲーティング回路52への制御信号がハイレベルである場合、その反転信号であるロウレベルが、クロックゲーティング回路52へ入力される。これにより、クロックゲーティング回路52の出力は、インバータ列51からの信号のレベルに拘わることなく、ロウレベルとされる。換言すれば、クロックゲーティング回路52は閉じられる。従って、クロックは、インバータ列53には供給されない。
For example, when the control signal from the
また、解析制御回路10からクロックゲーティング回路52への制御信号がロウレベルである場合、その反転信号であるハイレベルが、クロックゲーティング回路52へ入力される。これにより、クロックゲーティング回路52の出力は、インバータ列51からの信号のレベルに依存する。換言すれば、クロックゲーティング回路52は開かれる。従って、クロックは、インバータ列53に供給される。
When the control signal from the
図4は、パケットの一例を示す図である。 FIG. 4 is a diagram illustrating an example of a packet.
パケット200は、図4(A)に示すように、クロックに同期して送信される。従って、処理回路ブロック102及び103には、パケット200と、パケット200の受信の期間中において処理回路ブロック102及び103へのクロックの供給を有効とするクロック制御信号とが入力される。パケット200は、半導体装置100に含まれる処理回路ブロック102及び103の間における情報の送受信の単位である。パケット200は、ヘッダと、パケットデータとを含む。ヘッダは、パケット200の先頭に付加され、後述するように、機能させるべき処理を特定する情報である機能情報を含む。パケットデータは、ヘッダの次の位置に付加され、処理対象とされるデータを含む。パケットデータは、省略される場合がある。
The
クロック制御信号は、パケット200と共に、クロックに同期して送信される。クロック制御信号は、パケット200が送信される期間の間だけ、送信される。具体的には、クロック制御信号は、パケット200が送信される期間の間だけ、例えばハイレベルとされる。これにより、パケット200が送信される期間の間だけ、パケット200を受信する処理回路ブロック102及び103にクロックが供給され、動作可能とされる。従って、クロック制御信号は、処理回路ブロック102及び103のイネーブル信号である。
The clock control signal is transmitted together with the
パケット200は、表される定められたフォーマットを有し、処理回路ブロック102及び103の間で送受信されるデータ又は制御情報であれば良い。パケット200は種々のフォーマットを採ることができる。
The
パケット200におけるヘッダの送信期間の長さ及びパケットデータの送信期間の長さは、種々の値を採ることができる。また、ヘッダを含むヘッダパケットとパケットデータを含むデータパケットとを、異なるパケット200として異なる通信線を用いて、例えば同一のタイミングで、並列に送信するようにしても良い。
The length of the header transmission period and the length of the packet data transmission period in the
パケット200のヘッダは、図4(B)に示すように、例えば、8ビットのデータを含む。ヘッダの第8ビット〜第5ビットの4ビット[7:4]により、パケット200の種類を表す情報「PKT種別」が表される。ヘッダの第4ビット〜第1ビットの4ビット[3:0]により、パケット200に含まれるデータを処理する命令の種類を表す情報「命令」が表される。
As shown in FIG. 4B, the header of the
従って、機能情報は、パケット200のヘッダに記録された情報であって、パケット200の種類を表す情報、又は、パケット200に含まれるデータを処理する命令の種類を表す情報である。以上のように、機能情報は、パケット200に応じて定まる処理の種類を表す識別情報である。換言すれば、機能情報は、パケット200の種別を表すパケット種別IDである。機能情報としては、パケット200の種類を表す情報、又は、パケット200に含まれるデータを処理する命令の種類を表す情報のいずれか一方、又は、双方を用いることができ、いずれを用いるかは予め定められる。
Accordingly, the function information is information recorded in the header of the
例えば、図4(C)に示すように、ヘッダの第8ビット〜第5ビットの4ビット[7:4]により表される値が「0」である場合、ヘッダは、自己が含まれるパケット200が処理A用のパケット200であることを表す。処理Aを行う処理回路61は「処理回路A」であることが、半導体装置100の設計時点で予め定まっている。従って、処理回路ブロック102及び103が第8ビット〜第5ビットの4ビット[7:4]により表される値が「0」であるヘッダを受信した場合に、処理回路ブロック102及び103に含まれる処理回路Aにのみクロックを供給するようにされる。
For example, as shown in FIG. 4C, when the value represented by 4 bits [7: 4] of the 8th to 5th bits of the header is “0”, the header includes a packet including itself. 200 represents the
また、例えば、図4(D)に示すように、ヘッダの第4ビット〜第1ビットの4ビット[3:0]により表される値が「0」である場合、ヘッダは、パケットデータに含まれるデータを足し算すべきことを表す。処理回路ブロック102及び103に含まれる処理回路61の中で、例えば足し算を行う処理回路が「処理回路A」であることは、半導体装置100の設計時点で予め定まっている。従って、処理回路ブロック102及び103が第4ビット〜第1ビットの4ビット[3:0]により表される値が「0」であるヘッダを受信した場合に、処理回路ブロック102及び103に含まれる処理回路Aにのみクロックを供給するようにされる。
Also, for example, as shown in FIG. 4D, when the value represented by 4 bits [3: 0] of the 4th to 1st bits of the header is “0”, the header is included in the packet data. Indicates that the included data should be added. Among the
図5(A)は、パケットのヘッダに含まれる情報であるヘッダ情報の説明図である。 FIG. 5A is an explanatory diagram of header information that is information included in the header of a packet.
パケット200のヘッダ11が、図5(A)に示すように、図4を参照して説明した情報以外に、種々の制御情報を含むようにしても良い。なお、図5(A)において、種々の制御情報の用途も合わせて図示している。パケット200のヘッダ11が種々の制御情報を含む場合、パケット200のヘッダは、実際には、図4(B)に示す8ビットではなく、例えば16ビットとされる。パケット200のヘッダは、32ビット、64ビット等であっても良い。
As shown in FIG. 5A, the
種々の制御情報として、パケット200のヘッダ11は、例えば、図5(A)に示すように、パケットの種別IDの他に、クロック供給制御、強制クロック停止、強制クロック停止IDを含む。パケットの種別IDは、前述したように、16ビットのヘッダの8ビットを用いて表される。クロック供給制御、強制クロック停止及び強制クロック停止IDは、16ビットのヘッダの他の8ビットを用いて表される。
As various control information, the
クロック供給制御は、クロックの供給を制御するか否かを示す情報である。クロック供給制御がON(ハイレベル)の場合には、解析制御回路10によりクロックツリー部5が制御され、クロックの供給が制御される。クロック供給制御がOFF(ロウレベル)の場合には、解析制御回路10によるクロックツリー部5の制御は行われず、常時クロックが供給される。
The clock supply control is information indicating whether or not to control the clock supply. When the clock supply control is ON (high level), the
クロック供給制御に基づく制御は、解析制御回路10によるパケット種別IDに基づくクロックツリー部5の制御に優先する。例えば、受信したパケット200において、パケット種別IDが処理回路Aにクロックを供給することを表しており、クロック供給制御がOFFである場合には、解析制御回路10は、クロック供給制御のOFFに基づいて、処理回路Aに常時クロックを供給する。これにより、例えば、常時動作させる必要がある処理回路61には、パケット200の送信により、常時クロックを供給することができる。
The control based on the clock supply control has priority over the control of the
強制クロック停止は、クロックの供給を強制的に停止すること又は停止の解除をすることを示す情報である。強制クロック停止がON(ハイレベル)の場合には、解析制御回路10によりクロックツリー部5が制御され、クロックの供給が強制的に停止される。強制クロック停止がOFF(ロウレベル)の場合には、解析制御回路10によりクロックの供給の強制的な停止が解除される。
The forced clock stop is information indicating that the clock supply is forcibly stopped or the stop is released. When the forced clock stop is ON (high level), the
強制クロック停止IDは、強制クロック停止に基づいて、クロックの供給を停止すべき又は停止の解除をすべき処理を行う処理回路の識別情報である。強制クロック停止IDは、例えば、前述の処理A〜処理F毎に予め定められる。強制クロック停止IDにより指示された処理回路61について、クロックの供給が強制的に停止され、又は、停止が解除される。
The forced clock stop ID is identification information of a processing circuit that performs processing that should stop the supply of the clock or cancel the stop based on the forced clock stop. The forced clock stop ID is determined in advance for each of the processes A to F described above, for example. For the
強制クロック停止に基づく制御は、クロック供給制御に基づくクロックツリー部5の制御に優先する。従って、強制クロック停止に基づく制御は、解析制御回路10によるパケット種別IDに基づくクロックツリー部5の制御にも優先する。なお、強制クロック停止に基づく制御は、クロック供給制御に基づくクロックツリー部5の制御とは無関係に行うようにしても良い。また、強制クロック停止に基づく制御は、パケット種別IDに基づくクロックツリー部5の制御とは無関係に行うようにしても良い。これらの場合、強制クロック停止とクロック供給制御とは、パケット200のヘッダにおいて、相互に矛盾しないように設定される。
The control based on the forced clock stop has priority over the control of the
例えば、受信したパケット200において、クロック供給制御がOFFであり、強制クロック停止がONである場合には、解析制御回路10は、強制クロック停止のONと処理回路Aを示す強制クロック停止IDとに基づいて、処理回路Aへのクロックの供給を強制的に停止する。パケット種別IDがどの処理回路61にクロックを供給することを表しているかは、強制クロック停止に基づく制御には無関係である。これにより、例えば、半導体装置100の設計後に不要となった処理Aを行う処理回路Aには、パケット200の送信により、常時クロックの供給を停止することができる。
For example, in the received
図5(B)は、クロック制御判断テーブル12を示す。 FIG. 5B shows the clock control determination table 12.
クロック制御判断テーブル12は、パケット種別IDとクロック制御判断との対応を示す。換言すれば、クロック制御判断テーブル12は、パケット種別ID毎に、パケット種別IDに対応するクロック制御判断を定める。クロック制御判断は、対応するパケット種別IDを持つパケット200を受信した場合に、行われるべき処理を示す。
The clock control determination table 12 shows the correspondence between the packet type ID and the clock control determination. In other words, the clock control determination table 12 determines the clock control determination corresponding to the packet type ID for each packet type ID. The clock control determination indicates a process to be performed when a
例えば、図4(C)に示すヘッダの第8ビット〜第5ビットの4ビット[7:4]の値が「#1」であるとする。また、例えば、パケット種別IDが「#1」であるパケット#1は、処理A及び処理Cを行うことが予め定められている。一方、パケット種別IDは、パケット200のヘッダの内部の予め定められた位置に記述されている。従って、受信したパケット200を解析してパケット種別IDを抽出することにより、受信したパケット200を処理するために、どの処理回路61が動作すれば良いかを知ることができる。従って、処理を行う際にクロックを供給すべき処理回路61を知ることができる。例えば、抽出されたパケット種別IDが「#1」である場合、処理回路A及び処理回路Cにクロックを供給すれば良い。
For example, it is assumed that the values of the 8th to 5th bits [7: 4] of the header shown in FIG. 4C are “# 1”. Further, for example, it is predetermined that the
クロック制御判断テーブル12は、テーブル形式以外の構成であっても良い。クロック制御判断テーブル12は、実際には、パケット種別IDを入力として、対応する1又は複数の処理、換言すれば、処理回路61を出力する回路により構成される。例えば、クロック制御判断用のデコード回路が、パケット種別IDをデコードして、保持回路から対応する1又は複数の処理、換言すれば、処理回路61を出力するようにしても良い。
The clock control determination table 12 may have a configuration other than the table format. The clock control determination table 12 is actually composed of a circuit that outputs a corresponding one or more processes, in other words, a
図6(A)は、クロックゲーティングID判断テーブルを示す。 FIG. 6A shows a clock gating ID determination table.
クロックゲーティングID判断テーブル13は、処理を行う際にクロックを供給すべき処理回路とクロックツリー部5のクロックゲーティング回路52及び54との対応を示す。換言すれば、クロックゲーティングID判断テーブル13は、処理の種別毎に、クロックを供給するために開くべき、クロックツリー部5のクロックゲーティング回路52及び54を定める。前述したように、処理の種別が定まれば、処理を行う際にクロックを供給すべき処理回路61も定まる。
The clock gating ID determination table 13 shows the correspondence between the processing circuit to which a clock is to be supplied when performing processing and the
例えば、処理Aを行うためには、処理回路Aにクロックを供給することが求められる。図3を参照すると、クロックは、インバータ列51、クロックゲーティング回路1−1、インバータ列53、クロックゲーティング回路1−1−1を介して、処理回路Aに供給される。換言すれば、処理回路Aにクロックを供給するためには、クロックゲーティング回路1−1とクロックゲーティング回路1−1−1とを開けば良い。従って、図6(A)において「丸印」で示すように、処理Aには、ゲーティングIDが「1−1」及び「1−1−1」であるクロックゲーティング回路52及び54が開かれることが定義される。
For example, in order to perform the processing A, it is required to supply a clock to the processing circuit A. Referring to FIG. 3, the clock is supplied to the processing circuit A through the
クロックゲーティングID判断テーブル13は、テーブル形式以外の構成であっても良い。クロックゲーティングID判断テーブル13は、実際には、処理の種別を入力として、対応するクロックゲーティング回路52及び54を出力する回路により構成される。例えば、クロックゲーティングID判断用のデコード回路が、処理の種別をデコードして、保持回路から対応するクロックゲーティング回路52及び54を出力するようにしても良い。
The clock gating ID determination table 13 may have a configuration other than the table format. The clock gating ID determination table 13 is actually configured by a circuit that outputs the corresponding
図6(B)は、クロックゲーティングIDの判断結果の論理和を示す。 FIG. 6B shows a logical sum of the determination results of the clock gating ID.
例えば、解析制御回路10は、受信したパケット200のヘッダの所定のビット位置の信号を抽出することにより、パケット種別ID「#3」を抽出する。そして、解析制御回路10は、抽出したパケット種別ID「#3」に基づいて、図5(B)に示すように、パケット200により行うべき処理A及び処理Fを判断する。
For example, the
更に、解析制御回路10は、判断した処理Aに基づいて、図6(A)に示すように、処理回路Aにクロックを供給するために開くべきクロックゲーティング回路1−1とクロックゲーティング回路1−1−1とを求める。また、解析制御回路10は、判断した処理Fに基づいて、図6(A)に示すように、処理回路Fにクロックを供給するために開くべきクロックゲーティング回路1−3とクロックゲーティング回路1−3−2とを求める。そして、解析制御回路10は、求めたクロックゲーティング回路の論理和を求める。
Further, the
これにより、解析制御回路10は、図6(B)に示すように、受信したパケット200により処理A及び処理Fを行うために、クロックゲーティング回路1−1、1−3、1−1−1及び1−3−2を開くことを判定し、クロックゲーティング回路1−1、1−3、1−1−1及び1−3−2を開く信号である制御指示を生成して、クロックツリー部5へ入力する。これにより、処理回路A及び処理回路Fのみにクロックを供給して、受信したパケット200により処理A及び処理Fを行うことができる。また、クロックツリー部5において、処理回路A及び処理回路Fにクロックを供給する経路のみにクロックを供給し、処理回路A及び処理回路Fにクロックを供給する経路以外の経路にはクロックを供給しないようにすることができる。
As a result, the
図7は、省電力制御の説明図である。 FIG. 7 is an explanatory diagram of power saving control.
図7は、前述したように、処理回路A及び処理回路Fにクロックを供給し、他の処理回路61にはクロックを供給しない場合における、クロックゲーティングについて示す。
FIG. 7 shows clock gating in the case where the clock is supplied to the processing circuits A and F and the clock is not supplied to the
処理回路Aにクロックを供給するために、クロックゲーティング回路1−1とクロックゲーティング回路1−1−1に対して、ロウレベルの制御信号が入力される。これにより、図7において実線で囲んで示すように、クロックゲーティング回路1−1とクロックゲーティング回路1−1−1が開かれる。この結果、図7において一点差線で示すように、クロックが、インバータ列51、クロックゲーティング回路1−1、インバータ列53、クロックゲーティング回路1−1−1、インバータ列55を介して、処理回路Aに入力される。
In order to supply a clock to the processing circuit A, a low-level control signal is input to the clock gating circuit 1-1 and the clock gating circuit 1-1-1. As a result, the clock gating circuit 1-1 and the clock gating circuit 1-1-1 are opened as shown by the solid line in FIG. As a result, as indicated by a one-dot chain line in FIG. 7, the clock passes through the
また、処理回路Fにクロックを供給するために、クロックゲーティング回路1−3とクロックゲーティング回路1−3−2に対して、ロウレベルの制御信号が入力される。これにより、図7において実線で囲んで示すように、クロックゲーティング回路1−3とクロックゲーティング回路1−3−2が開かれる。この結果、図7において一点差線で示すように、クロックが、インバータ列51、クロックゲーティング回路1−3、インバータ列53、クロックゲーティング回路1−3−2、インバータ列55を介して、処理回路Fに入力される。
In order to supply a clock to the processing circuit F, a low-level control signal is input to the clock gating circuit 1-3 and the clock gating circuit 1-3-2. As a result, the clock gating circuit 1-3 and the clock gating circuit 1-3-2 are opened as shown by being surrounded by a solid line in FIG. As a result, as shown by a one-dot chain line in FIG. 7, the clock passes through the
一方、処理回路A及び処理回路F以外の処理回路61には、クロックが供給されないようにされる。このために、クロックゲーティング回路1−2、クロックゲーティング回路1−1−2、クロックゲーティング回路1−2−1、クロックゲーティング回路1−2−2、クロックゲーティング回路1−3−1に対して、ハイレベルの制御信号が入力される。これにより、図7において点線で囲んで示すように、これらのクロックゲーティング回路は閉じられる。この結果、処理回路B、処理回路C、処理回路D、処理回路Eには、クロックが供給されない。これにより、パケット200を処理しない処理回路61へのクロックの供給を停止することができる。
On the other hand, the
図8は、省電力制御シーケンスを示す図である。 FIG. 8 is a diagram illustrating a power saving control sequence.
前段の処理回路ブロック102又は103から、クロック制御信号とパケット200の送信が開始されると、クロックゲーティング回路1が、クロックが供給されている状態で、ハイレベルのクロック制御信号を受信する(S1)。これにより、クロックゲーティング回路1が開かれ、クロックが、クロックゲーティング回路1からラッチ回路2に供給される(S2)。この結果、ラッチ回路2は、パケット200を受信して、受信したパケット200を処理回路群6と解析制御回路10とに出力する(S3)。一方、ラッチ回路3は、クロックが供給されている状態で、ハイレベルのクロック制御信号を受信して、受信したクロック制御信号をORゲート回路8に出力する(S3)。
When transmission of the clock control signal and the
ORゲート回路8は、受信したハイレベルのクロック制御信号に応じて、ハイレベルの制御信号をクロックゲーティング回路9に出力する。クロックゲーティング回路9は、クロックが供給されている状態で、ハイレベルの制御信号を受信して、解析制御回路10にクロックを出力する(S4)。これにより、解析制御回路10は、供給が開始されたクロックに同期して、受信したパケット200の解析を開始する。
The
解析制御回路10は、ラッチ回路2から受信したパケット200のヘッダの解析を行い(S5)、解析の結果に基づいて、クロックツリー部5における制御判定を行い(S6)、判定の結果に基づいて、クロックツリー部5への制御指示を行う(S7)。
The
具体的には、解析制御回路10は、解析処理として、パケット200から機能情報を抽出て、制御判定処理として、機能情報と回路情報とに基づいて、クロックを供給すべき処理回路61を特定し、制御指示として、特定した処理回路61に基づいて制御指示を生成して、生成した制御指示をクロックツリー部5に入力する。これにより、クロックゲーティング回路52及び54の各々が、個別に制御される。
Specifically, the
シーケンスS7において、解析制御回路10は、クロックゲーティング回路52及び54の各々に対応する制御指示の出力と共に、ORゲート回路8に、ハイレベルの制御信号を入力する。この後、解析制御回路10は、処理回路61からの処理完了の通知の信号の受信を待つ。
In sequence S <b> 7, the
クロックツリー部5は、シーケンスS7における処理により解析制御回路10からの制御指示を受信して、例えば、図7に示すように、処理回路Aにクロックを供給する(S9)。これにより、処理回路Aは、シーケンスS3における処理によりラッチ回路2から受信したパケット200の処理を行い(S10)、処理を完了する(S11)。処理回路Aは、S11において、処理完了の通知の信号を解析制御回路10に送信する。
The
また、クロックツリー部5は、シーケンスS7における処理により解析制御回路10からの制御指示を受信して、例えば、図7に示すように、処理回路Fにクロックを供給する(S12)。これにより、処理回路Fは、シーケンスS3における処理によりラッチ回路2から受信したパケット200の処理を行い(S13)、処理を完了する(S14)。処理回路Fは、S14において、処理完了の通知の信号を解析制御回路10に送信する。なお、例えば、シーケンスS9とシーケンスS12とは並列に行われ、シーケンスS10とシーケンスS13とは並列に開始される。シーケンスS11とシーケンスS14とは並列に行われても行われなくても良い。
Further, the
シーケンスS11及びシーケンスS14における処理により、解析制御回路10は、処理回路A及び処理回路Fからの処理完了の通知の信号を受信して、処理完了判定を開始する(S8)。具体的には、解析制御回路10は、処理回路A及び処理回路Fからの処理完了の通知の信号を受信して、ORゲート回路8に、ロウレベルの制御信号を入力する。
By the processing in sequence S11 and sequence S14, the
この後、前段の処理回路ブロック102又は103からのクロック制御信号とパケット200の送信が停止される。これにより、クロックゲーティング回路1が、クロック制御信号のロウレベルを受信する。この結果、クロックゲーティング回路1が閉じられ、クロックがクロックゲーティング回路1からラッチ回路2に供給されなくなり、ラッチ回路2は、パケット200を処理回路群6と解析制御回路10とに出力しなくなる。
Thereafter, the transmission of the clock control signal and the
一方、ラッチ回路3は、クロック制御信号のロウレベルを受信して、受信したロウレベルのクロック制御信号をORゲート回路8に出力する。これにより、ORゲート回路8は、ロウレベルの信号をクロックゲーティング回路9に出力する。この結果、クロックゲーティング回路9は、解析制御回路10にクロックを出力しなくなる。
On the other hand, the
解析制御回路10は、パケット200及びクロックを供給されない状態で、制御指示を生成しない。これにより、クロックツリー部5において、全てのクロックゲーティング回路52及び54は閉じられる。従って、クロックツリー部5において、クロックが供給されることにより電力を消費するのは、インバータ列51のみである。
The
以上の説明から理解されるように、以下のような実施の態様が把握される。 As will be understood from the above description, the following embodiments are grasped.
(付記1) 受信したパケットから、前記パケットに記録された情報であって、機能させるべき処理を特定する情報である機能情報を抽出する制御部と、
抽出された前記機能情報と、前記処理を行う際にクロックを供給すべき処理回路を特定する情報である回路情報とに基づいて、抽出された前記機能情報により特定される前記機能させるべき処理を行う際に前記クロックを供給すべき処理回路に、前記クロックを供給するクロック供給部とを含む
ことを特徴とする半導体装置。
(Additional remark 1) The control part which extracts the function information which is the information recorded on the said packet from the received packet, and is the information which specifies the process which should be functioned,
Based on the extracted function information and circuit information that is information for specifying a processing circuit to which a clock is to be supplied when the processing is performed, the process to be performed specified by the extracted function information is performed. A processing circuit to which the clock is supplied when performing includes a clock supply unit that supplies the clock.
(付記2) 前記制御部は、前記回路情報として、前記処理と前記処理を行う際に前記クロックを供給すべき処理回路とを関連付けて保持し、抽出された前記機能情報と前記回路情報とに基づいて、前記クロック供給部を制御する制御信号を生成して前記クロック供給部に入力する
ことを特徴とする半導体装置。
(Additional remark 2) The said control part associates and hold | maintains the said process and the processing circuit which should supply the said clock when performing the said process as said circuit information, and the said function information and said circuit information which were extracted are stored. Based on this, a control signal for controlling the clock supply unit is generated and input to the clock supply unit.
(付記3) 前記クロック供給部は、前記クロックを供給する経路であってツリー状に分岐するクロックツリーと、前記クロックツリーの分岐点の各々において、前記分岐点において分岐した複数の経路の各々の先頭に設けられたクロックゲーティング回路とを含み、
前記制御部は、前記クロックゲーティング回路の各々に対応する制御信号を生成し入力する
ことを特徴とする付記2に記載の半導体装置。
(Supplementary Note 3) The clock supply unit includes a clock tree that is a path for supplying the clock and branches in a tree shape, and each of a plurality of paths branched at the branch point at each branch point of the clock tree. Including a clock gating circuit provided at the beginning,
The semiconductor device according to
(付記4) 前記機能情報は、前記パケットのヘッダに記録された情報であって、前記パケットの種類を表す情報、又は、前記パケットに含まれるデータを処理する命令の種類を表す情報である
ことを特徴とする付記1に記載の半導体装置。
(Supplementary Note 4) The function information is information recorded in a header of the packet, and is information indicating the type of the packet or information indicating a type of instruction for processing data included in the packet. The semiconductor device according to
(付記5) 前記制御部は、前記パケットの種類を表す情報又は前記命令の種類を表す情報に関連付けて前記機能させるべき処理を保持する第1保持部と、前記機能させるべき処理に関連付けて前記機能させるべき処理を行う際に前記クロックを供給すべき処理回路を保持する第2保持部とにより、前記回路情報を保持する
ことを特徴とする付記4に記載の半導体装置。
(Additional remark 5) The said control part is linked | related with the process which should be made to function in relation to the 1st holding | maintenance process which hold | maintains the process which should be made to function in relation to the information which represents the information which represents the kind of the said packet, or the said instruction | command type, and the said process The semiconductor device according to
(付記6) 前記クロック供給部は、前記クロックを供給する経路であってツリー状に分岐するクロックツリーと、前記クロックツリーの分岐点の各々において、前記分岐点において分岐した複数の経路の各々の先頭に設けられたクロックゲーティング回路とを含み、
前記第2保持部は、前記クロックを供給すべき処理回路として、前記クロックを供給すべき処理回路にクロックを供給するために開くべき、前記クロックゲーティング回路を示す識別情報を保持する
ことを特徴とする付記5に記載の半導体装置。
(Supplementary Note 6) The clock supply unit is a path for supplying the clock and branches in a tree shape, and each of a plurality of paths branched at the branch point at each branch point of the clock tree. Including a clock gating circuit provided at the beginning,
The second holding unit holds identification information indicating the clock gating circuit to be opened to supply a clock to the processing circuit to which the clock is supplied as the processing circuit to which the clock is supplied. The semiconductor device according to
(付記7) 前記制御部は、前記クロックを供給すべき処理回路に前記クロックを供給した場合に、前記クロックを供給すべき処理回路からの処理完了の通知の信号を受信して、前記クロックを供給すべき処理回路への前記クロックの供給を停止する
ことを特徴とする付記1に記載の半導体装置。
(Supplementary Note 7) When the control unit supplies the clock to the processing circuit to which the clock is to be supplied, the control unit receives a processing completion notification signal from the processing circuit to which the clock is to be supplied, The semiconductor device according to
(付記8) 前記半導体装置は、更に、
前記パケットの受信前において、前記制御部、前記クロック供給部及び前記処理回路への前記クロックの供給を制限するクロック制御回路を含む
ことを特徴とする付記1に記載の半導体装置。
(Supplementary Note 8) The semiconductor device further includes:
The semiconductor device according to
(付記9) 前記パケットは、前記パケットに記録された情報であって、前記クロックの供給を制御するか否かを示す情報を含み、
前記制御部は、前記機能情報による制御に優先して、前記クロックの供給を制御するか否かを示す情報に基づいて、前記クロックを供給すべき処理回路への前記クロックを制御する
ことを特徴とする付記1に記載の半導体装置。
(Supplementary Note 9) The packet is information recorded in the packet, and includes information indicating whether to control the supply of the clock,
The control unit controls the clock to the processing circuit to which the clock is to be supplied, based on information indicating whether or not to control the supply of the clock prior to the control based on the function information. The semiconductor device according to
(付記10) 前記パケットは、前記パケットに記録された情報であって、前記クロックの供給を強制的に停止することを示す情報を含み、
前記制御部は、前記クロックの供給を強制的に停止することを示す情報に基づいて、前記クロックを供給すべき処理回路への前記クロックの供給を強制的に停止する
ことを特徴とする付記1に記載の半導体装置。
(Supplementary Note 10) The packet is information recorded in the packet, and includes information indicating that the supply of the clock is forcibly stopped,
The control unit forcibly stops the supply of the clock to the processing circuit to which the clock is to be supplied based on information indicating that the supply of the clock is forcibly stopped. A semiconductor device according to 1.
(付記11) 前記パケットは、前記クロックの供給を強制的に停止することを示す情報に基づいて、前記クロックの供給を停止すべき処理に対応する処理回路の識別情報を含み、
前記制御部は、前記クロックの供給を強制的に停止することを示す情報と前記識別情報とに基づいて、前記クロックの供給を停止すべき処理に対応する処理回路への前記クロックの供給を強制的に停止する
ことを特徴とする付記10に記載の半導体装置。
(Additional remark 11) The said packet contains the identification information of the processing circuit corresponding to the process which should stop the supply of the said clock based on the information which shows that the supply of the said clock is stopped forcibly,
The control unit forcibly supplies the clock to a processing circuit corresponding to a process that should stop the supply of the clock based on the information indicating that the supply of the clock is forcibly stopped and the identification information. The semiconductor device according to
(付記12) 前記半導体装置は、前記制御部と前記クロック供給部とを含む少なくとも1個の処理回路ブロックを含み、
前記処理回路ブロックには、前記パケットと、前記パケットの受信の期間中において前記処理回路ブロックへの前記クロックの供給を有効とするクロック制御信号とが入力される
ことを特徴とする付記1に記載の半導体装置。
(Supplementary Note 12) The semiconductor device includes at least one processing circuit block including the control unit and the clock supply unit,
The
(付記13) 制御部と、クロック供給部と、処理回路とを含む半導体装置の消費電力制御方法であって、
制御部が、受信したパケットから、前記パケットに記録された情報であって、機能させるべき処理を特定する情報である機能情報を抽出し、
クロック供給部が、抽出された前記機能情報と、前記処理を行う際にクロックを供給すべき処理回路を特定する情報である回路情報とに基づいて、抽出された前記機能情報により特定される前記機能させるべき処理を行う際に前記クロックを供給すべき処理回路に、前記クロックを供給する
ことを特徴とする半導体装置の消費電力制御方法。
(Supplementary Note 13) A power consumption control method for a semiconductor device including a control unit, a clock supply unit, and a processing circuit,
The control unit extracts function information that is information recorded in the packet from the received packet and is information that specifies a process to be performed.
The clock supply unit is specified by the extracted function information based on the extracted function information and circuit information that is information for specifying a processing circuit to which a clock is to be supplied when the processing is performed. A power consumption control method for a semiconductor device, characterized in that the clock is supplied to a processing circuit to which the clock is to be supplied when processing to be performed is performed.
(付記14) 制御部と、クロック供給部と、処理回路とを含む半導体装置の消費電力制御方法であって、
パケットが受信されるまで、前記半導体装置は、前記制御部、前記クロック供給部及び前記処理回路に対するクロック供給を停止する
ことを特徴とする半導体装置の消費電力制御方法。
(Supplementary Note 14) A power consumption control method for a semiconductor device including a control unit, a clock supply unit, and a processing circuit,
The semiconductor device power consumption control method, wherein the semiconductor device stops clock supply to the control unit, the clock supply unit, and the processing circuit until a packet is received.
1、9 クロックゲーティング回路
2、3 ラッチ回路
4 内部処理回路
5 クロックツリー部
6 処理回路群
7 省電力制御部
8 ORゲート回路
10 解析制御回路
51、53、55 インバータ列
52、54 クロックゲーティング回路
61 処理回路
100 半導体装置
101〜104 処理回路ブロック
200 パケット
DESCRIPTION OF
Claims (8)
抽出された前記機能情報と、前記処理を行う際にクロックを供給すべき処理回路を特定する情報である回路情報とに基づいて、抽出された前記機能情報により特定される前記機能させるべき処理を行う際に前記クロックを供給すべき処理回路に、前記クロックを供給するクロック供給部とを含む
ことを特徴とする半導体装置。 A control unit that extracts, from the received packet, function information that is information recorded in the packet and that specifies information to be processed;
Based on the extracted function information and circuit information that is information for specifying a processing circuit to which a clock is to be supplied when the processing is performed, the process to be performed specified by the extracted function information is performed. A processing circuit to which the clock is supplied when performing includes a clock supply unit that supplies the clock.
前記パケットを処理する機能ごとに分割した処理回路と、
ツリー状に分岐してクロックを供給する経路を形成し、前記処理回路にクロックを供給するクロックツリーと、
前記クロックツリーの分岐点に設けられたクロックゲーティング回路と、
前記パケットから機能させるべき処理を特定し、特定した処理に基づいて前記クロックゲーティング回路を制御する制御部とを含む
ことを特徴とする半導体装置。 A semiconductor device for processing a received packet,
A processing circuit divided for each function of processing the packet;
Forming a path for supplying clocks by branching into a tree shape, and a clock tree for supplying clocks to the processing circuit;
A clock gating circuit provided at a branch point of the clock tree;
A semiconductor device comprising: a control unit that specifies a process to be functioned from the packet and controls the clock gating circuit based on the specified process .
抽出された前記機能情報と、前記処理を行う際にクロックを供給すべき処理回路を特定する情報である回路情報とに基づいて、抽出された前記機能情報により特定される前記機能させるべき処理を行う際に前記クロックを供給すべき処理回路に、前記クロックを供給するクロック供給部とを含み、
前記制御部は、前記回路情報として、前記処理と前記処理を行う際に前記クロックを供給すべき処理回路とを関連付けて保持し、抽出された前記機能情報と前記回路情報とに基づいて、前記クロック供給部を制御する制御信号を生成して前記クロック供給部に入力し、
前記クロック供給部は、前記クロックを供給する経路であってツリー状に分岐するクロックツリーと、前記クロックツリーの分岐点の各々において、前記分岐点において分岐した複数の経路の各々の先頭に設けられたクロックゲーティング回路とを含み、
前記制御部は、前記クロックゲーティング回路の各々に対応する制御信号を生成し入力する
ことを特徴とする半導体装置。 A control unit that extracts, from the received packet, function information that is information recorded in the packet and that specifies information to be processed;
Based on the extracted function information and circuit information that is information for specifying a processing circuit to which a clock is to be supplied when the processing is performed, the process to be performed specified by the extracted function information is performed. A clock supply unit for supplying the clock to a processing circuit to which the clock is to be supplied when performing,
The control unit holds, as the circuit information, the processing and a processing circuit to which the clock is to be supplied when the processing is performed, and based on the extracted function information and the circuit information, A control signal for controlling the clock supply unit is generated and input to the clock supply unit,
The clock supply unit is provided at the head of each of a plurality of paths branched at the branch point in a clock tree that is a path for supplying the clock and branches in a tree shape, and at each branch point of the clock tree. Clock gating circuit
Wherein the control unit, the clock gating circuit semiconductors devices you characterized in that each generates a control signal corresponding input.
ことを特徴とする請求項3に記載の半導体装置。 The function information is information recorded in a header of the packet, and is information indicating a type of the packet or information indicating a type of an instruction for processing data included in the packet. The semiconductor device according to claim 3 .
ことを特徴とする請求項4に記載の半導体装置。 The control unit includes a first holding unit that holds the process to be functioned in association with information indicating the type of the packet or information indicating the type of instruction, and the process to be functioned in association with the process to be functioned The semiconductor device according to claim 4, wherein the circuit information is held by a second holding unit that holds a processing circuit to which the clock is to be supplied when performing the above.
前記処理回路ブロックには、前記パケットと、前記パケットの受信の期間中において前記処理回路ブロックへの前記クロックの供給を有効とするクロック制御信号とが入力される
ことを特徴とする請求項3に記載の半導体装置。 The semiconductor device includes at least one processing circuit block including the control unit and the clock supply unit,
The processing circuit block, and the packet to claim 3 clock control signal to enable the supply of said clock to said processing circuit block during the period of reception of the packet and is characterized in that the input The semiconductor device described.
制御部が、受信したパケットから、前記パケットに記録された情報であって、機能させるべき処理を特定する情報である機能情報を抽出し、
クロック供給部が、抽出された前記機能情報と、前記処理を行う際にクロックを供給すべき処理回路を特定する情報である回路情報とに基づいて、抽出された前記機能情報により特定される前記機能させるべき処理を行う際に前記クロックを供給すべき処理回路に、前記クロックを供給する
ことを特徴とする半導体装置の消費電力制御方法。 A power consumption control method for a semiconductor device including a control unit, a clock supply unit, and a processing circuit,
The control unit extracts function information that is information recorded in the packet from the received packet and is information that specifies a process to be performed.
The clock supply unit is specified by the extracted function information based on the extracted function information and circuit information that is information for specifying a processing circuit to which a clock is to be supplied when the processing is performed. A power consumption control method for a semiconductor device, characterized in that the clock is supplied to a processing circuit to which the clock is to be supplied when processing to be performed is performed.
前記制御部は、前記回路情報として、前記処理と前記処理を行う際に前記クロックを供給すべき処理回路とを関連付けて保持し、抽出された前記機能情報と前記回路情報とに基づいて、前記クロック供給部を制御する制御信号を生成して前記クロック供給部に入力し、
前記制御部は、前記クロックゲーティング回路の各々に対応する制御信号を生成し入力する
ことを特徴とする半導体装置の消費電力制御方法。 A control unit that extracts information recorded in the packet, which is information recorded in the packet and is information that specifies processing to be performed, from the received packet, the extracted function information, and a clock when performing the processing The processing circuit to which the clock is to be supplied when performing the process to be functioned specified by the extracted function information based on the circuit information that is information for specifying the processing circuit to which the clock is to be supplied. Each of a plurality of paths branched at the branch point at each of the branch points of the clock tree, and a clock tree branching in a tree shape, the path supplying the clock a clock supply unit including a clock gating circuit provided on the top a power consumption control method for a semiconductor device comprising a processing circuit
The control unit holds, as the circuit information, the processing and a processing circuit to which the clock is to be supplied when the processing is performed, and based on the extracted function information and the circuit information, A control signal for controlling the clock supply unit is generated and input to the clock supply unit,
The method for controlling power consumption of a semiconductor device, wherein the control unit generates and inputs a control signal corresponding to each of the clock gating circuits .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011234615A JP5879925B2 (en) | 2011-10-26 | 2011-10-26 | Semiconductor device and power consumption control method for semiconductor device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011234615A JP5879925B2 (en) | 2011-10-26 | 2011-10-26 | Semiconductor device and power consumption control method for semiconductor device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013092915A JP2013092915A (en) | 2013-05-16 |
JP5879925B2 true JP5879925B2 (en) | 2016-03-08 |
Family
ID=48615989
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011234615A Active JP5879925B2 (en) | 2011-10-26 | 2011-10-26 | Semiconductor device and power consumption control method for semiconductor device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5879925B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10992894B2 (en) | 2019-09-02 | 2021-04-27 | Samsung Electronics Co., Ltd. | Image sensor, address decoder including clock tree, and image processing system including the image sensor |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004147251A (en) * | 2002-10-28 | 2004-05-20 | Matsushita Electric Ind Co Ltd | Data transfer device and interface control semiconductor integrated circuit, and protocol processing circuit control method |
JP4261507B2 (en) * | 2005-03-31 | 2009-04-30 | 富士通マイクロエレクトロニクス株式会社 | Clock network power consumption reduction circuit |
JP2007018099A (en) * | 2005-07-05 | 2007-01-25 | Seiko Epson Corp | Data transfer controller and electronic equipment |
JP2007300290A (en) * | 2006-04-28 | 2007-11-15 | Nec Electronics Corp | Clock distribution circuit |
JP2011107769A (en) * | 2009-11-12 | 2011-06-02 | Renesas Electronics Corp | Layout device for semiconductor integrated circuit and clock gating method |
-
2011
- 2011-10-26 JP JP2011234615A patent/JP5879925B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10992894B2 (en) | 2019-09-02 | 2021-04-27 | Samsung Electronics Co., Ltd. | Image sensor, address decoder including clock tree, and image processing system including the image sensor |
Also Published As
Publication number | Publication date |
---|---|
JP2013092915A (en) | 2013-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9632977B2 (en) | System and method for ordering packet transfers in a data processor | |
JP5879925B2 (en) | Semiconductor device and power consumption control method for semiconductor device | |
US20100070802A1 (en) | Semiconductor integrated circuit and testing method therefor | |
CN107255975B (en) | Device and method for realizing rapid loading of FPGA (field programmable Gate array) program by utilizing high-speed bus | |
CN101976206B (en) | A kind of interruption processing method and device | |
CN101464844A (en) | Control method and bus interface of RAM use right | |
CN104007944A (en) | Debugging printing method and system | |
CN100393055C (en) | Automatic protection switching protocol testing method | |
CN109918321B (en) | PCIe bus-based online reconstruction method | |
CN111884948A (en) | Assembly line scheduling method and device | |
JP2009163531A (en) | Interruption management mechanism and microcomputer | |
CN110505607A (en) | Communication means, Bluetooth chip and bluetooth security equipment based on bluetooth security equipment | |
CN103634237A (en) | MCMC [MicroTCA (Micro Telecom Computing Architecture) Carrier Management Controller] | |
CN107562544A (en) | A kind of method and device of signal transacting | |
CN109910007A (en) | Joint of robot communication switching device and method | |
US10565036B1 (en) | Method of synchronizing host and coprocessor operations via FIFO communication | |
CN108920400A (en) | A kind of multipath high-speed high frequency serial data collection device and its acquisition method | |
CN111586182B (en) | Data transmission method and device | |
CN110036602A (en) | The serial communication sorted by priority | |
CN111338680B (en) | Firmware upgrading method, firmware upgrading device and terminal of slave station | |
JP2005228222A (en) | Serial data transfer method and device | |
US11829196B2 (en) | Ring transport employing clock wake suppression | |
CN111352381B (en) | Programmable logic controller programming method, programmable logic controller and system | |
Bo et al. | Architecture of intelligent integrated platform for aero-engine numerical simulation | |
CN105740053B (en) | A kind of drive system and method for chip checking C model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140704 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150624 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151005 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160118 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5879925 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |