JP4806417B2 - 論理ブロック制御システム及び論理ブロック制御方法 - Google Patents

論理ブロック制御システム及び論理ブロック制御方法 Download PDF

Info

Publication number
JP4806417B2
JP4806417B2 JP2007546411A JP2007546411A JP4806417B2 JP 4806417 B2 JP4806417 B2 JP 4806417B2 JP 2007546411 A JP2007546411 A JP 2007546411A JP 2007546411 A JP2007546411 A JP 2007546411A JP 4806417 B2 JP4806417 B2 JP 4806417B2
Authority
JP
Japan
Prior art keywords
logic
block
logical
blocks
logical block
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
JP2007546411A
Other languages
English (en)
Other versions
JPWO2007060868A1 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2007546411A priority Critical patent/JP4806417B2/ja
Publication of JPWO2007060868A1 publication Critical patent/JPWO2007060868A1/ja
Application granted granted Critical
Publication of JP4806417B2 publication Critical patent/JP4806417B2/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/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • H03K19/1774Structural details of routing resources for global signals, e.g. clock, reset
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/1778Structural details for adapting physical parameters
    • H03K19/17784Structural details for adapting physical parameters for supply voltage

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Description

本発明は、FPGA(Field Programmable Gate Array)や再構成可能ロジック等のプログラムにより機能を変更することが可能なプログラマブル論理回路に関する。
論理演算処理を行う論理ブロックを複数有し、各論理ブロック間の配線状態をプログラマブルにすることにより異なる回路動作を可能にするデバイスとして、FPGAや再構成可能ロジック等のプログラマブル論理回路が知られている。
また、携帯端末のようなシステムに用いる回路での消費電力を抑える技術として、動作する必要がないフリップフロップ(以下、FFという。)などへのクロック供給を止めるゲーディドクロック技術が知られている。また、回路での消費電力を抑える技術として、電源とモジュールとの間に配置されたスイッチを必要に応じてオフ状態にし、リーク電流を削減する技術(以下、電源遮断技術という。)が知られている。
そして、消費電力を抑えるゲーディドクロック技術や電源遮断技術をプログラマブル論理回路に適用することにより、低消費電力のプログラマブル論理回路を実現することができる(例えば、特許文献1参照。)。低消費電力のプログラマブル論理回路の実現の際に問題となるのがクロックスキューである。
ここで、クロックスキューについて説明する。
現在、LSI(Large Scale Integration)設計において多く用いられている同期設計方式では、制御用のクロック信号が、例えば、状態を保持するレジスタに同じタイミングで印加される。実際のLSIでは、クロック供給回路の構成の相違により、レジスタ間において、クロック発生源からレジスタまでの間でクロック信号に生じる遅延(以下、クロック遅延という。)に遅延差が発生することがある。この遅延差はクロックスキューと呼ばれる。一定以上のクロックスキューが発生すると、レジスタ間のデータの受け渡しに誤りが生じ、プログラマブル論理回路が動作不良を起こす。
さらに、クロックスキューによるプログラマブル論理回路の動作不良について図12及び図13を参照して説明する。図12及び図13はクロックスキューに起因するプログラマブル論理回路の動作不良を説明するための図である。なお、図13(a)は、レジスタ1001とレジスタ1002との間で正常にデータの受け渡しが行われている場合を示しており、図13(b)はレジスタ1001とレジスタ1002との間で正常にデータの受け渡しが行えていない場合を示している。
図12に示す回路例では、レジスタ1001の出力データがレジスタ1002に入力データとして入力される。レジスタ1001、1002には、夫々、クロック信号CLK1、CLK2が入力される。
クロック信号CLK1が立ち上がってからクロック信号CLK2が立ち上がるまでの時間(クロック信号CLK1とクロック信号CLK2との遅延差)をT1001、T1011とする。また、クロック信号CLK1が立ち上がってからレジスタ1002の入力が変化するまでの時間をT1002、T1012とする。
時間T1001が時間T1002より小さい図13(a)の場合、区間R1000で示すように、レジスタ1002の入力が遷移する前にクロック信号CLK2が立ち上がる。このため、レジスタ1002がクロック信号CLK2の立ち上がりで取り込むデータは、レジスタ間のデータの受け渡しが正常になされているときにレジスタ1002が取り込むことになる、クロック信号CLK1が立ち上がる前にレジスタ1001が出力していたデータとなる。
時間T1011が時間T1012より大きい図13(b)の場合、区間R1010で示すように、レジスタ1002の入力が遷移した後にクロック信号CLK2が立ち上がる。このため、レジスタ1002がクロック信号CLK2の立ち上がりで取り込むデータは、クロック信号CLK1の立ち上がりでレジスタ1001が取り込んだデータとなる。このように、レジスタ1001とレジスタ1002との間のデータの受け渡しが正常に行われないことになる。
上述したとおり、一定以上のクロックスキューが発生する場合、レジスタ間のデータの受け渡しに誤りが生じる。このため、一般に、レジスタ間にクロックスキューを相殺する遅延素子を挿入し、クロックスキューに起因するレジスタ間のデータの受け渡しの誤りを回避する。
特開2003−174358号公報
ところで、プログラム論理回路はトランジスタを含む。特に、PチャネルMOSトランジスタ(以下、PMOSトランジスタという。)は、NBTI(Negative Bias Temperature Instability)やHCI(HotCarrier Injection)などによって、経時劣化することが知られている。例えば、NBTIは、高温の条件下でPMOSトランジスタがオン状態のときにゲート絶縁膜とシリコン基板との界面に存在する水素が乖離して固定電荷が形成され、これによって閾値電圧が上昇し、PMOSトランジスタの電流能力が低下する現象である。
トランジスタの経時劣化はクロックスキューの原因となり、これについて図14及び図15を用いて説明する。図14及び図15はトランジスタの経時劣化に起因するクロックスキューの発生を説明するための図である。
クロック信号CLKはデューティ比50%のクロック信号であり、クロック信号CLKがゲート回路2010、2020に入力される。
例えば、初期状態から所定時間、ゲート回路2010に供給されるイネーブル信号EN1がハイレベルであり、ゲート回路2020に供給されるイネーブル信号EN2がローレベルであるとする。
イネーブル信号EN1がハイレベルのとき、ゲート回路2010からクロック信号が出力される。これにより、PMOSトランジスタP2011、P2012は、ほぼ同じ時間だけオン状態になり、ほぼ同じだけNBTIの影響を受け、ほぼ同じだけ電流能力が低下する。
イネーブル信号EN2がローレベルのとき、ゲート回路2020から常にローレベルの信号が出力され、PMOSトランジスタP2021は常にオン状態になり、常にNBTIの影響を受け、電流能力は著しく低下する。逆に、PMOSトランジスタP2022は常にオフ状態になり、NBTIの影響を受けず、電流能力は低下しない。
なお、ここでは、NチャネルMOSトランジスタ(以下、NMOSトランジスタという。)N2011、N2012、N2021、N2022では電流能力の低下は起こらないものとする。
上記の所定期間経過後、図15に示すように、イネーブル信号EN1、EN2がともにハイレベルになったとする。
クロック信号CLKの立ち上がりエッジE2010に対して、ノードN1、N4の信号は所定時間遅れて立ち上がる。ノードN2、N5の信号はノードN1、N4の信号が立ち上がってから所定時間遅れて立ち下がる。ノードN3、N6の信号はノードN2、N4の信号が立ち下がってから時間T2012、T2022遅れて立ち上がる。図15に示すように、PMOSトランジスタP2012はPMOSトランジスタP2022より電流能力の低下が大きいので、時間T2012は時間T2022より大きい。
クロック信号CLKの立ち下がりエッジE2020に対して、ノードN1、N4の信号は所定時間遅れて立ち下がる。ノードN2、N5の信号はノードN1、N4の信号が立ち下がってから時間T2011、T2021遅れて立ち上がる。ノードN3、N6の信号はノードN2、N4の信号が立ち上がってから所定時間遅れて立ち下がる。図15に示すように、PMOSトランジスタP2011はPMOSトランジスタP2021より電流能力の低下が小さいので、時間T2011は時間T2021より小さい。
このように、トランジスタの経時劣化に起因してクロックスキューが発生し、このクロックスキューがレジスタ間のデータの受け渡しの誤りの原因になるため、LSIの設計においてはトランジスタの経時劣化に起因するクロックスキューを考慮する必要がある。
なお、図15に一例を示すように、PMOSトランジスタなど経時劣化する素子を含む様々な回路間で経時劣化する素子の動作時間が異なることによって入力に対する出力の遅延量に差が生じる。
ところが、上記の特許文献1はトランジスタの経時劣化に起因するクロックスキューを考慮していないため、プログラマブル論理回路はトランジスタの経時劣化に起因するクロックスキューによって誤動作する恐れがある。
そこで、本発明は、論理ブロック内の素子の経時劣化に起因するクロックスキューなどによって論理ブロック間のデータの受け渡しの誤動作が起こることを防ぐことが可能な論理ブロック制御システム及び論理ブロック制御方法を提供することを目的とする。
上記目的を達成するために本発明の論理ブロック制御システムは、論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部と、各前記論理ブロックの停止時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定手段と、前記決定手段により決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御手段と、を備える。
本発明の論理ブロック制御方法は、論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部において、各前記論理ブロックの動作を制御する論理ブロック制御方法であって、各前記論理ブロックの停止時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定ステップと、前記決定ステップにより決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御ステップと、を有する。
上記論理ブロック制御システム及び論理ブロック制御方法の夫々によれば、各論理ブロックの停止時間を基に動作を停止させる論理ブロックを決定するため、論理ブロックの動作量を論理ブロック間で均等にすることが可能になる。このため、論理ブロック間で劣化度を均等にすることができ、論理ブロック内の素子の経時劣化に起因するクロックスキューなどによる論理ブロック間のデータの受け渡しの誤りを防ぐことができる。
上記論理ブロック制御システムにおいて、前記決定手段は、前記プログラマブル論理回路部の動作時間が予め定められる開始時間を越えるまでは動作を停止させる論理ブロックの決定を行わずに前記論理ブロックの全てを動作させる論理ブロックに決定し、前記動作時間が前記開始時間を超えると動作を停止させる論理ブロックの決定を開始するようにしてもよい。
例えば、PチャネルMOSトランジスタは、オン時間が短いときには急激に劣化が進み、オン時間が長くなるにつれて劣化が進みにくくなることが知られている。このため、オン時間が短いときには各論理ブロック間の停止時間が少し異なるだけで、各論理ブロック間の劣化の度合いが大きく異なる可能性がある。
上記の論理ブロック制御システムによれば、論理ブロック内の例えばPチャネルMOSトランジスタのオン時間が短いときには全ての論理ブロックを動作させるようにして、全ての論理ブロック内の例えばPチャネルMOSトランジスタを劣化させるようにしている。このため、例えばPチャネルMOSトランジスタの劣化が急激に進むオン時間が短いときでも、論理ブロック間の劣化度の差が大きくなることを回避でき、論理ブロック間のデータの受け渡しを正常に行うことが可能になる。
上記論理ブロック制御システムにおいて、動作を停止している前記論理ブロックから、動作を停止している前記論理ブロックの停止時間に基づく値が動作している全ての前記論理ブロックの停止時間に基づく値に対して予め定められた範囲に含まれていない論理ブロックを検出する検出手段をさらに備え、前記制御手段は、前記検出手段により検出される動作を停止している前記論理ブロックを動作させるようにしてもよい。
これによれば、論理ブロック間の劣化度の差を常に一定範囲内に抑えることが可能になって、論理ブロック間のデータの受け渡しを正常に行うことが可能になる。
上記論理ブロック制御システムにおいて、各前記論理ブロックに対応して、制御信号が第1論理状態のときにクロック信号を通過させ、前記制御信号が第2論理状態のときにはクロック信号の通過を遮断するクロックゲート手段をさらに備え、前記制御手段は、前記決定手段により決定される前記論理ブロックに対応する前記クロックゲート手段に供給する前記制御信号を前記第2論理状態にすることによって当該論理ブロックの動作を停止させるようにしてもよい。
これによれば、論理ブロックの停止制御に既知の技術であるゲーディドクロック技術を使用するため、論理ブロックの停止制御のための開発負担を軽減することができる。
上記論理ブロック制御システムにおいて、各前記論理ブロックに対応して、制御信号が第1論理状態のときに前記論理ブロックを電源と電気的に接続し、前記制御信号が第2論理状態のときに当該論理ブロックを前記電源と電気的に遮断する電源遮断手段をさらに備え、前記制御手段は、前記決定手段により決定される前記論理ブロックに対応する前記電源遮断手段に供給する前記制御信号を前記第2論理状態にすることによって当該論理ブロックの動作を停止させるようにしてもよい。
これによれば、論理ブロックの停止制御に既知の技術である電源遮断技術を使用するため、論理ブロックの停止制御のための開発負担を軽減することができる。
本発明の論理ブロック制御システムは、論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部と、各前記論理ブロックの動作時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定手段と、前記決定手段により決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御手段と、を備える。
本発明の論理ブロック制御方法は、論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部において、各前記論理ブロックの動作を制御する論理ブロック制御方法であって、各前記論理ブロックの動作時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定ステップと、前記決定ステップにより決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御ステップと、を有する。
上記論理ブロック制御システム及び論理ブロック制御方法の夫々によれば、各論理ブロックの動作時間を基に動作を停止させる論理ブロックを決定するため、論理ブロックの動作量を論理ブロック間で均等にすることが可能になる。このため、論理ブロック間で劣化度を均等にすることができ、論理ブロック内の素子の経時劣化に起因するクロックスキューなどによる論理ブロック間のデータの受け渡しの誤りを防ぐことができる。
≪第1の実施の形態≫
以下、本発明の第1の実施の形態について図面を参照しつつ説明する。
<全体構成>
本実施の形態のプログラマブル論理回路の構成について図1を参照しつつ説明する。図1は本実施の形態のプログラマブル論理回路の構成図である。
図1において、プログラマブル論理回路部1は外部の制御回路2に制御される。制御回路2は記憶部3にデータの書き込みや記憶部3からのデータの読み込みを行う。
プログラマブル論理回路部1は、複数の論理ブロック10(図1では4個のみ図示)と、各論理ブロック10間を接続する各論理ブロック10間でデータを受け渡すためのデータ配線30と、各論理ブロック10間のデータ配線30の接続をプログラムにより設定変更するための配線切替スイッチ20と、を備える。
プログラマブル論理回路部1は、さらに、制御回路50を備え、制御回路50は、例えば、動作を停止させる論理ブロックを除く論理ブロックで対象の処理を実現するために配線切替スイッチ20の切り替え制御を行う。
プログラマブル論理回路部1は、さらに、動作量保持部60を備える。動作量保持部60は、不図示の発振回路によって発振されるクロック信号CLKをカウントすることによって、プログラマブル論理回路部1の動作量に対応する動作クロック数を保持する。動作量保持部60と制御回路50とは動作量転送線80aによって接続されており、動作量保持部60に保持されている動作クロック数が制御回路50によって読み出され、動作クロック数が制御回路50によってリセットされる。
プログラマブル論理回路部1には、制御回路50と各論理ブロック10との間に論理ブロック10の動作を制御するための制御信号線70と、制御回路50と各論理ブロック10との間に論理ブロック10に保持されている動作クロック数を読み出すための動作量転送線80とが配設されている。
なお、図1では、1つの論理ブロック10のみデータ配線30に接続されている様子を示しているが、全ての論理ブロックがデータ配線30に接続されている。
(記憶部3の記憶内容)
図1の記憶部3の記憶内容について図2を参照しつつ説明する。図2は図1の記憶部3の記憶内容を示す図である。
記憶部3は、プログラマブル論理回路部1全体の動作量に対応する動作クロック数を記憶する。図2では、フィールド「ブロック」の“全体”がプログラマブル論理回路部1全体を示す。
また、記憶部3は、論理ブロック10毎に、論理ブロック10の動作量に対応する動作クロック数を記憶する。図2ではフィールド「ブロック」の“論理ブロックa”、“論理ブロックb”、“論理ブロックc”、“論理ブロックd”が論理ブロック10を示す。
(論理ブロック10の構成)
図1の論理ブロック10の構成について図3を参照しつつ説明する。図3は図1の論理ブロック10の構成図である。
論理ブロック10は、論理演算処理を行うものであって、クロック信号に同期して動作するフリップフロップなどの論理素子11(図3では1個のみ図示)を複数含む。
論理ブロック10は、入力端がクロック配線40及び制御信号線70に接続されたクロックゲート回路12を備える。制御信号線70の信号レベルがハイレベルのとき、クロックゲート回路12はクロック配線40を介して供給されるクロック信号を通過させて、出力端からクロック信号を出力する。一方、制御信号線70の信号レベルがローレベルのとき、クロックゲート回路12はクロック配線40を介して供給されるクロック信号を遮断し、出力端からローレベルの信号を出力する。このように、クロックゲート回路12によってクロック信号を遮断することにより、クロックゲート回路12の後段にある論理素子11などの動作が停止させられる。
クロックゲート回路12の出力は、2つのインバータ回路13a、13bを介して、論理素子11の制御端子に入力される。インバータ回路13a、13bは、例えば、PMOSトランジスタとNMOSトランジスタとを含むCMOS型のインバータである。なお、クロックゲート回路12と論理素子11との間のインバータ回路13a、13bの個数は2個に限られるものではない。
動作量保持部14は、クロックゲート回路12の出力をカウントすることによって、論理ブロック10の動作クロック数を保持する。クロックゲート回路12は、制御信号線70の信号がハイレベルのときクロック信号を出力し、制御信号線70の信号がローレベルのときクロック信号を出力しないので、動作量保持部14は論理ブロック10が動作している期間のクロック数をカウントすることになる。
動作量保持部14は動作量転送線80に接続されており、動作量保持部14に保持されている動作クロック数が制御回路50によって読み出され、動作クロック数が制御回路50によってリセットされる。
(制御回路2、制御回路50の構成)
図1の制御回路2及び制御回路50の構成について図4を参照しつつ説明する。図4は図1の制御回路2及び制御回路50の構成図である。
「制御回路50の構成」
制御回路50は、動作クロック数転送部51と、制御信号生成部52とを備える。
動作クロック数転送部51は、所定の周期、及びプログラマブル論理回路部1の論理構成(以下、構成という。)を切り替えるタイミングで、動作量保持部60に保持された動作クロック数を動作量転送線80aを介して読み出し、読み出した動作クロック数を制御回路2の後述する動作クロック数取得部2bへ出力する。また、動作クロック数転送部51は、動作量保持部60に保持された動作クロック数を読み出すと、動作保持部60に保持された動作クロック数をリセットする。
また、動作クロック数転送部51は、論理ブロック10の各々について、所定の周期、及びプログラマブル論理回路部1の構成を切り替えるタイミングで、動作量保持部14に保持された動作クロック数を動作量転送線80を介して読み出し、読み出した動作クロック数を動作クロック数取得部2bへ出力する。また、動作クロック数転送部51は、動作量保持部14に保持された動作クロック数を読み出すと、動作保持部14に保持された動作クロック数をリセットする。
制御信号生成部52は、制御回路2の後述する停止ブロック決定部2dから動作を止めると指定された論理ブロック10に対応する制御信号線70の信号をローレベルにする。これによって、クロックゲート回路12は供給されるクロック信号を遮断し、クロックゲート回路12の出力はローレベルに固定される。
また、制御信号生成部52は、停止ブロック決定部2dから動作を止めると指定された論理ブロック10以外の論理ブロック10に対応する制御信号線70の信号をハイレベルにする。これによって、クロックゲート回路12は供給されるクロック信号を通過させ、クロックゲート回路12からクロック信号が出力される。
「制御回路2の構成」
制御回路2は、停止可能ブロック数取得部2aと、動作クロック数取得部2bと、停止率算出部2c、停止ブロック決定部2dと、を備える。
停止可能ブロック数取得部2aは、対象の処理を実行する上で動作を停止させることが可能な論理ブロック10のブロック数(以下、停止可能ブロック数という。)を取得する。
動作クロック数取得部2bは、動作クロック数転送部51から入力される動作量に対応する動作クロック数を、記憶部3に記憶されている該当するブロック(全体、論理ブロックaなど)の動作クロック数に加算する。なお、動作クロック数を該当するブロックの動作クロック数に加算することを可能にするために、例えば、動作クロック数転送部51がいずれの動作量保持部14、60の動作クロック数であるかを示す情報を動作クロック数取得部2bへ出力する。
停止率算出部2cは、プログラマブル論理回路部1全体の動作時間Tallを、記憶部3に記憶されているフィールド「ブロック」の“全体”に対応する動作クロック数に、クロック信号の1周期分の時間Tを乗算することによって算出する。
停止率算出部2cは、論理ブロック10の動作時間Trunを、記憶部3に記憶されているフィールド「ブロック」の当該論理ブロック10に対応する動作クロック数に上記の時間Tを乗算することによって算出する。
そして、停止率算出部2cは、論理ブロック10の停止時間Tstopを、算出した動作時間Tallから当該論理ブロック10の動作時間Trunを減算することによって算出する。
さらに、停止率算出部2cは、論理ブロック10の停止率を、算出した当該論理ブロック10の停止時間Tstopを算出した動作時間Tallで除算することによって算出する。
停止率算出部2cは、上記の処理を各々の論理ブロック10について行い、各々の論理ブロックの停止率を算出する。
停止ブロック決定部2dは、複数の論理ブロック10の中から、停止率算出部2cによって算出された停止率が低い順番に停止可能ブロック数分の論理ブロック10を選ぶ。そして、停止ブロック決定部2dは、選んだ論理ブロック10を動作を停止させる論理ブロック(以下、停止ブロックという。)に決定し、停止ブロックを示す情報を制御回路50の制御信号生成部52へ出力する。
<動作>
図1から図4を参照して構成を示したプログラマブル論理回路の動作について図5を参照しつつ説明する。図5は図1のプログラマブル論理回路が行う論理ブロック制御処理のフローチャートである。
停止可能ブロック数取得部2aは、構成が切り替わるとき、これから行われる構成に関連して、対象の処理を実行する上で動作を停止させることが可能な論理ブロック10の停止可能ブロック数Nを取得する(ステップS101)。
続いて、論理クロック数取得部2bは動作クロック数転送部51から入力される動作クロック数を基に記憶部3の内容を更新し、停止率算出部2cは各論理ブロック10の停止率を算出する(ステップS102)。
停止ブロック決定部2dは変数jの値を0に設定する(ステップS103)。
停止ブロック決定部2dは変数jの値が停止可能ブロック数N以上であるかを判定する(ステップS104)。
変数jの値が停止可能ブロック数N以上でなければ(S104:NO)、停止ブロック決定部2dは、停止ブロックとして、既に停止ブロックとして決定された論理ブロックを除いて、停止率が最も低い論理ブロックを停止ブロックに決定する(ステップS105)。
停止ブロック決定部2dは変数jの値を1インクリメントし(ステップS106)、次にステップS104の処理が行われる。
変数jの値が停止可能ブロック数N以上であれば(S104:YES)、制御信号生成部52は停止ブロックに決定された論理ブロック10に対応する制御信号線70の信号をローレベルにすることによって停止ブロックの動作を止める。また、制御信号生成部52は停止ブロックに決定された論理ブロック10を除く論理ブロック(以下、動作ブロックという。)10に対応する制御信号線70の信号をハイレベルにする。制御部50は、動作ブロックで対象の処理の実行を可能にするめに動作ブロック及び停止ブロックに基づいて論理ブロック間の配線状態を設定する(ステップS107)。
<具体例>
図1から図5を参照しつつ説明したプログラマブル論理回路の動作の具体例について図6を参照しつつ説明する。図6は図1のプログラマブル論理回路が行う論理ブロック制御処理の具体例を示す図ある。
本具体例では、プログラマブル論理回路部1は、4個の論理ブロック10a〜10dを備え、対象となる処理を実行する上で動作させる必要がある論理ブロックのブロック数が4個である構成(構成A)と、対象となる処理を実行する上で動作させる必要がある論理ブロックのブロック数が1個である構成(構成B、C、D、E)とを繰り返し行うものとする。なお、構成B、C、D、Eでの動作時間は同じであるとする。
時間T0〜時間T1では、制御部2は論理ブロック10a〜10dの全てを動作させる動作ブロックに決定する(構成A)。
時間T1〜時間T2では、制御部2は、論理ブロック10a〜10dの停止率が同じであるので、論理ブロック10b〜10dを停止ブロックに決定し、論理ブロック10aを動作ブロックに決定する(構成B)。
時間T2〜時間T3では、制御部2は、論理ブロック10a〜10dの全てを動作ブロックに決定する(構成A)。
時間T3〜時間T4では、制御部2は、論理ブロック10aの停止率が最も低いので、論理ブロック10aを停止ブロックに決定する。また、制御部2は、論理ブロック10b〜10dの停止率が同じであるので、論理ブロック10b、10dを停止ブロックに決定し、論理ブロック10cを動作ブロックに決定する(構成C)。
時間T4〜時間T5では、制御部2は、論理ブロック10a〜10dの全てを動作ブロックに決定する(構成A)。
時間T5〜時間T6では、制御部2は、論理ブロック10a、10cの停止率が最も低いので、論理ブロック10a、10cを停止ブロックに決定する。また、制御部2は、論理ブロック10b、10dの停止率が同じであるので、論理ブロック10bを停止ブロックに決定し、論理ブロック10dを動作ブロックに決定する(構成D)。
時間T6〜時間T7では、制御部2は、論理ブロック10a〜10dの全てを動作ブロックに決定する(構成A)。
時間T7〜時間T8では、制御部2は、論理ブロック10a、10c、10dの停止率が最も低いので、論理ブロック10a、10c、10dを停止ブロックに決定し、論理ブロック10bを動作ブロックに決定する(構成E)。
本具体例において、構成Aの動作時間をTA、構成B、C、D、Eの動作時間をTBとすると、論理ブロック間の停止率の差は、最大でTB/(TA+TB)であるが、この値を超えることはない。
論理ブロック間の論理ブロックの経時劣化に起因する最大のクロックスキューは、構成Bの処理が終わった後の論理ブロック10aとそれ以外の論理ブロックとの間のクロックスキューである。このため、構成Bの処理が終わった後の論理ブロック10aとそれ以外の論理ブロックとの間のクロックスキューに対処可能なスキューマージンを論理ブロック間にいれればよい。
スキューマージンの設け方としては、全ての論理ブロックの停止率が同じになるまでの全期間において、最大のクロックスキューに対処可能なスキューマージンを全ブロック間に設けてもよい。また、各構成におけるクロック遅延変動量を算出して、算出したクロック遅延変動量に基づいたスキューマージンを、必要なブロック間に設けてもよい。
<効果>
上述した本実施の形態によれば、各論理ブロックの停止時間に関連する停止率を基に、停止率が低い順に、停止ブロックを決定するようにしているため、論理ブロック10の動作量を論理ブロック間で均等にすることが可能になる。従って、論理ブロック間のクロックスキューの大きさを抑えることが可能になって、論理ブロックの経時劣化に起因するクロックスキューによる論理ブロック間のデータの受け渡しの誤りを防ぐことができる。
また、より小さいクロックスキューに基づいたプログラマブル論理回路の設計を行うなうことが可能なため、論理ブロック間などに挿入する遅延素子の数を少なくすることができる。これにより、プログラマブル論理回路部などでの消費電力を抑えることができ、配線混雑を緩和し、プログラマブル論理回路の面積の増大を抑えることができる。
≪第2の実施の形態≫
以下、本発明の第2の実施の形態について図面を参照しつつ説明する。
ただし、第1の実施の形態は、論理ブロックの動作を停止させるために論理素子などにクロックの供給を止めるゲーディドクロック技術を用いたものであるが、本実施の形態は論理ブロックの動作を停止させるために論理素子などを電源と遮断する電源遮断技術を用いるものである。
本実施の形態では、プログラマブル論理回路部1が備える論理ブロックの構成及び論理ブロックの動作を停止させる制御信号線70のレベルが第1の実施の形態と異なっており、その他の構成は第1の実施の形態と実質的に同じである。
なお、第2の実施の形態では、第1の実施の形態と実質的に同じ構成要素には第1の実施の形態と同じ符号を付し、説明を省略する。
<構成>
(制御回路50a、論理ブロック200の構成)
第2の実施の形態の制御回路50a及び論理ブロック200の構成について図7を参照しつつ説明する。図7は本実施の形態の制御回路50a及び論理ブロック200の構成図である。
「制御回路50aの構成」
制御回路50aは、動作クロック数転送部51と、制御信号生成部52aとを備える。
制御信号生成部52aは制御回路2の停止ブロック決定部2dによって停止ブロックに決定された論理ブロック10に対応する制御信号線70の信号をハイレベルにし、停止ブロック以外の論理ブロック10に対応する制御信号線70の信号をローレベルにする。
「論理ブロック200」
論理ブロック200は、論理演算処理を行うものであって、クロック信号に同期して動作するフリップフロップなどの論理素子210(図7では1個のみ図示)を複数含む。
電源遮断回路220は、制御信号線70の信号がローレベルのときに論理素子210や動作量保持部230を電源と電気的に接続し、制御信号線70の信号がハイレベルのときに論理素子210や動作量保持部230を電源と電気的に遮断する。
動作量保持部230は、電源と電気的に接続されている期間、つまり、論理ブロック200が動作している期間、不図示の発振回路によって発振されるクロック信号をカウントし、論理ブロック200の動作量に対応する動作クロック数を保持する。
動作量保持部230は動作量転送線80に接続されており、動作量保持部230に保持されている動作クロック数が動作クロック数転送部51によって読み出され、動作クロック数が動作クロック数転送部51によってリセットされるようになっている。
(電源遮断回路の構成)
図7の電源遮断回路220の構成について図8を参照しつつ説明する。図8は図7の電源遮断回路220の構成図である。
モジュール260は図7の論理素子210や動作量保持部230などである。なお、モジュール260に動作量保持部230が含まれない構成であってもよい。
電源遮断回路220は、ソースが電源に接続され、ドレインがモジュール260に接続されたPMOSトランジスタP201と、ドレインがモジュール260に接続され、ソースがグランド板に接続されたNMOSトランジスタN201を備える。
PMOSトランジスタP201とNMOSトランジスタN201の夫々のゲートは制御信号線70に接続されている。
制御信号線70の信号がローレベルのとき、モジュール260は電源に電気的に接続されて、モジュール260に電力供給が行われ、モジュール260は動作を行う。これに対して、制御信号線70の信号がハイレベルのとき、モジュール260は電源に電気的に遮断されて、モジュール260に電力供給が行われず、モジュール260は動作を停止する。
≪第3の実施の形態≫
以下、本発明の第3の実施の形態について図面を参照しつつ説明する。
ただし、第1の実施の形態は各論理ブロック10の停止率に基づく停止ブロックの決定処理をプログラマブル論理回路部1の動作時間にかかわらず常に行うのに対し、本実施の形態は各論理ブロック10の停止率に基づく停止ブロックの決定処理をプログラマブル論理回路部1の動作時間が所定範囲にある場合にのみ行うものである。
また、第2の実施の形態は、第1の実施の形態の停止率と異なる後述する停止率を利用する。
本実施の形態では、プログラマブル論理回路部1の外部に設けられた制御回路の構成が第1の実施の形態と異なっており、その他の構成は第1の実施の形態と実質的に同じである。
なお、第2の実施の形態では、第1の実施の形態と実質的に同じ構成要素には第1の実施の形態と同じ符号を付し、説明を省略する。
<トランジスタの経時劣化の概要>
PMOSトランジスタの経時劣化の概要について図9を参照しつつ説明する。図9はPMOSトランジスタの経時劣化の概要を示す図である。
PMOSトランジスタは、オン時間が短いときにはオン時間の増加に対して急激に劣化し、オン時間が長くなるとオン時間の増加に対して劣化はあまり進まなくなる。なお、上述したとおり、PMOSトランジスタの劣化はPMOSトランジスタの閾値電圧の上昇につながり、PMOSトランジスタの閾値電圧の増加は、PMOSトランジスタを含む論理素子における入力に対する出力の遅延量の増大につながる。
そこで、論理素子やクロックゲート回路から当該論理素子までの間に配置されたインバータ回路などの経時劣化を考慮して、論理ブロック毎に、時間を変数とするその遅延変動量を表す関数Fを用意し、論理ブロックの停止率の算出に当該関数Fを利用する。なお、論理ブロックの停止時間が増加するにつれて当該論理ブロックに関する遅延変動量は増大する。
クロックゲート回路から論理素子などのインバータ回路の段数など論理ブロックの構成によって、停止時間が同じ論理ブロック間であってもそれらの遅延変動量が異なることがある。このため、停止時間を全体の動作時間で減算して停止率を求め、当該停止率を基に停止ブロックを決定した場合には、論理ブロックの実際の遅延変動量を反映したものとはならないことがある。
これに対して、遅延変動量を表す関数Fを用意し、当該関数Fを利用して停止ブロックの決定を行えば、論理ブロックの実際の遅延変動量を反映したものになるという利点がある。
<構成>
(制御回路300の構成)
制御回路300は、停止可能ブロック数取得部2aと、動作クロック数取得部2bと、閾値比較部301と、停止率算出部302、停止ブロック決定部303とを備える。
閾値比較部301は、記憶部3に記憶されているフィールド「ブロック」の“全体”に対応する動作クロック数にクロック信号の周期を乗算した全体の動作量を第1閾値と比較するとともに、全体の動作量を第2閾値と比較する。
第1閾値及び第2閾値について述べる。
例えば、一部の論理ブロックを停止させた場合に、論理ブロック間の劣化度の相違に起因する論理ブロック間のデータの受け渡しにエラーが生じる可能性があると推定される、プログラマブル論理回路の最大の動作量以上の動作量を第1閾値にする。
また、停止時間に基づく停止ブロックの決定処理を行わずに、停止ブロックを任意に決定しても、論理ブロック間の劣化度の相違に起因する論理ブロック間のデータの受け渡しにエラーが生じないと推定されるプログラマブル論理回路の最小の動作量以上の動作量を第2閾値にする。
なお、第1閾値は第2閾値より小さい。
停止率算出部302は、停止率算出部2cと実質的に同じ処理を行って、プログラマブル論理回路部1全体の動作時間Tallと、論理ブロック10の停止時間Tstopとを算出する。
停止率算出部302は、F(Tall)と論理ブロック10のF(Tstop)とを算出し、当該論理ブロック10の停止率をF(Tstop)をF(Tall)で除算することによって算出する。
停止率算出部302は、上記の処理を各々の論理ブロック10について行い、各々の論理ブロックの停止率を算出する。
停止ブロック決定部303は、閾値比較部301の比較の結果、全体の動作量が第1閾値未満の場合には、停止ブロックをなしとし、全ての論理ブロック10を動作ブロックに決定する。
停止ブロック決定部303は、閾値比較部301の比較の結果、全体の動作量が第1閾値以上で第2閾値未満の場合、停止ブロック2dと同じ処理を行い、停止ブロックの決定を行う。
停止ブロック決定部303は、閾値比較部301の比較の結果、全体の動作量が第2閾値以上の場合、プログラマブル論理回路部1が備える複数の論理ブロックから、任意に停止可能ブロック数分の論理ブロック10を停止ブロックに決定する。
なお、全体の動作量が第2閾値以上の場合に停止ブロックを複数の論理ブロックから任意に決定することによって、停止ブロックの決定処理の負荷が軽減され、動作量保持部の規模を小さくすることができる。
<動作>
図10を参照して説明したプログラマブル論理回路の動作について図11を参照しつつ説明する。図11は図10のプログラマブル論理回路が行う論理ブロック制御処理のフローチャートである。
閾値比較部301は、プログラマブル論理回路部1の全体の動作量が第1閾値未満であるかを判定する(ステップS201)。
全体の動作量が第1閾値未満であれば(S201:YES)、停止ブロック決定部302は、停止ブロックをなしに決定し、制御部50は全ての論理ブロックを動作させる(ステップS202)。
全体の動作量が第1閾値未満でなければ(S201:NO)、閾値比較部301は、プログラマブル論理回路部1の全体の動作量が第2閾値未満であるかを判定する(ステップS203)。
全体の動作量が第2閾値未満であれば(S203:YES)、ステップS204〜ステップS210で行われる。ステップS204〜ステップS210では、論理ブロックの停止率の算出の仕方を除き、図5のステップS101〜ステップS107と実質的に同じ処理が行われる。
全体の動作量が第2閾値未満でなければ(S203:NO)、停止可能ブロック数取得部2aは、対象の処理を実行する上で動作を停止させることが可能な論理ブロック10の停止可能ブロック数Nを取得する(ステップS211)。
停止ブロック決定部303は、動作を停止させる論理ブロックとして、プログラマブル論理回路1が備える複数の論理ブロックから、任意に、停止可能ブロック数N分の論理ブロックを選び、選んだ論理ブロックを停止ブロックに決定する(ステップS212)。
制御部50は、ステップS212で決定された停止ブロックの動作を停止させる(ステップS213)。
≪補足≫
なお、本発明は上記各実施の形態で説明した内容に限定されず、本発明の目的とそれに関連又は付随する目的を達成するためのいかなる形態においても実施可能であり、例えば、以下であってもよい。
(1)上記の実施の形態では、論理ブロックの停止時間を基に動作を停止させる論理ブロックを決定するようにしているが、論理ブロックの動作時間を基に動作を停止させる論理ブロックを決定するようにしてもよい。
例えば、各々の論理ブロックについて、論理ブロックの動作時間Trunをプログラマブル論理回路の全体の動作時間Tallで除算し、論理ブロックの稼働率を算出する。そして、プログラマブル論理回路部が備える複数の論理ブロックの中から、稼働率が高い順番に、停止可能な論理ブロックのブロック数分の論理ブロックを停止ブロックに決定するようにしてもよい。
(2)上記の第1及び第2の実施の形態においても、第3の実施の形態と同じく、プログラマブル論理回路部1の動作量が第1閾値以上で第2閾値未満の場合にだけ、停止時間に基づく停止率を利用した停止ブロックの決定処理を実行するようにしてもよい。
(3)上記実施の形態では各論理ブロックの停止率を利用して停止ブロックを決定するようにしているが、各論理ブロックの停止時間そのものを利用してもよく、各論理ブロックの停止回数を利用するようにしてもよい。
(4)上記実施の形態に、例えば、プログラム論理回路が動作している期間中、各論理ブロックの停止率を算出し、停止ブロックの停止率が全ての動作ブロックの停止率に対して所定の範囲にあるかを判断し、停止率が何れかの動作ブロックの停止率に対して所定の範囲内になかった停止ブロックを検出し、検出した停止ブロックを強制的に動作させる機能を付加してもよい。ここで、所定の範囲は、論理ブロック間の劣化度の差により論理ブロック間でデータの受け渡しができなくなる可能性があると推定される論理ブロック間の停止率の差を基に定められる設計事項である。例えば、所定の範囲は、動作している論理ブロックの停止率の90%以上である。
(5)上記の実施の形態では、プログラム論理回路部の全体の動作量や各論理ブロックの動作量を計測するために、不図示の発振回路が発振するクロック信号のクロック数をカウントするようにしているが、不図示の発振回路が発振するクロック信号を分周回路で分周し、分周したクロック信号をカウントするようにしてもよい。
(6)上記実施の形態では、プログラマブル論理回路部1が備える論理ブロックを夫々独立して論理ブロックの停止などの動作状態を制御しているが、複数の論理ブロックを複数のグループに分け、グループ単位で論理ブロックの停止などの動作状態を制御するようにしてもよい。この場合、論理ブロックの停止などの動作状態の制御に必要な配線資源や論理資源を節約することができる。
(7)上記実施の形態では、論理ブロックの停止制御などを行う制御機構を、プログラマブル論理回路部1の外部と内部の夫々に分割して設けた制御回路で実現しているが、外部のみに設けた制御回路又は内部のみに設けた制御回路で実現するようにしてもよい。さらに、上記制御機構の機能の一部を有する制御回路を論理ブロック内に設けるようにしてもよい。
(8)上記実施の形態では、制御回路を論理ブロックとは別に設けているが、論理ブロックの何れかを制御回路に利用するようにしてもよい。この場合、制御に適した論理粒度の論理ブロックを制御回路に用いれば、プログラマブル論理回路の小型化や低消費電力化を実現することができる。
(9)上記実施の形態に、各論理ブロックの停止状況を示すレジスタを設けてもよい。この場合、レジスタ値を利用することによって、動作開始後に、構成が追加変更される場合でも各論理ブロックの動作状況にあった制御を行うことができる。
(10)上記実施の形態では、実動作中に構成が切り替わるときに停止ブロックの選択処理を行うようにしているが、処理を行う構成及び当該構成の実行時間を利用して予め停止ブロックの選択処理を行ってもよい。
(11)上記実施の形態では、クロックゲート回路や電源遮断回路を論理ブロックの内部に設けた場合であるが、全ての論理ブロックにおいてクロックゲート回路や電源遮断回路を論理ブロックの外部に設けてもよく、一部の論理ブロックにおいてのみクロックゲート回路や電源遮断回路を論理ブロックの外部に設けてもよい。
(12)第2の実施の形態では、電源とモジュールの間を電気的に接続するか切断するかによって論理ブロックの動作状態を制御しているが、電源電圧のレベルを切り替えることによって論理ブロックの動作状態を制御するようにしてもよい。
(13)第2の実施の形態では、電源とモジュール260とを電気的に接続し或いは遮断するためのスイッチ手段(PMOSトランジスタP201)と、モジュール260とグランド板とを電気的に接続し或いは遮断するためのスイッチ手段(NMOSトランジスタN201)とを設けているが、電源とモジュール260とを電気的に接続し或いは遮断するスイッチ手段のみを設けるようにしてもよく、モジュール260とグランド板とを電気的に接続し或いは遮断するスイッチ手段のみを設けるようにしてもよい。
(14)上記実施の形態のプログラマブル論理回路を携帯電話機に適用する場合、無線基地局が送信するビーコン信号を間欠受信するタイミングで、動作を停止させる論理ブロックの決定処理を行うようにしてもよい。
(15)上記実施の形態において、動作量保持部がクロック信号をカウントすることによってプログラマブル論理回路部全体や論理ブロックの動作クロック数を保持するようにしているが、動作量保持部を不揮発性のメモリなどで構成するとともに、クロック信号をカウントする専用のカウンタ回路を設け、制御回路が動作している論理ブロックやプログラマブル論理回路部に対応する動作量保持部の値をカウンタ回路の出力に応じて1インクリメントするようにしてもよい。
上記実施の形態において、記憶部3を不揮発性メモリやHDD(Hard Disk Drive)などで構成してもよい。
本発明は、プログラマブル論理回路が備える論理ブロックの動作制御に利用することができる。
第1の実施の形態のプログラマブル論理回路の構成図。 図1の記憶部3の記憶内容を示す図。 図1の論理ブロック10の構成図。 図1の制御回路2及び制御回路50の構成図。 第1の実施の形態の論理ブロック制御処理のフローチャート。 第1の実施の形態の論理ブロック制御処理の具体例を示す図。 第2の実施の形態の制御回路50a及び論理ブロック200の構成図。 図7の電源処断回路220の構成図。 PチャネルMOSトランジスタの経時劣化の概要を示す図。 第3の実施の形態の制御回路300の構成図。 第3の実施の形態の論理ブロック制御処理のフローチャート。 クロックスキューに起因するプログラマブル論理回路の動作不良を説明するための図。 クロックスキューに起因するプログラマブル論理回路の動作不良を説明するための図。 トランジスタの経時劣化に起因するクロックスキューの発生を説明するための図。 トランジスタの経時劣化に起因するクロックスキューの発生を説明するための図。
符号の説明
1 プログラマブル論理回路部
2 制御回路
2a 停止可能ブロック数取得部
2b 動作クロック数取得部
2c 停止率算出部
2d 停止ブロック決定部
3 記憶部
10 論理ブロック
12 クロックゲート回路12
14 動作量保持部
50 制御回路
51 動作クロック数転送部
52 制御信号生成部
60 動作量保持部

Claims (8)

  1. 論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部と、
    各前記論理ブロックの停止時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定手段と、
    前記決定手段により決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御手段と、
    を備えることを特徴とする論理ブロック制御システム。
  2. 前記決定手段は、
    前記プログラマブル論理回路部の動作時間が予め定められる開始時間を越えるまでは動作を停止させる論理ブロックの決定を行わずに前記論理ブロックの全てを動作させる論理ブロックに決定し、
    前記動作時間が前記開始時間を超えると動作を停止させる論理ブロックの決定を開始する
    ことを特徴とする請求項1記載の論理ブロック制御システム。
  3. 動作を停止している前記論理ブロックから、動作を停止している前記論理ブロックの停止時間に基づく値が動作している全ての前記論理ブロックの停止時間に基づく値に対して予め定められた範囲に含まれていない論理ブロックを検出する検出手段をさらに備え、
    前記制御手段は、前記検出手段により検出される動作を停止している前記論理ブロックを動作させることを特徴とする請求項1記載の論理ブロック制御システム。
  4. 各前記論理ブロックに対応して、制御信号が第1論理状態のときにクロック信号を通過させ、前記制御信号が第2論理状態のときにはクロック信号の通過を遮断するクロックゲート手段をさらに備え、
    前記制御手段は、前記決定手段により決定される前記論理ブロックに対応する前記クロックゲート手段に供給する前記制御信号を前記第2論理状態にすることによって当該論理ブロックの動作を停止させることを特徴とする請求項1記載の論理ブロック制御システム。
  5. 各前記論理ブロックに対応して、制御信号が第1論理状態のときに前記論理ブロックを電源と電気的に接続し、前記制御信号が第2論理状態のときに当該論理ブロックを前記電源と電気的に遮断する電源遮断手段をさらに備え、
    前記制御手段は、前記決定手段により決定される前記論理ブロックに対応する前記電源遮断手段に供給する前記制御信号を前記第2論理状態にすることによって当該論理ブロックの動作を停止させることを特徴とする請求項1記載の論理ブロック制御システム。
  6. 論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部と、
    各前記論理ブロックの動作時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定手段と、
    前記決定手段により決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御手段と、
    を備えることを特徴とする論理ブロック制御システム。
  7. 論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部において、各前記論理ブロックの動作を制御する論理ブロック制御方法であって、
    各前記論理ブロックの停止時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定ステップと、
    前記決定ステップにより決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御ステップと、
    を有することを特徴とする論理ブロック制御方法。
  8. 論理演算処理を行う論理ブロックを複数有し、各前記論理ブロック間の配線状態をプログラマブルに設定変更可能なプログラマブル論理回路部において、各前記論理ブロックの動作を制御する論理ブロック制御方法であって、
    各前記論理ブロックの動作時間に基づいて、複数の前記論理ブロックの中から、対象の処理を実行する上で動作を停止させることが可能な論理ブロックのブロック数分、動作を停止させる論理ブロックを決定する決定ステップと、
    前記決定ステップにより決定される前記論理ブロックの動作を停止させ、前記対象の処理を実行可能となるように各前記論理ブロック間の配線状態の設定変更を行う制御ステップと、
    を有することを特徴とする論理ブロック制御方法。
JP2007546411A 2005-11-25 2006-11-15 論理ブロック制御システム及び論理ブロック制御方法 Expired - Fee Related JP4806417B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007546411A JP4806417B2 (ja) 2005-11-25 2006-11-15 論理ブロック制御システム及び論理ブロック制御方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005339945 2005-11-25
JP2005339945 2005-11-25
JP2007546411A JP4806417B2 (ja) 2005-11-25 2006-11-15 論理ブロック制御システム及び論理ブロック制御方法
PCT/JP2006/322760 WO2007060868A1 (ja) 2005-11-25 2006-11-15 論理ブロック制御システム及び論理ブロック制御方法

Publications (2)

Publication Number Publication Date
JPWO2007060868A1 JPWO2007060868A1 (ja) 2009-05-07
JP4806417B2 true JP4806417B2 (ja) 2011-11-02

Family

ID=38067098

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007546411A Expired - Fee Related JP4806417B2 (ja) 2005-11-25 2006-11-15 論理ブロック制御システム及び論理ブロック制御方法

Country Status (5)

Country Link
US (1) US7579864B2 (ja)
EP (1) EP1953916A1 (ja)
JP (1) JP4806417B2 (ja)
CN (1) CN101313470B (ja)
WO (1) WO2007060868A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7620926B1 (en) * 2007-03-20 2009-11-17 Xilinx, Inc. Methods and structures for flexible power management in integrated circuits
JP5141246B2 (ja) * 2007-12-28 2013-02-13 日本電気株式会社 クロック伝搬回路
FR2933826B1 (fr) * 2008-07-09 2011-11-18 Univ Paris Curie Reseau logique programmable, commutateur d'interconnexion et unite logique pour un tel reseau
JP5451405B2 (ja) * 2010-01-06 2014-03-26 エヌイーシーコンピュータテクノ株式会社 半導体集積回路
KR101883629B1 (ko) 2010-01-20 2018-07-30 가부시키가이샤 한도오따이 에네루기 켄큐쇼 반도체 장치
US8629691B2 (en) * 2011-05-17 2014-01-14 Altera Corporation Systems and methods for interfacing between hard logic and soft logic in a hybrid integrated device
KR102420735B1 (ko) 2016-08-19 2022-07-14 가부시키가이샤 한도오따이 에네루기 켄큐쇼 반도체 장치의 전원 제어 방법
US10574239B1 (en) * 2018-11-07 2020-02-25 Jinghui Zhu Method and system for providing regional electrical grid for power conservation in a programmable device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0555374A (ja) * 1991-06-17 1993-03-05 Kawasaki Steel Corp フイールドプログラマブルゲートアレイのプログラム装置
JPH05198198A (ja) * 1992-01-20 1993-08-06 Fujitsu Ltd 半導体記憶装置
JP2000091435A (ja) * 1998-09-11 2000-03-31 Fuji Xerox Co Ltd 情報処理システム
JP2001505382A (ja) * 1996-12-09 2001-04-17 ペーアーツェーテー インフォルマツィオーンステヒノロギー ゲゼルシャフト ミット ベシュレンクテル ハフツング 算術演算および論理演算を処理し、プロセッサ(cpu)で使用するためのユニット、マルチコンピュータシステム、データフロープロセッサ(dfp)、デジタルシグナルプロセッサ(dsp)、収縮型プロセッサおよびプログラム可能論理構成素子(fpga)
JP2003174358A (ja) * 2001-12-07 2003-06-20 Fujitsu Ltd プログラマブル論理回路およびそのクロック制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6501300B2 (en) * 2000-11-21 2002-12-31 Hitachi, Ltd. Semiconductor integrated circuit
JP3838367B2 (ja) * 2003-12-26 2006-10-25 東京エレクトロン株式会社 プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム
US7492186B2 (en) * 2005-07-15 2009-02-17 Tabula, Inc. Runtime loading of configuration data in a configurable IC

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0555374A (ja) * 1991-06-17 1993-03-05 Kawasaki Steel Corp フイールドプログラマブルゲートアレイのプログラム装置
JPH05198198A (ja) * 1992-01-20 1993-08-06 Fujitsu Ltd 半導体記憶装置
JP2001505382A (ja) * 1996-12-09 2001-04-17 ペーアーツェーテー インフォルマツィオーンステヒノロギー ゲゼルシャフト ミット ベシュレンクテル ハフツング 算術演算および論理演算を処理し、プロセッサ(cpu)で使用するためのユニット、マルチコンピュータシステム、データフロープロセッサ(dfp)、デジタルシグナルプロセッサ(dsp)、収縮型プロセッサおよびプログラム可能論理構成素子(fpga)
JP2000091435A (ja) * 1998-09-11 2000-03-31 Fuji Xerox Co Ltd 情報処理システム
JP2003174358A (ja) * 2001-12-07 2003-06-20 Fujitsu Ltd プログラマブル論理回路およびそのクロック制御方法

Also Published As

Publication number Publication date
WO2007060868A1 (ja) 2007-05-31
CN101313470A (zh) 2008-11-26
CN101313470B (zh) 2010-09-22
US7579864B2 (en) 2009-08-25
US20090115452A1 (en) 2009-05-07
EP1953916A1 (en) 2008-08-06
JPWO2007060868A1 (ja) 2009-05-07

Similar Documents

Publication Publication Date Title
JP4806417B2 (ja) 論理ブロック制御システム及び論理ブロック制御方法
US10461747B2 (en) Low power clock gating circuit
US7336116B2 (en) Clock supply circuit
US7788558B2 (en) Semiconductor integrated circuit and control method thereof
US20020036529A1 (en) Semiconductor integrated circuit with reduced leakage current
KR101729004B1 (ko) 상태 리텐션 회로 및 그 회로의 작동방법
US8381009B2 (en) Device and method for power management
US8552793B2 (en) Semiconductor device
JP6026191B2 (ja) 電力制御回路、それを含む半導体装置及び該電力制御回路の動作方法
KR101887319B1 (ko) 전용 회로 및 메모리를 제어하기 위한 동적 마진 튜닝
US9755618B1 (en) Low-area low clock-power flip-flop
US10491197B2 (en) Flop circuit with integrated clock gating circuit
JP2008172779A (ja) 高速動作のためのフリップフロップ
KR100559738B1 (ko) 멀티-쓰래쉬홀드 시모스 제어 장치, 멀티-쓰래쉬홀드 시모스 집적 회로 및 멀티-쓰래쉬홀드 시모스 제어 방법
US20160099713A1 (en) Adaptive dynamic keeper circuit
US9178730B2 (en) Clock distribution module, synchronous digital system and method therefor
KR20180016148A (ko) 전류 차단 회로, 이를 포함하는 반도체 장치 및 이의 동작 방법
KR20150045566A (ko) Cmos 인버터 회로장치
US20090201063A1 (en) Dynamic semiconductor device
JP5355661B2 (ja) 半導体集積回路装置
JP2007318230A (ja) 半導体集積回路
US20120086487A1 (en) Semiconductor device
JP2008021340A (ja) 半導体装置
Devi et al. Implementation of T-DET-FF using Predictive Power Control Circuit Model
JP2005341427A (ja) ダイナミック回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090818

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

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

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees