以下、実施形態の一例について図面を参照しつつ説明する。
[第1実施形態]
第1実施形態に係る半導体集積回路の制御方法について説明する。
まず、第1実施形態に係る半導体集積回路の構成の一例について図1を用いて説明する。
図1に示すように、第1実施形態に係る半導体集積回路3は、ドメイン4、5、非同期ブリッジ部6、セレクタ部9、10、切り替え制御部11、動作制御部12、13を有する。ここで、ドメインとは、半導体集積回路3上における、回路素子などのモジュールを1つ以上含む回路の単位である。半導体集積回路3では、ドメイン単位でそれぞれ異なる電源から電源電圧が供給される。図1の例でいうと、ドメイン4には、DC/DC電源1より電源電圧が供給され、ドメイン5には、DC/DC電源2より電源電圧が供給される。
ドメイン4、5間では信号の送受信が行われる。ドメイン4,5間における信号の送受信の経路中には、セレクタ部9、10、非同期ブリッジ部6が設けられている。セレクタ9は、ドメイン5からの信号Data_IN1をドメイン4に送信し、セレクタ10は、ドメイン4からの信号Data_IN2をドメイン5に送信する。
切り替え制御部11は、DC/DC電源1、2からの検出信号に基づいて、制御信号Data_SEL1、Data_SEL2をセレクタ部9、10にそれぞれ送信することによりセレクタ部9、10を制御する。切り替え制御部11は、セレクタ部9、10を制御することにより、ドメイン4、5間における信号の送受信の経路を、非同期ブリッジ部6を介した経路にするか、又は、非同期ブリッジ部6をバイパスする経路にするかを切り替える。非同期ブリッジ部6はクロックの調整を行う。
また、半導体集積回路3では、ドメイン毎に、当該ドメインの動作状態を制御するための動作制御部が設けられている。具体的には、ドメイン4の動作状態を制御するための動作制御部12と、ドメイン5の動作状態を制御するための動作制御部13と、が設けられている。ここで、動作制御部12、13は、例えばMPU(Micro Processing Unit)がプログラムを実行することにより実現される。
ここで、非同期ブリッジ部6が設けられる理由について図2を用いて簡単に説明する。図2には、非同期ブリッジ部6を設けずにドメイン4、5間で信号を送受信する場合の例として、フリップフロップ(FF)間の信号の送受信の例が示されている。
図2に示すように、ドメイン4は、フリップフロップ4Fを有するものとし、ドメイン5は、フリップフロップ5Fを有するものとする。Data1_IN、CLK1は夫々ドメイン4内のフリップフロップ4Fに入力されるデータとクロックを示しており、Data2_IN、CLK2は夫々ドメイン5内のフリップフロップ5Fに入力されるデータとクロックを示している。クロックCLK1、CLK2には夫々タイミング調整のために図2に示すようにディレイバッファ401、501が挿入される。ドメイン5内のフリップフロップ5Fに入力されるデータData2_INは、ドメイン4内のフリップフロップ4Fから出力される。フリップフロップ5FからはデータData2_OUTが出力される。
VDD1、VDD2は夫々ドメイン4、5に供給される電源電圧を示している。電源電圧VDD1は、DC/DC電源1よりドメイン4へ供給される。具体的には、電源電圧VDD1は、フリップフロップ4Fとディレイバッファ401とへ供給される。一方、電源電圧VDD2は、DC/DC電源2よりドメイン5へ供給される。具体的には、電源電圧VDD2は、フリップフロップ5Fとディレイバッファ501とへ供給される。
図3は、電源電圧VDD1、VDD2が互いに同じ値となる場合の図2のドメイン4,5間の信号の送受信を説明するタイミングチャートである。図3において、「Valid」はデータに誤りが無く正常であることを示している。図3に示すように、ドメイン4、5で用いる電源電圧VDD1、VDD2が同じであれば、ドメイン4に入力されたデータData1_INが誤り無く正常にデータData2_OUTとしてフリップフロップ5Fから出力される。別の言い方をすると、ドメイン4、5間の電位差|VDD1−VDD2|が上限電位差以下となっていれば、ドメイン4に入力されたデータData1_INが誤り無く正常にデータData2_OUTとしてフリップフロップ5Fから出力される。ここで、上限電位差とは、電源電圧VDD1、VDD2が互いに同じ値とみなせる電位差の上限値、より具体的には、信号の送受信を誤りなく行うことが可能なドメイン間の電位差の上限値である。
図4は、電源電圧VDD1、VDD2が異なる値となる場合の図2のドメイン4、5間の信号の送受信を説明するタイミングチャートである。ドメイン4、5で用いる電源電圧VDD1、VDD2が互いに異なる値となる場合には、ディレイバッファ401、501において、クロックのタイミングにずれが生じる。つまり、クロックCLK1、CLK2間の位相のタイミングが同じにならずに、図4に示すように、フリップフロップ4Fに入力されたデータData1_INが正常にデータData2_OUTとしてフリップフロップ5Fから出力されなくなる。別の言い方をすると、ドメイン4、5間の電位差|VDD1−VDD2|が上限電位差よりも大きくなっていれば、フリップフロップ4Fに入力されたデータData1_INが正常にフリップフロップ5Fから出力されなくなる。
上記の理由から、ドメイン4とドメイン5との間の送受信経路には、クロックの調整を行う非同期ブリッジ部6が設けられる。この非同期ブリッジ部6を介して信号の送受信が行われるとすることにより、ドメイン4、5にそれぞれ供給される電圧が互いに異なる値となる場合であっても、データを誤りなく送受信することが可能となる。一方、非同期ブリッジ部6を介した通信は、余計にクロックがかかる。そのため、ドメイン4、5にそれぞれ供給される電圧が互いに同じ値となる場合には、非同期ブリッジ部6をバイパスして信号の送受信を行うとした方が効率よくデータ伝送を行うことができる。
そのため、切り替え制御部11は、ドメイン4、5にそれぞれ供給される電圧が互いに異なる値となる場合には、セレクタ部9、10を制御して、ドメイン4、5間における信号の送受信を、非同期ブリッジ部6を介して行うこととする。一方、切り替え制御部11は、ドメイン4、5にそれぞれ供給される電圧が互いに同じ値となる場合には、セレクタ部9、10を制御して、ドメイン4、5間における信号の送受信を、非同期ブリッジ部6をバイパスして行うこととする。
ここで、切り替え制御部11の構成の一例について図5を用いて説明する。
図5に示すように、切り替え制御部11は、制御部11a、電源制御部11b、11cを有する。電源制御部11bはDC/DC電源1を制御し、電源制御部11cはDC/DC電源2を制御する。制御部11aは、電源制御部11b、11cに対して目標電圧を指示する。電源制御部11b、11cは、制御部11aからの指示に従って、DC/DC電源1、2が出力する電源電圧を目標電圧に制御するための制御信号をDC/DC電源1、2に送信する。DC/DC電源1、2は、出力する電源電圧を目標電圧に調整すると、電圧調整が完了したことを示す電圧調整の完了通知PWR_OK1、PWR_OK2を制御部11aに送信する。制御部11aは、DC/DC電源1、2からの電圧調整の完了通知PWR_OK1、PWR_OK2を受信すると、目標電圧に応じて、制御信号Data_SEL1、Data_SEL2をセレクタ部9、10に送信して、セレクタ部9、10の制御を行う。
なお、切り替え制御部11の構成としては、DC/DC電源1、2からの完了通知を制御部11aが受信するものには限られない。このようにする代わりに、電源制御部11b、11cが完了通知を制御部11aに送信するとしても良い。具体的には、電源制御部11b、11cは、タイマーを有し、DC/DC電源1、2に対して制御信号を送信してから所定時間経過したことを当該タイマーにより検出したときに、完了通知を制御部11aに送信するとしても良い。
上述したように、半導体集積回路3では、ドメイン4、5にそれぞれ供給される電圧が互いに異なる値となる場合には、非同期ブリッジ部6を介して、ドメイン4、5間における信号の送受信が行われる。一方、ドメイン4、5にそれぞれ供給される電圧が互いに同じ値となる場合には、非同期ブリッジ部6をバイパスして、ドメイン4、5間における信号の送受信が行われる。
しかしながら、ドメイン4,5にそれぞれ供給される電圧が互いに同じ値となる場合であっても、例えば、電源のクロック周波数が大幅に変更されたような場合には、電源内において急峻な電流変動が生じて電源電圧の変動が発生することがある。このとき、ドメイン4,5にそれぞれ供給される電圧が互いに異なる値になってしまい、別の言い方をすると、ドメイン4,5の電位差が上限電位差よりも大きくなってしまい、非同期ブリッジ部6をバイパスして信号の送受信を行うことが難しくなる。
そこで、第1実施形態に係る半導体集積回路3では、動作制御部12、13がそれぞれ、ドメイン4、5の電流変動を監視することとする。具体的には、動作制御部12、13は、モジュールの動作開始又は動作停止といった電流値の変更を伴う動作変更要求をドメイン4、5より受けると、当該動作変更要求を許可するか否かを決定してドメイン4、5に応答する。以下、具体的な制御方法について説明する。
図6は、動作制御部12とドメイン4との接続構成の一例を示す図である。
図6に示す例では、ドメイン4は4つのモジュールA、B、C、Dを有するものとする。ドメイン4におけるモジュールA、B、C、Dはそれぞれ、動作開始又は動作停止といった動作変更要求を示す要求信号を動作制御部12に送信する。また、モジュールA、B、C、Dはそれぞれ、動作変更要求に対する応答を示す応答信号を動作制御部12より受信する。
具体的には、モジュールAは、動作を開始する際に、動作開始要求を示す要求信号A_REQ1を動作制御部12へ送信し、それに対する応答信号A_ACK1を動作制御部12より受信する。また、モジュールAは、動作を停止する際に、動作停止要求を示す要求信号D_REQ1を動作制御部12へ送信し、それに対する応答信号D_ACK1を動作制御部12より受信する。同様に、モジュールB、C、Dは、動作を開始する際に、動作開始要求を示す要求信号A_REQ2、A_REQ3、A_REQ4を動作制御部12へ送信する。そして、モジュールB、C、Dは、それに対する応答信号A_ACK2、A_ACK3、A_ACK4を動作制御部12より受信する。また、モジュールB、C、Dは、動作を停止する際に、動作停止要求を示す要求信号D_REQ2、D_REQ3、D_REQ4を動作制御部12へ送信する。そして、モジュールB、C、Dは、それに対する応答信号D_ACK2、D_ACK3、D_ACK4を動作制御部12より受信する。
なお、以下において、モジュールを区別しない場合には、信号を示す符号について数字部分を省略して示すこととする。例えば、モジュールを区別しない場合には、動作開始を要求する要求信号は「A_REQ」として示され、それに対する応答信号は「A_ACK」として示される。また、動作停止を要求する要求信号は「D_REQ」として示され、それに対する応答信号は「D_ACK」として示される。
ドメイン4における各モジュールは、動作変更要求を示す要求信号A_REQ又はD_REQを動作制御部12に送信する際に、動作変更の際の動作モードの情報を含めて送信する。以下では、この動作モードを「要求動作モード」と称することとする。
動作制御部12は、ドメイン4における各モジュールから動作変更要求を示す要求信号A_REQ又はD_REQを受信すると、ドメイン4全体の電流値を算出する。そして、動作制御部12は、受信した要求信号A_REQ又はD_REQに含まれる要求動作モードを基に、動作変更によるドメイン4全体の電流変化率を求める。動作制御部12は、当該電流変化率が所定値以下になっているかを判定し、当該電流変化率が所定値以下になっていると判定した場合には、当該要求動作モードでの動作変更要求を許可する応答信号A_ACK又はD_ACKをモジュールに送信する。一方、動作制御部12は、当該電流変化率が所定値よりも大きくなっていると判定した場合には、当該要求動作モードでの動作変更要求を許可しない応答信号A_ACK又はD_ACKをモジュールに送信する。なお、所定値は、例えば、DC/DC電源1の許容電流変化率である。ここで、許容電流変化率は、複数のドメインに供給される電源電圧が互いに同じ値となる場合において、複数のドメイン間で信号の送受信が行われる際に、非同期ブリッジ部6をバイパスしても信号の送受信を正確に行うことが可能な電流変化率である。別の言い方をすると、電源電圧の変動を抑え、ドメイン4、5間の電位差を上限電位差以下に保持することが可能な電流変化率である。
以下では、電流値の変更を伴う動作変更要求の例として、モジュールの動作開始処理及び動作停止処理のそれぞれの場合について、動作制御部12及びドメイン4におけるモジュールの動作の例を、図7を用いて説明する。
図7は、ドメイン4における各モジュールの動作モードと電流値との関係を示す表の一例である。ここでは、要求動作モードは、クロック周波数比として示されている。例えば、モジュールAは、要求動作モードが1/1と設定されたときは、電流値100[mA]で動作するのに対し、要求動作モードが1/2と設定されたときは、クロック周波数が1/2となるときの電流値100/2=50[mA]で動作する。なお、要求動作モード1/1は、モジュールが動作の開始を完了するときの動作モードであり、要求動作モード0/1は、モジュールが動作の停止を完了するときの動作モードである。このように、図7に示す例では、ドメイン4は、クロック周波数を分周することにより電流値を変更している。これにより、電流値を変更させつつ、クロックタイミングをドメイン間で合わせることが容易となる。
最初に、モジュールが動作を開始する動作開始処理の例として、ドメイン4において、モジュールCだけが動作している状態からモジュールAが動作を開始する場合の例について説明する。
まず、モジュールAは、動作開始のため、要求動作モードを1/1とした動作開始要求を示す要求信号A_REQ1を動作制御部12に送信する。動作制御部12は、当該要求信号A_REQ1を受信すると、ドメイン4における電流変化率を算出する。このとき、ドメイン4では、モジュールCだけが動作している状態となっているので、モジュールCの電流値を60[mA]とすると、ドメイン4全体の電流値は60[mA]となる。一方、モジュールAの要求動作モードは1/1となっているので、この要求動作モードを許可した場合におけるモジュールAの動作開始後のドメイン4全体の電流値は60+100=160[mA]となる。従って、モジュールAの動作開始前後におけるドメイン4全体の電流変化率は、160/60=2.67、即ち、267[%]と算出される。
ここで、例えば、ドメイン4に電源電圧を供給するDC/DC電源1の許容電流変化率が200%となっているとすると、ドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えることとなる。この場合には、DC/DC電源1より出力される電源電圧の上昇が発生して、ドメイン4、5間の電位差が上限電位差を超える可能性があるので、動作制御部12は、動作開始を許可しない旨の応答信号A_ACK1をモジュールAに送信する。
モジュールAは、動作開始を許可しない旨の応答信号A_ACK1を受信すると、今度は、要求動作モードを1/2とした要求信号A_REQ1を動作制御部12に送信する。動作制御部12は、当該要求信号A_REQ1を受信すると、再度、ドメイン4における電流変化率を算出する。先にも述べたように、このとき、ドメイン4では、モジュールCだけが動作している状態となっているので、ドメイン4全体の電流値は60[mA]となる。一方、モジュールAの要求動作モードは1/2となっているので、この要求動作モードを許可した場合におけるモジュールAの動作開始後のドメイン4全体の電流値は60+50=110[mA]となる。従って、モジュールAの動作開始前後におけるドメイン4全体の電流変化率は、110/60=1.83、即ち、183[%]と算出される。
先にも述べたように、DC/DC電源1の許容電流変化率は200%となっているので、この場合のドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えない。従って、この場合には、DC/DC電源1より出力される電源電圧の上昇が発生せず、ドメイン4、5間の電位差が上限電位差を超えずに済むので、動作制御部12は、動作開始を許可する旨の応答信号A_ACK1をモジュールAに送信する。モジュールAは、動作開始を許可する旨の応答信号A_ACK1を受信すると、許可された動作モード1/2で動作を開始する。つまり、モジュールAは、電流値50[mA]で動作を開始する。
次に、モジュールAは、再度、要求動作モードを1/1とした要求信号A_REQ1を動作制御部12に送信する。動作制御部12は、当該要求信号A_REQ1を受信すると、再度、ドメイン4における電流変化率を算出する。このとき、ドメイン4では、モジュールA、Cが動作している状態となっており、ドメイン4全体の電流値は60+50=110[mA]となっている。一方、モジュールAの要求動作モードは1/1となっているので、この要求動作モードを許可した場合におけるモジュールAの動作モード変更後のドメイン4全体の電流値は60+100=160[mA]となる。従って、モジュールAの動作モード変更前後におけるドメイン4全体の電流変化率は、160/110=1.45、即ち、145[%]と算出される。
DC/DC電源1の許容電流変化率は200%となっているので、この場合のドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えない。従って、動作制御部12は、この要求動作モードでの動作開始を許可する旨の応答信号A_ACK1をモジュールAに送信する。モジュールAは、当該応答信号A_ACK1を受信すると、許可された要求動作モード1/1にクロック周波数を変更する。つまり、モジュールAは、電流値を50[mA]から100[mA]に変更する。このようにして、モジュールAは、動作モードを1/1として、即ち、電流値100[mA]で動作し、モジュールAの動作開始処理は終了する。
なお、上述の例では、モジュールAの動作開始処理の例について示したが、他のモジュールB、C、Dの場合も同様にして、動作開始処理が行われる。
ここで、各モジュールの動作開始処理における動作制御部12の制御処理について、図8に示すフローチャートを用いて説明する。
まず、ステップS101において、動作制御部12は、ドメイン4における各モジュールのいずれかから動作開始要求を示す要求信号A_REQを受信したかについて判定する。動作制御部12は、各モジュールのいずれかからも要求信号A_REQを受信していないと判定した場合には(ステップS101:No)、要求信号A_REQを受信するまでステップS101の処理を繰り返す。一方、動作制御部12は、各モジュールのいずれかから要求信号A_REQを受信したと判定した場合には(ステップS101:Yes)、ステップS102の処理へ進む。
ステップS102において、動作制御部12は、ドメイン4の電流変化率を算出する。具体的には、動作制御部12は、要求信号A_REQに含まれる要求動作モードを許可した場合のドメイン4の電流変化率を算出する。続くステップS103において、動作制御部12は、算出された電流変化率を基に、当該要求動作モードでの動作の開始を許可するかについて判定する。具体的には、動作制御部12は、算出された電流変化率が許容電流変化率以下になっているかについて判定する。
ステップS103において、動作制御部12は、算出された電流変化率が許容電流変化率以下になっていると判定した場合には、当該要求動作モードでの動作開始処理を許可するものとし(ステップS103:Yes)、ステップS104の処理へ進む。ステップS104において、動作制御部12は、動作開始処理を許可する旨の応答信号A_ACKを、要求信号A_REQの送信元のモジュールに送信した後、本制御処理をリターンする。一方、ステップS103において、動作制御部12は、算出された電流変化率が許容電流変化率を超えると判定した場合には、当該要求動作モードでの動作開始処理を許可しないものとして(ステップS103:No)、ステップS105の処理へ進む。ステップS105において、動作制御部12は、動作開始処理を許可しない旨の応答信号A_ACKを、要求信号A_REQの送信元のモジュールに送信した後、本制御処理をリターンする。動作制御部12により動作開始要求が許可されなかったモジュールは、要求動作モードを変更して、再度、動作開始要求を動作制御部12に送信する。
このように、ドメイン4における各モジュールの動作開始処理の際において、動作制御部12は、ドメイン4全体の電流変化率がDC/DC電源1の許容電流変化率を超えないように、各モジュールの動作モードを制御する。このようにすることで、電源電圧の変動を抑えることができ、ドメイン4、5間の電位差が上限電位差を超えずに済む。
次に、モジュールが動作を停止する動作停止処理の例として、ドメイン4において、モジュールA、Cが動作している状態からモジュールAが動作を停止する場合の例について説明する。
まず、モジュールAは、動作停止のため、要求動作モードを0/1とした動作停止要求を示す要求信号D_REQ1を動作制御部12に送信する(図7参照)。動作制御部12は、当該要求信号D_REQ1を受信すると、ドメイン4における電流変化率を算出する。このとき、ドメイン4では、モジュールA、Cが動作している状態となっているので、ドメイン4全体の電流値は60+100=160[mA]となる。一方、モジュールAの要求動作モードは0/1となっているので、この要求動作モードを許可した場合の、即ち、モジュールAの動作停止後のドメイン4全体の電流値は60+0=60[mA]となる。従って、モジュールAの動作停止前後におけるドメイン4全体の電流変化率は、160/60=2.67、即ち、267[%]と算出される。
先にも述べたように、DC/DC電源1の許容電流変化率は200%となっているので、ドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えることとなる。この場合には、DC/DC電源1より出力される電源電圧の下降が発生して、ドメイン4、5間の電位差が上限電位差を超える可能性があるので、動作制御部12は、動作停止を許可しない旨の応答信号D_ACK1をモジュールAに送信する。
モジュールAは、動作停止を許可しない旨の応答信号D_ACK1を受信すると、今度は、要求動作モードを1/2とした要求信号D_REQ1を動作制御部12に送信する。動作制御部12は、当該要求信号D_REQ1を受信すると、再度、ドメイン4における電流変化率を算出する。先にも述べたように、このとき、ドメイン4では、モジュールA、Cが動作している状態となっているので、ドメイン4全体の電流値は160[mA]となっている。一方、モジュールAの要求動作モードは1/2となっているので、この要求動作モードを許可した場合におけるモジュールAの動作モード変更後のドメイン4全体の電流値は160−50=110[mA]となる。従って、モジュールAの動作モード変更前後におけるドメイン4全体の電流変化率は、160/110=1.45、即ち、145[%]と算出される。
DC/DC電源1の許容電流変化率は200%となっているので、この場合のドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えない。従って、この場合には、DC/DC電源1より出力される電源電圧の下降が発生せず、ドメイン4、5間の電位差が上限電位差を超えずに済むので、動作制御部12は、動作停止要求を許可する旨の応答信号D_ACK1をモジュールAに送信する。モジュールAは、当該応答信号D_ACK1を受信すると、許可された要求動作モード1/2にクロック周波数を変更する。
次に、モジュールAは、再度、要求動作モードを0/1とした要求信号D_REQ1を動作制御部12に送信する。動作制御部12は、当該要求信号D_REQ1を受信すると、再度、ドメイン4における電流変化率を算出する。このとき、ドメイン4では、モジュールAが動作モード1/2で動作し、モジュールCが動作モード1/1で動作している状態となっているので、ドメイン4全体の電流値は50+60=110[mA]となる。一方、モジュールAの要求動作モードは0/1となっているので、この要求動作モードを許可した場合の、即ち、モジュールAの動作停止後のドメイン4全体の電流値は60+0=60[mA]となる。従って、モジュールAの動作停止前後におけるドメイン4全体の電流変化率は、110/60=1.83、即ち、183[%]と算出される。
DC/DC電源1の許容電流変化率は200%となっているので、この場合のドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えない。従って、動作制御部12は、動作停止を許可する旨の応答信号D_ACK1をモジュールAに送信する。モジュールAは、動作停止を許可する旨の応答信号D_ACK1を受信すると、動作を停止する。これにより、モジュールAの動作停止処理は完了する。
なお、上述の例では、モジュールAの動作停止の例について示したが、他のモジュールB、C、Dの場合も同様にして、動作停止処理が行われる。
ここで、各モジュールの動作停止処理における動作制御部12の制御処理について、図9に示すフローチャートを用いて説明する。
まず、ステップS201において、動作制御部12は、ドメイン4における各モジュールのいずれかから動作停止要求を示す要求信号D_REQを受信したかについて判定する。動作制御部12は、各モジュールのいずれかからも要求信号D_REQを受信していないと判定した場合には(ステップS201:No)、要求信号D_REQを受信するまでステップS201の処理を繰り返す。一方、動作制御部12は、各モジュールのいずれかから要求信号D_REQを受信したと判定した場合には(ステップS201:Yes)、ステップS202の処理へ進む。
ステップS202において、動作制御部12は、ドメイン4の電流変化率を算出する。具体的には、動作制御部12は、要求信号D_REQに含まれる要求動作モードを許可した場合のドメイン4の電流変化率を算出する。続くステップS203において、動作制御部12は、算出された電流変化率を基に、当該要求動作モードでの動作の開始を許可するかについて判定する。具体的には、動作制御部12は、算出された電流変化率が許容電流変化率以下になっているかについて判定する。
ステップS203において、動作制御部12は、算出された電流変化率が許容電流変化率以下になっていると判定した場合には、当該要求動作モードでの動作停止処理を許可するものとし(ステップS203:Yes)、ステップS204の処理へ進む。ステップS204において、動作制御部12は、動作停止処理を許可する旨の応答信号D_ACKを、要求信号D_REQの送信元のモジュールに送信した後、本制御処理をリターンする。一方、ステップS203において、動作制御部12は、算出された電流変化率が許容電流変化率を超えると判定した場合には、当該要求動作モードでの動作停止処理を許可しないものとして(ステップS203:No)、ステップS205の処理へ進む。ステップS205において、動作制御部12は、動作停止処理を許可しない旨の応答信号D_ACKを、要求信号D_REQの送信元のモジュールに送信した後、本制御処理をリターンする。動作制御部12により動作停止要求が許可されなかったモジュールは、要求動作モードを変更して、再度、動作停止要求を動作制御部12に送信する。
このように、ドメインにおけるモジュールの動作停止処理の際においても、動作制御部は、ドメイン全体の電流変化率がDC/DC電源の許容電流変化率を超えないように、モジュールの動作モードを制御する。このようにすることで、電源電圧の変動を抑えることができ、ドメイン4、5間の電位差が上限電位差を超えずに済む。
なお、上述の第1実施形態では、ドメイン4は1つ以上のモジュールを有し、当該モジュールと動作制御部12との間で、動作開始処理及び動作停止処理が行われる旨述べた。これと同様に、ドメイン5も1つ以上のモジュールを有し、ドメイン5のモジュールと動作制御部13との間においても、上述したのと同様の動作開始処理及び動作停止処理が行われるのは言うまでもない。
以上に述べたように、第1実施形態に係る半導体集積回路では、ドメインは、電流値の変更を伴う動作状態の変更の要求を示す動作変更要求を動作制御部に送信する。そして、動作制御部は、動作変更要求をドメインより受信すると、当該動作変更要求に係る動作変更によるドメイン全体の電流変化率を求め、当該電流変化率が所定値以下となっている場合に、当該動作変更要求を許可する。ここで、所定値は、例えば、DC/DC電源の許容電流変化率である。これにより、DC/DC電源内において電源電圧が変動するのを抑えることができ、ドメイン間の電位差が上限電位差を超えずに済む。このようにすることで、複数のドメインに供給される電源電圧が互いに同じ値となる場合において、複数のドメインに対し1つの電源から電源電圧を供給しなくても、ドメイン間で信号の送受信を正確に行うことが可能となる。
また、ドメインは、動作制御部により動作変更要求が許可されなかった場合には、電流値の変更量を変化させて、動作変更要求を動作制御部に再度送信する。これにより、ドメインの動作変更が行われる際において、ドメイン間の電位差が上限電位差を超えずに済む。
[第2実施形態]
次に、第2実施形態に係る半導体集積回路の制御方法について説明する。第2実施形態では、第1実施形態の場合と比較して、ドメイン全体の電流変化率の基準となる許容電流変化率を大きくする方法について説明する。
まず、第2実施形態に係る半導体集積回路の構成の一例について図10を用いて説明する。
図10において、図1に示したのと同じ構成要素については、同じ符号が付されている。図10に示すように、第2実施形態に係る半導体集積回路3aは、第1実施形態に係る半導体集積回路3の構成要素に加えて、統括動作制御部14を有する。統括動作制御部14は、互いに信号の送受信を行うドメイン4、5の動作制御部12、13の制御を行う。具体的には、統括動作制御部14は、ドメイン4、5間で信号の送受信が行われる際に、動作制御部12、13を制御して、一方のドメインにおけるモジュールの動作開始処理と他方のドメインにおけるモジュールの動作停止処理とが同時に発生するのを防止する。ここで、統括動作制御部14は、例えばMPUがプログラムを実行することにより実現される。以下、具体的に説明する。
図11は、動作制御部12、13と統括動作制御部14との間の接続構成の一例を示す図である。
図11において、ドメイン4は2つのモジュールE、Fを有するものとし、ドメイン5は2つのドメインG、Hを有するものとする。ドメイン4におけるモジュールE、Fはそれぞれ、動作変更要求を示す要求信号を動作制御部12に送信し、当該動作変更要求に対する応答を示す応答信号を動作制御部12より受信する。ドメイン5におけるモジュールG、Hはそれぞれ、動作変更要求を示す要求信号を動作制御部13に送信し、動作変更要求に対する応答を示す応答信号を動作制御部13より受信する。
具体的には、モジュールE、Fは、動作を開始する際に、動作開始要求を示す要求信号A_REQ5、A_REQ6を動作制御部12へ送信し、それに対する応答信号A_ACK5、A_ACK6を動作制御部12より受信する。また、モジュールE、Fは、動作を停止する際に、動作停止要求を示す要求信号D_REQ5、D_REQ6を動作制御部12へ送信し、それに対する応答信号D_ACK5、D_ACK6を動作制御部12より受信する。モジュールE、Fは、動作開始処理又は動作停止処理の完了時には、完了を示す通知信号END5、END6を動作制御部12へ送信する。
モジュールG、Hは、動作を開始する際に、要求信号A_REQ7、A_REQ8を動作制御部13に送信し、それに対する応答信号A_ACK7、A_ACK8を動作制御部13より受信する。また、モジュールG、Hは、動作を停止する際に、要求信号D_REQ7、D_REQ8を動作制御部13に送信し、それに対する応答信号D_ACK7、D_ACK8を動作制御部13より受信する。モジュールE、Fは、動作開始処理又は動作停止処理の完了時には、完了を示す通知信号END7、END8を動作制御部12へ送信する。
動作制御部12は、モジュールE、Fのいずれかより動作開始要求を示す要求信号A_REQを受信すると、モジュールの動作開始要求を示す要求信号ADDREQ1を統括動作制御部14へ送信する。そして、動作制御部12は、モジュールの動作開始の許可を示す応答信号ADDACK1を統括動作制御部14より受信すると、要求信号A_REQの送信元のモジュールへ応答信号A_ACKを送信して、第1実施形態で述べた動作開始処理を行う。動作制御部12は、モジュールE、Fのいずれかより通知信号ENDを受信すると、モジュールの動作開始処理が完了したことを通知する通知信号ADDEND1を統括動作制御部14へ送信する。
一方、動作制御部12は、モジュールE、Fのいずれかより動作停止要求を示す要求信号D_REQを受信すると、モジュールの動作開始要求を示す要求信号DELREQ1を統括動作制御部14へ送信する。そして、動作制御部12は、モジュールの動作開始の許可を示す応答信号DELACK1を統括動作制御部14より受信すると、要求信号D_REQの送信元のモジュールへ応答信号D_ACKを送信して、第1実施形態で述べた動作停止処理を行う。動作制御部12は、モジュールE、Fのいずれかより通知信号ENDを受信すると、モジュールの動作停止処理が完了したことを通知する通知信号DELEND1を統括動作制御部14へ送信する。
同様に、動作制御部13は、モジュールG、Hのいずれかより動作開始要求を示す要求信号A_REQを受信すると、モジュールの動作開始要求を示す要求信号ADDREQ2を統括動作制御部14へ送信する。そして、動作制御部12は、モジュールの動作開始の許可を示す応答信号ADDACK2を統括動作制御部14より受信すると、要求信号A_REQの送信元のモジュールへ応答信号A_ACKを送信して、第1実施形態で述べた動作開始処理を行う。動作制御部12は、モジュールG、Hのいずれかより通知信号ENDを受信すると、モジュールの動作開始処理が完了したことを通知する通知信号ADDEND2を統括動作制御部14へ送信する。
一方、動作制御部13は、モジュールG、Hのいずれかより動作停止要求を示す要求信号D_REQを受信すると、モジュールの動作開始要求を示す要求信号DELREQ2を統括動作制御部14へ送信する。そして、動作制御部13は、モジュールの動作開始の許可を示す応答信号DELACK2を統括動作制御部14より受信すると、要求信号D_REQの送信元のモジュールへ応答信号D_ACKを送信して、第1実施形態で述べた動作停止処理を行う。動作制御部13は、モジュールG、Hのいずれかより通知信号ENDを受信すると、モジュールの動作停止処理が完了したことを通知する通知信号DELEND2を統括動作制御部14へ送信する。
なお、以下において、動作制御部を区別しない場合には、信号を示す符号について数字部分を省略して示すこととする。例えば、動作制御部を区別しない場合には、動作開始要求を示す要求信号は「ADDREQ」として示され、それに対する応答信号は「ADDACK」として示される。
統括動作制御部14は、動作制御部12、13のうち、一方の動作制御部より動作開始要求を示す要求信号ADDREQを受信すると、他方の動作制御部がモジュールの動作停止処理中にあるかを確認する。統括動作制御部14は、他方の動作制御部が動作停止処理中にない場合には、動作開始処理を許可する応答信号ADDACKを一方の動作制御部に送信する。一方、統括動作制御部14は、他方の動作制御部が動作停止処理中にある場合には、当該他方の動作制御部より動作停止処理が完了したことを示す通知信号DELENDを受信してから、動作開始処理を許可する応答信号ADDACKを一方の動作制御部に送信する。
また、統括動作制御部14は、動作制御部12、13のうち、一方の動作制御部より動作停止要求を示す要求信号DELREQを受信すると、他方の動作制御部がモジュールの動作開始処理中にあるかを確認する。統括動作制御部14は、他方の動作制御部が動作開始処理中にない場合には、動作停止処理を許可する応答信号DELACKを一方の動作制御部に送信する。一方、統括動作制御部14は、他方の動作制御部が動作開始処理中にある場合には、当該他方の動作制御部より動作開始処理が完了したことを示す通知信号ADDENDを受信してから、動作停止処理を許可する応答信号DELACKを一方の動作制御部に送信する。
図12は、統括動作制御部14の状態遷移図の一例である。統括動作制御部14は、アイドル状態、動作開始処理状態、動作停止処理状態の3つの間で状態が遷移する。アイドル状態とは、動作制御部12、13のどちらの動作制御部においても、モジュールの動作開始処理、動作停止処理が行われていない状態を示す。動作開始処理状態とは、動作制御部12、13のうち、いずれかの動作制御部において、モジュールの動作開始処理が行われている状態を示す。動作停止処理状態とは、動作制御部12、13のうち、いずれかの動作制御部において、モジュールの動作停止処理が行われている状態を示す。
例えば、統括動作制御部14がアイドル状態にある場合において、動作制御部12、13のうち、一方の動作制御部より動作開始要求を示す要求信号ADDREQを受信した場合を考えてみる。この場合、統括動作制御部14は、動作開始処理を許可する応答信号ADDACKを当該一方の動作制御部に送信するとともに動作開始処理状態へと遷移する。この状態では、統括動作制御部14は、他方の動作制御部より動作停止要求を示す要求信号DELREQを受信しても、アイドル状態に戻るまで、要求信号DELREQに対する応答信号DELACKを送信しない。統括動作制御部14は、要求信号ADDREQの送信元である動作制御部より動作開始処理の完了を示す信号ADDENDを受信すると、アイドル状態に戻る。
また、統括動作制御部14がアイドル状態にある場合において、動作制御部12、13のうち、一方の動作制御部より動作停止要求を示す要求信号DELREQを受信した場合を考えてみる。この場合、統括動作制御部14は、動作停止処理を許可する応答信号DELACKを当該一方の動作制御部に送信するとともに動作停止処理状態へと遷移する。この状態では、統括動作制御部14は、他方の動作制御部より動作開始要求を示す要求信号ADDREQを受信しても、アイドル状態に戻るまで、それに対する応答信号ADDACKを送信しない。統括動作制御部14は、要求信号DELREQの送信元である動作制御部より動作停止処理の完了を示す信号DELENDを受信すると、アイドル状態に戻る。
次に、ドメイン4において、モジュールEが動作を開始する場合の動作開始処理の例について説明する。
モジュールEは、動作開始の際において、動作開始要求を示す要求信号A_REQ5を動作制御部12へ送信する。動作制御部12は、要求信号A_REQ5を受信すると、モジュールの動作開始要求を示す要求信号ADDREQ1を統括動作制御部14へ送信する。
統括動作制御部14は、要求信号ADDREQ1を動作制御部12より受信すると、アイドル状態又は動作開始処理状態にある場合には、モジュールの動作開始を許可する応答信号ADDACK1を動作制御部12に送信する。一方、統括動作制御部14は、動作停止処理状態にある場合には、モジュールの動作開始を許可する応答信号ADDACK1を動作制御部12に送信しない。この場合には、統括動作制御部14は、アイドル状態になってから、モジュールの動作開始を許可する応答信号ADDACK1を動作制御部12に送信する。統括動作制御部14は、応答信号ADDACK1を動作制御部12に送信すると、動作開始処理状態に遷移する。動作制御部12は、当該応答信号ADDACK1を受信すると、応答信号A_ACK5をモジュールEに送信して、第1実施形態で述べた方法を用いて、モジュールEの動作開始処理を行う。モジュールEは動作開始処理が完了すると、通知信号END5を動作制御部12に送信する。動作制御部12は、当該通知信号END5を受信すると、通知信号ADDEND1を統括動作制御部14に送信する。統括動作制御部14は、通知信号ADDEND1を受信すると、アイドル状態に戻る。
ここで、モジュールの動作開始処理における統括動作制御部14の制御処理について、図13に示すフローチャートを用いて説明する。
まず、ステップS301において、統括動作制御部14は、動作制御部12、13のうち、一方の動作制御部より、モジュールの動作開始要求を示す要求信号ADDREQを受信しているかについて判定する。統括動作制御部14は、要求信号ADDREQを受信していないと判定した場合には(ステップS301:No)、要求信号ADDREQを受信するまで、ステップS301の処理を繰り返す。一方、統括動作制御部14は、要求信号ADDREQを受信したと判定した場合には(ステップS301:Yes)、ステップS302の処理へ進む。
ステップS302において、統括動作制御部14は、動作停止処理状態にあるかについて判定する。統括動作制御部14は、動作停止処理状態にあると判定した場合には(ステップS302:Yes)、つまり、他方の動作制御部がモジュールの動作停止処理を行っている場合には、ステップS302の処理を繰り返す。この処理は、他方の動作制御部がモジュールの動作停止処理を完了して、統括動作制御部14がアイドル状態に戻るまで待つ処理である。一方、統括動作制御部14は、動作停止処理状態にないと判定した場合には(ステップS302:No)、つまり、他方の動作制御部がモジュールの動作停止処理を行っていない場合には、ステップS303の処理へ進む。
ステップS303において、統括動作制御部14は、要求信号ADDREQに対する、モジュールの動作開始を許可する応答信号ADDACKを一方の動作制御部に送信した後、本制御処理をリターンする。
このように、統括動作制御部14は、一方のドメインにおけるモジュールの動作開始処理を、他方のドメインにおけるモジュールの動作停止処理中には行わないとしている。このようにすることで、他方のドメインにおけるモジュールの動作停止処理中に一方のドメインにおけるモジュールの動作開始処理が発生することによるドメイン4、5間の電位差の増大を防ぐことができる。
次に、ドメイン4において、モジュールEが動作を停止する場合の動作停止処理の例について説明する。
モジュールEは、動作停止の際において、動作停止要求を示す要求信号D_REQ5を動作制御部12へ送信する。動作制御部12は、要求信号D_REQ5を受信すると、モジュールの動作停止要求を示す要求信号DELREQ1を統括動作制御部14へ送信する。
統括動作制御部14は、要求信号DELREQ1を動作制御部12より受信すると、アイドル状態又は動作停止処理状態にある場合には、モジュールの動作停止を許可する応答信号DELACK1を動作制御部12に送信する。一方、統括動作制御部14は、動作開始処理状態にある場合には、モジュールの動作停止を許可する応答信号DELACK1を動作制御部12に送信しない。この場合には、統括動作制御部14は、アイドル状態になってから、モジュールの動作停止を許可する応答信号DELACK1を動作制御部12に送信する。統括動作制御部14は、応答信号DELACK1を動作制御部12に送信すると、動作停止処理状態に遷移する。動作制御部12は、当該応答信号DELACK1を受信すると、応答信号D_ACK5をモジュールEに送信して、第1実施形態で述べた方法を用いて、モジュールEの動作停止処理を行う。モジュールEは動作停止処理が完了すると、通知信号END5を動作制御部12に送信する。動作制御部12は、当該通知信号END5を受信すると、通知信号DELEND1を統括動作制御部14に送信する。統括動作制御部14は、通知信号DELEND1を受信すると、アイドル状態に戻る。
ここで、モジュールの動作停止処理における統括動作制御部14の制御処理について、図14に示すフローチャートを用いて説明する。
まず、ステップS401において、統括動作制御部14は、動作制御部12、13のうち、一方の動作制御部より、モジュールの動作停止要求を示す要求信号DELREQを受信しているかについて判定する。統括動作制御部14は、要求信号DELREQを受信していないと判定した場合には(ステップS401:No)、要求信号DELREQを受信するまで、ステップS401の処理を繰り返す。一方、統括動作制御部14は、要求信号DELREQを受信したと判定した場合には(ステップS401:Yes)、ステップS402の処理へ進む。
ステップS402において、統括動作制御部14は、動作開始処理状態にあるかについて判定する。統括動作制御部14は、動作開始処理状態にあると判定した場合には(ステップS402:Yes)、つまり、他方の動作制御部がモジュールの動作開始処理を行っている場合には、ステップS402の処理を繰り返す。この処理は、他方の動作制御部がモジュールの動作開始処理を完了して、統括動作制御部14がアイドル状態に戻るまで待つ処理である。一方、統括動作制御部14は、動作開始処理状態にないと判定した場合には(ステップS402:No)、つまり、他方の動作制御部がモジュールの動作開始処理を行っていない場合には、ステップS403の処理へ進む。
ステップS403において、統括動作制御部14は、要求信号DELREQに対する、モジュールの動作停止を許可する応答信号DELACKを一方の動作制御部に送信した後、本制御処理をリターンする。
このように、統括動作制御部14は、一方のドメインにおけるモジュールの動作停止処理を、他方のドメインにおけるモジュールの動作開始処理中には行わないとしている。このようにすることで、他方のドメインにおけるモジュールの動作開始処理中に一方のドメインにおけるモジュールの動作停止処理が発生することによるドメイン4、5間の電位差の増大を防ぐことができる。
以上に述べたことから分かるように、統括動作制御部14は、ドメイン4、5間で信号の送受信が行われる際において、一方のドメインにおけるモジュールの動作開始処理と他方のドメインにおけるモジュールの動作停止処理とが同時に発生するのを防止する。これにより、第1実施形態で述べた方法と比較して、ドメイン4、5間の電位差が増大するのをより効果的に防ぐことができる。先の第1実施形態で述べた許容電流変化率は、ドメイン4、5において、一方のドメインでのモジュールの動作開始処理と他方のドメインでのモジュールの動作停止処理とが同時に発生した場合でも、信号の送受信を正確に行うことが可能な値とされている。それに対し、第2実施形態では、一方のドメインにおけるモジュールの動作開始処理と他方のドメインにおけるモジュールの動作停止処理とが同時に発生するのを防止している。従って、第2実施形態では、第1実施形態で述べた許容電流変化率と比較して、許容電流変化率を大きくすることができる。例えば、先に述べた第1実施形態では、ドメイン4に電源電圧を供給するDC/DC電源1の許容電流変化率が200%になっているとしていたが、第2実施形態では、当該許容電流変化率を例えば280%にすることができる。
許容電流変化率を280%にしたときのモジュールの動作開始処理及び動作停止処理の例について図15を用いて説明する。図15は、ドメイン4における各モジュールの動作モードと電流値との関係を示す表の一例である。
最初に、ドメイン4において、モジュールFだけが動作している状態からモジュールEが動作を開始する場合の動作開始処理の例について説明する。
まず、モジュールEは、動作開始のため、要求動作モードを1/1とした動作開始要求を示す要求信号A_REQ5を動作制御部12に送信する。動作制御部12は、要求信号A_REQ5を受信すると、モジュールの動作開始要求を示す要求信号ADDREQ1を統括動作制御部14へ送信する。動作制御部12は、統括動作制御部14より応答信号ADDACK1を受信すると、ドメイン4における電流変化率を算出する。具体的には、ドメイン4では、モジュールFだけが動作している状態となっているので、モジュールFの電流値を60[mA]とすると、ドメイン4全体の電流値は60[mA]となる。一方、モジュールEの要求動作モードは1/1となっているので、この要求動作モードを許可した場合におけるモジュールEの動作開始後のドメイン4全体の電流値は60+100=160[mA]となる。従って、モジュールAの動作開始前後におけるドメイン4全体の電流変化率は、160/60=2.67、即ち、267[%]となる。
第2実施形態では、DC/DC電源1の許容電流変化率は280%となっているので、この場合のドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えない。従って、動作制御部12は、動作開始を許可する旨の応答信号A_ACK1をモジュールEに送信する。モジュールEは、動作開始を許可する旨の応答信号A_ACK1を受信すると、許可された動作モード1/1で動作を開始する。つまり、モジュールEは、電流値100[mA]で動作を開始する。
次に、ドメイン4において、モジュールE、Fが動作している状態からモジュールEが動作を停止する場合の動作開始処理の例について説明する。
まず、モジュールEは、動作停止のため、要求動作モードを0/1とした動作開始要求を示す要求信号D_REQ5を動作制御部12に送信する。動作制御部12は、要求信号D_REQ5を受信すると、モジュールの動作停止要求を示す要求信号DELREQ1を統括動作制御部14へ送信する。動作制御部12は、統括動作制御部14より応答信号DELACK1を受信すると、ドメイン4における電流変化率を算出する。具体的には、ドメイン4では、モジュールE、Fが動作している状態となっているので、ドメイン4全体の電流値は100+60=160[mA]となる。一方、モジュールEの要求動作モードは0/1となっているので、この要求動作モードを許可した場合におけるモジュールEの動作停止後のドメイン4全体の電流値は160−100=60[mA]となる。従って、モジュールAの動作開始前後におけるドメイン4全体の電流変化率は、160/60=2.67、即ち、267[%]となる。
第2実施形態では、DC/DC電源1の許容電流変化率は280%となっているので、この場合のドメイン4の電流変化率はDC/DC電源1の許容電流変化率を超えない。従って、動作制御部12は、動作停止を許可する旨の応答信号A_ACK1をモジュールEに送信する。モジュールEは、動作開始を許可する旨の応答信号A_ACK1を受信すると、モジュールEは動作を停止する。
なお、上述の第2実施形態では、ドメイン4と動作制御部12との間で動作開始処理及び動作停止処理が行われる例を述べたが、ドメイン5と動作制御部13との間においても、上述したのと同様の動作開始処理及び動作停止処理が行われるのは言うまでもない。
以上に述べたように、第2実施形態に係る半導体集積回路では、統括動作制御部14は、一方のドメインにおけるモジュールの動作開始処理と他方のドメインにおけるモジュールの動作停止処理とが同時に発生するのを防止している。つまり、統括動作制御部14は、一方のドメインにおけるモジュールの動作開始処理による電流値の増加と他方のドメインにおけるモジュールの動作停止処理による電流値の減少とが同時に発生するのを防止している。これにより、第1実施形態に係る半導体集積回路と比較して、許容電流変化率を大きくすることができ、動作開始処理及び動作停止処理の際において、クロック周波数比の変更を行う回数を減らすことが可能となる。つまり、第2実施形態では、第1実施形態と比較して、動作開始処理及び動作停止処理にかかる時間を減少させることができる。
なお、実施形態としてはこれに限られない。このようにする代わりに、統括動作制御部14は、ドメインの電流値の増加又は減少の度に動作制御部より要求信号を受信して、一方のドメインにおける電流値の増加と他方のドメインにおける電流値の減少とが同時に発生するのを防止するとしても良い。具体的には、動作制御部12、13は、ドメインにおけるモジュールの動作開始処理及び動作停止処理の開始時だけでなく、要求動作モードの変更処理、具体的には、モジュールのクロック周波数比の変更処理の度に、要求信号を統括動作制御部に送信する。そして、統括動作制御部14は、当該要求信号を基に、一方のドメインにおける電流値の増加を伴うクロック周波数比の変更処理中には、他方のドメインにおける電流値の減少を伴うクロック周波数比の変更処理を行わないこととする。このようにしても、第1実施形態に係る半導体集積回路と比較して、許容電流変化率を大きくすることができる。
なお、実施形態は、上述した実施形態の例に限られるものではなく、特許請求の範囲及び明細書全体から読み取れる発明の要旨あるいは思想に反しない範囲で適宜変更可能である。例えば、上述の第1及び第2実施形態に係る半導体集積回路では、ドメインが2つ設けられるとしているが、これに限られない。このようにする代わりに、半導体集積回路は、3つ以上のドメインが設けられるとし、それらのうち、2つのドメイン間で通信が行われるような場合にも上述の第1及び第2実施形態を適用可能である。また、第1及び第2実施形態に係る半導体集積回路3、3aでは、非同期ブリッジ部6が設けられるとしているが、これに限られるものではない。代わりに、非同期ブリッジ部6が設けられずに、ドメインに供給される電源電圧が互いに同じ値となるときに信号の送受信が行われる半導体集積回路にも第1及び第2実施形態を適用可能であるのは言うまでもない。