(57)【要約】【課題】ＲＡＭマクロ出力回路のテストを効率良く行うことができる故障検出回路を提供すること。【解決手段】本発明にかかる故障検出回路は、メモリＢＩＳＴ１００と、メモリＢＩＳＴが出力したマクロ試験データ信号Ｓ１００を選択する複数のＲＡＭマクロ入力選択回路１１０、１１１と、選択されたマクロ試験データ信号Ｓ１００をそれぞれ入力するＲＡＭマクロ１２０、１２１と、ＲＡＭマクロ１２０、１２１の出力信号を選択するＢＩＳＴ入力選択回路２００と、ＲＡＭマクロ１２０、１２１からの出力信号を選択するＲＡＭマクロ出力選択回路１３０、１３１と、選択された出力信号を保持するフリップフロップ１４０、１４１と、マクロ試験データ信号Ｓ１００からパリティ信号を生成するパリティ生成回路４００と、パリティ信号とフリップフロップが保持している出力信号のパリティチェックを行うパリティチェック回路１５０、１５１と、を備える。【選択図】図１
2011108325.tif 000002
【特許請求の範囲】
【請求項１】
メモリＢＩＳＴと、
前記メモリＢＩＳＴの出力信号である第１の出力信号を入力し当該第１の出力信号を選択する複数のＲＡＭマクロ入力選択回路と、
選択された前記第１の出力信号をそれぞれ入力する複数のＲＡＭマクロと、
前記ＲＡＭマクロの出力信号である第２の出力信号を入力し、当該第２の出力信号のうちのいずれかを選択し前記メモリＢＩＳＴに出力するＢＩＳＴ入力選択回路と、
前記ＲＡＭマクロから出力された前記第２の出力信号のうちのいずれかを選択するＲＡＭマクロ出力選択回路と、
前記ＲＡＭマクロ出力選択回路で選択された前記第２の出力信号を保持するフリップフロップと、
前記メモリＢＩＳＴの出力信号からパリティ信号を生成するパリティ生成回路と、
前記パリティ生成回路から出力されたパリティ信号と前記フリップフロップが保持している前記第２の出力信号のパリティチェックを行うパリティチェック回路と、を備える、
故障検出回路。
【請求項２】
前記パリティチェック回路は、
前記フリップフロップから出力された前記第２の出力信号を入力し、演算結果を出力する第１のＸＯＲ回路と、
前記第１のＸＯＲ回路の出力信号を第１の入力信号とし、前記パリティ生成回路で生成されたパリティ信号を第２の入力信号として、演算結果を出力する第２のＸＯＲ回路と、を備える、請求項１に記載の故障検出回路。
【請求項３】
選択信号生成回路をさらに備え、
前記選択信号生成回路は、前記第２の出力信号が前記ＲＡＭマクロ出力選択回路を経て前記フリップフロップに入力されるような制御信号を生成する、請求項１または請求項２に記載の故障検出回路。
【請求項４】
前記ＢＩＳＴ入力選択回路は、検査を行いたい前記ＲＡＭマクロに応じて、前記第２の出力信号を選択して、前記メモリＢＩＳＴに信号を出力する、
請求項１乃至請求項３のいずれか一項に記載の故障検出回路。
【請求項５】
前記ＲＡＭマクロ入力選択回路は、前記メモリＢＩＳＴの出力信号である第１の出力信号と、外部機器が出力した第３の出力信号とを入力し、いずれかの信号を前記ＲＡＭマクロに出力する、
請求項１乃至請求項４のいずれか一項に記載の故障検出回路。
【請求項６】
前記パリティチェック回路は、前記ＲＡＭマクロ入力選択回路において前記メモリＢＩＳＴの出力信号である第１の出力信号が選択された場合に、前記フリップフロップに格納された複数の第２の出力信号について演算を行った演算結果と、前記パリティ生成回路で生成したパリティ信号との演算を行う、
請求項５に記載の故障検出回路。
【請求項７】
前記パリティチェック回路は、前記ＲＡＭマクロ入力選択回路において外部機器が出力した第３の出力信号が選択された場合に、前記フリップフロップに格納された複数の第２の出力信号について演算を行う、
請求項５または請求項６に記載の故障検出回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は故障検出回路に関する。
【背景技術】
【０００２】
ＲＡＭマクロを有する故障検出回路において、一般に、フリップフロップ間のロジックの検査はスキャンテストにより行われ、ＲＡＭマクロの検査はメモリＢＩＳＴ(build-in self-test)により行われる。
【０００３】
図５は、関連する故障検出回路のブロック図である。図５に示す故障検出回路は、メモリＢＩＳＴ１００と、ＲＡＭマクロ入力選択回路１１０、１１１と、ＲＡＭマクロ１２０、１２１と、ＲＡＭマクロ出力選択回路１３０、１３１と、フリップフロップ（ＦＦ）１４０、１４１と、ＢＩＳＴ入力選択回路２００と、を備えている。
【０００４】
ＲＡＭマクロ入力選択回路１１０は、メモリＢＩＳＴ１００で生成され出力されたＲＡＭマクロ試験データ信号Ｓ１００と、外部機器から出力された信号Ｓ１を入力し、いずれか選択した信号をＲＡＭマクロ１２０に出力する。同様に、ＲＡＭマクロ入力選択回路１１１は、ＲＡＭマクロ試験データ信号Ｓ１００と、外部機器から出力された信号Ｓ２を入力し、いずれか選択した信号をＲＡＭマクロ１２１に出力する。
ＲＡＭマクロ１２０、１２１から、それぞれ出力信号Ｓ１２０、Ｓ１２１が、ＢＩＳＴ入力選択回路２００に出力される。ＢＩＳＴ入力選択回路２００は、検査を行いたいＲＡＭマクロに応じて、入力された信号をメモリＢＩＳＴ１００に選択的に出力する。例えば、ＲＡＭマクロ１２０の検査を行いたい場合には、ＢＩＳＴ入力選択回路２００は、出力信号Ｓ１２０をメモリＢＩＳＴに出力する。
メモリＢＩＳＴ１００は、ＢＩＳＴ入力選択回路２００から入力された信号と、ＲＡＭマクロ試験データ信号Ｓ１００との比較を行うことにより、選択したＲＡＭマクロの故障検出を行う。
【０００５】
ここで、ＲＡＭマクロ出力選択回路１３０、１３１は、ＲＡＭマクロ１２０、１２１の出力に直接接続されている。この場合、ＲＡＭマクロ出力選択回路１３０、１３１では、スキャンテスト及びメモリＢＩＳＴによるテストを行うことができない。そこで、ＲＡＭマクロ出力選択回路１３０、１３１では、機能テストパターンを多数作成し、これらのパターンをテスター上で実行することにより、故障の検出を行っている。
【０００６】
特許文献１では、メモリＢＩＳＴを用いてＲＡＭマクロ出力ロジックのテストを行う技術が開示されている。図６は、特許文献１に開示された技術について、複数のＲＡＭマクロ及びＲＡＭマクロ出力回路がメモリ出力選択回路により構成されている場合のブロック図である。
【０００７】
ＲＡＭマクロ入力選択回路１１０は、メモリＢＩＳＴ１００で生成され出力されたＲＡＭマクロ試験データ信号Ｓ１００と、外部機器から出力された信号Ｓ１を入力し、いずれか選択した信号をＲＡＭマクロ１２０に出力する。同様に、ＲＡＭマクロ入力選択回路１１１は、ＲＡＭマクロ試験データ信号Ｓ１００と、外部機器から出力された信号Ｓ２を入力し、いずれか選択した信号をＲＡＭマクロ１２１に出力する。
ＲＡＭマクロ１２０、１２１から、それぞれ出力信号Ｓ１２０、Ｓ１２１が、ＢＩＳＴ入力選択回路２００に出力される。ＢＩＳＴ入力選択回路２００は、検査を行いたいＲＡＭマクロに応じて、入力された信号をメモリＢＩＳＴ１００に選択的に出力する。例えば、ＲＡＭマクロ１２０の検査を行いたい場合には、ＢＩＳＴ入力選択回路２００は、出力信号Ｓ１２０をメモリＢＩＳＴに出力する。
メモリＢＩＳＴ１００は、ＢＩＳＴ入力選択回路２００から入力された信号と、ＲＡＭマクロ試験データ信号Ｓ１００との比較を行うことにより、選択したＲＡＭマクロの故障検出を行う。
【０００８】
ＲＡＭマクロ出力選択回路１３０は、ＲＡＭマクロ１２０、１２１から出力された出力信号Ｓ１２０、Ｓ１２１を入力する。また選択信号生成回路３００は、選択信号Ｓ３００を、ＲＡＭマクロ出力選択回路１３０に出力する。ＲＡＭマクロ出力選択回路１３０は、選択信号Ｓ３００に基づいて、出力信号Ｓ１２０、Ｓ１２１のいずれかを選択し、ＦＦ１４０に信号を出力する。また同様にして、ＲＡＭマクロ出力選択回路１３１は、ＦＦ１４１に信号を出力する。
ＦＦ１４０、１４１から、それぞれ出力信号Ｓ１４０、Ｓ１４１が、ＢＩＳＴ入力選択回路２００に出力される。ＢＩＳＴ入力選択回路２００は、検査を行いたいＲＡＭマクロ出力選択回路に応じて、入力された信号をメモリＢＩＳＴ１００に選択的に出力する。例えば、ＲＡＭマクロ出力選択回路１３０の検査を行いたい場合には、ＢＩＳＴ入力選択回路２００は、出力信号Ｓ１４０をメモリＢＩＳＴに出力する。
【０００９】
これによると、ＲＡＭマクロ出力選択回路の出力をメモリＢＩＳＴに接続し、メモリＢＩＳＴにおいて期待値比較を行うことで、ＲＡＭマクロ出力選択回路のテストを行うことができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００４−３３４９３３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、特許文献１にかかる回路では、ＲＡＭマクロおよびＲＡＭマクロ出力ロジックを検査する際に、ＲＡＭマクロ出力とＲＡＭマクロ出力回路とを選択する回路が必要となる。このとき、ＲＡＭマクロのビット幅が大きい場合やＲＡＭマクロの数が多い場合には、選択回路のゲート量及び配線数が増加し、回路の収容性が悪化する。さらに、ＲＡＭマクロのテストとＲＡＭマクロ出力回路のテストは同時に行うことができないため、テスト時間が増大する。
また、図５に示す回路のように、機能テストパターンを用いる検査方法では、テストパターン作成コスト及びテスト時間増大によりテストのコストが増加するという問題がある。
本発明は、このような問題点を解決するためになされたものであり、ＲＡＭマクロ出力回路のテストを効率良く行うことができる故障検出回路を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明にかかる故障検出回路は、メモリＢＩＳＴと、前記メモリＢＩＳＴの出力信号である第１の出力信号を入力し当該第１の出力信号を選択する複数のＲＡＭマクロ入力選択回路と、前記複数のＲＡＭマクロ入力選択回路で選択された前記第１の出力信号をそれぞれ入力する複数のＲＡＭマクロと、前記ＲＡＭマクロの出力信号である第２の出力信号を入力し、当該第２の出力信号のうちのいずれかを選択し前記メモリＢＩＳＴに出力するＢＩＳＴ入力選択回路と、前記ＲＡＭマクロから出力された前記第２の出力信号のうちのいずれかを選択するＲＡＭマクロ出力選択回路と、前記ＲＡＭマクロ出力選択回路で選択された前記第２の出力信号を保持するフリップフロップと、前記メモリＢＩＳＴの出力信号からパリティ信号を生成するパリティ生成回路と、前記パリティ生成回路から出力されたパリティ信号と前記フリップフロップが保持している前記第２の出力信号のパリティチェックを行うパリティチェック回路と、を備える。
【発明の効果】
【００１３】
メモリＢＩＳＴによりＲＡＭマクロの故障を検出する故障検出回路において、ＲＡＭマクロ出力回路のテストを効率良く行うことができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１にかかる故障検出回路のブロック図である。
【図２】実施の形態１にかかる故障検出回路のブロック図である。
【図３】実施の形態１にかかるパリティチェック回路のブロック図である。
【図４】実施の形態１にかかる選択信号生成回路の動作を示す図である。
【図５】関連する故障検出回路のブロック図である。
【図６】関連する故障検出回路のブロック図である。
【発明を実施するための形態】
【００１５】
実施の形態１．
以下、図面を参照して本発明の実施の形態について説明する。図１は、本実施の形態にかかる故障検出回路のブロック図である。
【００１６】
故障検出回路は、メモリＢＩＳＴ１００と、ＲＡＭマクロ入力選択回路１１０、１１１と、ＲＡＭマクロ１２０、１２１と、ＲＡＭマクロ出力選択回路１３０、１３１と、フリップフロップ（ＦＦ）１４０、１４１と、パリティチェック回路１５０、１５１と、ＢＩＳＴ入力選択回路２００と、パリティ生成回路４００と、を備えている。
【００１７】
メモリＢＩＳＴ１００は、ＲＡＭマクロ試験データ信号Ｓ１００（第１の出力信号）を生成する。また、メモリＢＩＳＴ１００は、ＲＡＭマクロ入力選択回路１１０、１１１及びパリティ生成回路４００と接続されている。メモリＢＩＳＴ１００は、ＲＡＭマクロ入力選択回路１１０、１１１及びパリティ生成回路４００に対して、ＲＡＭマクロ試験データ信号Ｓ１００を出力する。
【００１８】
パリティ生成回路４００には、ＲＡＭマクロ試験データ信号Ｓ１００が入力される。また、パリティ生成回路４００は、ＲＡＭマクロ試験データ信号Ｓ１００に基づくパリティ信号Ｓ４００を生成して、パリティチェック回路１５０、１５１に出力する。
【００１９】
ＲＡＭマクロ入力選択回路１１０、１１１には、ＲＡＭマクロ試験データ信号Ｓ１００が入力される。また、ＲＡＭマクロ入力選択回路１１０、１１１は、外部機器（図示せず）と接続されている。ＲＡＭマクロ入力選択回路１１０には外部機器から信号Ｓ１（第３の出力信号）が入力され、ＲＡＭマクロ入力選択回路１１１には外部機器から信号Ｓ２（第３の出力信号）が入力される。
ＲＡＭマクロ入力選択回路１１０の出力は、ＲＡＭマクロ１２０と接続されている。ＲＡＭマクロ入力選択回路１１０で選択された信号はＲＡＭマクロ１２０に出力される。同様に、ＲＡＭマクロ入力選択回路１１１の出力は、ＲＡＭマクロ１２１と接続されている。ＲＡＭマクロ入力選択回路１１１で選択された信号は、ＲＡＭマクロ１２１に出力される。
【００２０】
ＲＡＭマクロ１２０、１２１には、それぞれＲＡＭマクロ入力選択回路１１０、１１１で選択された信号が入力される。また、ＲＡＭマクロ１２０の出力は、ＲＡＭマクロ出力選択回路１３０、１３１及びＢＩＳＴ入力選択回路２００と接続されている。ＲＡＭマクロ１２０は、ＲＡＭマクロ出力選択回路１３０、１３１及びＢＩＳＴ入力選択回路２００に出力信号Ｓ１２０（第２の出力信号）を出力する。同様に、ＲＡＭマクロ１２１の出力は、ＲＡＭマクロ出力選択回路１３０、１３１及びＢＩＳＴ入力選択回路２００と接続されている。ＲＡＭマクロ１２１は、ＲＡＭマクロ出力選択回路１３０、１３１及びＢＩＳＴ入力選択回路２００に出力信号Ｓ１２１（第２の出力信号）を出力する。
【００２１】
ＢＩＳＴ入力選択回路２００には、出力信号Ｓ１２０、Ｓ１２１が入力される。また、ＢＩＳＴ入力選択回路２００の出力は、メモリＢＩＳＴ１００と接続されている。ＢＩＳＴ入力選択回路２００は、選択したデータを、メモリＢＩＳＴ１００に出力する。
【００２２】
ＲＡＭマクロ出力選択回路１３０には、出力信号Ｓ１２０、Ｓ１２１が入力される。また、ＲＡＭマクロ出力選択回路１３０の出力は、フリップフロップ１４０と接続されている。ＲＡＭマクロ出力選択回路１３０は、選択したデータを、パリティチェック回路１５０に出力する。同様に、出力信号Ｓ１２０、Ｓ１２１が入力されたＲＡＭマクロ出力選択回路１３１は、データをパリティチェック回路１５１に出力する。
【００２３】
図３は、本実施の形態にかかるパリティチェック回路のブロック図である。パリティチェック回路１５０は、ＸＯＲ回路１５０ａと、ＸＯＲ回路１５０ｂと、を備えている。
【００２４】
ＸＯＲ回路１５０ａの入力は、フリップフロップ１４０の出力と接続されている。ＸＯＲ回路１５０ａには、フリップフロップ１４０から信号が入力される。ＸＯＲ回路１５０ａは、ＸＯＲ回路１５０ａにおける演算（排他的論理和）の結果を出力する。
【００２５】
ＸＯＲ回路１５０ｂの一方の入力は、ＸＯＲ回路１５０ａの出力と接続されている。ＸＯＲ回路１５０ｂには、ＸＯＲ回路１５０ａによる演算結果が入力される。また、ＸＯＲ回路１５０ｂの他方の入力は、パリティ生成回路４００の出力と接続されている。ＸＯＲ回路１５０ｂには、パリティ信号Ｓ４００が入力される。ＸＯＲ回路１５０ｂは、ＸＯＲ回路１５０ｂにおける演算（排他的論理和）の結果を出力する。
なお、パリティチェック回路１５１もパリティチェック回路１５０と同様に構成することができる。
【００２６】
すなわちパリティチェック回路１５０は、通常動作時のパリティチェック回路に、テスト動作時のパリティチェックによるＲＡＭマクロ出力選択回路１３０の故障検出回路を付加した場合の構成例である。
【００２７】
図２は、図１にかかる故障検出回路に、選択信号生成回路３１０をさらに備えた故障検出回路のブロック図である。本実施の形態では図２に示すように、選択信号生成回路３１０を備えていてもよい。
【００２８】
選択信号生成回路３１０の出力は、ＲＡＭマクロ出力選択回路１３０、１３１と接続されている。選択信号生成回路３１０は、選択信号生成回路３１０で生成した選択信号Ｓ３１０を、ＲＡＭマクロ出力選択回路１３０、１３１に出力する。
【００２９】
以上詳細に実施の形態の構成を述べたが、メモリＢＩＳＴ１００は、当業者にとってよく知られており、また本発明とは直接関係しないので、その詳細な構成は省略する。
なお、上記説明での構成例は一例であり、ＲＡＭマクロ入力選択回路の個数、ＲＡＭマクロの個数、ＲＡＭマクロ出力選択回路の個数、フリップフロップの個数及びパリティチェック回路の個数は限定されない。
【００３０】
次に、本実施の形態に係る故障検出回路の動作について説明する。
【００３１】
故障検出回路は、メモリＢＩＳＴ１００で生成したデータを用いるテスト動作モードと、メモリＢＩＳＴ１００で生成したデータを用いない通常動作モードで動作する。
【００３２】
メモリＢＩＳＴ１００は、ＲＡＭマクロ試験データ信号Ｓ１００を生成して出力する。
【００３３】
ＲＡＭマクロ入力選択回路１１０には、メモリＢＩＳＴ１００で生成されたＲＡＭマクロ試験データ信号Ｓ１００と、外部機器から出力された信号Ｓ１が入力される。ＲＡＭマクロ入力選択回路１１０は、動作モードに基づいて、いずれの入力信号を用いるかを選択する。すなわちＲＡＭマクロ入力選択回路１１０は、テスト動作モードの場合にはＲＡＭマクロ試験データ信号Ｓ１００を選択し、通常動作モードの場合には信号Ｓ１を選択する。ＲＡＭマクロ入力選択回路１１０は、選択した信号に応じた書きこみデータをＲＡＭマクロ１２０に出力する。
同様に、ＲＡＭマクロ入力選択回路１１１は、メモリＢＩＳＴ１００で生成されたＲＡＭマクロ試験データ信号Ｓ１００と、外部機器から出力された信号Ｓ２の、いずれの信号を用いるか選択し、選択した信号に応じた書き込みデータをＲＡＭマクロ１２１に出力する。
【００３４】
ＲＡＭマクロ１２０は、入力された書き込みデータに応じて、出力信号Ｓ１２０を出力する。同様にＲＡＭマクロ１２１は、出力信号Ｓ１２１を出力する。
【００３５】
出力信号Ｓ１２０は、ＲＡＭマクロ出力選択回路１３０、１３１に入力される。同様に出力信号Ｓ１２１は、ＲＡＭマクロ出力選択回路１３０、１３１に入力される。
ＲＡＭマクロ出力選択回路１３０は、出力信号Ｓ１２０、Ｓ１２１から信号を選択し、選択した信号をＦＦ１４０に格納する。同様に、ＲＡＭマクロ出力選択回路１３１は、出力信号Ｓ１２０、Ｓ１２１から信号を選択し、選択した信号をＦＦ１４１に格納する。
【００３６】
ここで図２に示したように、本実施の形態にかかる故障検出回路は、例えば選択信号生成回路３１０を備えていてもよい。選択信号生成回路３１０は、ＲＡＭマクロ出力選択回路１３０、１３１を制御するための手段である。選択信号生成回路３１０は選択信号Ｓ３１０を、ＲＡＭマクロ出力選択回路１３０、１３１に出力する。
図４は、選択信号生成回路３１０の動作を示す図である。選択信号生成回路３１０は、通常動作モードを選択する場合には通常動作時選択信号を送出する。テスト動作モードであって、ＲＡＭマクロ１２０を選択する場合には、ＲＡＭマクロ１２０選択信号を送出し、ＲＡＭマクロ１２１を選択する場合には、ＲＡＭマクロ１２１選択信号を送出する。すなわち、ＲＡＭマクロ出力選択回路１３０、１３１は、選択信号Ｓ３１０に応じて、ＲＡＭマクロ１２０、１２１のいずれかの出力信号Ｓ１２０、Ｓ１２１を選択するかを決定し、信号をそれぞれＦＦ１４０、１４１に出力する。
【００３７】
ＦＦ１４０に格納されたデータは、パリティチェック回路１５０に入力される。また同様に、ＦＦ１４１に格納されたデータは、パリティチェック回路１５１に入力される。
【００３８】
また、パリティ生成回路４００には、メモリＢＩＳＴ１００から出力されたＲＡＭマクロ試験データ信号Ｓ１００が入力され、パリティ信号Ｓ４００を生成する。パリティ生成回路４００は生成したパリティ信号Ｓ４００を、パリティチェック回路１５０、１５１に出力する。
【００３９】
ここで図３に示すように、パリティチェック回路１５０は、ＸＯＲ回路１５０ａとＸＯＲ回路１５０ｂを備えている。
ここで、ＸＯＲ１５０aは通常動作モードにおける故障検出回路である。ＸＯＲ１５０aは、ＦＦ１４０から出力された複数のデータに対して演算を行い、演算結果を出力する。演算は、例えば入力されたデータのそれぞれのパリティビットについて行われる。ＸＯＲ回路１５０ａの出力は、偶数パリティの場合、ＲＡＭマクロ出力選択回路１３０やＦＦ１４０が故障していると"１"になり、これにより故障を検出する。
【００４０】
ＸＯＲ１５０ｂは、テスト動作モードにおける故障検出回路である。ＸＯＲ１５０ｂは、ＲＡＭマクロ試験データ信号Ｓ１００のパリティであるパリティ信号Ｓ４００と、ＸＯＲ１５０ａの出力信号を入力して演算を行い、演算結果を出力する。これによりＸＯＲ１５０ｂは、ＲＡＭマクロ出力選択回路１３０やＦＦ１４０の故障検出をおこなう。
パリティチェック回路１５１は、パリティチェック回路１５０と同様に動作し、ＲＡＭマクロ出力選択回路１３１やＦＦ１４１の故障検出を行う。
【００４１】
すなわち、通常動作モードにおいて、外部機器からＲＡＭマクロ入力選択回路１１０に入力された信号Ｓ１は、ＲＡＭマクロ１２０に出力される。次に、ＲＡＭマクロ１２０から出力された出力信号Ｓ１２０は、ＲＡＭマクロ出力選択回路１３０及びＦＦ１４０を介して、パリティチェック回路１５０に入力される。パリティチェック回路１５０のＸＯＲ回路１５０ａは、ＦＦ１４０から出力された複数のデータについて演算を行い、データのチェックを行う。
同様にして、出力信号Ｓ１２０はＲＡＭマクロ出力選択回路１３１及びＦＦ１４１を介して、パリティチェック回路１５１に入力される。パリティチェック回路１５１は、ＸＯＲ（排他的論理和）の演算を行う。また、外部機器からＲＡＭマクロ入力選択回路１１１に入力された信号Ｓ２を用い、ＲＡＭマクロ１２１から出力された信号について、パリティチェック回路１５０、１５１において演算を行うことができる。
これにより、通常動作モードにおいて、ＲＡＭマクロ１２０、１２１及びＲＡＭマクロ出力選択回路１３０、１３１の故障検出を行うことができる。
【００４２】
また、テスト動作モードにおいて、メモリＢＩＳＴ１００から出力され、ＲＡＭマクロ入力選択回路１１０に入力されたＲＡＭマクロ試験データ信号Ｓ１００は、ＲＡＭマクロ１２０に出力される。次に、ＲＡＭマクロ１２０から出力された出力信号Ｓ１２０は、ＲＡＭマクロ出力選択回路１３０及びＦＦ１４０を介して、パリティチェック回路１５０に入力される。パリティチェック回路１５０のＸＯＲ回路１５０ａは、ＦＦ１４０から出力された複数のデータについて演算を行う。この出力を第１の入力信号として、ＸＯＲ回路１５０ｂに出力する。また、メモリＢＩＳＴ１００から出力されたＲＡＭマクロ試験データ信号Ｓ１００は、パリティ生成回路４００に入力され、パリティ生成回路４００はパリティ信号Ｓ４００をパリティチェック回路１５０に出力する。このパリティ信号Ｓ４００を第２の入力信号としてＸＯＲ回路１５０ｂは演算を行い、データのチェックを行う。
同様にして、出力信号Ｓ１２０はＲＡＭマクロ出力選択回路１３１及びＦＦ１４１を介して、パリティチェック回路１５１に入力される。パリティチェック回路１５１は、パリティチェック回路１５０と同様に動作し、データのチェックを行う。
なお、ＲＡＭマクロ入力選択回路１１０及びＲＡＭマクロ１２０を用いる代わりに、ＲＡＭマクロ入力選択回路１１１及びＲＡＭマクロ１２１を用い、ＲＡＭマクロ１２１から出力された信号について、処理を行うことができる。
これによりテスト動作モードにおいて、パリティを用いてＲＡＭマクロ出力選択回路１３０、１３１の故障検出を行うことができる。
【００４３】
ここで、テスト動作モードにおいて、ＲＡＭマクロ１２０、１２１から出力された出力信号Ｓ１２０、Ｓ１２１は、それぞれＢＩＳＴ入力選択回路２００に入力される。ＢＩＳＴ入力選択回路２００は、テスト対象となる出力信号Ｓ１２０、Ｓ１２１を選択する。例えば、テスト対象がＲＡＭマクロ１２０の場合には、出力信号Ｓ１２０を選択し、テスト対象がＲＡＭマクロ１２１の場合には、出力信号Ｓ１２１を選択する。
ＢＩＳＴ入力選択回路２００で選択された出力信号Ｓ１２０、Ｓ１２１は、メモリＢＩＳＴ１００に入力される。メモリＢＩＳＴ１００は、入力されたデータとＲＡＭマクロ試験データ信号Ｓ１００に応じた期待値との比較を行い、ＲＡＭマクロ１２０、１２１の故障検出を行う。
【００４４】
これにより、メモリＢＩＳＴ１００を用いてＲＡＭマクロの故障を検出する回路において、メモリＢＩＳＴから出力されるＲＡＭマクロ試験データ信号Ｓ１００を用いて、ＲＡＭマクロ１２０、１２１の出力からＦＦ１４０、１４１に至るまでのテストが可能となる。特に、メモリ出力ロジックが複数のＲＡＭマクロを選択する回路において、選択回路のテストを可能にする。
すなわち、メモリＢＩＳＴ１００による比較を行うこと無く、ＲＡＭマクロ出力選択回路１３０、１３１のテストを行うことができる。したがって、メモリＢＩＳＴ１００によるＲＡＭマクロ１２０、１２１のテストと同時に、ＲＡＭマクロ１２０、１２１の出力からＦＦ１４０、１４１に至るまでの回路のテストをおこなうことができ、テスト時間の短縮が可能となる。
【００４５】
また、データそのものではなく、パリティで期待値比較（パリティチェックによる故障検出）をおこなうことができる。これにより、ＢＩＳＴ入力選択回路２００の信号数の削減が可能になるとともに、ＢＩＳＴ入力選択回路２００のゲート量も削減可能となる。ＲＡＭマクロ数及びマクロ出力選択回路の数が多い場合に、信号数、ゲート数削減効果が大きくなる。
【００４６】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本発明は、ＲＡＭマクロ及びメモリＢＩＳＴを備えた半導体集積回路の故障検出に適用することが可能である。
【符号の説明】
【００４７】
１００    メモリＢＩＳＴ
１１０    ＲＡＭマクロ入力選択回路
１１１    ＲＡＭマクロ入力選択回路
１２０    ＲＡＭマクロ
１２１    ＲＡＭマクロ
１３０    ＲＡＭマクロ出力選択回路
１３１    ＲＡＭマクロ出力選択回路
１４０    フリップフロップ
１５０    パリティチェック回路
１５１    パリティチェック回路
１５０ａ、１５０ｂ、１５１ａ、１５１ｂ  ＸＯＲ回路
２００    ＢＩＳＴ入力選択回路
３００    選択信号生成回路
３１０    選択信号生成回路
４００    パリティ生成回路
Ｓ１、Ｓ２    入力信号
Ｓ１００  マクロ試験データ信号
Ｓ１２０  出力信号
Ｓ１２１  出力信号
Ｓ１４０、Ｓ１４１  出力信号
Ｓ３００  選択信号
Ｓ３１０  選択信号
Ｓ４００  パリティ信号
【図１】
2011108325.tif 000003
【図２】
2011108325.tif 000004
【図３】
2011108325.tif 000005
【図４】
2011108325.tif 000006
【図５】
2011108325.tif 000007
【図６】
2011108325.tif 000008