(57)【要約】【課題】回路規模に与える影響を抑制しつつ、消費電力を抑制することができる半導体集積回路を提供する。【解決手段】本発明による半導体集積回路は、パワーゲーティングを実施するためのパワースイッチが接続された複数のサブブロックからなるブロックと、前記ブロックが作動する前に、前記複数のサブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断する制御回路と、を備える。【選択図】図１
2016143206.tif 000002
【特許請求の範囲】
【請求項１】
パワーゲーティングを実施するためのパワースイッチが接続された複数のサブブロックからなるブロックと、
前記ブロックが作動する前に、前記複数のサブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断する制御回路と、
を備えたことを特徴とする半導体集積回路。
【請求項２】
パワーゲーティングを実施するためのパワースイッチが接続されると共にクロックゲーティングを実施するための機能を有する複数のサブブロックからなるブロックと、
前記ブロックが作動する前に、前記複数のサブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断すると共に、前記ブロックの作動中に、前記複数のサブブロックのうち、前記不使用のサブブロック以外のサブブロックにおいてクロックゲーティングを機能させる制御回路と、
を備えたことを特徴とする半導体集積回路。
【請求項３】
クロックゲーティングを実施するための機能を有する複数の第１サブブロックとパワーゲーティングを実施するためのパワースイッチが接続された複数の第２サブブロックとからなるブロックと、
前記ブロックが作動する前に、前記複数の第２サブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断する制御回路と、
を備えたことを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、消費電力を削減する回路機能を有する半導体集積回路に関する。
【背景技術】
【０００２】
近年では、微細化技術による半導体集積回路の消費電力の削減効果は限界に達しつつある。その一方で、半導体集積回路に搭載する回路規模の増大はとどまらず、半導体集積回路を動作させるためには、さらに消費電力を削減する必要がある。そのためには、微細化技術のみならず、消費電力を削減するための回路機能を内蔵する必要がある。この種の回路機能を実現する手法としては、いわゆるゲーティングによる方法とスケーリングによる方法とに大別される。
【０００３】
また、ゲーティングによる方法には、既存技術として、消費電力の要因である供給電力を停止させることにより消費電力を削減するパワーゲーティング（PG; Power Gating）による方法（例えば、非特許文献１参照）と、供給クロックを停止させるクロックゲーティング（CG; Clock Gating）による方法とがある。また、スケーリングによる方法には、既存技術として、供給電源を適用的に変動させるＡＶＳ(Adaptive Voltage Scaling)（例えば、非特許文献３参照）と、供給電圧と供給クロック周波数を動的に変化させるＤＶＦＳ(Dynamic Voltage and Frequency Scaling)（例えば、非特許文献４参照）とがある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】F. Ge, P. Jain, K. Choi “Ultra-low power and high speed design and implementation of AES and SHA1 hardware cores in 65 nanometer CMOS technology,” IEEE International Conference on Electro/Information Technology, 2009, pp. 405-410.
【非特許文献２】M. Nikolic, M. Katona, M. “Improve the automatic clock gating insertion in ASIC synthesis process using optimal enable function selection,” 2010 5th European Conference on Circuits and Systems for Communications (ECCSC), 2010, pp. 131-134.
【非特許文献３】Yuejian Wu, S. Thomson, Han Sun, D. Krause, Song Yu, G. Kurio, “Free Razor: A novel adaptive voltage scaling low power technique for data path SoC designs”, 2012 IEEE International SOC Conference (SOCC), 2012, pp. 33-38.
【非特許文献４】Tong Xu, Peng Li, “Design and optimization of power gating for DVFS applications,” 13th International Symposium on Quality Electronic Design (ISQED), 2012, pp. 391-397.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のように消費電力削減のための既存技術による複数の回路機能が存在する中で、これらの回路機能を組み合わせて消費電力を削減する方法は殆ど検討されていない。微細化技術による消費電力の削減効果が限界に達しつつ状況において、上述の消費電力削減のための複数の回路機能を半導体集積回路に内蔵することにより、さらに消費電力を削減できる余地もある。ただし、この場合、半導体集積回路の消費電力を効果的に削減するために、上述の消費電力削減のための複数の回路機能を動的に選択する必要がある。
【０００６】
しかしながら、上述の消費電力削減のための複数の回路機能を動的に選択するための判定回路等を半導体集積回路に搭載すれば、回路規模や設計の複雑度が増大する。この結果、上記判定回路等により回路規模が増えた分だけ、逆に消費電力が増大するおそれがある。しかも、回路規模の増大により、信頼性が低下するおそれもある。
【０００７】
本発明は、上記課題に鑑みてなされたものであり、回路規模に与える影響を抑制しつつ、消費電力を抑制することができる半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様による半導体集積回路は、パワーゲーティングを実施するためのパワースイッチが接続された複数のサブブロックからなるブロックと、前記ブロックが作動する前に、前記複数のサブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断する制御回路と、を備えたことを特徴とする半導体集積回路の構成を有する。
【０００９】
本発明の一態様による半導体集積回路は、パワーゲーティングを実施するためのパワースイッチが接続されると共にクロックゲーティングを実施するための機能を有する複数のサブブロックからなるブロックと、前記ブロックが作動する前に、前記複数のサブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断すると共に、前記ブロックの作動中に、前記複数のサブブロックのうち、前記不使用のサブブロック以外のサブブロックにおいてクロックゲーティングを機能させる制御回路と、を備えたことを特徴とする半導体集積回路の構成を有する。
【００１０】
本発明の一態様による半導体集積回路は、クロックゲーティングを実施するための機能を有する複数の第１サブブロックとパワーゲーティングを実施するためのパワースイッチが接続された複数の第２サブブロックとからなるブロックと、前記ブロックが作動する前に、前記複数の第２サブブロックのうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用して、前記不使用のサブブロックに対する電源供給を遮断する制御回路と、を備えたことを特徴とする半導体集積回路の構成を有する。
【００１１】
換言すれば、本発明は、次のように表現することもできる。
本発明の一態様による半導体集積回路は、複数（Ｎ個）のサブブロックからなるブロックを備えた半導体集積回路あって、前記（Ｎ個）サブブロックは、パワーゲーティング用回路を設けた構成となっており、一部（ｋ個（０＜ｋ））の多重化サブブロックについては、当該ブロックを動作させる前にパワーゲーティング用回路を動作させることによりパワーゲーティングを適用することを特徴とする半導体集積回路の構成を有する。
【００１２】
本発明の一態様による半導体集積回路は、複数（Ｎ個）のサブブロックからなるブロックを備えた半導体集積回路であって、前記（Ｎ個）サブブロックは、パワーゲーティング用回路及びクロックゲーティング用回路を設けた構成となっており、一部（ｋ個（０＜ｋ））の多重化サブブロックについては、当該ブロックを動作させる前にパワーゲーティング用回路を動作させることによりパワーゲーティングを適用し、その他（Ｎ−ｋ個）のサブブロックについては、動作中にクロックゲーティング用回路を動作させることによりクロックゲーティングを適用することを特徴とする半導体集積回路の構成を有する。
【００１３】
本発明の一態様による半導体集積回路は、複数（Ｎ個）の多重化サブブロックからなるブロックを備えた半導体集積回路であって、前記一部（ｋ個（０＜ｋ））のサブブロックは、パワーゲーティング用回路を有さずクロックゲーティング用回路のみを設けた構成となっており、その他（Ｎ−ｋ個）のサブブロックはパワーゲーティング用回路を設けた構成となっており、その他（Ｎ−ｋ個）のサブブロックの一部については、当該ブロックを動作させる前にパワーゲーティング用回路を動作させることによりパワーゲーティングを適用することを特徴とする半導体集積回路の構成を有する。
【発明の効果】
【００１４】
本発明によれば、回路規模に与える影響を抑制しつつ、消費電力を抑制することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施形態による半導体集積回路の構成例を示すブロック図である。
【図２】本発明の第１実施形態による半導体集積回路の動作例を説明するための図である。
【図３】本発明の第１実施形態による半導体集積回路の他の動作例を説明するための図である。
【図４】本発明の第２実施形態による半導体集積回路の構成の一例を示すブロック図である。
【図５】本発明の第２実施形態による半導体集積回路の消費電力推定フローの一例を示すフローチャートである。
【図６】本発明の第３実施形態による半導体集積回路の構成の一例を示すブロック図である。
【図７】本発明の第３実施形態の他の例による半導体集積回路の構成を示すブロック図である。
【図８】本発明の第３実施形態の更なる他の例による半導体集積回路の構成を示すブロック図である。
【図９】本発明の第４実施形態による半導体集積回路の構成例を示すブロック図である。
【図１０】本発明の第５実施形態による半導体集積回路の構成例を示すブロック図である。
【図１１】本発明の第６実施形態による半導体集積回路の構成例を示すブロック図である。
【図１２】本発明の第７実施形態による半導体集積回路の構成例を示すブロック図である。
【図１３】本発明の第８実施形態による半導体集積回路の構成例を示すブロック図である。
【図１４】本発明の実施形態による半導体集積回路の効果の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照して、本発明の実施形態を説明する。
なお、以下の説明において、不使用のサブブロックとは、半導体集積回路に備えられたサブブロックのうち、所望の機能を実現するために使用されないサブブロックを指し、使用されるサブブロックとは、所望の機能を実現するために使用されるサブブロックを指す。また、パワーゲーティングなる用語は、半導体集積回路の任意の回路要素に対する電力供給を遮断することにより、半導体集積回路の消費電力の削減を図るための手法を指す。更に、クロックゲーティングなる用語は、任意の回路要素の動作クロックを一時的に遮断することにより、消費電力の削減を図るための手法を指す。
【００１７】
（第１の実施形態）
通常、ＡＳＩＣ(Application Specific Integrated Circuit)等の半導体集積回路は、複数の回路ブロック（以下、ブロックと称す。）を備えている。ここで、ブロックとは、ＡＳＩＣ等の半導体集積回路の機能を実現するための要素回路であり、ブロックは階層的に複数のサブブロックから構成されている。ブロックに含まれる複数のサブブロックを選択的に組み合わせることにより、そのブロックの回路機能が実現される。
【００１８】
この種の半導体集積回路は、多様な回路機能を実現する必要上、ブロックおよびサブブロックの個数に余裕を持たせている。使用者（例えば、半導体集積回路を使用して所望の機能を有するシステムを設計するシステム設計者）は、所望の機能を実現するために必要とされる半導体集積回路のブロックおよびサブブロックの個数を把握しており、半導体集積回路に備えられた複数のブロックおよびサブブロックの一部または全部を用いて所望の回路機能を実現する。この場合、半導体集積回路のブロックに含まれる複数のサブブロックの全部を使用することは稀であり、不使用のサブブロックが存在する。このため、第１実施形態では、ブロックの動作前に不使用のサブブロックに対してパワーゲーティングを適用することにより、不使用のサブブロックにおける消費電力の発生を防止する。
【００１９】
以下、上記のブロックおよびサブブロックとして、多重化ブロックおよび多重化サブブロックを備える場合を例として、本発明の第１実施形態を説明する。
図１は、本発明の第１実施形態による半導体集積回路１００の構成例を示すブロック図である。半導体集積回路１００は、多重化ブロック１１０と制御回路１２０とを備えている。このうち、多重化ブロック１１０は、複数のストリームデータＰＥＳ０〜ＰＥＳ７を多重化してトランスポートストリームデータＴＳ（例えば、ＭＰＥＧ２−ＴＳまたはＭＭＴフォーマットのストリームデータ）を出力する回路ブロックである。ストリームデータＰＥＳ０〜ＰＥＳ７のぞれぞれは、パケット化されたエレメンタリストリーム（PES: Packetized Elementary Stream）であり、映像ＰＥＳ、音声ＰＥＳ、ユーザデータＰＥＳの何れかである。ただし、この例に限定されず、ストリームデータＰＥＳ０〜ＰＥＳ７は、任意のデータ列であり得る。また、入力されるストリームデータの数も任意に設定し得る。
【００２０】
多重化ブロック１１０は、パワーゲーティングを実施するための複数のパワースイッチ１１１０〜１１１７と、複数の多重化サブブロック１１２０〜１１２７とを備えている。多重化サブブロックの数は任意に設定し得る。複数の多重化サブブロック１１２０〜１１２７には、それぞれ、複数のパワースイッチ１１１０〜１１１７が接続されている。
【００２１】
具体的には、多重化サブブロック１１２０の電源端子（図示なし）には、電源電圧ＶＤＤを供給するための電源配線がパワースイッチ１１１０を介して接続されている。また、多重化サブブロック１１２１の電源端子（図示なし）には、電源電圧ＶＤＤを供給するための電源配線がパワースイッチ１１１１を介して接続されている。以下同様にして、多重化サブブロック１１２７の電源端子（図示なし）には、電源電圧ＶＤＤを供給するための電源配線がパワースイッチ１１１７を介して接続されている。
【００２２】
複数の多重化サブブロック１１２０〜１１２７の入力部には、それぞれ、外部からストリームデータＰＥＳ０〜ＰＥＳ７が供給される。ただし、不使用の多重化サブブロックにはストリームデータは入力されない。また、複数の多重化サブブロック１１２０〜１１２７の出力部は共通接続されて多重化ブロック１１０の出力端子（図示なし）に接続されている。
【００２３】
制御回路１２０は、多重化ブロック１１０が作動する前に、複数の多重化サブブロック１１２０〜１１２７のうち、不使用のサブブロックに接続されたパワースイッチをオフにして上記不使用のサブブロックにパワーゲーティングを適用することにより、上記不使用のサブブロックに対する電源供給を遮断するための回路要素である。制御回路１２０は、例えば、パワースイッチ１１１０〜１１１７の回路状態（オン・オフ）を設定するための設定情報が定義されたコンフィギュレーション回路である。制御回路１２０には、上記設定情報として、使用される多重化サブブロック（または、不使用の多重化サブブロック）に関する構成情報Ｃが外部から入力される。この構成情報Ｃは、不使用の多重化サブブロックに関する構成情報でもある。
【００２４】
次に、第１実施形態による半導体集積回路１００の動作を説明する。
使用者は、図１に示す多重化サブブロック１１２０〜１１２７を選択的に組み合わせることにより、半導体集積回路１００に必要とされる所望の回路機能を実現する。この場合、使用者は、半導体集積回路１００に入力されるストリームデータの数および種類（映像ＰＥＳ、音声ＰＥＳ、ユーザデータＰＥＳ）や、半導体集積回路１００から出力されるストリームデータの形式等、入出力に関する情報を事前に把握しており、この情報に基づいて、所望の回路機能を実現するために必要な多重化サブブロックの個数は使用前に決定される。使用者は、複数の多重化サブブロック１１２０〜１１２７の中から、所望の回路機能を実現するために使用される多重化サブブロックを選択し、その選択された多重化サブブロックに関する情報を構成情報Ｃとして制御回路１２０に与える。
【００２５】
制御回路１２０は、構成情報Ｃに基づいて、使用される多重化サブブロック以外の不使用の多重化サブブロックに接続されたパワースイッチ、即ち、使用者によって選択された多重化サブブロック以外の多重化サブブロックに接続されたパワースイッチの回路状態をオフ状態に設定する。この場合、使用者によって選択された多重化サブブロックに接続されたパワースイッチの回路状態はオン状態に設定される。これにより、多重化ブロック１１０の不使用の多重化サブブロックに対しパワーゲーティングが適用された状態になる。
【００２６】
図２は、本発明の第１実施形態による半導体集積回路１００の動作例を説明するための図であり、４つの多重化サブブロック１１２４〜１１２７に対してパワーゲーティングが適用された場合のパワースイッチ１１１０〜１１１７の回路状態の一例を示す。
図２の例では、４つの多重化サブブロック１１２０〜１１２３は、使用される多重化サブブロックであり、残りの４つの多重化サブブロック１１２４〜１１２７は、不使用の多重化サブブロックである。
【００２７】
不使用の多重化サブブロック１１２４〜１１２７に対しては、動作前、即ち使用を開始する前の初期設定の段階でパワーゲーティングを常時適用する。具体的には、制御回路１２０により、不使用の多重化サブブロック１１２４〜１１２７に接続されたパワースイッチ１１１４〜１１１７の回路状態がオフ状態に設定される。これにより、不使用の多重化サブブロック１１２４〜１１２７に対する電力供給が遮断され、これらの多重化サブブロック１１２４〜１１２７には電源電圧ＶＤＤは供給されない。従って、原理上、不使用の多重化サブブロック１１２４〜１１２７において消費電力は発生しない。
【００２８】
これに対し、使用される４つの多重化サブブロック１１２０〜１１２３に対しては、パワーゲーティングを常時適用しない。具体的には、制御回路１２０により、使用される多重化サブブロック１１２０〜１１２３に接続されたパワースイッチ１１１０〜１１１３の回路状態がオン状態に設定される。これにより、使用される多重化サブブロック１１２０〜１１２３に対する電力供給が確保され、これらの多重化サブブロック１１２０〜１１２３には電源電圧ＶＤＤが供給される。電源電圧ＶＤＤが供給された多重化サブブロック１１２０〜１１２３は、使用中（動作中）、ストリームデータＰＥＳ０〜ＰＥＳ３を多重化する。多重化ブロック１１０は、多重化サブブロック１１２０〜１１２３により多重化されたストリームをトランスポートストリームデータＴＳとして出力する。
【００２９】
図３は、本発明の第１実施形態による半導体集積回路１００の他の動作例を説明するための図であり、多重化サブブロック１１２１〜１１２７に対してパワーゲーティングが適用された場合のパワースイッチ１１１０〜１１１７の回路状態の一例を示す。
【００３０】
図３の例では、１つの多重化サブブロック１１２０のみが使用される多重化サブブロックであり、他の７つの多重化サブブロック１１２１〜１１２７は不使用の多重化サブブロックである。この場合も同様に、不使用の７つの多重化サブブロック１１２１〜１１２７に対してパワーゲーティングが常時適用され、パワースイッチ１１１１〜１１１７の回路状態がオフ状態に設定される。これにより、不使用の多重化サブブロック１１２１〜１１２７に対する電力供給が遮断される。
【００３１】
これに対し、使用される１つの多重化サブブロック１１２０に対しては、パワーゲーティングが常時適用されず、パワースイッチ１１１０の回路状態がオン状態に設定される。これにより、使用される多重化サブブロック１１２０に対する電力供給が常時確保される。電源電圧ＶＤＤが供給された多重化サブブロック１１２０は、使用中（動作中）、ストリームデータＰＥＳ０を多重化する。多重化ブロック１１０は、多重化サブブロック１１２０により多重化されたストリームをトランスポートストリームデータＴＳとして出力する。
【００３２】
従来技術によれば、通常、パワーゲーティングを適用する際にはＰＭＵ(Power Management Unit)回路等による制御を必要とするが、上述した第１実施形態によれば、使用者の指定に基づいて、パワーゲーティングを適用する多重化ブブロックが決定されるので、ＰＭＵ回路等の複雑な回路を必要としない。従って、上述した第１実施形態によれば、回路規模に与える影響を抑制しつつ、不使用の多重化サブブロックにおける消費電力の発生を防止し、これにより半導体集積回路１００の消費電力を抑制することができる。
【００３３】
また、第１実施形態によれば、制御回路１２０は、回路動作前にパワースイッチ１１１０〜１１１７の状態（オン状態またはオフ状態）の設定を１度だけ行う機能を有していればよい。このため、非常に単純な回路で制御回路１２０を構成することができる。また、制御回路１２０の機能を外部の制御用ＣＰＵ（半導体集積回路１００を備えたシステム等）に代替えさせることもできる。この場合、半導体集積回路１００から制御回路１２０自体を省くことが可能になり、半導体集積回路１００の回路規模を削減できる利点がある。
従って、第１実施形態によれば、回路規模や設計複雑性を増大させることなく消費電力を削減することが可能となる。
【００３４】
（第２実施形態）
次に、本発明の第２実施形態を説明する。
図４は、本発明の第２実施形態による半導体集積回路２００の構成の一例を示すブロック図である。半導体集積回路２００は、上述した第１実施形態による図１に示す半導体集積回路１００の構成において、多重化サブブロック１１２０〜１１２７に代えて、クロックゲーティングを実施するための機能を有する多重化サブブロック２１２０〜２１２７を備えている。
【００３５】
具体的には、半導体集積回路２００は、多重化ブロック２１０と制御回路１２０とを備えている。多重化ブロック２１０は、パワーゲーティングを実施するための複数のパワースイッチ１１１０〜１１１７と、クロックゲーティングを実施するための機能を有する複数の多重化サブブロック２１２０〜２１２７とを備えている。８個の多重化サブブロック２１２０〜２１２７の全てにクロックゲーティングが常時適用される。複数の多重化サブブロック２１２０〜２１２７には、それぞれ、複数のパワースイッチ１１１０〜１１１７が接続されている。
【００３６】
第２実施形態では、複数の多重化サブブロック２１２０〜２１２７のうち、多重化サブブロック２１２０〜２１２３は、使用される多重化サブブロックであり、多重化サブブロック２１２４〜２１２７は、不使用の多重化サブブロックである。使用される多重化サブブロック２１２０〜２１２３の入力部には、それぞれ、外部からストリームデータＰＥＳ０〜ＰＥＳ３が供給される。複数の多重化サブブロック２１２０〜２１２７の出力部は共通接続されて多重化ブロック２１０の出力端子（図示なし）に接続されている。
【００３７】
制御回路１２０は、多重化ブロック２１０が作動する前に、複数の多重化サブブロック２１２０〜２１２７のうち、不使用の多重化サブブロック２１２４〜２１２７に接続されたパワースイッチ１１１４〜１１１７をオフにしてパワーゲーティングを適用することにより、上記不使用の多重化サブブロックに対する電源供給を遮断するための回路要素である。加えて、第２実施形態では、制御回路１２０は、多重化ブロック２１０の作動中に、複数の多重化サブブロック２１２０〜２１２７のうち、上記不使用の多重化サブブロック以外の多重化サブブロック２１２０〜２１２３においてクロックゲーティングを機能させる。その他は、上述した第１実施形態と同様である。
なお、図４の構成においても、パワーゲーティングを適用する多重化サブブロックは任意に設定し得る。
【００３８】
図５は、本発明の第２実施形態による半導体集積回路２００の消費電力推定フローの一例を示すフローチャートである。図５のフローに示すように、制御回路１２０は、構成情報Ｃに基づいて、各多重化サブブロックについてパワーゲーティングを適用するか否かを判定する（ステップＳ１）。パワーゲーティングを適用する場合（ステップＳ１：ＹＥＳ）、使用前（例えば、コンフィギュレーション時）に、不使用の多重化サブブロック２１２４〜２１２７にパワーゲーティングを適用する。具体的には、制御回路１２０は、不使用の多重化サブブロック２１２４〜２１２７に接続されたパワースイッチ１１１４〜１１１７の回路状態をオフ状態に設定し、使用される多重化サブブロック２１２０〜２１２３の回路状態をオン状態に設定する。そして、使用者は、例えば、ＥＤＡ（Electronic Design Automation）プログラムによりシミュレーション結果から使用前の半導体集積回路２００の消費電力を見積もる（ステップＳ２）。
【００３９】
これに対し、制御回路１２０は、パワーゲーティングを適用しないと判定された多重化サブブロック２１２０〜２１２３に対しては、それらの多重化サブブロックにおけるクロックゲーティングを機能させることにより、動作時にクロックゲーティングを適用する（ステップＳ３）。そして、使用者は、例えば、ＥＤＡ（Electronic Design Automation）プログラムによりシミュレーション結果からクロックゲーティング動作中の半導体集積回路２００の消費電力を見積もる（ステップＳ４）。
【００４０】
上述した第２実施形態によれば、パワーゲーティングに加えて、クロックゲーティングを導入したことにより、不使用の多重化サブブロックにおける消費電力の削減効果に加えて、使用される多重化サブブロック１１２０〜１１２３における消費電力を抑制することができる。従って、第２実施形態によれば、第１実施形態に比較して半導体集積回路２００の消費電力を更に改善することができる。
なお、第２実施形態では、多重化サブブロック２１２０〜２１２７にクロックゲーティングを導入したが、クロックゲーティングに代えて、ＡＶＳやＤＶＦＳを適用することも可能であり、また、クロックゲーティングとＡＶＳとＤＶＦＳとの任意の組み合わせを適用することも可能である。
【００４１】
（第３実施形態）
次に、本発明の第３実施形態を説明する。
第３実施形態では、多重化サブブロックの使用状況（例えば、使用頻度）に合わせて、多重化サブブロックに対してパワーゲーティングとクロックゲーティングを適用する。例えば、使用する可能性の高い多重化サブブロックには、パワーゲーティング用のパワースイッチは接続されず、上記使用する可能性の高い多重化サブブロックは、クロックゲーティングを実施するための機能を有している。これに対し、例えば、使用する可能性の低い多重化サブブロックには、パワーゲーティング用のパワースイッチが接続され、上記使用する可能性の低い多重化サブブロックは、クロックゲーティングを実施するための機能は有していない。これにより、使用する可能性の低い多重化サブブロックにはパワーゲーティングが適用され、残りの使用の可能性が高い多重化サブブロックにはクロックゲーティングが適用される。
【００４２】
図６は、本発明の第３実施形態による半導体集積回路３００の構成の一例を示すブロック図である。半導体集積回路３００は、上述した第２実施形態による図４に示す半導体集積回路２００の構成において、多重化サブブロック２１２７に代えて、通常は使用されない予備の多重化サブブロック３１２７を備えている。この例では、使用する可能性の高い多重化サブブロック２１２０から２１２６は、クロックゲーティングを実施するための機能を有し、使用する可能性の低い予備の多重化サブブロック３１２７は、クロックゲーティングを実施するための機能を有していない。また、半導体集積回路３００は、第２実施形態による半導体集積回路２００の構成において、パワースイッチ１１１０〜１１１６が省略され、多重化サブブロック２１２０〜２１２６に電源電圧ＶＤＤが直接的に供給された構成を有している。
【００４３】
具体的には、半導体集積回路３００は、多重化ブロック３１０と制御回路１２０とを備える。多重化ブロック３１０は、パワーゲーティングを実施するためのパワースイッチ１１１７と、通常は不使用の多重化サブブロックである予備の多重化サブブロック３１２７（第１サブブロック）と、使用される複数の多重化サブブロック２１２０〜２１２６（第２サブブロック）とを備えている。このうち、複数の多重化サブブロック２１２０〜２１２６には、パワーゲーティングを実施するためのパワースイッチは接続されておらず、予備の多重化サブブロック３１２７にのみ、パワーゲーティングを実施するためのパワースイッチ１１１７が接続されている。また、複数の多重化サブブロック２１２０〜２１２６は、クロックゲーティングを実施するための機能を有しており、予備の多重化サブブロック３１２７は、クロックゲーティングを実施するための機能を有していない。
【００４４】
また、第３実施形態では、制御回路１２０は、多重化ブロック３１０が作動する前に、予備の多重化サブブロック３１２７に接続されたパワースイッチ１１１７をオフにしてパワーゲーティングを適用することにより、この予備の多重化サブブロック３１２７に対する電源供給を遮断する。即ち、通常は不使用の多重化サブブロックである予備の多重化サブブロック３１２７に対してのみパワーゲーティングが常時適用される。従って、図６の制御回路１２０は、多重化ブロック３１０が作動する前に、不使用の多重化サブブロック３１２７に接続されたパワースイッチ１１１７をオフにしてパワーゲーティングを適用して、上記不使用の多重化サブブロック３１２７に対する電源供給を遮断する。なお、不使用の多重化サブブロックの個数は、１つに限定されず、２以上であってもよい。
図６の例によれば、通常は使用されることのない予備の多重化サブブロックにおける消費電力の発生を防止し、且つ、使用される複数の多重化サブブロック２１２０〜２１２６における消費電力を低減することができる。
【００４５】
図７は、本発明の第３実施形態の他の例による半導体集積回路３００Ａの構成を示すブロック図である。半導体集積回路３００Ａは、上述した第２実施形態による図４に示す半導体集積回路２００の構成において、多重化サブブロック２１２４〜２１２７に代えて、上述した第１実施形態による図１に示す多重化サブブロック１１２４〜１１２７を備えている。複数の多重化サブブロック２１２０〜２１２３には、パワーゲーティングを実施するためのパワースイッチは接続されておらず、複数の多重化サブブロック１１２４〜１１２７には、それぞれ、パワーゲーティングを実施するためのパワースイッチ１１１４〜１１１７が接続されている。
【００４６】
また、制御回路１２０は、多重化ブロック３１０Ａが作動する前に、パワーゲーティングを実施するためのパワースイッチが接続された複数の多重化サブブロック１１２４〜１１２７（第２サブブロック）のうち、不使用のサブブロックに接続されたパワースイッチをオフにしてパワーゲーティングを適用することにより、上記不使用のサブブロックに対する電源供給を遮断する。図７の例では、複数の多重化サブブロック１１２４〜１１２７（第２サブブロック）の全てが不使用の多重化サブブロックであるため、制御回路１２０は、複数の多重化サブブロック１１２４〜１１２７に接続されたパワースイッチ１１１４〜１１１７の回路状態をオフ状態に設定する。
【００４７】
図７の例によれば、最初の４つの多重化サブブロック２１２０〜２１２３にはクロックゲーティングのみが適用され、残りの４つの多重化サブブロック１１２４〜１１２７にはパワーゲーティングのみが適用される。従って、図６の構成に比較して、使用の可能性が低い多重化サブブロックの数が増えた場合においても消費電力を効果的に低減させることができる。
【００４８】
図８は、本発明の第３実施形態の更なる他の例による半導体集積回路３００Ｂの構成を示すブロック図である。半導体集積回路３００Ｂは、多重化ブロック３１０Ｂと制御回路３１０Ｂを備える。多重化ブロック３１０Ｂは、パワースイッチの状態の違いを除けば、上述の図７に示す多重化ブロック３１０Ａと同様の構成を有している。図８の例では、上述の図７の構成において、５つ目の多重化サブブロック１１２４は、使用される多重化サブブロックに変更され、多重化サブブロック１１２４に接続されたパワースイッチ１１１４の回路状態がオン状態に設定されている。他のパワースイッチ１１１５〜１１１７の回路状態はオフ状態に設定されている。図８の例でも、制御回路１２０は、多重化ブロック３１０Ｂが作動する前に、パワーゲーティングを実施するためのパワースイッチが接続された複数の多重化サブブロック１１２４〜１１２７（第２サブブロック）のうち、その一部の不使用の多重化サブブロック１１２５〜１１２７に接続されたパワースイッチ１１１５〜１１１７をオフにしてパワーゲーティングを適用することにより、上記不使用の多重化サブブロック１１２５〜１１２７に対する電源供給を遮断する。図８の例によれば、多重化サブブロック１１２４における消費電力が発生するため、電力削減効果は、図７の例よりも低下するが、図７の例に比較して使用されるサブブロック数が増加した事態に柔軟に対応することができる。
【００４９】
（第４実施形態）
次に、本発明の第４実施形態を説明する。
図９は、本発明の第４実施形態による半導体集積回路４００の構成例を示すブロック図である。半導体集積回路４００は、多重化ブロック４１０を備え、多重化ブロック４１０は、多重化サブブロック４１１，４１２を備えている。このうち、多重化サブブロック４１１には、ストリームデータＰＥＳ０〜ＰＥＳ７の８本のストリームが入力され、多重化サブブロック４１２には、１本のストリームデータＰＥＳ８のみが入力される。即ち、多重化サブブロック４１１には多数のストリームが入力され、多重化サブブロック４１２には少数のストリームが入力され、入力数が異なっている。
【００５０】
第４実施形態では、入力数の少ない多重化サブブロック４１２に、ＤＶＦＳやＡＶＳ等の電力削減手法が適用される。これにより、第４実施形態によれば、各多重化サブブロックの入力数の違いに応じて、全体の多重化速度を損なうことなく、低電力化を実現することができる。
なお、第４実施形態は、上述した第１から第３実施形態における各多重化サブブロックの入力数が相互に異なる場合、第１から第３実施形態と組み合わせることも可能である。
【００５１】
（第５実施形態）
次に、本発明の第５実施形態を説明する。
図１０は、本発明の第５実施形態による半導体集積回路５００の構成例を示すブロック図である。半導体集積回路５００は、多重化ブロック５１０を備え、多重化ブロック５１０は、複数の多重化サブブロック５１１，５１２，５１３を備えている。このうち、多重化サブブロック５１１は、映像を多重化するモジュールであり、多重化サブブロック５１１には、映像ＰＥＳ(Video)が入力される。多重化サブブロック５１２は、音声を多重化するモジュールであり、多重化サブブロック５１２には、音声ＰＥＳ(Audio)が入力される。多重化サブブロック５１３は、ユーザデータを多重化するモジュールであり、多重化サブブロック５１３には、ユーザデータＰＥＤ(User)が入力される。即ち、多重化サブブロック５１１，５１２，５１３には、それぞれ、異なる種類のストリームが入力される。
【００５２】
通常、音声やユーザデータは、映像に比べてデータ量が少ないので、音声ＰＥＳやユーザデータＰＥＳの処理の負担は、映像ＰＥＳの処理より少ない。従って、音声やユーザデータのモジュールにＤＶＦＳやＡＶＳ等の電力削減手法を適用しても、音声ＰＥＳやユーザデータＰＥＳの処理に与える影響は少ない。そこで、第５実施形態では、音声を多重化するモジュールである多重化サブブロック５１２と、ユーザデータを多重化する多重化サブブロック５１３とに対して、ＤＶＦＳやＡＶＳ等の電力削減手法を適用する。これにより、第５実施形態によれば、各多重化サブブロックに入力されるストリームの種類の違いに応じて、多重化の全体的な処理速度に与える影響を抑制しつつ、低電力化を実現することができる。
なお、第５実施形態は、例えば、上述した第１から第３実施形態と組み合わせることも可能である。
【００５３】
（第６実施形態）
次に、本発明の第６実施形態を説明する。
図１１は、本発明の第６実施形態による半導体集積回路６００の構成例を示すブロック図である。半導体集積回路６００は、複数の多重化ブロック６１０と制御回路６２０とを備えている。多重化ブロック６１０は、複数の多重化サブブロック６１１，６１２，６１３を備えている。多重化サブブロックの数は任意に設定し得る。多重化サブブロック６１１，６１２，６１３には、それぞれ、ストリームデータＰＥＳ０，ＰＥＳ１，ＰＥＳ２が入力される。
【００５４】
第６実施形態では、入力されるストリームデータＰＥＳ０，ＰＥＳ１，ＰＥＳ２に対する処理負荷の指標の一つであるフレームレートに応じて、多重化サブブロック６１１，６１２，６１３のそれぞれにＤＶＦＳやＡＶＳ等の電力削減手法が適用される。即ち、制御回路６２０は、多重化サブブロック６１１，６１２，６１３にそれぞれ入力されるストリームデータＰＥＳ０，ＰＥＳ１，ＰＥＳ２のフレームレートに応じて、多重化サブブロック６１１，６１２，６１３のそれぞれに対してＤＶＦＳやＡＶＳ等の電力削減手法を適用する。
【００５５】
具体的には、制御回路６２０は、入力されるストリームデータのフレームレートが低い程（即ち、処理負荷が低い程）、多重化サブブロックの動作電圧や動作周波数を低下させる。一例として、ストリームデータＰＥＳ０〜ＰＥＳ２のうち、ストリームデータＰＥＳ２のフレームレートが他のストリームデータＰＥＳ０，ＰＥＳ１よりも低ければ、制御回路６２０は、多重化サブブロック６１１，６１２よりも多重化サブブロック６１３の動作電圧や動作周波数を低くすることにより、多重化サブブロック６１３における消費電力を抑制する。
従って、第６実施形態によれば、各多重化サブブロックに入力されるストリームデータのフレームレートの違いに応じて、全体の多重化速度を損なうことなく、低電力化を実現することができる。
【００５６】
なお、多重化サブブロック６１１〜６１３のそれぞれに適用される電力削減手法は、ＤＶＦＳまたはＡＶＳの何れか一方であってもよく、ＤＶＦＳおよびＡＶＳの両方であってもよく、ＤＶＦＳやＡＶＳ等の複数種類の手法の任意の組み合わせであり得る。
また、第６実施形態は、例えば、上述した第１から第３実施形態と組み合わせることも可能である。
【００５７】
（第７実施形態）
次に、本発明の第７実施形態を説明する。
図１２は、本発明の第７実施形態による半導体集積回路７００の構成例を示すブロック図である。半導体集積回路７００は、多重化ブロック７１０を備え、多重化ブロック７１０は、複数の多重化サブブロック７１１，７１２，７１３を備えている。多重化サブブロックの数は任意に設定し得る。
【００５８】
上述の第６実施形態では、図１１に示した制御回路６２０により、多重化サブブロック６１１〜６１３のそれぞれに対する電力削減手法の適用を制御するものとしたが、第７実施形態では、多重化サブブロック７１１〜７１３のそれぞれが、電力削減手法の適用を実施するための機能と、上記電力削減手法の適用を制御するための機能とを備えている。即ち、多重化サブブロック７１１〜７１３には、図１１に示した制御回路６２０の制御機能が組み込まれている。その他は、第６実施形態と同様である。
【００５９】
第７実施形態によれば、上述した第６実施形態と同様に、各多重化ブロックに入力されるストリームデータのフレームレートのうち、フレームレートが低いストリームデータが入力される多重化サブブロックに対しＤＶＦＳやＡＶＳ等の電力削減手法を適用して低電力化を図ることができる。
【００６０】
また、第７実施形態では、各多重化サブブロックは、入力されるストリームデータに対する処理負荷の指標の一つとして、処理の際に各多重化サブブロックがストリームデータを一時的に格納する自身のバッファのデータ蓄積量を把握することができる。このため、各多重化サブブロックは、入力されるストリームデータのフレームレートに代えて、多重化サブブロック自身のバッファのデータ蓄積量に応じてＤＶＦＳやＡＶＳ等の電力削減手法を適用することもできる。また、各多重化サブブロックは、入力されるストリームデータのフレームレートとバッファのデータ蓄積量との組み合わせに応じてＤＶＦＳやＡＶＳ等の電力削減手法を適用することもできる。
【００６１】
（第８実施形態）
次に、本発明の第８実施形態を説明する。
図１３は、本発明の第８実施形態による半導体集積回路８００の構成例を示すブロック図である。半導体集積回路８００は、第１集積回路８１０と第２集積回路８２０とを備えている。第１集積回路８１０と第２集積回路８２０は、それぞれ、例えばＬＳＩ(Large Scale Integration)である。このうち、第１集積回路８１０は、多重化サブブロック８１１を備え、第２集積回路８２０は、多重化サブブロック８２１を備えている。多重化サブブロック８２１は、ＤＶＦＳまたはＡＶＳの機能を備えている。第１集積回路８１０および第２集積回路８２０の各多重化サブブロックの数は任意に設定し得る。
【００６２】
第１集積回路８１０に備えられた多重化サブブロック８１１には、外部からストリームデータＰＥＳａが入力され、この多重化サブブロック８１１の出力は、第２集積回路８２０に備えられた多重化サブブロック８２１に供給される。第２集積回路８２０に備えられた多重化サブブロック８１１には、外部からストリームデータＰＥＳｂが入力される。多重化サブブロック８２１は、第１集積回路８１０に備えられた多重化サブブロック８１１の出力と外部から供給されるストリームデータＰＥＳｂとを多重化してトランスポートストリームデータＴＳを生成する。
【００６３】
一般に、大規模な多重化処理の場合は、図１３に示す例のように、複数の集積回路（ＬＳＩ）の多重化サブブロックを従属接続して多重化を行う構成をとることがある。この場合、半導体集積回路８００にストリームデータＰＥＳａが入力されてからトランスポートストリームデータＴＳが出力されるまでの信号経路上には、第１集積回路８１０と第２集積回路８２０との２つのデバイスが存在する。これに対し、半導体集積回路８００にストリームデータＰＥＳｂが入力されてからトランスポートストリームデータＴＳが出力されるまでの信号経路上には、第１集積回路８１０のみが存在する。このため、ストリームデータＰＥＳａとストリームデータＰＥＳｂとに対する処理による遅延時間は異なり、ストリームデータＰＥＳｂに対する処理の遅延時間の方がストリームデータＰＥＳｂに対する処理の遅延時間よりも短い。
【００６４】
そこで、第８実施形態では、２つ目の第２集積回路８２０に備えられた多重化サブブロック８２１に対してＤＶＦＳやＡＶＳ等の電力削減手法を適用する。これにより、多重化処理のための複数の集積回路を従属接続した場合であっても、多重化の全体的な処理速度に与える影響を抑制しつつ、低電力化を実現することができる。
【００６５】
次に、本発明の実施形態の効果の一例を説明する。
従来例の並列的（個別的）に複数の消費電力削減方法を適用する構成に比べて、上述した本発明の実施形態により、使用前に不使用の多重化サブブロックに対しパワーゲーティングを適用し、また、動作時にクロックゲーティングを適用することにより、顕著な消費電力削減効果を得ることができる。回路規模に関しては、多重化サブブロックの使用頻度に応じて、パワーゲーティングおよびクロックゲーティングの各適用対象のブロックを限定することにより、回路規模を有効に削減することができる。
【００６６】
図１４は、本発明の実施形態による半導体集積回路の効果の一例を示す図である。
図１４の例は、使用される多重化サブブロックが１つの場合と、使用される多重化サブブロックが４つの場合と、使用される多重化サブブロックが８つの場合の使用時の消費電力削減効率を示している。パワーゲーティングの後にクロックゲーティングを適用することにより、さらに消費電力削減を図ることができることが理解される。上述の実施形態によれば、パワーゲーティングを使用開始前から適用し、クロックゲーティングを使用時に適用し、これらを分けて段階的に適用するので、設計複雑度の増大および信頼性の低下を回避することができる。
【００６７】
以上、本発明の実施形態を説明したが、本発明は上述の実施形態に限定されず、本発明の要旨を逸脱しない範囲内で、種々の修正、変形、付加、置換等が可能である。
【符号の説明】
【００６８】
１００，２００，３００，３００Ａ，３００Ｂ，４００，５００，６００，７００，８００…半導体集積回路、１１０，２１０，３１０，３１０Ａ，３１０Ｂ，４１０，５１０，６１０，７１０…多重化ブロック、１２０…制御回路、４１１，４１２，５１１〜５１３，６１１〜６１３，７１１〜７１３，８１１，８２１，１１２０〜１１２７，２１２０〜２１２７，３１２７…多重化サブブロック、８１０…第１集積回路、８２０…第２集積回路、１１１０〜１１１７…パワースイッチ。
【図１】
2016143206.tif 000003
【図２】
2016143206.tif 000004
【図３】
2016143206.tif 000005
【図４】
2016143206.tif 000006
【図５】
2016143206.tif 000007
【図６】
2016143206.tif 000008
【図７】
2016143206.tif 000009
【図８】
2016143206.tif 000010
【図９】
2016143206.tif 000011
【図１０】
2016143206.tif 000012
【図１１】
2016143206.tif 000013
【図１２】
2016143206.tif 000014
【図１３】
2016143206.tif 000015
【図１４】
2016143206.tif 000016