JP4551474B2 - Semiconductor integrated circuit - Google Patents

Semiconductor integrated circuit Download PDF

Info

Publication number
JP4551474B2
JP4551474B2 JP2008522264A JP2008522264A JP4551474B2 JP 4551474 B2 JP4551474 B2 JP 4551474B2 JP 2008522264 A JP2008522264 A JP 2008522264A JP 2008522264 A JP2008522264 A JP 2008522264A JP 4551474 B2 JP4551474 B2 JP 4551474B2
Authority
JP
Japan
Prior art keywords
data
unit
valid
block
power
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.)
Expired - Fee Related
Application number
JP2008522264A
Other languages
Japanese (ja)
Other versions
JPWO2008001461A1 (en
Inventor
誠一 西島
巌 杉山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2008001461A1 publication Critical patent/JPWO2008001461A1/en
Application granted granted Critical
Publication of JP4551474B2 publication Critical patent/JP4551474B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0008Arrangements for reducing power consumption
    • H03K19/0016Arrangements for reducing power consumption by using a control or a clock signal, e.g. in order to apply power supply

Description

本発明は、半導体集積回路のリーク電流を抑制するの技術に関する。   The present invention relates to a technique for suppressing leakage current of a semiconductor integrated circuit.

近年、ICチップなどのLSI(Large Scale Integration)に形成されるトランジスタサイズの微細化に伴い、リーク電流(leak current)が増大することが問題になっている。   In recent years, there has been a problem that a leak current increases with the miniaturization of a transistor formed in an LSI (Large Scale Integration) such as an IC chip.

電流がリーク(漏洩)してしまう原因は、量子トンネル効果によるリーク電流などがあげられる。絶縁層の間を電子が通り抜けてしまう現象が確率的に起こりえるため、回路の高集積化にともない、リーク電流が無視できなくなる。また、リーク電流が増大すると、LSIの消費電力が大きくなってしまい、発熱量も増えて回路基板を傷めやすくなってしまう。   The cause of current leakage (leakage) is leakage current due to the quantum tunnel effect. Since a phenomenon that electrons pass between the insulating layers may occur stochastically, the leakage current cannot be ignored as the circuit becomes highly integrated. In addition, when the leakage current increases, the power consumption of the LSI increases, the amount of heat generation increases, and the circuit board is easily damaged.

一般に、リーク電流による電力消費はLSIの総消費電力の半分程度を占める。ここで総消費電力とはロジックの充放電電力とリーク電力との和である。このため、集積度を高めて性能を向上させ、LSIの省電力化をするためには、リーク電流を抑制することが重要である。   In general, power consumption due to leakage current accounts for about half of the total power consumption of LSI. Here, the total power consumption is the sum of the charge / discharge power of the logic and the leak power. For this reason, it is important to suppress the leakage current in order to increase the degree of integration, improve the performance, and save power in the LSI.

例えば、図14に示す半導体基板上に形成されるトランジスタによりリーク電流について考える。半導体基板141にトランジスタは、ゲート部142(Gate)、ソース部143(Source)、ドレイン部144(Drain)、混合酸化物145(Oxide)から形成されている。このような構造の場合、リークはゲートリーク146(Gate leakage)、サブスレショルドリーク147(Sub-threshold leakage)等が発生する。これらによるリーク電流はいずれも純粋な演算動作(ロジック)とは無関係に定常的に流れる。また、CMOS(金属酸化膜半導体:Metal oxide semiconductor)LSIだけでなくバイポーラトランジスタにもリーク電力は存在する。   For example, a leak current is considered by a transistor formed on a semiconductor substrate shown in FIG. The transistor is formed on the semiconductor substrate 141 from a gate part 142 (Gate), a source part 143 (Source), a drain part 144 (Drain), and a mixed oxide 145 (Oxide). In the case of such a structure, the gate leak 146 (Gate leakage), the sub-threshold leak 147 (Sub-threshold leakage), etc. occur. All of these leakage currents steadily flow regardless of pure arithmetic operation (logic). Further, not only CMOS (Metal Oxide Semiconductor) LSI but also bipolar transistors have leakage power.

従来はリーク電流はデバイスプロセス技術の向上、材料の改良により抑えていた。ところがそれだけでは高集積化によるリーク電流の増大を防ぐことが十分にできなくなりつつある。   Conventionally, leakage current has been suppressed by improving device process technology and improving materials. However, that alone is not enough to prevent an increase in leakage current due to high integration.

特許文献1によれば、待機時に電源電圧の供給が停止される電源供給停止線と、待機時にも供給される電源電圧供給線とを設けて、待機時に状態を保持する必要がない回路ブロックは電源供給停止線に接続してリーク電流を削減する回路が提案されている。   According to Patent Document 1, a circuit block that is provided with a power supply stop line that stops supply of power supply voltage during standby and a power supply voltage supply line that is also supplied during standby, and does not need to maintain a state during standby. A circuit that reduces leakage current by connecting to a power supply stop line has been proposed.

また、特許文献2によれば、供給されたクロック信号に同期する論理回路ブロックと、回路ブロックに電源を供給する電源供給スイッチと、スイッチを制御する制御回路により、回路動作上必要な期間以外電源供給を遮断してリーク電流を減少させる提案がされている。   According to Patent Document 2, a logic circuit block that is synchronized with a supplied clock signal, a power supply switch that supplies power to the circuit block, and a control circuit that controls the switch are used to supply power for periods other than those necessary for circuit operation. Proposals have been made to cut off the supply and reduce the leakage current.

特許文献3によれば、システムLSIを各機能ブロック回路に分け、各ブロックを独立した電源ラインに接続し、電源供給はスタンバイ制御回路と電源制御回路が行い、消費電力を低減する提案がされている。   According to Patent Document 3, a system LSI is divided into functional block circuits, each block is connected to an independent power supply line, and a standby control circuit and a power supply control circuit perform power supply to reduce power consumption. Yes.

特許文献4によれば、チップ内部を複数の回路ブロックに分割し、ブロックへの電源電圧の供給を遮断可能な構成にし、遮断可能なブロックから他のブロックへ出力される信号の経路上に信号を記憶可能なブロック間インターフェイス回路を設けることで電力を削減する提案がされている。   According to Patent Document 4, the inside of a chip is divided into a plurality of circuit blocks so that supply of power supply voltage to the block can be cut off, and a signal is output on a path of a signal output from the blockable block to another block. There has been a proposal to reduce power by providing an inter-block interface circuit capable of storing.

しかしながら、今後も進む微細化により増大するリーク電流を抑えるには、上記説明したようなLSI内の各演算ブロックの電源制御だけでは十分な効果が得られない。つまり、LSI内の各演算ブロックを構成する回路毎に電源制御しなければリーク電流を抑制できない。そのためにはLSI内の各回路(演算ブロック)の入力および出力データの流れと、そのタイミングとを把握して、電源制御をしなければならない。   However, a sufficient effect cannot be obtained only by controlling the power supply of each calculation block in the LSI as described above in order to suppress the leakage current that increases due to further miniaturization. That is, the leakage current cannot be suppressed unless the power supply is controlled for each circuit constituting each calculation block in the LSI. For that purpose, it is necessary to control the power supply by grasping the flow and timing of input and output data of each circuit (arithmetic block) in the LSI.

特許文献1〜4においては、LSI内の各演算ブロックをバッファ部とロジック部に分け、バッファ部からデータ転送後にロジック部に電源電圧を供給し、それまではロジック部を停止する構成ではない。つまり、電源制御プログラムを各演算ブロックの構成と動作に合わせて作成し、その制御プログラムによって電源制御を行うものではない。   In Patent Documents 1 to 4, each arithmetic block in the LSI is divided into a buffer unit and a logic unit, and after the data is transferred from the buffer unit, a power supply voltage is supplied to the logic unit, and the logic unit is not stopped until then. That is, a power supply control program is not created according to the configuration and operation of each calculation block, and the power supply control is not performed by the control program.

また、電源制御プログラムの作成において、LSI内にデータパスなどが複数あると複雑な制御が必要となるため、電源制御に合ったハードウェアが必要になる。
特開2004−015670号公報 WO99/66640号公報 特開2004−140503号公報 特開2003−092359号公報 注1)日経BP社, 日経エレクトロニクス2004 4-26 no.872, p.99〜127.
In addition, when a power control program is created, complicated control is required if there are a plurality of data paths in the LSI, so hardware suitable for power control is required.
JP 2004-015670 A WO99 / 66640 JP 2004-140503 A JP 2003-092359 A Note 1) Nikkei Business Publications, Nikkei Electronics 2004 4-26 no.872, p.99-127.

本発明は上記のような実情に鑑みてなされたものであり、必要なときに必要な演算ブロックにのみ電源供給をする電源制御システムを回路上に構築することで、リーク電流を減らし、小消費電力化を実現する電源制御回路を提供することを目的とする。

本発明の態様のひとつである演算処理を実行する演算ブロックを設けた半導体集積回路は、入力データと前記入力データが有効なデータであるかを示すValid信号を入力し、前記有効であるときに入力データを保持する前記演算ブロックのバッファ部と、
前記バッファ部に保持した蓄積データの数が予め設定したデータ数に達したときに、前記蓄積データを利用して演算処理を実行し、前記演算処理実行後出力データと前記出力データが有効であるかを示すValid信号を出力する前記演算ブロックのロジック部と、
前記ロジック部が演算処理実行前に電源供給をするために電源オン/オフを行う前記演算ブロックのスイッチ部の制御を行う電源スイッチ制御部と、を具備する。
The present invention has been made in view of the above situation, and by constructing on a circuit a power supply control system that supplies power only to necessary operation blocks when necessary, reducing leakage current and reducing consumption. An object of the present invention is to provide a power supply control circuit that realizes power generation.

A semiconductor integrated circuit provided with an arithmetic block that executes arithmetic processing, which is one aspect of the present invention, receives input data and a Valid signal indicating whether the input data is valid data. A buffer unit of the arithmetic block for holding input data;
When the number of stored data held in the buffer unit reaches a preset number of data, the stored data is used to execute arithmetic processing, and the output data after execution of the arithmetic processing and the output data are valid. A logic part of the arithmetic block that outputs a Valid signal indicating
A power switch control unit that controls a switch unit of the arithmetic block that performs power on / off in order to supply power before the arithmetic processing is performed by the logic unit.

好ましくは、前記演算ブロックは、前記演算ブロックに前記入力データと前記Valid信号を入力するために設けられたデータネットワークとの接続を設定するセレクタ部と、
前記セレクタ部を介して前記入力データと前記Valid信号を入力し、前記Valid信号が有効である前記入力データを保持するデータバッファ部と、
前記Valid信号が有効なとき前記データバッファ部に前記入力データと前記Valid信号を書き込み制御信号を出力し、前記入力データが前記予め設定したデータ数になり、前記電源スイッチ制御部からの前記ロジック部への電源供給指示により、前記データバッファ部からデータ転送を開始する読み込み制御信号を前記データバッファ部に出力し、前記ロジック部への電源供給開始から前記ロジック部の演算処理終了までの時間をカウントするW/R制御部と、を具備してもよい。
Preferably, the calculation block includes a selector unit configured to set a connection with a data network provided to input the input data and the Valid signal to the calculation block;
A data buffer unit that inputs the input data and the Valid signal via the selector unit and holds the input data for which the Valid signal is valid;
When the Valid signal is valid, the input data and the Valid signal are written to the data buffer unit, a control signal is output, the input data reaches the preset number of data, and the logic unit from the power switch control unit In response to a power supply instruction to the data buffer unit, a read control signal for starting data transfer from the data buffer unit is output to the data buffer unit, and the time from the start of power supply to the logic unit to the end of the arithmetic processing of the logic unit is counted. A W / R control unit.

また、好ましくは電源スイッチ制御部は、前記ロジック部への電源供給を制御する前記スイッチ部の切り替えタイミングを周期的に通知する構成としてもよい。
好ましくは、前記ロジック部のリーク電流と演算に掛かる充放電電流の比に基づいて、前記ロジック部の動作周波数を決定することで、所望の消費電力を低減する。
Preferably, the power switch control unit may periodically notify the switching timing of the switch unit that controls power supply to the logic unit.
Preferably, a desired power consumption is reduced by determining an operating frequency of the logic unit based on a ratio between a leakage current of the logic unit and a charge / discharge current applied to the calculation.

上記構成によりLSIを構成する各演算ブロックの回路を細分化し、電源供給を制御する回路(演算ブロックのロジック部)に対し最適な電源供給をすることでリーク電流の消費を抑制でき、LSI全体の消費電力の削減を可能になる。また、電源供給を制御できる回路の動作周波数比を高めることでリーク電流の消費をさらに低減できる。   With the above configuration, the circuit of each operation block that constitutes the LSI is subdivided, and the optimal power supply to the circuit that controls the power supply (the logic part of the operation block) can suppress the consumption of leakage current. Power consumption can be reduced. Further, the leakage current consumption can be further reduced by increasing the operating frequency ratio of the circuit capable of controlling the power supply.

本発明の他の態様のひとつである演算処理を実行する演算ブロックを設けた半導体集積回路は、入力データと前記入力データが有効なデータであるかを示すValid信号を入力し、前記有効であるときに入力データを保持し、保持した蓄積データの数が予め設定したデータ数に達したときにフル信号を発行する前記演算ブロックのバッファ部と、
前記バッファ部に保持した蓄積データの数が予め設定したデータ数に達したときに、前記蓄積データを利用して演算処理を実行し、前記演算処理実行後に出力データと前記出力データが有効であるかを示すValid信号を出力する前記演算ブロックのロジック部と、
前記ロジック部が演算処理実行前に電源供給をするために電源供給許可と前記フル信号を受信して、電源オン/オフを行う前記演算ブロックのスイッチ部の制御を行う前記演算ブロックの電源制御部と、
前記電源制御部へ電源オン/オフを制御するトークンを発行して、前記ロジック部への前記電源供給許可をし、前記ロジック部が演算処理を完了すると前記電源制御部から前記電源供給許可を取り消す戻りトークンを受信するトークン発行部と、
を具備する。
According to another aspect of the present invention, a semiconductor integrated circuit provided with an operation block for executing an operation process receives input data and a Valid signal indicating whether the input data is valid data. A buffer unit of the arithmetic block that holds input data and issues a full signal when the number of stored data held reaches a preset number of data;
When the number of accumulated data held in the buffer unit reaches a preset number of data, the accumulated data is used to perform arithmetic processing, and the output data and the output data are valid after the arithmetic processing is performed. A logic part of the arithmetic block that outputs a Valid signal indicating
The logic block receives the power supply permission and the full signal to supply power before the execution of the calculation process, and controls the switch block of the calculation block that performs power on / off. When,
Issuing a token for controlling power on / off to the power control unit, permitting the power supply to the logic unit, and canceling the power supply permission from the power control unit when the logic unit completes the arithmetic processing A token issuing unit that receives the return token;
It comprises.

好ましくは、前記演算ブロックは前記演算ブロックに前記入力データと前記Valid信号を入力するために設けられたデータネットワークとの接続を設定するセレクタ部と、
前記セレクタ部を介して前記入力データと前記Valid信号を入力し、前記Valid信号が有効である前記入力データを保持するデータバッファ部と、
前記Valid信号が有効なとき前記データバッファ部に前記入力データと前記Valid信号を書き込み制御信号を出力し、前記入力データが前記予め設定したデータ数になり、前記データバッファ部からデータ転送を開始する読み込み制御信号と電源制御部にフル信号を前記データバッファ部に出力するW/R制御部と、
前記トークン発行部から発行される前記ロジック部への前記電源供給許可のトークンと前記フル信号を受信すると前記スイッチ部を切り替えて前記ロジック部に電源供給をし、前記ロジック部への電源供給開始から前記ロジック部の演算処理終了までの時間をカウントする電源制御部と、を具備してもよい。
Preferably, the arithmetic block has a selector unit for setting a connection with the data network provided for inputting the input data and the Valid signal to the arithmetic block;
A data buffer unit that inputs the input data and the Valid signal via the selector unit and holds the input data for which the Valid signal is valid;
When the Valid signal is valid, the input data and the Valid signal are written to the data buffer unit, a control signal is output, the input data reaches the preset number of data, and data transfer from the data buffer unit is started. A W / R control unit that outputs a read control signal and a full signal to the power control unit to the data buffer unit;
When the power supply permission token to the logic unit issued from the token issuing unit and the full signal are received, the switch unit is switched to supply power to the logic unit, and from the start of power supply to the logic unit And a power supply control unit that counts the time until completion of the arithmetic processing of the logic unit.

また、好ましくは前記ロジック部のリーク電流と演算に掛かる充放電電流の比に基づいて、前記ロジック部の動作周波数を決定することで、所望の消費電力を低減する。
上記構成により、電源スイッチ制御部のプログラムはA〜Zの演算開始、終了といった内部動作を意識することなく、トークン制御のみに注目して、プログラムを簡単に作成することができる。
Preferably, the operating frequency of the logic unit is determined based on a ratio between a leakage current of the logic unit and a charge / discharge current applied to the calculation, thereby reducing desired power consumption.
With the above configuration, the program of the power switch control unit can easily create a program by paying attention only to token control without being aware of internal operations such as calculation start and end of A to Z.

本発明の他の態様のひとつである演算処理を実行する演算ブロックを設けた半導体集積回路は、
入力データと前記入力データが有効なデータであるかを示すValid信号を入力し、前記有効であるときに入力データを保持し、保持した蓄積データの数が予め設定したデータ数に達したときにトグル信号を発行する前記演算ブロックのバッファ部と、
前記バッファ部に保持した蓄積データの数が予め設定したデータ数に達したときに、前記蓄積データを利用して演算処理を実行し、前記演算処理実行後出力データと前記出力データが有効であるかを示すValid信号を出力する前記演算ブロックのロジック部と、
前記ロジック部が演算処理実行前に電源供給をするために前記バッファ部から前記トグル信号を受信し、前記ロジック部への電源オン/オフを行う前記演算ブロックのスイッチ部の制御を行う前記演算ブロックの電源制御部と、を具備する。
A semiconductor integrated circuit provided with a calculation block for performing a calculation process according to another aspect of the present invention,
When input data and a Valid signal indicating whether the input data is valid data are input, the input data is held when the input data is valid, and the number of stored data held reaches a preset number of data A buffer unit of the arithmetic block for issuing a toggle signal;
When the number of stored data held in the buffer unit reaches a preset number of data, the stored data is used to execute arithmetic processing, and the output data after execution of the arithmetic processing and the output data are valid. A logic part of the arithmetic block that outputs a Valid signal indicating
The arithmetic block that receives the toggle signal from the buffer unit to supply power before the arithmetic processing is executed, and controls the switch unit of the arithmetic block that performs power on / off to the logic unit. A power supply control unit.

好ましくは、前記ロジック部のリーク電流と演算に掛かる充放電電流の比に基づいて、前記ロジック部の動作周波数を決定することで、所望の消費電力を低減する。
上記構成により電源供給制御が簡単になる。演算ブロック間のデータ受け渡しの順番(データネットワークトポロジー)が入れ替ることや、複数演算ブロックからの入力がある場合にネットワークと演算ブロックとの間の接続が複雑になる。その場合にも、転送元(ソース)演算ブロックと転送先(ターゲット)演算ブロック間の関係だけを演算ブロック内電源スイッチ制御部に定義しておけば良い。また、ブロックを細分化して、きめ細かな制御も容易にできる。

本発明によれば、LSIを構成する各演算ブロックの回路を細分化し、電源供給を制御する回路(演算ブロックのロジック部)に対し最適な電源供給をすることでリーク電流の消費を抑制でき、LSI全体の消費電力の削減が可能になる。また、電源供給を制御できる回路の動作周波数比を高めることでリーク電流の消費をさらに低減できる。
Preferably, a desired power consumption is reduced by determining an operating frequency of the logic unit based on a ratio between a leakage current of the logic unit and a charge / discharge current applied to the calculation.
The above configuration simplifies power supply control. The order of data exchange between the operation blocks (data network topology) is switched, and when there are inputs from a plurality of operation blocks, the connection between the network and the operation blocks becomes complicated. In this case, only the relationship between the transfer source (source) calculation block and the transfer destination (target) calculation block may be defined in the power switch control unit in the calculation block. Further, fine control can be easily performed by subdividing the blocks.

According to the present invention, the consumption of leakage current can be suppressed by subdividing the circuit of each operation block constituting the LSI and supplying the optimum power to the circuit for controlling the power supply (the logic part of the operation block). The power consumption of the entire LSI can be reduced. Further, the leakage current consumption can be further reduced by increasing the operating frequency ratio of the circuit capable of controlling the power supply.

実施例1の構成を示すブロック図である。1 is a block diagram illustrating a configuration of Example 1. FIG. 実施例1の各演算部の構成を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration of each calculation unit according to the first embodiment. ロジック部の演算を示すタームチャートである。It is a term chart which shows the calculation of a logic part. リーク電流の削減を比較した図である。It is the figure which compared the reduction of leak current. 実施例1の動作を示すフロー図である。FIG. 3 is a flowchart showing the operation of the first embodiment. 動作を示すフロー図である。It is a flowchart which shows operation | movement. 電源制御を示すタイムチャートである。It is a time chart which shows power supply control. 実施例2の構成を示すブロック図である。6 is a block diagram illustrating a configuration of Example 2. FIG. 実施例2の各演算部の構成を示すブロック図である。FIG. 10 is a block diagram illustrating a configuration of each calculation unit according to the second embodiment. 実施例2の動作を示すフロー図である。FIG. 6 is a flowchart showing the operation of the second embodiment. 実施例3の構成を示すブロック図である。10 is a block diagram illustrating a configuration of Example 3. FIG. 実施例3の各演算部の構成を示すブロック図である。FIG. 10 is a block diagram illustrating a configuration of each calculation unit according to a third embodiment. 実施例3の動作を示すフロー図である。FIG. 10 is a flowchart showing the operation of the third embodiment. トランジスタの構成を示す図である。FIG. 11 illustrates a structure of a transistor.

以下図面に基づいて、本発明の実施形態について詳細を説明する。
(実施例1)
図1は本発明を用いたLSI1の内部構成を示す概略図である。また図1はLSI1の構成を電源部2、データネットワーク3、電源スイッチ制御部4、演算ブロック5a〜5zなどから構成した例である。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Example 1
FIG. 1 is a schematic diagram showing the internal configuration of an LSI 1 using the present invention. FIG. 1 shows an example in which the LSI 1 is composed of a power supply unit 2, a data network 3, a power switch control unit 4, arithmetic blocks 5a to 5z, and the like.

例えば、このLSI1の機能を無線LANなどの復調部のベースバンド処理部と考えると、各演算ブロック5a〜5zを、フィルタ部、FFT部などの機能を実現する回路と考えることができる。上記ベースバンド処理などのように各機能をシリアルに実行していく場合に、演算ブロック5a〜5zは演算処理を行い、データネットワーク3を介して次の演算ブロックにデータを転送する。前段演算ブロックが処理を完了した後、次段演算ブロックの入力として前段演算ブロックの出力を利用すれば、現在使用している演算ブロックのみに電源を供給するのみでリーク電流が削減できる。しかし、本発明はシリアルに処理する場合に限定をするわけではなく、演算処理中の演算ブロックだけが動作し、それ以外の演算ブロックが停止するようなシステムにおいて有効である。   For example, when the function of the LSI 1 is considered as a baseband processing unit of a demodulation unit such as a wireless LAN, each of the operation blocks 5a to 5z can be considered as a circuit that realizes functions such as a filter unit and an FFT unit. When each function is executed serially as in the baseband processing, the arithmetic blocks 5a to 5z perform arithmetic processing and transfer data to the next arithmetic block via the data network 3. If the output of the previous stage calculation block is used as the input of the next stage calculation block after the previous stage calculation block has completed processing, the leakage current can be reduced only by supplying power to only the currently used calculation block. However, the present invention is not limited to the case of serial processing, and is effective in a system in which only the operation block being operated is operating and the other operation blocks are stopped.

図1に示す電源部2は、LSI1の各回路に電源を供給する。データネットワーク3は、クロスバネットワークまたはバスネットワークで構成され、各演算ブロック5a〜5zを相互接続するデータパスである。データネットワーク3は入力データとvalidデータを各演算ブロックに送り、さらに各演算ブロックの出力データを出力ネットワークを介して演算ブロックや他の周辺回路に出力する。validデータは各演算ブロックで使用する入力データが有効であるか否かを判定するためのデータである。例えばクロックに同期させデータと一緒に送る。またデータとシリアルに転送してもパラレルに転送してもかまわない。   A power supply unit 2 shown in FIG. 1 supplies power to each circuit of the LSI 1. The data network 3 is configured by a crossbar network or a bus network, and is a data path that interconnects the operation blocks 5a to 5z. The data network 3 sends input data and valid data to each computation block, and further outputs output data of each computation block to the computation block and other peripheral circuits via the output network. The valid data is data for determining whether or not the input data used in each calculation block is valid. For example, it is synchronized with the clock and sent together with the data. Data and serial data transfer or parallel data transfer may be used.

電源スイッチ制御部4は、各演算ブロック5a〜5zの電源供給のタイミングを制御する。各演算ブロック5a〜5zはバッファ部6a〜6zとロジック部7a〜7zを設けている。そして電源部2はバッファ部6a〜6zとロジック部7a〜7zにともに供給する。バッファ部6a〜6zは入力データが何時きても保持できるように常時電源供給をする。ロジック部7a〜7zは上記説明した演算処理を実行し、演算処理を行うときにスイッチ部8a〜8zを制御して電源供給をする。また、電源スイッチ制御部4の構成は、CPUや再構成可能なハードウェアや専用のハードウェアでもよい。CPUなどにより実行する場合や再構成可能なハードウェアなどで構成する場合は、プログラムをLSI1起動時に読込み、その後実行させる。   The power switch control unit 4 controls the power supply timing of each of the calculation blocks 5a to 5z. Each arithmetic block 5a-5z is provided with buffer units 6a-6z and logic units 7a-7z. The power supply unit 2 supplies both to the buffer units 6a to 6z and the logic units 7a to 7z. The buffer units 6a to 6z always supply power so that input data can be held at any time. The logic units 7a to 7z execute the arithmetic processing described above, and supply power by controlling the switch units 8a to 8z when performing the arithmetic processing. The configuration of the power switch control unit 4 may be a CPU, reconfigurable hardware, or dedicated hardware. When the program is executed by a CPU or the like or configured by reconfigurable hardware, the program is read when the LSI 1 is started and then executed.

次に、演算ブロック5a〜5zの構成を図2に示す。バッファ部6は、セレクタ部21、W/R制御部22、データバッファ部23などから構成される。演算ブロック5a〜5zには入力データとValid信号を入力し、演算処理後出力データと出力Valid信号を出力する。   Next, the configuration of the operation blocks 5a to 5z is shown in FIG. The buffer unit 6 includes a selector unit 21, a W / R control unit 22, a data buffer unit 23, and the like. Input data and a Valid signal are input to the calculation blocks 5a to 5z, and output data and an output Valid signal after the calculation process are output.

セレクタ部21は、回路設定信号によりデータネットワーク3とバッファ部6との接続が設定され、入力データとValid信号を演算ブロックに取り込む。演算ブロック毎に入力データとValid信号を送信する転送元の演算ブロックの転送元情報と、演算ブロックの出力として入力データとValid信号を出力する転送先の演算ブロックの転送先情報を設定している。   The selector unit 21 sets the connection between the data network 3 and the buffer unit 6 by the circuit setting signal, and takes in the input data and the Valid signal to the calculation block. For each calculation block, transfer source information of a transfer source calculation block that transmits input data and a Valid signal, and transfer destination information of a transfer destination calculation block that outputs input data and a Valid signal are set as output of the calculation block. .

W/R制御部22は、セレクタ部21経由で入力された入力データをデータバッファ部23に書き込むための制御を行う。入力データはロジック部7で用いるデータを有しデータ入力用のクロックに同期している。また、セレクタ部21を介して入力されたValid信号に基づいて有効な入力データのみをデータバッファ部23に書き込む。電源スイッチ制御部4から周期的に電源制御信号(外部動作開始トリガ)を取得して、ロジック部7へデータとValid信号の転送を開始する。例えば、データバッファ部23に所定のデータ数が蓄積され、外部動作開始トリガを受信するとW/R制御部22はデータバッファ部23に読み込み制御信号を出力し転送が開始される。   The W / R control unit 22 performs control for writing input data input via the selector unit 21 into the data buffer unit 23. The input data has data used in the logic unit 7 and is synchronized with a data input clock. Further, only valid input data is written into the data buffer unit 23 based on the Valid signal input via the selector unit 21. A power supply control signal (external operation start trigger) is periodically acquired from the power supply switch control unit 4, and transfer of data and a Valid signal to the logic unit 7 is started. For example, when a predetermined number of data is accumulated in the data buffer unit 23 and an external operation start trigger is received, the W / R control unit 22 outputs a read control signal to the data buffer unit 23 and starts transfer.

データバッファ部23はロジック部7へのデータ転送を行う。また、データバッファ部23はメモリに入力データを保存してロジック部7にデータを転送する。メモリへのデータ書き込み(Write)は一般的なアドレスに対してデータを保存する方式でもよいし、FIFOのように入力順に保存してもよい。   The data buffer unit 23 performs data transfer to the logic unit 7. The data buffer unit 23 stores input data in the memory and transfers the data to the logic unit 7. The data write (Write) to the memory may be a method of storing data at a general address, or may be stored in the order of input like a FIFO.

スイッチ部8はトランジスタにより電源供給を制御することができる。例えば、インバータ24とトランジスタ25、26を用いて制御をする。本例ではトランジスタ25と26は異なる接合を用いているため、電源スイッチ制御部4からの電源制御信号(外部動作開始トリガ)をインバータ24で反転してトランジスタ25に入力している。一方のトランジスタ26には反転をしないで入力する。   The switch unit 8 can control power supply by a transistor. For example, the inverter 24 and the transistors 25 and 26 are used for control. In this example, since the transistors 25 and 26 use different junctions, the power control signal (external operation start trigger) from the power switch control unit 4 is inverted by the inverter 24 and input to the transistor 25. One transistor 26 is input without being inverted.

ここで、ロジック部7の電源オン/オフを、ロジック部7のVDD側とGND側で行っているがVDD側だけでもよい。VDD側だけであると両側で電源オン/オフするのに比べて両方を入れる場合に比べ面積の無駄がなくなる。GND側に挿入する場合、回路ブロックにおけるトランジスタのゲート-Si基板間や、ゲート-ドレイン(ソース)間に電位差が生じることがあり、ゲートリーク電流を引き起こす要因を完全に取り除けない場合がある。
(動作説明)
入力データは、入力ポートからデータネットワーク3を経由して、予めレジスタによって設定されたデータネットワーク設定に基づき、演算ブロック5a〜5zに転送される。そして、演算処理された出力データと出力Valid信号が他の演算ブロックまたは出力ポートへ出力される。
Here, power on / off of the logic unit 7 is performed on the VDD side and the GND side of the logic unit 7, but only the VDD side may be used. When only the VDD side is used, the area is not wasted compared to the case where both are turned on compared to the case where the power is turned on / off on both sides. When inserted on the GND side, a potential difference may occur between the gate and the Si substrate of the transistor in the circuit block or between the gate and the drain (source), and the factor causing the gate leakage current may not be completely removed.
(Description of operation)
The input data is transferred from the input port to the operation blocks 5a to 5z via the data network 3 based on the data network setting previously set by the register. Then, the processed output data and the output Valid signal are output to another calculation block or output port.

ここで、演算ブロック5aが64ポイントFFT、動作周波数f=40MHz、動作周波数比m=2である場合を考える。(1)入力データ信号波形、(2)データバッファ部23出力信号波形、(3)Vdd’の変化(電源制御信号)について、そのタイミングチャートを図3に示す。   Here, consider a case where the calculation block 5a has a 64-point FFT, an operating frequency f = 40 MHz, and an operating frequency ratio m = 2. FIG. 3 shows a timing chart of (1) input data signal waveform, (2) data buffer unit 23 output signal waveform, and (3) change in Vdd '(power control signal).

(1)の波形はデータネットワーク3を介してf=40MHzの動作周波数に乗って、演算ブロック5aに送られてくる。演算ブロック5aではf×m=80MHzの動作周波数で動作しているため、2サイクルに1回有効なデータを受け取る。64ポイントFFTの場合、1回のFFT演算に64個のデータが必要なため、128サイクル*(1/80MHz)かけて64個のデータを取得する。次に64個のデータはバッファ部6からロジック部7に転送される。そのときに、ロジック部7に電源供給(Vdd’を供給)し、演算終了後Vdd’を遮断する。Vdd’の供給を停止する期間だけ、リーク電流を低減することができる。   The waveform of (1) is sent to the calculation block 5a via the data network 3 on the operating frequency f = 40 MHz. Since the arithmetic block 5a operates at an operating frequency of f × m = 80 MHz, valid data is received once every two cycles. In the case of 64-point FFT, since 64 data are required for one FFT operation, 64 data are acquired over 128 cycles * (1/80 MHz). Next, 64 pieces of data are transferred from the buffer unit 6 to the logic unit 7. At that time, power is supplied to the logic unit 7 (Vdd 'is supplied), and Vdd' is shut off after the calculation is completed. The leakage current can be reduced only during the period when the supply of Vdd 'is stopped.

ここで、データバッファ部23のメモリサイズはブロック部7に割り当てる演算によって異なる。64ポイントFFTの場合は最低64サイクル分必要である。仮に、ロジック部7のリーク電流と演算に係る充放電電流の比を1:1とすると、消費電流は従来に比べ

Figure 0004551474
となる。Here, the memory size of the data buffer unit 23 differs depending on the operation assigned to the block unit 7. A 64-point FFT requires a minimum of 64 cycles. Assuming that the ratio of the leakage current of the logic unit 7 and the charge / discharge current for calculation is 1: 1, the current consumption is smaller than the conventional one.
Figure 0004551474
It becomes.

m=2の場合には図4に示すとおり消費電力を従来の3/4に低減できる。従来、周波数f=1において、同図(a)の演算時間0〜2に渡り、消費電力2(リーク電力1とロジック充放電電力1の和)を必要とした演算処理を、周波数をm=2倍にすることで従来の半分の時間だけ電源をオンにし、リーク電力を1/2に減らすことができる。同図(b)の結果、総電力を3/4に減らす効果を得られる。パラメータmに対する電力削減効果を一般化したのが先に示した(式1)である。動作周波数比mを高くするほど消費電流を低減できる。また、回路ブロックを細分化するほど電源を細かく制御でき、最適な制御による電流最小化が可能になる。
(動作フロー)
次に、実施例1の動作フローを図5を用い説明する。
When m = 2, the power consumption can be reduced to 3/4 of the conventional one as shown in FIG. Conventionally, at the frequency f = 1, the calculation process requiring power consumption 2 (the sum of the leak power 1 and the logic charge / discharge power 1) over the calculation time 0 to 2 in FIG. By doubling the power, the power source can be turned on for half the time of the prior art, and the leakage power can be reduced to ½. As a result of FIG. 5B, the effect of reducing the total power to 3/4 can be obtained. (Equation 1) shown above generalizes the power reduction effect with respect to the parameter m. The current consumption can be reduced as the operating frequency ratio m is increased. Further, as the circuit block is subdivided, the power source can be controlled more finely, and the current can be minimized by optimal control.
(Operation flow)
Next, the operation flow of the first embodiment will be described with reference to FIG.

ステップS51では、電源スイッチ制御部4の制御プログラムを設定する。ステップS52では、上記説明したように各演算ブロックに対して電源制御信号を転送して電源オン/オフのタイミングを通知する設定をする。   In step S51, a control program for the power switch control unit 4 is set. In step S52, as described above, the power control signal is transferred to each computation block to notify the power on / off timing.

また、ステップS53では各演算ブロックの設定をする。W/R制御部22には定数として蓄積データ数(Ndata)、ロジック部処理時間(Toutoff)を回路設定信号により設定するとともに、変数としてデータ読込みカウント数(Counter)、ロジック部処理時間カウント数(timer)を初期化する。同図では初期化を0にしてアップカウントしているがダウンカウントしてもかまわない。また、ロジック部7に対して機能を実現するためのパラメータなどを設定する。図2に示す回路設定信号により、例えばFFT演算であれが複素データの実部と虚部に対応するパラメータを設定する。またディジタルフィルタ演算であれば対応するフィルタ係数をパラメータとして設定する。   In step S53, each calculation block is set. In the W / R control unit 22, the number of accumulated data (Ndata) and the logic unit processing time (Toutoff) are set as constants by a circuit setting signal, and the data reading count number (Counter) and the logic unit processing time count number ( timer) is initialized. In the figure, initialization is set to 0 and up-counting is performed, but down-counting may be performed. Also, parameters for realizing functions are set for the logic unit 7. The parameters corresponding to the real part and imaginary part of the complex data are set by the circuit setting signal shown in FIG. For digital filter operation, the corresponding filter coefficient is set as a parameter.

ステップS54は図2に示す回路設定信号により、図2に示す各演算ブロックのセレクタ部21の設定(SEL)をする。ここで、破線で囲んだ設定処理のステップS51〜54の順番は、本発明を限定するものではない。また設定処理とは、CPU若しくは全体の制御を担う専用ハードによる設定である。   In step S54, the selector unit 21 of each calculation block shown in FIG. 2 is set (SEL) by the circuit setting signal shown in FIG. Here, the order of steps S51 to S54 of the setting process surrounded by a broken line does not limit the present invention. The setting process is a setting by a CPU or dedicated hardware responsible for overall control.

ステップS55では各演算部の入力データとValid信号をセレクタ部21の接続(SEL)に基づいてデータバッファ部23とW/R制御部22に取り込む。
ステップS56では、W/R制御部22によりValid信号が有効なデータのみをデータバッファ部23に書き込みする。書き込み制御信号をデータバッファ部23に出力して書き込みをする。またW/R制御部22は有効なデータを1つ書き込む毎にデータ読み込みカウント数(Counter)をインクリメントする。ここでカウントは有効なデータ数をカウントし、Valid信号が有効なものをカウントする。
In step S55, the input data of each arithmetic unit and the Valid signal are taken into the data buffer unit 23 and the W / R control unit 22 based on the connection (SEL) of the selector unit 21.
In step S56, the W / R control unit 22 writes only data for which the Valid signal is valid to the data buffer unit 23. A write control signal is output to the data buffer unit 23 for writing. The W / R control unit 22 increments the data reading count (Counter) every time one valid data is written. Here, counting counts the number of valid data, and counts valid data.

ステップS57では、データバッファ部23に有効な入力データが所定の数書き込まれたかを判断する。つまりデータ読み込みカウント数(Counter)=蓄積データ数(Ndata)が成立しているかを判断する。成立すれば(YES)ステップS58に移行し、成立していなければ成立するまでS57でループする。   In step S57, it is determined whether a predetermined number of valid input data has been written in the data buffer unit 23. That is, it is determined whether the data reading count number (Counter) = the number of accumulated data (Ndata) is satisfied. If established (YES), the process proceeds to step S58, and if not established, the process loops at S57 until established.

ステップS58では、電源スイッチ制御部4からの電源制御信号(外部動作開始トリガ)により、対応する演算ブロックのロジック部7に電源を供給するスイッチ部8を制御して導通させロジック部処理時間カウント数(timer)のカウントアップを開始する。   In step S58, the power supply control signal (external operation start trigger) from the power supply switch control unit 4 controls and turns on the switch unit 8 that supplies power to the logic unit 7 of the corresponding calculation block, and the logic unit processing time count number (Timer) starts counting up.

ステップS59では、データバッファ部23がNdata分の蓄積データをロジック部に転送する。ステップS510ではロジック部7がデータを受信し演算を開始する。その後、演算を完了したデータをステップS511でロジック部7からデータを出力する。   In step S59, the data buffer unit 23 transfers the accumulated data for Ndata to the logic unit. In step S510, the logic unit 7 receives data and starts calculation. Thereafter, the data for which the operation has been completed is output from the logic unit 7 in step S511.

ステップS512ロジック部7の処理が完了後、ロジック部処理時間(Toutoff)=ロジック部処理時間カウント数(timer)になれば電源を遮断する。また、変数を初期化する。   Step S512 After the processing of the logic unit 7 is completed, if the logic unit processing time (Toutoff) = the logic unit processing time count (timer), the power supply is shut off. Also initialize variables.

次に、図5に示すように次段の演算ブロックで演算処理を行うためステップS55に移行する。例えば、図6に示す演算ブロックAを初段とし、次に演算処理をする演算ブロックを演算ブロックBとし演算ブロックZまでを順に処理する場合について考える。演算ブロックBは、演算ブロックAまたはデータネットワーク3から入力データを取得する。演算ブロックBは演算ブロックAと同様にバッファ部の処理とロジック部の処理を完了し、次段の演算ブロックCに移行する。この処理を繰り返し演算ブロックZまでの演算を行う。   Next, as shown in FIG. 5, the process proceeds to step S55 in order to perform calculation processing in the next calculation block. For example, consider a case where the calculation block A shown in FIG. 6 is the first stage, the calculation block to be processed next is the calculation block B, and the processing up to the calculation block Z is sequentially processed. The calculation block B acquires input data from the calculation block A or the data network 3. The calculation block B completes the processing of the buffer unit and the processing of the logic unit in the same manner as the calculation block A, and moves to the calculation block C in the next stage. This process is repeated until the calculation up to the calculation block Z is performed.

ここで、演算ブロックAと演算ブロックBが同時に演算を行っても問題はなく、そのような並列処理が必要な場合は電源スイッチ制御部4の制御プログラムを図5と異なる、並列処理可能なプログラムにすればよい。
(電源制御)
図7で電源供給の動作を説明する。図7の(イ)に示す期間(c)の波形はスイッチ部8(図2に示すトランジスタ25、26)の切り替えを示している。ロジック部7に電源供給し始めると(ロ)に示すロジック部7の電源電圧が立ち上がり同図(b)の期間経過後(電源電圧が安定した後)ロジック部7は演算処理を開始し、(ハ)に示す同図(a)の期間演算処理を実行する。そして、演算終了後スイッチ部8の切り替えを行い電源供給を遮断する。このように電源スイッチ制御部4の制御プログラムを作成する場合、ロジック部7が安定動作状態になる期間(b)を設けることが必要である。
Here, there is no problem even if the calculation block A and the calculation block B perform the calculation at the same time. When such parallel processing is necessary, the control program of the power switch control unit 4 is different from that shown in FIG. You can do it.
(Power control)
The operation of power supply will be described with reference to FIG. The waveform of period (c) shown in (a) of FIG. 7 indicates switching of the switch unit 8 (transistors 25 and 26 shown in FIG. 2). When the power supply to the logic unit 7 is started, the power supply voltage of the logic unit 7 shown in (b) rises, and after the period (b) in FIG. The period calculation process shown in FIG. Then, after the calculation is completed, the switch unit 8 is switched to cut off the power supply. Thus, when the control program of the power switch control unit 4 is created, it is necessary to provide a period (b) in which the logic unit 7 is in a stable operation state.

上記のようにロジック部7が動作するときのみ電源スイッチ制御部4が電源を対応する演算ブロックに供給することで、演算処理が完了する毎に電源供給経路を停止することにより電源供給を停止する。ただし、バッファ部6には常に電源が供給されている。なぜならば、電源状態によらず、データ入力を常に可能とするためである。全ての演算ブロックのバッファ部6も同様である。このため、お互いの電力供給の状況を意識することなく、データの転送を行うことができる。   As described above, only when the logic unit 7 operates, the power switch control unit 4 supplies power to the corresponding calculation block, so that power supply is stopped by stopping the power supply path every time the calculation process is completed. . However, the buffer unit 6 is always supplied with power. This is because data input is always possible regardless of the power supply state. The same applies to the buffer units 6 of all operation blocks. For this reason, it is possible to transfer data without being aware of the state of power supply to each other.

また、以上のシステムを有したLSI1に与えるクロックとして、入力データのm倍の動作周波数のクロックをロジック部に与えることにより演算時間を1/mにする。その結果、演算時間を1/mにでき電源供給時間を従来の1/mにすることが可能となり、電源停止の期間ロジック部のリーク電流を止めることができる。
(実施例2)
実施例2は、実施例1に示すような演算ブロックと電源スイッチ制御部との間での直接的な制御ではない。トークン発行部と各演算ブロックとの間にトークンバスを設け電源供給をトークン(電源供給権)を用いて行う。LSI81起動直後に、初段の演算ブロックに権利を与えて演算をする。そして、その演算ブロックでの演算が終わり次第、その権利を電源スイッチ制御部に返す。その戻りトークンを受けたトークン発行部が次段の演算ブロックにトークンを渡して電源供給を開始する仕組みを有する。
Further, as a clock to be given to the LSI 1 having the above system, a clock having an operating frequency m times as high as that of the input data is given to the logic unit to reduce the calculation time to 1 / m. As a result, the calculation time can be reduced to 1 / m, and the power supply time can be reduced to 1 / m of the conventional time, and the leakage current of the logic unit can be stopped during the power supply stop period.
(Example 2)
The second embodiment is not a direct control between the calculation block and the power switch control unit as shown in the first embodiment. A token bus is provided between the token issuing unit and each calculation block to supply power using a token (power supply right). Immediately after the LSI 81 is activated, a right is given to the first calculation block and the calculation is performed. Then, as soon as the computation in the computation block is completed, the right is returned to the power switch control unit. The token issuing unit that has received the return token passes the token to the next calculation block and starts supplying power.

図8はLSI81の構成を電源部82、データネットワーク83、トークン発行部84、演算ブロック85a〜85zなどから構成された場合の例である。
例えば、実施例1同様LSI81の機能を無線LANなどの復調部のベースバンド処理部と考えると、各演算ブロック85a〜85zはフィルタ部、FFT部などの機能を実現する回路である。また、各演算ブロック85a〜85zは演算処理を行いデータネットワーク83を介して次の演算ブロックに転送する。前段演算ブロックが処理を完了した後、次段演算ブロックの入力として前段演算ブロックの出力を利用すれば、現在使用している演算ブロックのみに電源供給するのでリーク電流が削減できる。
FIG. 8 shows an example in which the LSI 81 is composed of a power supply unit 82, a data network 83, a token issuing unit 84, arithmetic blocks 85a to 85z, and the like.
For example, when the function of the LSI 81 is considered as a baseband processing unit of a demodulation unit such as a wireless LAN as in the first embodiment, each of the operation blocks 85a to 85z is a circuit that realizes functions such as a filter unit and an FFT unit. In addition, each of the operation blocks 85a to 85z performs an operation process and transfers it to the next operation block via the data network 83. If the output of the previous-stage calculation block is used as the input of the next-stage calculation block after the previous-stage calculation block completes processing, power is supplied only to the currently used calculation block, so that the leakage current can be reduced.

電源部82は、LSI81の各回路に電源を供給する。データネットワーク83は、クロスバネットワークまたはバスネットワークで構成された各演算ブロック85a〜85zを相互接続するデータパスである。データネットワーク83は入力データとvalidデータを各演算ブロックに送り、さらに各演算ブロックの出力データと出力Valid信号を演算ブロックや出力ポートを介して他の周辺回路に出力を転送する。validデータは各演算ブロックで使用する入力データが有効であるか否かを判定するためのデータである。   The power supply unit 82 supplies power to each circuit of the LSI 81. The data network 83 is a data path that interconnects the operation blocks 85a to 85z configured by a crossbar network or a bus network. The data network 83 sends the input data and valid data to each arithmetic block, and further transfers the output data of each arithmetic block and the output Valid signal to other peripheral circuits via the arithmetic block and the output port. The valid data is data for determining whether or not the input data used in each calculation block is valid.

トークン発行部84は、各演算ブロック85a〜85zの電源供給のタイミングを制御する。各演算ブロック85a〜85zはバッファ部86a〜86zとロジック部87a〜87zを設けている。そして電源供給はバッファ部86a〜86zとロジック部87a〜87zとともにする。バッファ部86a〜86zは、実施例1同様入力データが何時きても保持できるように常時電源供給をする。ロジック部87a〜87zは上記説明した演算処理を実行するときだけ、スイッチ部88a〜88zを電源制御部89a〜89zが制御して電源供給をする。   The token issuing unit 84 controls the power supply timing of each of the operation blocks 85a to 85z. Each arithmetic block 85a to 85z is provided with buffer units 86a to 86z and logic units 87a to 87z. The power is supplied together with the buffer units 86a to 86z and the logic units 87a to 87z. The buffer units 86a to 86z always supply power so that input data can be held at any time as in the first embodiment. The logic units 87a to 87z supply power by controlling the switch units 88a to 88z by the power control units 89a to 89z only when executing the above-described arithmetic processing.

また、トークン発行部84の構成は、CPUや再構成可能なハードウェアや専用のハードウェアでもよい。CPUなどにより実行する場合や再構成可能なハードウェアなどで構成する場合は、プログラムをLSI81起動時に読み込み実行してもよい。   The configuration of the token issuing unit 84 may be a CPU, reconfigurable hardware, or dedicated hardware. When the program is executed by a CPU or the like or configured by reconfigurable hardware, the program may be read and executed when the LSI 81 is activated.

次に、演算ブロック85a〜85zは図9に示す構成である。バッファ部86は、セレクタ部91、W/R制御部92、データバッファ部93などから構成される。
演算ブロック85a〜85zには入力データとValid信号を入力する。演算ブロックから出力データと出力Valid信号を出力する。
Next, the operation blocks 85a to 85z have the configuration shown in FIG. The buffer unit 86 includes a selector unit 91, a W / R control unit 92, a data buffer unit 93, and the like.
Input data and a Valid signal are input to the operation blocks 85a to 85z. Output data and an output Valid signal are output from the arithmetic block.

セレクタ部91は、回路設定信号によりデータネットワーク83とバッファ部86との接続を予め設定し、入力データとValid信号を演算ブロックに取り込む。
W/R制御部92は、セレクタ部91経由で入力された入力データとvalid信号をデータバッファ部93に書き込むための制御を行う。入力データはロジック部87で用いるデータ値を有しデータ入力用のクロックに同期している。また、セレクタ部91を介して入力されたValid信号に基づいて有効な入力データのみをデータバッファ部93に書き込む。
The selector unit 91 presets the connection between the data network 83 and the buffer unit 86 by the circuit setting signal, and takes in the input data and the Valid signal to the calculation block.
The W / R control unit 92 performs control for writing the input data and the valid signal input via the selector unit 91 into the data buffer unit 93. The input data has a data value used in the logic unit 87 and is synchronized with a data input clock. Further, only valid input data is written to the data buffer unit 93 based on the Valid signal input via the selector unit 91.

データバッファ部93はメモリに入力データを保存してロジック部87にデータを転送する。メモリへのデータ書き込み(Write)は一般的なアドレスに対してデータを保存する方式でもよいし、FIFOのように入力順に保存してもよい。また、ロジック部87へのデータ転送を行う。   The data buffer unit 93 stores input data in the memory and transfers the data to the logic unit 87. The data write (Write) to the memory may be a method of storing data at a general address, or may be stored in the order of input like a FIFO. Further, data transfer to the logic unit 87 is performed.

演算ブロック内の電源制御部89は、データバッファ部93に所定のデータ数が蓄積され、トークン発行部84からトークンを取得したことを検知するとスイッチ部88の切り替えをする。そしてロジック部87に電源が供給される。データバッファ部93にロジック部87へ蓄積データの転送を開始する。   The power supply control unit 89 in the calculation block switches the switch unit 88 when detecting that a predetermined number of data is accumulated in the data buffer unit 93 and a token is acquired from the token issuing unit 84. Then, power is supplied to the logic unit 87. Transfer of accumulated data to the logic unit 87 is started in the data buffer unit 93.

スイッチ部88はトランジスタ95、96などにより電源供給を制御する。例えば、インバータ94とトランジスタ95、96を用いて制御をする。本例ではトランジスタ95と96は異なる接合を用いているため、電源制御部89からの電源制御信号(動作開始トリガ)をインバータ94で反転してトランジスタ95に入力している。一方のトランジスタ96へは反転をしないで入力する。そしてVDD側とGND側で電源オン/オフをしている。本例ではトランジスタ96によりGND側の切り替えもしているが、VDD側のみの切り替えだけでもよい。
(動作説明)
次に、実施例2の動作フローを図10を用い説明する。
The switch unit 88 controls power supply by transistors 95 and 96. For example, control is performed using an inverter 94 and transistors 95 and 96. In this example, since the transistors 95 and 96 use different junctions, the power supply control signal (operation start trigger) from the power supply control unit 89 is inverted by the inverter 94 and input to the transistor 95. The signal is input to one transistor 96 without being inverted. The power supply is turned on / off on the VDD side and the GND side. In this example, the GND side is switched by the transistor 96, but only the VDD side may be switched.
(Description of operation)
Next, the operation flow of the second embodiment will be described with reference to FIG.

ステップS101ではトークン発行部84でトークンを発行する制御プログラムなどを設定する。上記説明したように各演算ブロックに対してトークンを発行して演算ブロックに権利を与え電源オン/オフのタイミングを通知する設定をする。   In step S101, the token issuing unit 84 sets a control program for issuing a token. As described above, a token is issued to each calculation block to give a right to the calculation block and notify the power on / off timing.

また、ステップS102では、ロジック部に対して機能を実現するためのパラメータなどを設定する。図9に示す回路設定信号により、例えばFFT演算であれが複素データの実部と虚部に対応するパラメータを設定する。またディジタルフィルタ演算であれば対応するフィルタ係数パラメータを設定する。   In step S102, parameters for realizing the function are set for the logic unit. The parameters corresponding to the real and imaginary parts of the complex data are set by the circuit setting signal shown in FIG. If it is a digital filter operation, a corresponding filter coefficient parameter is set.

ステップS103は図9に示す回路設定信号により、図10に示す各演算ブロックのセレクタ部91の設定(SEL)をする。
また、ステップS104では各演算ブロックの電源設定をする。W/R制御部92には定数として蓄積データ数(Ndata)、ロジック部処理時間(Toutoff)を設定する。ステップS105では変数としてデータ読み込みカウント数(Counter)、ロジック部処理時間カウント数(timer)を初期化する。同図では初期化を0にしてアップカウントしているがダウンカウントしてもかまわない。ここで、破線で囲んだ設定処理のステップS101〜105の順番は限定するものではない。また、設定処理はCPU若しくは全体の制御を担う専用ハードによる設定である。
In step S103, the selector unit 91 of each calculation block shown in FIG. 10 is set (SEL) by the circuit setting signal shown in FIG.
In step S104, the power supply of each calculation block is set. In the W / R control unit 92, the number of accumulated data (Ndata) and the logic unit processing time (Toutoff) are set as constants. In step S105, a data reading count number (Counter) and a logic unit processing time count number (timer) are initialized as variables. In the figure, initialization is set to 0 and up-counting is performed, but down-counting may be performed. Here, the order of steps S101 to S105 in the setting process surrounded by a broken line is not limited. The setting process is a setting by a CPU or dedicated hardware responsible for overall control.

ステップS106ではトークン発行部84がトークンを目的の演算ブロックに発行する。
ステップS107では各演算部の入力データとValid信号をセレクタ部91の接続(SEL)に基づいて取り込む。
In step S106, the token issuing unit 84 issues a token to the target calculation block.
In step S107, the input data of each arithmetic unit and the Valid signal are fetched based on the connection (SEL) of the selector unit 91.

ステップS108では、W/R制御部92がValid信号の有効であるデータのみをデータバッファ部93に書き込みをする。Valid信号が有効なときデータバッファ部93に入力データとValid信号を書き込み制御信号を出力する。そしてValidデータを1つ書き込む毎にデータ読込みカウント数(Counter)をインクリメントする。   In step S <b> 108, the W / R control unit 92 writes only data for which the Valid signal is valid to the data buffer unit 93. When the Valid signal is valid, the input data and the Valid signal are written to the data buffer unit 93 and a control signal is output. Each time one piece of Valid data is written, the data reading count (Counter) is incremented.

ステップS109では、電源制御部89がトークンを受信し、データバッファ部93に有効な入力データが所定の数書き込まれたかを判断する。つまりデータ読み込みカウント数(Counter)=蓄積データ数(Ndata)が成立しているかを判断する。成立すれば(YES)ステップS1010に移行し、成立していなければ成立するまでS109でループする。W/R制御部は予め設定したデータ数になると、データバッファ部103からデータ転送を開始する読み込み制御信号と電源制御部にフル信号をデータバッファ部103に出力する。   In step S109, the power supply control unit 89 receives the token, and determines whether a predetermined number of valid input data has been written in the data buffer unit 93. That is, it is determined whether the data reading count number (Counter) = the number of accumulated data (Ndata) is satisfied. If established (YES), the process proceeds to step S1010, and if not established, the process loops at S109 until established. When the number of data set in advance is reached, the W / R control unit outputs a read control signal for starting data transfer from the data buffer unit 103 and a full signal to the power control unit 103 to the data buffer unit 103.

ステップS1010では、電源制御部89からの電源制御信号(動作開始トリガ)により、対応する演算ブロックのロジック部87に電源を供給するスイッチ部88を制御して導通させロジック部処理時間カウント数(timer)のカウントアップを開始する。   In step S1010, the power supply control signal (operation start trigger) from the power supply control unit 89 controls and turns on the switch unit 88 that supplies power to the logic unit 87 of the corresponding calculation block, and the logic unit processing time count (timer). ) Starts counting up.

ステップS1011では、データバッファ部93がNdata分の蓄積データをロジック部に転送する。ステップS1012ではロジック部87がデータを受信し演算を開始する。その後、演算を完了したデータをステップS1013でロジック部87からデータを出力する。   In step S1011, the data buffer unit 93 transfers the accumulated data for Ndata to the logic unit. In step S1012, the logic unit 87 receives data and starts calculation. Thereafter, the data for which the calculation has been completed is output from the logic unit 87 in step S1013.

ステップS1014では、ロジック部87の処理が完了後、ロジック部処理時間(Toutoff)=ロジック部処理時間カウント数(timer)になれば電源を遮断する。また、変数を初期化する。   In step S1014, after the processing of the logic unit 87 is completed, the power is turned off when the logic unit processing time (Toutoff) = the logic unit processing time count (timer). Also initialize variables.

ステップS1015では、電源制御部89がトークン発行部84に権利を戻す。ステップS1016ではトークン発行部84が、戻りトークンを受信する。
そして、次段の演算ブロックで演算処理を行うためステップS106に移行する。例えば、演算ブロックAを初段とし、次に演算処理をする演算ブロックを演算ブロックBとし演算ブロックZまでを順に処理する。演算ブロックBは、演算ブロックAまたはデータネットワーク3から入力データを取得する。演算ブロックBは演算ブロックAと同様にバッファ部の処理とロジック部の処理を完了し、次段の演算ブロックCに移行する。この処理を繰り返し演算ブロックZまでの演算を行う。
In step S 1015, the power supply control unit 89 returns the right to the token issuing unit 84. In step S1016, the token issuing unit 84 receives the return token.
Then, the process proceeds to step S106 in order to perform calculation processing in the next calculation block. For example, the calculation block A is the first stage, the calculation block to be processed next is the calculation block B, and the calculation block Z is processed in order. The calculation block B acquires input data from the calculation block A or the data network 3. The calculation block B completes the processing of the buffer unit and the processing of the logic unit in the same manner as the calculation block A, and moves to the calculation block C in the next stage. This process is repeated until the calculation up to the calculation block Z is performed.

ここで、演算ブロックAと演算ブロックBが同時に演算を行っても問題はなく、そのような並列処理が必要な場合はトークン発行部84の制御プログラムを図10と異なる、並列のプログラムにすればよい。
(実施例3)
ブロック間のデータ受け渡しの順番(データネットワークトポロジー)が入れ替わる場合や、複数演算ブロックからの入力がある場合にネットワークと演算ブロックとの間の接続が複雑になる。その場合にソース演算ブロックとターゲット演算ブロック間の関係だけを電源制御部に定義しておけばよい。演算ブロックを細分化してきめ細かな制御が容易に可能になる。
Here, there is no problem even if the calculation block A and the calculation block B perform the calculation at the same time. If such parallel processing is required, the control program of the token issuing unit 84 may be a parallel program different from that shown in FIG. Good.
(Example 3)
When the order of data transfer between blocks (data network topology) is switched, or when there are inputs from a plurality of operation blocks, the connection between the network and the operation blocks becomes complicated. In that case, only the relationship between the source computation block and the target computation block need be defined in the power supply control unit. Fine-grained control can be easily performed by subdividing the calculation block.

図11はLSI111の構成を電源部112、データネットワーク113、演算ブロック114a〜114zなどから構成された場合の例である。
例えば、実施例1同様LSI111の機能を無線LANなどの復調部のベースバンド処理部と考えると、各演算ブロック114a〜114zはフィルタ部、FFT部などの機能を実現する回路である。また、各演算ブロック114a〜114zは演算処理を行いデータネットワーク113を介して次の演算ブロックに転送する。前段演算ブロックが処理を完了した後、次段演算ブロックの入力として前段演算ブロックの出力を利用すれば、現在使用している演算ブロックのみに電源供給するのでリーク電流が削減できる。
FIG. 11 shows an example in which the LSI 111 is configured from a power supply unit 112, a data network 113, arithmetic blocks 114a to 114z, and the like.
For example, when the function of the LSI 111 is considered as a baseband processing unit of a demodulation unit such as a wireless LAN as in the first embodiment, each of the operation blocks 114a to 114z is a circuit that realizes functions such as a filter unit and an FFT unit. In addition, each of the operation blocks 114 a to 114 z performs an operation process and transfers it to the next operation block via the data network 113. If the output of the previous-stage calculation block is used as the input of the next-stage calculation block after the previous-stage calculation block completes processing, power is supplied only to the currently used calculation block, so that the leakage current can be reduced.

電源部112は、LSI111の各回路に電源を供給する。データネットワーク113は、クロスバネットワークまたはバスネットワークで構成された各演算ブロック114a〜114zを相互接続するデータパスである。データネットワーク113は入力データとvalid信号を各演算ブロックに送り、さらに各演算ブロックの出力データと出力Valid信号を演算ブロックや出力ポートを介して他の周辺回路に出力を転送する。   The power supply unit 112 supplies power to each circuit of the LSI 111. The data network 113 is a data path that interconnects the operation blocks 114a to 114z configured by a crossbar network or a bus network. The data network 113 sends the input data and the valid signal to each arithmetic block, and further transfers the output data of each arithmetic block and the output Valid signal to other peripheral circuits via the arithmetic block and the output port.

各演算ブロック114a〜114zはバッファ部115a〜115zとロジック部116a〜116zを設けている。そして電源供給はバッファ部115a〜115zとロジック部116a〜116zにする。バッファ部115a〜115zは入力データが何時きても保持できるように常時電源供給をする。ロジック部116a〜116zは上記説明した演算処理を実行し、演算処理を行うときにスイッチ部117a〜117zを制御して電源供給をする。各演算ブロック114a〜114zの電源制御部118a〜118zは、電源供給のタイミングを制御する。   Each calculation block 114a-114z is provided with buffer part 115a-115z and logic part 116a-116z. The power is supplied to the buffer units 115a to 115z and the logic units 116a to 116z. The buffers 115a to 115z always supply power so that input data can be held at any time. The logic units 116a to 116z execute the arithmetic processing described above, and supply power by controlling the switch units 117a to 117z when performing the arithmetic processing. The power control units 118a to 118z of the calculation blocks 114a to 114z control power supply timing.

次に、演算ブロック114a〜114zは図12に示す構成である。バッファ部115は、セレクタ部121、W/R制御部122、データバッファ部123などから構成される。   Next, the calculation blocks 114a to 114z have the configuration shown in FIG. The buffer unit 115 includes a selector unit 121, a W / R control unit 122, a data buffer unit 123, and the like.

演算ブロック114a〜114zには入力データとValid信号を入力する入力ポートと演算ブロックから出力データを出力ポートを設ける。
セレクタ部121は、回路設定信号によりデータネットワーク113とバッファ部115との接続を設定し、入力データとValid信号を演算ブロックに取り込む。
The operation blocks 114a to 114z are provided with an input port for inputting input data and a Valid signal and an output port for output data from the operation block.
The selector unit 121 sets the connection between the data network 113 and the buffer unit 115 based on the circuit setting signal, and takes the input data and the Valid signal into the calculation block.

W/R制御部122は、セレクタ部121経由で入力された入力データをデータバッファ部123に書き込むための制御を行う。また、W/R制御部122がトグル信号によりスイッチ部117の切り替えをする。データバッファ部123に所定のデータ数が蓄積されるとロジック部116への転送が開始される。入力データはロジック部116で用いるデータを有しデータ入力用のクロックに同期している。また、セレクタ部121を介して入力されたValid信号に基づいて有効な入力データのみをデータバッファ部123に書き込む。   The W / R control unit 122 performs control for writing the input data input via the selector unit 121 into the data buffer unit 123. Further, the W / R control unit 122 switches the switch unit 117 by a toggle signal. When a predetermined number of data is accumulated in the data buffer unit 123, transfer to the logic unit 116 is started. The input data has data used in the logic unit 116 and is synchronized with the data input clock. Further, only valid input data is written into the data buffer unit 123 based on the Valid signal input via the selector unit 121.

データバッファ部123はメモリに入力データを保存してロジック部116にデータを転送する。メモリへのデータ書き込み(Write)は一般的なアドレスに対してデータを保存する方式でもよいし、FIFOのように入力順に保存してもよい。   The data buffer unit 123 stores input data in the memory and transfers the data to the logic unit 116. The data write (Write) to the memory may be a method of storing data at a general address, or may be stored in the order of input like a FIFO.

スイッチ部117はトランジスタ125、126などにより電源供給を制御することができる。例えば、インバータ124とトランジスタ125、126を用いて制御をする。本例ではトランジスタ125と126は異なる接合であるため、電源制御部118からの信号をインバータ124で反転してトランジスタ125に入力している。一方のトランジスタ126へは反転をしないで入力する。   The switch unit 117 can control power supply by the transistors 125 and 126 and the like. For example, control is performed using an inverter 124 and transistors 125 and 126. In this example, since the transistors 125 and 126 are different junctions, the signal from the power supply control unit 118 is inverted by the inverter 124 and input to the transistor 125. The signal is input to one transistor 126 without being inverted.

本例ではトランジスタ126によりGND側の切り替えもしているが、トランジスタ125だけを用いVDD側のみの切り替えだけでもよい。
(動作説明)
実施例3は回路設定信号によりロジック部116、W/R制御部122、セレクタ部121の設定を完了した後、(1)入力データをセレクタ部経由で演算ブロックへ取り込む。Valid信号が有効である入力データのみをW/R制御部122で選り分け、データバッファ部123に書き込む。データバッファ部123は、回路設定信号により決められた一定のデータ数がデータバッファ部123に蓄積された段階で、そのデータをロジック部116に転送する。W/R制御部122は、データ書き込みと同時に電源制御部118にスイッチを導通させるトグルの役割を果たす信号を送ることにより、電源Vdd’、グランドGND’のスイッチをオンさせ電源供給をする。また、W/R制御部122はロジック部116から処理データが出力された後、トグル信号を送り電源を遮断する。電源供給から遮断するまでのタイミング設定は回路設定信号により行う。
In this example, the transistor 126 is switched on the GND side, but only the transistor 125 is used and only the VDD side is switched.
(Description of operation)
In the third embodiment, after setting of the logic unit 116, the W / R control unit 122, and the selector unit 121 is completed by a circuit setting signal, (1) input data is taken into the calculation block via the selector unit. Only input data for which the Valid signal is valid is selected by the W / R control unit 122 and written to the data buffer unit 123. The data buffer unit 123 transfers the data to the logic unit 116 when a certain number of data determined by the circuit setting signal is accumulated in the data buffer unit 123. The W / R control unit 122 turns on the power supply Vdd ′ and the ground GND ′ to supply power by sending a signal serving as a toggle for conducting the switch to the power supply control unit 118 simultaneously with data writing. In addition, after the processing data is output from the logic unit 116, the W / R control unit 122 sends a toggle signal to shut off the power supply. Timing setting from power supply to shut-off is performed by a circuit setting signal.

次に、実施例3の動作フローを図13を用い説明する。
ステップS131では、ロジック部に対して機能を実現するためのパラメータなどを設定する。図13に示す回路設定信号により、例えばFFT演算であれが複素データの実部と虚部に対応するパラメータを設定する。またディジタルフィルタ演算であれば対応するフィルタ係数パラメータを設定する。
Next, the operation flow of the third embodiment will be described with reference to FIG.
In step S131, parameters for realizing the function are set for the logic unit. The parameter corresponding to the real part and the imaginary part of the complex data is set by the circuit setting signal shown in FIG. If it is a digital filter operation, a corresponding filter coefficient parameter is set.

ステップS132は図12に示す回路設定信号により、各演算ブロックのセレクタ部121の設定(SEL)をする。
また、ステップS133では各演算ブロックの電源設定をする。W/R制御部122には定数として蓄積データ数(Ndata)、ロジック部処理時間(Toutoff)を設定する。ステップ134では変数としてデータ読込みカウント数(Counter)、ロジック部処理時間カウント数(timer)を初期化する。同図では初期化を0にしてアップカウントしているがダウンカウントしてもかまわない。ここで、破線で囲んだ設定処理のステップS131〜134の順番は限定するものではない。
In step S132, the selector 121 of each calculation block is set (SEL) by the circuit setting signal shown in FIG.
In step S133, the power supply of each calculation block is set. In the W / R control unit 122, the number of accumulated data (Ndata) and the logic unit processing time (Toutoff) are set as constants. In step 134, the data reading count number (Counter) and the logic section processing time count number (timer) are initialized as variables. In the figure, initialization is set to 0 and up-counting is performed, but down-counting may be performed. Here, the order of steps S131 to S134 in the setting process surrounded by a broken line is not limited.

ステップS135では各演算部の入力データとValid信号をセレクタ部121の接続(SEL)に基づいて取り込む。
ステップS136では、Valid信号が有効なデータのみをデータバッファ部123に書き込みValidデータを1つ書き込む毎にデータ読み込みカウント数(Counter)をインクリメントなどする。Valid信号が有効なときデータバッファ部123に入力データとValid信号を書き込み制御信号を出力する。
In step S135, the input data of each arithmetic unit and the Valid signal are fetched based on the connection (SEL) of the selector unit 121.
In step S136, only data for which the Valid signal is valid is written to the data buffer unit 123, and the data reading count (Counter) is incremented each time one piece of Valid data is written. When the Valid signal is valid, the input data and the Valid signal are written to the data buffer unit 123 and a control signal is output.

ステップS137では、データバッファ部123に有効な入力データが所定の数書き込まれたかを判断する。つまりデータ読み込みカウント数(Counter)=蓄積データ数(Ndata)が成立しているかを判断する。成立していれば(YES)ステップS138に移行し、成立していなければ成立するまでS137でループする。W/R制御部は予め設定したデータ数になると、データバッファ部123からデータ転送を開始する読み込み制御信号と電源制御部にフル信号をデータバッファ部123に出力する
ステップS138では、トグル信号を電源制御部118が受信し、ロジック部116に電源供給をするスイッチ部117を制御し導通させる。そしてロジック部処理時間カウント数(timer)のカウントアップを開始する。
In step S137, it is determined whether a predetermined number of valid input data has been written in the data buffer unit 123. That is, it is determined whether the data reading count number (Counter) = the number of accumulated data (Ndata) is satisfied. If it is satisfied (YES), the process proceeds to step S138, and if it is not satisfied, the process loops at S137 until it is satisfied. When the number of data set in advance is reached, the W / R control unit outputs a read control signal for starting data transfer from the data buffer unit 123 and a full signal to the power control unit 123 in step S138. The control unit 118 receives and controls the switch unit 117 that supplies power to the logic unit 116 to make it conductive. Then, the logic unit processing time count number (timer) starts to be counted up.

ステップS139では、データバッファ部123がNdata分の蓄積データをロジック部116に転送する。ステップS1310ではロジック部116がデータを受信し演算を開始する。その後、演算を完了したデータをステップS1311でロジック部106からデータとValid信号を出力する。   In step S139, the data buffer unit 123 transfers the accumulated data for Ndata to the logic unit 116. In step S1310, the logic unit 116 receives data and starts calculation. Thereafter, the data and the Valid signal are output from the logic unit 106 in step S1311 for the data for which the operation has been completed.

ステップS1312では、ロジック部116の処理が完了後、ロジック部処理時間(Toutoff)=ロジック部処理時間カウント数(timer)になれば電源を遮断する。また、変数を初期化する。   In step S1312, after the processing of the logic unit 116 is completed, if the logic unit processing time (Toutoff) = the logic unit processing time count (timer), the power supply is shut off. Also initialize variables.

そして、次段の演算ブロックで演算処理を行うためステップS135に移行する。例えば、演算ブロックAを初段とし、次に演算処理をする演算ブロックを演算ブロックBとし演算ブロックZまでを順に処理する。演算ブロックBは、演算ブロックAまたはデータネットワーク3から入力データを取得する。演算ブロックBは演算ブロックAと同様にバッファ部の処理とロジック部の処理を完了し、次段の演算ブロックCに移行する。この処理を繰り返し演算ブロックZまでの演算を行う。   Then, the process proceeds to step S135 in order to perform calculation processing in the next calculation block. For example, the calculation block A is the first stage, the calculation block to be processed next is the calculation block B, and the calculation block Z is processed in order. The calculation block B acquires input data from the calculation block A or the data network 3. The calculation block B completes the processing of the buffer unit and the processing of the logic unit in the same manner as the calculation block A, and moves to the calculation block C in the next stage. This process is repeated until the calculation up to the calculation block Z is performed.

ここで、異なる演算ブロックが同時に演算を行っても問題はない。
また、本発明は、上記実施の形態に限定されるものでなく、本発明の要旨を逸脱しない範囲内で種々の改良、変更が可能である。
Here, there is no problem even if different calculation blocks perform calculations simultaneously.
The present invention is not limited to the above-described embodiment, and various improvements and modifications can be made without departing from the gist of the present invention.

Claims (9)

演算処理を実行する演算ブロックを設けた半導体集積回路であって、
入力データと前記入力データが有効なデータであるかを示すValid信号を入力し、前記有効であるときに入力データを保持する前記演算ブロックのバッファ部と、
前記バッファ部に保持した蓄積データの数が予め設定したデータ数に達したときに、前記蓄積データを利用して演算処理を実行し、前記演算処理実行後出力データと前記出力データが有効であるかを示すValid信号を出力する前記演算ブロックのロジック部と、
前記ロジック部が演算処理実行前に、電源供給をするために電源オン/オフを行う前記演算ブロックのスイッチ部の制御を行う電源スイッチ制御部と、
を具備することを特徴とする半導体集積回路。
A semiconductor integrated circuit provided with an arithmetic block for executing arithmetic processing,
A buffer portion of the arithmetic block that receives input data and a Valid signal indicating whether the input data is valid, and holds the input data when the data is valid;
When the number of stored data held in the buffer unit reaches a preset number of data, the stored data is used to execute arithmetic processing, and the output data after execution of the arithmetic processing and the output data are valid. A logic part of the arithmetic block that outputs a Valid signal indicating
A power switch control unit that controls a switch unit of the computation block that performs power on / off to supply power before the logic unit performs computation processing;
A semiconductor integrated circuit comprising:
前記演算ブロックは、
前記演算ブロックに前記入力データと前記Valid信号を入力するために設けられたデータネットワークとの接続を設定するセレクタ部と、
前記セレクタ部を介して前記入力データと前記Valid信号を入力し、前記Valid信号が有効である前記入力データを保持するデータバッファ部と、
前記Valid信号が有効なとき前記データバッファ部に前記入力データと前記Valid信号を書き込み制御信号を出力し、前記入力データが前記予め設定したデータ数になり、前記電源スイッチ制御部からの前記ロジック部への電源供給指示により、前記データバッファ部からデータ転送を開始する読み込み制御信号を前記データバッファ部に出力し、前記ロジック部への電源供給開始から前記ロジック部の演算処理終了までの時間をカウントするW/R制御部と、
を具備することを特徴とする請求項1に記載の半導体集積回路。
The calculation block is:
A selector unit for setting a connection with a data network provided for inputting the input data and the Valid signal to the arithmetic block;
A data buffer unit that inputs the input data and the Valid signal via the selector unit and holds the input data for which the Valid signal is valid;
When the Valid signal is valid, the input data and the Valid signal are written to the data buffer unit, a control signal is output, the input data reaches the preset number of data, and the logic unit from the power switch control unit In response to a power supply instruction to the data buffer unit, a read control signal for starting data transfer from the data buffer unit is output to the data buffer unit, and the time from the start of power supply to the logic unit to the end of the arithmetic processing of the logic unit is counted. A W / R control unit,
The semiconductor integrated circuit according to claim 1, comprising:
電源スイッチ制御部は、
前記ロジック部への電源供給を制御する前記スイッチ部の切り替えタイミングを周期的に通知することを特徴とする請求項1に記載の半導体集積回路。
The power switch controller
2. The semiconductor integrated circuit according to claim 1, wherein a switching timing of the switch unit that controls power supply to the logic unit is periodically notified.
前記ロジック部のリーク電流と演算に掛かる充放電電流の比に基づいて、前記ロジック部の動作周波数を決定することで、所望の消費電力を低減することを特徴とする請求項1に記載の半導体集積回路。  2. The semiconductor according to claim 1, wherein a desired power consumption is reduced by determining an operating frequency of the logic unit based on a ratio between a leakage current of the logic unit and a charge / discharge current applied to the calculation. Integrated circuit. 演算処理を実行する演算ブロックを設けた半導体集積回路であって、
入力データと前記入力データが有効なデータであるかを示すValid信号を入力し、前記有効であるときに入力データを保持し、保持した蓄積データの数が予め設定したデータ数に達したときにフル信号を発行する前記演算ブロックのバッファ部と、
前記バッファ部に保持した蓄積データの数が予め設定したデータ数に達したときに、前記蓄積データを利用して演算処理を実行し、前記演算処理実行後に出力データと前記出力データが有効であるかを示すValid信号を出力する前記演算ブロックのロジック部と、
前記ロジック部が演算処理実行前に電源供給をするために電源供給許可と前記フル信号を受信して、電源オン/オフを行う前記演算ブロックのスイッチ部の制御を行う前記演算ブロックの電源制御部と、
前記電源制御部へ電源オン/オフを制御するトークンを発行して、前記ロジック部への前記電源供給許可をし、前記ロジック部が演算処理を完了すると前記電源制御部から前記電源供給許可を取り消す戻りトークンを受信するトークン発行部と、
を具備することを特徴とする半導体集積回路。
A semiconductor integrated circuit provided with an arithmetic block for executing arithmetic processing,
When input data and a Valid signal indicating whether the input data is valid data are input, the input data is held when the input data is valid, and the number of stored data held reaches a preset number of data A buffer unit of the operation block for issuing a full signal;
When the number of accumulated data held in the buffer unit reaches a preset number of data, the accumulated data is used to perform arithmetic processing, and the output data and the output data are valid after the arithmetic processing is performed. A logic part of the arithmetic block that outputs a Valid signal indicating
The logic block receives the power supply permission and the full signal to supply power before the execution of the calculation process, and controls the switch block of the calculation block that performs power on / off. When,
Issuing a token for controlling power on / off to the power control unit, permitting the power supply to the logic unit, and canceling the power supply permission from the power control unit when the logic unit completes the arithmetic processing A token issuing unit that receives the return token;
A semiconductor integrated circuit comprising:
前記演算ブロックは、
前記演算ブロックに前記入力データと前記Valid信号を入力するために設けられたデータネットワークとの接続を設定するセレクタ部と、
前記セレクタ部を介して前記入力データと前記Valid信号を入力し、前記Valid信号が有効である前記入力データを保持するデータバッファ部と、
前記Valid信号が有効なとき前記データバッファ部に前記入力データと前記Valid信号を書き込み制御信号を出力し、前記入力データが前記予め設定したデータ数になり、前記データバッファ部からデータ転送を開始する読み込み制御信号と電源制御部にフル信号を前記データバッファ部に出力するW/R制御部と、
前記トークン発行部から発行される前記ロジック部への前記電源供給許可のトークンと前記フル信号を受信すると前記スイッチ部を切り替えて前記ロジック部に電源供給をし、前記ロジック部への電源供給開始から前記ロジック部の演算処理終了までの時間をカウントする電源制御部と、
を具備することを特徴とする請求項5に記載の半導体集積回路。
The calculation block is:
A selector unit for setting a connection with a data network provided for inputting the input data and the Valid signal to the arithmetic block;
A data buffer unit that inputs the input data and the Valid signal via the selector unit and holds the input data for which the Valid signal is valid;
When the Valid signal is valid, the input data and the Valid signal are written to the data buffer unit, a control signal is output, the input data reaches the preset number of data, and data transfer from the data buffer unit is started. A W / R control unit that outputs a read control signal and a full signal to the power control unit to the data buffer unit;
When the power supply permission token to the logic unit issued from the token issuing unit and the full signal are received, the switch unit is switched to supply power to the logic unit, and from the start of power supply to the logic unit A power supply control unit that counts the time until the arithmetic processing of the logic unit is completed;
The semiconductor integrated circuit according to claim 5, comprising:
前記ロジック部のリーク電流と演算に掛かる充放電電流の比に基づいて、前記ロジック部の動作周波数を決定することで、所望の消費電力を低減することを特徴とする請求項5に記載の半導体集積回路。  6. The semiconductor according to claim 5, wherein a desired power consumption is reduced by determining an operating frequency of the logic unit based on a ratio between a leakage current of the logic unit and a charge / discharge current applied to the calculation. Integrated circuit. 演算処理を実行する演算ブロックを設けた半導体集積回路であって、
入力データと前記入力データが有効なデータであるかを示すValid信号を入力し、前記有効であるときに入力データを保持し、保持した蓄積データの数が予め設定したデータ数に達したときにトグル信号を発行する前記演算ブロックのバッファ部と、
前記バッファ部に保持した蓄積データの数が予め設定したデータ数に達したときに、前記蓄積データを利用して演算処理を実行し、前記演算処理実行後出力データと前記出力データが有効であるかを示すValid信号を出力する前記演算ブロックのロジック部と、
前記ロジック部が演算処理実行前に電源供給をするために前記バッファ部から前記トグル信号を受信し、前記ロジック部への電源オン/オフを行う前記演算ブロックのスイッチ部の制御を行う前記演算ブロックの電源制御部と、
を具備することを特徴とする半導体集積回路。
A semiconductor integrated circuit provided with an arithmetic block for executing arithmetic processing,
When input data and a Valid signal indicating whether the input data is valid data are input, the input data is held when the input data is valid, and the number of stored data held reaches a preset number of data A buffer unit of the arithmetic block for issuing a toggle signal;
When the number of stored data held in the buffer unit reaches a preset number of data, the stored data is used to execute arithmetic processing, and the output data after execution of the arithmetic processing and the output data are valid. A logic part of the arithmetic block that outputs a Valid signal indicating
The arithmetic block that receives the toggle signal from the buffer unit to supply power before the arithmetic processing is executed, and controls the switch unit of the arithmetic block that performs power on / off to the logic unit. A power control unit of
A semiconductor integrated circuit comprising:
前記ロジック部のリーク電流と演算に掛かる充放電電流の比に基づいて、前記ロジック部の動作周波数を決定することで、所望の消費電力を低減することを特徴とする請求項5に記載の半導体集積回路。  6. The semiconductor according to claim 5, wherein a desired power consumption is reduced by determining an operating frequency of the logic unit based on a ratio between a leakage current of the logic unit and a charge / discharge current applied to the calculation. Integrated circuit.
JP2008522264A 2006-06-30 2006-06-30 Semiconductor integrated circuit Expired - Fee Related JP4551474B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/313099 WO2008001461A1 (en) 2006-06-30 2006-06-30 Semiconductor integrated circuit

Publications (2)

Publication Number Publication Date
JPWO2008001461A1 JPWO2008001461A1 (en) 2009-11-26
JP4551474B2 true JP4551474B2 (en) 2010-09-29

Family

ID=38845236

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008522264A Expired - Fee Related JP4551474B2 (en) 2006-06-30 2006-06-30 Semiconductor integrated circuit

Country Status (2)

Country Link
JP (1) JP4551474B2 (en)
WO (1) WO2008001461A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8989100B2 (en) 2011-03-30 2015-03-24 Panasonic Corporation Wireless communication device and semiconductor device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5228600B2 (en) * 2008-04-23 2013-07-03 日本電気株式会社 Information communication device, low power consumption circuit, and power consumption reduction method used therefor
JP5703605B2 (en) * 2010-06-28 2015-04-22 富士通セミコンダクター株式会社 Semiconductor integrated circuit
US11116263B2 (en) 2013-11-21 2021-09-14 Medline Industries, Inc. Gown for self-donning while maintaining sterility and methods therefor
JP6722986B2 (en) * 2014-07-04 2020-07-15 株式会社半導体エネルギー研究所 Semiconductor device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06196997A (en) * 1991-08-06 1994-07-15 American Teleph & Telegr Co <Att> Data output device, its method and storage device
WO2002065642A1 (en) * 2001-02-15 2002-08-22 Hitachi,Ltd Semiconductor integrated circuit, data processing system, and mobile communication terminal apparatus
JP2003124794A (en) * 2001-10-10 2003-04-25 Sharp Corp Semiconductor integrated circuit and semiconductor device using the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06196997A (en) * 1991-08-06 1994-07-15 American Teleph & Telegr Co <Att> Data output device, its method and storage device
WO2002065642A1 (en) * 2001-02-15 2002-08-22 Hitachi,Ltd Semiconductor integrated circuit, data processing system, and mobile communication terminal apparatus
JP2003124794A (en) * 2001-10-10 2003-04-25 Sharp Corp Semiconductor integrated circuit and semiconductor device using the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8989100B2 (en) 2011-03-30 2015-03-24 Panasonic Corporation Wireless communication device and semiconductor device

Also Published As

Publication number Publication date
JPWO2008001461A1 (en) 2009-11-26
WO2008001461A1 (en) 2008-01-03

Similar Documents

Publication Publication Date Title
JP4974202B2 (en) Semiconductor integrated circuit
US7673163B2 (en) Semiconductor integrated circuit device with power source areas
US9785211B2 (en) Independent power collapse methodology
JP4551474B2 (en) Semiconductor integrated circuit
JP2007102994A (en) Multi-chip semiconductor memory device having internal power supply voltage generation circuit for decreasing current consumption
JP2008503084A (en) Adaptive control of power supplies for integrated circuits.
JP4494390B2 (en) Chips and systems
JP2002351737A (en) Semiconductor storage device
JP2008078892A (en) Semiconductor integrated-circuit device and electronic device
JP2005157620A (en) Semiconductor integrated circuit
JP2007226632A (en) Microcomputer
JP6092019B2 (en) Processor
JP2013109747A (en) Power control for memory device
JP2004038642A (en) Multiprocessor
EP1271551A3 (en) Semiconductor memory device and information device
JP2004070854A (en) Data processor
JP2006268390A (en) Serial interface circuit
JPWO2005013107A1 (en) Semiconductor device and driving method of semiconductor device
JP2004274099A (en) Packet processing circuit
JP5408743B2 (en) mobile phone
JP2002341976A (en) Multi-power semiconductor device and method for controlling power of the same device
JP4521676B2 (en) Semiconductor integrated circuit device
JP2006201856A (en) Semiconductor integrated circuit
JP4894218B2 (en) Semiconductor integrated circuit
JP2004335686A (en) High speed low consumption power logic device

Legal Events

Date Code Title Description
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: 20100706

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100709

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees