(57)【要約】【課題】本発明は送信側と受信側との間のドライブ能力及びスルーレートを適切な状態に自動設定する集積回路を提供する。【解決手段】集積回路装置１は、Ａ集積回路２とＢ集積回路３と間に最小配線長及び最大配線長のタイミング検証用のテストデータ線を設け、一方が送信側、他方が受信側となって、送信側が所定時にクロックに同期してテストパターンをテストデータ線を通して送出し、受信側が受信したテストパターンに応じた応答信号を送出し、送信側が受信した応答信号がテストパターンの期待値に一致していないと、比較結果に応じてドライブ能力及びスルーレートを変更して再度テストパターンを送出して応答信号と期待値を比較する処理を所定回数行い、比較結果が一致すると、処理結果に応じてドライブ能力及びスルーレートを設定し、処理を所定回数行っても比較結果が一致しないと、エラー信号を出力する。【選択図】　　　　　図１
2004069539.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも送信側と受信側でデジタル信号の授受を行う集積回路において、前記送信側と前記受信側の間のデータ線に最小配線長及び最大配線長のタイミング検証用のテストデータ線を設け、当該送信側が、リセット時または一定期間間隔毎に、クロックに同期して所定のテストパターンを前記テストデータ線を通して当該受信側に送出し、当該受信側が、当該送信側からのテストパターンに応じた応答信号を前記テストデータ線を通して当該送信側に送出し、当該送信側が、当該受信側からの応答信号と前記テストパターンに対して予め設定されている期待値とを比較する信号検査処理を行い、当該応答信号が当該期待値に一致していないときには、当該比較結果に応じて出力信号に対するドライブ能力及びスルーレートを変更し、当該変更後のドライブ能力及びスルーレートで前記テストパターンを送出して当該テストパターンに対する前記受信側からの応答信号と期待値とを比較する信号検査処理を所定回数行い、前記比較結果が一致すると、当該一致したときの信号検査処理結果に応じてドライブ能力及びスルーレートを設定するとともに、当該変更したドライブ能力及びスルーレートを記憶手段に記憶し、前記信号検査処理を所定回数行っても前記比較結果が一致しないときには、エラー信号を出力することを特徴とする集積回路。
【請求項２】
前記集積回路は、一定間隔毎に電圧値をサンプリングし、当該サンプリングした電圧値に対する前記ドライブ能力及びスルーレートの値を前記記憶手段に記憶することを特徴とする請求項１記載の集積回路。
【請求項３】
前記集積回路は、一定間隔毎に温度値をサンプリングし、当該サンプリングした温度値に対する前記ドライブ能力及びスルーレートの値を前記記憶手段に記憶することを特徴とする請求項１または請求項２記載の集積回路。
【請求項４】
前記集積回路は、所定タイミングで、前記記憶手段に格納されている前記電圧値に対する前記ドライブ能力及びスルーレートまたは／及び前記温度値に対する前記ドライブ能力及びスルーレートを読み出して、前記受信側に出力する出力信号に対するドライブ能力及びスルーレートを設定することを特徴とする請求項２または請求項３記載の集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集積回路に関し、詳細には、送信側と受信側との間のドライブ能力及びスルーレートを適切な状態に自動設定する集積回路に関する。
【０００２】
【従来の技術】
近年、プリント基板内でのデジタル信号の伝送速度が高速になってきており、回路やボード設計を行なう上で、デジタル信号のタイミングにおけるセットアップ時間やホールド時間の規格値に対してのマージン（余裕）が少なくなってきている。
【０００３】
一方、回路設計やボード設計においては、デジタル信号のタイミングにおけるセットアップ時間やホールド時間の規格値に対して、マージンを極力持たせながら、タイミング設計が行われる。
【０００４】
【発明が解決しようとする課題】
しかしながら、各デバイスの規格値を満足したタイミング設計を行なっても、環境条件（温度、電圧等）や各デバイスの送信側における送信信号のドライブ電流のバラツキや送信信号の出力遅延のバラツキや受信側でのセットアップ時間やホールド時間の閾値のバラツキ及びプリント基板を構成している部材のバラツキによる伝送線路のインピーダンスのバラツキ等の要因が重なり、時には、デジタル信号のタイミングにおけるセットアップ時間やホールド時間おける基板を満足しないことがある。
【０００５】
このように、デバイスや部材の特性のバラツキと外的要因によって、タイミング上最悪条件になりうる方向にバラツキが偏ってしまった場合に、受信側のデバイスが正常なデータを認識できないおそれがある。
【０００６】
そこで、請求項１記載の発明は、少なくとも送信側と受信側でデジタル信号の授受を行うに際して、送信側と受信側の間のデータ線に最小配線長及び最大配線長のタイミング検証用のテストデータ線を設け、当該送信側が、リセット時または一定期間間隔毎に、クロックに同期して所定のテストパターンをテストデータ線を通して当該受信側に送出し、当該受信側が、当該送信側からのテストパターンに応じた応答信号をテストデータ線を通して当該送信側に送出し、当該送信側が、当該受信側からの応答信号とテストパターンに対して予め設定されている期待値とを比較する信号検査処理を行い、当該応答信号が当該期待値に一致していないときには、当該比較結果に応じて出力信号に対するドライブ能力及びスルーレートを変更し、当該変更後のドライブ能力及びスルーレートでテストパターンを送出して当該テストパターンに対する受信側からの応答信号と期待値とを比較する信号検査処理を所定回数行い、比較結果が一致すると、当該一致したときの信号検査処理結果に応じてドライブ能力及びスルーレートを設定するとともに、当該変更したドライブ能力及びスルーレートを記憶手段に記憶し、信号検査処理を所定回数行っても比較結果が一致しないときには、エラー信号を出力することにより、信号線の遅延、すなわち、タイミングに密接に関与する信号線長の最小配線長値と最大配線長値になるようなテストデータ線を用いて、ドライブ能力及びスルーレートを適切な値に設定して、記憶手段に記憶するとともに、ドライブ能力及びスルーレートを変更しても期待値と受信側からの応答信号のデータが一致しない場合にはエラー信号を出力して、転送が正常に動作していないことを通知し、適切な信号授受を確保するとともに、不正な信号授受を未然に防止して、利用性の良好な集積回路を提供することを目的としている。
【０００７】
請求項２記載の発明は、一定間隔毎に電圧値をサンプリングし、当該サンプリングした電圧値に対するドライブ能力及びスルーレートの値を記憶手段に記憶することにより、各電圧値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにし、より一層利用性の良好な集積回路を提供することを目的としている。
【０００８】
請求項３記載の発明は、一定間隔毎に温度値をサンプリングし、当該サンプリングした温度値に対するドライブ能力及びスルーレートの値を記憶手段に記憶することにより、各温度値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにし、より一層利用性の良好な集積回路を提供することを目的としている。
【０００９】
請求項４記載の発明は、所定タイミングで、記憶手段に格納されている電圧値に対するドライブ能力及びスルーレートまたは／及び温度値に対するドライブ能力及びスルーレートを読み出して、受信側に出力する出力信号に対するドライブ能力及びスルーレートを設定することにより、各電圧値や各温度値に応じた最適なドライブ能力及びスルーレートの値を設定して、適切な信号授受を確保できるようにし、より一層利用性の良好な集積回路を提供することを目的としている。
【００１０】
【課題を解決するための手段】
請求項１記載の発明の集積回路は、少なくとも送信側と受信側でデジタル信号の授受を行う集積回路において、前記送信側と前記受信側の間のデータ線に最小配線長及び最大配線長のタイミング検証用のテストデータ線を設け、当該送信側が、リセット時または一定期間間隔毎に、クロックに同期して所定のテストパターンを前記テストデータ線を通して当該受信側に送出し、当該受信側が、当該送信側からのテストパターンに応じた応答信号を前記テストデータ線を通して当該送信側に送出し、当該送信側が、当該受信側からの応答信号と前記テストパターンに対して予め設定されている期待値とを比較する信号検査処理を行い、当該応答信号が当該期待値に一致していないときには、当該比較結果に応じて出力信号に対するドライブ能力及びスルーレートを変更し、当該変更後のドライブ能力及びスルーレートで前記テストパターンを送出して当該テストパターンに対する前記受信側からの応答信号と期待値とを比較する信号検査処理を所定回数行い、前記比較結果が一致すると、当該一致したときの信号検査処理結果に応じてドライブ能力及びスルーレートを設定するとともに、当該変更したドライブ能力及びスルーレートを記憶手段に記憶し、前記信号検査処理を所定回数行っても前記比較結果が一致しないときには、エラー信号を出力することにより、上記目的を達成している。
【００１１】
上記構成によれば、少なくとも送信側と受信側でデジタル信号の授受を行うに際して、送信側と受信側の間のデータ線に最小配線長及び最大配線長のタイミング検証用のテストデータ線を設け、当該送信側が、リセット時または一定期間間隔毎に、クロックに同期して所定のテストパターンをテストデータ線を通して当該受信側に送出し、当該受信側が、当該送信側からのテストパターンに応じた応答信号をテストデータ線を通して当該送信側に送出し、当該送信側が、当該受信側からの応答信号とテストパターンに対して予め設定されている期待値とを比較する信号検査処理を行い、当該応答信号が当該期待値に一致していないときには、当該比較結果に応じて出力信号に対するドライブ能力及びスルーレートを変更し、当該変更後のドライブ能力及びスルーレートでテストパターンを送出して当該テストパターンに対する受信側からの応答信号と期待値とを比較する信号検査処理を所定回数行い、比較結果が一致すると、当該一致したときの信号検査処理結果に応じてドライブ能力及びスルーレートを設定するとともに、当該変更したドライブ能力及びスルーレートを記憶手段に記憶し、信号検査処理を所定回数行っても比較結果が一致しないときには、エラー信号を出力するので、信号線の遅延、すなわち、タイミングに密接に関与する信号線長の最小配線長値と最大配線長値になるようなテストデータ線を用いて、ドライブ能力及びスルーレートを適切な値に設定して、記憶手段に記憶することができるとともに、ドライブ能力及びスルーレートを変更しても期待値と受信側からの応答信号のデータが一致しない場合にはエラー信号を出力して、転送が正常に動作していないことを通知することができ、適切な信号授受を確保することができるとともに、不正な信号授受を未然に防止して、利用性を向上させることができる。
【００１２】
この場合、例えば、請求項２に記載するように、前記集積回路は、一定間隔毎に電圧値をサンプリングし、当該サンプリングした電圧値に対する前記ドライブ能力及びスルーレートの値を前記記憶手段に記憶するものであってもよい。
【００１３】
上記構成によれば、一定間隔毎に電圧値をサンプリングし、当該サンプリングした電圧値に対するドライブ能力及びスルーレートの値を記憶手段に記憶するので、各電圧値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００１４】
また、例えば、請求項３に記載するように、前記集積回路は、一定間隔毎に温度値をサンプリングし、当該サンプリングした温度値に対する前記ドライブ能力及びスルーレートの値を前記記憶手段に記憶するものであってもよい。
【００１５】
上記構成によれば、一定間隔毎に温度値をサンプリングし、当該サンプリングした温度値に対するドライブ能力及びスルーレートの値を記憶手段に記憶するので、各温度値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００１６】
さらに、例えば、請求項４に記載するように、前記集積回路は、所定タイミングで、前記記憶手段に格納されている前記電圧値に対する前記ドライブ能力及びスルーレートまたは／及び前記温度値に対する前記ドライブ能力及びスルーレートを読み出して、前記受信側に出力する出力信号に対するドライブ能力及びスルーレートを設定するものであってもよい。
【００１７】
上記構成によれば、所定タイミングで、記憶手段に格納されている電圧値に対するドライブ能力及びスルーレートまたは／及び温度値に対するドライブ能力及びスルーレートを読み出して、受信側に出力する出力信号に対するドライブ能力及びスルーレートを設定するので、各電圧値や各温度値に応じた最適なドライブ能力及びスルーレートの値を設定して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００１８】
【発明の実施の形態】
以下、本発明の好適な実施の形態を添付図面に基づいて詳細に説明する。なお、以下に述べる実施の形態は、本発明の好適な実施の形態であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
【００１９】
図１〜図７は、本発明の集積回路の一実施の形態を示す図であり、図１は、本発明の集積回路の一実施の形態を適用した集積回路装置１の要部回路構成図である。
【００２０】
図１において、集積回路装置１は、Ａ集積回路２とＢ集積回路３を有し、これらのＡ集積回路２とＢ集積回路３の間には、Ａ集積回路２からＢ集積回路３への制御線、Ｂ集積回路３からＡ集積回路２への制御線、Ａ集積回路２とＢ集積回路３の双方向の制御線が配設されており、また、双方向のクロック信号（ＣＬＫ）線及びデータバスが配設されていて、Ａ集積回路２とＢ集積回路３の間でデータの高速伝送が行われる。そして、Ａ集積回路２とＢ集積回路３との間には、最小配線長のデータ線ＤＡＴＡｍｉｎ（Ｘ端子）及び最大配線長のデータ線ＤＡＴＡｍａｘ（Ｙ端子）が設けられており、タイミング検証用のテストデータ線として利用される。
【００２１】
Ａ集積回路２は、Ａバス４に接続されており、Ｂ集積回路３は、Ｂバス５に接続されている。
【００２２】
また、Ａ集積回路２とＢ集積回路３は、外部バス６で接続されており、外部バス６には、電圧検出部７、温度検出部８及びデータ格納部（記憶手段）９が接続されている。
【００２３】
電圧検出部７は、集積回路装置１に供給されている電圧値を検出して、Ａ集積回路２及びＢ集積回路３に出力し、温度検出部８は、集積回路装置１の温度を検出して、Ａ集積回路２及びＢ集積回路３に出力する。
【００２４】
データ格納部９は、図２に示すように、Ａ集積回路２のレジスタとＢ集積回路３のレジスタに設定するレジスタ項目のデータが格納されており、このレジスタ項目としては、▲１▼データ線のスルーレート、▲２▼データ線のドライブ電流値、▲３▼検証用データ線に出力される送信側のデータパターン（期待値データ）、▲４▼検証用のデータ線に出力される送信側のデータパターンのパルス幅、▲５▼検証用のデータ線に出力される送信側のデータパターンのパルス数（有効ビット）、▲６▼受信側から応答され検証用のデータ線に入力される送信側のデータパターン（応答データ）及び▲７▼送信側の期待値データと受信側から応答される応答データの比較結果等がある。なお、図２では、レジスタのビットを、１６ビットとしているが、１６ビットに限るものではなく、１６ビット以上であっても、また、１６ビット以下であってもよい。
【００２５】
次に、本実施の形態の作用を説明する。本実施の形態の集積回路装置１は、図３に示すように、リセット解除後またはテスト割込受付可能状態で、通常動作に先立って、クロックと予め設けている最小配線長のデータ線ＤＡＴＡｍｉｎ（Ｘ端子）及び最大配線長ＤＡＴＡｍａｘ（Ｙ端子）のタイミング検証用のテストデータ線にドライブして、ドライブ能力及びスルーレートを設定する信号検査処理を行う。すなわち、リセット解除後またはテスト割込受付可能状態で（ステップＳ１０１）、まず、Ａ集積回路２及びＢ集積回路３のスルーレートのレジスタ（図２の▲１▼レジスタ）とドライブ電流のレジスタ（図２の▲２▼レジスタ）に対して、外部バス６に接続されているデータ格納部９から初期値または電源ＯＦＦ動作（リセット動作）直前の設定値を読み出し、上記Ａ集積回路２及びＢ集積回路３のスルーレートのレジスタ（図２の▲１▼レジスタ）とドライブ電流のレジスタ（図２の▲２▼レジスタ）に設定して、スルーレート値及びドライブ電流値をＸ端子とＹ端子のバッファに適用する（ステップＳ１０２）。
【００２６】
次に、Ａ集積回路２が送信側になって、クロック信号（ＣＬＫ）をＢ集積回路３へ出力し、また、タイミング検証用のテストデータ線のＸ端子とＹ端子にデータパターンを出力する（ステップＳ１０３）。
【００２７】
このテストデータ線のＸ端子とＹ端子には、Ａ集積回路２のレジスタに格納されているスルーレートとドライブ電流の上記設定値を用いて出力される。
【００２８】
レジスタのビットは、図２に示したように、本実施の形態では、１６ビットとしているが、何ビット（１６ビット以上でも１６ビット以下）であってもよい。Ａ集積回路２とＢ集積回路３の間で送受するクロックは、周期的に「Ｈ」、「Ｌ」を繰り返し出力し、タイミング検証用のテストデータ線のＸ端子とＹ端子からデータパターンが、このクロックに同期して、すなわち、「Ｈ」から「Ｌ」の立下りエッジ、「Ｌ」から「Ｈ」の立上がりエッジに同期して、出力される。
【００２９】
データパターンは、送信側の出力時のクッロクエッジに対するテストデータ線のセットアップ時間Ｔｄｓａとホールド時間Ｔｄｈａを保ちながら出力される。タイミング検証用のテストデータ線のＸ端子とＹ端子に出力されるデータは、図２の▲３▼［検証用のデータ線に出力される送信側のデータパターン（期待値）］として示すように、送信側のＡ集積回路２のレジスタに格納されており、例えば、Ｘ端子に出力されるデータパターンを上位８ビット、Ｙ端子に出力されるデータパターンを下位８ビットとしている。タイミング検証用のテストデータ線のＸ端子とＹ端子に出力されるデータのパルス幅は、図２の▲４▼［検証用のデータ線に出力される送信側のデータパターンのパルス幅］として示すように、送信側のＡ集積回路２のレジスタに格納されている。また、検証用のデータ線に出力される送信側のデータパターンのパルス数は、図２の▲５▼［検証用のデータ線に出力される送信側のデータパターンのパルス数］として示すように、送信側のＡ集積回路２のレジスタに格納されている。
【００３０】
そして、レジスト項目▲３▼［検証用のデータ線に出力される送信側のデータパターン（期待値）］が、いま、図３に示すように、「１０１０１０１０」と各８個のデータパターンがクロックに同期してＡ集積回路２からＸ端子及びＹ端子に出力されるものとすると、Ａ集積回路２のレジスト項目▲５▼［検証用のデータ線に出力される送信側のデータパターンのパルス数］のレジスタには、この各８個のデータパターン数を示す「１１１１１１１１１１１１１１１１」が設定されている。
【００３１】
そして、クロックとデータは、図５に示すように、８個のクロックエッジと各８個のデータパターンが出力された後、図５に破線で示す範囲をＺで示すように、ハイインピーダンス状態となり、Ａ集積回路２及びＢ集積回路３に内蔵されているプルアップ抵抗値により「Ｈ」が維持される。
【００３２】
そして、Ｂ集積回路３では、クロックとデータパターンが入力され、Ｂ集積回路３は、クロックのエッジ（「Ｈ」から「Ｌ」の立下りエッジ、「Ｌ」から「Ｈ」の立上がりエッジの順）で、「１０１０１０１０」の各８個のデータパターンを取り込んで、取り込んだデータパターンを検証用データ線受信レジスタに格納する（ステップＳ１０４）。
【００３３】
次に、Ｂ集積回路３が出力側となり、図５に示すｔ時間後に、先に、Ａ集積回路２側から入力されたクロックと同じ周期、同じ個数のエッジを出力し、このクロックに同期して、上記検証用データ線受信レジスタに格納した各８個のデータパターン（「＊＊＊＊＊＊＊＊」）をＡ集積回路２に送出する（ステップＳ１０５）。ここで、Ｂ集積回路３から出力するデータパターン「＊＊＊＊＊＊＊＊」は、Ｂ集積回路３の検証用データ線受信レジスタに格納されたデータである。
【００３４】
いま、Ｂ集積回路３で取り込まれたデータパターン「１０１０１０１０」が、クロックとのタイミング規格を守れずに、間違ってデータパターンを「０１０１０１０１」と認識してしまった場合、Ｂ集積回路３の検証用データ線受信レジスタには、この「０１０１０１０１」のデータパターンが格納され、Ｂ集積回路３から出力されるデータパターン「＊＊＊＊＊＊＊＊」は、「０１０１０１０１」となる。
【００３５】
そして、クロックとデータは、８個のクロックエッジと各８個のデータパターンを出力した後、図４にＺ’領域として破線で示すように、ハイインピーダンス状態となり、Ａ集積回路２及びＢ集積回路３に内蔵のプルアップ抵抗値により「Ｈ」を維持する。
【００３６】
その後、再度、Ａ集積回路２は、受信側となって、Ｂ集積回路３から送出されたデータパターン「＊＊＊＊＊＊＊＊」、すなわち、上記例では、「０１０１０１０１」とクロックが入力され、入力されるデータパターンを読み込んで、Ａ集積回路２の検証用データ線受信レジスタ（図２の▲６▼）に格納する（ステップＳ１０６）。このとき、Ａ集積回路２は、Ｘ端子を通して入力されたものを、図２の▲６▼のレジスタの上位８ビットへ、Ｙ端子を通して入力されたものを、図２の▲６▼のレジスタの下位８ビットへ格納する。
【００３７】
Ａ集積回路２は、その比較結果レジスタ（図２の▲７▼）に、送信時のデータパターンである期待値（図２の▲３▼）と検証用データ線受信レジスタ内のデータを比較した結果を格納する。例えば、期待値と受信データをＡＮＤを取った場合、一致しているビットは「１」となる。いま、上記例では、期待値「１０１０１０１０１０１０１０１０」に対して、受信データが、「０１０１０１０１０１０１０１０１」であるため、比較結果レジスタには、「００００００００００００００００」が格納される。
【００３８】
Ａ集積回路２は、比較結果レジスタの内容を検証して、期待値と受信データが一致するか判別する（ステップＳ１０７）。いま、上記例では、Ａ集積回路２は、期待値通りデータパターンを受信しなかったため、Ａ集積回路２及びＢ集積回路３のスルーレート値、ドライブ電流値の組み合わせを一巡したかチェックし（ステップＳ１０８）、いま、一巡していないため、「Ｂ集積回路３側で取り込まれたデータパターンにタイミング上の問題がある」と判断して、データスルーレート値とデータドライブ値の設定を変更して（ステップＳ１０８）、ステップＳ１０３に移行して、上記リセット解除後と同様のシーケンスで、Ａ集積回路２が送信側となってクロックを出力し、また、タイミング検証用のテストデータ線のＸ端子とＹ端子にデータパターンをＢ集積回路３に出力する（ステップＳ１０３）。
【００３９】
上記同様に、Ｂ集積回路３は、受信した後、送信側になり、クロックと認識したデータパターンをＡ集積回路２に送信する（ステップＳ１０４、Ｓ１０５）。
【００４０】
上記同様に、Ａ集積回路２が、受信したデータを検証用データ線受信レジスタに格納するとともに、比較結果データに期待値と受信データの比較結果を格納して、期待値と受信データを比較して、一致しているかどうかを判断する（ステップＳ１０６、Ｓ１０７）。
【００４１】
ステップＳ１０７で、期待値と受信データが一致しない場合には、繰り返しデータスルーレート値とデータドライブ値の設定を変更して、上記同様に処理し（ステップＳ１０８、Ｓ１０９、Ｓ１０３〜Ｓ１０７）、ステップＳ１０８で、Ａ集積回路２及びＢ集積回路３のスルーレート値、ドライブ電流値の組み合わせを一巡して、全ての組合わせにおいて期待値と受信データが一致しない場合には、エラー信号としてＥＲＲ端子に出力して、処理を終了する（ステップＳ１１０）。
【００４２】
ステップＳ１０７で、期待値と受信データが一致すると、図４に示すように、次に、Ｂ集積回路３が送信側となり、上記ステップＳ１０３からステップＳ１０９の場合とは、Ａ集積回路２とＢ集積回路３が逆になった状態で、上記同様の動作を行う。すなわち、Ｂ集積回路３が送信側になって、クロック信号（ＣＬＫ）をＡ集積回路２へ出力し、また、タイミング検証用のテストデータ線のＸ端子とＹ端子にデータパターンを出力する（ステップＳ１１１）。Ａ集積回路２は、入力されるクロックのエッジ（「Ｈ」から「Ｌ」の立下りエッジ、「Ｌ」から「Ｈ」の立上がりエッジの順）で、「１０１０１０１０」の各８個のデータパターンを取り込んで、取り込んだデータパターンを検証用データ線受信レジスタに格納する（ステップＳ１１２）。次に、Ａ集積回路２が出力側となり、図５に示したｔ後に、先に、Ｂ集積回路３側から入力されたクロックと同じ周期、同じ個数のエッジを出力し、このクロックに同期して、上記検証用データ線受信レジスタに格納した各８個のデータパターン（「＊＊＊＊＊＊＊＊」）をＢ集積回路３に送出する（ステップＳ１１３）。その後、再度、Ｂ集積回路３は、受信側となって、Ａ集積回路２から送出されたデータパターン「＊＊＊＊＊＊＊＊」とクロックが入力され、入力されるデータパターンを読み込んで、Ｂ集積回路３の検証用データ線受信レジスタ（図２の▲６▼）に格納する（ステップＳ１１４）。このとき、Ｂ集積回路３は、Ｘ端子を通して入力されたものを、図２の▲６▼のレジスタの上位８ビットへ、Ｙ端子を通して入力されたものを、図２の▲６▼のレジスタの下位８ビットへ格納する。
【００４３】
Ｂ集積回路３は、比較結果レジスタの内容を検証して、期待値と受信データが一致するか判別する（ステップＳ１１５）。Ｂ集積回路３は、一致しない場合、Ａ集積回路２及びＢ集積回路３のスルーレート値、ドライブ電流値の組み合わせを一巡したかチェックし（ステップＳ１１６）、いま、一巡していないため、「Ａ集積回路２側で取り込まれたデータパターンにタイミング上の問題がある」と判断して、データスルーレート値とデータドライブ値の設定を変更して（ステップＳ１１７）、ステップＳ１１１に移行して、上記リセット解除後と同様のシーケンスで、Ｂ集積回路３が送信側となってクロックを出力し、また、タイミング検証用のテストデータ線のＸ端子とＹ端子にデータパターンをＡ集積回路２に出力する（ステップＳ１１１）。
【００４４】
上記同様に、Ａ集積回路３は、受信した後、送信側になり、クロックと認識したデータパターンをＢ集積回路３に送信する（ステップＳ１１２、Ｓ１１３）。
【００４５】
上記同様に、Ｂ集積回路３が、受信したデータを検証用データ線受信レジスタに格納するとともに、比較結果データに期待値と受信データの比較結果を格納して、期待値と受信データを比較して、一致しているかどうかを判断する（ステップＳ１１４、Ｓ１１５）。
【００４６】
ステップＳ１１５で、期待値と受信データが一致しない場合には、繰り返しデータスルーレート値とデータドライブ値の設定を変更して、上記同様に処理し（ステップＳ１１６、Ｓ１１７、Ｓ１１１〜Ｓ１１５）、ステップＳ１１６で、Ａ集積回路２及びＢ集積回路３のスルーレート値、ドライブ電流値の組み合わせを一巡して、全ての組合わせにおいて期待値と受信データが一致しない場合には、エラー信号としてＥＲＲ端子に出力して、処理を終了する（ステップＳ１１８）。
【００４７】
ステップＳ１１５で、期待値と受信データが一致すると、外部バス６に接続されているデータ格納部９に、図２に示したレジスタ▲１▼、レジスタ▲２▼の設定値を格納するとともに（ステップＳ１１９）、ＤＡＴＡバスのＩ／Ｏバッファとして、レジスタ▲１▼、レジスタ▲２▼に設定されているデータスルーレート値とデータドライブ値を適用し（ステップＳ１２０）、通常動作を開始する（ステップＳ１２１）。
【００４８】
集積回路装置１は、上記処理をリセット解除後だけでなく、外部バス６に接続されている図示しないタイマ部からのテスト割込信号が一定期間毎にＡ集積回路２、Ｂ集積回路３に入力され、テスト割込を受け付け可能な状態になると、Ａ集積回路２、Ｂ集積回路３のＡバス４、Ｂバス５を開放し、上記同様の処理を行う。
【００４９】
さらに、集積回路装置１は、図６に示すように、一定時間間間隔毎に、電圧検出部７と温度検出部８が作動し、電圧検出部７の検出した電圧値と温度検出部８の検出した温度値とともに、図３及び図４のステップＳ１０２〜Ｓ１１９の一連の処理を行った後、最適なスルーレート値とドライブ電流値をデータ格納部９に格納する。
【００５０】
このデータ格納部９には、例えば、図６に示すように、電圧値を、３Ｖ（下限値）から３．６Ｖ（上限値）までを、０．１Ｖ毎に、温度値を、１０℃（下限値）から７０℃（上限値）までを、１℃毎に分割して、それぞれの電圧値及び温度値に対応する最適なスルーレート値とドライブ電流値が格納される。この場合、電圧値と温度値の上限値、下限値及びステップ値は、任意に設定可能であり、基本的には、使用されるデバイスの規格値に合わせて、上限値、下限値が設定される。
【００５１】
そして、集積回路装置１は、データ格納部９に電圧値及び温度値に対応する最適なスルーレート値とドライブ電流値が格納されている状態で、図７に示すように、一定時間間隔に電圧検出部７及び温度検出部８で検出を行って、最適なスルーレート値とドライブ電流値を設定する。
【００５２】
すなわち、集積回路装置１は、図７に示すように、電圧検出部７及び温度検出部８によるスルーレート値及びドライブ値の自動設定を適用するかチェックして（ステップＳ２０１）、電圧検出部７及び温度検出部８によるスルーレート値及びドライブ値の自動設定を適用する場合には、一定時間経過したかチェックし（ステップＳ２０２）、一定時間経過すると、電圧検出部７及び温度検出部８により電圧と温度を検出する（ステップＳ２０３）。
【００５３】
電圧検出部７の検出した電圧値または温度検出部８の検出した温度が予め設定されている上限値または下限値を越えているかチェックし（ステップＳ２０４）、電圧検出部７の検出した電圧値または温度検出部８の検出した温度が予め設定されている上限値または下限値を越えていないときには、データ格納部９のタグＮｏから検出された電圧値及び各温度値に対応したスルーレート値とドライブ電流値を読み出し、Ａ集積回路２及びＢ集積回路３のレジスタに書き込んで、本来使用されるＤＡＴＡバスのバッファの値として適用させる（ステップＳ２０５）。
【００５４】
ステップＳ２０４で、電圧検出部７の検出した電圧値または温度検出部８の検出した温度が予め設定されている上限値または下限値を越えているときには、各検出部７、８のＥＲＲ端子からエラー信号を出力して、処理を終了する（ステップＳ２０６）。
【００５５】
このように、本実施の形態の集積回路装置１は、少なくとも送信側と受信側でデジタル信号の授受を行うに際して、送信側と受信側のＡ集積回路２とＢ集積回路３と間のデータ線に最小配線長ＤＡＴＡｍｉｎ及び最大配線長ＤＡＴＡｍａｘのタイミング検証用のテストデータ線を設け、当該送信側が、リセット時または一定期間間隔毎に、クロックに同期して所定のテストパターンをテストデータ線を通して当該受信側に送出し、当該受信側が、当該送信側からのテストパターンに応じた応答信号をテストデータ線を通して当該送信側に送出し、当該送信側が、当該受信側からの応答信号とテストパターンに対して予め設定されている期待値とを比較する信号検査処理を行い、当該応答信号が当該期待値に一致していないときには、当該比較結果に応じて出力信号に対するドライブ能力及びスルーレートを変更し、当該変更後のドライブ能力及びスルーレートでテストパターンを送出して当該テストパターンに対する受信側からの応答信号と期待値とを比較する信号検査処理を所定回数行い、比較結果が一致すると、当該一致したときの信号検査処理結果に応じてドライブ能力及びスルーレートを設定するとともに、当該変更したドライブ能力及びスルーレートを記憶手段であるデータ格納部９に記憶し、信号検査処理を所定回数行っても比較結果が一致しないときには、エラー信号を出力している。
【００５６】
したがって、信号線の遅延、すなわち、タイミングに密接に関与する信号線長の最小配線長値と最大配線長値になるようなテストデータ線を用いて、ドライブ能力及びスルーレートを適切な値に設定して、データ格納部９に記憶することができるとともに、ドライブ能力及びスルーレートを変更しても期待値と受信側からの応答信号のデータが一致しない場合にはエラー信号を出力して、転送が正常に動作していないことを通知することができ、適切な信号授受を確保することができるとともに、不正な信号授受を未然に防止して、利用性を向上させることができる。
【００５７】
また、本実施の形態の集積回路装置１は、一定間隔毎に電圧検出部７で電圧値をサンプリングし、当該サンプリングした電圧値に対するドライブ能力及びスルーレートの値をデータ格納部９に記憶している。
【００５８】
したがって、各電圧値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００５９】
さらに、本実施の形態の集積回路装置１は、一定間隔毎に温度検出部８で温度値をサンプリングし、当該サンプリングした温度値に対するドライブ能力及びスルーレートの値をデータ格納部９に記憶している。
【００６０】
したがって、各温度値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００６１】
また、本実施の形態の集積回路装置１は、所定タイミングで、データ格納部９に格納されている電圧値に対するドライブ能力及びスルーレートまたは／及び温度値に対するドライブ能力及びスルーレートを読み出して、受信側に出力する出力信号に対するドライブ能力及びスルーレートを設定している。
【００６２】
したがって、各電圧値や各温度値に応じた最適なドライブ能力及びスルーレートの値を設定して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００６３】
以上、本発明者によってなされた発明を好適な実施の形態に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００６４】
【発明の効果】
請求項１記載の発明の集積回路によれば、少なくとも送信側と受信側でデジタル信号の授受を行うに際して、送信側と受信側の間のデータ線に最小配線長及び最大配線長のタイミング検証用のテストデータ線を設け、当該送信側が、リセット時または一定期間間隔毎に、クロックに同期して所定のテストパターンをテストデータ線を通して当該受信側に送出し、当該受信側が、当該送信側からのテストパターンに応じた応答信号をテストデータ線を通して当該送信側に送出し、当該送信側が、当該受信側からの応答信号とテストパターンに対して予め設定されている期待値とを比較する信号検査処理を行い、当該応答信号が当該期待値に一致していないときには、当該比較結果に応じて出力信号に対するドライブ能力及びスルーレートを変更し、当該変更後のドライブ能力及びスルーレートでテストパターンを送出して当該テストパターンに対する受信側からの応答信号と期待値とを比較する信号検査処理を所定回数行い、比較結果が一致すると、当該一致したときの信号検査処理結果に応じてドライブ能力及びスルーレートを設定するとともに、当該変更したドライブ能力及びスルーレートを記憶手段に記憶し、信号検査処理を所定回数行っても比較結果が一致しないときには、エラー信号を出力するので、信号線の遅延、すなわち、タイミングに密接に関与する信号線長の最小配線長値と最大配線長値になるようなテストデータ線を用いて、ドライブ能力及びスルーレートを適切な値に設定して、記憶手段に記憶することができるとともに、ドライブ能力及びスルーレートを変更しても期待値と受信側からの応答信号のデータが一致しない場合にはエラー信号を出力して、転送が正常に動作していないことを通知することができ、適切な信号授受を確保することができるとともに、不正な信号授受を未然に防止して、利用性を向上させることができる。
【００６５】
請求項２記載の発明の集積回路によれば、一定間隔毎に電圧値をサンプリングし、当該サンプリングした電圧値に対するドライブ能力及びスルーレートの値を記憶手段に記憶するので、各電圧値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００６６】
請求項３記載の発明の集積回路によれば、一定間隔毎に温度値をサンプリングし、当該サンプリングした温度値に対するドライブ能力及びスルーレートの値を記憶手段に記憶するので、各温度値に応じた最適なドライブ能力及びスルーレートの値を格納して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【００６７】
請求項４記載の発明の集積回路によれば、所定タイミングで、記憶手段に格納されている電圧値に対するドライブ能力及びスルーレートまたは／及び温度値に対するドライブ能力及びスルーレートを読み出して、受信側に出力する出力信号に対するドライブ能力及びスルーレートを設定するので、各電圧値や各温度値に応じた最適なドライブ能力及びスルーレートの値を設定して、適切な信号授受を確保できるようにすることができ、より一層利用性を向上させることができる。
【図面の簡単な説明】
【図１】本発明の集積回路の一実施の形態を適用した集積回路装置の要部回路ブロック図。
【図２】図１の集積回路のレジスタ項目の一例を示す図。
【図３】図１の集積回路装置によるスルーレート及びドライブ電流調整処理を示すフローチャート。
【図４】図３のスルーレート及びドライブ電流調整処理の続きの処理を示すフローチャート。
【図５】図３及び図４のスルーレート及びドライブ電流調整処理でのクロック、ＤＡＴＡｍｉｎ及びＤＡＴＡｍａｘのタイミングチャート。
【図６】電圧値及び温度値に対応して図１のデータ格納部に格納される最適なスルーレート値及びドライブ電流値の一例を示す図。
【図７】検出された電圧値及び温度値に対応する最適なスルーレート値及びドライブ電流値の設定処理を示すフローチャート。
【符号の説明】
１　集積回路装置
２　Ａ集積回路
３　Ｂ集積回路
４　Ａバス
５　Ｂバス
６　外部バス
７　電圧検出部
８　温度検出部
９　データ格納部
【図１】
2004069539.tif 000003
【図２】
2004069539.tif 000004
【図３】
2004069539.tif 000005
【図４】
2004069539.tif 000006
【図５】
2004069539.tif 000007
【図６】
2004069539.tif 000008
【図７】
2004069539.tif 000009