(57)【要約】【課題】本発明は周辺装置を必要としないで広範囲の温度変化に対応することができる半導体集積回路を提供することを目的とする。【解決手段】半導体集積回路１の温度を測定する温度感知回路６と、異なる温度範囲に適応した回路機能が同一の複数のブロック回路３，４，５と、前記温度感知回路６で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りの選択されなかったブロック回路を動作停止させる動作ブロック切替制御回路７とを備えた半導体集積回路１。【選択図】  図１
2004235178.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路の温度を測定する温度感知回路と、
異なる温度範囲に適応した、回路機能が同一の複数のブロック回路と、
前記温度感知回路で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りのブロック回路を動作停止させる動作ブロック切替制御回路とを備えたことを特徴とする半導体集積回路。
【請求項２】
半導体集積回路の温度を測定する温度感知回路と、
異なる温度範囲に動作タイミングが適応した、回路機能が同一の複数のブロック回路と、
前記温度感知回路で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りのブロック回路を動作停止させる動作ブロック切替制御回路とを備えたことを特徴とする半導体集積回路。
【請求項３】
半導体集積回路の温度を測定する温度感知回路と、
異なる温度範囲に動作速度が適応した、回路機能が同一の複数のブロック回路と、
前記温度感知回路で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りのブロック回路を動作停止させる動作ブロック切替制御回路とを備えたことを特徴とする半導体集積回路。
【請求項４】
前記ブロック回路はフリップ・フロップ回路を備え、
前記動作ブロック切替制御回路によって稼動するブロック回路の切替え時、前記ブロック回路の動作を停止させ、切替前に稼動していたブロック回路のフリップ・フロップ回路から切替後に稼動するブロック回路のフリップ・フロップ回路にメモリデータを転送することを特徴とする請求項１乃至請求項３のいずれか１項に記載の半導体集積回路。
【請求項５】
前記ブロック回路は縦属接続された複数のフリップ・フロップ回路を備え、
前記動作ブロック切替制御回路によって稼動するブロック回路の切替え時、前記縦属接続されたフリップ・フロップ回路に記憶されたメモリデータを隣接するフリップ・フロップ回路に順次移動させ、切替前に稼動していたブロック回路のフリップ・フロップ回路から切替後に稼動するブロック回路のフリップ・フロップ回路にメモリデータを転送することを特徴とする請求項１乃至請求項３のいずれか１項に記載の半導体集積回路。
【請求項６】
前記温度感知回路は、
複数の奇数個のインバータを環状に直列接続したリングオシレータと、
このリングオシレータの周波数をカウントする周波数カウンタとを備えることを特徴とする請求項１乃至請求項３のいずれか１項に記載の半導体集積回路。
【請求項７】
半導体集積回路の温度を測定する温度感知回路と、
第１のブロック回路と、
この第１のブロック回路と同機能を有し、かつ、前記第１のブロック回路よりも動作タイミングの遅い第２のブロック回路と、
前記温度感知回路で測定した温度が高い場合は前記第２のブロック回路を稼動させ、前記温度が低い場合は前記第１のブロック回路を稼動させる動作ブロック切替制御回路とを備えたことを特徴とする半導体集積回路。
【請求項８】
半導体集積回路の温度を測定する温度感知回路と、
第１のブロック回路と、
この第１のブロック回路と同機能を有し、かつ、前記第１のブロック回路よりも動作速度の遅い第２のブロック回路と、
前記温度感知回路で測定した温度が高い場合は前記第１のブロック回路を稼動させ、前記温度が低い場合は前記第２のブロック回路を稼動させる動作ブロック切替制御回路とを備えたことを特徴とする半導体集積回路。
【請求項９】
前記第１のブロック回路のトランジスタのゲート電極のゲート長は、前記第２のブロック回路のトランジスタのゲート電極のゲート長よりも短いことを特徴とする請求項８記載の半導体集積回路。
【請求項１０】
前記第１のブロック回路のトランジスタのゲート電極のゲート幅は、前記第２のブロック回路のトランジスタのゲート電極のゲート幅よりも広いことを特徴とする請求項８記載の半導体集積回路。
【請求項１１】
前記ブロック回路は複数の基本ゲートから構成されたゲートアレイであることを特徴とする請求項１乃至請求項１０のいずれか１項に記載の半導体集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路に関し、特に広範囲の温度変化に対応することができる半導体集積回路に関する。
【０００２】
【従来の技術】
半導体集積回路の動作特性には温度依存性があり、高温では動作速度が遅くなり、低温では速くなる。例えば、図１１（ａ）のように適当なランダムロジック１０１にノードＡから入力した信号がノードＢに出力するまでの遅延時間は、図１１（ｂ）に示すように温度依存性が見られる。
【０００３】
このような半導体集積回路の温度依存性による動作速度の変動は以下のようなシステム上の問題が生ずる。
【０００４】
図１２（ａ）は、図１１（ａ）に示すランダムロジック１０１を通過した出力信号（ノードＢ）がＤＡＴＡ信号としてフリップ・フロック１０２のＤ端子に入力し、ＣＫ端子に入力したＣＬＯＣＫによってＱ端子から出力信号（ノードＣ）を出力する回路図である。
【０００５】
図１２（ａ）の回路図の常温時における信号のタイムチャートを図１２（ｂ）に示す。ノードＡに入力されたＤＡＴＡ信号はランダムロジック１０１を通過してノードＢに出力される。この場合の遅延時間はＴ１ｎである。ノードＢに出力されたＤＡＴＡ信号はフリップ・フロップ１０２のＤ端子に入力され、ＣＫ端子に入力されたＣＬＯＣＫ信号の立ち上がりでラッチしてＱ端子からノードＣに“１”が出力される。
【０００６】
次に、低温時における信号のタイムチャートを図１２（ｃ）に示す。ランダムロジック１０１の遅延時間はＴ１ｃであり、常温時のそれと比較して短くなっている。遅延時間が短くなっているため、フリップ・フロップ１０２に入力されたＣＬＯＣＫ信号の立ち上がりには既にＤ端子に入力されたＤＡＴＡ信号は“０”になっており、ＤＡＴＡ信号をラッチすることができない。したがって、Ｑ端子からノードＣにＤＡＴＡ信号の“１”が出力されることはなく、出力は“０”のままである。
【０００７】
また、高温時における信号のタイムチャートを図１２（ｄ）に示す。ランダムロジック１０１の遅延時間はＴ１ｈであり、常温時のそれと比較して長くなっている。遅延時間が長くなっているため、フリップ・フロップ１０２に入力されたＣＬＯＣＫの立ち上がりにはまだＤＡＴＡ信号がＤ端子に入力されていない。したがって、ＤＡＴＡ信号がＣＬＯＣＫ信号によってラッチされてノードＣに出力さることはなく、前述した低温時と同様にＱ端子の出力は“０”のままである。
【０００８】
このように本来はＤＡＴＡ信号である“１”をＣＬＯＣＫ信号の立ち上がりでラッチしなければならないが、低温時及び高温時にはＤＡＴＡ信号を正確にラッチすることができない事態が生じ、システム不良を引き起こすことになる。
【０００９】
特に図１２（ｂ）〜図１２（ｄ）に示すようなパルス幅の狭い信号や高速動作が求められるというようなタイミングが厳しい回路ではこのような温度変化によってシステム不良は起こり易くなってしまう。
【００１０】
このような温度変化によるシステム不良を無くすため、下記の対策がとられている。
【００１１】
第１の対策は、高温時に半導体集積回路の電源電圧を上げる制御を行う。これは、半導体集積回路の動作速度が高電源電圧時には高速動作する特性を活かした対策である。
【００１２】
第２の対策は、半導体集積回路の製造ばらつきを抑えることによって常温時の動作特性のばらつきを少なくする。製造ばらつきを小さくすることで、温度変化による動作速度変化の規格外品の製造を抑えた対策である。保証する動作温度範囲の中間温度にあわせればよい。
【００１３】
第３の対策は、半導体集積回路の温度が一定になるように外部から放熱や加熱する。
【００１４】
例えば、半導体集積回路は電源電圧を加えることによって半導体集積回路自体の温度が徐々に上昇し、動作速度が温度上昇に伴って遅くなる。このような時間経過を伴った温度変化を抑えるため、半導体集積回路に放熱フィンを取り付けて半導体集積回路の熱を放熱し、一定に保つようにする。また、半導体集積回路を予め高温動作に対応するように設計し、半導体集積回路が常に高温で動作させるように半導体集積回路にヒーターを取り付けて加熱する。
【００１５】
また、第４の対策として、半導体集積回路内に温度補償回路を設ける（例えば、特許文献１参照。）。
【００１６】
【特許文献１】
特開平９−２７０６９２号公報
【００１７】
【発明が解決しようとする課題】
しかし、前述した第１の対策は半導体集積回路内に電源電圧を制御する回路が必要となる。また、周辺の半導体集積回路との信号の交信時の電圧変換回路が必要となる。
【００１８】
また、第２の対策は製造のばらつきを抑えるために製造管理幅を狭める必要があるが、製造装置の限界性能での製造が要求される近年の製品においては、これ以上の製造管理幅の圧縮は厳しい状況にある。
【００１９】
また、第３の対策は半導体集積回路の周囲部品として放熱フィンや加熱ヒーター等の部品を必要であり、セットが大きくなってしまう。さらに、半導体集積回路を高温動作するように設計している場合などは低温時には半導体集積回路が暖まるまで時間をおいて稼動させる必要がある。
【００２０】
また、第４の対策は回路内に温度補償回路を設けることによって外部からの熱の制御を必要とせずに、半導体集積回路の温度変化による動作速度の変化に対応することができるが、この温度補償回路の挿入には回路制限があって自由度が効かないというという欠点があった。
【００２１】
そこで、本発明は周辺装置を必要としないで広範囲の温度変化に対応することができる半導体集積回路を提供することを目的とする。
【００２２】
【課題を解決するための手段】
上記課題を解決するために本発明は、半導体集積回路の温度を測定する温度感知回路と、異なる温度範囲に適応した回路機能が同一の複数のブロック回路と、前記温度感知回路で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りのブロック回路を動作停止させる動作ブロック切替制御回路とを備えた半導体集積回路を提供する。
【００２３】
また、半導体集積回路の温度を測定する温度感知回路と、異なる温度範囲に動作タイミングが適応した回路機能が同一の複数のブロック回路と、前記温度感知回路で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りのブロック回路を動作停止させる動作ブロック切替制御回路とを備えた半導体集積回路を提供する。
【００２４】
また、半導体集積回路の温度を測定する温度感知回路と、異なる温度範囲に動作速度が適応した回路機能が同一の複数のブロック回路と、前記温度感知回路で測定した温度によって前記複数のブロック回路のうち１のブロック回路を稼動させ、残りのブロック回路を動作停止させる動作ブロック切替制御回路とを備えた半導体集積回路を提供する。
【００２５】
また、半導体集積回路の温度を測定する温度感知回路と、第１のブロック回路と、この第１のブロック回路と同機能を有し、かつ、前記第１のブロック回路よりも動作タイミングの遅い第２のブロック回路と、前記温度感知回路で測定した温度が高い場合は前記第２のブロック回路を稼動させ、前記温度が低い場合は前記第１のブロック回路を稼動させることを備えた動作ブロック切替制御回路とを備えた半導体集積回路を提供する。
【００２６】
また、半導体集積回路の温度を測定する温度感知回路と、第１のブロック回路と、この第１のブロック回路と同機能を有し、かつ、前記第１のブロック回路よりも動作速度の遅い第２のブロック回路と、前記温度感知回路で測定した温度が高い場合は前記第１のブロック回路を稼動させ、前記温度が低い場合は前記第２のブロック回路を稼動させることを備えた動作ブロック切替制御回路とを備えた半導体集積回路を提供する。
【００２７】
上記解決手段によって、随時半導体集積回路の温度に適応したブロック回路が稼動することができるので、温度の変化によって生ずる回路動作のタイミングずれ等によるシステムエラーが起こらない。
【００２８】
【発明の実施の形態】
本発明の実施形態の半導体集積回路を図１に示す。
【００２９】
図１に示す半導体集積回路１は、入力バッファ２、高温動作ブロック３、常温動作ブロック４、低温動作ブロック５、温度感知回路６、動作ブロック切替制御回路７、出力信号選択回路８及び出力バッファ９とを備えている。
【００３０】
入力バッファ２から高温動作ブロック３、常温動作ブロック４及び低温動作ブロック５に信号が入力される。これら３つの温度別動作ブロック３〜５は全て同一機能を果たし、各温度範囲に適応して動作するように設計された回路である。高温動作ブロック３は高温時（例えば４５〜８５℃）に正常稼動するように設計されている。常温動作ブロック４は常温時（例えば５〜４５℃）に正常稼動するように設計されている。低温動作ブロック５は低温時（例えば−３５〜５℃）に正常稼動するように設計されている。
【００３１】
一般に半導体集積回路の動作速度は高温時には遅くなり、低温時には速くなるので、従来技術において説明した図１２（ｃ）若しくは（ｄ）に示すようなシステムエラーを起こすことになる。
【００３２】
よって、例えば高温動作ブロック３の動作速度を速めるためトランジスタのチャネル長若しくはゲート長を短くしたり、また、トランジスタのチャネル幅若しくはゲート幅を広くする手法が考えられる。また、動作速度の遅い高温動作ブロック３の動作タイミングにあわせるためにＣＬＯＣＫ等にバッファ等の遅延回路を挿入することによって動作タイミングを合わせ込む手法が考えられる。
【００３３】
一方、低温動作ブロック５は動作速度を遅くするためトランジスタのチャネル長若しくはゲート長を長くしたり、また、トランジスタのチャネル幅若しくはゲート幅を狭くする手法が考えられる。また、動作速度の速い低温動作ブロック５の動作タイミングにあわせるために信号にバッファ等の遅延回路を挿入することによって動作タイミングを合わせ込む手法が考えられる。
【００３４】
温度感知回路６は、半導体集積回路自体の温度を測定する回路であり、温度センサ６ａと周波数カウンタ６ｂとを備えている。
【００３５】
温度センサ６ａは図２に示すように奇数個のインバータが環状に縦属接続されたリングオシレータで構成されている。リングオシレータによって発振した発振周波数は各インバータの遅延時間に比例するため、その発振周波数を測定することによって半導体集積回路の温度を測定することができる。
【００３６】
リングオシレータからなる温度センサ６ａの出力信号は周波数カウンタ６ｂに送られて常時発振周波数がカウントされる。周波数カウンタ６ｂには、所定の周波数の基準クロックが入力されており、この基準クロックによって把握された基準時間内に温度センサ６ａからの信号のパルス数をカウントして周波数を求めている。このようにカウントされた周波数と、予めシミュレーションによって割り出されている周波数の温度特性から半導体集積回路の温度を測定することができる。
【００３７】
なお、温度感知回路６は前述したリングオシレータ６ａと周波数カウンタ６ｂから構成される実施形態に限らず、集積回路の温度を測定できる回路であれば他の回路であればよい。
【００３８】
温度感知回路６の周波数カウンタ６ｂにおけるカウントデータは動作ブロック切替制御回路７に送られる。動作ブロック切替制御回路７では、カウントデータによって測定した温度からどちらの温度別動作ブロック３〜５を稼動すべきかを判断する。すなわち、測定した温度が４５〜８５℃の場合は高温動作ブロック３、５〜４５℃の場合は常温動作ブロック４、−３５〜５℃の場合は低温動作ブロック５を稼動させる。稼動している動作ブロック以外の他の動作ブロックは停止させる。
【００３９】
例えば図３に示すように動作ブロック切替制御回路７から高温選択信号ａ，ｄ、常温選択信号ｂ，ｅ及び低温選択信号ｃ，ｆ並びに温度範囲が切替わる際に用いられるデータ転送クロックＡＣＬＫ，ＢＣＬＫが各温度別動作ブロック３〜５及び出力信号選択回路８に送られる。
【００４０】
高温動作ブロック３にはａ信号、常温動作ブロック４にはｂ信号、低温動作ブロック５にはｃ信号がそれぞれ入力される。例えば半導体集積回路の温度が４５℃以上ではａ信号が“１”、ｂ信号及びｃ信号は“０”となって、高温動作ブロック３のみが稼動し、常温動作ブロック４及び低温動作ブロック５は停止する。
【００４１】
ここで、動作ブロック切替制御回路７の動作手順を図４に示すフローチャートを用いて説明する。
【００４２】
先ず、周波数カウンタ６ｂにおいてリングオシレータ６ａから発振された発振周波数（Ｆ）をカウントする（ステップ１）。
【００４３】
次に、発振周波数Ｆと第１の基準周波数Ｆ１又は第２の基準周波数Ｆ２と比較する（ステップ２）。リングオシレータ６ａの発振周波数Ｆが第１の基準周波数Ｆ１以下の場合は高温、第１の基準周波数Ｆ１より大きいが第２の基準周波数Ｆ２以下の場合は常温、第２の基準周波数Ｆ２より大きい場合は低温を示している。
【００４４】
次に、各温度範囲で温度選択信号ａ〜ｃが“０”か否か判定する（ステップ３）。すなわち、高温範囲における温度選択信号ａが“０”か否か、常温範囲における温度選択信号ｂが“０”か否か、又は低温範囲における温度選択信号ｃが“０”か否かを判定する。ここで、各温度範囲において温度選択信号ａ〜ｃが“０”の場合は、半導体集積回路の動作によって動作変化が生じて動作温度範囲が移動したことを意味する。
【００４５】
次に、ステップ３において各温度範囲での温度選択信号ａ〜ｃが“０”の場合、一旦、温度選択信号ａ〜ｃを総て“０”にする。すなわち、温度選択信号は“１”イネーブルなので、総ての動作ブロックが停止する。動作ブロックを停止した状態で、動作ブロック内のフリップ・フロップ等内のメモリに記憶されたデータの転送を行う。データ転送終了後、ステップ３で設定した温度選択信号ａ〜ｆに戻す（ステップ４）。“１”に設定された温度選択信号が入力される動作ブロックのみが稼動し、“０”に設定された温度選択信号が入力された残りの２の動作ブロックは停止することになる。
【００４６】
一方、ステップ３において各温度範囲での温度選択信号ａ〜ｃが“０”でない場合、すなわち“１”の場合、半導体集積回路の温度の温度範囲が変わらないので、稼動している動作ブロックを変える必要がない。
【００４７】
ステップ１〜４までが１つのルーチンである。よってステップ４まで終了すると再度ステップ１から始まり次のルーチンが開始される。
【００４８】
動作ブロック切替制御回路７によって選択された動作ブロックの出力信号は出力信号選択回路８に送られる。また、出力信号選択回路８には動作ブロック切替制御回路７から温度選択信号ｄ〜ｆが送られる。
【００４９】
ここで出力信号選択回路８の一例を図５に示す。出力信号選択回路８には動作ブロック切替制御回路７から高温選択信号ｄ、常温選択信号ｅ及び低温選択信号ｆが入力される。各温度別動作ブロック３〜５の出力信号とｄ〜ｆ信号はそれぞれＡＮＤゲートをとる。これらのＡＮＤゲートをとられた信号をまとめてＯＲゲートをとって、動作ブロック切替制御回路７において選択された温度の動作ブロックの出力信号のみを出力する。
【００５０】
出力信号選択回路８から出力された出力信号は出力バッファ９に送られ、出力バッファ９は受け取った信号を電流増幅して半導体集積回路１の外部に出力する。
【００５１】
以上より異なる速度で動作する同機能を有したブロック回路を複数設けて、半導体集積回路の温度に適したブロック回路を選択する。半導体集積回路の温度変化による動作速度の変化が生じても、その動作速度に適したブロック回路が動作するのでシステムエラーを起こすことがない。
【００５２】
なお、前述した実施形態では半導体集積回路１の外部から入力された信号は入力バッファ２から共通温度動作ブロック３へ送られたがこれに限定されず、入力バッファ２から直接温度別動作ブロックへ入力してもよい。また、温度別動作ブロックで処理された信号を出力信号選択回路８を介して直接出力バッファ９へ送り、半導体集積回路１の外部に出力してもよい。
【００５３】
また、半導体集積回路の動作中に温度変化が起こって直前まで動作していた動作ブロックの温度範囲から外れるような事態が生じる場合もある。例えば、半導体集積回路の動作開始時は常温動作ブロックが動作していたが、半導体集積回路に電源電圧を加えることによって温度が上昇し、設定した常温範囲の上限である４５℃を越えるような場合である。
【００５４】
この場合、温度感知回路６によって半導体集積回路の温度が４５℃を越えたことを測定すると、動作ブロック切替制御回路７は今まで動作していた常温動作ブロック４を停止させて、高温動作ブロック３を動作させるように切替える。
【００５５】
このように動作ブロックを半導体集積回路の動作中に切り替える場合、動作ブロック内のメモリやフリップ・フロップに記憶されたデータを切り替えた動作ブロックのメモリやフリップ・フロップに移し替えなくてはならない。
【００５６】
メモリやフリップ・フロップに記憶されたデータの移し替えるための回路を図６に示す。各動作ブロック内のフリップ・フロップを縦属接続して、記憶されたデータを１つずつ移動させる。
【００５７】
図７は図６に示す高温動作ブロック内の接続したフリップ・フロップの拡大図を示す。データを１つずつ移動させるため、フリップ・フロップやＲＡＭメモリはスキャン・フリップ・フロップを用いる。スキャン・フリップ・フロップ以外の組合せ回路１１とスキャン・フリップ・フロップとのデータの受け渡しは入力端子Ｄとクロック端子ＣＰと出力端子Ｑ及びＱＮで行う。
【００５８】
データの移し替えはシリアルスキャン入力端子ＳＩとシリアルスキャン出力端子ＳＯと２つのスキャンクロックＡＣＬＫ，ＢＣＬＫによって行われる。ＳＯ端子とＳＩ端子を縦属接続し、動作ブロック切替制御信号７からデータ転送クロックＡＣＬＫ及びＢＣＬＫをスキャンクロック端子Ａ及びＢに入力する。
【００５９】
スキャン・フリップ・フロップ１０−１ｃに記憶されたデータは１０−１ｃのＳＯ端子からスキャン・フリップ・フロップ１０−１ｂのＳＩ端子に移し替えられる。同じように、１０−１ｂからスキャン・フリップ・フロップ１０−１ａに１０−１ｂに記憶されたデータが移し替えられる。
【００６０】
更に具体的に図８に示すタイムチャートを用いてスキャン・フリップ・フロップのデータの移し替えについて説明する。図８は半導体集積回路の温度が常温範囲から高温範囲に変化した場合のスキャン・フリップ・フロップのデータ転送（データ移動）についてのタイムチャートである。
【００６１】
ａ信号、ｂ信号及びｃ信号は動作ブロック切替制御信号７から出力される信号である。ａ信号は高温動作ブロック３、ｂ信号は常温動作ブロック４、ｃ信号は低温動作ブロック５へ入力されて、各温度別動作ブロック３〜５の稼動を制御している。各温度別動作ブロック３〜５はこれらの信号によって“１”イネーブル制御されているので、ｂ信号が“１”のｔ１の期間では常温動作ブロック４が稼動し、高温動作ブロック３及び低温動作ブロック５が停止している。ｔ２の期間では全温度別動作ブロック３〜５が停止している。ａ信号が“１”のｔ３の期間では高温動作ブロック５が稼動し、常温動作ブロック４及び低温動作ブロック５が停止している。
【００６２】
スキャン・フリップ・フロップに記録されたデータの転送は、総ての温度別動作ブロック３〜５を停止して行うため、期間ｔ２の間に行う。ＡＣＬＫの立下がりエッジで１つ前のスキャン・フリップ・フロップのデータをラッチする。ＡＣＬＫでデータをラッチした後、次のＢＣＬＫの立下がりエッジでスキャン・フリップ・フロップのデータの切替えを行う。さらに次のＡＣＬＫの立下がりエッジで切替えたデータをラッチする。このように次々とデータをラッチしながらデータを隣接するスキャン・フリップ・フロップに転送する。
【００６３】
各温度別動作ブロック３〜５間のデータ転送も動作ブロック内のデータ転送と同様である。すなわち、図６に示すように常温動作ブロック４内で縦属接続されたスキャン・フリップ・フロップの先頭の１０−２ａと、高温動作ブロック３内で縦属接続されたスキャン・フリップ・フロップの末尾の１０−１ｃとを縦属接続する。低温動作ブロック５の先頭のスキャン・フリップ・フロップ１０−３ａと常温動作ブロック４の末尾のスキャン・フリップ・フロップ１０−２ｃも同様にする。また、高温動作ブロック３の先頭のスキャン・フリップ・フロップ１０−１ａと低温動作ブロック５の末尾のスキャン・フリップ・フロップ１０−３ｃも同様なので、これらのスキャン・フリップ・フロップの縦属接続はリング状になっている。
【００６４】
なお、各温度別動作ブロック３〜５内で繋がれたスキャン・フリップ・フロップの接続順番は各温度別動作ブロック３〜５において同一にしなければならない。例えば常温動作ブロック４から高温動作ブロック３にデータを転送する場合、１クロックで一つずつデータをずらしながら移し替える手法なので、スキャン・フリップ・フロップ１０−２ａのデータを１０−１ａ、１０−２ｂのデータを１０−１ｂ、１０−２ｃのデータを１０−１ｃへ最終的に転送しなければいけないからである。
【００６５】
本実施形態では説明の簡略のため、各温度別動作ブロック３〜５のスキャン・フリップ・フロップはそれぞれ３個としたが、当然にスキャン・フリップ・フロップの数は実施形態に限定されない。通常ロジック回路は数千個から数万個単位のフリップ・フロップを備えている。
【００６６】
データ転送の手法は上述したスキャン・フリップ・フロップの縦属接続に限らない。各動作ブロックの同機能を果たすスキャン・フリップ・フロップ間でのみデータを転送してもよい。例えば、図９に示すように常温動作ブロック４のスキャン・フリップ・フロップ１０−２ａのＳＯ端子と高温動作ブロック３のスキャン・フリップ・フロップ１０−１ａのＳＩ端子を接続することによって、１クロックで直接データ転送することができる。１０−２ｂと１０−１ｂや１０−２ｃと１０−１ｃなどの他のスキャン・フリップ・フロップも同様である。配線数が多くなり、また、配線長が縦属接続にするよりも長くなるが、データの移動時間が少ないので、動作ブロックを停止させる時間を短縮する点で有利である。
【００６７】
次に、データ転送が終了した時点で高温動作ブロック３を稼動させるため、ａ信号を“１“にする（期間ｔ３）。
【００６８】
前述した３つの温度範囲に分けた動作ブロック３，４，５に代えて、図１０に示すような温度範囲別のゲートアレイとしてもよい。
【００６９】
ゲートアレイは温度別に、高温ブロック形成用ゲートアレイ１１、常温ブロック形成用ゲートアレイ１２、低温ブロック形成用ゲートアレイ１３をそれぞれ配置する。前述した実施形態と同様にリングオシレータ１４ａと周波数カウンタ１４ｂとを備えた温度感知回路１４と温度感知回路１４によって測定した温度によって稼動させる各温度別ブロック形成用ゲートアレイ１１，１２，１３を選択する動作ブロック切替制御回路１５が配置されている。また、ゲートアレイの外周囲には出力信号選択回路１６及び入出力バッファ１７が配置されている。
【００７０】
ゲートアレイは、基本セルが何列も整然と並べられ、各セル列間に基本論理回路（ゲート）間を結ぶための配線の通路が設けられたロジック回路である。基本論理回路を組み合わせることによって大規模な論理回路を構成することができるので、全工程最後の配線工程前までは論理回路に無関係に大量生産され、配線工程で多品種の対応が計られる。すなわち、配線工程で初めて各設計に対応した基本セル内の配線と基本ゲート間の配線を行う。
【００７１】
ここで、高温ブロック形成用ゲートアレイ１１、常温ブロック形成用ゲートアレイ１２及び低温ブロック形成用ゲートアレイ１３の基本セルの配置と配線パターンは同様である。ただし、高温ブロック形成用ゲートアレイ１１の基本セルは他の２つのゲートアレイと比較して動作速度は速く、低温ブロック形成用ゲートアレイ１３の基本セルは他の２つのゲートアレイと比較して動作速度は遅く設計されている。また、常温ブロック形成用ゲートアレイ１２の基本セルの動作速度は、高温ブロック形成用ゲートアレイ１１と低温ブロック形成用ゲートアレイ１３のそれの中間の値を示す。
【００７２】
基本セルの動作速度を変化させるには、基本セル中のトランジスタのチャンネル長若しくはゲート長やチャンネル幅若しくはゲート幅によって制御することができる。一般に、トランジスタのゲート長を長くするとトランジスタの動作速度は遅くなり、逆にゲート長を短くすると動作速度は速くなる。一方、トランジスタのゲート幅を広げるとトランジスタの動作速度は速くなり、逆にゲート幅を狭くすると動作速度は遅くなる。
【００７３】
したがって、高温ブロック形成用ゲートアレイ１１に用いる基本セルはゲート長が短く、ゲート幅を広げたトランジスタから構成されている。また、低温ブロック形成用ゲートアレイ１３に用いる基本セルはゲート長が長く、ゲート幅を狭めたトランジスタから構成されている。
【００７４】
前述した実施形態では温度別の動作ブロック回路の温度範囲は、高温範囲を４５〜８５℃、常温範囲を５〜４５℃、低温範囲を−３５〜５℃としたが、この温度範囲に限ることはない。また、高温、常温、低温と３つの温度範囲の動作ブロックを設けたが、これに限らず常温と高温など２つの温度範囲の動作ブロックを設けてもよく、また、４つ以上の温度範囲に分類した動作ブロックから構成してもよい。
【００７５】
また、温度別動作ブロックはロジック回路に限らず、アナログ回路であってもよい。
【００７６】
【発明の効果】
以上詳述したように本発明は、周辺装置を必要としないで広範囲の温度変化に対応することができる半導体集積回路を提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態の半導体集積回路を示す構成図である。
【図２】リングオシレータの一例を示す図である。
【図３】動作ブロック切替制御回路の入出力信号の接続を表わした図である。
【図４】動作ブロック切替制御回路の動作手順を表わしたフローチャートである。
【図５】出力信号選択回路の一例を示す図である。
【図６】各温度別動作ブロック内のフリップ・フロップの接続を表わした構成図である。
【図７】高温動作ブロック内のスキャン・フリップ・フロップの拡大図である。
【図８】常温動作ブロックから高温動作ブロックへ切替える際のタイムチャートである。
【図９】各温度別動作ブロック内のフリップ・フロップの接続を表わした構成図である。
【図１０】本発明の実施形態の半導体集積回路を示す構成図である。
【図１１】従来技術のランダムロジックの遅延時間の温度依存性を表わす図である。
【図１２】従来技術のランダムロジックを通過した信号をフリップ・フロップでラッチする際のタイムチャートである。
【符号の説明】
１・・・半導体集積回路
２・・・入力バッファ
３・・・高温動作ブロック
４・・・常温動作ブロック
５・・・低温動作ブロック
６，１４・・・温度感知回路
６ａ，１４ａ・・・温度センサ（リングオシレータ）
６ｂ，１４ｂ・・・周波数カウンタ
７，１５・・・動作ブロック切替制御回路
８，１６・・・出力信号選択回路
９・・・出力バッファ
１０−１ａ〜１０−１ｃ，１０−２ａ〜１０−２ｃ，１０−３ａ〜１０−３ｃ・・・フリップ・フロップ回路
１１・・・高温ブロック形成用ゲートアレイ
１２・・・常温ブロック形成用ゲートアレイ。
１３・・・低温ブロック形成用ゲートアレイ
１７・・・入出力バッファ
【図１】
2004235178.tif 000003
【図２】
2004235178.tif 000004
【図３】
2004235178.tif 000005
【図４】
2004235178.tif 000006
【図５】
2004235178.tif 000007
【図６】
2004235178.tif 000008
【図７】
2004235178.tif 000009
【図８】
2004235178.tif 000010
【図９】
2004235178.tif 000011
【図１０】
2004235178.tif 000012
【図１１】
2004235178.tif 000013
【図１２】
2004235178.tif 000014