(57)【特許請求の範囲】
【請求項１】
車両に搭載され、該車両を制御するように構成された車載電子制御装置であって、
複数のコアを搭載したマルチコアプロセッサを備え、
前記複数のコアは、同一の周期Ｔで周期的に周波数が変動する動作クロックで動作するように構成され、
コアの動作クロックの周波数の変動位相が、前記複数のコア間でずらされることを特徴とする、車載電子制御装置。
【請求項２】
前記複数のコアの数は、２以上の整数Ｎであり、
各コアの動作クロックの周波数の変動位相は、時間Ｔ／Ｎに相当する位相ずつずらされる、請求項１に記載の車載電子制御装置。
【請求項３】
コアの動作クロックの周波数が変動する際の中心周波数は、前記複数のコア間で同一であり、
コアの動作クロックの周波数の変動振幅は、前記複数のコア間で同一である、請求項１又は２に記載の車載電子制御装置。
【請求項４】
コアの動作クロックの周波数の変動態様は、前記複数のコア間で、前記変動位相がずらされる以外は同一である、請求項１又は２に記載の車載電子制御装置。
【請求項５】
前記複数のコアの動作状態に応じて、動作中のコア間での動作クロックの周波数の変動位相のずれ量を変化させる、請求項１又は２に記載の車載電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のコアを搭載したマルチコアプロセッサを備える車載電子制御装置に関する。
【背景技術】
【０００２】
従来から、複数のＣＰＵコアを内蔵するＬＳＩを使用する電子機器において、待機時に遷移する電子機器の低消費電力モードでの消費電力低減等を図る技術が知られている（例えば、特許文献１参照）。この電子機器においては、ＣＰＵは通常動作モードと低消費電力モードを備え、ＣＰＵへ供給するクロックの周波数を変更可能とし、各ＣＰＵが相互に動作モードを検知可能であると共に、各ＣＰＵが相互に動作モード変更要求を通知可能である。
【０００３】
また、ＡＳＩＣ（集積回路）を実装する電子回路基板において、ＡＳＩＣの電源端子に供給する電源電圧にリップルを重畳することにより、ＡＳＩＣ内部の電源ライン及びロジック回路信号の動作周波数の安定性を低下させ、ＡＳＩＣ内部回路動作周波数のジッタ成分を増加させる事により、ＡＳＩＣ及び電子回路基板からのＥＭＩ（放射ノイズ）を低減させることを特徴としたＥＭＩ対策方法が知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−４７９６６号公報
【特許文献２】特開２００７−４３５５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、車両電子システムは、多数のＥＣＵ（電子制御装置）により構成されている。殆どのＥＣＵには、マイコン（ソフトウェアで処理内容を容易に変更できる演算装置）が搭載されている。マイコンには、そのソフトウェアを処理するコア（ＣＰＵとも称される）が内蔵されている。近年では、処理能力の急激な向上要求に起因して、コアを動作させるクロックの周波数の増大が著しく、ＥＣＵが発生する放射ノイズの主要因になってきた。特に、複数のコアを搭載したマルチコアプロセッサでは、高周波で動作するコアが複数存在するため、その動作周波数の分周・逓倍した周波数にて高強度のノイズが発生する。また、周波数の向上に伴い消費電力も増加している。
【０００６】
放射ノイズに関して、図１は、２つの信号Ｓ１，Ｓ２に対して周波数を横軸としてノイズ信号強度を縦軸に示す。図１に示すように、信号Ｓ１は、信号Ｓ２に比べて、信号強度の平均レベルは低いが、固有周波数でピーク的な信号が判断閾値若しくはそれを上回る。このような場合、信号Ｓ２の方が、ピーク的な信号が無いので、音響システム等への影響が小さくて済む。
【０００７】
消費電力に関して、図２は、マイコンの消費電力の経時変化の一例を示す。図２に示すような電力変動があった場合、電子制御装置内の電源ＩＣは、各時点ｔa1,a2,a3,…のピーク値（一定周期のソフトウェア処理で発生）を満足する電力供給能力に設計しなければならず、更に、このような電力変動に追従する変動追従能力が必要となり、コストアップの要因となってしまう。
【０００８】
これらの問題点は、コアが一定周波数で動作していることが主要因であり、更にマルチコアの場合は、その影響がその分だけ顕著になる。
【０００９】
これに対して、コアの動作周波数を時系列で変動させる対策が考えられる。しかしながら、マルチコアの場合、同様の態様で各コアの動作周波数を時系列で変動させると、コア数分だけ影響が重畳してしまうという問題が生ずる。
【００１０】
そこで、本発明は、各コアの動作周波数を時系列で適切に変動させることで、放射ノイズ等の問題点を少なくとも部分的に解決することができる車載電子制御装置の提供を目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明の一局面によれば、車両に搭載され、該車両を制御するように構成された車載電子制御装置であって、
複数のコアを搭載したマルチコアプロセッサを備え、
前記複数のコアは、同一の周期Ｔで周期的に周波数が変動する動作クロックで動作するように構成され、
コアの動作クロックの周波数の変動位相が、前記複数のコア間でずらされることを特徴とする、車載電子制御装置が提供される。
【発明の効果】
【００１２】
本発明によれば、各コアの動作周波数を時系列で適切に変動させることで、放射ノイズ等の問題点を少なくとも部分的に解決することができる車載電子制御装置が得られる。
【図面の簡単な説明】
【００１３】
【図１】２つの信号Ｓ１，Ｓ２に対して周波数を横軸としてノイズ信号強度を縦軸に示す図である。
【図２】マイコンの消費電力の経時変化の一例を示す図である。
【図３】図３（Ａ）は、対称型のマルチコアを示し、図３（Ｂ）は、非対称型のマルチコアを示す図である。
【図４】コアの動作周波数の一例を示す図である。
【図５】図４に示したコアの動作周波数の変動態様を、全てのコアＡ，Ｂ，Ｃに同様に適用した場合の各種波形等を示す図である。
【図６】本発明の一例に従って、図４に示したコアの動作周波数の変動態様をコアＡ，Ｂ，Ｃに適用した場合の各種波形等を示す。
【図７】上述の本発明の好ましい実施例を実現するマイコン１の内部・外部回路構成の一例を示す図である。
【図８】図７に示したマイコン１の各コアＡ，Ｂ，Ｃの処理動作の一例のタイミングチャートである。
【図９】各コアＡ，Ｂ，Ｃの動作周波数の変動態様のその他の一例を示す図である。
【図１０】その他の実施例によるマイコン（マルチコアプロセッサ）２の内部・外部回路構成の一例を示す図である。
【図１１】コアＣがスリープ中のときのコアＡ，Ｂの動作周波数の変動態様の波形を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。
【００１５】
図３（Ａ）は、マルチコア構成のマイコン（マルチコアプロセッサ）のタイプとして対称型のマルチコアを示し、図３（Ｂ）は、非対称型のマルチコアを示す。これらのタイプのマルチコアでは、３つのコア（ＣＰＵコア）Ａ，Ｂ，Ｃは、コア性能の等価性を有することが望ましい。本発明は、上記の対称型、非対称型又はその類を含む、任意のタイプのマルチコアプロセッサに対しても適用可能である。尚、以下では、ここで図示されるような３つのコアＡ，Ｂ，Ｃを、本発明の適用対象として説明する。しかしながら、本発明は、２つのコアや４つ以上のコアにも同様に適用可能である。
【００１６】
図４は、コアの動作周波数の変動態様の一例を示す図である。図４に示す例では、コアの動作周波数は、一例として、１００ＭＨｚを中心として±１ＭＨｚの範囲で正弦波状に変動するように設定されている。このようにコアの動作周波数を時系列で変動させる構成は、コアの動作周波数を常時固定する構成に比べて、コアの動作周波数の分周・逓倍した周波数にて生ずる放射ノイズの強度を低減することができる。
【００１７】
図５は、図４に示したコアの動作周波数の変動態様を、全てのコアＡ，Ｂ，Ｃに同様に適用した場合の各種波形等を示す。即ち、図５は、全てのコアＡ，Ｂ，Ｃが同一位相で変動するクロック周波数で動作する場合の各種波形を示す。図５（Ａ）は、コアＡ，Ｂ，Ｃの動作周波数の変動態様の波形（コアＡ，Ｂ，Ｃで同じであるため重なった波形）を示し、図５（Ｂ）は、ある一時点（本例では図５（Ａ）のＡ部）でマイコンが発生するノイズ周波数と強度（相対値）を示し、図５（Ｃ）は、図５（Ａ）と同一時系列で消費電力の時系列波形を示す。尚、図５（Ｃ）では、消費電力は、正規化された消費電力の波形で示されている。
【００１８】
図５に示すように、全てのコアＡ，Ｂ，Ｃの動作周波数の変動態様が同一である場合、ノイズ信号は、３つのコアＡ，Ｂ，Ｃで同一周波数にて出現し、従って、ノイズ信号強度（合計）は、図５（Ｂ）に示すように、３つのコアＡ，Ｂ，Ｃに係る同一周波数で生じるノイズ（ピーク）の各強度が重畳したものとなる。
【００１９】
また、全てのコアＡ，Ｂ，Ｃの動作に起因した消費電力（合計）は、全てのコアＡ，Ｂ，Ｃの各動作周波数の合計に依存して変化する。従って、全てのコアＡ，Ｂ，Ｃの動作周波数の変動態様が同一である場合、全てのコアＡ，Ｂ，Ｃの動作に起因した消費電力は、図５（Ｃ）に示すように、コアＡ，Ｂ，Ｃの動作周波数と同様の態様で変動する。このような場合、図２を参照して上述したように、消費電力のピーク値を満足する電力供給能力に設計しなければならず、更に、このような電力変動に追従する変動追従能力が必要となり、コストアップの要因となってしまう。
【００２０】
図６は、本発明の好ましい実施例に従って、図４に示したコアの動作周波数の変動態様をコアＡ，Ｂ，Ｃに適用した場合の各種波形等を示す。図６（Ａ）は、コアＡ，Ｂ，Ｃの動作周波数の変動態様の波形を示し、図６（Ｂ）は、ある一時点（本例では図６（Ａ）のＢ部）でマイコンが発生するノイズ周波数と強度（相対値）を示し、図６（Ｃ）は、図６（Ａ）と同一時系列で消費電力の時系列波形を示す。尚、図６（Ｃ）では、消費電力は、正規化された消費電力の波形で示されている。
【００２１】
ここでは、本発明の好ましい実施例として、図４に示したコアの動作周波数の変動態様は、図６（Ａ）に示すように、コアＡ，Ｂ，Ｃに対して、等間隔の位相のずれを持たせて適用される。即ち、コアＡ，Ｂ，Ｃの動作周波数は、図４に示した動作周波数の変動態様と同様の態様で変化するが、位相が互いに異なり、コアＡの動作周波数の変動態様、コアＢの動作周波数の変動態様、及び、コアＣの動作周波数の変動態様は、図６（Ａ）に示すように、位相が２π／３ずつずれている。
【００２２】
この場合、ノイズ信号は、図６（Ｂ）に示すように、３つのコアＡ，Ｂ，Ｃで基本的に別々の周波数にて出現する。尚、ある時点では、３つのコアＡ，Ｂ，Ｃのうちの２つのコアに関して同一周波数でノイズ信号が生じるが、そのときも、他の１つのコアでは、当該同一周波数とは別の周波数でノイズ信号が生ずる。従って、図６に示すように、コアＡ，Ｂ，Ｃの動作周波数の変動位相を互いにずらすことにより、図６（Ｂ）に示すように（図５（Ｂ）対照参照）、各動作周波数でノイズ信号が重畳することを防止することができる。即ち、周波数変動を行っているのに加えて、コアＡ，Ｂ，Ｃ毎の動作周波数をずらすことにより、各コアＡ，Ｂ，Ｃの動作周波数に起因して発生する信号強度が重なることがなく、ノイズのピークを低減することができる。
【００２３】
尚、３つのコアＡ，Ｂ，Ｃ毎にランダムに動作周波数を振る（割り当てる）構成も可能であるが、このような構成では、予想できないタイミングで動作周波数が一致してピークが発生する虞がある。
【００２４】
この点、本発明の好ましい実施例では、３つのコアＡ，Ｂ，Ｃ毎に常に一定の位相ずれを持たせて動作周波数を変動させる。これにより、３つのコアＡ，Ｂ，Ｃに係る動作周波数が一致してピークが発生することはない。
【００２５】
また、本発明の好ましい実施例では、上述の如く、全てのコアＡ，Ｂ，Ｃの動作に起因した消費電力（合計）は、全てのコアＡ，Ｂ，Ｃの各動作周波数の合計に依存して変化する。コアＡ，Ｂ，Ｃの各動作周波数の変動位相が等間隔にずれている場合、全てのコアＡ，Ｂ，Ｃの各動作周波数の合計は、時間に依存せず一定である。従って、本発明の好ましい実施例によれば、図６（Ｃ）に示すように、全てのコアＡ，Ｂ，Ｃの動作に起因した消費電力は、時間に依存せず一定となる。これにより、消費電力にピーク的・脈動的な変動が生じず、図２を参照して上述したような問題点を防止することができる。
【００２６】
また、本発明の好ましい実施例では、上述の如く、３つのコアＡ，Ｂ，Ｃに対して位相をずらすものの同一範囲の動作周波数を適用させている。これにより、各コアＡ，Ｂ，Ｃの性能対称性（コア性能の等価性）を維持することができる。尚、各コアの動作周波数を異なる値に設定したり（例えば、コアＡを１０５ＭＨｚ、コアＢを１００ＭＨｚ、コアＣを９５ＭＨｚ）若しくはその値を中心周波数として変動させたりする方法も考えられるが、かかる方法では、各コアＡ，Ｂ，Ｃの処理性能に差が出てしまい、対称マルチコア／非対称マルチコア（図３参照）のコアＡ，Ｂ，Ｃの特徴であるコア性能の等価性を損なってしまう。これは、即ちアプリケーションの配置（コアＡ，Ｂ，Ｃのうちのどのコアで処理させるか）に制限が出てしまうことを意味する。
【００２７】
図７は、上述の本発明の好ましい実施例を実現するマイコン（マルチコアプロセッサ）１の内部・外部回路構成の一例を示す図である。
【００２８】
マイコン１は、３つのコアＡ，Ｂ，Ｃをそれぞれ含むサブシステム２０Ａ，２０Ｂ，２０Ｃと共に、発信回路１２と、逓倍回路１５と、３つの周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃとを備える。発信回路１２には、外部に設けられる発信子１４が接続される。尚、発信子１４は、マイコン１の内部に設けられてもよい。発信回路１２の出力は、逓倍回路１５に接続され、逓倍回路１５の出力は、３つの周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃに接続される。
【００２９】
逓倍回路１５は、典型的にはＰＬＬ（Phase  Locked  Loop）で構成され、発信回路１２で励起したクロック源信号の周波数forg（内部クロック周波数）を逓倍する。即ち、ｆPLL=ｄ×forg。ここで、ｆPLLは、逓倍回路１５からのクロック信号の周波数を表し、ｄは定数である。尚、逓倍回路１５は、低周波数の場合は省略されてもよいが、一般的に、数十ＭＨｚ以上の場合は、発信回路１２により励起される周波数を逓倍して使用するために必要とされる。
【００３０】
周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃは、コアＡ，Ｂ，Ｃのサブシステム２０Ａ，２０Ｂ，２０Ｃのそれぞれに対して設けられる。周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃは、周波数を周期変動させるために設けられる。即ち、周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃは、逓倍回路１５からのクロック信号の周波数を周期変動させる。図示の例では、周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃは、以下の態様で周期変動を行う。
ｆＡ（Ｔ）＝ｆPLL×{１＋ｅ×ｓｉｎ（ｇ×Ｔ）}
ｆＢ（Ｔ）＝ｆPLL×{１＋ｅ×ｓｉｎ（ｇ×Ｔ＋２π／３）}
ｆＣ（Ｔ）＝ｆPLL×{１＋ｅ×ｓｉｎ（ｇ×Ｔ＋４π／３）}
ここで、ｆＡ（Ｔ）は、周波数スプレッダ１６Ａでの周波数変動態様、即ちコアＡの動作周波数の周波数変動態様を表し、ｆＢ（Ｔ）は、周波数スプレッダ１６Ｂでの周波数変動態様、即ちコアＢの動作周波数の周波数変動態様を表し、ｆＣ（Ｔ）は、周波数スプレッダ１６Ｃでの周波数変動態様、即ちコアＣの動作周波数の周波数変動態様を表す。ｅ，ｇは、適当な定数である。上記の周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃの変換式では、ｆPLLを中心周波数として、同一振幅（＝ｆPLL×ｅ）で周波数が正弦波で変動する。このとき、正弦波の位相は、ｆＡ（Ｔ）、ｆＢ（Ｔ）及びｆＣ（Ｔ）間で２π／３ずつずらされている。このように上述の本発明の好ましい実施例に従って、周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃは、各コアＡ，Ｂ，Ｃの動作周波数の変動位相が２π／３ずつずれる態様で各コアＡ，Ｂ，Ｃの動作周波数の周期変動を行う。
【００３１】
図８は、図７に示したマイコン１の各コアＡ，Ｂ，Ｃの処理動作の一例のタイミングチャートである。
【００３２】
図８に示す例では、１ｍ周期処理の基点となる割込みタイミングが１つであり、そこから起動される１ｍ周期処理は、例えばその瞬間（正確には、割込みから処理起動までの間）、コアＢの動作周波数ｆＢ＞コアＡの動作周波数ｆＡ＞コアＣの動作周波数ｆＣとなっている場合を想定する。この場合、起動される処理の開始タイミングもこの順序となる。ここで、周波数を１００ＭＨｚ±５％変動とし、割込みから処理起動までの間を５０クロックとし、その瞬間のコアＡ，Ｂ，Ｃの動作周波数が、動作周波数ｆＡ＝１００ＭＨｚ、動作周波数ｆＢ＝１０２．５ＭＨｚ、動作周波数ｆＣ＝９７．５ＭＨｚであるとき、起動までの時間の最大差は、コアＢとコアＣの間の差であるが、２５ｎｓとなる。このような非常に短い差は、処理の精度の問題とならない値である。処理中は、上述の如く各コアＡ，Ｂ，Ｃの動作周波数は変動している。一般的に、処理時間は、周波数変動周期に比較して非常に長いため、各コアＡ，Ｂ，Ｃの処理性能は、処理時間中に平均化されて略同一となる。従って、各コアＡ，Ｂ，Ｃの処理の終了タイミングは、図８のＹ部に示すように、開始タイミングの順序（図８のＸ部参照）と略同一となり、終了タイミングの差も開始タイミングの差と略同一となる。このように、上述の如く各コアＡ，Ｂ，Ｃの動作周波数の変動位相をずらした場合でも、処理動作に対する影響は生じない。即ち、ソフトウェア処理の設計者は、各コアＡ，Ｂ，Ｃの動作周波数の変動位相がずれていることに対して特別な配慮を行う必要はない。尚、図８に示す例は、上述の動作周波数の変動位相のずれの影響を考察するための便宜上、各コアＡ，Ｂ，Ｃの処理は全く同じ処理（ソフトウェアの処理内容）である場合を想定しているが、各コアＡ，Ｂ，Ｃの処理内容が異なる場合も、動作周波数の変動位相のずれの影響が実質的に生じないことは同様である。
【００３３】
また、本実施例では、基本的にマイコン１の各コアＡ，Ｂ，Ｃを各時点で別の周波数で動作させることになるが、懸念される設計段階の検証に関しては、単一のコアを周波数変動させる場合と同様に、変動周波数の最低値及び最高値での検証を行うことにより、各コアＡ，Ｂ，Ｃが異なる周波数で動作する場合も検証可能である。これは、各コアＡ，Ｂ，Ｃが同一の周波数範囲で経時的にずらすのみである構成を採用している利点である。
【００３４】
以上説明した本実施例によるマイコン１によれば、とりわけ、以下のような優れた効果が奏される。
【００３５】
上述の如く、マルチコアのうちのＮ個（上述の例では、Ｎ＝３）のコアについて、中心周波数±ΔＦ（上述の例では、中心周波数１００ＭＨｚ±１ＭＨｚ）の範囲にて規則正しく変動させつつ、コア毎の周波数の経時変化を２π／Ｎずつずらすことにより、ノイズ強度を低減すると共に、Ｎ個のコアの処理能力（周波数の依存）に対称性（等分分配)を持たせ、消費電力の平準化を測ることができる。
【００３６】
具体的には、周波数変動を行っていることに加えて、コア毎の周波数変動の位相をずらすことにより各コア周波数要因で発生する信号強度が重ならず、ピークを低減することができる（図５（Ｂ）及び図６（Ｂ）参照）。また、各コア間の位相ずれ量が等間隔であることにより、周波数に比例する消費電力の合計は一定値となり（図６（Ｃ）参照）、電源ＩＣの効率的な設計が可能となる。また、位相のみが異なる同一の周波数変動態様でコアＡ，Ｂ，Ｃの動作周波数が設定されるので、コアＡ，Ｂ，Ｃの性能対称性を保つことができる。また、ソフトウェア設計に影響がなく（図８参照）、周波数変動のみを行う構成に比べて位相をずらすことを追加するだけであるので半導体設計において特段の検証も不要とすることができる。
【００３７】
図９は、各コアＡ，Ｂ，Ｃの動作周波数の変動態様のその他の一例を示す図である。上述の実施例では、周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃの変換式を正弦波（ｓｉｎ（Ｔ））にて一定周期で変動させているが、任意の周波数変動であってよい。例えば、図９に示すような態様で周波数を変動させてもよい。この場合も、周波数の変動周期の１／Ｎ（Ｎはコアの個数であり、図示の例では３）に相当する位相ずつずらすことで、上述と同様の効果を得ることができる。
【００３８】
図１０は、その他の実施例によるマイコン（マルチコアプロセッサ）２の内部・外部回路構成の一例を示す図である。本実施例のマイコン２では、各コアＡ，Ｂ，Ｃが常時動作しない状態が存在する構成を想定する。即ち、本実施例のマイコン２は、各コアＡ，Ｂ，Ｃがすべて動作する動作状態に加えて、各コアＡ，Ｂ，Ｃのうちの１つのコアのみが動作し他の２つのコアがスリープする動作状態、及び／又は、各コアＡ，Ｂ，Ｃのうちの２つのコアのみが動作し他の１つのコアがスリープする動作状態を含む。例えば、マイコン２は、ＡＭＰ動作とＳＭＰ動作の切換が可能であり、ＡＭＰ動作時にコアＡ，Ｂ，Ｃのうちの少なくとも１つがスリープする状態が発生する。尚、典型的には、ＡＭＰ動作時、特定のコアに割当てられる機能（タスク等）が実行されていないときに、当該特定のコアがスリープすることになる。
【００３９】
本実施例のマイコン２は、図７に示したマイコン１に対して、スリープ制御回路１８を備える点、及び、各周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃが位相レジスタ（位相Ｒｅｇ）１９Ａ，１９Ｂ，１９Ｃを備える点が、主に異なる。他の同様であってよい構成は、同一の参照符号を付して説明を省略する。
【００４０】
周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃは、以下の態様で周期変動を行う。
ｆＡ（Ｔ）＝ｆPLL×{１＋ｅ×ｓｉｎ（ｇ×Ｔ＋α１）}
ｆＢ（Ｔ）＝ｆPLL×{１＋ｅ×ｓｉｎ（ｇ×Ｔ＋α２）}
ｆＣ（Ｔ）＝ｆPLL×{１＋ｅ×ｓｉｎ（ｇ×Ｔ＋α３）}
ここで、α１、α２、α３は、位相レジスタ１９Ａ，１９Ｂ，１９Ｃの各値によって定まる。
【００４１】
スリープ制御回路１８は、各コアＡ，Ｂ，Ｃの動作状態（動作中かスリープ中か）を判断し、その判断結果に応じて位相レジスタ１９Ａ，１９Ｂ，１９Ｃの各値α１、α２、α３を制御する。尚、各コアＡ，Ｂ，Ｃの動作状態の判断は、例えばソフトウェアからの情報に基づいて容易に実現することができる。
【００４２】
位相レジスタ１９Ａ，１９Ｂ，１９Ｃの各値α１、α２、α３は、それぞれ、対応する周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃの位相ずれ量を調整する機能を有する。即ち、周波数スプレッダ１６Ａ，１６Ｂ，１６Ｃの位相ずれ量は、対応する位相レジスタ１９Ａ，１９Ｂ，１９Ｃの各値α１、α２、α３により決定される。位相レジスタ１９Ａ，１９Ｂ，１９Ｃの各値α１、α２、α３は、上述の如くスリープ制御回路１８により制御（書き換え）される。
【００４３】
例えば、各コアＡ，Ｂ，Ｃが動作中であるときは、スリープ制御回路１８は、位相レジスタ１９Ａ，１９Ｂ，１９Ｃの各値α１、α２、α３として、位相ずれ量０，２π／３，４π／３をそれぞれ書き込む。これにより、図６（Ａ）に示したように、各コアＡ，Ｂ，Ｃの動作周波数（クロック信号の周波数）は、互いに対して２π／３位相がずれた変動位相で変動することになる。
【００４４】
他方、例えば、コアＡ，Ｂが動作中でありコアＣがスリープしているとき、スリープ制御回路１８は、位相レジスタ１９Ａ，１９Ｂの各値α１、α２として、位相ずれ量０，πをそれぞれ書き込む。これと同時に、コアＣに対するクロック信号が停止される。尚、コアＣに対するクロック信号の停止は、クロック・ゲーティングにより実現されてもよい。或いは、パワー・ゲーティングにより電力供給を遮断してコアＣに対するクロック信号を停止してもよい。これにより、図１１に示すように、各コアＡ，Ｂの動作周波数（クロック信号の周波数）は、互いに対してπ位相がずれた変動位相で変動することになる。従って、この場合も図６（Ａ）に示した場合と同様の効果が得られる。即ち、各コア周波数要因のピークを低減することや、消費電力を一定すること等が可能となる。
【００４５】
また、同様に、例えば、コアＡ，Ｃが動作中でありコアＢがスリープしているとき、スリープ制御回路１８は、位相レジスタ１９Ａ，１９Ｃの各値α１、α３として、位相ずれ量０，πをそれぞれ書き込む。これと同時に、コアＢに対するクロック信号が停止される。これにより、各コアＡ，Ｃの動作周波数（クロック信号の周波数）は、互いに対してπ位相がずれた変動位相で変動することになる。従って、この場合も、図６（Ａ）に示した場合と同様に、各コア周波数要因のピークを低減することや、消費電力を一定すること等が可能となる。
【００４６】
また、同様に、例えば、コアＢ，Ｃが動作中でありコアＡがスリープしているとき、スリープ制御回路１８は、位相レジスタ１９Ｂ，１９Ｃの各値α２、α３として、位相ずれ量２π／３，５π／３をそれぞれ書き込む。これと同時に、コアＡに対するクロック信号が停止される。これにより、各コアＢ，Ｃの動作周波数（クロック信号の周波数）は、互いに対してπ位相がずれた変動位相で変動することになる。従って、この場合も、図６（Ａ）に示した場合と同様に、各コア周波数要因のピークを低減することや、消費電力を一定すること等が可能となる。
【００４７】
以上説明した実施例のマイコン２によれば、実施例のマイコン１と同様の効果に加えて、とりわけ、以下のような優れた効果が奏される。
【００４８】
上述の如く、各コアＡ，Ｂ，Ｃの動作状態に応じて動作中のコアの動作周波数の変動位相のずれ量を適切に変化させることで、各コアＡ，Ｂ，Ｃの動作状態が変化した場合でも上述の各種効果を維持することができる。即ち、各コアＡ，Ｂ，Ｃの動作状態が変化した場合でも、動作中の各コアの動作周波数の変動位相が等間隔でずれた状態が維持されるので、周波数要因のノイズ信号の重畳の防止や消費電力の安定化等の効果を維持することができる。
【００４９】
尚、以上説明した実施例のマイコン１，２は、車両を制御するように構成された車載電子制御装置（ＥＣＵ）に組み込まれるのが好適である。この場合、各コアＡ，Ｂ，Ｃは、各種車載システム（例えば、周辺監視カメラによる周辺監視システム、駐車支援システム、ナビゲーションシステム等）のうちの１つのシステムの機能を協動して実行してもよいし、それぞれ別々のシステムの機能を独立して実行してもよい。
【００５０】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【００５１】
例えば、上述した実施例では、３つのコアＡ，Ｂ，Ｃに対応して各コア間の位相ずれ量を２π／３に設定しているが、一般的に、Ｎ個のコアの場合、各コア間の位相ずれ量は、２π・ｍ／Ｎにより表現される。ここで、ｍは、ｍ≠Ｎ×ｌ（ｌ＝０，１，２，３・・・）を満たす正の整数である。例えばＮ＝３のときは、ｍ＝１，２，４，５，７，８・・・のいずれかであってよく、従って、各コア間の位相ずれ量は、２π／３、４π／３、８π／３、１０π／３、１４π／３、１６π／３・・・のいずれかであってよい。
【符号の説明】
【００５２】
Ａ，Ｂ，Ｃ    コア
１，２    マイコン
１２    発信回路
１４    発信子
１５    逓倍回路
１６Ａ，１６Ｂ，１６Ｃ    周波数スプレッダ
１８    スリープ制御回路
１９Ａ，１９Ｂ，１９Ｃ    位相レジスタ
２０Ａ，２０Ｂ，２０Ｃ    サブシステム
【図１】
0005432749.tif 000002
【図２】
0005432749.tif 000003
【図３】
0005432749.tif 000004
【図４】
0005432749.tif 000005
【図５】
0005432749.tif 000006
【図６】
0005432749.tif 000007
【図７】
0005432749.tif 000008
【図８】
0005432749.tif 000009
【図９】
0005432749.tif 000010
【図１０】
0005432749.tif 000011
【図１１】
0005432749.tif 000012