(57)【要約】【課題】半導体集積回路のドライブ能力調整を、量産出荷時の検査時に頼ることなく行う。【解決手段】半導体集積回路２１は、各々出力バッファと入力バッファを含み、外部の装置との間でデータのやり取りを行う複数のＩ／Ｏセル３７，３８，３９，４０，４１と、テストモード時に論理素子を通じて、当該複数のＩ／Ｏセルをチェーン状に接続するテストモード設定回路３４と、テストモード時に、チェーン接続された複数のＩ／Ｏセルの総遅延値を測定する遅延測定回路２７とを備える。【選択図】 図１
2010010907.tif 000002
【特許請求の範囲】
【請求項１】
各々出力バッファと入力バッファを含み、外部の装置との間でデータのやり取りを行う複数の入出力要素と、
テストモード時に論理素子を通じて、前記複数の入出力要素をチェーン状に接続するテストモード設定回路と、
前記テストモード時に、チェーン状に接続された前記複数の入出力要素の総遅延値を測定する遅延測定回路と、
を備える半導体集積回路。
【請求項２】
請求項１に記載の半導体集積回路であって、
チェーン状に接続された複数の入出力要素の出力バッファについて、段階的にドライブ能力を変更するドライブ能力制御回路を備える半導体集積回路。
【請求項３】
請求項１または２に記載した半導体集積回路であって、
所定のプログラムに基づき、前記遅延測定回路により測定した総遅延値を読み出す演算装置を備える半導体集積回路。
【請求項４】
請求項１または２に記載した半導体集積回路であって、
前記遅延測定回路により測定した総遅延値を読み出すハードウェア回路を備える半導体集積回路。
【請求項５】
請求項２に記載した半導体集積回路であって、
前記遅延測定回路により測定した総遅延値に基づき、前記出力バッファのドライブ能力のばらつき補正を行う半導体集積回路。
【請求項６】
請求項２または５に記載した半導体集積回路を基板上に実装後、前記基板上の配線と当該半導体集積回路を接続した実際の使用環境条件において、チェーン状に接続された複数の入出力要素の総遅延値を前記遅延測定回路を用いて測定し、測定された総遅延値に基づき、前記出力バッファのドライブ能力を調整し、前記入出力要素と外部の装置との通信タイミング調整をする、Ｉ／Ｏドライブ能力調整方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路に関するものであり、特に半導体デバイス間における高速なインターフェースを要する環境下において、種々の条件を緩和することのできる技術に関する。
【背景技術】
【０００２】
図５は、従来の技術を説明する半導体集積回路１と、当該半導体集積回路１を検査するテスター２を示す平面図である。半導体集積回路１は、Ｉ／Ｏ（Input/Output；入出力）回路３と、ＣＰＵ（Central Processing Unit）４と、ドライブ能力制御回路５と、レジスタ６と、ＤＣテスト用出力発生回路７と、セレクタ８と、セレクタ９，１０，１１，１２，１３と、ＤＣテストモード設定回路１４とを含む。
【０００３】
Ｉ／Ｏ回路３は、半導体集積回路１と、テスター２の如き外部の種々の装置との間の情報のやり取りを確保するインターフェースの役割を果たす。ＣＰＵ４が半導体集積回路１の全体を制御する。レジスタ６の設定値によって、ドライブ能力制御回路５が、Ｉ／Ｏ回路３の出力バッファのドライブ能力を制御する。
【０００４】
セレクタ８は、Ｉ／Ｏ回路３の入出力制御を行う。セレクタ９，１０，１１，１２，１３は、Ｉ／Ｏ回路３の出力値を選択する。ＤＣテストモード設定回路１４は、半導体集積回路１をＤＣテスト測定モードに設定する。
【０００５】
検査時において、テスター２の各端子はＩ／Ｏ回路３の各端子に接続され、それぞれのドライブ電流を測定する。レジスタ６の設定値によって、ドライブ能力制御回路５が、Ｉ／Ｏ回路３の出力バッファのドライブ能力を制御する。テスター２におけるＩ／Ｏ回路３のドライブ能力測定時、半導体集積回路１は、ＤＣテストモード設定回路１４によってＤＣテスト測定モードに設定される。ＤＣテストモード設定回路１４は、セレクタ８によって強制的にＩ／Ｏ回路３を出力方向に制御する。ここで、各端子の出力として、ＤＣテスト用出力発生回路７の出力を選択する。
【０００６】
ＤＣテスト用出力発生回路７の出力パターンに基づき、テスター２は、Ｉ／Ｏ回路３の出力ドライブ電流値を測定し、その固体の実力値を把握する。測定された実力値（出力ドライブ電流値）に基づき、ＡＣタイミングのドライブ能力による個体差ばらつきを抑え込むように、実際のドライブ能力設定値が決定される。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の手法によれば、実使用時とは異なる電源状況や端子負荷状況によるドライブ電流の測定がなされることとなり、実使用条件とテスター測定条件間の誤差の問題が必然的に存在していた。また、測定は半導体集積回路チップ単体の出荷前の検査時でしかできないという制約があった。また、実際に基板へ実装された後で、実装基板の外部環境や配線負荷状況を合わせたタイミング的な個体実力が把握しにくいという課題があった。
【０００８】
また、Ｉ／Ｏ回路の端子個々のドライブ能力を信号伝搬遅延値としてフィードバックループでセルフチェックしようとした場合、一つの遅延値の絶対量が小さく、半導体集積回路が持つ最大のクロック周波数を使用しても、有効な分解能が得られない問題があった。
【０００９】
本発明は、特に半導体デバイス間における高速なインターフェースを要する環境下において、Ｉ／Ｏ回路の出力バッファドライブ能力設定をする際、タイミング的な実力を自己測定し、配線基板を含めた実力個体差や環境差によるばらつきを補正するとともに、ＡＣタイミングの緩和やドライブピーク電流を緩和する技術に関するものである。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明の半導体集積回路は、各々出力バッファと入力バッファを含み、外部の装置との間でデータのやり取りを行う複数の入出力要素と、テストモード時に論理素子を通じて、前記複数の入出力要素をチェーン状に接続するテストモード設定回路と、前記テストモード時に、チェーン状に接続された前記複数の入出力要素の総遅延値を測定する遅延測定回路とを備える。
【００１１】
上記構成によれば、半導体集積回路のチップを基板上に実装した時点の条件を想定して伝搬遅延を自己診断することができるため、より正確な検査が可能となる。
【００１２】
本発明の半導体集積回路においては、チェーン状に接続された複数の入出力要素の出力バッファについて、段階的にドライブ能力を変更するドライブ能力制御回路を設けてもよい。
【００１３】
上記構成によれば、入出力要素のドライブ能力の差によるばらつきを調整することが可能となる。
【００１４】
本発明の半導体集積回路においては、所定のプログラムに基づき、前記遅延測定回路により測定した総遅延値を読み出す演算装置を設けてもよい。または、前記遅延測定回路により測定した総遅延値を読み出すハードウェア回路を設けてもよい。
【００１５】
本発明の半導体集積回路においては、前記遅延測定回路により測定した総遅延値に基づき、前記出力バッファのドライブ能力のばらつき補正を行うようにしてもよい。
【００１６】
さらに、本発明の半導体集積回路を基板上に実装後、前記基板上の配線と当該半導体集積回路を接続した実際の使用環境条件において、チェーン状に接続された複数の入出力要素の総遅延値を前記遅延測定回路を用いて測定し、測定された総遅延値に基づき、前記出力バッファのドライブ能力を調整し、前記入出力要素と外部の装置との通信タイミング調整をする、Ｉ／Ｏドライブ能力調整方法がさらに提供される。
【発明の効果】
【００１７】
本発明の半導体集積回路によれば、複数の入出力要素をチェーン状に接続するため、遅延量の総和が計測され、遅延量の絶対値を大きく取ることが可能となる。したがって、半導体集積回路内部で使用するクロック周波数で動作する遅延測定回路において、十分な分解能が得られるようになり、一定の測定精度が得られるようになる。また、半導体集積回路チップを基板実装した時点の条件で伝搬遅延が自己診断できるため、基板配線のインピーダンスを包括するといった如く、実際の半導体集積回路の使用環境条件を想定しつつ、ドライブ能力調整が図れる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態を、図面を参照しながら詳細に説明する。
【００１９】
（実施形態１）
図１は本発明の第１の実施形態に係る半導体集積回路２１と、当該半導体集積回路２１を検査するメモリデバイス２２を示す平面図である。
【００２０】
半導体集積回路２１は、Ｉ／Ｏ回路２３と、ＣＰＵ２４と、ドライブ能力調整回路２５と、設定レジスタ２６と、遅延測定回路２７と、セレクタ２８，２９，３０，３１，３２，３３と、遅延測定テストモード設定回路３４を含む。
【００２１】
Ｉ／Ｏ回路２３は、半導体集積回路１と、メモリデバイス２２の如き外部の種々の装置との間の情報のやり取りを確保するインターフェースの役割を果たす。Ｉ／Ｏ回路２３は、各々独立した入出力要素としてのＩ／Ｏセル３７，３８，３９，４０，４１と、各Ｉ／Ｏセルに対応した入出力外部端子５２，５３，５４，５５，５６を含む。各入出力外部端子５２，５３，５４，５５，５６は、それぞれ基板上の外部配線Ｄ０，Ｄ１，Ｄ２，Ｄ３，・・・，Ｄｎを介し、メモリデバイス２２に接続される。
【００２２】
各Ｉ／Ｏセルは、出力バッファと入力バッファを含み、メモリデバイス２２のごとき外部の装置との間でデータのやり取りを行う。Ｉ／Ｏ回路２３のＩ／Ｏセルの個数は任意であり、Ｉ／Ｏセル３７が1番目のセル、Ｉ／Ｏセル３８が２番目のセル、Ｉ／Ｏセル３９が３番目のセル、Ｉ／Ｏセル４０が４番目のセルであり、Ｉ／Ｏセル４１は最終のセルである。図に示すように、Ｉ／Ｏセル４０とＩ／Ｏセル４１の間には、複数のＩ／Ｏセルが設定されており、同様に、入出力外部端子５５と入出力外部端子５６の間には、複数の入出力外部端子が設定されており、外部配線Ｄ３と外部配線Ｄｎの間には複数の外部配線が設定される。
【００２３】
セレクタ２８は、Ｉ／Ｏ回路２３の入出力制御信号を選択するセレクタである。セレクタ２９，３０，３１，３２，３３は、それぞれＩ／Ｏセル３７，３８，３９，４０，４１の出力信号を選択するセレクタである。また、セレクタ２９，３０，３１，３２，３３各々には、各Ｉ／Ｏセルの通常モード時に選択される信号である通常モード選択信号を入力するための通常モード選択信号入力線４２，４３，４４，４５，４６が接続されている。
【００２４】
ＣＰＵ２４は、半導体集積回路２１の全体を制御するが、特に制御バス通じて設定レジスタ２６と、遅延測定回路２７を制御する。そして、ＣＰＵ２４は、所定のプログラムに基づき、遅延測定回路２７により測定した総遅延値を読み出す演算装置として機能する。設定レジスタ２６は、設定された設定値により、Ｉ／Ｏ回路２３の出力バッファのドライブ能力を制御するドライブ能力制御回路２５のドライブ能力値を決定する。
【００２５】
各Ｉ／Ｏセル３７，３８，３９，４０，４１は、それぞれドライブ能力制御回路２５からの出力である制御信号を出力するための制御信号出力線５７，５８，５９，６０，６１を通じてドライブ能力制御回路２５と接続され、当該制御信号に基づき、実際のドライブ能力が決定される。
【００２６】
図２は、Ｉ／Ｏ回路２３の各Ｉ／Ｏセルに含まれる出力バッファの構成例を示す回路図である。出力バッファは、トランジスタ群１０１と論理素子群１０２とから構成される。トランジスタ群１０１は、各入出力外部端子５２，５３，５４，５５，５６に接続される出力端子ＯＵＴへ信号を出力する。また、ＰチャンネルトランジスタＴＰとＮチャンネルトランジスタＴＮの組み合わせである、ＴＰ１−ＴＮ１、ＴＰ２−ＴＮ２、ＴＰ３−ＴＮ３、ＴＰ４−ＴＮ４各々の組み合わせはインバータを構成し、当該インバータが４つ並列に接続されて、トランジスタ群１０１が構成される。論理素子群１０２は、当該インバータを何組まで同時にスイッチングさせるかを決定するロジックを構成する。論理素子群１０２はドライブ論理の入力端となる入力端子ＩＮに接続されている。入力端子ＩＮは、セレクタ２９，３０，３１，３２，３３に接続された入力線６２，６３，６４，６５，６６に対応し、通常モード選択信号の入力に使用されるものである。
【００２７】
ＰチャンネルトランジスタＴＰ側のオン・オフ制御は、ＤＰ１〜ＤＰ４の各入力端子からの制御信号、ＮチャンネルトランジスタＴＮ側のオン・オフ制御は、ＤＮ１〜ＤＮ４の各入力端子からの制御信号により行われる。ここで、ドライブ能力制御回路２５に接続された制御信号出力線５７，５８，５９，６０，６１が、入力端子ＤＰ１〜ＤＰ４、ＤＮ１〜ＤＮ４に接続されており、ドライブ能力制御回路２５からの出力である制御信号が、ＰチャンネルトランジスタＴＰ、ＮチャンネルトランジスタＴＮを制御する上記した制御信号に該当する。
【００２８】
ＰチャンネルトランジスタＴＰ１，ＴＰ２，ＴＰ３，ＴＰ４個別のドライブ能力は、それぞれ１：２：４：８の比に設定されている。同様に、ＮチャンネルトランジスタＴＮ１，ＴＮ２，ＴＮ３，ＴＮ４個別のドライブ能力も、それぞれ１：２：４：８の比に設定されている。
【００２９】
ドライブ能力制御回路２５からの制御信号により、ＤＰ１〜ＤＰ４、ＤＮ１〜ＤＮ４端子を選択的に“１”に設定することにより、各インバータのＰチャンネルトランジスタＴＰ、ＮチャンネルトランジスタＴＮをそれぞれ有効（イネーブル）にすることができる。一方、所定のインバータのトランジスタＴＰ、ＴＮを無効（ディセーブル）にしたい場合は、対応するＤＰ１〜ＤＰ４、ＤＮ１〜ＤＮ４端子を“０”に設定する。その結果、選択されたトランジスタ（入力端子ＤＰ、ＤＮが“１”）のドライブ能力の合算が、出力バッファの全体のドライブ能力となる。
【００３０】
すなわち、ＤＰ１〜ＤＰ４、ＤＮ１〜ＤＮ４端子での制御信号で、それぞれＰチャンネルトランジスタＴＰ、ＮチャンネルトランジスタＴＮの組み合わせ（インバータ）の何組を同時にスイッチングするかを決定し、その組み合わせで出力バッファのドライブ能力を設定することが可能となる。入力端子ＩＮから入力されるドライブ論理を設定されたドライブ能力により出力端子ＯＵＴをスイッチングする。このようなドライブ能力制御回路による出力バッファの制御を経て、段階的にドライブ能力を設定することが可能になる。
【００３１】
図２の出力バッファは単なる一例であり、出力バッファの回路構成はこれに限定はされない。
【００３２】
遅延測定テストモード設定回路３４は、半導体集積回路２１検査するためのテストモードに半導体集積回路を設定する。遅延測定テストモード設定回路３４により当該のテストモードがアクティブになると、セレクタ２８は、Ｉ／Ｏ回路２３に対し、Ｉ  ／Ｏ回路を出力モードに固定する制御信号を出力する。本発明においては、後述するように、テストモード時において、遅延測定テストモード設定回路３４は、セレクタのごとき論理素子を通じて、複数のＩ／Ｏセルをチェーン状に接続する。
【００３３】
遅延測定回路２７は、後述するように所定の遅延時間を測定するための回路である。遅延測定回路２７は、遅延測定回路２７の測定終了をＣＰＵ２４へ通知するための割込み信号を出力する割込み信号線６８を通じてＣＰＵ２４と接続されている。また、遅延測定回路２７には、遅延測定回路２７の分解能となる動作クロックを入力する動作クロック線６７が接続されている。後述するように、テストモード時において、遅延測定回路２７は、チェーン状に接続された複数のＩ／Ｏセルの総遅延値を測定する。
【００３４】
さらに、遅延測定回路２７には、その出力のスタートポイント、エンドポイントとなるスタートポイント線３５、エンドポイント線３６が接続されている。テストモード時に、１番目のＩ／Ｏセル３７に接続されたセレクタ２９の入力線６２と遅延測定回路２７のスタートポイント線３５が接続される。また、各Ｉ／Ｏセルに接続されたＩ／Ｏセル内部出力信号４７，４８，４９，５０およびエンドポイント線３６は、Ｉ／Ｏセル３７，３８，３９，４０，４１から半導体集積回路２１の内部へ出力されるＩ／Ｏセル内部出力信号を出力するための線である。
【００３５】
上述したように、遅延測定テストモード設定回路３４によりテストモードがアクティブになると、遅延測定回路２７は、スタートポイント線３５を通じて、テストトリガを発する。スタートポイント線３５を通じてセレクタ２９に入力されたテストトリガとしての内部出力信号は、１番目のＩ／Ｏセル３７に接続された入力線６２を通じて、Ｉ／Ｏセル３７に伝えられる。以下、次のように内部出力信号が伝達可能なチェーン接続が成立する。
【００３６】
セレクタ３０→入力線６３→Ｉ／Ｏセル３８→セレクタ３１→入力線６４→Ｉ／Ｏセル３９→セレクタ３２→入力線６５→Ｉ／Ｏセル４０→セレクタ３３→入力線６６→Ｉ／Ｏセル４１
【００３７】
最終のＩ／Ｏセル４１の内部出力信号（テストトリガ）は、チェーン接続の末尾として、エンドポイント線３６を通じて遅延測定回路２７に入力される。遅延測定回路２７から発せられたテストトリガは、外部配線負荷の影響を受けながらチェーン接続上を伝搬し、最後に遅延測定回路２７のエンドポイント線３６からの入力へ到達する。遅延測定回路２７は、動作クロック６７の分解能の限度で、スタートポイント線３５を通じてテストトリガが発せられた時刻から、エンドポイント線３６を通じてテストトリガが帰還してくるまでの時間をカウントする遅延測定を行い、その測定結果をカウント値としてＣＰＵ２６へ通知する。
【００３８】
次に、実施形態１における半導体集積回路の検査用ソフトウェア（プログラム）を用いたＣＰＵ２４による半導体集積回路２１の具体的制御手順（ドライブ能力制御手順）の例を、図３のフローチャートに示す。まず、ＣＰＵ２４は、ドライブ能力制御回路２５のドライブ能力に相当する設定レジスタ２６の設定値を標準値（初期値）に設定する（ステップＳ２１）。次にＣＰＵ２４は、上述したように、遅延測定回路２７へ遅延測定命令を発する（ステップＳ２２）。遅延測定回路２７は、上述したチェーン接続に基づく遅延測定を終了すると、割込みにてＣＰＵ２４へ通知する（ステップＳ２３）。この際、割込み通知ではなく、ＣＰＵ２４が遅延測定回路２７のフラグをポーリングすることにより、遅延測定の終了を受信することも可能である。
【００３９】
続いてＣＰＵ２４は、遅延測定回路２７から遅延測定結果（カウント値）を読み出す（ステップＳ２４）。そして、当該カウント値と予め設定された設定レジスタ２６の標準値とを比較する。例えば、ステップＳ２１で設定された設定レジスタ２６の標準値が５であった場合、ＣＰＵ２４は、遅延測定回路２７からロードされたカウント値が５より大きいか否かを判定する（ステップＳ２５）。カウント値が５より大きい場合（ステップＳ２５；Ｙｅｓ）、ＣＰＵ２４は、設定レジスタ２６の設定値を引き上げ、ドライブ能力制御回路２５のドライブ能力を１段階引き上げる（ステップＳ２６）。その後、ステップＳ２２に戻り、ＣＰＵ２４は再び遅延測定回路２７へ遅延測定命令を発行する。
【００４０】
一方、カウント値が５より小さい場合（ステップＳ２５；ＮｏかつステップＳ２７；Ｙｅｓ）、ＣＰＵ２４は、設定レジスタ２６の設定値を引き下げ、ドライブ能力制御回路２５のドライブ能力を１段階引き下げる（ステップＳ２８）。その後、ステップＳ２２に戻り、ＣＰＵ２４は再び遅延測定回路２７へ遅延測定命令を発行する。カウント値が５より大きくもなく小さくもない場合は（ステップＳ２７；Ｎｏ）、カウント値は設定値と同じ５であるため、ＣＰＵ２４は一連のドライブ能力制御を終了する。
【００４１】
上述したように、本発明の半導体集積回路によれば、複数のＩ／Ｏセルの如く入出力要素をチェーン状に接続されており、遅延測定回路２７は入出力要素の遅延量の総和を計測するので、遅延量の絶対値を大きく取ることが可能となる。したがって、半導体集積回路内部で使用するクロック周波数で動作する遅延測定回路２７において、十分な分解能が得られるようになり、一定の測定精度が得られるようになる。また、半導体集積回路チップを基板実装した時点の条件で伝搬遅延が自己診断できるため、基板配線のインピーダンスを包括するといった如く、実際の半導体集積回路の使用環境条件を想定しつつ、ドライブ能力調整が図れる。そして、本発明のドライブ能力制御を行うことにより、Ｉ／Ｏ回路２３の各Ｉ／Ｏセルのドライブ能力に個体差があった場合でも、ばらつきを抑制する方向へ調整することができる。
【００４２】
（実施形態２）
図４は本発明の第２の実施形態に係る半導体集積回路５１と、当該半導体集積回路５１を検査するメモリデバイス５２を示す平面図である。
【００４３】
半導体集積回路２１は、Ｉ／Ｏ回路５３と、ドライブ能力制御回路５５と、ドライブ能力判定回路９８と、遅延測定回路５７と、セレクタ５８，５９，６０，６１，２２，６３と、遅延測定テストモード設定回路６４を含む。
【００４４】
Ｉ／Ｏ回路５３は、半導体集積回路５１と、メモリデバイス５２の如き外部の種々の装置との間の情報のやり取りを確保するインターフェースの役割を果たす。Ｉ／Ｏ回路５３は、各々独立した入出力要素としてのＩ／Ｏセル６７，６８，６９，７０，７１と、各Ｉ／Ｏセルに対応した入出力外部端子８２，８３，８４，８５，８６を含む。各入出力外部端子８２，８３，８４，８５，８６は、それぞれ基板上の外部配線Ｄ０，Ｄ１，Ｄ２，Ｄ３，・・・，Ｄｎを介し、メモリデバイス５２に接続される。
【００４５】
各Ｉ／Ｏセルは、出力バッファと入力バッファを含み、メモリデバイス５２のごとき外部の装置との間でデータのやり取りを行う。Ｉ／Ｏ回路５３のＩ／Ｏセルの個数は任意であり、Ｉ／Ｏセル６７が1番目のセル、Ｉ／Ｏセル６８が２番目のセル、Ｉ／Ｏセル６９が３番目のセル、Ｉ／Ｏセル７０が４番目のセルであり、Ｉ／Ｏセル７１は最終のセルである。図に示すように、Ｉ／Ｏセル７０とＩ／Ｏセル７１の間には、複数のＩ／Ｏセルが設定されており、同様に、入出力外部端子８５と入出力外部端子８６の間には、複数の入出力外部端子が設定されており、外部配線Ｄ３と外部配線Ｄｎの間には複数の外部配線が設定される。
【００４６】
セレクタ５８は、Ｉ／Ｏ回路５３の入出力制御信号を選択するセレクタである。セレクタ５９，６０，６１，６２，６３は、それぞれＩ／Ｏセル６７，６８，６９，７０，７１の出力信号を選択するセレクタである。また、セレクタ５９，６０，６１，６２，６３各々には、各Ｉ／Ｏセルの通常モード時に選択される信号である通常モード選択信号を入力するための通常モード選択信号入力線７２，７３，７４，７５，７６が接続されている。
【００４７】
ドライブ能力判定回路９８は、第１の実施形態におけるＣＰＵ２４に代わって、遅延測定回路５７からの遅延測定結果に基づき、各Ｉ／Ｏセルのドライブ能力を判定するものである。ドライブ能力判定回路９８は、遅延測定回路５７により測定した総遅延値を読み出すハードウェア回路として機能する。また、ドライブ能力判定回路９８には、外部のレジスタ情報や、端子設定情報等から固定値化された基準パラメータが入力される。ドライブ能力判定回路９８は、判断に基づき、Ｉ／Ｏ回路５３の出力バッファのドライブ能力を制御するドライブ能力制御回路５５のドライブ能力値を決定し、ドライブ能力制御回路５５に出力する。
【００４８】
各Ｉ／Ｏセル６７，６８，６９，７０，７１は、それぞれドライブ能力制御回路５５からの出力である制御信号を出力するための制御信号出力線８７，８８，８９，９０，９１を通じてドライブ能力制御回路５５と接続され、当該制御信号に基づき、実際のドライブ能力が決定される。
【００４９】
遅延測定テストモード設定回路６４は、半導体集積回路５１を検査するためのテストモードに半導体集積回路を設定する。遅延測定テストモード設定回路６４により当該のテストモードがアクティブになると、セレクタ５８は、Ｉ／Ｏ回路５３に対し、Ｉ  ／Ｏ回路を出力モードに固定する制御信号を出力する。本発明においては、後述するように、テストモード時において、遅延測定テストモード設定回路６４は、セレクタのごとき論理素子を通じて、複数のＩ／Ｏセルをチェーン状に接続する。
【００５０】
遅延測定回路５７は、後述するように所定の遅延時間を測定するための回路である。遅延測定回路５７は、遅延測定回路５７の測定終了をドライブ能力判定回路９８へ通知するための通知信号を出力する信号線を通じてドライブ判定回路９８と接続されている。また、遅延測定回路５７には、遅延測定回路５７の分解能となる動作クロックを入力する動作クロック線９７が接続されている。後述するように、テストモード時において、遅延測定回路５７は、チェーン状に接続された複数のＩ／Ｏセルの総遅延値を測定する。
【００５１】
さらに、遅延測定回路５７には、その出力のスタートポイント、エンドポイントとなるスタートポイント線６５、エンドポイント線６６が接続されている。テストモード時に、１番目のＩ／Ｏセル６７に接続されたセレクタ５９の入力線９２と遅延測定回路５７のスタートポイント線６５が接続される。また、各Ｉ／Ｏセルに接続されたＩ／Ｏセル内部出力信号７７，７８，７９，８０およびエンドポイント線６６は、Ｉ／Ｏセル６７，６８，６９，７０，７１から半導体集積回路５１の内部へ出力されるＩ／Ｏセル内部出力信号を出力するための線である。
【００５２】
上述したように、遅延測定テストモード設定回路６４によりテストモードがアクティブになると、遅延測定回路５７は、スタートポイント線６５を通じて、テストトリガを発する。スタートポイント線６５を通じてセレクタ５９に入力されたテストトリガとしての内部出力信号は、１番目のＩ／Ｏセル６７に接続された入力線９２を通じて、Ｉ／Ｏセル６７に伝えられる。以下、次のように内部出力信号が伝達可能なチェーン接続が成立する。
【００５３】
セレクタ６０→入力線９３→Ｉ／Ｏセル６８→セレクタ６１→入力線９４→Ｉ／Ｏセル６９→セレクタ６２→入力線９５→Ｉ／Ｏセル７０→セレクタ６３→入力線９６→Ｉ／Ｏセル７１
【００５４】
最終のＩ／Ｏセル７１の内部出力信号（テストトリガ）は、チェーン接続の末尾として、エンドポイント線６６を通じて遅延測定回路５７に入力される。遅延測定回路５７から発せられたテストトリガは、外部配線負荷の影響を受けながらチェーン接続上を伝搬し、最後に遅延測定回路５７のエンドポイント線６６からの入力へ到達する。遅延測定回路５７は、動作クロック９７の分解能の限度で、スタートポイント線６５を通じてテストトリガが発せられた時刻から、エンドポイント線９６を通じてテストトリガが帰還してくるまでの時間をカウントする遅延測定を行い、その測定結果をカウント値としてドライブ能力判定回路９８へ通知する。尚、遅延測定回路５７は、ドライブ能力判定回路９８からの起動トリガによって、テストトリガをスタートポイント線６５を通じてセレクタ５９へ発する。
【００５５】
本実施形態において、ドライブ能力判定回路９８は、予め与えられた基準パラメータ（基準値）と、遅延測定回路５７による測定結果（カウント値）とを比較する。そして、測定結果が基準値より大きい場合、ドライブ能力判定回路９８は、ドライブ能力制御回路５５のドライブ能力設定を１段階高く引き上げる。一方、測定結果が基準値より小さい場合は、ドライブ能力判定回路９８は、ドライブ能力制御回路５５のドライブ能力設定を１段階引き下げる。
【００５６】
そして、ドライブ能力判定回路９８は、所定時間経過後、起動トリガにより遅延測定回路５７を再起動し、遅延の測定終了を待ち、再度比較する。このような比較動作を繰り返し、最終的に基準値と測定結果の差が最小になった場合、調整動作を終了する。
【００５７】
第２の実施形態によれば、一連の調整制御を、第１実施形態のようなＣＰＵのソフトウェアに依存することなく、ハードウェア回路による制御のみで一貫して行うことが可能となる。
【００５８】
上述したように、本発明の半導体集積回路によれば、テストモード時において、複数のＩ／Ｏセルがチェーン状に接続される。したがって、Ｉ／Ｏセル一つ分の遅延量ではなく、全Ｉ／Ｏセルの遅延量の総和が計測され、遅延量の絶対値を大きく取ることが可能となる。したがって、半導体集積回路内部で使用するクロック周波数で動作する遅延測定回路において、十分な分解能が得られるようになり、一定の測定精度が得られるようになる。また、半導体集積回路チップを基板実装した時点の条件で伝搬遅延が自己診断できるため、基盤配線のインピーダンスを包括したドライブ能力調整が図れる。
【００５９】
以上、本発明の各種実施形態を説明したが、本発明は前記実施形態において示された事項に限定されず、明細書の記載、並びに周知の技術に基づいて、当業者がその変更・応用することも本発明の予定するところであり、保護を求める範囲に含まれる。
【産業上の利用可能性】
【００６０】
本発明の半導体集積回路は、ドライブ能力の個体差ばらつきを量産検査時の選別に頼らず、基板上に実装した後でも、セルフチェックで自身の実力位置を把握し、ばらつきを補正し、最適なドライブ能力値を設定できる点で有用である。
【図面の簡単な説明】
【００６１】
【図１】本発明の第１の実施形態を示す平面図
【図２】出力バッファの一例を示す回路図
【図３】第１の実施形態におけるソフトウェア上の具体的制御手順例を示す図
【図４】本発明の第２の実施形態を示す平面図
【図５】従来の技術に基づく一般的な手法を示す図
【符号の説明】
【００６２】
２１，５１    半導体集積回路
２２，５２    メモリデバイス
２３，５３    Ｉ／Ｏ回路
２４          ＣＰＵ
２５，５５    ドライブ能力制御回路
２６          設定レジスタ
２７，５７    遅延測定回路
３４，６４    遅延測定テストモード設定回路
【図１】
2010010907.tif 000003
【図２】
2010010907.tif 000004
【図３】
2010010907.tif 000005
【図４】
2010010907.tif 000006
【図５】
2010010907.tif 000007