(57)【要約】【課題】  電源遮断・復帰を動的に行った場合でも、リアルタイム性の低下を防止すること。【解決手段】  複数のチャネルと、複数の入出力部を具備するとともに、複数のチャネルと複数の入出力部を相互に接続する接続部、複数のチャネルの稼働状態を監視するチャネル監視部、複数のチャネルに処理を割当てるチャネル割当部、及び複数のチャネルの電源を制御する電源制御部を具備し、複数のチャネルの各々において、時分割で複数の入出力部への入出力を可能とすることにより、稼働するチャネルの個数を減らすとともに、稼働していないチャネルの電源を遮断する。さらに、チャネル割当部及び電源制御部は、新たな処理を遅延無くできるように、稼働していないチャネルの一部を電源投入状態で待機させる。【選択図】図１
2020088211.tif 000002
【特許請求の範囲】
【請求項１】
複数のチャネルと、複数の入出力部を具備するとともに、
複数のチャネルと複数の入出力部を相互に接続する接続部、
複数のチャネルの稼働状態を監視するチャネル監視部、
複数のチャネルに処理を割当てるチャネル割当部、
及び複数のチャネルの電源を制御する電源制御部を具備し、
複数のチャネルの各々において、時分割で複数の入出力部への入出力を可能とすることにより、稼働するチャネルの個数を減らすとともに、稼働していないチャネルの電源を遮断することを特徴とする半導体集積回路。
【請求項２】
チャネル割当部及び電源制御部は、新たな処理を遅延無くできるように、稼働していないチャネルの一部（以下、待機チャネルと記す）を電源投入状態で待機させることを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
チャネル監視部及びチャネル割当部は、複数のチャネルに対する監視及び処理の割当てを、第一の所定期間の単位で行うことを特徴とする請求項１又は２に記載の半導体集積回路。
【請求項４】
チャネル割当部は、待機チャネル以外のチャネルから優先的に処理を割当てることを特徴とする請求項１乃至３の何れか一項に記載の半導体集積回路。
【請求項５】
チャネル割当部及び電源制御部は、待機チャネルも含めて、空きのチャネル数が所定数以下になった場合、新たな待機チャネルの電源を投入し、待機させることを特徴とする請求項１乃至４の何れか一項に記載の半導体集積回路。
【請求項６】
チャネル割当部及び電源制御部は、待機チャネルにおいて、新たな処理が第二の所定時間無く、かつ、他のチャネルに新たな処理ができる余地がある場合、当該待機チャネルの電源を遮断することを特徴とする請求項１乃至５の何れか一項に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路に関する。
【背景技術】
【０００２】
半導体集積回路の消費電力を制御する技術として、半導体集積回路の電源領域（パワードメイン）を複数に分割し、電源の遮断・復帰（オフ・オン）制御をリアルタイムに行う技術が一般的に知られている。「電源遮断」や「パワーゲーティング」と呼ばれている技術である。即ち、使用していない領域の電源を遮断することによって、半導体集積回路の消費電力（主にリーク電力）を削減することが可能となる。この技術を用いて、例えば、半導体集積回路の動作モードやデータ処理量などに応じて、各電源領域の遮断・復帰制御を適切に行うことによって、消費電力の削減をより効果的に行うことが可能となる。
【０００３】
特許文献１には、複数の回路ブロックを備えるアレイ型演算装置における電源制御に関し、演算装置が消費する消費電力量を予測し、待機状態にするか電源遮断するかを選択することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１４２７１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、電源遮断を行った領域を復帰させる場合、当該領域の電源電圧が安定するまでの復帰時間がかかる。さらに、復帰した領域の回路に対して、ソフトウェアによってレジスタ設定などの再初期化をする時間もかかる。これらの時間が、例えばソフトウェア処理の遅延の原因となり、半導体集積回路のリアルタイム性が低下する場合がある。
【０００６】
本発明の目的は、特に複数のチャネルのモジュールを具備する半導体集積回路において、低消費電力化のために電源遮断・復帰を動的に行った場合でも、リアルタイム性の低下の少ない半導体集積回路を提供することにある。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために、本発明に係る半導体集積回路では、
複数のチャネルと、複数の入出力部を具備するとともに、複数のチャネルと複数の入出力部を相互に接続する接続部、複数のチャネルの稼働状態を監視するチャネル監視部、複数のチャネルに処理を割当てるチャネル割当部、及び複数のチャネルの電源を制御する電源制御部を具備し、複数のチャネルの各々において、時分割で複数の入出力部への入出力を可能とすることにより、稼働するチャネルの個数を減らすとともに、稼働していないチャネルの電源を遮断する。さらに、チャネル割当部及び電源制御部は、新たな処理を遅延無くできるように、稼働していないチャネルの一部を電源投入状態で待機させる。
【発明の効果】
【０００８】
本発明に係る半導体集積回路によれば、電源遮断・復帰を動的に制御することにより、半導体集積回路の消費電力を削減した場合でも、リアルタイム性の低下が少ない制御が可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明による半導体集積回路を用いた撮像装置における、シリアル通信部のチャネルの割当て及び電源遮断・復帰の制御方式を説明する概念図
【図２】本発明による半導体集積回路を用いた撮像装置の、第一の実施形態を表したブロック図
【図３】本発明による半導体集積回路を用いた撮像装置の、シリアル通信部及び周辺のブロック図
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について、図面を参照しながら説明する。
【００１１】
＜第一の実施形態＞
図２は、本発明による半導体集積回路を用いた撮像装置の、第一の実施形態を表したブロック図である。
【００１２】
スイッチ群１０７は、撮影モードの設定など、撮影に関わる様々な情報をＣＰＵ１０１へ出力する。またレリーズスイッチが出力する信号は、ＡＥやＡＦの動作開始トリガや、撮影の開始トリガとなる。ＣＰＵ１０１はこれらの開始トリガを受けて、メカ群１０８、撮像部１２１、表示部１２４をはじめとする、撮像装置の各部の制御を行う。また、ＲＯＭ１０３には、ＣＰＵ１０１のためのプログラムやデータが格納されている。
【００１３】
撮像部１２１は、Ａ／Ｄ変換部１２２へ画像データを出力する。Ａ／Ｄ変換部１２２は画像データをデジタル化し、画像処理部１２３へ出力する。画像処理部１２３は、ホワイトバランス、色変換等の様々な画像形成処理や、形成後の画像を圧縮する圧縮処理を行う。処理後の画像データは、バス１０２を介してメインメモリ１０４へ一時的に格納される。格納された画像データは、カードＩ／Ｆ１０５を介して外部の記録媒体（図示せず）に記録されるか、もしくは通信Ｉ／Ｆ１０６を介して、パーソナルコンピュータ等の外部装置（図示せず）に送信される。シリアル通信部１１０は、例えばサブマイコン、オーディオＩＣ、各種ドライバ、ＦＰＧＡなどの外部の電子デバイス（電子部品。図示せず）とシリアル通信を行う。
【００１４】
表示部１２４は、撮像装置のユーザインターフェース画面を表示するか、電子ビューファインダとして使用するか、もしくは撮影後の画像を表示する。割込み制御部１０９は、撮像装置の各部がアサートする割込み要求信号の検知及び制御と、ＣＰＵ１０１への割込み要求の通知を行う。
【００１５】
図３は、本発明による半導体集積回路を用いた撮像装置の、シリアル通信部１１０及び周辺のブロック図である。
【００１６】
バスＩ／Ｆ部２００は、バス１０２のＩ／Ｆである。ＣＰＵ１０１などのバスマスタが発行する、レジスタアクセスやシリアル通信のＰＩＯ転送などに応答を返す、バススレーブの機能を少なくとも具備する。
【００１７】
ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７は、シリアル通信を行うモジュールであり、本実施形態においては、８チャネルのシリアル通信モジュールを具備する。接続部２２０は、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７とＩＯ０  ３００〜ＩＯ７  ３０７を相互に接続するクロスバー・スイッチである。なおシリアル通信モジュールのチャネル数は、別の値であってもよい。
【００１８】
チャネル監視部２３０は、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７の稼働状況を監視するモジュールである。チャネル割当部２３１は、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７個々に対して、どのチャネルにどの外部デバイスへの転送を割当てるかを制御するモジュールで、詳細については後述する。電源制御部２３２は、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７の電源の遮断・復帰を制御するモジュールである。
【００１９】
ＩＯ０  ３００〜ＩＯ７  ３０７は、半導体集積回路のＩＯである。外部デバイス０  ９００〜外部デバイス７  ９０７は、図２を用いて説明したとおり、外部の電子デバイスで、例えばサブマイコン、オーディオＩＣ、各種ドライバ、ＦＰＧＡなどの電子部品である。
【００２０】
図１は、本発明による半導体集積回路を用いた撮像装置における、シリアル通信部１１０のチャネルの割当て及び電源遮断・復帰の制御方式を説明する概念図である。
【００２１】
図１の（ａ）は、シリアル通信部１１０の接続部２２０をクロスバー・スイッチとして使用しない場合の動作を説明する図である。図１の（ａ）においては、ＳＩＯ  ＣＨ．０  ２１０はＩＯ０  ３００と固定的に接続されている。ＳＩＯ  ＣＨ．１  ２１１はＩＯ１  ３０１と固定的に接続され、以下同様にして、ＳＩＯ  ＣＨ．７  ２１７はＩＯ７  ３０７と固定的に接続されている。また、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７とＩＯ０  ３００〜ＩＯ７  ３０７の接続が固定的であるため、動的なチャネルの割当て及び電源遮断・復帰の制御は行わない。
【００２２】
本実施形態においては、２つの単位時間に基いて制御が行われる。図１の（ａ）においては、この２つの単位時間をスロットとグループと記している。スロットは約１ｍＳの期間であり、スロットの単位でチャネルの割当てを行う。一方、グループは１６スロットの期間であり、１フレーム（静止画、動画ともに）の処理を行う期間と等しくなっている。なお、スロットの期間は別の値であってもよく、グループも別のスロット数やフレーム数であってもよい。
【００２３】
図１の（ａ）においては、０〜Ｆまでの１６スロットを１グループとし、グループ０及びグループ１の２つのグループについての制御を記載している。また同図においては、「−」の記号が記載されているスロットのみに、シリアル通信のデータ転送が発生している。即ち、ＳＩＯ  ＣＨ．０  ２１０、ＳＩＯ  ＣＨ．１  ２１１及びＳＩＯ  ＣＨ．７  ２１７は、図示した期間にデータ転送が発生していない。
【００２４】
一方、ＳＩＯ  ＣＨ．２  ２１２は、グループ０のスロット０、２、４、６、８、Ａ、Ｃ及びＥと、グループ１のスロット０、２、４、６、８、Ａ、Ｃ及びＥにデータ転送が発生している。以下、これらのデータ転送を「転送ＩＤ２の転送」と記す。
【００２５】
ＳＩＯ  ＣＨ．３  ２１３は、グループ０のスロット２、３、８、９、Ｅ及びＦと、グループ１のスロット４、５、Ａ及びＢにデータ転送が発生している。以下、これらのデータ転送を「転送ＩＤ３の転送」と記す。
【００２６】
ＳＩＯ  ＣＨ．４  ２１４は、グループ０のスロット８、９、Ａ、Ｅ及びＦと、グループ１のスロット０、４、５及び６にデータ転送が発生している。以下、これらのデータ転送を「転送ＩＤ４の転送」と記す。
【００２７】
ＳＩＯ  ＣＨ．５  ２１５は、グループ０のスロット１、５、７、Ｂ及びＤと、グループ１のスロット１、３、７、９及びＤにデータ転送が発生している。以下、これらのデータ転送を「転送ＩＤ５の転送」と記す。
【００２８】
ＳＩＯ  ＣＨ．６  ２１６は、グループ０のスロット５及びＢと、グループ１のスロット１、７及びＤにデータ転送が発生している。以下、これらのデータ転送を「転送ＩＤ６の転送」と記す。
【００２９】
図１の（ｂ）は、動的なチャネルの割当て及び電源遮断・復帰の制御を行って、図１の（ａ）と同じ内容のシリアル通信を実施した場合の動作を説明する図である。スロット及びグループについては、図１の（ａ）と同様である。
【００３０】
まず、動作の概要について説明する。図１の（ａ）においては、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７が散発的にデータ転送を行う場合が多く、シリアル通信モジュールの稼働の仕方が疎であった。
【００３１】
一方、図１の（ｂ）においては、まず、シリアル通信部１１０の接続部２２０をクロスバー・スイッチとして稼働させることにより、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７は各々、ＩＯ０  ３００〜ＩＯ７  ３０７に対して接続することが可能となる。そして、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７の個々において時分割多重を行うことにより、稼働するチャネルを集約化する。これにより、不使用となるチャネル数を図１の（ａ）の場合よりも増加させることができる。
【００３２】
電源復帰の際の復帰時間及び再初期化時間によって、ソフトウェア処理に遅延が発生し、半導体集積回路のリアルタイム性が低下する場合があることは前述した。撮像装置に即して具体例を挙げると、特にユーザがシャッターボタンを押してから撮影開始までの間に、前述のような遅延が複数回発生すると、ソフトウェアの処理時間が、レリーズタイムラグを超えてしまう（即ち、撮影が間に合わなくなる）可能性がある。
【００３３】
一方、画像処理などは、フレーム周期に同期した周期的な処理が行われる場合も多いが、シリアル通信は、パネルやリモコンなどのユーザ操作や、周期的でないイベントによって起動する通信も多い。このため、各チャネルの稼働時期や稼働チャネル数を正確に予測することが難しい。
【００３４】
これらの問題に対応するために、本実施形態においては、新たなデータ転送を遅延無くできるように、スペアのチャネル（以下、待機チャネルと記す）が電源オン状態で待機していて、新たなデータ転送に即時対応する。なお待機チャネルの数は、固定的ではある必要はなく、稼働状況によって動的に増減してもよい。
【００３５】
そして、残りの不使用チャネルは電源を遮断する。これにより、図１の（ａ）の場合よりも消費電力を削減することが可能となる。
【００３６】
次に、上記の動作の詳細について説明する。まず、前述のとおり、チャネル割当部２３１は、スロットの単位でチャネルの割当てを行う。そしてチャネル割当部は、新たなデータ転送が発生した際に、待機チャネル以外のチャネルから優先的に割当てる。このような優先づけを行う理由は、待機チャネルを可能な限り長い期間待機状態にしておくとともに、待機状態が所定の期間以上続くようであれば、当該待機チャネルを電源遮断することにより、さらに効率的な消費電力の制御が可能となる場合があるためである。その詳細については後述する。
【００３７】
図１の（ｂ）においては、最低２チャネルのチャネルを電源オン状態にし、以降、空きチャネルが無くなるごとに、待機チャネルを１チャネル確保するように電源の遮断・復帰制御を行う。また、新たなデータ転送が発生した際には、チャネル番号の小さい順に優先的に割当てる。このため、図１の（ｂ）においは、最初はＳＩＯ  ＣＨ．０  ２１０及びＳＩＯ  ＣＨ．１  ２１１が電源オン状態となっている。なお、電源オン状態にしておく最低チャネル数や、確保する待機チャネル数は、別の値であってもよい。
【００３８】
そしてグループ０のスロット０で、チャネル監視部２３０は転送ＩＤ２の転送の発生を検知するとともに、チャネル割当部２３１に対してチャネルの割当て要求を行う。これを受けてチャネル割当部２３１は、転送ＩＤ２の転送をチャネル番号の最も小さいＳＩＯ  ＣＨ．０  ２１０に割当てる。なお、チャネルの監視方法及び割当て方法の詳細については後述する。
【００３９】
次にグループ０のスロット１で、チャネル監視部２３０は転送ＩＤ５の転送が発生を検知するとともに、チャネル割当部２３１に対してチャネルの割当て要求を行う。これを受けてチャネル割当部２３１は、転送ＩＤ５の転送をＳＩＯ  ＣＨ．０  ２１０に割当てる。
【００４０】
ここで、チャネルの監視方法及び割当て方法について、詳細に説明する。まず、各チャネルには、データ送信レジスタ及びデータ受信レジスタを具備している。各レジスタには固有のアドレスが与えられており、アドレスからどのレジスタであるかを一意に識別することが可能である。これにより、チャネル監視部２３０は、ＣＰＵ１０１などのバスマスタから発行され、バスＩ／Ｆ部２００が受信するレジスタアクセスを監視することにより、データ転送の発生を検知する。そして、新たなチャネルへのデータ転送を検知すると、チャネル割当部２３１に対してチャネルの割当て要求を行う。
【００４１】
チャネル割当部２３１においては、前述のとおり、待機チャネル以外の空きチャネルを優先的に割当て、かつ、チャネル番号の小さい順に優先的に割当てる。そしてチャネル割当部２３１は、バスＩ／Ｆ部２００に対して、現在の転送のチャネル番号を出力する。即ち、ＳＩＯ  ＣＨ．０  ２１０であれば０を、ＳＩＯ  ＣＨ．１  ２１１であれば１を、以下同様にしてＳＩＯ  ＣＨ．７  ２１７であれば７を出力する。バスＩ／Ｆ部２００は、チャネル割当部２３１が出力するチャネル番号に基づいて、ＳＩＯ  ＣＨ．０  ２１０〜ＳＩＯ  ＣＨ．７  ２１７のうち、１つのシリアル通信モジュールを選択する。
【００４２】
シリアル通信モジュールの選択について、さらに説明する。図１の（ａ）に記した通り、転送ＩＤ２の転送は、元々チャネル２を使用した転送であった。同様に転送ＩＤ５の転送の転送は、元々チャネル５を使用した転送であった。図１の（ｂ）においては、チャネル割当部２３１が出力するチャネル番号に基づいて、シリアル通信モジュールを選択することによって、これら２つの転送はチャネル０が使用されることになる。このようにして、チャネルの割当て（言い換えると転送経路の変更）が行われる。
【００４３】
グループ０のスロット２以降の説明に戻る。グループ０のスロット２で、チャネル監視部２３０は転送ＩＤ３の転送が発生を検知するとともに、チャネル割当部２３１に対してチャネルの割当て要求を行う。これを受けてチャネル割当部２３１は、転送ＩＤ３の転送をＳＩＯ  ＣＨ．１  ２１１に割当てる。さらにチャネル割当部２３１は、転送ＩＤ３の転送の転送の割当てを行ったことにより、空きチャネルが無くなったことを検知し、電源制御部２３２に対してＳＩＯ  ＣＨ．２  ２１２の電源復帰要求を行う。これを受けて電源制御部２３２は、ＳＩＯ  ＣＨ．２  ２１２の電源復帰を行う。
【００４４】
次にグループ０のスロット５で、チャネル監視部２３０は転送ＩＤ６の転送が発生を検知するとともに、チャネル割当部２３１に対してチャネルの割当て要求を行う。これを受けてチャネル割当部２３１は、転送ＩＤ６の転送をＳＩＯ  ＣＨ．１  ２１１に割当てる。
【００４５】
さらにグループ０のスロット８で、チャネル監視部２３０は転送ＩＤ４の転送が発生を検知するとともに、チャネル割当部２３１に対してチャネルの割当て要求を行う。これを受けてチャネル割当部２３１は、転送ＩＤ４の転送をＳＩＯ  ＣＨ．２  ２１２に割当てる。さらにチャネル割当部２３１は、転送ＩＤ４の転送の転送の割当てを行ったことにより、空きチャネルが無くなったことを検知し、電源制御部２３２に対してＳＩＯ  ＣＨ．３  ２１３の電源復帰要求を行う。これを受けて電源制御部２３２は、ＳＩＯ  ＣＨ．３  ２１３の電源復帰を行う。
【００４６】
以上のようにチャネルの割当てを行うことにより、ＳＩＯ  ＣＨ．０  ２１０では転送ＩＤ２及び転送ＩＤ５の転送が実行され、ＳＩＯ  ＣＨ．１  ２１１では転送ＩＤ３及び転送ＩＤ６の転送が実行され、ＳＩＯ  ＣＨ．３  ２１３では、ＩＤ４の転送が実行される。
【００４７】
グループ１のスロット８で、チャネル割当部２３１は、待機チャネルであったＳＩＯ  ＣＨ．３  ２１３が、グループ０のスロット８から１６スロットの期間未使用であることを検知する。同時に、ＳＩＯ  ＣＨ．１  ２１１及びＳＩＯ  ＣＨ．２  ２１２にも空きがあることを検知する。これによりチャネル割当部２３１は、電源制御部２３２に対してＳＩＯ  ＣＨ．３  ２１３の電源遮断要求を行う。これを受けて電源制御部２３２は、ＳＩＯ  ＣＨ．３  ２１３の電源遮断行う。なお、電源遮断を行う条件のスロット数は、別の値でもよい。
【００４８】
以上のようなチャネルの割当て及び電源の遮断・復帰制御を行うことにより、電源遮断するチャネル数を最大化し、効率的な消費電力の制御が可能となる。これにより、リアルタイム性を低下させることなく、半導体集積回路の消費電力を削減することが可能となる。
【００４９】
なお上記では、シリアル通信の動作について説明してきたが、本発明はタイマやＤＭＡコントローラなど、複数チャネルを具備する他のモジュールにも適用可能である。
【符号の説明】
【００５０】
１０１  ＣＰＵ、１０２  バス、１０３  ＲＯＭ、１０４  メインメモリ、
１０５  カードＩ／Ｆ、１０６  通信Ｉ／Ｆ、１０７  スイッチ群、
１０８  メカ群、１０９  割込み制御部、１１０  シリアル通信部、
１２１  撮像部、１２２  Ａ／Ｄ変換部、１２３  画像処理部、
１２４  表示部、２００  バスＩ／Ｆ部、
２１０〜２１７  ＳＩＯ  ＣＨ．０〜ＣＨ．７、２２０  接続部、
２３０  チャネル監視部、２３１  チャネル割当部、２３２  電源制御部、
３００〜３０７  ＩＯ０〜７、９００〜９０７  外部デバイス０〜７
【図１】
2020088211.tif 000003
【図２】
2020088211.tif 000004
【図３】
2020088211.tif 000005