(57)【要約】【課題】内蔵型セルフテスト回路を有するＳＯＣ及びそのセルフテスト方法を提供する。【解決手段】ＢＩＳＴロジック回路を含むＩＰブロックとＢＩＳＴコントロール部とを備えることを特徴とする内蔵型セルフテスト回路を有するＳＯＣ。ＢＩＳＴロジック回路は、システムバスを介して受信される制御データに応答してノーマルモードまたはテストモードで動作し、テストモードでテスト結果データを出力する。ＢＩＳＴコントロール部は、テストモードで、システムバスを介してＢＩＳＴロジック回路に制御データ、コマンド信号、テストパターンデータ、及びテストアドレス信号を伝送してＩＰブロックをテストし、システムバスを介して受信されるテスト結果データを圧縮して保存する。これにより、ＳＯＣの動作速度でテストを行い、テスト時間を短縮させ、ＳＯＣがボードに実装された後にもテストを行える。【選択図】図３
2005241651.tif 000002
【特許請求の範囲】
【請求項１】
内蔵型セルフテスト回路を有するＳＯＣにおいて、
システムバスを介して受信される制御データに応答してノーマルモードまたはテストモードで動作し、テストモードでテスト結果データを出力するＢＩＳＴ（Ｂｕｉｌｔ−Ｉｎ−Ｓｅｌｆ−Ｔｅｓｔ）ロジック回路を含むＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ Ｐｒｏｐｅｒｔｙ）ブロックと、
テストモードで、前記システムバスを介して前記ＢＩＳＴロジック回路に前記制御データ、コマンド信号、テストパターンデータ、及びテストアドレス信号を伝送して前記ＩＰブロックをテストし、前記システムバスを介して受信される前記テスト結果データを圧縮して保存するＢＩＳＴコントロール部と、を備えることを特徴とするＳＯＣ。
【請求項２】
前記ＩＰブロックのそれぞれは、前記ＢＩＳＴロジック回路の入力端及び出力端にそれぞれ連結される第１及び第２組み合わせ回路をさらに含み、
ノーマルモードで、前記ＢＩＳＴロジック回路は、前記第１組み合わせ回路から受信されるノーマル動作関連信号を前記第２組み合わせ回路に伝送するか、または前記システムバスに出力し、テストモードで、前記ＢＩＳＴロジック回路は、前記コマンド信号と前記テストアドレス信号とに応答して、前記テストパターンデータを前記第２組み合わせ回路に出力し、前記第１組み合わせ回路から前記テスト結果データを受信して前記システムバスに出力することを特徴とする請求項１に記載のＳＯＣ。
【請求項３】
前記テストアドレス信号は、第１テストアドレス信号と複数の第２テストアドレス信号とを含み、
前記ＢＩＳＴロジック回路は、
前記第１テストアドレス信号と前記コマンド信号とに応答してレジスタ制御信号を発生させ、前記コマンド信号、前記複数の第２テストアドレス信号、及び第１ないし第３テスト制御信号に応答して、第１ないし第３選択制御信号を発生させるバスインターフェース装置と、
データパスラインを介して前記システムバスに連結され、前記レジスタ制御信号に応答して前記データパスラインを介して受信される前記制御データを保存し、保存された前記制御データに基づいて前記第１ないし第３テスト制御信号を発生させる制御レジスタと、を備えることを特徴とする請求項１に記載のＳＯＣ。
【請求項４】
前記制御データは、複数のビットを含み、
前記制御レジスタは、前記制御データに含まれる前記ビットの値に基づいて前記第１ないし第３テスト制御信号をそれぞれイネーブルさせるか、またはディセーブルさせることを特徴とする請求項３に記載のＳＯＣ。
【請求項５】
前記バスインターフェース装置は、前記第１テスト制御信号がディセーブルされる時にノーマルモードで動作し、イネーブルされる時にテストモードで動作することを特徴とする請求項３に記載のＳＯＣ。
【請求項６】
前記ノーマルモードで、前記バスインターフェース装置は、前記第１及び第３選択制御信号のみを発生させることを特徴とする請求項５に記載のＳＯＣ。
【請求項７】
前記コマンド信号は、書き込みコマンド信号と読み取りコマンド信号とを含み、
前記バスインターフェース装置は、前記書き込みコマンド信号、前記複数の第２テストアドレス信号、前記第２及び第３テスト制御信号に応答して前記第１及び第２選択制御信号を発生させることを特徴とする請求項３に記載のＳＯＣ。
【請求項８】
前記バスインターフェース装置は、前記第２及び第３テスト制御信号がディセーブルされる時、前記複数の第２テストアドレス信号に応答して前記第１選択制御信号を発生させ、前記第２テスト制御信号がディセーブルされ、第３テスト制御信号がイネーブルされる時、前記複数の第２テストアドレス信号に応答して前記第２選択制御信号を発生させることを特徴とする請求項７に記載のＳＯＣ。
【請求項９】
前記バスインターフェース装置は、前記第２テスト制御信号がイネーブルされる時、前記第３選択制御信号をイネーブルさせ、前記第２テスト制御信号がディセーブルされる時、前記第３選択制御信号をディセーブルさせることを特徴とする請求項３に記載のＳＯＣ。
【請求項１０】
前記ＩＰブロックのそれぞれは、前記ＢＩＳＴロジック回路の入力端及び出力端にそれぞれ連結される第１及び第２組み合わせ回路をさらに含み、前記テスト結果データは、第１テスト結果データと第２テスト結果データとを含み、
前記ＢＩＳＴロジック回路は、
前記データパスラインを介して前記システムバスに連結され、前記第１選択制御信号に応答して前記データパスラインを介して受信される前記テストパターンデータを出力し、前記第１テスト制御信号と前記第３選択制御信号とに応答して、前記第１組み合わせ回路から受信される前記第１テスト結果データを出力する第１選択回路と、
前記データパスラインを介して前記システムバスに連結され、前記第２選択制御信号に応答して前記データパスラインを介して受信される前記テストパターンデータを出力し、前記第１テスト制御信号と前記第３選択制御信号とに応答して、前記第１組み合わせ回路から受信される前記第２テスト結果データを出力する第２選択回路と、
前記第１選択回路から前記テストパターンデータと前記第１テスト結果データのうちいずれか一つを受信して保存し、保存されたデータを出力する第１保存セルと、
前記第２選択回路から前記テストパターンデータと前記第２テスト結果データのうちいずれか一つを受信して保存し、保存されたデータを出力する第２保存セルと、
前記第１及び第２保存セルから前記第１及び第２テスト結果データを受信し、前記第２テストアドレス信号と前記第３テスト制御信号とに応答して、前記第１及び第２テスト結果データのうちいずれか一つを選択して、前記テスト結果データとして前記システムバスに出力する出力選択回路と、をさらに備えることを特徴とする請求項３に記載のＳＯＣ。
【請求項１１】
前記第１テスト制御信号がディセーブルされる時、前記第１選択回路は、前記第１組み合わせ回路から受信される第１ノーマル選択信号に応答して、前記第１組み合わせ回路から受信される第１ノーマル動作関連信号を出力し、前記第２選択回路は、前記第１組み合わせ回路から受信される第２ノーマル選択信号に応答して、前記第１組み合わせ回路から受信される第２ノーマル動作関連信号を出力することを特徴とする請求項１０に記載のＳＯＣ。
【請求項１２】
前記第１テスト制御信号がディセーブルされる時、前記第３テスト制御信号がディセーブル状態に維持されることを特徴とする請求項１０に記載のＳＯＣ。
【請求項１３】
前記コマンド信号は、書き込みコマンド信号と読み取りコマンド信号とを含み、
前記バスインターフェース装置は、前記読み取りコマンド信号に応答して、前記第１テスト制御信号を前記第１及び第２選択回路に出力し、前記第２テストアドレス信号と前記第３テスト制御信号とを前記出力選択回路に出力することを特徴とする請求項１０に記載のＳＯＣ。
【請求項１４】
前記第１選択回路のそれぞれは、
前記第１テスト制御信号に応答して、前記第１ノーマル選択信号と前記第３選択制御信号のうちいずれか一つを選択して出力する第１マルチプレクサと、
前記第１マルチプレクサの出力信号に応答して、前記第１ノーマル動作関連信号と対応する前記第１保存セルの出力信号のうちいずれか一つを出力する第２マルチプレクサと、
前記第１選択制御信号に応答して、前記テストパターンデータと前記第２マルチプレクサの出力信号のうちいずれか一つを出力する第３マルチプレクサと、を備えることを特徴とする請求項１１に記載のＳＯＣ。
【請求項１５】
前記第２選択回路のそれぞれは、
前記第１テスト制御信号に応答して、前記第２ノーマル選択信号と前記第３選択制御信号のうちいずれか一つを選択して出力する第１マルチプレクサと、
前記第１マルチプレクサの出力信号に応答して、前記第２ノーマル動作関連信号と対応する前記第２保存セルの出力信号のうちいずれか一つを出力する第２マルチプレクサと、
前記第２選択制御信号に応答して、前記テストパターンデータと前記第２マルチプレクサの出力信号のうちいずれか一つを出力する第３マルチプレクサと、を備えることを特徴とする請求項１１に記載のＳＯＣ。
【請求項１６】
前記出力選択回路は、
前記第２テストアドレス信号に応答して、前記第１テスト結果データを順次に選択して出力する第１マルチプレクサと、
前記第２テストアドレス信号に応答して、前記第２テスト結果データを順次に選択して出力する第２マルチプレクサと、
前記第３テスト制御信号に応答して、前記第１マルチプレクサと前記第２マルチプレクサのうちいずれか一つの出力信号を選択して、前記テスト結果データとして出力する第３マルチプレクサと、を備えることを特徴とする請求項１０に記載のＳＯＣ。
【請求項１７】
前記第３テスト制御信号がディセーブルされる時、前記第３マルチプレクサは、前記第１マルチプレクサから受信される前記第１テスト結果データを前記テスト結果データとして出力し、前記第３テスト制御信号がイネーブルされる時、前記第３マルチプレクサは、前記第２マルチプレクサから受信される前記第２テスト結果データを前記テスト結果データとして出力することを特徴とする請求項１６に記載のＳＯＣ。
【請求項１８】
前記ＢＩＳＴコントロール部は、
前記テストモードで、クロック信号に応答して、前記システムバスを介して前記ＩＰブロックのうちいずれか一つに前記コマンド信号を伝送し、第１ないし第３シーケンス制御信号を発生させるシーケンス発生器と、
前記クロック信号と前記第１シーケンス制御信号とに応答して、前記テストアドレス信号を発生させて、前記システムバスに出力するアドレス発生器と、
前記クロック信号と前記第２シーケンス制御信号とに応答して、前記制御データと前記テストパターンデータとを発生させて、前記システムバスに出力するパターン生成部と、
前記クロック信号と前記第３シーケンス制御信号とに応答して、前記システムバスを介して受信される前記テスト結果データを圧縮して保存する結果圧縮部と、を備えることを特徴とする請求項１に記載のＳＯＣ。
【請求項１９】
内蔵型セルフテスト回路を有するＳＯＣのセルフテスト方法において、
（ａ）ＢＩＳＴコントロール部がＢＩＳＴロジック回路を介して、第１組み合わせ回路にテストパターンデータを入力させる段階と、
（ｂ）第２組み合わせ回路から出力されるテスト結果データを前記ＢＩＳＴロジック回路内の保存セルに保存させる段階と、
（ｃ）前記保存セルに保存された前記テスト結果データを読み取る段階と、
（ｄ）読み取られた前記テスト結果データを圧縮して保存する段階と、を含むことを特徴とするＳＯＣのセルフテスト方法。
【請求項２０】
前記ＢＩＳＴロジック回路、前記第１及び第２組み合わせ回路は、一つのＩＰブロック内に含まれることを特徴とする請求項１９に記載のＳＯＣのセルフテスト方法。
【請求項２１】
（ｅ）前記（ｄ）段階以後、追加のテストパターンデータが存在する時、前記（ａ）ないし（ｄ）段階を反復的に行う段階をさらに含むことを特徴とする請求項１９に記載のＳＯＣのセルフテスト方法。
【請求項２２】
前記保存セルは、第１保存セルと第２保存セルとを含み、
前記（ａ）段階は、
（ａ１）前記ＢＩＳＴロジック回路内の制御レジスタに、第１設定値を有する制御データを書き込む段階と、
（ａ２）前記第１保存セルに前記テストパターンデータを書き込む段階と、
（ａ３）前記制御レジスタに第２設定値を有する前記制御データを書き込む段階と、
（ａ４）前記第２保存セルに前記テストパターンデータを書き込む段階と、
（ａ５）前記第２保存セルのうち最後の第２保存セルに前記テストパターンデータが書き込まれる時、前記制御レジスタに第３設定値を有する前記制御データを書き込む段階と、を含むことを特徴とする請求項１９に記載のＳＯＣのセルフテスト方法。
【請求項２３】
前記保存セルは、第１保存セルと第２保存セルとを含み、前記テスト結果データは、第１テスト結果データと第２テスト結果データとを含み、
前記（ｃ）段階は、
（ｃ１）前記ＢＩＳＴロジック回路内の制御レジスタに、第１設定値を有する制御データを書き込む段階と、
（ｃ２）前記第１保存セルから前記第１テスト結果データ読み取る段階と、
（ｃ３）前記制御レジスタに第２設定値を有する前記制御データを書き込む段階と、
（ｃ４）前記第２保存セルから前記第２テスト結果データを読み取る段階と、を含むことを特徴とする請求項１９に記載のＳＯＣのセルフテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＳＯＣ（Ｓｙｓｔｅｍ−Ｏｎ−Ｃｈｉｐ）に係り、特にＳＯＣのテストに関する。
【背景技術】
【０００２】
一般的に、ＳＯＣの動作特性をテストするために、ＡＴＥ（Ａｕｔｏｍａｔｉｃ Ｔｅｓｔ Ｅｑｕｉｐｍｅｎｔ）によるスキャンテスト方式が主に使われる。ＡＴＥは、自動でＳＯＣをテストする装備であって、ＳＯＣに刺激信号を印加し、この刺激信号についてのＳＯＣの応答信号を検査することによってＳＯＣの不良如何をテストする。これと関連し、従来のＡＴＥの一例が特許文献１に記載されている。通常、ＡＴＥによるテストの最終結果は、ＳＯＣの応答信号が設定された許容誤差範囲内に含まれば‘パス’であり、この許容誤差範囲から外れれば‘失敗’である。
【０００３】
図１は、従来技術によるＳＯＣ １０とＡＴＥ ２０とを示すブロック図である。図１を参照すると、ＳＯＣ １０は、システムバス４０に連結されるＩＰブロック５０〜８０を含む。ＡＴＥ ２０は、ＳＯＣ １０のパッド３０に連結され、パッド３０とシステムバス４０とを介してＩＰブロック５０〜８０にそれぞれ順次に刺激信号を印加することによって、ＳＯＣ １０をテストする。ここで、ＩＰブロック５０〜８０は、それぞれＡＴＥ ２０によるスキャンテストのために、テスト信号用パスを含む。
【０００４】
図２は、図１に示すＳＯＣ １０に含まれるＩＰブロック５０の内部構成を示す。図２を参照すると、ＩＰブロック５０は、組み合わせ回路５１〜５３、マルチプレクサ５４〜５６、及び保存セル５７〜５９を含む。図示しないが、ＩＰブロック５０は、追加の組み合わせ回路と保存セルとをさらに含む。マルチプレクサ５４〜５６は、ＩＰブロック５０のスキャンテストのために追加された回路であり、マルチプレクサ５４〜５６と保存セル５７〜５９とがスキャンチェーン（即ち、テスト信号用パス）を形成する。マルチプレクサ５４〜５６により、ＩＰブロック５０内のあらゆる組み合わせ回路と保存セルとが連結されてテスト信号用パスが形成される。
【０００５】
ＳＯＣ １０がテストされる時、ＩＰブロック５０には、テスト制御信号ＳＣＡＮ＿ＥＮとテスト信号ＳＣＡＮ＿ＤＡＴＡとが入力される。テスト制御信号ＳＣＡＮ＿ＥＮがイネーブルされる時、テスト信号ＳＣＡＮ＿ＤＡＴＡは、マルチプレクサ５４〜５６と保存セル５７〜５９とにより形成されたスキャンチェーンを順次に移動する。即ち、テスト信号ＳＣＡＮ＿ＤＡＴＡは、前記マルチプレクサ５４、保存セル５７、マルチプレクサ５５、保存セル５８、マルチプレクサ５６、及び保存セル５９の順に移動する。このように、テスト信号ＳＣＡＮ＿ＤＡＴＡがスキャンチェーンのあらゆる構成要素を通過するまでかかる時間は、テスト時間を延ばす大きい要因となる。したがって、従来のＡＴＥによるスキャンテスト方式によれば、テスト時間が延びる。また、従来のＡＴＥによるスキャンテスト方式は、ＳＯＣが実際に動作する時の速度でテストを行い難いので、ＳＯＣの動作タイミングと関連した欠陥の検出面で脆弱である。また、ＡＴＥによるスキャンテスト方式は、ボードに実装される以前段階のＳＯＣについてのテストのみ可能であるので、ＳＯＣが特定システムに適用されてボードに実装された後には、ＳＯＣのテストが難しいという問題点があった。
【特許文献１】米国特許第４，７６３，０６６号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、ＳＯＣの動作速度でテストを行い、テスト時間を短縮させ、ＳＯＣがボードに実装された後にもテストを行える内蔵型セルフテスト回路を有するＳＯＣを提供するところにある。
本発明が解決しようとする課題は、ＳＯＣの動作速度でテストを行い、テスト時間を短縮させ、ＳＯＣがボードに実装された後にもテストを行える内蔵型セルフテスト回路を有するＳＯＣのセルフテスト方法を提供するところにある。
【課題を解決するための手段】
【０００７】
前記課題を解決するための本発明の一実施例による内蔵型セルフテスト回路を有するＳＯＣは、ＢＩＳＴ（Ｂｕｉｌｔ−Ｉｎ−Ｓｅｌｆ−Ｔｅｓｔ）ロジック回路を含むＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ Ｐｒｏｐｅｒｔｙ）ブロックと、ＢＩＳＴコントロール部とを備えることを特徴とする。ＢＩＳＴロジック回路は、システムバスを介して受信される制御データに応答してノーマルモードまたはテストモードで動作し、テストモードでテスト結果データを出力する。ＢＩＳＴコントロール部は、テストモードで、システムバスを介してＢＩＳＴロジック回路に制御データ、コマンド信号、テストパターンデータ、及びテストアドレス信号を伝送してＩＰブロックをテストし、システムバスを介して受信されるテスト結果データを圧縮して保存する。
【０００８】
前記課題を解決するための本発明の一実施例による内蔵型セルフテスト回路を有するＳＯＣのセルフテスト方法は、セルフテスト機能を有するＳＯＣのセルフテスト方法において、（ａ）ＢＩＳＴコントロール部がＢＩＳＴロジック回路を介して、第１組み合わせ回路にテストパターンデータを順次に入力させる段階と、（ｂ）第２組み合わせ回路から出力されるテスト結果データを前記ＢＩＳＴロジック回路内の保存セルに同時に保存させる段階と、（ｃ）前記保存セルに保存された前記テスト結果データを順次に読み取る段階と、（ｄ）読み取られた前記テスト結果データを圧縮して保存する段階と、を含むことを特徴とする。
【発明の効果】
【０００９】
本発明の内蔵型セルフテスト回路を有するＳＯＣ及びそのセルフテスト方法は、ノーマルモードでの信号パスをテストモードで使用するので、ＳＯＣの動作速度でテストを行え、テスト時間を短縮させることができる。
また、本発明の内蔵型セルフテスト回路を有するＳＯＣ及びそのセルフテスト方法は、ノーマルモードと同一にシステムバスに基づいてテストを行うので、ＳＯＣがボードに実装された後にもテストを行える。
【発明を実施するための最良の形態】
【００１０】
本発明と、本発明の動作上の利点及び本発明の実施によって達成される目的を十分に理解するためには、本発明の望ましい実施例を例示する添付図面及び添付図面に記載された内容を参照せねばならない。
以下、添付された図面を参照して本発明の望ましい実施例を説明することにより、本発明を詳細に説明する。各図面に付された同一参照符号は同一部材を示す。
【００１１】
図３は、本発明による内蔵型セルフテスト回路を有するＳＯＣ １００を示すブロック図である。図３を参照すると、ＳＯＣ １００は、ＢＩＳＴコントロール部１２０、ＩＰブロック１３０〜１６０、及びバスマスタ１７０を含む。説明の便宜上、図３で本発明と関連していない部分については図示を省略する。
【００１２】
ＢＩＳＴコントロール部１２０とＩＰブロック１３０〜１６０とは、システムバス１１０に連結され、システムバス１１０を介して相互通信する。ＢＩＳＴコントロール部１２０は、シーケンス発生器１２１、アドレス発生器１２２、パターン生成部１２３、及び結果圧縮部１２４を含む。シーケンス発生器１２１、アドレス発生器１２２、パターン生成部１２３、及び結果圧縮部１２４には、クロック信号ＣＬＫが入力される。ＳＯＣ １００がテストモードである時、シーケンス発生器１２１は、書き込みコマンド信号ＷＲＩＴＥまたは読み取りコマンド信号ＲＥＡＤを発生させて、システムバス１１０に出力する。また、シーケンス発生器１２１は、シーケンス制御信号ＣＴＬ１〜ＣＴＬ３を発生させて、アドレス発生器１２２、パターン生成部１２３、及び結果圧縮部１２４にそれぞれ出力する。
【００１３】
アドレス発生器１２２は、シーケンス制御信号ＣＴＬ１に応答して、テストアドレス信号ＴＡ０〜ＴＡＫ（Ｋは整数）を発生させてシステムバス１１０に出力する。パターン生成部１２３は、シーケンス制御信号ＣＴＬ２に応答して、制御データＣＲＤＡＴとテストパターンデータＴＰ１〜ＴＰＫ（Ｋは整数）とを生成して、システムバス１１０に出力する。結果圧縮部１２４は、シーケンス制御信号ＣＴＬ３に応答して、システムバス１１０を介してＩＰブロック１３０〜１６０からテスト結果データＴＲＤＡＴを受信する。テスト結果データＴＲＤＡＴは、第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ（Ｋは整数、図４参考）と、第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪ（Ｊは整数、図４参考）とを含む。
【００１４】
結果圧縮部１２４は、受信されたテスト結果データＴＲＤＡＴを圧縮して保存する。ここで、結果圧縮部１２４に保存されるテスト結果データＴＲＤＡＴの圧縮結果は、テストされるＳＯＣ １００の不良如何によって変えることができる。即ち、予定された値の順に結果圧縮部１２４に入力される場合、テスト結果データＴＲＤＡＴの圧縮結果と、ＳＯＣ １００内に含まれるＩＰブロック１３０〜１６０のうちいずれか一つまたはその他の部分での不良により、予定された値と異なる順序で結果圧縮部１２４に入力される場合、テスト結果データＴＲＤＡＴの圧縮結果とは異なる。したがって、結果圧縮部１２４に保存されたテスト結果データＴＲＤＡＴについての最終圧縮結果と、設定された値とを比較することによって、テスト過程でＳＯＣの不良検出如何を確認できる。
【００１５】
また、図３には示さなかったが、結果圧縮部１２４に圧縮されて保存されたテスト結果情報は、外部の制御装置により読み取ることによって、ユーザがＳＯＣ １００の不良如何を確認できる。これについての具体的な説明は、当業者であれば理解できるので省略する。
ＩＰブロック１３０〜１６０は、ＢＩＳＴロジック回路１３１〜１６１をそれぞれ含む。図３において、ＢＩＳＴロジック回路１３１〜１６１はそれぞれ一つのブロックで示されているが、ブロック１３０〜１６０のそれぞれは、複数のＢＩＳＴロジック回路が含まれたものである。
【００１６】
バスマスタ１７０は、ＳＯＣ １００がノーマルモードである時、ＩＰブロック１３０〜１６０のノーマル動作に必要なコマンド信号ＣＭＤ、アドレス信号ＮＡ０〜ＮＡＫ（Ｋは整数）、制御データＣＲＤＡＴ、及びノーマルデータＮＤＡＴ１〜ＮＤＡＴＫ（Ｋは整数）を出力する。
【００１７】
図４は、図３に示されたＳＯＣ １００に含まれるＩＰブロック１３０の内部構成を示す図である。ＩＰブロック１４０〜１６０の内部構成及び具体的な動作は、ＩＰブロック１３０と類似している。したがって、本実施例では、ＩＰブロック１３０のセルフテスト動作を中心に説明する。
【００１８】
図４を参照すると、ＩＰブロック１３０は、ＢＩＳＴロジック回路１３１ａ、１３１ｂと組み合わせ回路１３２ａ〜１３２ｃとを含む。ＩＰブロック１３０は、追加のＢＩＳＴロジック回路と追加の組み合わせ回路とをさらに含むが、追加のＢＩＳＴロジック回路と組み合わせ回路は、図面の簡略化のために省略される。ＢＩＳＴロジック回路１３１ａ、１３１ｂと組み合わせ回路１３２ａ〜１３２ｃとは、一つずつ交互に配置され、ＢＩＳＴロジック回路１３１ａ、１３１ｂは、システムバス１１０に連結される。ＢＩＳＴロジック回路１３１ａ、１３１ｂは、システムバス１１０を介して書き込みコマンド信号ＷＲＩＴＥまたは読み取りコマンド信号ＲＥＡＤ、テストアドレス信号ＴＡ０〜ＴＡＫ、及びテストパターンデータＴＰ１〜ＴＰＫを受信する。
【００１９】
ＢＩＳＴロジック回路１３１ａ、１３１ｂは、書き込みコマンド信号ＷＲＩＴＥとテストアドレス信号ＴＡ０〜ＴＡＫとに応答して、テストパターンデータＴＰ１〜ＴＰＫを保存し、保存されたテストパターンデータＴＰ１〜ＴＰＫを組み合わせ回路１３２ｂ、１３２ｃにそれぞれ出力する。また、ＢＩＳＴロジック回路１３１ａ、１３１ｂは、読み取りコマンド信号ＲＥＡＤとテストアドレス信号ＴＡ０〜ＴＡＫとに応答して、組み合わせ回路１３２ａ、１３２ｂから受信されるテスト結果データＴＲＤＡＴをシステムバス１１０に出力する。
【００２０】
ＢＩＳＴロジック回路１３１ａ、１３１ｂは、ＳＯＣ １００のテストモードだけでなくノーマルモードでも動作する。例えば、ＳＯＣ １００のノーマルモードで、ＢＩＳＴロジック回路１３１ｂは、組み合わせ回路１３２ｂから受信されるノーマル動作と関連した信号（図示せず）を組み合わせ回路１３２ｃへ伝送する。ＳＯＣ １００のテストモードで、ＢＩＳＴロジック回路１３１ｂは、テストパターンデータＴＰ１〜ＴＰＫを組み合わせ回路１３２ｃへ伝送するか、または組み合わせ回路１３２ｂから受信されるテスト結果データＴＲＤＡＴをシステムバス１１０に出力する。
【００２１】
図５は、図４に示すＢＩＳＴロジック回路１３１ｂと組み合わせ回路１３２ｂ、１３２ｃとをさらに詳細に示す図である。ＢＩＳＴロジック回路１３１ａ（図４参考）の構成及び具体的な動作は、ＢＩＳＴロジック回路１３１ｂと類似している。図５を参照すると、ＢＩＳＴロジック回路１３１ｂは、バスインターフェース装置２１０、第１選択回路ＦＳ１〜ＦＳＫ（Ｋは整数）、第１保存セルＦＣ１〜ＦＣＫ（Ｋは整数）、第２選択回路ＳＳ１〜ＳＳＪ（Ｊは整数）、第２保存セルＳＣ１〜ＳＣＪ（Ｊは整数）、制御レジスタ２２０、及び出力選択回路２３０を含む。
【００２２】
バスインターフェース装置２１０と出力選択回路２３０とは、システムバス１１０に連結される。第１選択回路ＦＳ１〜ＦＳＫ、第２選択回路ＳＳ１〜ＳＳＪ、及び制御レジスタ２２０は、データパスライン２４０を介してシステムバス１１０に連結される。
【００２３】
ＳＯＣ １００のテストモードで、バスインターフェース装置２１０は、システムバス１１０を介してＢＩＳＴコントロール部１２０から書き込みコマンド信号ＷＲＩＴＥまたは読み取りコマンド信号ＲＥＡＤ、テストアドレス信号ＴＡ０〜ＴＡＫを受信する。バスインターフェース装置２１０は、書き込みコマンド信号ＷＲＩＴＥとテストアドレス信号ＴＡ０とに応答して、レジスタ制御信号Ｗ＿ｅｎ０を制御レジスタ２２０に出力する。
【００２４】
また、バスインターフェース装置２１０は、制御レジスタ２２０からテスト制御信号ＴＭＲＥＧ２〜ＴＭＲＥＧ０を受信する。バスインターフェース装置２１０は、テスト制御信号ＴＭＲＥＧ０を第１及び第２選択回路ＦＳ１〜ＦＳＫ、ＳＳ１〜ＳＳＪに出力する。テスト制御信号ＴＭＲＥＧ０に応答して、バスインターフェース装置２１０と第１及び第２選択回路ＦＳ１〜ＦＳＫ、ＳＳ１〜ＳＳＪは、ノーマルモードまたはテストモードで動作する。即ち、バスインターフェース装置２１０と第１及び第２選択回路ＦＳ１〜ＦＳＫ、ＳＳ１〜ＳＳＪは、テスト制御信号ＴＭＲＥＧ０がディセーブルされる時にノーマルモードで動作し、テスト制御信号ＴＭＲＥＧ０がイネーブルされる時にテストモードで動作する。
【００２５】
テストモードで、バスインターフェース装置２１０は、書き込みコマンド信号ＷＲＩＴＥ、テストアドレス信号ＴＡ１〜ＴＡＫ、及びテスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ１に応答して、第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫ（Ｋは整数）と第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪ（Ｊは整数）とを出力する。これをさらに詳細に説明すれば、バスインターフェース装置２１０は、テスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ１がディセーブルされる時、テストアドレス信号ＴＡ１〜ＴＡＫに応答して第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫを出力する。バスインターフェース装置２１０は、テスト制御信号ＴＭＲＥＧ１がディセーブルされ、テスト制御信号ＴＭＲＥＧ２がイネーブルされる時、テストアドレス信号ＴＡ１〜ＴＡＫに応答して第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪを出力する。第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪの数が、テストアドレス信号ＴＡ１〜ＴＡＫの数より小さい時、バスインターフェース装置２１０は、テストアドレス信号ＴＡ１〜ＴＡＪに応答して第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪを出力する。
【００２６】
また、バスインターフェース装置２１０は、テスト制御信号ＴＭＲＥＧ１に応答して第３選択制御信号ＴＬＥＮを出力する。さらに詳しくは、テスト制御信号ＴＭＲＥＧ１がイネーブルされる時、バスインターフェース装置２１０が第３選択制御信号ＴＬＥＮをイネーブルさせ、テスト制御信号ＴＭＲＥＧ１がディセーブルされる時、バスインターフェース装置２１０が第３選択制御信号ＴＬＥＮをディセーブルさせる。バスインターフェース装置２１０は、テストアドレス信号ＴＡ０〜ＴＡＫを出力選択回路２３０に出力する。また、バスインターフェース装置２１０は、読み取りコマンド信号ＲＥＡＤに応答してテスト制御信号ＴＭＲＥＧ２を出力選択回路２３０に出力する。
【００２７】
一方、ノーマルモードである時のバスインターフェース装置２１０の動作は、テストモードである時の動作と２つの相違点を除いて同一である。第１の相違点は、図３で参照されるように、バスインターフェース装置２１０がＢＩＳＴコントロール部１２０の代わりに、バスマスタ１７０からコマンド信号ＣＭＤとアドレス信号ＮＡ０〜ＮＡＫとを受信することである。したがって、バスインターフェース装置２１０は、コマンド信号ＣＭＤとアドレス信号ＮＡ０〜ＮＡＫとに応答して、レジスタ制御信号Ｗ＿ｅｎ０と第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫとを発生させる。
【００２８】
第２の相違点は、バスインターフェース装置２１０が第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪを発生させないことである。その結果、第２選択回路ＳＳ１〜ＳＳＪは、組み合わせ回路１３２ｂから受信されるノーマル動作関連信号（図示せず）を第２保存セルＳＣ１〜ＳＣＪに出力する動作のみを行う。即ち、ノーマルモードでバスマスタ１７０は、システムバス１１０を介して第２選択回路ＳＳ１〜ＳＳＪに連結された第２保存セルＳＣ１〜ＳＣＪにデータを書き込むか、または第２保存セルＳＣ１〜ＳＣＪからデータを読み取ることができない。
【００２９】
第１選択回路ＦＳ１〜ＦＳＫは、組み合わせ回路１３２ｂと第１保存セルＦＣ１〜ＦＣＫとの間に連結され、データパスライン２４０を介してシステムバス１１０にさらに連結される。
【００３０】
ノーマルモードで、即ち、テスト制御信号ＴＭＲＥＧ０がディセーブルされる時、第１選択回路ＦＳ１〜ＦＳＫは、第１ノーマル選択信号ＦＬＥＮ１〜ＦＬＥＮＫ（Ｋは整数）と、第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫとに応答して動作する。ここで、第１ノーマル選択信号ＦＬＥＮ１〜ＦＬＥＮＫは、組み合わせ回路１３２ｂにより発生する。第１選択回路ＦＳ１〜ＦＳＫは、組み合わせ回路１３２ｂから受信されるノーマル動作と関連した信号（図示せず）と、データパスライン２４０を介して受信されるノーマルデータＮＤＡＴ１〜ＮＤＡＴＫのうちいずれか一つを第１保存セルＦＣ１〜ＦＣＫに出力する。さらに詳しくは、第１ノーマル選択信号ＦＬＥＮ１〜ＦＬＥＮＫがイネーブルされる時、第１選択回路ＦＳ１〜ＦＳＫが、ノーマル動作と関連した信号を第１保存セルＦＣ１〜ＦＣＫに出力する。また、第１ノーマル選択信号ＦＬＥＮ１〜ＦＬＥＮＫがディセーブルされる時、第１選択回路ＦＳ１〜ＦＳＫが、ノーマルデータＮＤＡＴ１〜ＮＤＡＴＫを第１保存セルＦＣ１〜ＦＣＫに出力する。
【００３１】
テストモードで、即ち、テスト制御信号ＴＭＲＥＧ０がイネーブルされる時、第１選択回路ＦＳ１〜ＦＳＫは、第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫ、テスト制御信号ＴＭＲＥＧ０、及び第３選択制御信号ＴＬＥＮに応答して動作する。第１選択回路ＦＳ１〜ＦＳＫは、データパスライン２４０を介して受信されるテストパターンデータＴＰ１〜ＴＰＫを第１保存セルＦＣ１〜ＦＣＫに出力する。また、第１選択回路ＦＳ１〜ＦＳＫは、組み合わせ回路１３２ｂから受信される第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを第１保存セルＦＣ１〜ＦＣＫに出力する。
【００３２】
第１選択回路ＦＳ１〜ＦＳＫのそれぞれは、マルチプレクサＭ１１〜Ｍ１３を含む。第１選択回路ＦＳ１〜ＦＳＫの構成及び具体的な動作は、実質的に同一であるので、第１選択回路ＦＳ１を中心に説明する。第１選択回路ＦＳ１でマルチプレクサＭ１１は、テスト制御信号ＴＭＲＥＧ０に応答して、第１ノーマル選択信号ＦＬＥＮ１と第３選択制御信号ＴＬＥＮのうちいずれか一つをマルチプレクサＭ１２に出力する。さらに詳しくは、テスト制御信号ＴＭＲＥＧ０がディセーブルされる時、マルチプレクサＭ１１が第１ノーマル選択信号ＦＬＥＮ１を出力する。また、テスト制御信号ＴＭＲＥＧ０がイネーブルされる時、マルチプレクサＭ１１が第３選択制御信号ＴＬＥＮを出力する。マルチプレクサＭ１２は、マルチプレクサＭ１１の出力信号に応答して、第１保存セルＦＣ１の出力信号と組み合わせ回路１３２ｂの出力信号のうちいずれか一つを出力する。さらに詳しくは、マルチプレクサＭ１１の出力信号がディセーブルされる時、マルチプレクサＭ１２が第１保存セルＦＣ１の出力信号をマルチプレクサＭ１３に出力する。また、マルチプレクサＭ１１の出力信号がイネーブルされる時、マルチプレクサＭ１２が組み合わせ回路１３２ｂの出力信号をマルチプレクサＭ１３に出力する。マルチプレクサＭ１３は、第１選択制御信号ＦＳ＿ｅｎ１に応答して、マルチプレクサＭ１２の出力信号と前記テストパターンデータＴＰ１（または前記ノーマルデータＮＤＡＴ１）のうちいずれか一つを第１保存セルＦＣ１に出力する。さらに詳しくは、第１選択制御信号ＦＳ＿ｅｎ１がディセーブルされる時、マルチプレクサＭ１３がマルチプレクサＭ１２の出力信号を第１保存セルＦＣ１に出力する。また、第１選択制御信号ＦＳ＿ｅｎ１がイネーブルされる時、マルチプレクサＭ１３がテストパターンデータＴＰ１（または前記ノーマルデータＮＤＡＴ１）を第１保存セルＦＣ１に出力する。
【００３３】
第２選択回路ＳＳ１〜ＳＳＪは、組み合わせ回路１３２ｂと第２保存セルＳＣ１〜ＳＣＪとの間に連結され、データパスライン２４０を介してシステムバス１１０にさらに連結される。
ノーマルモードで、第２選択回路ＳＳ１〜ＳＳＪは、第２ノーマル選択信号ＳＬＥＮ１〜ＳＬＥＮＪに応答して、組み合わせ回路１３２ｂから受信されるノーマル動作関連信号を第２保存セルＳＣ１〜ＳＣＪに出力する。ここで、第２ノーマル選択信号ＳＬＥＮ１〜ＳＬＥＮＪは、組み合わせ回路１３２ｂにより発生する。
【００３４】
テストモードで、第２選択回路ＳＳ１〜ＳＳＪは、第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪ、テスト制御信号ＴＭＲＥＧ０、及び第３選択制御信号ＴＬＥＮに応答して動作する。第２選択回路ＳＳ１〜ＳＳＪは、データパスライン２４０を介して受信されるテストパターンデータＴＰ１〜ＴＰＪを第２保存セルＳＣ１〜ＳＣＪに出力する。また、第２選択回路ＳＳ１〜ＳＳＪは、組み合わせ回路１３２ｂから受信される第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを第２保存セルＳＣ１〜ＳＣＪに出力する。
【００３５】
第２選択回路ＳＳ１〜ＳＳＪのそれぞれは、マルチプレクサＭ２１〜Ｍ２３を含む。第２選択回路ＳＳ１〜ＳＳＪの構成及び具体的な動作は、実質的に同一であるので、第２選択回路ＳＳ１を中心に説明する。第２選択回路ＳＳ１でマルチプレクサＭ２１は、テスト制御信号ＴＭＲＥＧ０に応答して、第２ノーマル選択信号ＳＬＥＮ１と第３選択制御信号ＴＬＥＮのうちいずれか一つをマルチプレクサＭ２２に出力する。さらに詳しくは、テスト制御信号ＴＭＲＥＧ０がディセーブルされる時、マルチプレクサＭ２１が第２ノーマル選択信号ＳＬＥＮ１を出力する。また、テスト制御信号ＴＭＲＥＧ０がイネーブルされる時、マルチプレクサＭ２１が第３選択制御信号ＴＬＥＮを出力する。マルチプレクサＭ２２は、マルチプレクサＭ２１の出力信号に応答して、第２保存セルＳＣ１の出力信号と組み合わせ回路１３２ｂの出力信号のうちいずれか一つを出力する。さらに詳しくは、マルチプレクサＭ２１の出力信号がディセーブルされる時、マルチプレクサＭ２２が第２保存セルＳＣ１の出力信号をマルチプレクサＭ２３に出力する。また、マルチプレクサＭ２１の出力信号がイネーブルされる時、マルチプレクサＭ２２が組み合わせ回路１３２ｂの出力信号をマルチプレクサＭ２３に出力する。マルチプレクサＭ２３は、第２選択制御信号ＳＳ＿ｅｎ１に応答して、マルチプレクサＭ２２の出力信号とテストパターンデータＴＰ１（またはノーマルデータＮＤＡＴ１）のうちいずれか一つを第２保存セルＳＣ１に出力する。さらに詳しくは、第２選択制御信号ＳＳ＿ｅｎ１がディセーブルされる時、マルチプレクサＭ２３が、マルチプレクサＭ２２の出力信号を第２保存セルＳＣ１に出力する。また、第２選択制御信号ＳＳ＿ｅｎ１がイネーブルされる時、マルチプレクサＭ２３が、テストパターンデータＴＰ１（またはノーマルデータＮＤＡＴ１）を第２保存セルＳＣ１に出力する。
【００３６】
第１保存セルＦＣ１〜ＦＣＫは、第１選択回路ＦＳ１〜ＦＳＫの出力信号を保存し、保存された信号を組み合わせ回路１３２ｃに出力する。第２保存セルＳＣ１〜ＳＣＫも、第２選択回路ＳＳ１〜ＳＳＪの出力信号を保存し、保存された信号を組み合わせ回路１３２ｃに出力する。
【００３７】
制御レジスタ２２０は、レジスタ制御信号Ｗ＿ｅｎ０に応答して、データパスライン２４０を介して受信される制御データＣＲＤＡＴを保存し、保存された制御データＣＲＤＡＴのビット値に基づいて、テスト制御信号ＴＭＲＥＧ２〜ＴＭＲＥＧ０を出力する。これをさらに詳細に説明すれば、制御データＣＲＤＡＴの最上位ビットをビット−２、中間ビットをビット−１、最下位ビットをビット−０と仮定する。制御レジスタ２２０は、ビット−２の値によってテスト制御信号ＴＭＲＥＧ２をイネーブルさせるか、またはディセーブルさせる。例えば、制御レジスタ２２０は、ビット−２の値が“１”である時、テスト制御信号ＴＭＲＥＧ２をイネーブルさせ、ビット−２の値が“０”である時、テスト制御信号ＴＭＲＥＧ２をディセーブルさせる。これと同様に、制御レジスタ２２０は、ビット−１、ビット−０の値によってテスト制御信号ＴＭＲＥＧ１、ＴＭＲＥＧ０をそれぞれイネーブルさせるか、またはディセーブルさせる。
【００３８】
ノーマルモードで、出力選択回路２３０は、バスインターフェース装置２１０から受信されるテスト制御信号ＴＭＲＥＧ２とノーマルアドレス信号ＮＡ０〜ＮＡＫとに応答して動作する。出力選択回路２３０は、第１保存セルＦＣ１〜ＦＣＫから受信されるノーマル動作関連信号を順次に選択して、ノーマルデータＮＲＤＡＴとしてシステムバス１１０に出力する。テストモードで、出力選択回路２３０は、第１及び第２保存セルＦＣ１〜ＦＣＫ、ＳＣ１〜ＳＣＪから第１及び第２テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ、ＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを受信する。出力選択回路２３０は、バスインターフェース装置２１０から受信されるテスト制御信号ＴＭＲＥＧ２とテストアドレス信号ＴＡ０〜ＴＡＫとに応答して、テスト結果データＴＲＤＡＴをシステムバス１１０に出力する。この時、テスト結果データＴＲＤＡＴは、第１及び第２テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ、ＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを含む。
【００３９】
出力選択回路２３０は、マルチプレクサ２３１〜２３３を含む。マルチプレクサ２３１は、テストアドレス信号ＴＡ０〜ＴＡＫ（または前記ノーマルアドレス信号ＮＡ０〜ＮＡＫ）に応答して、第１保存セルＦＣ１〜ＦＣＫの出力信号を順次に選択して出力する。マルチプレクサ２３２は、テストアドレス信号ＴＡ０〜ＴＡＫ（またはノーマルアドレス信号ＮＡ０〜ＮＡＫ）に応答して、第２保存セルＳＣ１〜ＳＣＪの出力信号を順次に選択して出力する。マルチプレクサ２３３は、テスト制御信号ＴＭＲＥＧ２に応答して、マルチプレクサ２３１、２３２のうちいずれか一つの出力信号をテスト結果データＴＲＤＡＴ（またはノーマルデータＮＲＤＡＴ）として出力する。さらに詳しくは、テスト制御信号ＴＭＲＥＧ２がディセーブルされる時、マルチプレクサ２３３が、マルチプレクサ２３１の出力信号をテスト結果データＴＲＤＡＴ（または前記ノーマルデータＮＲＤＡＴ）としてシステムバス１１０に出力する。また、テスト制御信号ＴＭＲＥＧ２がイネーブルされる時、マルチプレクサ２３３が、マルチプレクサ２３２の出力信号をテスト結果データＴＲＤＡＴ（またはノーマルデータＮＲＤＡＴ）としてシステムバス１１０に出力する。
【００４０】
次に、上記のように構成されたＳＯＣ １００のセルフテスト動作過程を説明する。ここで、ＳＯＣ １００のセルフテスト動作過程は、ＩＰブロック１３０のセルフテスト過程を中心に説明する。図６は、本発明によるＳＯＣのセルフテスト過程を示すフローチャートである。図６を参照すると、ＢＩＳＴコントロール部１２０がＩＰブロック１３０のＢＩＳＴロジック回路１３１を介して、テストパターンデータＴＰ１〜ＴＰＫ、ＴＰ１〜ＴＰＪを組み合わせ回路１３２ｃに順次に入力させる（１１００）。段階１１００は、図７を参照して、さらに詳細に後述される。ＢＩＳＴコントロール部１２０は、ＢＩＳＴロジック回路１３１を制御して、組み合わせ回路１３２ｂから出力される第１及び第２テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ、ＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを同時に、第１及び第２保存セルＦＣ１〜ＦＣＫ、ＳＣ１〜ＳＣＪに保存させる（１２００）。ここで、組み合わせ回路１３２ｂには、ＢＩＳＴロジック回路１３１ａ（図４参考）によりテストパターンデータＴＰ１〜ＴＰＫ、ＴＰ１〜ＴＰＪが入力された状態である。したがって、組み合わせ回路１３２ｂがテストパターンデータＴＰ１〜ＴＰＫ、ＴＰ１〜ＴＰＪに応答して、第１及び第２テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ、ＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを出力する。
【００４１】
次いで、ＢＩＳＴコントロール部１２０は、第１及び第２保存セルＦＣ１〜ＦＣＫ、ＳＣ１〜ＳＣＪに保存された第１及び第２テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ、ＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを順次に読み取る（１３００）。段階１３００は、図８を参照して、さらに詳細に後述される。ＢＩＳＴコントロール部１２０の結果圧縮部１２４は、読み取られた第１及び第２テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫ、ＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを圧縮して保存する（１４００）。次いで、ＢＩＳＴコントロール部１２０のシーケンス発生器１２１は、追加のテストパターンデータが存在するか否かを判断する（１５００）。ここで、ＢＩＳＴコントロール部１２０は、テストの種類によって前記ＩＰブロック１３０を数回テストできる。即ち、段階１１００〜１４００が一度行われる時、ＩＰブロック１３０の一種類のテストが終了される。段階１５００において、追加のテストパターンデータが存在する時、ＢＩＳＴコントロール部１２０は他の種類のテストが存在すると判断する。
【００４２】
段階１５００において、追加のテストパターンデータが存在する時、段階１１００にリターンする。次いで、パターン生成部１２３がＩＰブロック１３０をテストするためのテストパターンデータをいずれも発生させるまで（即ち、ＩＰブロック１３０についてのあらゆる種類のテストが完了するまで）、上述した過程が反復的に行われる。また、段階１５００で追加のテストパターンデータが存在していない時、ルーチン１０００が終了される。
【００４３】
次に、図７と図９とを参照して、段階１１００をさらに詳細に説明する。図７は、図６に示されたサブルーチン１１００を詳細に示すフローチャートであり、図９は、図５に示されたＢＩＳＴロジック回路１３１ｂでセルフテスト過程の間に発生する主要信号のタイミング図である。図７を参照すると、まず、ＢＩＳＴコントロール部１２０は、ＢＩＳＴロジック回路１３１ｂの制御レジスタ２２０に第１設定値を有する制御データＣＲＤＡＴを書き込む（１１０１）。
【００４４】
これをさらに詳細に説明すれば、まず、シーケンス発生器１２１がクロック信号ＣＬＫに同期して、書き込みコマンド信号ＷＲＩＴＥをシステムバス１１０に出力し、シーケンス制御信号ＣＴＬ１、ＣＴＬ２を発生させる。アドレス発生器１２２は、クロック信号ＣＬＫとシーケンス制御信号ＣＴＬ１とに応答して、テストアドレス信号ＴＡ０〜ＴＡＫを発生させてシステムバス１１０に出力する。パターン生成部１２３は、クロック信号ＣＬＫとシーケンス制御信号ＣＴＬ２とに応答して、制御データＣＲＤＡＴとテストパターンデータＴＰ１〜ＴＰＫとを発生させてシステムバス１１０に出力する。ＢＩＳＴロジック回路１３１ｂのバスインターフェース装置２１０は、書き込みコマンド信号ＷＲＩＴＥとテストアドレス信号ＴＡ０とに応答して、レジスタ制御信号Ｗ＿ｅｎ０をイネーブルさせる。制御レジスタ２２０は、レジスタ制御信号Ｗ＿ｅｎ０に応答して制御データＣＲＤＡＴを保存する。この時、制御データＣＲＤＡＴは、図９で参照するように、“００１”のビット値を有する。制御レジスタ２２０は、制御データＣＲＤＡＴのビット値に基づいてテスト制御信号ＴＭＲＥＧ２〜ＴＭＲＥＧ０を出力する。即ち、制御レジスタ２２０は、テスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ１をディセーブルさせ、テスト制御信号ＴＭＲＥＧ０をイネーブルさせる。
【００４５】
次いで、バスインターフェース装置２１０は、書き込みコマンド信号ＷＲＩＴＥ、テスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ１、及びテストアドレス信号ＴＡ１〜ＴＡＫに応答して、第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫを発生させる。この時、バスインターフェース装置２１０は、第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫを順次にイネーブルさせて出力する。第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫに応答して、第１選択回路ＦＳ１〜ＦＳＫのマルチプレクサＭ１３が、テストパターンデータＴＰ１〜ＴＰＫを順次に選択して出力する。その結果、第１保存セルＦＣ１〜ＦＣＫにテストパターンデータＴＰ１〜ＴＰＫが順次に書き込まれる（１１０２）。
【００４６】
次に、テストパターンデータＴＰ１〜ＴＰＫが書き込まれる第１保存セルＦＣ１〜ＦＣＫが残っているか否かが判断される（１１０３）。段階１１０３において、テストパターンデータＴＰ１〜ＴＰＫが書き込まれる第１保存セルＦＣ１〜ＦＣＫが残っている場合、段階１１０２にリターンする。また、段階１１０３において、第１保存セルＦＣ１〜ＦＣＫにテストパターンデータＴＰ１〜ＴＰＫがいずれも書き込まれた場合、制御レジスタ２２０に第２設定値を有する制御データＣＲＤＡＴが書き込まれる（１１０４）。ここで、制御レジスタ２２０に、第２設定値を有する制御データＣＲＤＡＴが書き込まれる過程は、制御レジスタ２２０に第１設定値を有する制御データＣＲＤＡＴが書き込まれる過程と同一である。この時、制御データＣＲＤＡＴは、図９で参照するように、“１０１”のビット値を有する。制御レジスタ２２０は、制御データＣＲＤＡＴのビット値に基づいてテスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ０をイネーブルさせ、テスト制御信号ＴＭＲＥＧ１をディセーブルさせて出力する。段階１１０４が行われる間、シーケンス発生器１２１は、書き込みコマンド信号ＷＲＩＴＥをシステムバス１１０に出力し、シーケンス制御信号ＣＴＬ１、ＣＴＬ２を発生させる。アドレス発生器１２２は、クロック信号ＣＬＫとシーケンス制御信号ＣＴＬ１とに応答して、テストアドレス信号ＴＡ１〜ＴＡＫを発生させてシステムバス１１０に出力する。パターン生成部１２３は、クロック信号ＣＬＫとシーケンス制御信号ＣＴＬ２とに応答して、テストパターンデータＴＰ１〜ＴＰＫを発生させてシステムバス１１０に出力する。
【００４７】
テスト制御信号ＴＭＲＥＧ２がイネーブルされた状態であるので、バスインターフェース装置２１０は、テストアドレス信号ＴＡ１〜ＴＡ（Ｊ−１）に応答して第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎ（Ｊ−１）を発生させる。この時、バスインターフェース装置２１０は、第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎ（Ｊ−１）を順次にイネーブルさせて出力する。第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎ（Ｊ−１）に応答して、第２選択回路ＳＳ１〜ＳＳ（Ｊ−１）のマルチプレクサＭ２３がテストパターンデータＴＰ１〜ＴＰ（Ｊ−１）を順次に選択して出力する。その結果、第２保存セルＳＣ１〜ＳＣ（Ｊ−１）にテストパターンデータＴＰ１〜ＴＰ（Ｊ−１）が順次に書き込まれる（１１０５）。
【００４８】
この時、シーケンス発生器１２１は、前記クロック信号ＣＬＫに応答して、テストパターンデータＴＰＪが第２保存セルＳＣＪに書き込まれる順番であるか否かを判断する（１１０６）。段階１１０６において、テストパターンデータＴＰＪが第２保存セルＳＣＪに書き込まれる順番である時、ＢＩＳＴコントロール部１２０は、制御レジスタ２２０に第３設定値を有する制御データＣＲＤＡＴを書き込む（１１０７）。ここで、制御レジスタ２２０に第３設定値を有する制御データＣＲＤＡＴが書き込まれる過程は、制御レジスタ２２０に第１設定値を有する制御データＣＲＤＡＴが書き込まれる過程と同一である。この時、制御データＣＲＤＡＴは、図９で参照するように、“１１１”のビット値を有する。制御レジスタ２２０は、制御データＣＲＤＡＴのビット値に基づいて、テスト制御信号ＴＭＲＥＧ２〜ＴＭＲＥＧ０をいずれもイネーブルさせて出力する。次いで、バスインターフェース装置２１０は、テストアドレス信号ＴＡＪに応答して、第２選択制御信号ＳＳ＿ｅｎＪをイネーブルさせて出力する。第２選択制御信号ＳＳ＿ｅｎＪに応答して、第２選択回路ＳＳＪのマルチプレクサＭ２３がテストパターンデータＴＰＪを選択して出力する。その結果、第２保存セルＳＣＪにテストパターンデータＴＰＪが書き込まれる（１１０８）。次いで、サブルーチン１１００は終了される。一方、段階１１０８が行われる間、テスト制御信号ＴＭＲＥＧ１がイネーブル状態であるので、バスインターフェース装置２１０は、図９に示されたように、第３選択制御信号ＴＬＥＮを所定時間の間にイネーブルさせた後、ディセーブルさせる。ここで、テスト制御信号ＴＭＲＥＧ０がイネーブル状態であるので、第１選択回路ＦＳ１〜ＦＳＫのそれぞれのマルチプレクサＭ１１と、第２選択回路ＳＳ１〜ＳＳＪのそれぞれのマルチプレクサＭ２１とは、第３選択制御信号ＴＬＥＮを選択して出力する。その結果、第１選択回路ＦＳ１〜ＦＳＫのマルチプレクサＭ１２ｓは、第３選択制御信号ＴＬＥＮに応答して、組み合わせ回路１３２ｂから受信される第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを出力する。また、第２選択回路ＳＳ１〜ＳＳＪのマルチプレクサＭ２２ｓは、第３選択制御信号ＴＬＥＮに応答して、組み合わせ回路１３２ｂから受信される第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを出力する。
【００４９】
図８は、図６に示されたサブルーチン１３００を詳細に示すフローチャートである。図８を参照すると、まず、ＢＩＳＴコントロール部１２０は、ＢＩＳＴロジック回路１３１ｂの制御レジスタ２２０に第１設定値を有する制御データＣＲＤＡＴを書き込む（１３０１）。ここで、制御レジスタ２２０に第１設定値を有する制御データＣＲＤＡＴが書き込まれる過程は、前述したようである。この時、制御データＣＲＤＡＴは、図９で参照されるように、“００１”のビット値を有する。制御レジスタ２２０は、制御データＣＲＤＡＴのビット値に基づいて、テスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ１をディセーブルさせ、テスト制御信号ＴＭＲＥＧ０をイネーブルさせて出力する。
【００５０】
段階１３０１が行われた後、ＢＩＳＴコントロール部１２０は、ＢＩＳＴロジック回路１３１ｂの第１保存セルＦＣ１〜ＦＣＫから第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを読み取る（１３０２）。これをさらに詳細に説明すれば、シーケンス発生器１２１は、クロック信号ＣＬＫに同期して読み取りコマンド信号ＲＥＡＤをシステムバス１１０に出力し、シーケンス制御信号ＣＴＬ１を発生させる。アドレス発生器１２２は、クロック信号ＣＬＫとシーケンス制御信号ＣＴＬ１とに応答して、テストアドレス信号ＴＡ１〜ＴＡＫを発生させてシステムバス１１０に出力する。バスインターフェース装置２１０は、読み取りコマンド信号ＲＥＡＤに応答して、第１及び第２選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫ、ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪをいずれもディセーブルさせる。第１選択制御信号ＦＳ＿ｅｎ１〜ＦＳ＿ｅｎＫに応答して、第１選択回路ＦＳ〜ＦＳＫのマルチプレクサＭ１３ｓがマルチプレクサＭ１２ｓの出力信号を選択して、第１保存セルＦＣ１〜ＦＣＫにそれぞれ出力する。ここで、マルチプレクサＭ１２ｓが第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを出力する状態であるので、第１保存セルＦＣ１〜ＦＣＫには、第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫが同時に入力される。第１保存セルＦＣ１〜ＦＣＫは、第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを保存し、保存された第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫをそれぞれ出力する。
【００５１】
また、第２選択制御信号ＳＳ＿ｅｎ１〜ＳＳ＿ｅｎＪに応答して、第２選択回路ＳＳ〜ＳＳＪのマルチプレクサＭ２３ｓがマルチプレクサＭ２２ｓの出力信号を選択して、第２保存セルＳＣ１〜ＳＣＪにそれぞれ出力する。ここで、マルチプレクサＭ２２ｓが第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを出力する状態であるので、第２保存セルＳＣ１〜ＳＣＪには、第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪが同時に入力される。第２保存セルＳＣ１〜ＳＣＪは、第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを保存し、保存された第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを出力する。
【００５２】
この時、バスインターフェース装置２１０は、読み取りコマンド信号ＲＥＡＤに応答して、テストアドレス信号ＴＡ１〜ＴＡＫとテスト制御信号ＴＭＲＥＧ２とを出力選択回路２３０に出力する。テストアドレス信号ＴＡ１〜ＴＡＫに応答して、出力選択回路２３０のマルチプレクサ２３１は、第１保存セルＦＣ１〜ＦＣＫから受信される第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを順次に選択して出力する。テスト制御信号ＴＭＲＥＧ２がディセーブル状態であるので、出力選択回路２３０のマルチプレクサ２３３が、マルチプレクサ２３１から順次に受信される前記第１テスト結果データＦＴＲ＿Ｄ１〜ＦＴＲ＿ＤＫを、テスト結果データＴＲＤＡＴとして前記システムバス１１０に出力する。
【００５３】
次いで、ＢＩＳＴコントロール部１２０は、クロック信号ＣＬＫに応答して読み取られる前記第１保存セルが残っているか否かを判断する（１３０３）。段階１３０３において、読み取られる第１保存セルが残っている場合、段階１３０２にリターンする。また、段階１３０３において、読み取られる第１保存セルが残っていない場合、ＢＩＳＴコントロール部１２０は、ＢＩＳＴロジック回路１３１ｂの制御レジスタ２２０に第２設定値を有する制御データＣＲＤＡＴを書き込む（１３０４）。ここで、制御レジスタ２２０に第２設定値を有する制御データＣＲＤＡＴが書き込まれる過程は、上述したのと同一である。この時、制御データＣＲＤＡＴは、図９で参照されるように、“１０１”のビット値を有する。制御レジスタ２２０は、制御データＣＲＤＡＴのビット値に基づいて、テスト制御信号ＴＭＲＥＧ２、ＴＭＲＥＧ０をイネーブルさせ、テスト制御信号ＴＭＲＥＧ１をディセーブルさせて出力する。
【００５４】
段階１３０４が行われた後、ＢＩＳＴコントロール部１２０は、ＢＩＳＴロジック回路１３１ｂの第２保存セルＳＣ１〜ＳＣＪから第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを読み取る（１３０５）。これをさらに詳細に説明すれば、シーケンス発生器１２１は、クロック信号ＣＬＫに同期して読み取りコマンド信号ＲＥＡＤをシステムバス１１０に出力し、シーケンス制御信号ＣＴＬ１を発生させる。アドレス発生器１２２は、クロック信号ＣＬＫとシーケンス制御信号ＣＴＬ１とに応答して、テストアドレス信号ＴＡ１〜ＴＡＫを発生させてシステムバス１１０に出力する。バスインターフェース装置２１０は、読み取りコマンド信号ＲＥＡＤに応答して、テストアドレス信号ＴＡ１〜ＴＡＫとテスト制御信号ＴＭＲＥＧ２とを出力選択回路２３０に出力する。テストアドレス信号ＴＡ１〜ＴＡＫに応答して、出力選択回路２３０のマルチプレクサ２３２は、第２保存セルＳＣ１〜ＳＣＪから受信される第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪを順次に選択して出力する。テスト制御信号ＴＭＲＥＧ２がイネーブル状態であるので、マルチプレクサ２３３が、マルチプレクサ２３２から順次に受信される第２テスト結果データＳＴＲ＿Ｄ１〜ＳＴＲ＿ＤＪをテスト結果データＴＲＤＡＴとしてシステムバス１１０に出力する。
【００５５】
次いで、ＢＩＳＴコントロール部１２０は、クロック信号ＣＬＫに応答して読み取られる第２保存セルが残っているか否かを判断する（１３０６）。段階１３０６において、読み取られる第２保存セルが残っている場合、段階１３０５にリターンする。また、段階１３０６において、読み取られる第２保存セルが残っていない場合、サブルーチン１３００は終了される。
【００５６】
本発明は図面に示した一実施例に基づいて説明されたが、これは例示的なものに過ぎず、当業者であれば、これから多様な変形及び均等な他の実施例が可能であるという点を理解できるであろう。従って、本発明の真の技術的な保護範囲は、特許請求の範囲の技術的思想により決まらなければならない。
【産業上の利用可能性】
【００５７】
本発明は、ＳＯＣの動作速度でテストを行い、テスト時間を短縮させ、ＳＯＣがボードに実装された後にも、テストを行える内蔵型セルフテスト回路を有するＳＯＣに適している。
【図面の簡単な説明】
【００５８】
【図１】従来技術によるＳＯＣとＡＴＥとを示すブロック図である。
【図２】図１に示されたＳＯＣに含まれるＩＰブロックの内部構成を示す図である。
【図３】本発明による内蔵型セルフテスト回路を有するＳＯＣを示すブロック図である。
【図４】図３に示されたＳＯＣに含まれるＩＰブロックの内部構成を示す図である。
【図５】図４に示されたＢＩＳＴロジック回路と組み合わせ回路とをさらに詳細に示す図である。
【図６】本発明によるＳＯＣのセルフテスト過程を示すフローチャートである。
【図７】図６に示されたサブルーチン１１００を詳細に示すフローチャートである。
【図８】図６に示されたサブルーチン１３００を詳細に示すフローチャートである。
【図９】図５に示されたＢＩＳＴロジック回路でセルフテスト過程の間に発生する主要信号のタイミング図である。
【符号の説明】
【００５９】
１００    ＳＯＣ
１２０    ＢＩＳＴコントロール部
１２１    シーケンス発生器
１２２    アドレス発生器
１２３    パターン生成部
１２４    結果圧縮部
１３０，１４０，１５０，１６０    ＩＰブロック
１３１，１４１，１５１，１６１    ＢＩＳＴロジック回路
１７０    バスマスタ
【図１】
2005241651.tif 000003
【図２】
2005241651.tif 000004
【図３】
2005241651.tif 000005
【図４】
2005241651.tif 000006
【図５】
2005241651.tif 000007
【図６】
2005241651.tif 000008
【図７】
2005241651.tif 000009
【図８】
2005241651.tif 000010
【図９】
2005241651.tif 000011