JP4941470B2 - 半導体集積装置及び半導体集積装置の消費電力平準化方法 - Google Patents

半導体集積装置及び半導体集積装置の消費電力平準化方法 Download PDF

Info

Publication number
JP4941470B2
JP4941470B2 JP2008536269A JP2008536269A JP4941470B2 JP 4941470 B2 JP4941470 B2 JP 4941470B2 JP 2008536269 A JP2008536269 A JP 2008536269A JP 2008536269 A JP2008536269 A JP 2008536269A JP 4941470 B2 JP4941470 B2 JP 4941470B2
Authority
JP
Japan
Prior art keywords
data
clock signal
output
circuit
synchronized
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
JP2008536269A
Other languages
English (en)
Other versions
JPWO2008038391A1 (ja
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 JPWO2008038391A1 publication Critical patent/JPWO2008038391A1/ja
Application granted granted Critical
Publication of JP4941470B2 publication Critical patent/JP4941470B2/ja
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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Logic Circuits (AREA)
  • Manipulation Of Pulses (AREA)
  • Microcomputers (AREA)

Description

本発明は、消費電力を平準化した半導体集積装置及び半導体集積装置の消費電力の平準化方法に関する。
クロックの立ち上がりエッジまたは立ち下がりエッジに同期して動作する相補型トランジスタ等で構成される半導体集積回路では、充放電タイミングが全てのトランジスタで同時であるために、そのときの消費電力が非常に大きくなる。そのため電源電圧が一時的に低下してトランジスタが誤動作することがある。そのような問題を回避するために従来は電源パターンを太くし、さらに電源強化用のキャパシタを設けていた。
図12は、従来の同期式の演算ブロックのブロック図である。半導体集積回路120は、複数の演算ブロック121、122・・・12nと、データネットワーク131とを有する。各演算ブロック121、122・・・12nは、同相クロック信号CLKに同期したタイミングで動作する。
図13は、図12の半導体集積回路120の消費電力を示す図である。図13に示すように同相クロック信号CLKの立ち上がりのタイミングで各演算ブロック121〜12nが動作するので、同相クロック信号CLKの立ち上がり時に消費電力が最大となる。従って、半導体集積回路120の全体の消費電力のピーク値も同相クロック信号CLKの立ち上がりのタイミングとなる。
特許文献1には、回路で発生する電磁波ノイズを低減するために、位相の異なる複数のクロック信号を複数の回路ブロックに供給することが記載されている。特許文献1の発明は、回路で発生する電磁波ノイズを低減するためのものであり、消費電力の平準化を目的としたものではない。
特開2004−164293号公報
本発明の課題は、半導体集積回路の消費電力を平準化することである。
本発明の半導体集積装置は、第1のクロック信号に同期したタイミングで動作する第1の演算回路群と、前記第1のクロック信号と所定の位相差を有する第2のクロック信号に同期したタイミングで動作する第2の演算回路群と、前記第2の演算回路群の出力データを前記第1のクロック信号に同期したデータに変換して前記第1の演算回路群に出力するタイミング変換回路とを備える。
この発明によれば、半導体集積装置内の第1の演算回路群と第2の演算回路群の消費電力が最大となるタイミングをずらすことができる。これにより半導体集積回路の電源パターンに流れる最大電流を少なくできるので、電源パターンのパターン幅を狭くできる。また、電源と接地間に挿入するキャパシタの容量を小さくできるので、半導体集積装置上に形成するキャパシタのデバイス面積を小さくできる。
上記の発明の半導体集積装置において、前記タイミング変換回路は、前記第1の演算回路群の出力データを前記第2のクロック信号に同期したデータに変換して前記第2の演算回路群に出力する。
このように構成することで、第1の演算回路群と第2の演算回路群を異なる位相のクロック信号で動作させたときに、第1の演算回路群の出力データを第2のクロック信号に同期させ、かつ第2の演算回路群の出力データを第1のクロック信号に同期させることができる。これにより、異なる位相のクロック信号に同期して動作する第1の演算回路群の出力データと第2の演算回路群の出力データを相互に入力して演算を行うことができる。
上記の発明の半導体集積装置において、前記タイミング変換回路は、前記第2のクロック信号に同期したタイミングでデータをラッチする入力側のラッチ回路と、ラッチされたデータを記憶する記憶部と、前記記憶部に記憶されたデータを前記第1のクロック信号に同期したタイミングでラッチする出力側のラッチ回路とを有する。
このように構成することで、ラッチ回路と記憶部とでデータの出力タイミングを変換することができる。
上記の発明において、前記第1のクロック信号に同期して動作する前記第1の演算回路群と、前記第1の演算回路群の入出力データが送出される第1のデータネットワークを第1の領域に配置し、前記第2のクロック信号に同期して動作する前記第2の演算回路群と前記第2のデータネットワークとを第2の領域に配置し、前記タイミング変換回路を前記第1の領域と前記第2の領域の間に配置した。
このように構成することで第2の領域に配置した第2の演算回路群の出力データを、第1のクロック信号に同期したデータに変換して第1の領域に配置した第1の演算回路群に出力することができる。
上記の発明の半導体集積装置において、前記第1及び第2のクロック信号と所定の位相差を有する第3のクロック信号に同期したタイミングで動作する第3の演算回路群を有し、前記タイミング変換回路は、前記第1のクロック信号に同期したデータを、前記第2のクロック信号に同期したデータに変換して前記第2の演算回路群に出力する第1のタイミング変換回路と、前記第2のクロック信号に同期したデータを、前記第3のクロック信号に同期したデータに変換して前記第3の演算回路群に出力する第2のタイミング変換回路とを有する。
このように構成することで3種類のクロック信号で第1、第2、第3の演算回路群を動作させたときに、各演算回路群の出力データを出力対象の演算回路群が動作するクロックタイミングに合わせることができる。
上記の発明の半導体集積装置において、前記タイミング変換回路は、前記第1の演算回路群の複数の演算回路の出力データを、前記第1のクロック信号に同期したタイミングでラッチする入力側の複数の第1のラッチ回路と、ラッチされたデータを記憶する複数の第1の記憶部と、前記複数の第1の記憶部に記憶されたデータを前記第2のクロック信号に同期したタイミングでラッチする出力側の複数の第2のラッチ回路と、前記第2の演算回路群の複数の演算回路の出力データを、前記第2のクロック信号に同期したタイミングでラッチする入力側の複数の第3のラッチ回路と、ラッチされたデータを記憶する複数の第2の記憶部と、前記複数の第2の記憶部に記憶されたデータを前記第1のクロック信号に同期したタイミングでラッチする出力側の複数の第4のラッチ回路とを有する。
このように構成することで第1の演算回路群の複数の演算回路の出力データを、複数の入力側の第1のラッチ回路と、出力側の複数の第1のラッチ回路とクロック信号に同期したタイミングで複数の第1のラッチ回路にラッチする。
このように構成することで第1の演算回路群の複数の演算回路から出力される複数の出力データを、同時にまたは前後したタイミングで第2クロック信号に同期したデータに変換して第2の演算回路群に出力することができる。また、第2の演算回路群の複数の演算回路から出力される複数の出力データを、同時または前後したタイミングで第1のクロック信号に同期したデータに変換して第1の演算回路群に出力することができる。これにより第1または第2の演算回路群からデータが輻輳して出力される場合でも、それらのデータのクロックタイミングを変換して演算回路群に出力することができる。
第1の実施の形態の半導体集積回路のブロック図である。 第1の実施の形態の具体的構成を示す図である。 演算ブロックの動作を示すタイミングチャートである。 第2の実施の形態の半導体集積回路のブロック図である。 第2の実施の形態の演算ブロックの動作を示すタイミングチャートである。 第3の実施の形態の半導体集積回路のブロック図である。 第3の実施の形態の具体的構成を示す図である。 第3の実施の形態の動作を示すフローチャートである。 第3の実施の形態の主要部のブロック図である。 第3の実施の形態の動作を示すタイミングチャートである。 第4の実施の形態の半導体集積回路のブロック図である。 従来の同期式回路のブロック図である。 同期式回路の消費電力を示す図である。
以下、本発明の好適な実施の形態を図面を参照して説明する。図1は、本発明の第1の実施の形態の消費電力平準化回路を含む半導体集積回路(半導体集積装置)10のブロック図である。この第1の実施の形態は、演算ブロックに供給するクロック信号の位相が2相の場合の例である。
半導体集積回路10は、複数の演算ブロック11,12・・・1nと、入力データと演算結果のデータが送出されるデータネットワーク9と、クロック信号CLKを反転するインバータ20とを有する。演算ブロック11〜1n,インバータ20等は、例えば、相補型MOSトランジスタで構成されている。
演算ブロック(演算ブロックA)11は、入力バッファ21と演算コア22と出力バッファ23とを有する。また、演算ブロック(演算ブロックB)12も入力バッファ24と演算コア25と出力バッファ26を有する。他の演算ブロックも同様の構成を有する。
演算ブロック11〜1nは、2つの演算ブロック群、例えば、奇数番目の演算ブロック群と偶数番目の演算ブロック群に分けられている。奇数番目の演算ブロック11には、同相クロック信号CLKが供給され、偶数番目の演算ブロック12には、同相クロックCLKを反転した逆相クロック信号CLKバー(反転信号を指す)が供給されている。
奇数番目の演算ブロック群(第1または第2の演算回路群に対応する)は、同相クロック信号CLK(以下、CLK1と呼ぶ)の立ち上がりに同期して動作し、偶数番目の演算ブロック群(第1または第2の演算回路群に対応する)は、逆相クロック信号CLK(以下、CLK2と呼ぶ)の立ち上がり(同相クロック信号CLK1の立ち下がり)に同期して動作する。
従って、同相クロック信号CLK1に同期して動作する演算ブロック群の消費電力が最大となるタイミングと、逆相クロック信号CLK2に同期して動作する演算ブロック群の消費電力が最大となるタイミングは半周期ずれることになる。これにより、半導体集積回路10の消費電力の最大値を小さくして消費電力を平準化できる。消費電力を平準化することで電源回路の最大電流容量を小さくできるので、電源パターン幅を狭く設計でき、電源と接地間に挿入するキャパシタの容量も小さくできる。キャパシタの容量を小さくすることで半導体集積回路上に形成するキャパシタのデバイス面積を小さくできる。
図1のインバータ20と演算ブロック11及び12の入力バッファ21、24、出力バッファ23、26等が消費電力平準化回路に該当する。
次に、図2は、半導体集積回路10の演算ブロック11及び12の具体的構成を示す図である。なお、図2には、説明を簡単にするために、2個の演算ブロック11,12のみを示してある。
同相クロック信号CLK1に同期して動作する演算ブロック(演算ブロックA)11の入力バッファ21はFIFO形式のRAMであり、入力側のフリップフロップ21aと、RAMコア21bと、出力側のフリップフロップ21cとからなる。演算コア22は、入力側のフリップフロップ22aと、論理ゲート等からなる組み合わせ回路22bと、出力側のフリップフロップ22cとからなる。出力バッファ23もFIFO形式のRAMであり、フリップフロップ23aと、RAMコア23bと、フリップフロップ23cとからなる。
入力バッファ21の入力側のフリップフロップ21a、出力側のフリップフロップ21cと、出力バッファ23の入力側のフリップフロップ23a、出力側のフリップフロップ23cは、同相クロック信号CLK1の立ち上がりのタイミングでデータをラッチする。演算コア22のフリップフロップ22a、22cも同相クロック信号CLK11の立ち上がりのタイミングでデータをラッチする。
逆相クロック信号CLK2に同期して動作する演算ブロック(演算ブロックB)12の入力バッファ24、演算コア25、出力バッファ26も演算ブロック11と同じ構成を有する。
ただし、演算ブロック12の入力バッファ24の入力側のフリップフロップ24aは、同相クロック信号CLK1の立ち上がりのタイミングでデータをラッチするが、出力側のフリップフロップ24cは、逆相クロック信号CLK2の立ち上がり(同相クロック信号CLK1の立ち下がり)のタイミングでRAMコア24bから出力されるデータをラッチする。
演算コア25の入力側のフリップフロップ25aと出力側のフリップフロップ25cは、逆相クロック信号CLK2の立ち上がりのタイミングでデータをラッチする。
出力バッファ26の入力側のフリップフロップ26aは、演算コア25の出力データを逆相クロック信号CLK2の立ち上がりのタイミングでラッチし、出力側のフリップフロップ26cは、RAMコア26bから出力されるデータを、同相クロック信号CLK1の立ち上がりのタイミングでラッチする。
すなわち、演算ブロック12は、演算ブロック11の出力データを同相クロック信号CLK1に同期したタイミング(同相クロック信号CLK1の立ち上がり)でラッチし、ラッチしたデータに所定の演算を行った後、そのデータを逆相クロック信号CLK2に同期したタイミング(逆相クロック信号CLK2の立ち上がり)でラッチして出力する。
ここで、上記の演算ブロック11及び12の動作を、図3のタイミングチャートを参照して説明する。図3のタイミングチャートの(1)、(2)等の符号で示すデータは、図2の回路の(1)、(2)で示される点の入力データまたは出力データに対応している。
図3の(1)に示すタイミングでデータネットワーク9上にデータD0、D1、D2、D3、D4・・・が出力される。
次に、図3の(2)に示すタイミングで、演算ブロック11のフリップフロップ21aが、同相クロック信号CLK1の立ち上がりに同期してデータD1、D2、D3、DE4・・・をラッチしてRAMコア21bに出力する。
次に、図3の(3)に示すタイミングで、演算コアがラッチされたデータに対して演算を行う。図3には、入力バッファ21のRAMコア21bの出力遅延時間が、同相クロック信号CLK1の4サイクル分ある場合の演算タイミングを示してある。
次に、図3の(4)に示すタイミングで、出力バッファ23のフリップフロップ23aが、同相クロック信号CLK1の立ち上がりに同期して、演算コア22から出力される演算データD1、D2、D3、D4・・・をラッチする。
次に、図3の(5)に示すタイミングで、入力バッファ24のRAMコア24bが、同相クロック信号CLK1の立ち上がりに同期して、演算ブロック11の出力データD1、D2、D3、D4・・・をラッチする。
次に、図3の(6)に示すタイミングで、入力バッファ24の出力側のフリップフロップ24cが、逆相クロック信号CLK2の立ち上がり(同相クロック信号CLK1の立ち下がり)に同期して、RAMコア24bの出力データD1、D2、D3、D4・・・をラッチし、ラッチしたデータを演算コア25に出力する。
次に、図3の(7)に示すタイミングで、演算コア25の入力側のフリップフロップ25aが、逆相クロック信号CLK2の立ち上がりに同期して、入力バッファ24から出力されるデータD1、D2、D3、D4・・・をラッチし、組み合わせ回路25bがそのデータの演算を開始する。
次に、図3の(8)に示すタイミングで、出力バッファ26の入力側のフリップフロップ26aが、逆相クロック信号CLK2の立ち上がりに同期して、演算コア25の出力データD1、D2、D3、D4・・・をラッチする。
次に、図3の(9)に示すタイミングで、出力バッファ26の出力側のフリップフロップ26cが、同相クロック信号CLK1の立ち上がりに同期して、RAMコア26bの出力データD1、D2、D3、D4・・・をラッチする。
上述した第1の実施の形態は、半導体集積回路10の複数の演算ブロックを2つの演算ブロック群に分け、一方の演算ブロック群を同相クロック信号CLK1の立ち上がりに同期して動作させ、他方の演算ブロック群をその同相クロック信号CLK1の逆位相の逆相クロック信号CLK2の立ち上がりに同期して動作させる。これにより、第1の演算ブロック群の消費電力が最大値となるタイミングと、第2の演算ブロック群の消費電力が最大値となるタイミングを半周期ずらすことができる。よって、それらの演算ブロック群に電力を供給する電源回路の最大電流容量を1/2にすることができる。また、電源回路の最大電流容量を小さくできるので電源と接地との間に設けるキャパシタの容量も小さくできる。これにより半導体集積回路10上に形成するキャパシタのデバイス面積を小さくできる。さらに、最大電流が小さくなるので電源線のパターン幅も狭くできる。
次に、図4は、第2の実施の形態の消費電力平準化回路を含む半導体集積回路30のブロック図である。この第2の実施の形態は、演算ブロックに供給するクロック信号の位相がn相の場合の例である。
図4において、半導体集積回路30は、n個の演算ブロック31、32,33・・3nと、データネットワーク41と、n位相クロック生成部42とからなる。
n位相クロック生成部42は、入力データと同期するクロックCLK1と、そのクロック信号と同じ周期で所定の位相差を有するクロック信号CLK2、CLK3・・・CLKnを生成する。
1番目の演算ブロック31には、クロック信号CLK1が供給され、2番目の演算ブロック32には、クロック信号CLK1と所定の位相差を有するクロック信号CLK2が供給されている。また、3番目の演算ブロック33には、クロック信号CLK1,CLK2と所定の位相差を有するクロック信号CLK3が供給される。以下、同様に他の演算ブロック3nにも所定の位相差を有するクロック信号CLKnが供給される。
ここで、図4の半導体集積回路30の消費電力について図5を参照して説明する。
第2の実施の形態では、n個の演算ブロックにそれぞれ位相の異なるn個のクロック信号CLK1〜CLKnが供給されている。
クロック信号CLK1が供給される演算ブロック31のMOSトランジスタは、クロック信号CLK1の立ち上がりのタイミングでONとなるので、図5に示すように、演算ブロック31の消費電力はクロック信号CLK1の立ち上がりのタイミングで最大となる。
同様に、クロック信号CLK2が供給される演算ブロック32のMOSトランジスタは、クロック信号CLK2の立ち上がりでONとなる。従って、図5に示すように、演算ブロック32の消費電力は、クロック信号CLK1と所定の位相差を有するクロック信号CLK2の立ち上がりのタイミングで最大となる。
以下同様に、クロック信号CLKnが供給される演算ブロック3nは、クロック信号CLKnの立ち上がりのタイミングでオンとなる。従って、演算ブロック3nの消費電力は、クロック信号CLK1,CLK2・・・CLKn−1と所定の位相差を有するクロック信号CLKnの立ち上がりのタイミングで最大となる。
この第2の実施の形態によれば、n個の演算ブロックをn位相のクロック信号CLK1〜CLKnで動作させることで、演算ブロックの消費電力の合計値のピーク値を約1/nにすることができる。これにより電源回路の最大電流容量を小さく設計できるので、電源線と接地間に接続する電源用キャパシタの容量を小さくできる。これにより半導体集積回路30上に形成するMOSトランジスタのデバイス面積を第1の実施の形態に比べて小さくできる。また、電源回路の最大電流が小さくなることから電源線のパターン幅を狭くすることができる。
次に、図6は、第3の実施の形態の消費電力平準化回路を含む半導体集積回路50のブロック図である。
この第3の実施の形態は、逆相クロック信号CLK2で動作する演算ブロックの出力データを同相クロック信号CLK1に同期したデータに変換する、あるいは同相クロック信号CLK1で動作する演算ブロックの出力データを逆相クロック信号CLK2に同期したデータに変換する回路(この回路をクロック乗り換えチャネルと呼ぶ)を演算ブロックの外部に設け、複数の演算ブロックが共通してクロック乗り換えチャネルを使用できるようにしたものである。第3の実施の形態は、演算ブロックに供給するクロック信号の位相が2種類の場合の例である。
図6の半導体集積回路50は、同相クロック動作領域71に配置された演算ブロック51,52・・・5nと、データネットワーク(バスまたはクロスバースイッチ)73と、クロック乗り換えチャネル(タイミング変換回路に対応する)74と、逆相クロック動作領域72に配置された演算ブロック61,62・・・6nと、データネットワーク75と、同相クロック信号CLK1の反転信号を生成するインバータ76と、データネットワーク75のデータを同相クロック信号CLK1に同期させる同相乗り換え回路77を有する。
クロック乗り換えチャネル74は、複数の演算ブロックの出力データを同時に処理できるように同様な構成を有する複数の回路で構成されている。クロック乗り換えチャネル74は、逆相クロック動作領域72の演算ブロック61〜6nで演算されたデータを、同相クロック信号CLK1の立ち上がりのタイミングでラッチして同相クロック動作領域71の演算ブロックに出力する。また、クロック乗り換えチャネル74は、同相クロック動作領域71の演算ブロックで演算されたデータを、逆相クロック信号CLK2の立ち上がりのタイミングでラッチして逆相クロック動作領域72の演算ブロックに出力する。
図6の逆相クロック動作領域72の演算ブロック61〜6nの回路構成は、図2の逆相クロック信号CLK2で動作する演算ブロック12の回路構成とは異なっている。具体的に言うと、図2の演算ブロック12は、逆相クロック信号CLK2の立ち上がりに同期したデータを、同相クロック信号CLK1の立ち上がりに同期したデータに変換するために、出力バッファ26に同相クロック信号CLK1の立ち上がりのタイミングでデータをラッチするフリップフロップ26cを設ける必要があった。
これに対して、第3の実施の形態では、クロック乗り換えチャネル74において、逆相クロック信号CLK2に同期したデータが同相クロック信号CLK1に同期したデータに変換されるので、同相クロック動作領域71の演算ブロック51〜5nと逆相クロック動作領域72の演算ブロック61〜6nには、データのタイミングを調整するための回路を設ける必要が無い。
すなわち、第3の実施の形態の半導体集積回路50は、各演算ブロックがデータのクロックタイミングを変換するための回路を持つ必要が無い。クロック乗り換えチャネル74のデータのクロックタイミングを変換するための回路の数は、全ての演算ブロックの出力データを同時に処理する必要はないので演算ブロックの数より少なくて良い。従って、クロック乗り換えチャネル74を用いることで半導体集積回路50のデータのクロックタイミングを変換するための回路の回路規模を小さくできる。
図6において、逆相クロック信号CLK2を供給するインバータ76と、データのクロックタイミングを変換するクロック乗り換えチャネル74が消費電力平準化回路に該当する。
図7は、第3の実施の形態の具体的構成を示す図である。以下、図6と同じブロックには同じ符号を付けてそれらの説明は省略する。
スイッチSW0は、データ入力ポートをオン、オフするスイッチである。データネットワーク73は、複数のスイッチSW1〜SWnからなり、入力データまたは演算結果のデータを各演算ブロック51〜5nに出力する。
逆相クロック動作領域72のデータネットワーク75も同様に複数のスイッチSW21〜SW2nからなり、入力データまたは演算結果のデータを各演算ブロック61〜6nに出力する。
クロック乗り換えチャネル74は、FIFO形式のRAM81からなり、逆相クロック動作領域72の演算ブロック61〜6nの出力データを、同相クロック信号CLK1に同期したデータに変換して同相クロック動作領域71のデータネットワーク73に出力する。
なお、図7には、逆相クロック動作領域72の演算ブロックで演算されたデータのクロックタイミングを変換するRAM81のみを示してあるが、クロック乗り換えチャネル74は双方向のクロック乗り換え機能を有しており、同相クロッククロック信号CLK1に同期したデータを、逆相クロック信号CLK2に同期したデータに変換する回路が同様に設けられている。クロック乗り換えチャネル74には、データのクロックタイミングを変換する回路が複数設けられており、演算ブロックから出力されるデータが輻輳した場合にも、複数のデータを同時に処理することができる。
制御部78は、外部から与えられる制御設定情報とリセット信号とに基づいて、データ入力ポートのスイッチSW0、データネットワーク73のスイッチSW1〜SWn及びデータネットワーク75のスイッチSW21〜SW2nをオンまたはオフに設定すると共に、それぞれの回路をリセットする。制御部78は、図示しない設定情報格納用レジスタを有し、データネットワーク73及び75のそれぞれのスイッチSWのオン、オフを制御するデータを設定情報格納用レジスタに保持する。
ここで、上記の半導体集積回路50の動作を図7を参照して説明する。今、逆相クロック動作領域72の演算ブロック61で演算が行われ、演算結果のデータのクロックタイミングを変換する場合について説明する。
逆相クロック動作領域72の演算ブロック61は、入力データまたは他の演算ブロックで演算されたデータを、逆相クロック信号CLK2の立ち上がりのタイミングでラッチし、ラッチしたデータに対して所定の演算を行う。演算結果のデータは、データネットワーク75に出力され、スイッチSW21を介してクロック乗り換えチャネル74に出力される。
クロック乗り換えチャネル74の入力側のフリップフロップ81aは、データネットワーク75上のデータを同相クロック信号CLK1の立ち上がりのタイミングでラッチする。ラッチされたデータはRAMコア81bに格納される。RAMコア81bから読み出されたデータは、同相クロック信号CLK1の立ち上がりのタイミングで出力側のフリップフロップ81cにラッチされ、同相クロック動作領域71のデータネットワーク73に送出される。これにより、逆相クロック信号CLK2の立ち上がりに同期したデータを、同相クロック信号CLK1の立ち上がりに同期したデータに変換することができる。
図8は、制御部78と演算ブロックの動作を示すフローチャートである、
制御部78は、LSI外部から与えられるリセット信号に基づいて回路全体をリセットする信号を出力する(図8,S11)。このとき同時に制御部78は、入力データポートに接続されるスイッチSW0をリセットする信号も出力する。
リセット信号を一定時間出力したなら、制御部78はリセットを解除する(S12)。次に、制御部78は、LSI外部からデータネットワーク73、75のスイッチのオン、オフを決めるON/OFF情報をダウンロードする(S13)。
次に、制御部78は、ダウンロードしたON/OFF情報に基づいてデータネットワーク73、75のスイッチをオン、オフする(S14)。
次に、入力データポートを開閉するスイッチSW0をオンにするイネーブル信号を出力し、入力データポートにデータを入力させる(S15)。
演算が終了したなら、制御部78は、リセット信号を出力してデータネットワーク73、75のスイッチをオフ状態にリセットし、入力データポートのスイッチSW0をオフにする(S16)。
次に、データネットワーク73、75のスイッチの設定を変更する指示を受けたか否かを判別する(S17)。スイッチの設定を変更する指示を受けている場合には(S17,YES)、ステップS11に戻り上述した処理を繰り返す。他方、データネットワーク73及び75のスイッチの設定の変更指示を受けていない場合には(S17、NO)、ステップS18に進み、演算を継続するか否かを判別する。演算を継続する場合には(S18、YES)、ステップS15に戻り、入力データポートを開き、演算を実行する。演算を終了する場合には(S18、NO)、そこで処理を終了する。
次に、図9は、第3の実施の形態の主要部のブロック図であり、図10は、そのタイミングチャートである。
以下、図9と図10を参照して、同相クロック動作領域71の演算ブロック51、52の出力データを、逆相クロック信号CLK2に同期したデータに変換して演算ブロック61、62に出力し、さらに、演算ブロック61、62の出力データを同相乗り換え回路77で同相クロック信号CLK1に同期したデータに変換して半導体集積回路の外部に出力する場合の回路動作を説明する。
同相クロック動作領域71(図7参照)の演算ブロック51,52は、それぞれ出力側のフリップフロップ51a、52aにラッチしたデータをデータネットワーク73を介してクロック乗り換えチャネル74に出力する。
図10の(1)に示すタイミングで同相クロック動作領域71の複数の演算ブロックで演算されたデータがクロック乗り換えチャネル74に出力される。。
クロック乗り換えチャネル74は、例えば、2個のFIFO形式のRAM81、82を有している。RAM81、82は、演算ブロック51、52の出力データを同相クロック信号CLK1の立ち上がりのタイミングでラッチし、ラッチしたデータをRAMコア81b、82bに格納する。さらに、RAM81b、82bから読み出したデータを逆相クロック信号CLK2の立ち上がりのタイミングでラッチし、ラッチしたデータをデータネットワーク75を介して演算ブロック61、62に出力する。
図10の(2)に示すタイミングでRAM81、82にラッチされたデータが逆相クロック動作領域72の演算ブロック61、62に出力される。
クロック乗り換えチャネル74から出力されるデータは、演算ブロック61、62において、逆相クロック信号CLK2の立ち上がりのタイミングでフリップフロップ61a、62aにそれぞれラッチされる。そして、組み合わせ回路61b、62bにおいて所定の演算が実行され、逆相クロック信号CLK2の立ち上がりのタイミングにフリップフロップ61c、62cにラッチされて同相乗り換え回路77に出力される(図10の(3)のタイミング)。
図10の(3)に示すタイミングで、逆相クロック動作領域72の複数の演算ブロックから同時に演算データが出力される。
同相乗り換え回路77は、FIFO形式の2個のRAM111,112で構成されいる。RAM111は、逆相クロック信号CLK2で動作する入力側のフリップフロップ111aと、RAMコア111bと、同相クロック信号CLK1で動作する出力側のフリップフロップ111cからなる。RAM112も同様に入力側のフリップフロップ112aと、RAMコア112bと、出力側のフリップフロップ112cからなる。
同相乗り換え回路77の出力側のフリップフロップ111cは、RAMコア111bのデータを、同相クロック信号CLK1の立ち上がりのタイミングでラッチし、ラッチしたデータを外部に出力する。同様に、フリップフロップ112cは、RAMコア112bから出力されるデータを同相クロック信号CLK1の立ち上がりのタイミングでラッチし、ラッチしたデータを外部に出力する。
図10の(4)に示すタイミングで、同相乗り換え回路77の出力側のフリップフロップ111c、112cから同相クロック信号CLK1に同期したデータが出力される。
上述した第3の実施の形態によれば、同相クロック動作領域71の演算ブロック51〜5nと逆相クロック動作領域72の演算ブロック61〜6nを逆位相のクロック信号で動作させることで、演算ブロックの消費電力の最大値を従来の1/2に減らすことができる。これにより、電源回路の最大電流容量を小さくできるので電源と接地との間に設けるキャパシタの容量も小さくできる。これにより半導体集積回路10上に形成するキャパシタのデバイス面積を小さくできる。さらに、最大電流容量が小さくなるので電源線のパターン幅も狭くできる。
さらに、データのクロックタイミングを変換するクロック乗り換えチャネル74を設けることで、個々の演算ブロックにデータの出力タイミングを変換するフリップフロップ等のラッチ回路を設ける必要が無くなるので、データのクロックタイミングを変換するための回路規模を小さくできる。
図11は、第4の実施の形態の消費電力平準化回路を含む半導体集積回路90のブロック図である。以下、図6と同じ回路ブロックには同じ符号を付けてそれらの説明は省略する。
この第4の実施の形態は、位相の異なる3種類のクロック信号を用いて演算ブロックを動作させる場合の例である。
図9の半導体集積回路90は、同相クロック動作領域71に配置された演算ブロック51,52・・・5nと、データネットワーク73と、クロック乗り換えチャネル91と、2/3位相クロック動作領域92に配置された演算ブロック61,62・・・6nと、データネットワーク94と、クロック乗り換えチャネル95と、4π/3位相クロック動作領域93に配置された演算ブロック101、102と、同相乗り換え回路97、n位相クロック生成部98とを有する。
クロック乗り換えチャネル91,95及び同相乗り換え回路97の構成は、第3の実施の形態と同じである。
この第4の実施の形態は、同相クロック信号CLK1に同期して動作する演算ブロック51〜5nと、同相クロック信号CLK1に対して2π/3の位相差を有するクロック信号CLK2に同期して動作する演算ブロック61〜6nと、同相クロック信号CLK1に対して4π/3の位相差を有するクロック信号CLK3に同期して動作する演算ブロック101,102の3つの演算ブロック群に分けたものである。
また、2π/3位相クロック動作領域92のデータネットワーク94上のデータを、同相クロック信号CLKに対して4π/3の位相差を有するクロック信号CLK3に同期したデータに変換するクロック乗り換えチャネル95と、同相クロック動作領域71のデータネットワーク73上のデータを、同相クロック信号CLK1に対して2π/3の位相差を有するクロック信号CLK2に同期したデータに変換するクロック乗り換えチャネル91とを設けている。
第4の実施の形態は、複数の演算ブロックを位相の異なる3種類のクロック信号CLK1〜CLK3で動作させることで、演算ブロック全体の消費電力の最大値を1/3にすることができる。電源回路から出力する最大電流が小さくなるので電源線のパターン幅を狭くできる。また、電源回路の最大電流を小さくできるので電源線と接地との間に設けるキャパシタの容量も小さくでき、半導体集積回路10上に形成するキャパシタのデバイス面積を小さくできる。さらに、個々の演算ブロックにデータの出力タイミングを同相クロック信号CLK1に同期させるための回路を設ける必要が無くなるので半導体集積回路全体の回路規模を小さくできる。
本発明は上述した実施の形態に限らず、例えば、以下のように構成しても良い。
(1)演算ブロックの入力バッファ24及び出力バッファ26は、フリップフロップとRAMとからなる回路に限らず、同相クロック信号CLK1に同期したデータのラッチタイミングを変更できる回路であればどのようなものでも良い。
(2)クロック乗り換えチャネル74は、逆相クロック動作領域72の演算ブロックの出力データを同相クロック信号CLK1に同期したデータに変換する回路または同相クロック動作領域71の演算ブロックの出力データを逆相クロック信号CLK2に同期したデータに変換する回路の一方のみを有するようにしても良いし、両方を有するようにしても良い。
(3)本発明は相補型MOSトランジスタに限らず、バイポーラトランジスタ等にも適用できる。

Claims (10)

  1. 第1のラッチ回路と、前記第1のラッチ回路から出力されるデータを受け取る第1の組み合わせ回路と、前記第1の組み合わせ回路から出力されるデータをラッチする第2のラッチ回路とを含み、第1のクロック信号に同期したタイミングで動作する第1の演算回路群と、
    第3のラッチ回路と、前記第3のラッチ回路から出力されるデータを受け取る第2の組み合わせ回路と、前記第2の組み合わせ回路から出力されるデータをラッチする第4のラッチ回路とを含み、前記第1のクロック信号と所定の位相差を有する第2のクロック信号に同期したタイミングで動作する第2の演算回路群と、
    前記第2の演算回路群の前記第4のラッチ回路を経由した出力データを前記第1のクロック信号に同期したデータに変換して前記第1の演算回路群に出力するタイミング変換回路とを備える半導体集積装置。
  2. 前記タイミング変換回路は、前記第1の演算回路群の出力データを前記第2のクロック信号に同期したデータに変換して前記第2の演算回路群に出力する請求項1記載の半導体集積装置。
  3. 前記タイミング変換回路は、前記第2のクロック信号に同期したタイミングでデータをラッチする入力側のラッチ回路と、ラッチされたデータを記憶する記憶部と、前記記憶部に記憶されたデータを前記第1のクロック信号に同期したタイミングでラッチする出力側のラッチ回路とを有する請求項1又は2記載の半導体集積装置。
  4. 前記第1及び第2のクロック信号と所定の位相差を有する第3のクロック信号に同期したタイミングで動作する第3の演算回路群を有し、
    前記タイミング変換回路は、前記第1の演算回路群の出力データを前記第2のクロック信号に同期したデータに変換して前記第2の演算回路群に出力する第1のタイミング変換回路と、前記第2の演算回路群の出力データを前記第3のクロック信号に同期したデータに変換して前記第3の演算回路群に出力する第2のタイミング変換回路とを有する請求項1、2、又は3記載の半導体集積装置。
  5. 前記タイミング変換回路は、前記第1の演算回路群の複数の演算回路の出力データを、前記第1のクロック信号に同期したタイミングでラッチする入力側の複数の第のラッチ回路と、ラッチされたデータを記憶する複数の第1の記憶部と、前記複数の第1の記憶部に記憶されたデータを前記第2のクロック信号に同期したタイミングでラッチする出力側の複数の第のラッチ回路と、前記第2の演算回路群の複数の演算回路の出力データを、前記第2のクロック信号に同期したタイミングでラッチする入力側の複数の第のラッチ回路と、ラッチされたデータを記憶する複数の第2の記憶部と、前記複数の第2の記憶部に記憶されたデータを前記第1のクロック信号に同期したタイミングでラッチする出力側の複数の第のラッチ回路とを有する請求項1、2、3、又は4記載の半導体集積装置。
  6. 第1のラッチ回路と、前記第1のラッチ回路から出力されるデータを受け取る第1の組み合わせ回路と、前記第1の組み合わせ回路から出力されるデータをラッチする第2のラッチ回路とを含む、第1の演算回路群を第1のクロック信号に同期したタイミングで動作させ、
    第3のラッチ回路と、前記第3のラッチ回路から出力されるデータを受け取る第2の組み合わせ回路と、前記第2の組み合わせ回路から出力されるデータをラッチする第4のラッチ回路とを含む、第2の演算回路群を前記第1のクロック信号と所定の位相差を有する第2のクロック信号に同期したタイミングで動作させ、
    前記第2の演算回路群の前記第4のラッチ回路を経由した出力データを前記第1のクロック信号に同期したデータに変換して前記第1の演算回路群に出力する半導体集積装置の消費電力平準化方法。
  7. 前記第1の演算回路群の出力データを前記第2のクロック信号に同期したデータに変換して前記第2の演算回路群に出力する請求項6記載の半導体集積装置の消費電力平準化方法。
  8. 前記第2のクロック信号に同期したタイミングで前記第1の演算回路群の出力データをラッチする入力側のラッチ回路と、ラッチされたデータを記憶する記憶部と、前記記憶部に記憶されたデータを前記第1のクロック信号に同期したタイミングでラッチする出力側のラッチ回路とを用いて第2のクロック信号に同期したデータを前記第1のクロック信号に同期したデータに変換する請求項6又は7記載の半導体集積装置の消費電力平準化方法。
  9. 前記第1の演算回路群の入出力データを第1のデータネットワークに送出し、
    前記第2の演算回路群の入出力データを第2のデータネットワークに送出し、
    前記第1のデータネットワーク上のデータを前記第2のクロック信号に同期したデータに変換して前記第2のデータネットワークに送出すると共に、前記第2のデータネットワーク上のデータを前記第1のクロック信号に同期したデータに変換して前記第1のデータネットワークに送出する請求項6、7、又は8記載の半導体集積装置の消費電力平準化方法。
  10. 第3の演算回路群を前記第1及び第2のクロック信号と所定の位相差を有する第3のクロック信号に同期したタイミングで動作させ、
    前記第1の演算回路群から出力される前記第1のクロック信号に同期したデータを、前記第2のクロック信号に同期したデータに変換して前記第2の演算回路群に出力し、
    前記第2のクロック信号に同期したデータを、前記第3のクロック信号に同期したデータに変換して前記第3の演算回路群に出力する請求項6、7、8、又は9記載の半導体集積装置の消費電力平準化方法。
JP2008536269A 2006-09-28 2006-09-28 半導体集積装置及び半導体集積装置の消費電力平準化方法 Expired - Fee Related JP4941470B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/319374 WO2008038391A1 (fr) 2006-09-28 2006-09-28 Appareil intégré semi-conducteur et procédé de nivellement de la consommation de puissance d'un appareil intégré semi-conducteur

Publications (2)

Publication Number Publication Date
JPWO2008038391A1 JPWO2008038391A1 (ja) 2010-01-28
JP4941470B2 true JP4941470B2 (ja) 2012-05-30

Family

ID=39229839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008536269A Expired - Fee Related JP4941470B2 (ja) 2006-09-28 2006-09-28 半導体集積装置及び半導体集積装置の消費電力平準化方法

Country Status (2)

Country Link
JP (1) JP4941470B2 (ja)
WO (1) WO2008038391A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000091887A (ja) * 1998-09-08 2000-03-31 Toshiba Microelectronics Corp 半導体装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3993297B2 (ja) * 1998-04-01 2007-10-17 三菱電機株式会社 制御回路

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000091887A (ja) * 1998-09-08 2000-03-31 Toshiba Microelectronics Corp 半導体装置

Also Published As

Publication number Publication date
JPWO2008038391A1 (ja) 2010-01-28
WO2008038391A1 (fr) 2008-04-03

Similar Documents

Publication Publication Date Title
US20110116337A1 (en) Synchronising between clock domains
US7889581B2 (en) Digital DLL circuit
JP3604323B2 (ja) クロック切替回路
US5923198A (en) High-speed clock-synchronous semiconductor integrated circuit and semiconductor integrated circuit system
JP4748896B2 (ja) 同期型データ転送処理装置
JP2003150535A (ja) 遷移信号制御装置とそれを用いたdmaコントローラ及び遷移信号制御プロセッサ
TWI422157B (zh) 相位產生裝置及相位產生方法
JPH09148907A (ja) 同期式半導体論理装置
JPH0795013A (ja) エッジトリガ型フリップフロップ
JP4702137B2 (ja) スキャンテスト用フリップフロップ
JP4941470B2 (ja) 半導体集積装置及び半導体集積装置の消費電力平準化方法
JP2006011704A (ja) クロック切り替え回路
US7205815B2 (en) Method and integrated circuit apparatus for reducing simultaneously switching output
JP2005078523A (ja) シリアル転送装置
JP2009165064A (ja) 分周回路及び分周方法
KR100673678B1 (ko) 데이터 입력 도메인 크로싱 마진을 보장하는 반도체 메모리장치의 데이터 입력 회로 및 그 데이터 입력 동작 방법
JP5447511B2 (ja) 通信回路および通信方法
JP4649064B2 (ja) 出力回路
JP3601884B2 (ja) タイミング制御回路
Xiao et al. Low latency high throughout circular asynchronous FIFO
JPH05191234A (ja) タイミング制御回路
JP5286686B2 (ja) クロック乗換回路
JP2002141922A (ja) ループ型バスシステム
JP3853308B2 (ja) 遅延回路および電子回路
JP4079974B2 (ja) 遅延回路

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111229

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

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

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees