(57)【要約】【課題】メモリモジュール内のメモリアドレスに対する処理を実行する回路およびメモリアドレスを伝送する配線の故障を検出することができない。【解決手段】選択デコーダ３０３は、少なくとも１ビット以上のアドレスビットに基づいて、複数個の選択信号ｃｅｎ１〜ｃｅｎｎのレベルを制御する。メモリモジュール３０−ｉ（ｉ＝１〜Ｎ）は、対応する選択信号ｃｅｎｉが活性化レベルのときに選択されて、データの読出しおよび書き込みが可能となる。故障判定部３０４は、複数個の選択信号ｃｅｎ１〜ｃｅｎｎのレベルに基づいて、選択デコーダ３０３が故障状態か否かを判定する。【選択図】図１
2018206336.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１ビット以上のアドレスビットに基づいて、複数個の選択信号のレベルを制御する選択デコーダと、
対応する前記選択信号が活性化レベルのときに選択されて、データの読出しおよび書き込みが可能となる複数個のメモリモジュールと、
前記複数個の選択信号のレベルに基づいて、前記選択デコーダが故障状態か否かを判定する故障判定部とを備えた半導体装置。
【請求項２】
ＣＰＵを備え、
前記故障判定部は、前記選択デコーダが前記故障状態と判定した場合に、前記故障状態であることを通知する信号を前記ＣＰＵへ向けて出力する、請求項１記載の半導体装置。
【請求項３】
ライトデータを誤り検出訂正符号化するＥＣＣエンコーダを備え、
前記複数個のメモリモジュールの各々には、対応する前記選択信号が活性化レベルのときに、前記誤り検出訂正符号化されたライトデータが書き込まれ、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールからの出力データのいずれかを選択するセレクタと、
前記セレクタの出力を誤り検出訂正するＥＣＣデコーダとを備え、
前記選択デコーダが前記故障状態と判定された場合に、前記セレクタは、前記選択した出力データの複数ビットのうち、第１のビット数を反転させ、前記第１のビット数は、前記ＥＣＣデコーダにおいて誤り訂正可能なビット数の上限を超え、かつ誤り検出可能なビット数の上限以下のビット数である、請求項１記載の半導体装置。
【請求項４】
ライトデータを誤り検出訂正符号化するＥＣＣエンコーダを備え、
データの書き込み時に、前記複数個のメモリモジュールの各々には、対応する前記選択信号が活性化レベルのときに、前記誤り検出訂正符号化されたライトデータが書き込まれ、
データの読み出し時に、前記複数個のメモリモジュールの各々の出力データを構成する複数ビットは、第１グループの複数個のビットと、第２グループの複数個のビットに分類され、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される複数個の第１グループの複数ビットのうちのいずれかを選択して出力する第１のセレクタと、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される複数個の第２グループの複数ビットのうちのいずれかを選択して出力する第２のセレクタと、
前記第１のセレクタの出力と前記第２のセレクタの出力とを合成したビット列を誤り検出訂正するＥＣＣデコーダと、
各々が、対応する前記選択信号が前記第１のセレクタまたは前記第２のセレクタに供給される経路に設けられた複数個のフリップフロップとを備え、
前記複数個のブリップフロップ、および前記複数個のメモリモジュールには、同一のクロック信号が入力される、請求項１記載の半導体装置。
【請求項５】
前記第１グループの複数ビットは、前記複数個のメモリモジュールの各々の出力データを構成する複数ビットのうちの奇数ビットであり、前記第２グループの複数ビットは、前記複数個のメモリモジュールの各々の出力データを構成する複数ビットのうちの偶数ビットである、請求項４記載の半導体装置。
【請求項６】
前記第１グループの複数ビットは、前記複数個のメモリモジュールの各々の出力データを構成する複数ビットのうちの上位半分のビットであり、前記第２グループの複数ビットは、前記複数個のメモリモジュールの各々の出力データを構成する複数ビットのうちの下位半分のビットである、請求項４記載の半導体装置。
【請求項７】
前記複数個のメモリモジュールは、第１のメモリモジュールと第２のメモリモジュールとからなり、前記複数個の選択信号は、前記第１のメモリモジュールに入力される第１の選択信号と、前記第２のメモリモジュールに入力される第２の選択信号とからなり、
前記選択デコーダは、正常な状態の場合に、選択許可信号が活性化レベルのときに、前記第１の選択信号および前記第２の選択信号のいずれかを活性化レベルとし、前記選択許可信号が非活性化レベルのときに、前記第１の選択信号および前記第２の選択信号の両方を非活性化レベルとし、
前記故障判定部は、前記選択許可信号が活性化レベルのときに、前記第１の選択信号と前記第２の選択信号の両方が活性化レベルまたは非活性化レベルのときに、前記選択デコーダが前記故障状態であると判定する、請求項１記載の半導体装置。
【請求項８】
前記故障判定部は、前記選択許可信号が非活性化レベルのときに、前記第１の選択信号と前記第２の選択信号のうちの少なくとも一方が活性化レベルのときに、前記選択デコーダが前記故障状態であると判定する、請求項７記載の半導体装置。
【請求項９】
前記複数個のメモリモジュールの各々は、対応する前記選択信号が活性化レベルのときに限り、データが書き込まれる、請求項１記載の半導体装置。
【請求項１０】
前記複数個のメモリモジュールの各々は、対応する前記選択信号が活性化レベルのときに限り、データが読み出される、請求項１記載の半導体装置。
【請求項１１】
複数個のメモリモジュールを備え、前記複数個のメモリモジュールにおけるデータの格納位置を表わすアドレス信号を表わす複数ビットは、第１のアドレスビットと第２のアドレスビットとを含み、前記複数個のメモリモジュールの各々は、前記第２のアドレスビットを受けて、前記第２のアドレスビットから生成した内部アドレスビットを出力し、
前記第１のアドレスビットをデコードして、複数個の選択信号のレベルを制御する選択デコーダと、
各々が、クロックを受けて、対応する前記選択信号が活性化レベルのときに、対応する前記メモリモジュールへ前記クロックを出力する複数個のクロックゲートとを備え、
前記複数個のメモリモジュールの各々は、対応する前記クロックゲートから出力される前記クロックを受けると、前記第２のアドレスビットの最新値から生成される前記内部アドレスビットを出力し、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される前記内部アドレスビットのいずれかを選択するセレクタと、
前記セレクタから出力される前記内部アドレスビットと、前記第１のアドレスビットとを合成したビットと、前記アドレス信号とを比較する比較器とを備えた、半導体装置。
【請求項１２】
前記複数個のメモリモジュールの各々は、対応する前記クロックゲートからの前記クロックが入力されるまでは、前記内部アドレスビットの値を保持し続ける、請求項１１記載の半導体装置。
【請求項１３】
前記複数個のメモリモジュールは、２つのメモリモジュールからなり、
前記第１のアドレスビットは、前記アドレス信号の最上位ビットである、請求項１１記載の半導体装置。
【請求項１４】
第１のアドレス信号が入力される第１のアドレス入力端子と、
クロック信号が入力されるクロック入力端子と、
ワード線によって選択可能な複数のメモリセルを有するメモリアレイと、
前記メモリセルからのデータを出力するとともに、前記メモリセルへのデータが入力されるデータ入出力端子と、
第１の故障通知信号が出力される故障通知出力端子と、
前記第１のアドレス信号を、前記クロック信号に同期して取り込み、内部アドレスビットとして出力する一時記憶回路と、
前記内部アドレスビットに基づいてアドレスデコード信号を出力するアドレスデコーダと、
前記アドレスデコード信号に基づいて前記メモリアレイの対応するワード線を選択して駆動するワード線駆動回路と、
前記ワード線によって選択された前記メモリセルのデータを前記データ入出力端子に出力するデータ入出力部と、
第２のアドレス信号と前記内部アドレスビットとを比較することによって、前記第１の故障通知信号を生成して、前記故障通知出力端子へ出力する第１の比較器とを備えた、メモリモジュール。
【請求項１５】
前記第１のアドレス信号は、ＣＰＵから出力されるアドレス信号を分割するアドレス分割器によって分割された前記アドレス信号のうちの下位の第１の個数のビットからなり、
前記第２のアドレス信号として、前記アドレス信号のうちの下位の前記第１の個数のビットを前記ＣＰＵから直接受ける第２のアドレス入力端子を備える、請求項１４記載のメモリモジュール。
【請求項１６】
テストアドレス信号が入力されるテストアドレス入力端子と、
前記テストアドレス信号および前記第１のアドレス信号のうちの一方を選択して、選択された信号を前記第２のアドレス信号として前記第１の比較器へ供給する第１のセレクタとを備えた、請求項１４記載のメモリモジュール。
【請求項１７】
前記データ入出力部から供給される前記メモリセルのデータと、前記内部アドレスビットとを受けて、いずれか一方をメモリモジュール出力データとして選択して、前記データ入出力端子へ出力する第２のセレクタを備え、
前記第２のセレクタは、前記第１の比較器から前記第１の故障通知信号を受けたときには、前記内部アドレスビットを選択し、前記第１の比較器から前記第１の故障通知信号を受けないときには、前記メモリセルのデータを選択する、請求項１５記載のメモリモジュール。
【請求項１８】
請求項１５に記載の複数個のメモリモジュールと、
前記ＣＰＵと、
前記ＣＰＵに割り込みを通知する割り込み制御部とを備え、
前記ＣＰＵから出力される前記アドレス信号は、前記複数個のメモリモジュールにおけるデータの格納位置を表わし、
前記アドレス信号を上位の第２の個数の第１のアドレスビットと、下位の前記第１の個数の第２のアドレスビットとに分割する前記アドレス分割器を備え、
前記複数個のメモリモジュールの各々の前記第１のアドレス入力端子は、前記第１のアドレス信号として、前記第２のアドレスビットを受け、
前記アドレス分割器から出力される前記第１のアドレスビットと、前記ＣＰＵから直接送られる前記アドレス信号の上位の前記第２の個数のアドレスビットとを比較することによって、第２の故障通知信号を生成して、前記割り込み制御部へ出力する第２の比較器と、
前記アドレス信号の上位の前記第２の個数のアドレスビットをデコードして、複数個の選択信号のレベルを制御する選択デコーダと、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される前記第１の故障通知信号のいずれかを選択して、選択した前記第１の故障通知信号を前記割り込み制御部へ出力する第３のセレクタとを備えた、半導体装置。
【請求項１９】
請求項１７に記載の複数個のメモリモジュールと、
前記ＣＰＵと、
前記ＣＰＵに割り込みを通知する割り込み制御部と、
エラーアドレスを保持するエラーアドレス保持回路とを備え、
前記ＣＰＵから出力される前記アドレス信号は、前記複数個のメモリモジュールにおけるデータの格納位置を表わし、
前記アドレス信号を上位の第２の個数の第１のアドレスビットと、下位の前記第１の個数の第２のアドレスビットとに分割する前記アドレス分割器を備え、
前記複数個のメモリモジュールの各々の前記第１のアドレス入力端子は、前記第１のアドレス信号として、前記第２のアドレスビットを受け、
前記アドレス分割器から出力される前記第１のアドレスビットと、前記ＣＰＵから直接送られる前記アドレス信号の上位の前記第２の個数のアドレスビットとを比較することによって、第２の故障通知信号を生成して、前記割り込み制御部へ出力する第２の比較器と、
前記アドレス信号の上位の前記第２の個数のアドレスビットをデコードして、複数個の選択信号のレベルを制御する選択デコーダと、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される前記第１の故障通知信号のいずれかを選択して、選択した前記第１の故障通知信号を前記割り込み制御部および前記エラーアドレス保持回路へ出力する第４のセレクタとを備え、
前記第４のセレクタは、前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される前記メモリモジュール出力データのいずれかを選択して、選択した前記メモリモジュール出力データを前記エラーアドレス保持回路へ出力し、
前記エラーアドレス保持回路は、前記第１の故障通知信号を受信したときには、前記第４のセレクタから出力される前記メモリモジュール出力データを保持する、半導体装置。
【請求項２０】
前記エラーアドレス保持回路は、前記アドレス分割器から出力される前記第１のアドレスビットを受け、
前記第２の比較器は、前記第２の故障通知信号を前記エラーアドレス保持回路へ出力し、
前記エラーアドレス保持回路は、前記第２の故障通知信号を受信したときには、前記第１のアドレスビットを保持する、請求項１９記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、半導体装置およびメモリモジュールに関し、たとえば、例えばメモリを内蔵した半導体装置に好適に利用できるものである。
【背景技術】
【０００２】
従来から、メモリ内のデータの誤りを検出し、正しいデータに訂正することができるメモリモジュールが知られている。
【０００３】
たとえば、特許文献１には、ＥＣＣ（Error Correction Code）符号化部が、メモリへの書込みデータに誤り訂正符号を付加して符号化データを生成し、第１誤り検出部は、メモリからの読出しデータに対して誤り検出訂正処理を行うことが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−６６３３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の記載の装置では、メモリモジュール内のデータに対する処理を実行する回路およびデータを転送する配線の故障を検出することができる。
【０００６】
しかしながら、特許文献１に記載の装置は、メモリモジュール内のメモリアドレスに対する処理を実行する回路およびメモリアドレスを伝送する配線の故障を検出することができないという問題がある。
【０００７】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
一実施形態では、選択デコーダは、少なくとも１ビット以上のアドレスビットに基づいて、複数個のメモリモジュールに対応する複数個の選択信号のレベルを制御する。故障判定部は、複数個の選択信号のレベルに基づいて、選択デコーダが故障状態か否かを判定する。
【発明の効果】
【０００９】
一実施形態の半導体装置によれば、メモリモジュール内のメモリアドレスに対する処理を実行する回路およびメモリアドレスを伝送する配線の故障を検出することができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態の半導体装置の構成を表わす図である。
【図２】参考例１の半導体装置の構成を表わす図である。
【図３】参考例１の第１のメモリモジュールの構成を表わす図である。
【図４】第２の実施形態の半導体装置の構成を表わす図である。
【図５】選択デコーダが正常な場合における、入力と出力との関係を表わす図である。
【図６】選択デコーダ６２の故障判定手順を表わすフローチャートである。
【図７】第３の実施形態の半導体装置の構成を表わす図である。
【図８】第４の実施形態の半導体装置の構成を表わす図である。
【図９】第５の実施形態の半導体装置の構成を表わす図である。
【図１０】第６の実施形態の半導体装置の構成を表わす図である。
【図１１】第７の実施形態の半導体装置の構成を表わす図である。
【図１２】第７の実施形態のメモリアレイに記憶されるデータの構成を表わす図である。
【図１３】第８の実施形態の半導体装置の構成を表わす図である。
【図１４】第８の実施形態のメモリアレイに記憶されるデータの構成を表わす図である。
【図１５】参考例２の半導体装置の構成を表わす図である。
【図１６】アドレス出力機能付き第１のメモリモジュールの構成を表わす図である。
【図１７】第９の実施形態の半導体装置の構成を表わす図である。
【図１８】第１０の実施形態の半導体装置の構成を表わす図である。
【図１９】第１１の実施形態の半導体装置の構成を表わす図である。
【図２０】故障が通知されたときのＣＰＵの処理手順を表わすフローチャートである。
【図２１】第１２の実施形態の半導体装置１６００の構成を表わす図である。
【図２２】アドレス出力機能付き第１のメモリモジュール２８１の構成を表わす図である。
【図２３】アドレス出力機能付き第１のメモリモジュール２８１のレイアウトを表わす図である。
【図２４】第１３の実施形態の半導体装置１７００の構成を表わす図である。
【図２５】アドレス出力機能付き第１のメモリモジュール３８１の構成を表わす図である。
【図２６】第１４の実施形態の半導体装置１８００の構成を表わす図である。
【図２７】アドレス出力機能付き第１のメモリモジュール４８１の構成を表わす図である。
【発明を実施するための形態】
【００１１】
以下、実施の形態について図面を用いて説明する。図面において同一の符号の構成要素は、同一の構成要素であるものとする。
【００１２】
［第１の実施形態］
図１は、第１の実施形態の半導体装置３００の構成を表わす図である。
【００１３】
図１を参照して、この半導体装置は、Ｎ個のメモリモジュール３０−１〜３０−Ｎと、選択デコーダ３０３と、故障判定部３０４とを備える。Ｎは２以上の自然数である。
【００１４】
選択デコーダ３０３は、少なくとも１ビット以上のアドレスビットに基づいて、複数個の選択信号ｃｅｎ１〜ｃｅｎｎのレベルを制御する。
【００１５】
メモリモジュール３０−ｉ（ｉ＝１〜ｎ）は、対応する選択信号ｃｅｎｉが活性化レベルのときに選択されて、データの読出しおよび書き込みが可能となる。
【００１６】
故障判定部３０４は、複数個の選択信号ｃｅｎ１〜ｃｅｎｎのレベルに基づいて、選択デコーダ３０３が故障状態か否かを判定する。
【００１７】
将来の自動運転に向けて車載半導体には安全性向上の為の機能が求められており、たとえばISO26262（機能安全）の規格に基づく設計が要求されている。この規格によれば、ハードウエアの経年劣化のようなランダム故障を想定して故障が生じた際にそれを訂正もしくは検出し危険回避処理を行うことが求められている。また、高信頼性の製品においては、放射線(α線や中性子)に対して誤動作の影響を受けやすいメモリに対してはＥＣＣ機能が搭載されていることが多い。これにより、放射線に対する保持データの破壊のみならずデータに対するランダム故障については、訂正もしくは検出が可能である。一方、ＥＣＣにより訂正および誤り検出ができない非データ系の信号でありアドレスを処理する回路の故障に対しては、検出することができないという問題があった。本実施の形態によれば、複数のメモリモジュールのいずれを選択するかを指定するアドレスを処理する選択デコーダ３０３の故障を検出することができる。
【００１８】
［参考例１の半導体装置］
図２は、参考例１の半導体装置４００の構成を表わす図である。
【００１９】
図２を参照して、この半導体装置４００は、第１のメモリモジュール４１と、第２のメモリモジュール４２と、フラッシュメモリ３５０と、ＥＣＣエンコーダ２１と、冗長制御回路３１〜３４とを備える。半導体装置４００は、さらに、セレクタ５１と、ＥＣＣデコーダ２２と、アドレス分割器６１と、選択デコーダ６２と、冗長デコーダ６８と、割り込み制御部２０１と、ＣＰＵ２０２と、フリップフロップ（ＦＦ）７１，７２とを備える。
【００２０】
第１のメモリモジュール４１および第２のメモリモジュール４２は、たとえば、半導体装置の設計環境において、ライブラリとして提供されるＳＲＡＭ（Static Random Access Memory）マクロである。第１のメモリモジュール４１および第２のメモリモジュール４２は、それぞれ「メモリユニット」、「メモリブロック」、「メモリマクロ」という語で表わすこともできる。
【００２１】
第１のメモリモジュール４１は、複数個のＳＲＡＭメモリセルを有するメモリアレイ４３と、ＳＲＡＭロジック回路とを備える。
【００２２】
メモリアレイ４３は、正規ブロック３６３と、冗長ブロック３６４とを含む。正規ブロック３６３は、複数の正規メモリセル列からなる。複数の正規メモリセル列は、不良でない限り、データの書き込み箇所となる。冗長ブロック３６４は、１以上の冗長メモリセル列からなる。１以上の冗長メモリセル列は、正規ブロック３６３に含まれる複数の正規メモリセル列のうち、不良のメモリセルを有する不良メモリセル列を救済するために設けられる。１以上の冗長メモリセル列は、不良メモリセル列の代わりに、データの書き込み箇所となる。
【００２３】
第２のメモリモジュール４２は、複数個のＳＲＡＭメモリセルを有するメモリアレイ４４と、ＳＲＡＭロジック回路とを備える。メモリアレイ４４は、正規ブロック３６５と、冗長ブロック３６６とを含む。正規ブロック３６５は、複数の正規メモリセル列からなる。冗長ブロック３６６は、１以上の冗長メモリセル列からなる。
【００２４】
図３は、参考例１の第１のメモリモジュール４１の構成を表わす図である。第２のメモリモジュール４２の構成も、これと同様である。
【００２５】
図３を参照して、第１のメモリモジュール４１は、アドレス入力端子ＡＤＡと、クロック入力端子ＣＫと、データ入出力端子ＤＡと、メモリアレイＭＡＲＹと、ワード線駆動回路ＷＤと、データ入出力部ＩＯと、制御部ＣＴＲＬとを備える。
【００２６】
アドレス入力端子ＡＤＡには、アドレス分割器６１から送られる第２のアドレスビットＡｄｄ［０：Ｎ−１］が入力される。クロック入力端子ＣＫには、クロックＣＬＫが入力される。データ入出力端子ＤＡには、データ信号Ｄ１［０：Ｍ］が入出力される。
【００２７】
メモリアレイＭＡＲＹは、ワード線ＷＬ０〜ＷＬｉによって選択される複数のメモリセルを有する。
【００２８】
制御部ＣＴＲＬは、ラッチ回路１＿０〜１＿Ｎ−１で構成される一時記憶回路６５０と、アドレスデコーダＡＤＲＣＴＬとを備える。ラッチ回路１＿０〜１＿Ｎ−１は、アドレスビットＡｄｄ［０］〜Ａｄｄ［Ｎ−１］をクロックＣＬＫに同期して取り込み、内部アドレスビットＡＱ１［０］〜ＡＱ１［Ｎ−１］として出力する。ラッチ回路１＿０〜１＿Ｎ−１は、クロックＣＬＫのエッジが入力されるまでは、取り込んだアドレスビットＡｄｄ［０］〜Ａｄｄ［Ｎ−１］を保持し続ける。アドレスデコーダＡＤＲＣＴＬは、内部アドレスビットＡＱ１［０］〜ＡＱ１［Ｎ−１］に基づいてアドレスデコード信号（Ｘ０〜Ｘｉ及びＹ０〜Ｙｊ）を出力する。
【００２９】
ワード線駆動回路ＷＤは、アドレスデコード信号のうちの行選択信号Ｘ０〜Ｘｉに基づいて、メモリアレイＭＡＲＹの対応するワード線ＷＬを選択して駆動する。
【００３０】
データ入出力部ＩＯは、メモリアレイＭＡＲＹ内のワード線ＷＬによって選択されたメモリセルのデータをデータ入出力端子ＤＡを通じて、データ信号Ｄ１［０：Ｍ］として出力する。
【００３１】
データ入出力部ＩＯは、メモリアレイＭＡＲＹ内のワード線ＷＬによって選択されメモリセルにデータ入出力端子ＤＡを通じて入力されるデータ信号Ｄ１［０：Ｍ］を書き込む。
【００３２】
再び、図２を参照して、アドレス分割器６１は、ＣＰＵ２０２から出力される（Ｎ＋１）ビットのアドレス信号Ａ［０：Ｎ］を最上位ビットである第１のアドレスビットＡｄｄ［Ｎ］（上位の第２の個数のビット）と、Ｎビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］（下位の第１の個数のビット）に分割する。Ｎビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］が、第１のメモリモジュール４１および第２のメモリモジュール４２に供給される。アドレス分割器６１は、タイミング制御のために、第１のアドレスビットＡｄｄ［Ｎ］および第２のアドレスビットＡｄｄ［０：Ｎ−１］をラッチするラッチ回路を備える。
【００３３】
ＥＣＣエンコーダ２１は、ライトデータであるデータ信号Ｄａｔａ［０：Ｍ］を誤り訂正検出符号化して、誤り訂正検出符号化されたデータを第１のメモリモジュール４１および第２のメモリモジュール４２へ出力する。具体的には、ＥＣＣエンコーダ２１は、（Ｍ＋１）ビットのデータ信号Ｄａｔａ［０：Ｍ］の誤り訂正検出のためのｓビットの検査ビットを生成し、検査ビットが付加された（Ｍ＋ｓ＋１）ビットのデータ信号ＥＤａｔａ［０：Ｍ＋ｓ］を誤り検出訂正符号化データとして生成する。
【００３４】
検査ビットは、Ｘビット以下の訂正可能で、Ｙビット（Ｙ＞Ｘ）以下の誤り検出を可能とするコードである。たとえば、検査ビットは、SEC-DED（Single Error-Correcting Double-Error-Detecting） Code 、つまり、１ビット誤りを訂正し、かつ２ビット誤りを検出することができる誤り訂正符号とすることができる。
【００３５】
選択デコーダ６２は、選択許可信号ＣＥＮと、第１のアドレスビットＡｄｄ［Ｎ］に基づいて、第１の選択信号ｃｅｎ１のレベルと、第２の選択信号ｃｅｎ２のレベルとを制御する。選択デコーダ６２は、選択許可信号ＣＥＮが活性化レベルの「１」であり、かつ第１のアドレスビットＡｄｄ［Ｎ］が「１」のときには、第１の選択信号ｃｅｎ１のレベルを活性化レベルの「１」に設定するとともに、第２の選択信号ｃｅｎ２のレベルを非活性化レベルの「０」に設定する。選択デコーダ６２は、選択許可信号ＣＥＮが活性化レベルの「１」であり、かつ第１のアドレスビットＡｄｄ［Ｎ］が「０」のときには、第１の選択信号ｃｅｎ１のレベルを非活性化レベルの「０」に設定するとともに、第２の選択信号ｃｅｎ２のレベルを活性化レベルの「１」に設定する。選択デコーダ６２は、選択許可信号ＣＥＮが非活性化レベルの「０」のときには、第１の選択信号ｃｅｎ１のレベルを非活性化レベルの「０」に設定するとともに、第２の選択信号ｃｅｎ２のレベルを非活性化レベルの「０」に設定する。
【００３６】
フラッシュメモリ３５０は、正規ブロック３６３内に存在する不良メモリセル列を示すアドレス信号Ｃ＿Ａｄｄ１、正規ブロック３６５内に存在する不良メモリセル列Ｃ＿Ａｄｄ２を示すアドレスとを記憶する。
【００３７】
冗長デコーダ６８は、正規ブロック３６３内の複数の正規メモリ列の中の不良メモリセル列のアドレス信号Ｃ＿Ａｄｄ１をデコードして、アドレスデコード信号Ｒ１を出力する。冗長デコーダ６８は、正規ブロック３６５内の複数の正規メモリ列の中の不良メモリセル列のアドレス信号Ｃ＿Ａｄｄ２をデコードして、アドレスデコード信号Ｒ２を出力する。
【００３８】
冗長制御回路３１は、データの書き込み時に、アドレスデコード信号Ｒ１に従って、正規ブロック３６３内の不良メモリセル列の代わりに、冗長ブロック３６４内の冗長メモリセル列にＥＣＣエンコーダ２１の出力が書き込まれるように制御する。たとえば、メモリアレイ４３内の右側に冗長ブロック３６４が配置され、複数のデータ入出力線が、正規メモリセル列の複数のビット線と接続されている場合に、冗長制御回路３１は、データの書き込み時に、不良メモリセル列のビット線と接続されているデータ入出力線およびそれよりも右側に配置されるデータ入出力線が、１つ右のビット線と接続されるように制御する。
【００３９】
冗長制御回路３２は、データの書き込み時に、アドレスデコード信号Ｒ２に従って、正規ブロック３６５内の不良メモリセル列の代わりに、冗長ブロック３６６内の冗長メモリセル列にＥＣＣエンコーダ２１の出力が書き込まれるように制御する。
【００４０】
第１のメモリモジュール４１では、データの書き込み時に、第１の選択信号ｃｅｎ１が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所に、誤り検出訂正符号化データＥｄａｔａ［０：Ｍ＋ｓ］が書き込まれ、第１の選択信号ｃｅｎ１が「０」のときに、誤り検出訂正符号化データＥｄａｔａ［０：Ｍ＋ｓ］が書き込まれない。第２のメモリモジュール４２では、データの書き込み時に、第２の選択信号ｃｅｎ２が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所に、誤り検出訂正符号化データＥｄａｔａ［０：Ｍ＋ｓ］が書き込まれ、第２の選択信号ｃｅｎ２が「０」のときに、誤り検出訂正符号化データＥｄａｔａ［０：Ｍ＋ｓ］が書き込まれない。
【００４１】
第１のメモリモジュール４１では、データの読出し時に、第１の選択信号ｃｅｎ１が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所から、記憶されているデータ信号Ｑ１が出力される。第１のメモリモジュール４１では、データの読出し時に、第１の選択信号ｃｅｎ１が「０」のときに、記憶されているデータ信号Ｑ１が出力されない。第２のメモリモジュール４２では、第２の選択信号ｃｅｎ２が「１」のときに、データの読出し時に、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所から、記憶されているデータ信号Ｑ２が出力される。第２のメモリモジュール４２では、データの読出し時に、第２の選択信号ｃｅｎ２が「０」のときに、記憶されているデータ信号Ｑ２が出力されない。
【００４２】
冗長制御回路３３は、データの読出し時に、アドレスデコード信号Ｒ１に従って、正規ブロック３６３内の不良メモリセル列の代わりに、冗長ブロック３６４内の冗長メモリセル列からデータが読み出されるように制御する。たとえば、メモリアレイ４３内の右側に冗長ブロック３６４が配置され、複数のデータ入出力線が、正規メモリセル列の複数のビット線と接続されている場合に、冗長制御回路３３は、データの読み出し時に、不良メモリセル列のビット線と接続されているデータ入出力線およびそれよりも右側に配置されるデータ入出力線が、１つ右のビット線と接続されるように制御する。
【００４３】
冗長制御回路３４は、データの読出し時に、アドレスデコード信号Ｒ２に従って、正規ブロック３６５内の不良メモリセル列の代わりに、冗長ブロック３６６内の冗長メモリセル列からデータが読み出されるように制御する。
【００４４】
セレクタ５１は、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルに基づいて、第１のメモリモジュール４１から出力されるデータ信号Ｑ１と第２のメモリモジュール４２から出力されるデータ信号Ｑ２のうちのいずれかを選択して、ＥＣＣデコーダ２２へ出力する。
【００４５】
セレクタ５１は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」、かつ第２の選択信号ｃｅｎ２のレベルが非活性化レベルの「０」のときに、第１のメモリモジュール４１から出力されるデータ信号Ｑ１を選択して、ＥＣＣデコーダ２２へ出力する。セレクタ５１は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、第２のメモリモジュール４２から出力されるデータ信号Ｑ２を選択して、ＥＣＣデコーダ２２へ出力する。セレクタ５１は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」、かつ第２の選択信号ｃｅｎ２のレベルが非活性化レベルの「０」のときに、第１のメモリモジュール４１から出力されるデータ信号Ｑ１および第２のメモリモジュール４２から出力されるデータ信号Ｑ２のうちのいずれかを選択して出力する。セレクタ５１は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、第１のメモリモジュール４１から出力されるデータ信号Ｑ１および第２のメモリモジュール４２から出力されるデータ信号Ｑ２のうちいずれかを選択して出力する。ｃｅｎ１＝「１」かつｃｅｎ２＝「１」、およびｃｅｎ１＝「０」かつｃｅｎ２＝「０」のときにいずれを選択するかは、予め明示的に定められた方を選択する、前回選択していた方を選択する、または論理設計によってマッピングされた論理ゲートによって決まる方を選択するなどのいずれであってもよい。
【００４６】
ＥＣＣデコーダ２２は、セレクタ５１の出力を誤り検出訂正する。ＥＣＣデコーダ２２は、セレクタ５１の出力の誤りを検出すると、故障通知信号ＥＲＲＯＲを出力する。割り込み制御部２０１は、故障通知信号ＥＲＲＯＲを受信すると、ＣＰＵ２０２に故障を検知したことを割り込み通知する。
【００４７】
ＣＰＵ２０２は、半導体装置の全体を制御する。ＣＰＵ２０２は、割り込み制御部２０１から故障の割り込み通知を受信すると、必要な処理を行なう。
【００４８】
ＦＦ７１は、選択デコーダ６２からセレクタ５１への第１の選択信号ｃｅｎ１の伝送経路の途中に設けられる。ＦＦ７２は、選択デコーダ６２からセレクタ５１への第２の選択信号ｃｅｎ２の伝送経路の途中に設けられる。ＦＦ７１、ＦＦ７２、第１のメモリモジュール４１、および第２のメモリモジュール４２に供給されるクロックは、同一である。
【００４９】
ＦＦ７１は、第１の選択信号ｃｅｎ１がセレクタ５１に送られるタイミングと、第１のメモリモジュール４１からの出力Ｑ１がセレクタ５１に送られるタイミングとの同期を採るために設けられる。ＦＦ７２は、第２の選択信号ｃｅｎ２がセレクタ５１に送られるタイミングと、第２のメモリモジュール４２からの出力Ｑ２がセレクタ５１に送られるタイミングとの同期を採るために設けられる。このような同期制御が必要なのは、第１のメモリモジュール４１および第２のメモリモジュール４２において、データ出力のために、クロックＣＬＫの１周期分の時間が必要なためである。
【００５０】
参考例１の半導体装置４００では、アドレス信号Ａｄｄ［０：Ｎ］を処理する選択デコーダ６２およびそれに関連する配線の故障、およびアドレス信号Ｃ＿Ａｄｄ１およびＣ＿Ａｄｄ２を処理する冗長デコーダ６８およびそれに関連する配線の故障を検出することできないという問題がある。
【００５１】
［第２の実施形態］
図４は、第２の実施形態の半導体装置５００の構成を表わす図である。
【００５２】
この半導体装置５００は、第１のメモリモジュール４５と、第２のメモリモジュール４６と、ＥＣＣエンコーダ２１と、セレクタ５１と、ＥＣＣデコーダ２２と、アドレス分割器６１と、選択デコーダ６２と、故障判定部１２１と、割り込み制御部２０１と、ＣＰＵ２０２と、ＦＦ７１，７２とを備える。
【００５３】
第２の実施形態のＥＣＣエンコーダ２１、アドレス分割器６１、選択デコーダ６２、ＥＣＣデコーダ２２、ＦＦ７１，７２、セレクタ５１、割り込み制御部２０１、およびＣＰＵ２０２は、参考例１と同様なので、説明を繰り返さない。
【００５４】
第１のメモリモジュール４５は、参考例１の第１のメモリモジュール４１と同様に、複数個のＳＲＡＭメモリセルを有するメモリアレイと、ＳＲＡＭロジック回路とを備える。第１のメモリモジュール４５は、冗長列救済機能を有さないものとする。
【００５５】
第２のメモリモジュール４６は、参考例２の第２のメモリモジュール４２と同様に、複数個のＳＲＡＭメモリセルを有するメモリアレイと、ＳＲＡＭロジック回路とを備える。第２のメモリモジュール４６は、冗長列救済機能を有さないものとする。
【００５６】
故障判定部１２１は、第１の選択信号ｃｅｎ１のレベル、第２の選択信号ｃｅｎ２のレベル、および選択許可信号ＣＥＮのレベルに基づいて、選択デコーダ６２が故障か否かを判定する。故障判定部１２１は、選択デコーダ６２が故障であると判定したときには、故障通知信号ＥＲＲＯＲを割り込み制御部２０１へ出力する。
【００５７】
図５は、選択デコーダ６２が正常な場合における、入力（選択許可信号ＣＥＮ、アドレス信号の最上位ビットＡｄｄ［Ｎ］）と、出力（第１の選択信号ｃｅｎ１、第２の選択信号ｃｅｎ２）との関係を表わす図である。
【００５８】
選択デコーダ６２は、正常な場合に、選択許可信号ＣＥＮのレベルが活性化レベルの「１」であり、かつアドレス信号の最上位ビットＡｄｄ［Ｎ］が「１」のときに、第１の選択信号ｃｅｎ１のレベルを活性化レベルの「１」に設定するとともに、第２の選択信号ｃｅｎ２のレベルを非活性化レベルの「０」に設定する。選択デコーダ６２は、正常な場合に、選択許可信号ＣＥＮのレベルが活性化レベルの「１」であり、かつアドレス信号の最上位ビットＡｄｄ［Ｎ］が「０」のときに、第１の選択信号ｃｅｎ１のレベルを非活性化レベルの「０」に設定するとともに、第２の選択信号ｃｅｎ２のレベルを活性化レベルの「１」に設定する。選択デコーダ６２は、正常な場合に、選択許可信号ＣＥＮのレベルが「０」のときに、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルに係らず、第１の選択信号ｃｅｎ１のレベルを非活性化レベルの「０」に設定するとともに、第２の選択信号ｃｅｎ２のレベルを非活性化レベルの「０」に設定する。
【００５９】
図６は、選択デコーダ６２の故障判定手順を表わすフローチャートである。
図６を参照して、ステップＳ３０１において、選択許可信号ＣＥＮのレベルが「１」のときには（ＹＥＳ）、処理がステップＳ３０２に進み、選択許可信号ＣＥＮのレベルが「０」のときには（ＮＯ）、処理がステップＳ３０３に進む。
【００６０】
ステップＳ３０２において、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルの両方が「１」または「０」のときには（ＹＥＳ）、処理がステップＳ３０５に進み、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルのうちの一方が「１」で、他方が「０」のときには（ＮＯ）、処理がステップＳ３０４に進む。
【００６１】
ステップＳ３０３において、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルのうちの両方が「０」のときには（ＹＥＳ）、処理がステップＳ３０４に進み、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルのうちの少なくとも１つが「１」のときには（ＮＯ）、処理がステップＳ３０５に進む。
【００６２】
ステップＳ３０４において、故障判定部１２１は、選択デコーダ６２が正常状態であると判定する。
【００６３】
ステップＳ３０５において、故障判定部１２１は、選択デコーダ６２が故障状態であると判定する。故障判定部１２１は、故障通知信号ＥＲＲＯＲを割り込み制御部２０１へ出力する。割り込み制御部２０１は、故障通知信号ＥＲＲＯＲを受信すると、ＣＰＵ２０２に故障を通知する。
【００６４】
なお、上記において、選択許可信号ＣＥＮのレベルが「１」のときには、第１の選択信号ｃｅｎ１と第２の選択信号ｃｅｎ２のうちのいずれか一方のみが反転した場合のみ、選択デコーダ６２の故障状態と判定したのは、発生頻度の高いシングル故障を検出するためである。
【００６５】
以上のように、本実施の形態では、第１の選択信号ｃｅｎ１のレベル、第２の選択信号ｃｅｎ２のレベル、および選択許可信号ＣＥＮのレベルに基づいて、選択デコーダ６２が故障か否かを判定することができる。
【００６６】
［第３の実施形態］
図７は、第３の実施形態の半導体装置６００の構成を表わす図である。
【００６７】
この半導体装置６００は、第１のメモリモジュール４５と、第２のメモリモジュール４６と、ＥＣＣエンコーダ２１と、セレクタ１４９と、ＥＣＣデコーダ２２と、アドレス分割器６１と、選択デコーダ６２と、故障判定部１３１と、割り込み制御部２０１と、ＣＰＵ２０２と、ＦＦ７１，７２とを備える。
【００６８】
第３の実施形態の第１のメモリモジュール４５、第２のメモリモジュール４６、ＥＣＣエンコーダ２１、ＥＣＣデコーダ２２、アドレス分割器６１、選択デコーダ６２、割り込み制御部２０１、ＣＰＵ２０２、およびＦＦ７１，７２は、第２の実施形態と同様なので、説明を繰り返さない。
【００６９】
故障判定部１３１は、第２の実施形態の故障判定部１２１と同様にして、選択デコーダ６２が故障か否かを判定する。故障判定部１３１は、選択デコーダ６２が故障であると判定した場合に、故障検知信号ＥＲをセレクタ１４９へ出力する。
【００７０】
セレクタ１４９は、故障検知信号ＥＲを受信すると、第１のメモリモジュール４５と第２のメモリモジュール４６のうち、選択した方から出力されるデータの複数ビットのうち、Ｘビットを反転させる。Ｘビットは、ＥＣＣデコーダ２２において誤り訂正可能なビット数の上限を超え、かつ誤り検出可能なビット数の上限以下のビット数である。検査ビットは、SEC-DED Codeの場合、Ｘ＝２となる。
【００７１】
本実施の形態によれば、新たな回路を設けることなく、アドレス信号Ａｄｄ［０：Ｎ］を処理する選択デコーダ６２およびそれに関連する配線の故障を検知することができる。
【００７２】
［第４の実施形態］
図８は、第４の実施形態の半導体装置７００の構成を表わす図である。
【００７３】
この半導体装置７００は、第１のメモリモジュール４５と、第２のメモリモジュール４６と、ＥＣＣエンコーダ２１と、セレクタ１４１と、セレクタ１４２と、ＥＣＣデコーダ１２２と、アドレス分割器６１と、選択デコーダ６２と、割り込み制御部２０１と、ＣＰＵ２０２と、ＦＦ７３，７４，７５，７６とを備える。
【００７４】
第４の実施形態の第１のメモリモジュール４５、第２のメモリモジュール４６、ＥＣＣエンコーダ２１、アドレス分割器６１、選択デコーダ６２、割り込み制御部２０１、およびＣＰＵ２０２は、第２の実施形態と同様なので、説明を繰り返さない。
【００７５】
データの読み出し時に、第１のメモリモジュール４５から出力されるデータを構成する複数ビットは、グループＡ（第１グループ）の複数のビットＱａと、グループＢ（第２グループ）の複数のビットＱｂに分類される。第１のメモリモジュール４５は、グループＡの複数ビットＱａをセレクタ１４１へ出力し、グループＢの複数ビットＱｂをセレクタ１４２へ出力する。
【００７６】
データの読み出し時に、第２のメモリモジュール４６から出力されるデータを構成する複数ビットは、グループＣ（第１グループ）の複数のビットＱｃと、グループＤ（第２グループ）の複数のビットＱｄに分類される。第２のメモリモジュール４６は、グループＣの複数ビットＱｃをセレクタ１４１へ出力し、グループＤの複数ビットＱｄをセレクタ１４２へ出力する。
【００７７】
グループＡの複数のビットＱａの位置とグループＣの複数のビットＱｃの位置は、同じである。グループＢの複数のビットＱｂの位置とグループＤの複数のビットＱｄの位置は、同じである。
【００７８】
たとえば、グループＡの複数ビットＱａは、第１のメモリモジュール４６から出力される複数ビットの中の奇数ビット、グループＢの複数ビットＱｂは、第１のメモリモジュール４６から出力される複数ビットの中の偶数ビットとすることができる。グループＣの複数ビットＱｃは、第２のメモリモジュール４６から出力される複数ビットの中の奇数ビット、グループＤの複数ビットＱｄは、第２のメモリモジュール４６から出力される複数ビットの中の奇数ビットとすることができる。
【００７９】
あるいは、グループＡの複数ビットＱａは、第１のメモリモジュール４６から出力される複数ビットの中のＭＳＢ（Most Significant Bit）側の上位半分のビット、グループＢの複数ビットＱｂは、第１のメモリモジュール４６から出力される複数ビットの中のＬＳＢ（Least Significant Bit）側の下位半分のビットとすることができる。グループＣの複数ビットＱｃは、第２のメモリモジュール４６から出力される複数ビットの中のＭＳＢ側の上位半分のビット、グループＤの複数ビットＱｄは、第２のメモリモジュール４６から出力される複数ビットの中のＬＳＢ側の下位半分のビットとすることができる。
【００８０】
セレクタ１４１は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、第１のメモリモジュール４５から出力されるグループＡの複数のビットＱａと、第２のメモリモジュール４６から出力されるグループＣの複数のビットＱｃのうち、グループＡの複数のビットＱａを選択して、ＥＣＣデコーダ２２へ出力する。
【００８１】
セレクタ１４１は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、第１のメモリモジュール４５から出力されるグループＡの複数のビットＱａと、第２のメモリモジュール４６から出力されるグループＣの複数のビットＱｃのうち、グループＣの複数のビットＱｃを選択して、ＥＣＣデコーダ２２へ出力する。
【００８２】
セレクタ１４１は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、第１のメモリモジュール４５から出力されるグループＡの複数のビットＱａと、第２のメモリモジュール４６から出力されるグループＣの複数のビットＱｃのうちいずれかを出力する。
【００８３】
セレクタ１４１は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、第１のメモリモジュール４５から出力されるグループＡの複数のビットＱａと、第２のメモリモジュール４６から出力されるグループＣの複数のビットＱｃのうちいずれかを出力する。
【００８４】
セレクタ１４２は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、第１のメモリモジュール４５から出力されるグループＢの複数のビットＱｂと、第２のメモリモジュール４６から出力されるグループＤの複数のビットＱｄのうち、グループＢの複数のビットＱｂを選択して、ＥＣＣデコーダ２２へ出力する。
【００８５】
セレクタ１４２は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、第１のメモリモジュール４５から出力されるグループＢの複数のビットＱｂと、第２のメモリモジュール４６から出力されるグループＤの複数のビットＱｄのうち、グループＤの複数のビットＱｄを選択して、ＥＣＣデコーダ２２へ出力する。
【００８６】
セレクタ１４２は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、第１のメモリモジュール４５から出力されるグループＢの複数のビットＱｂと、第２のメモリモジュール４６から出力されるグループＤの複数のビットＱｄのうちいずれかを出力する。
【００８７】
セレクタ１４２は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、第１のメモリモジュール４５から出力されるグループＢの複数のビットＱｂと、第２のメモリモジュール４６から出力されるグループＤの複数のビットＱｄのうちいずれかを出力する。
【００８８】
ＥＣＣデコーダ１２２は、セレクタ１４１の出力とセレクタ１４２の出力とを合成したビットを誤り検出訂正する。ＥＣＣデコーダ１２２は、合成したビットの誤りを検出すると、故障通知信号ＥＲＲＯＲを出力する。
【００８９】
ＦＦ７３は、選択デコーダ６２からセレクタ１４１への第１の選択信号ｃｅｎ１の伝送経路の途中に設けられる。ＦＦ７４は、選択デコーダ６２からセレクタ１４１への第２の選択信号ｃｅｎ２の伝送経路の途中に設けられる。ＦＦ７５は、選択デコーダ６２からセレクタ１４２への第１の選択信号ｃｅｎ１の伝送経路の途中に設けられる。ＦＦ７６は、選択デコーダ６２からセレクタ１４２への第２の選択信号ｃｅｎ２の伝送経路の途中に設けられる。ＦＦ７３、ＦＦ７４、ＦＦ７５、ＦＦ７６、第１のメモリモジュール４５、および第２のメモリモジュール４６に供給されるクロックは、同一である。
【００９０】
以上のような構成によって、ＦＦ７３、ＦＦ７４、ＦＦ７５、またはＦＦ７６の故障を検出することができる。
【００９１】
たとえば、ｃｅｎ１＝１、ｃｅｎ２＝０の場合に、ＦＦ７３が正常のときには、セレクタ１４１は、グループＡの複数のビットＱａを出力するが、ＦＦ７３が故障のときには、セレクタ１４１が、グループＡの複数のビットＱａを出力するか、グループＣの複数のビットＱｃを出力するかは不確定である。グループＣの複数のビットＱｃが出力されたときには、ＥＣＣデコーダ１２２は、グループＢの複数のビットＱｂと、グループＣの複数のビットＱｃとを合成したビットを誤り検出訂正することによって、誤りを検出する。これによって、ＦＦ７３〜ＦＦ７６のいずれかに故障があったことを検出することができる。
【００９２】
［第５の実施形態］
図９は、第５の実施形態の半導体装置８００の構成を表わす図である。
【００９３】
図９を参照して、この半導体装置８００は、メモリモジュール４７と、ＥＣＣエンコーダ２１と、冗長制御回路３５，３６と、ＥＣＣデコーダ２２と、冗長デコーダ１６８と、エンコーダ１５１と、比較器１５２と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【００９４】
ＥＣＣエンコーダ２１、ＥＣＣデコーダ２２、割り込み制御部２０１、およびＣＰＵ２０２は、参考例１と同様なので、説明を繰り返さない。
【００９５】
メモリモジュール４７は、複数個のＳＲＡＭメモリセルを有するメモリアレイ１５５と、ＳＲＡＭロジック回路とを備える。
【００９６】
メモリアレイ１５５は、正規ブロック１５３と、冗長ブロック１５４とを含む。正規ブロック１５３は、複数の正規メモリセル列からなる。複数の正規メモリセル列は、不良でない限り、データの書き込み箇所となる。冗長ブロック１５４は、１以上の冗長メモリセル列からなる。１以上の冗長メモリセル列は、正規ブロック１５３に含まれる複数の正規メモリセル列のうち、不良のメモリセルを有する不良メモリセル列を救済するために設けられる。１以上の冗長メモリセル列は、不良メモリセル列の代わりに、データの書き込み箇所となる。
【００９７】
冗長デコーダ１６８は、正規ブロック１５３内の複数の正規メモリ列の中の不良メモリセル列のアドレス信号Ｃ＿Ａｄｄをデコードして、アドレスデコード信号Ｒ１を出力する。
【００９８】
冗長制御回路３５は、データの書き込み時に、アドレスデコード信号Ｒ１に従って、正規ブロック１５３内の不良メモリセル列の代わりに、冗長ブロック１５４内の冗長メモリセル列にＥＣＣエンコーダ２１の出力が書き込まれるように制御する。
【００９９】
メモリモジュール４７では、データの書き込み時に、アドレス信号Ａｄｄ［０：Ｎ］で指定される箇所に、誤り検出訂正符号化データＥｄａｔａ［０：Ｍ＋ｓ]が書き込まれる。
【０１００】
メモリモジュール４７では、データの読出し時に、アドレス信号Ａｄｄ［０：Ｎ］で指定される箇所から、記憶されているデータ信号Ｑ１が出力される。
【０１０１】
冗長制御回路３６は、アドレスデコード信号Ｒ１に従って、正規ブロック１５３内の不良メモリセル列の代わりに、冗長ブロック１５４内の冗長メモリセル列からデータが読み出されるように制御する。
【０１０２】
エンコーダ１５１は、アドレスデコード信号Ｒ１をエンコードして、正規ブロック１５３内の複数の正規メモリ列の中の不良メモリセル列のアドレス信号Ｃ＿Ａｄｄ′を出力する。このエンコードは、冗長デコーダ１６８のデコード（変換）の逆変換である。
【０１０３】
比較器１５２は、エンコーダ１５１から出力されるアドレス信号Ｃ＿Ａｄｄ′と、冗長デコーダ１６８に入力されるアドレス信号Ｃ＿Ａｄｄを比較し、不一致の場合に、故障通知信号ＥＲＲＯＲを出力する。
【０１０４】
以上の構成によって、冗長デコーダ１６８が故障状態のときに、アドレス信号Ｃ＿Ａｄｄから生成されるアドレスデコード信号Ｒ１が誤った信号となり、アドレスデコード信号Ｒ１をエンコードして得られるアドレス信号Ｃ＿Ａｄｄ′が、アドレス信号Ｃ＿Ａｄｄと相違する。この相違を検出することによって、冗長デコーダ１６８の故障を判定することができる。
【０１０５】
［第６の実施形態］
図１０は、第６の実施形態の半導体装置９００の構成を表わす図である。
【０１０６】
図１０を参照して、この半導体装置９００は、メモリモジュール４７と、ＥＣＣエンコーダ２１と、冗長制御回路３５，３６と、ＥＣＣデコーダ２２と、冗長デコーダ１６８，１６９と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【０１０７】
メモリモジュール４７、ＥＣＣエンコーダ２１、割り込み制御部２０１と、ＣＰＵ２０２は、第５の実施形態と同様なので、説明を繰り返さない。
【０１０８】
冗長デコーダ１６８は、データの書込み時に、正規ブロック１５３内の複数の正規メモリ列の中の不良メモリセル列のアドレス信号Ｃ＿Ａｄｄをデコードして、アドレスデコード信号Ｒ１を出力する。
【０１０９】
冗長制御回路３５は、データの書き込み時に、アドレスデコード信号Ｒ１に従って、正規ブロック１５３内の不良メモリセル列の代わりに、冗長ブロック１５４内の冗長メモリセル列にＥＣＣエンコーダ２１の出力が書き込まれるように制御する。
【０１１０】
冗長デコーダ１６９は、データの読み出し時に、正規ブロック１５３内の複数の正規メモリ列の中の不良メモリセル列のアドレス信号Ｃ＿Ａｄｄをデコードして、アドレスデコード信号Ｒ２を出力する。
【０１１１】
冗長制御回路３６は、データの読み出し時に、アドレスデコード信号Ｒ２に従って、正規ブロック１５３内の不良メモリセル列の代わりに、冗長ブロック１５４内の冗長メモリセル列からデータが読み出されるように制御する。
【０１１２】
ＥＣＣデコーダ２２は、冗長制御回路３６で読出が制御されたメモリモジュール４７からの出力を誤り検出訂正する。ＥＣＣデコーダ２２は、メモリモジュール４７の出力の誤りを検出すると、故障通知信号ＥＲＲＯＲを出力する。冗長デコーダ１６８および冗長デコーダ１６９のうち少なくとも１つが故障状態のため、アドレスデコード信号Ｒ１とアドレスデコード信号Ｒ２とが相違するときには、ＥＣＣデコーダ２２がメモリモジュール４７の出力の誤りを検出する。割り込み制御部２０１は、故障通知信号ＥＲＲＯＲを受信すると、ＣＰＵ２０２に故障を検知したことを割り込み通知する。
【０１１３】
［第７の実施形態］
図１１は、第７の実施形態の半導体装置１０００の構成を表わす図である。
【０１１４】
図１１を参照して、この半導体装置１０００は、メモリモジュール１６１と、ＥＣＣエンコーダ２２１と、ＥＣＣデコーダ２２２と、比較器１６６と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【０１１５】
割り込み制御部２０１と、ＣＰＵ２０２は、参考例１と同様なので、説明を繰り返さない。
【０１１６】
メモリモジュール１６１は、複数個のＳＲＡＭセルを含むメモリアレイ１６２と、制御部ＣＴＲＬなどのＳＲＡＭロジックとを備える。
【０１１７】
メモリアレイ１６２は、データ信号Ｄａｔａ［０：Ｍ］を記憶するデータ領域１６３と、アドレス信号Ａｄｄ［０：Ｎ］を記憶するアドレス領域１６４と、データ信号Ｄａｔａ［０：Ｍ］とアドレス信号Ａｄｄ［０：Ｎ］とに基づいて生成された検査ビットを記憶する検査ビット領域１６５とを含む。データ領域１６３は、（Ｍ＋１）個の列からなる。アドレス領域１６４は、（Ｎ＋１）個の列からなる。検査ビット領域１６５は、Ｓ個の列からなる。
【０１１８】
図１２は、第７の実施形態のメモリアレイ１６２に記憶されるデータの構成を表わす図である。
【０１１９】
メモリアレイ１６２の１行には、（Ｍ＋１）ビットのデータ信号Ｄａｔａ［０：Ｍ］と、（Ｎ＋１）ビットのアドレス信号Ａｄｄ［０：Ｎ］と、Ｓビットの検査ビットとからなるビット列が記憶される。
【０１２０】
図３に示すような一時記憶回路６５０およびアドレスデコーダＡＤＲＣＴＬからなる制御部ＣＴＲＬは、メモリアレイ１６２へのデータの書き込み時に書き込み用のアドレスＡｄｄ［０：Ｎ］をデコードして第１のアドレスデコード信号ＷＲを出力する。
【０１２１】
ＥＣＣエンコーダ２２１は、データの書き込み時に、データ信号Ｄａｔａ［０：Ｍ］と、書き込み用のアドレス信号Ａｄｄ［０：Ｎ］とからなるビット列を誤り検出訂正符号化して、Ｓビットの検査ビットを生成する。
【０１２２】
メモリアレイ１６２内の第１のアドレスデコード信号ＷＲで指定される行の位置に、ＥＣＣエンコーダ２２１から出力されるデータＤａｔａ［０：Ｍ］と、書き込み用のアドレスＡｄｄ［０：Ｍ］と、検査ビットとからなるビット列が書き込まれる。
【０１２３】
制御部ＣＴＲＬは、は、メモリアレイ１６２からのデータの読出し時に読出し用のアドレスＡｄｄ［０：Ｎ］をデコードして第２のアドレスデコード信号ＲＲを出力する。
【０１２４】
メモリアレイ１６２は、データの読出し時に、第２のアドレスデコード信号ＲＲで指定される行の位置からデータＤａｔａ′［０：Ｍ］と、アドレスＡｄｄ′［０：Ｎ］と、検査ビットとからなるビット列を出力する。
【０１２５】
ＥＣＣデコーダ２２２は、メモリモジュール１６１から出力されたビット列を誤り検出訂正復号化して、データＤａｔａ″［０：Ｍ］とアドレスＡｄｄ″［０：Ｎ］とを出力する。
【０１２６】
比較器１６６は、ＥＣＣデコーダ２２２から出力されるアドレスＡｄｄ″［０：Ｎ］と、読出し用のアドレスＡｄｄ［０：Ｎ］とを比較する。比較器１６６は、不一致の場合に、故障通知信号ＥＲＲＯＲを出力する。
【０１２７】
制御部ＣＴＲＬに故障がない場合に、ＥＣＣデコーダ２２２から出力されるアドレスＡｄｄ″［０：Ｎ］と、読出し用のアドレスＡｄｄ［０：Ｎ］とが一致する。制御部ＣＴＲＬに故障が発生した結果、書き込み用のアドレスをデコードした第１のアドレスデコード信号ＷＲと、書き込み用のアドレスと同一の読出し用のアドレスをデコードした第２のアドレスデコード信号ＲＲとが相違する場合がある。このような場合に、ＥＣＣデコーダ２２２から出力されるアドレスＡｄｄ″［０：Ｎ］と、読出し用のアドレスＡｄｄ［０：Ｎ］とが不一致となる。この不一致を検出することによって、制御部ＣＴＲＬの故障が検出できる。
【０１２８】
［第８の実施形態］
図１３は、第８の実施形態の半導体装置１１００の構成を表わす図である。
【０１２９】
図１３を参照して、この半導体装置１１００は、メモリモジュール１７１と、ＥＣＣエンコーダ３２１と、ＥＣＣデコーダ３２２と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【０１３０】
割り込み制御部２０１と、ＣＰＵ２０２は、参考例１と同様なので、説明を繰り返さない。
【０１３１】
メモリモジュール１７１は、複数個のＳＲＡＭセルを含むメモリアレイ１７２と、制御部ＣＴＲＬなどのＳＲＡＭロジックとを備える。
【０１３２】
メモリアレイ１７２は、データ信号Ｄａｔａ［０：Ｍ］を記憶するデータ領域１７３と、データ信号Ｄａｔａ［０：Ｍ］とアドレス信号Ａｄｄ［０：Ｎ］とに基づいて生成された検査ビットを記憶する検査ビット領域１７４とを含む。データ領域１７３は、（Ｍ＋１）個の列からなる。検査ビット領域１７４は、Ｓ個の列からなる。
【０１３３】
図１４は、第８の実施形態のメモリアレイ１７２に記憶されるデータの構成を表わす図である。
【０１３４】
メモリアレイ１７２の１行には、（Ｍ＋１）ビットのデータ信号Ｄａｔａ［０：Ｍ］と、Ｓビットの検査ビットとからなるビット列が記憶される。
【０１３５】
図３に示すような一時記憶回路６５０およびアドレスデコーダＡＤＲＣＴＬからなる制御部ＣＴＲＬは、メモリアレイ１７２へのデータの書き込み時に書き込み用のアドレスＡｄｄ［０：Ｎ］をデコードして第１のアドレスデコード信号ＷＲを出力する。
【０１３６】
ＥＣＣエンコーダ３２１は、データの書き込み時に、データ信号Ｄａｔａ［０：Ｍ］と、書き込み用のアドレス信号Ａｄｄ［０：Ｎ］とからなるビット列を誤り検出訂正符号化して、Ｓビットの検査ビットを生成する。
【０１３７】
メモリアレイ１７２内の第１のアドレスデコード信号ＷＲで指定される行の位置に、ＥＣＣエンコーダ３２１から出力されるデータＤａｔａ［０：Ｍ］と、検査ビットとからなるビット列が書き込まれる。
【０１３８】
制御部ＣＴＲＬは、メモリアレイ１７２からのデータの読出し時に読出し用のアドレスＡｄｄ［０：Ｎ］をデコードして第２のアドレスデコード信号ＲＲを出力する。
【０１３９】
メモリアレイ１７２は、データの読出し時に、第２のアドレスデコード信号ＲＲで指定される行位置からデータＤａｔａ′［０：Ｍ］と、検査ビットとからなるビット列を出力する。
【０１４０】
ＥＣＣデコーダ３２２は、メモリモジュール１７１から出力されたビット列に読出し用のアドレスＡｄｄ［０：Ｎ］を付加することによって、データＤａｔａ′［０：Ｍ］と、アドレスＡｄｄ［０：Ｎ］と、検査ビットとからなるビット列を生成する。ＥＣＣデコーダ３２２は、生成したビット列を誤り検出訂正復号化して、データＤａｔａ″［０：Ｍ］とアドレスＡｄｄ″［０：Ｎ］とを出力する。ＥＣＣデコーダ３２２は、誤りを検出した場合に、故障通知信号ＥＲＲＯＲを割り込み制御部２０１へ出力する。
【０１４１】
制御部ＣＴＲＬに故障がない場合に、ＥＣＣデコーダ３２２は誤りを検出しない。
制御部ＣＴＲＬに故障が発生した結果、書き込み用のアドレスをデコードした第１のアドレスデコード信号ＷＲと、書き込み用のアドレスと同一の読出し用のアドレスをデコードした第２のアドレスデコード信号ＲＲとが相違する場合がある。このような場合、ＥＣＣデコーダ３２２に入力されるメモリモジュール１７１から読み出された検査ビットは、ＥＣＣデコーダ３２２に入力される読出し用のアドレスＡｄｄ［０：Ｎ］から生成されたものと相違する。よって、ＥＣＣデコーダ３２２は、検査ビットに基づいて、誤りを検出することができる。
【０１４２】
［参考例２］
図１５は、参考例２の半導体装置１２００の構成を表わす図である。図１５において、データ信号Ｄａｔａ［０：Ｍ］を処理する回路および配線は省略されている。
【０１４３】
図１５を参照して、この半導体装置１２００は、アドレス出力機能付き第１のメモリモジュール１８１と、アドレス出力機能付き第２のメモリモジュール１８２と、アドレス分割器６１と、選択デコーダ６２と、ＡＦＢ（Address FeedBack）セレクタ１８３と、ＦＦ７７，７８，７９と、比較器１８４と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【０１４４】
アドレス分割器６１、選択デコーダ６２、割り込み制御部２０１、およびＣＰＵ２０２は、参考例１と同様なので、説明を繰り返さない。
【０１４５】
アドレス出力機能付き第１のメモリモジュール１８１は、実施の形態２の第１のメモリモジュール４５と同様に、複数個のＳＲＡＭメモリセルを有するメモリアレイと、ＳＲＡＭロジック回路とを備える。
【０１４６】
アドレス出力機能付き第１のメモリモジュール１８１およびアドレス出力機能付き第２のメモリモジュール１８２の各々には、アドレス分割器６１から出力されたＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］が入力される。
【０１４７】
図１６は、アドレス出力機能付き第１のメモリモジュール１８１の構成を表わす図である。アドレス出力機能付き第２のメモリモジュール１８２も、これと同様である。
【０１４８】
図１６を参照して、アドレス出力機能付き第１のメモリモジュール１８１が、図３の第１のメモリモジュール４１と相違する点は、アドレス出力機能付き第１のメモリモジュール１８１は、内部アドレスビットＡＱ1［０］〜ＡＱ1［Ｎ−１］（以下、ＡＱ１と称することもある）を出力するための内部アドレス出力端子ＡＱをさらに有することである。アドレス出力機能付き第１のメモリモジュール１８１は、入力されたＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］から生成された内部アドレスビットＡＱ１［０］〜ＡＱ1［Ｎ−１］をアドレス出力端子ＡＱから出力する。
【０１４９】
アドレス出力機能付き第２のメモリモジュール１８２は、入力されたＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］から生成された内部アドレスビットＡＱ２［０］〜ＡＱ２［Ｎ−１］（以下、ＡＱ２と称することもある）をアドレス出力端子ＡＱから出力する。
【０１５０】
アドレス出力機能付き第１のメモリモジュール１８１では、データの書き込み時に、第１の選択信号ｃｅｎ１が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所に、データ信号Ｄａｔａ［０：Ｍ］が書き込まれ、第１の選択信号ｃｅｎ１が「０」のときに、データ信号Ｄａｔａ［０：Ｍ］が書き込まれない。アドレス出力機能付き第１のメモリモジュール１８１では、データの読出し時に、第１の選択信号ｃｅｎ１が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所から、記憶されているデータ信号Ｑ１が出力される。アドレス出力機能付き第１のメモリモジュール１８１では、データの読出し時に、第１の選択信号ｃｅｎ１が「０」のときに、記憶されているデータ信号Ｑ１が出力されない。アドレス出力機能付き第１のメモリモジュール１８１では、第１の選択信号ｃｅｎ１のレベルに係らず、内部アドレスビットＡＱ1［０］〜ＡＱ1［Ｎ−１］を出力する。
【０１５１】
アドレス出力機能付き第２のメモリモジュール１８２では、データの書き込み時に、第２の選択信号ｃｅｎ２が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所に、データ信号Ｄａｔａ［０：Ｍ］が書き込まれ、第２の選択信号ｃｅｎ２が「０」のときに、データ信号Ｄａｔａ［０：Ｍ］が書き込まれない。アドレス出力機能付き第２のメモリモジュール１８２では、データの読出し時に、第２の選択信号ｃｅｎ２が「１」のときに、第２のアドレスビットＡｄｄ［０：Ｎ−１］で指定される箇所から、記憶されているデータ信号Ｑ２が出力される。アドレス出力機能付き第２のメモリモジュール１８２では、データの読出し時に、第２の選択信号ｃｅｎ２が「０」のときに、記憶されているデータ信号Ｑ２が出力されない。アドレス出力機能付き第２のメモリモジュール１８２では、第２の選択信号ｃｅｎ２のレベルに係らず、内部アドレスビットＡＱ２［０］〜ＡＱ２［Ｎ−１］を出力する。
【０１５２】
再び、図１５を参照して、ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルに基づいて、第１のメモリモジュール１８１から出力される内部アドレスビットＡＱ１と第２のメモリモジュール１８２から出力される内部アドレスビットＡＱ２のうちのいずれかを選択して、比較器１８４へ出力する。
【０１５３】
ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「０」のときに、第１のメモリモジュール１８１から出力される内部アドレスビットＡＱ１を選択して、比較器１８４へ出力する。ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、第２のメモリモジュール１８２から出力される内部アドレスビットＡＱ２を選択して、比較器１８４へ出力する。ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、第１のメモリモジュール１８１から出力される内部アドレスビットＡＱ１および第２のメモリモジュール１８２から出力される内部アドレスビットＡＱ２のうちいずれかを出力する。ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、第１のメモリモジュール１８１から出力される内部アドレスビットＡＱ１および第２のメモリモジュール１８２から出力される内部アドレスビットＡＱ２のうちいずれかを出力する。
【０１５４】
比較器１８４は、ＥＲＲＯＲセレクタ２８３から出力される内部アドレスビットＡＱ１またはＡＱ２と、アドレス分割器６１から出力される第１のアドレスビットＡｄｄ［Ｎ］とを合成したビットと、ＣＰＵ２０２から出力されるアドレス信号Ａｄｄ［０：Ｎ］とを比較する。比較器１８４は、不一致の場合に、故障通知信号ＥＲＲＯＲを出力する。
【０１５５】
ＦＦ７７は、選択デコーダ６２からＥＲＲＯＲセレクタ２８３への第１の選択信号ｃｅｎ１の伝送経路の途中に設けられる。ＦＦ７８は、選択デコーダ６２からＥＲＲＯＲセレクタ２８３への第２の選択信号ｃｅｎ２の伝送経路の途中に設けられる。ＦＦ７９は、アドレス分割器６１から比較器１８４の入力への第１のアドレスビットＡｄｄ［Ｎ］の伝送経路の途中に設けられる。
【０１５６】
ＦＦ７７、ＦＦ７８、ＦＦ７９、アドレス出力機能付き第１のメモリモジュール１８１、およびアドレス出力機能付き第２のメモリモジュール１８２に供給されるクロックは、同一である。
【０１５７】
参考例２の半導体装置１２００では、アドレス信号Ａｄｄ［０：Ｎ］を処理する選択デコーダ６２およびそれに関連する配線の故障を検出することできないという問題がある。
【０１５８】
第１の選択信号ｃｅｎ１のレベルと第２の選択信号ｃｅｎ２のレベルのうちの少なくとも一方が誤っている場合でも、第１のメモリモジュール１８１の出力ＡＱ１と第２のメモリモジュール１８２の出力ＡＱ２のうちのいずれかがＥＲＲＯＲセレクタ２８３を介して、比較器１８４に入力されるからである。
【０１５９】
［第９の実施形態］
図１７は、第９の実施形態の半導体装置１３００の構成を表わす図である。
【０１６０】
図１７を参照して、この半導体装置１３００は、アドレス出力機能付き第１のメモリモジュール１８１と、アドレス出力機能付き第２のメモリモジュール１８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＲＲＯＲセレクタ２８３と、ＦＦ７７，７８，７９と、エンコーダ１９１と、比較器１９４と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【０１６１】
アドレス出力機能付き第１のメモリモジュール１８１、アドレス出力機能付き第２のメモリモジュール１８２、アドレス分割器６１、選択デコーダ６２、ＥＲＲＯＲセレクタ２８３、ＦＦ７７，７８，７９、割り込み制御部２０１、およびＣＰＵ２０２は、参考例２と同様なので、説明を繰り返さない。
【０１６２】
エンコーダ１９１は、選択デコーダ６２から出力される第１の選択信号ｃｅｎ１、第２の選択信号ｃｅｎ２をエンコードして、第１のアドレスビットＡｄｄ′［Ｎ］を出力する。このエンコードは、選択許可信号ＣＥＮ＝１のときの選択デコーダ６２のデコード（変換）の逆変換である。
【０１６３】
エンコーダ１９１は、第１の選択信号ｃｅｎ１が「１」、かつ第２の選択信号ｃｅｎ２が「０」のときに、第１のアドレスビットＡｄｄ′［Ｎ］（＝「１」）を出力する。エンコーダ１９１は、第１の選択信号ｃｅｎ１が「０」、かつ第２の選択信号ｃｅｎ２が「１」のときに、第１のアドレスビットＡｄｄ′［Ｎ］（＝「０」）を出力する。
【０１６４】
比較器１９４は、ＥＲＲＯＲセレクタ２８３から出力される内部アドレスビットＡＱ１またはＡＱ２と、エンコーダ１９１から出力される第１のアドレスビットＡｄｄ′［Ｎ］とを合成したビットと、ＣＰＵ２０２から出力されるアドレス信号Ａｄｄ［０：Ｎ］とを比較する。比較器１９４は、不一致の場合に、故障通知信号ＥＲＲＯＲを出力する。
【０１６５】
選択デコーダ６２の故障によって選択デコーダ６２から出力される第１の選択信号ｃｅｎ１のレベルと第２の選択信号ｃｅｎ２のレベルがともに反転したときには、エンコーダ１９１から出力される第１のアドレスビットＡｄｄ′［Ｎ］は、アドレスビットＡｄｄ［Ｎ］と相違することになる。この相違を検出することによって、選択デコーダ６２の故障を判定することができる。
【０１６６】
［第１０の実施形態］
図１８は、第１０の実施形態の半導体装置１４００の構成を表わす図である。
【０１６７】
図１８を参照して、この半導体装置１４００は、アドレス出力機能付き第１のメモリモジュール１８１と、アドレス出力機能付き第２のメモリモジュール１８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＲＲＯＲセレクタ２８３とを備える。半導体装置１４００は、ＦＦ７７，７８，７９と、ＣＧＣ（Clock Gating Circuit）１９２，１９３と、比較器１８４と、割り込み制御部２０１と、ＣＰＵ２０２とを備える。
【０１６８】
アドレス出力機能付き第１のメモリモジュール１８１、アドレス出力機能付き第２のメモリモジュール１８２、アドレス分割器６１、選択デコーダ６２、ＥＲＲＯＲセレクタ２８３、ＦＦ７７，７８，７９、比較器１８４、割り込み制御部２０１、およびＣＰＵ２０２は、参考例２と同様なので、説明を繰り返さない。
【０１６９】
ＣＧＣ１９２は、第１の選択信号ｃｅｎ１が活性化レベル「１」のときに、第１のメモリモジュール１８１へクロックＣＬＫを出力する。ＣＧＣ１９３は、第２の選択信号ｃｅｎ２が活性化レベル「１」のときに、第２のメモリモジュール１８２へクロックＣＬＫを出力する。
【０１７０】
第１のメモリモジュール１８１は、第２のアドレスビットＡｄｄ［０：Ｎ−１］受けて、クロックＣＬＫのエッジのタイミングで、入力された第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値を取り込む。第１のメモリモジュール１８１は、第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値に基づき、メモリアレイＭＡＲＹへのデータの書き込み、またはメモリアレイＭＡＲＹからのデータの読出しを実行するとともに、第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値の内部アドレスビットＡＱ１を出力する。したがって、第１の選択信号ｃｅｎ１が「１」のときには、第１のメモリモジュール１８１から、第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値の内部アドレスビットが出力される。第１の選択信号ｃｅｎ１が「０」のときには、第１のメモリモジュール１８１から、第２のアドレスビットＡｄｄ［０：Ｎ−１］の以前の値の内部アドレスビットが出力される。
【０１７１】
第２のメモリモジュール１８２は、第２のアドレスビットＡｄｄ［０：Ｎ−１］を受けて、クロックＣＬＫのエッジのタイミングで、入力された第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値を取り込む。第２のメモリモジュール１８２は、第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値に基づき、メモリアレイＭＡＲＹへのデータの書き込み、またはメモリアレイＭＡＲＹからのデータの読出しを実行するとともに、第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値の内部アドレスビットＡＱ２を出力する。したがって、第２の選択信号ｃｅｎ２が「１」のときには、第２のメモリモジュール１８２から、第２のアドレスビットＡｄｄ［０：Ｎ−１］の最新値の内部アドレスビットが出力される。第２の選択信号ｃｅｎ２が「０」のときには、第２のメモリモジュール１８２から、第２のアドレスビットＡｄｄ［０：Ｎ−１］の以前の値の内部アドレスビットが出力される。
【０１７２】
比較器１８４は、ＥＲＲＯＲセレクタ２８３から出力される内部アドレスビットＡＱ１またはＡＱ２と、最上位ビットＡｄｄ［Ｎ］とを合成したビットと、ＣＰＵ２０２から出力されるアドレス信号Ａｄｄ［０：Ｎ］とを比較する。比較器１８４は、不一致の場合に、故障通知信号ＥＲＲＯＲを出力する。
【０１７３】
選択デコーダ６２の故障によって、選択許可信号ＣＥＮのレベルが「１」、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「０」となったときには、以下のような動作が行われる。第１のメモリモジュール１８１の出力ＡＱ１は、第２のアドレスビットの以前の値（すなわち、１つ前の周期の値）の内部アドレスビット、第２のメモリモジュール１８２の出力ＡＱ２も第２のアドレスビットの以前の値の内部アドレスビットとなる。ＥＲＲＯＲセレクタ２８３によって、第１のメモリモジュール１８１の出力ＡＱ１と、第２のメモリモジュール１８２の出力ＡＱ２のいずれか一方が選択されて比較器１８４に入力される。これによって、比較器１８４には、第２のアドレスビットＡｄｄ［０：Ｎ−１］の以前の値の内部アドレスビットが入力されるため、故障を検知することができる。
【０１７４】
［第１１の実施形態］
図１９は、第１１の実施形態の半導体装置１５００の構成を表わす図である。
【０１７５】
この半導体装置１５００は、アドレス出力機能付き第１のメモリモジュール１８１と、アドレス出力機能付き第２のメモリモジュール１８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＣＣエンコーダ２１と、ＥＲＲＯＲセレクタ２８３とを備える。半導体装置１５００は、さらに、セレクタ１４１と、セレクタ１４２と、ＥＣＣデコーダ１２２と、故障判定部１２１と、比較器１８４と、ＦＦ７３，７４，７５，７６，７７，７８と、割り込み制御部３０１と、ＣＰＵ３０２とを備える。
【０１７６】
アドレス出力機能付き第１のメモリモジュール１８１と、アドレス出力機能付き第２のメモリモジュール１８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＣＣエンコーダ２１と、ＥＲＲＯＲセレクタ２８３は、上述のいずれかの実施形態で説明したものと同様なので説明を繰り返さない。また、セレクタ１４１と、セレクタ１４２と、ＥＣＣデコーダ１２２と、故障判定部１２１と、比較器１８４と、ＦＦ７３，７４，７５，７６，７７，７８は、上述のいずれかの実施形態で説明したものと同様なので説明を繰り返さない。
【０１７７】
故障判定部１２１は、選択デコーダ６２が第１の故障状態と判定したときに、第１の故障通知信号ＥＲＲＯＲ１を割り込み制御部３０１へ出力する。第１の故障状態とは、選択許可信号ＣＥＮが「１」のときに、第１の選択信号ｃｅｎ１と第２の選択信号ｃｅｎ２の一方が「１」で他方が「０」となるのが正しい場合に、第１の選択信号ｃｅｎ１と第２の選択信号ｃｅｎ２の両方が「０」または「１」となる故障である。また、選択許可信号ＣＥＮが「１」のときに、第１の選択信号ｃｅｎ１と第２の選択信号ｃｅｎ２の両方が「０」となるのが正しい場合に、少なくとも１つが「１」となるような故障である。
【０１７８】
比較器１８４は、選択デコーダ６２が第２の故障状態のため、入力される２つのアドレスが不一致となった場合に、第２の故障通知信号ＥＲＲＯＲ２を出力する。第２の故障状態とは、第１の選択信号ｃｅｎ１のレベルが反転するとともに、第２の選択信号ｃｅｎ２のレベルも反転する故障である。
【０１７９】
ＥＣＣデコーダ１２２は、ＦＦ７３，７４，７５，７６のいずれかが故障状態の結果、誤りを検出したときには、第３の故障通知信号ＥＲＲＯＲ３を割り込み制御部３０１へ出力する。
【０１８０】
割り込み制御部３０１は、ＣＰＵ３０２に第１の故障通知信号ＥＲＲＯＲ１、第２の故障通知信号ＥＲＲＯＲ２、および第３の故障通知信号ＥＲＲＯＲ３をＣＰＵ３０２に伝える。第１の故障通知信号ＥＲＲＯＲ１が最も優先度が高く、第２の故障通知信号ＥＲＲＯＲ２が次に優先度が高く、第３の故障通知信号ＥＲＲＯＲ３が優先度が最も低いものとする。
【０１８１】
図２０は、故障が通知されたときのＣＰ３０２の処理手順を表わすフローチャートである。
【０１８２】
図２０を参照して、ステップＳ５０１において、ＣＰＵ３０２が第１の故障通知信号ＥＲＲＯＲ１を受信したときには、処理がステップＳ５１０に進み、ＣＰＵ３０２が第１の故障通知信号ＥＲＲＯＲ１を受信しないときには、処理がステップＳ５０２に進む。
【０１８３】
ステップＳ５０２において、ＣＰＵ３０２が第２の故障通知信号ＥＲＲＯＲ２を受信したときには、処理がステップＳ５０７に進み、ＣＰＵ３０２が第２の故障通知信号ＥＲＲＯＲ２を受信しないときには、処理がステップＳ５０３に進む。
【０１８４】
ステップＳ５０３において、ＣＰＵ３０２が第３の故障通知信号ＥＲＲＯＲ３を受信したときには、処理がステップＳ５０５に進み、ＣＰＵ３０２が第３の故障通知信号ＥＲＲＯＲ３を受信しないときには、処理がステップＳ５０４に進む。
【０１８５】
ステップＳ５０５において、ＣＰＵ３０２が第３の故障通知信号ＥＲＲＯＲ３を受信したのが２回目の場合に、処理がステップＳ５０９に進み、ＣＰＵ３０２が第３の故障通知信号ＥＲＲＯＲ３を受信したのが１回目の場合に、処理がステップＳ５０６に進む。
【０１８６】
ステップＳ５０７において、ＣＰＵ３０２がテストを実行する。
ステップＳ５０８において、テスト結果が良好の場合に、処理がステップＳ５０３に進み、テスト結果が不良の場合に、処理がステップＳ５０９に進む。
【０１８７】
ステップＳ５０４において、ＣＰＵ３０２は、通常処理が実行されるように制御する。
ステップＳ５０６において、ＣＰＵ３０２は、直前の動作を繰り返す繰り返し処理が実行されるように制御する。
【０１８８】
ステップＳ５０９において、ＣＰＵ３０２は、代替処理が実行させるように制御する。
ステップＳ５１０において、ＣＰＵ３０２は、危険回避処理が実行されるように制御する。
【０１８９】
以上のように、本実施の形態では、複数種類の故障が発生する可能性がある場合に、発生した故障の種類の優先度に応じた処理を実行することができる。
【０１９０】
［第１２の実施形態］
図２１は、第１２の実施形態の半導体装置１６００の構成を表わす図である。
【０１９１】
図２１を参照して、この半導体装置１６００は、アドレス出力機能付き第１のメモリモジュール２８１と、アドレス出力機能付き第２のメモリモジュール２８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＲＲＯＲセレクタ２８３と、比較器２８４と、ＦＦ７７，７８，７９と、割り込み制御部４０１と、ＣＰＵ２０２とを備える。
【０１９２】
アドレス分割器６１、選択デコーダ６２、ＦＦ７７，７８，７９、およびＣＰＵ２０２は、参考例２と同様なので、説明を繰り返さない。
【０１９３】
アドレス出力機能付き第１のメモリモジュール２８１およびアドレス出力機能付き第２のメモリモジュール２８２は、実施の形態２の第１のメモリモジュール４５と同様に、複数個のＳＲＡＭメモリセルを有するメモリアレイと、ＳＲＡＭロジック回路とを備える。
【０１９４】
アドレス出力機能付き第１のメモリモジュール２８１およびアドレス出力機能付き第２のメモリモジュール２８２の各々には、アドレス分割器６１から出力されたＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］（第１のアドレス信号）と、ＣＰＵ２０２から直接送られるＮビットのアドレスビットＡ［０：Ｎ−１］（第２のアドレス信号）が入力される。アドレスビットＡ［０：Ｎ−１］は、内部アドレスビットＡＱ１［０：Ｎ−１］が正常か否かを調べるための期待値信号として機能する。
【０１９５】
アドレス出力機能付き第１のメモリモジュール２８１は、第１の選択信号ｃｅｎ１を受ける。アドレス出力機能付き第１のメモリモジュール２８１は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」のときに、データの読出しおよび書き込みが可能となる。アドレス出力機能付き第１のメモリモジュール２８１は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」のときに、データの読出しおよび書き込みが不可能となる。
【０１９６】
アドレス出力機能付き第２のメモリモジュール２８２は、第２の選択信号ｃｅｎ２を受ける。アドレス出力機能付き第２のメモリモジュール２８２は、第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、データの読出しおよび書き込みが可能となる。アドレス出力機能付き第２のメモリモジュール２８２は、第２の選択信号ｃｅｎ２のレベルが非活性化レベルの「０」のときに、データの読出しおよび書き込みが不可能となる。
【０１９７】
図２２は、アドレス出力機能付き第１のメモリモジュール２８１の構成を表わす図である。アドレス出力機能付き第２のメモリモジュール２８２も、これと同様である。
【０１９８】
図２２を参照して、アドレス出力機能付き第１のメモリモジュール１８１が、図３の第１のメモリモジュール４１と相違する点は、比較器２８５と、故障通知出力端子ＥＡと、アドレス入力端子ＡＤＢと、クロック供給源８８８と、選択端子ＣＮとを備える点である。
【０１９９】
アドレス入力端子ＡＤＢは、（Ｎ＋１）ビットのアドレス信号Ａ［０：Ｎ］のうちのＮビットのアドレスビットＡ［０：Ｎ−１］（下位の第１の個数のビット）をＣＰＵ２０２から直接受ける。
【０２００】
選択端子ＣＮは、第１の選択信号ｃｅｎ１を受けて、クロック供給源８８８へ出力する。クロック供給源８８８は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」のときに、クロックＣＬＫをアドレス出力機能付き第１のメモリモジュール３８１へ供給する。クロック供給源８８８は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」のときに、クロックＣＬＫをアドレス出力機能付き第１のメモリモジュール３８１へ供給しない。
【０２０１】
比較器２８５は、アドレス入力端子ＡＤＢから送られるＮビットのアドレスビットＡ［０：Ｎ−１］と、一時記憶回路６５０から出力されるＮビットの内部アドレスビットＡＱ１［０：Ｎ−１］とを比較する。比較器２８５は、比較結果が不一致のときには、故障通知信号ＥＲＲＯＲ１を出力する。
【０２０２】
故障通知出力端子ＥＡは、故障通知信号ＥＲＲＯＲ１を出力する。
アドレス出力機能付き第２のメモリモジュール２８２は、同様にして、故障通知信号ＥＲＲＯＲ２を出力する。
【０２０３】
再び、図２１を参照して、ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルに基づいて、第１のメモリモジュール２８１から出力される故障通知信号ＥＲＲＯＲ１と第２のメモリモジュール２８２から出力される故障通知信号ＥＲＲＯＲ２のうちのいずれかを選択して、選択した故障通知信号を故障通知信号ＥＲＲＯＲ３として、割り込み制御部４０１へ出力する。
【０２０４】
ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」、かつ第２の選択信号ｃｅｎ２のレベルが非活性化レベルの「０」のときに、第１のメモリモジュール２８１から出力される故障通知信号ＥＲＲＯＲ１を選択する。ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、第２のメモリモジュール２８２から出力される故障通知信号ＥＲＲＯＲ２を選択する。ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、第１のメモリモジュール２８１から出力される故障通知信号ＥＲＲＯＲ１および第２のメモリモジュール２８２から出力される故障通知信号ＥＲＲＯＲ２のうちのいずれかを選択する。ＥＲＲＯＲセレクタ２８３は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、第１のメモリモジュール２８１から出力される故障通知信号ＥＲＲＯＲ１および第２のメモリモジュール２８２から出力される故障通知信号ＥＲＲＯＲ２のうちのいずれかを選択する。
【０２０５】
比較器２８４は、アドレス分割器６１から出力される第１のアドレスビットＡｄｄ［Ｎ］と、ＣＰＵ２０２から直接送られる第１のアドレスビットＡ［Ｎ］とを比較する。比較器２８４は、比較結果が不一致のときに、故障通知信号ＥＲＲＯＲ４を割り込み制御部４０１へ出力する。
【０２０６】
割り込み制御部４０１は、故障通知信号ＥＲＲＯ３または故障通知信号ＥＲＲＯＲ４を受けたときに、ＣＰＵ２０２に故障を検知したことを割り込み通知する。
【０２０７】
本実施の形態によれば、メモリモジュール内に比較器を設けて、メモリモジュール内でアドレスの比較によって、故障判定する。これによって、従来は、メモリモジュールからアドレス信号のビット数分の信号を出力していたのに対して、本実施の形態では、メモリモジュールから１ビットの信号を出力するだけでよくなる。
【０２０８】
図２３は、アドレス出力機能付き第１のメモリモジュール２８１のレイアウトを表わす図である。アドレス出力機能付き第２のメモリモジュール２８２も、これと同様である。
【０２０９】
メモリモジュール２８１への入出力端子は、制御部ＣＴＲＬの近辺に集中して配置される。入出力端子と接続する信号線の数が多いと、制御部ＣＴＲＬの近辺で電流集中が起こりやすくなる。本実施の形態では、出力する信号のビット数を低減することによって、特定の箇所に多量の電流が集中して流れるのを抑制することができる。
【０２１０】
［第１３の実施形態］
図２４は、第１３の実施形態の半導体装置１７００の構成を表わす図である。
【０２１１】
図２４を参照して、この半導体装置１７００は、アドレス出力機能付き第１のメモリモジュール３８１と、アドレス出力機能付き第２のメモリモジュール３８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＲＲＯＲセレクタ２８３と、比較器２８４と、ＦＦ７７，７８，７９と、割り込み制御部４０１と、ＣＰＵ２０２とを備える。
【０２１２】
アドレス分割器６１、選択デコーダ６２、ＦＦ７７，７８，７９、およびＣＰＵ２０２は、参考例２と同様なので、説明を繰り返さない。ＥＲＲＯＲセレクタ２８３、比較器２８４、および割り込み制御部４０１は、第１２の実施形態と同様なので、説明を繰り返さない。
【０２１３】
アドレス出力機能付き第１のメモリモジュール３８１およびアドレス出力機能付き第２のメモリモジュール３８２は、実施の形態２の第１のメモリモジュール４５と同様に、複数個のＳＲＡＭメモリセルを有するメモリアレイと、ＳＲＡＭロジック回路とを備える。
【０２１４】
アドレス出力機能付き第１のメモリモジュール３８１およびアドレス出力機能付き第２のメモリモジュール３８２の各々には、アドレス分割器６１から出力されたＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］と、テストアドレスが入力される。
【０２１５】
アドレス出力機能付き第１のメモリモジュール３８１は、第１の選択信号ｃｅｎ１を受ける。アドレス出力機能付き第１のメモリモジュール３８１は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」のときに、データの読出しおよび書き込みが可能となる。アドレス出力機能付き第１のメモリモジュール３８１は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」のときに、データの読出しおよび書き込みが不可能となる。
【０２１６】
アドレス出力機能付き第２のメモリモジュール３８２は、第２の選択信号ｃｅｎ２を受ける。アドレス出力機能付き第２のメモリモジュール３８２は、第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、データの読出しおよび書き込みが可能となる。アドレス出力機能付き第２のメモリモジュール３８２は、第２の選択信号ｃｅｎ２のレベルが非活性化レベルの「０」のときに、データの読出しおよび書き込みが不可能となる。
【０２１７】
図２５は、アドレス出力機能付き第１のメモリモジュール３８１の構成を表わす図である。アドレス出力機能付き第２のメモリモジュール３８２も、これと同様である。
【０２１８】
図２５を参照して、アドレス出力機能付き第１のメモリモジュール３８１が、図３の第１のメモリモジュール４１と相違する点は、比較器３８５と、故障通知出力端子ＥＡと、テストアドレス入力端子ＴＡと、セレクタ３８６と、クロック供給源８８８と、選択端子ＣＮとを備える点である。
【０２１９】
テストアドレス入力端子ＴＡには、たとえばＣＰＵ２０２から直接送られるＮビットのテストアドレス信号ＴＡｄｄ［０：Ｎ−１］が入力される。たとえば、テストアドレス信号ＴＡｄｄ［０：Ｎ−１］は、全ビットが０の信号、あるいは全ビットが１の信号とすることができる。
【０２２０】
なお、テストアドレス入力端子ＴＡに入力されるテストアドレス信号は、Ｎビットのテストアドレス信号ＴＡｄｄ［０：Ｎ−１］に限らない。たとえば、１ビットのテストアドレス信号であってもよい。メモリモジュール３８２が、１ビットのテストアドレス信号を受けたときに、Ｎビットのテストアドレス信号を生成して、セレクタ３８６へ供給するものとしてもよい。
【０２２１】
選択端子ＣＮは、第１の選択信号ｃｅｎ１を受けて、クロック供給源８８８へ出力する。クロック供給源８８８は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」のときに、クロックＣＬＫをアドレス出力機能付き第１のメモリモジュール３８１へ供給する。クロック供給源８８８は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」のときに、クロックＣＬＫをアドレス出力機能付き第１のメモリモジュール３８１へ供給しない。
【０２２２】
セレクタ３８６は、図示しない制御信号に従って、アドレス入力端子ＡＤＢから送られるＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］と、テストアドレス入力端子ＴＡから送られるＮビットのテストアドレス信号ＴＡｄｄ［０：Ｎ−１］のうちのいずれか選択して、選択した方をアドレスビットＢ［０：Ｎ−１］として、比較器３８５へ出力する。第２のアドレスビットＡｄｄ［０：Ｎ−１］が選択されるときには、第２のアドレスビットＡｄｄ［０：Ｎ−１］は、内部アドレスビットＡＱ１［０：Ｎ−１］が正常か否かを調べるための期待値信号として機能する。テストアドレス信号ＴＡｄｄ［０：Ｎ−１］が選択されたときには、テストアドレス信号ＴＡｄｄ［０：Ｎ−１］は、比較器３８５が正常か否かを調べるための信号として機能する。
【０２２３】
比較器３８５は、セレクタ３８６から出力されるＮビットのアドレスビットＢ［０：Ｎ−１］と、一時記憶回路６５０から出力されるＮビットの内部アドレスビットＡＱ１［０：Ｎ−１］とを比較する。比較器３８５は、比較結果が不一致のときには、故障通知信号ＥＲＲＯＲ１を出力する。
【０２２４】
故障通知出力端子ＥＡは、故障通知信号ＥＲＲＯＲ１を出力する。
アドレス出力機能付き第２のメモリモジュール３８２は、同様にして、故障通知信号ＥＲＲＯＲ２を出力する。
【０２２５】
本実施の形態では、テストアドレスをＮビット未満とすることによって、第１２の実施形態よりも、メモリモジュールの入力端子数を削減することができる。これによって、メモリモジュール周辺での配線領域を削減でき、空き領域を電源強化領域として開放できる。よって、さらに電流集中を回避することができる。また、本実施の形態では、メモリモジュール内の比較器の故障検出も可能である。
【０２２６】
なお、第１２の実施形態のメモリモジュールにおいても、テストアドレスを入力するテストアドレス入力端子ＴＡと、テストアドレスＴＡと、アドレスビットＡ［０：Ｎ−１］とを選択して、比較器へ供給するセレクタとを設けるものとしてもよい。
【０２２７】
［第１４の実施形態］
図２６は、第１４の実施形態の半導体装置１８００の構成を表わす図である。
【０２２８】
図２６を参照して、この半導体装置１８００は、アドレス出力機能付き第１のメモリモジュール４８１と、アドレス出力機能付き第２のメモリモジュール４８２と、アドレス分割器６１と、選択デコーダ６２と、ＥＲＲＯＲ／ＡＱセレクタ４８３と、比較器２８４と、ＦＦ７７，７８，７９と、割り込み制御部４０１と、エラーアドレス保持回路４８４と、ＣＰＵ２０２とを備える。
【０２２９】
アドレス分割器６１、選択デコーダ６２、ＦＦ７７，７８，７９、およびＣＰＵ２０２は、参考例２と同様なので、説明を繰り返さない。比較器２８４、および割り込み制御部４０１は、第１２の実施形態と同様なので、説明を繰り返さない。
【０２３０】
アドレス出力機能付き第１のメモリモジュール４８１およびアドレス出力機能付き第２のメモリモジュール４８２は、実施の形態２の第１のメモリモジュール４５と同様に、複数個のＳＲＡＭメモリセルを有するメモリアレイと、ＳＲＡＭロジック回路とを備える。
【０２３１】
アドレス出力機能付き第１のメモリモジュール４８１およびアドレス出力機能付き第２のメモリモジュール４８２の各々には、アドレス分割器６１から出力されたＮビットの第２のアドレスビットＡｄｄ［０：Ｎ−１］と、ＣＰＵ２０２から直接送られるＮビットのアドレスビットＡ［０：Ｎ−１］が入力される。
【０２３２】
アドレス出力機能付き第１のメモリモジュール４８１は、第１の選択信号ｃｅｎ１を受ける。アドレス出力機能付き第１のメモリモジュール４８１は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」のときに、データの読出しおよび書き込みが可能となる。アドレス出力機能付き第１のメモリモジュール４８１は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」のときに、データの読出しおよび書き込みが不可能となる。
【０２３３】
アドレス出力機能付き第２のメモリモジュール４８２は、第２の選択信号ｃｅｎ２を受ける。アドレス出力機能付き第２のメモリモジュール４８２は、第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、データの読出しおよび書き込みが可能となる。アドレス出力機能付き第２のメモリモジュール４８２は、第２の選択信号ｃｅｎ２のレベルが非活性化レベルの「０」のときに、データの読出しおよび書き込みが不可能となる。
【０２３４】
図２７は、アドレス出力機能付き第１のメモリモジュール４８１の構成を表わす図である。アドレス出力機能付き第２のメモリモジュール４８２も、これと同様である。
【０２３５】
図２７を参照して、アドレス出力機能付き第１のメモリモジュール４８１が、図２２のアドレス出力機能付き第１のメモリモジュール２８１と相違する点は、セレクタ５８４を備える点である。
【０２３６】
セレクタ５８４は、一時記憶回路６５０から出力されるＮビットの内部アドレスビットＡＱ１［０：Ｎ−１］と、データ入出力部ＩＯから出力されるデータ信号Ｄ１［０：Ｍ］のうち一方を選択し、選択した信号をメモリモジュール出力データＡＤＴＡ１としてデータ入出力端子ＤＡに出力する。セレクタ５８４は、故障通知信号ＥＲＲＯＲ１を受けないときには、データ信号Ｄ１［０：Ｍ］を選択する。セレクタ５８４は、故障通知信号ＥＲＲＯＲ１を受けたときには、内部アドレスビットＡＱ１［０：Ｎ−１］を選択する。
【０２３７】
アドレス出力機能付き第２のメモリモジュール４８２は、故障通知信号ＥＲＲＯＲ２とメモリモジュール出力データＡＤＴＡ２とを出力する。
【０２３８】
ＥＲＲＯＲ／ＡＱセレクタ４８３は、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルに基づいて、第１のメモリモジュール４８１から出力される故障通知信号ＥＲＲＯＲ１と第２のメモリモジュール４８２から出力される故障通知信号ＥＲＲＯＲ２のうちのいずれかを選択する。ＥＲＲＯＲ／ＡＱセレクタ４８３は、選択した故障通知信号を故障通知信号ＥＲＲＯＲ３として、割り込み制御部４０１およびエラーアドレス保持回路４８４へ出力する。
【０２３９】
ＥＲＲＯＲ／ＡＱセレクタ４８３は、第１の選択信号ｃｅｎ１のレベルおよび第２の選択信号ｃｅｎ２のレベルに基づいて、第１のメモリモジュール４８１から出力されるメモリモジュール出力データＡＤＴＡ１と第２のメモリモジュール４８２から出力されるメモリモジュール出力データＡＤＴＡ２のうちのいずれかを選択する。ＥＲＲＯＲ／ＡＱセレクタ４８３は、選択した方をメモリモジュール出力データＡＤＴＡ３として、エラーアドレス保持回路４８４へ出力する。
【０２４０】
ＥＲＲＯＲ／ＡＱセレクタ４８３は、第１の選択信号ｃｅｎ１のレベルが活性化レベルの「１」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「０」のときに、第１のメモリモジュール４８１から出力される故障通知信号ＥＲＲＯＲ１およびメモリモジュール出力データＡＤＴＡ１を選択する。
【０２４１】
ＥＲＲＯＲ／ＡＱセレクタ４８３は、第１の選択信号ｃｅｎ１のレベルが非活性化レベルの「０」、かつ第２の選択信号ｃｅｎ２のレベルが活性化レベルの「１」のときに、第２のメモリモジュール４８２から出力される故障通知信号ＥＲＲＯＲ２およびメモリモジュール出力データＡＤＴＡ２を選択する。
【０２４２】
ＥＲＲＯＲ／ＡＱセレクタ４８３は、第１の選択信号ｃｅｎ１のレベルが「０」、かつ第２の選択信号ｃｅｎ２のレベルが「０」のときに、故障通知信号ＥＲＲＯＲ１および故障通知信号ＥＲＲＯＲ２のうちのいずれかを選択し、メモリモジュール出力データＡＤＴＡ１およびメモリモジュール出力データＡＤＴＡ２のうちのいずれかを選択する。
【０２４３】
ＥＲＲＯＲ／ＡＱセレクタ４８３は、第１の選択信号ｃｅｎ１のレベルが「１」、かつ第２の選択信号ｃｅｎ２のレベルが「１」のときに、故障通知信号ＥＲＲＯＲ１および故障通知信号ＥＲＲＯＲ２のうちのいずれかを選択し、メモリモジュール出力データＡＤＴＡ１およびメモリモジュール出力データＡＤＴＡ２のうちのいずれかを選択する。
【０２４４】
エラーアドレス保持回路４８４は、メモリモジュール出力データＡＤＴＡ３を受ける。エラーアドレス保持回路４８４は、故障通知信号ＥＲＲＯ３を受けたときには、メモリモジュール出力データＡＤＴＡ３を保持する。なぜなら、故障通知信号ＥＲＲＯ３を受信したときには、メモリモジュール出力データＡＤＴＡ３は、内部アドレスビットＡＱ１［０：Ｎ−１］またはＡＱ２［０：Ｎ−１］を表わすからである。
【０２４５】
さらに、エラーアドレス保持回路４８４は、第１のアドレスビットＡｄｄ［Ｎ］を受ける。エラーアドレス保持回路４８４は、故障通知信号ＥＲＲＯＲ４を受けたときには、第１のアドレスビットＡｄｄ［Ｎ］を保持する。
【０２４６】
本実施の形態によれば、故障通知信号が出力されたときに、故障に関係するアドレスがエラーアドレス保持回路に保持される。これによって、故障が通知されたときに、メモリＢＩＳＴ（Built-In Self Test）を実施して、故障に関係するアドレスを特定する作業を不要にすることができる。
【０２４７】
（変形例）
本開示は、上記の実施形態に限定されるものではなく、たとえば、以下のような変形例も含む。
【０２４８】
（１）メモリモジュールの数
第２〜第１１の実施形態では、半導体装置が１つまたは２つのメモリモジュールを備える場合について説明したが、これに限定されるものではない。たとえば、半導体装置が、２N個のメモリモジュールを備えるものとしてもよい。
【０２４９】
アドレス分割器６１は、２N個のメモリモジュールがある場合に、アドレス信号のＭＳＢ側から上位Ｎビットをメモリモジュールの選択のための第１のアドレスビットとし、それ以外を第２のアドレスビットとすることができる。選択デコーダは、２N個のメモリモジュールへ供給する選択信号ｃｅｎ１〜ｃｅｎ２Nを生成する。図４、図７の故障判定部１２１、１３１は、選択許可信号ＣＥＮ、および選択信号ｃｅｎ１〜ｃｅｎ２Nに基づいて、選択デコーダ６２の故障を判定する。図８のセレクタ１４１は、選択信号ｃｅｎ１〜ｃｅｎ２Nに基づいて、２N個のメモリモジュールから出力される２N個の第１グループの複数ビットのうちいずれかを選択する。図８のセレクタ１４２は、選択信号ｃｅｎ１〜ｃｅｎ２Nに基づいて、２N個のメモリモジュールから出力される２N個の第２グループの複数ビットのうちいずれかを選択する。図１７、図１８のＥＲＲＯＲセレクタ２８３は、選択信号ｃｅｎ１〜ｃｅｎ２Nに基づいて、２N個のメモリモジュールから出力される２N個の内部アドレスビットのいずれかを選択して出力する。
【０２５０】
（２）第７の実施形態のＥＣＣ
第７の実施形態のＥＣＣエンコーダ２２１、ＥＣＣデコーダ２２２を省略し、メモリアレイ１６２には、データとアドレスのみを記憶するものとしてもよい。
【０２５１】
（３）メモリモジュール
第９の実施形態で説明したメモリモジュールは、選択信号が活性化されたときに動作するものとしてもよい。たとえば、選択信号が非活性化されているときには、メモリモジュール内のクロック源が、メモリモジュール内の各構成要素へのクロックの供給を停止するものとしてもよい。
【０２５２】
（付記）
なお、上記の実施形態に基づき、本開示には、以下のよう発明も含まれる。
【０２５３】
（請求項Ａ）
複数個の正規メモリセルと冗長メモリセルとを有するメモリアレイと、
前記複数個の正規メモリの中の不良メモリセルのアドレス信号をデコードして、アドレスデコード信号を出力する冗長デコーダと、
前記アドレスデコード信号に従って、前記不良メモリセルの代わりに、前記冗長メモリセルにデータが書き込まれるように制御する第１の冗長制御回路と、
前記アドレスデコード信号に従って、前記不良メモリセルの代わりに、前記冗長メモリセルからデータが読み出されるように制御する第２の冗長制御回路と、
前記アドレスデコード信号をエンコードして、アドレス信号を出力するエンコーダと、
前記冗長デコーダに入力される前記アドレス信号と、前記エンコーダから出力される前記アドレス信号とを比較する比較器とを備えた、半導体装置。
【０２５４】
（請求項Ｂ）
複数個の正規メモリセルと冗長メモリセルとを有するメモリアレイと、
データの書込み時に、前記複数個の正規メモリの中の不良メモリセルのアドレス信号をデコードして、第１のアドレスデコード信号を出力する第１の冗長デコーダと、
データの読み出し時に、前記複数個の正規メモリの中の不良メモリセルのアドレス信号をデコードして、第２のアドレスデコード信号を出力する第２の冗長デコーダと、
前記メモリアレイへのデータを誤り検出訂正符号化するＥＣＣエンコーダと、
データの書込み時に、前記第１のアドレスデコード信号に従って、前記不良メモリセルの代わりに、前記冗長メモリセルに前記ＥＣＣエンコーダの出力が書き込まれるように制御する第１の冗長制御回路と、
データの読み出し時に、前記第２のアドレスデコード信号に従って、前記不良メモリセルの代わりに、前記冗長メモリセルからデータが読み出されるように制御する第２の冗長制御回路と、
前記メモリアレイから出力されるデータを誤り検出訂正するするＥＣＣデコーダとを備えた、半導体装置。
【０２５５】
（請求項Ｃ）
データと、アドレスと、検査ビットとからなるビット列を記憶するメモリアレイと、
前記メモリアレイへのデータの書き込み時に書き込み用のアドレスをデコードして第１のデコード信号を出力し、前記メモリアレイからのデータの読出し時に読出し用のアドレスをデコードして第２のデコード信号を出力するアドレスデコーダと、
データの書き込み時に、データと、前記書き込み用のアドレスとからなるビット列を誤り検出訂正符号化して、検査ビットを生成するＥＣＣエンコーダと、
前記メモリアレイ内の前記第１のデコード信号で指定される位置に、前記データと、前記書き込み用のアドレスと、前記検査ビットとからなるビット列が書き込まれ、
データの読出し時に、前記メモリアレイは、前記第２のデコード信号で指定される位置からデータとアドレスと検査ビットからなるビット列とを出力し、
前記メモリアレイから出力されたビット列を誤り検出訂正するＥＣＣデコーダと、
前記ＥＣＣデコーダから出力されるアドレスと、前記読出し用のアドレスとを比較する比較器とを備えた、半導体装置。
【０２５６】
（請求項Ｄ）
データと、検査ビットとからなるビット列を記憶するメモリアレイと、
前記メモリアレイへのデータの書き込み時に書き込み用のアドレスをデコードして第１のデコード信号を出力し、前記メモリアレイからのデータの読出し時に読出し用のアドレスをデコードして第２のデコード信号を出力するアドレスデコーダと、
データの書き込み時に、データと、前記書き込み用のアドレスとからなるビット列を誤り検出訂正符号化して、検査ビットを生成するＥＣＣエンコーダと、
前記メモリアレイ内の前記第１のデコード信号で指定される位置に、前記データと、前記検査ビットとからなるビット列が書き込まれ、
データの読出し時に、前記メモリアレイは、前記第２のデコード信号で指定される位置からデータと検査ビットからなるビット列とを出力し、
前記メモリアレイから出力されたビット列に前記読出用のアドレスを付加して誤り検出訂正するＥＣＣデコーダとを備えた、半導体装置。
【０２５７】
（請求項Ｅ）
複数個のメモリモジュールを備え、前記複数個のメモリモジュールにおけるデータの格納位置を表わすアドレス信号を表わす複数ビットは、第１のアドレスビットと第２のアドレスビットとを含み、前記複数個のメモリモジュールの各々は、前記第２のアドレスビットを受けて、前記第２のアドレスビットから生成した内部アドレスビットを出力し、
前記第１のアドレスビットをデコードして、複数個の選択信号のレベルを制御する選択デコーダと、
前記複数個の選択信号のレベルに基づいて、前記選択デコーダが故障状態か否かを判定し、故障状態のときに第１の故障通知信号を出力する故障判定部と、
前記複数個の選択信号をエンコードして、アドレスビットを出力するエンコーダと、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される内部アドレスビットのいずれかを選択する第１のセレクタと、
前記第１のセレクタから出力される内部アドレスビットと、前記エンコーダから出力されるアドレスビットとを合成したビット列と、前記アドレス信号を表わす複数ビットとを比較し、不一致の場合に、第２の故障通知信号を出力する比較器と、
ライトデータを誤り検出訂正符号化するＥＣＣエンコーダとを備え、
前記複数個のメモリモジュールの各々には、対応する選択信号が活性化レベルのときに、前記誤り検出訂正符号化されたライトデータが書き込まれ、
前記複数個のメモリモジュールの各々からの出力データの複数ビットは、第１グループの複数個のビットと、第２グループの複数個のビットに分類され、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される複数個の第１グループの複数ビットのうちのいずれかを選択して出力する第２のセレクタと、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される複数個の第２グループの複数ビットのうちのいずれかを選択して出力する第３のセレクタと、
前記第２のセレクタの出力と前記第３のセレクタの出力とを合成したビット列を誤り検出訂正し、誤りが検出されたときに第３の故障通知信号を出力するＥＣＣデコーダと、
受信した故障通知信号の種類に応じた処理を実行するＣＰＵとを備える、半導体装置。
【０２５８】
（請求項Ｆ）
複数個のメモリモジュールを備え、前記複数個のメモリモジュールにおけるデータの格納位置を表わすアドレス信号を表わす複数ビットは、第１のアドレスビットと第２のアドレスビットとを含み、前記複数個のメモリモジュールの各々は、前記第２のアドレスビットを受けて、前記第２のアドレスビットから生成した内部アドレスビットを出力し、
前記第１のアドレスビットをデコードして、複数個の選択信号のレベルを制御する選択デコーダと、
前記複数個の選択信号をエンコードして、アドレスビットを出力するエンコーダと、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される前記内部アドレスビットのいずれかを選択するセレクタと、
前記セレクタから出力される前記内部アドレスビットと、前記エンコーダから出力される前記アドレスビットとを合成したビット列と、前記アドレス信号を表わす前記複数ビットとを比較する比較器とを備えた、半導体装置。
【０２５９】
（請求項Ｇ）
複数個のメモリモジュールを備え、前記複数個のメモリモジュールにおけるデータの格納位置を表わすアドレス信号を表わす複数ビットは、第１のアドレスビットと第２のアドレスビットとを含み、前記複数個のメモリモジュールの各々は、前記第２のアドレスビットを受けて、前記第２のアドレスビットから生成した内部アドレスビットを出力し、
前記第１のアドレスビットをデコードして、複数個の選択信号のレベルを制御する選択デコーダと、
各々が、クロックを受けて、対応する前記選択信号が活性化レベルのときに、対応する前記メモリモジュールへ前記クロックを出力する複数個のクロックゲートとを備え、
前記複数個のメモリモジュールの各々は、対応する前記クロックゲートから出力される前記クロックを受けると、前記第２のアドレスビットの最新値から生成される前記内部アドレスビットを出力し、
前記複数個の選択信号のレベルに基づいて、前記複数個のメモリモジュールから出力される前記内部アドレスビットのいずれかを選択するセレクタと、
前記セレクタから出力される前記内部アドレスビットと、前記第１のアドレスビットとを合成したビットと、前記アドレス信号とを比較する比較器と、
各々が、対応する前記選択信号が前記セレクタに供給される経路に設けられた複数個のフリップフロップとを備え、
前記複数個のブリップフロップ、および前記複数個のメモリモジュールには、同一のクロック信号が入力される、半導体装置。
【０２６０】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【０２６１】
１＿０〜１＿Ｎ−１  ラッチ回路、２１，２２１，３２１  ＥＣＣエンコーダ、２２，１２２，２２２，３２２  ＥＣＣデコーダ、３１，３２，３３，３４，３５，３６  冗長制御回路、４１，４５  第１のメモリモジュール、４３，４４，１５５，１６２，１７２，ＭＡＲＹ  メモリアレイ、４２，４６  第２のメモリモジュール、４７，１６１，１７１，３０−１〜３０−Ｎ  メモリモジュール、５１，１４１，１４２，１４９  セレクタ、６１  アドレス分割器、６２，３０３  選択デコーダ、７１，７２，７３，７５，７６，７７，７８，７９  ＦＦ、８１，６８，１６８，１６９  冗長デコーダ、１２１，１３１，３０４  故障判定部、１５１，１９１  エンコーダ、１５２，１６６，１８４，１９４，２８４，２８５，３８５  比較器、１５３，３６３，３６５  正規ブロック、１５４，３６４，３６６  冗長ブロック、１６３，１７３  データ領域、１６４  アドレス領域、１６５，１７４  検査ビット領域、１８１，２８１，３８１，４８１  アドレス出力機能付き第１のメモリモジュール、１８２，２８２，３８２，４８２  アドレス出力機能付き第２のメモリモジュール、１８３  ＡＦＢセレクタ、１９２，１９３  ＣＧＣ、２０１，３０１，４０１  割り込み制御部、２０２，３０２  ＣＰＵ、２８３  ＥＲＲＯＲセレクタ、４８３  ＥＲＲＯＲ／ＡＱセレクタ、４８４  エラーアドレス保持回路、３８６，５８４  セレクタ、３００，４００，５００，６００，７００，８００，９００，１００，１１００，１２００，１３００，１４００，１５００，１６００，１７００，１８００  半導体装置、３５０  フラッシュメモリ、６５０  一時記憶回路、８８８  クロック供給源、ＡＤＡ，ＡＤＢ  アドレス入力端子、ＡＱ  内部アドレス出力端子、ＣＫ  クロック入力端子、ＤＡ  データ入出力端子、ＥＡ  故障通知出力端子、ＷＤ  ワード線駆動回路、ＩＯ  データ入出力部、ＡＤＲＣＴＬ  アドレスデコーダ、ＣＴＲＬ  制御部、ＣＮ  選択端子。
【図１】
2018206336.tif 000003
【図２】
2018206336.tif 000004
【図３】
2018206336.tif 000005
【図４】
2018206336.tif 000006
【図５】
2018206336.tif 000007
【図６】
2018206336.tif 000008
【図７】
2018206336.tif 000009
【図８】
2018206336.tif 000010
【図９】
2018206336.tif 000011
【図１０】
2018206336.tif 000012
【図１１】
2018206336.tif 000013
【図１２】
2018206336.tif 000014
【図１３】
2018206336.tif 000015
【図１４】
2018206336.tif 000016
【図１５】
2018206336.tif 000017
【図１６】
2018206336.tif 000018
【図１７】
2018206336.tif 000019
【図１８】
2018206336.tif 000020
【図１９】
2018206336.tif 000021
【図２０】
2018206336.tif 000022
【図２１】
2018206336.tif 000023
【図２２】
2018206336.tif 000024
【図２３】
2018206336.tif 000025
【図２４】
2018206336.tif 000026
【図２５】
2018206336.tif 000027
【図２６】
2018206336.tif 000028
【図２７】
2018206336.tif 000029