IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

<>
  • 特開-半導体装置及び半導体装置制御方法 図1
  • 特開-半導体装置及び半導体装置制御方法 図2
  • 特開-半導体装置及び半導体装置制御方法 図3
  • 特開-半導体装置及び半導体装置制御方法 図4
  • 特開-半導体装置及び半導体装置制御方法 図5
  • 特開-半導体装置及び半導体装置制御方法 図6
  • 特開-半導体装置及び半導体装置制御方法 図7
  • 特開-半導体装置及び半導体装置制御方法 図8
  • 特開-半導体装置及び半導体装置制御方法 図9
  • 特開-半導体装置及び半導体装置制御方法 図10
  • 特開-半導体装置及び半導体装置制御方法 図11
  • 特開-半導体装置及び半導体装置制御方法 図12
  • 特開-半導体装置及び半導体装置制御方法 図13
  • 特開-半導体装置及び半導体装置制御方法 図14
  • 特開-半導体装置及び半導体装置制御方法 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022164238
(43)【公開日】2022-10-27
(54)【発明の名称】半導体装置及び半導体装置制御方法
(51)【国際特許分類】
   G11C 29/44 20060101AFI20221020BHJP
   G11C 29/00 20060101ALI20221020BHJP
   G01R 31/28 20060101ALI20221020BHJP
【FI】
G11C29/44 110
G11C29/00 418
G01R31/28 B
G01R31/28 V
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2021069606
(22)【出願日】2021-04-16
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】▲柳▼田 昌宏
(72)【発明者】
【氏名】藤本 博之
【テーマコード(参考)】
2G132
5L206
【Fターム(参考)】
2G132AA08
2G132AB01
2G132AC03
2G132AD06
2G132AK07
2G132AL12
5L206AA17
5L206CC04
5L206CC14
5L206DD24
5L206DD50
5L206EE07
(57)【要約】
【課題】内蔵RAMにおける故障解析を容易にする半導体装置及び半導体装置制御方法を提供する。
【解決手段】セレクタ回路220~223は、メモリセル210~213及び置換メモリセル214の中から選択したメモリセル210~213を外部に接続させる。メモリセル救済回路300は、メモリセル210~213のいずれかに障害が発生した場合に、障害が発生したメモリセルを外部に接続させずに正常な置換メモリセル214を外部に接続させる救済信号をセレクタ回路220~223に送信して、セレクタ回路220~223の選択を切り替える。異常検知回路204は、メモリセル救済回路300から出力された救済信号の時間的な変化を基にメモリセル救済回路300の異常検知を行う。
【選択図】図3
【特許請求の範囲】
【請求項1】
複数の内蔵メモリを有する半導体装置であって、
前記内蔵メモリは、
複数のメモリセルと、
前記メモリセルの中から選択したメモリセルを外部に接続させるセレクタ回路と、
前記メモリセルのいずれかに障害が発生した場合に、前記障害が発生したメモリセルを外部に接続させずに正常なメモリセルを外部に接続させる救済信号を前記セレクタ回路に送信して、前記セレクタ回路の選択を切り替えるメモリセル救済回路と、
前記メモリセル救済回路から出力された前記救済信号の時間的な変化を基に前記メモリセル救済回路の異常検知を行う異常検知回路と
を備えたことを特徴とする半導体装置。
【請求項2】
前記異常検知回路は、
前記メモリセル救済回路から出力された前記救済信号に遅延を与えて遅延救済信号を生成する遅延部と、
前記救済信号と前記遅延部により生成された前記遅延救済信号とを比較して、前記救済信号の前記時間的な変化を検知する比較部と
を備えたことを特徴とする請求項1に記載の半導体装置。
【請求項3】
前記異常検知回路は、前記比較部により前記救済信号の前記時間的な変化が検知された場合に、それ以降継続的に前記異常検知の情報を保持する保持部をさらに備えたことを特徴とする請求項2に記載の半導体装置。
【請求項4】
前記内蔵メモリ毎の前記異常検知回路のいずれかにより前記メモリセル救済回路の異常が検知された場合、前記内蔵メモリ全体の異常の情報として出力する情報集約部をさらに備えたことを特徴とする請求項1~3のいずれか一つに記載の半導体装置。
【請求項5】
前記内蔵メモリ毎の前記異常検知回路による前記異常検知の情報のそれぞれを識別可能に1つの信号の中に格納して出力する出力部をさらに備えたことを特徴とする請求項1~3のいずれか一つに記載の半導体装置。
【請求項6】
複数の内蔵メモリを有する半導体装置に対する半導体制御方法であって、
前記内蔵メモリが有する複数のメモリセルの中から選択したメモリセルを、セレクタ回路を用いて外部に接続させ、
前記メモリセルのいずれかに障害が発生した場合に、前記障害が発生したメモリセルを外部に接続させずに正常なメモリセルを外部に接続させる救済信号をメモリセル救済回路から前記セレクタ回路に送信させて、前記セレクタ回路の前記選択を切り替え、
前記救済信号の時間的な変化を基に前記メモリセル救済回路の異常検知を行う
ことを特徴とする半導体装置制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置及び半導体装置制御方法に関する。
【背景技術】
【0002】
プロセッサに代表されるLSI(Large Scale Integration)は、LSI外部と信号を送受信するためのI/O回路、制御及び演算を行うコア、データ保持を行うキャッシュ及び共通部を有する。コア及びキャッシュには、RAM(Random Access Memory)が内蔵される。以下では、LSIに内蔵されるRAMを内蔵RAMと呼ぶ。共通部は、内蔵RAMを試験するBIST(Built In Self Test)回路、試験結果を判定する試験判定回路及び内蔵RAMの欠陥のあるメモリセルのアドレスを記憶するフューズを含む。
【0003】
内蔵RAMは、メモリセルアレイと、デコーダ回路、セレクタ回路及び救済デコーダ回路を含む周辺回路とに分けられる。ここでは、同一のBIT番号が付与されたメモリセルをまとめて、メモリセルと呼ぶ。メモリセルアレイは異なるBIT番号が付与された複数のメモリセルを含む。すなわち、メモリセルの全BIT番号の集合がメモリセルアレイとなる。
【0004】
メモリセルアレイは、周辺回路より微細で高密度なため相対的に不良率が高い傾向にある。そこで、メモリセルアレイ内に置換メモリセルを設け、欠陥を含むメモリセルをメモリセル単位で置換メモリセルと置き換えることで、正常に動作するメモリセルアレイを得るというメモリセル救済手法が広く知られている。ここでは、置換メモリセル以外のメモリセルアレイ内のメモリセルを通常メモリセルと呼ぶ。メモリセルアレイでは、例えば、通常メモリセルを4BITとし、置換メモリセルを1BITとすることができる。
【0005】
セレクタ回路は、通常メモリセルと置換メモリセルとを選択する。デコーダ回路は、アドレスをデコードする。救済デコーダ回路と救済アドレスを記憶するフューズとが組み合わされて、メモリセル救済回路と呼ばれる。
【0006】
メモリセル救済は、欠陥を含む通常メモリセルである欠陥メモリセルを置換メモリセルに置き換えることにより行われる。各BIT番号の通常メモリセルには、それぞれの通常メモリセルを選択するセレクタ回路が1対1で対応付けられて配置される。各セレクタ回路は、対応付けられた通常メモリセルと隣に配置された通常メモリセルもしくは置換メモリセルとのいずれかを選択するように切り替え可能である。
【0007】
セレクタ回路は、救済デコーダ回路から出力される救済デコード信号により制御される。欠陥メモリセルが存在しない場合、置換メモリセルは使用されず、通常メモリセルがセレクタ回路を介して内蔵RAMの外部へ接続される。欠陥メモリセルを置換メモリセルに置換する置換動作は、欠陥メモリセルを選択させずに隣の通常メモリセルを選択させるように各セレクタ回路を制御して、最終的に置換メモリセルが選択されるように制御することで実現される。
【0008】
メモリセル救済がある場合、運用時には内蔵RAMは以下の動作を行う。ここでは、BIT番号が0~3の通常メモリセル及びBIT番号が4の置換メモリセルが存在し、各通常メモリセルに対して、SEL0~3の番号が振られたセレクタ回路が配置される場合で説明する。救済デコーダ回路は、フューズから取得した救済アドレスをデコードし救済デコード信号を生成する。例えば、BIT番号が1の通常メモリセルが欠陥メモリセルの場合、救済デコーダ回路は、BIT番号が0の通常メモリセルをSEL0のセレクタ回路に選択させ、BIT番号が2~4の通常メモリセル及び置換メモリセルをSEL1~3のセレクタ回路に選択させる救済デコード信号を生成する。SEL0~3のセレクタ回路は、入力された救済デコード信号にしたがいBIT番号が1以外の通常メモリセル及び置換メモリセルを内蔵RAMの外部に接続する。これにより、メモリセル救済が機能して、欠陥メモリセルであるBIT番号が1の通常メモリセルは使用されなくなる。なお、救済デコード信号の値は、フューズに格納されている救済アドレスから決まるため、内蔵RAMの動作中は変化しない。
【0009】
欠陥メモリセルの特定は、出荷前試験で行われ、試験で得られた欠陥メモリセルの位置を示す救済アドレスがフューズなどの不揮発記憶素子に保存される。不揮発性記憶素子は、内蔵RAMの外部に置かれてもよいし、内部に置かれてもよい。不揮発性記憶素子と救済デコーダとの接続は直接接続するパラレル接続又はスキャンチェーンなどを用いたシリアル接続で接続される。なお、メモリセル救済実施の有無及び実施した場合の救済アドレスなどは、メモリセル救済情報として製造データの一部としても保存される。
【0010】
ところで、LSIでは、開発時及び工場出荷後の市場で故障が発生する場合がある。故障が発生した場合は、再発防止を目的とした原因究明及び対策立案のために故障解析が行われる。LSIのRAM故障解析は以下のように行われる。初めに、故障情報が収集され確認される。例えば、故障発生時の使用電圧、動作速度、環境温度、どのような回路動作をしていたか、LSIの製造番号及び出荷前試験結果などの情報の確認ができるだけ詳細に行われる。次に、故障発生状況確認から得られた情報を基に内蔵RAMのどこが故障しているかが推定される。ここでは、アドレス異常、データ異常及びその他の異常の3つに分類する。次に、推定された異常に対応する被疑部位に特化した故障解析が実行される。ここで、故障個所や原因が特定できた場合は、内蔵RAMの故障解析は終了する。これに対して、故障個所や原因が不明な場合は、推定した部位以外の部位に故障が存在する可能性が高いため、再度故障部位推定を行い別の部位を被疑部位として故障解析が行われる。全ての部位に対する故障解析を行っても故障個所や原因が不明な場合、内蔵RAMには故障なしと判定される。さらに、内蔵RAM以外のブロックにも故障個所が特定されなかった場合、解析不能又は失敗となる。
【0011】
ここで、内蔵RAMのデータ異常は内蔵RAMに対するデータの読み書き異常として検知される。内蔵RAMに対するデータの読み書き異常となる原因としては、以下が考えられる。1つは、メモリセルアレイに新たな欠陥が発生した場合である。もう1つは、メモリセル救済回路に故障が発生し、置換されていた欠陥メモリセルが置換されなくなる場合である。これら2つはどちらも内蔵RAMに対するデータの読み書き異常を発生させる。
【0012】
このように、データ異常が発生した場合には対応する部位としてメモリセルアレイ及びメモリセル救済回路の故障が想定されるため、LSIの製造データから内蔵RAMのメモリセル救済が行われたか否かが確認される。そして、内蔵RAMのメモリセル救済が行われていた場合、救済されたメモリセルのBIT番号が特定される。次に、メモリセルアレイの故障解析を行う。これはメモリセルアレイが微細で密度が高いため他の部位に対して故障発生率が高い傾向にあるためである。メモリセルアレイに対する故障解析を行っても故障個所や原因が不明である場合、次にメモリセル救済回路の故障解析が行われる。
【0013】
なお、メモリセルの耐障害性の技術として、データ入力信号を与えそれに応じた出力がデータ出力信号として観測されるか否かにより、データ線シフト回路や入出力回路が正常か否かを判定するテストを行なう技術が存在する。
【先行技術文献】
【特許文献】
【0014】
【特許文献1】特開2003-68093号公報
【発明の概要】
【発明が解決しようとする課題】
【0015】
しかしながら、近年のLSIは、高速化及び高機能化によりI/O(Input/Output)回路及びロジック回路などの各ブロックの複雑化や、内蔵RAMの大容量化が著しい。そして、内蔵RAMの大容量化により、LSIに占める内蔵RAMの面積が増え、内蔵RAMでの故障発生が増加している。また、大容量化に伴い歩留りが低下してきており、歩留り改善のためにメモリセル救済実施も多くなることから、内蔵RAMのメモリセル救済回路自体の故障も増加している。
【0016】
内蔵RAMのデータ異常が発生した場合、従来はメモリセルアレイに原因がある場合が主でメモリセルアレイの故障解析により解析が終了することがほとんどであった。しかし、近年は上述したようにメモリセル救済回路が原因となるケースが増え、切り分けの工数や時間の増加が問題となり、内蔵RAMにおける故障原因の切り分けの容易化が求められている。
【0017】
この点、例えば、データ入力信号を与えそれに応じた出力がデータ出力信号として観測してデータ線の試験を行う従来技術を用いても、データ線の不良は検出可能であるが、メモリセル救済回路を含む故障原因の切り分けは困難である。
【0018】
開示の技術は、上記に鑑みてなされたものであって、内蔵RAMにおける故障解析を容易にする半導体装置及び半導体装置制御方法を提供することを目的とする。
【課題を解決するための手段】
【0019】
本願の開示する半導体装置及び半導体装置制御方法の一つの態様において、半導体装置は、複数の内蔵メモリを有する。内蔵メモリは、複数のメモリセル及び以下の各部を備える。セレクタ回路は、前記メモリセルの中から選択したメモリセルを外部に接続させる。メモリセル救済回路は、前記メモリセルのいずれかに障害が発生した場合に、前記障害が発生したメモリセルを外部に接続させずに正常なメモリセルを外部に接続させる救済信号を前記セレクタ回路に送信して、前記セレクタ回路の選択を切り替える。異常検知回路は、前記メモリセル救済回路から出力された前記救済信号の時間的な変化を基に前記メモリセル救済回路の異常検知を行う。
【発明の効果】
【0020】
1つの側面では、本発明は、内蔵RAMにおける故障解析を容易にすることができる。
【図面の簡単な説明】
【0021】
図1図1は、情報処理装置の構成図である。
図2図2は、LSIのブロック図である。
図3図3は、実施例1に係る内蔵RAMのブロック図である。
図4図4は、異常検知回路の原理を表すブロック図である。
図5図5は、実施例1に係る異常検知回路の回路図である。
図6図6は、異常検知回路の動作を示す図である。
図7図7は、正常値が1の場合の異常検知回路のタイミングチャートである。
図8図8は、正常値が0の場合の異常検知回路のタイミングチャートである。
図9図9は、実施例1に係るメモリセル救済回路の異常検知処理のフローチャートである。
図10図10は、実施例1に係る内蔵RAM故障解析のフローチャートである。
図11図11は、信号変化検出のための他の方法を示す図である。
図12図12は、実施例1に係る異常検知信号収集方法の一例を説明するための図である。
図13図13は、実施例1に係る異常検知信号収集方法の他の例を説明するための図である。
図14図14は、実施例2に係る異常検知回路の回路図である。
図15図15は、実施例2に係る異常検知信号収集方法の一例を説明するための図である。
【発明を実施するための形態】
【0022】
以下に、本願の開示する半導体装置及び半導体装置制御方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する半導体装置及び半導体装置制御方法が限定されるものではない。
【実施例0023】
図1は、情報処理装置の構成図である。情報処理装置1は、プロセッサ10、メモリ11、I/Oコントローラ12、NIC(Network Interface Controller)13及びGPU(Graphic Processing Unit)14を有する。さらに、情報処理装置1は、SSD(Solid State Drive)15、HDD(Hard Disk Drive)16、外部接続ポート17、電源装置18、冷却装置19及びシステムコントローラ20を有する。
【0024】
I/Oコントローラ12は、プロセッサ10と他のデバイスとのデータの受け渡しを中継する。I/Oコントローラ12には、例えば、NIC13、GPU14、SSD15及びHDD16が接続される。また、I/Oコントローラ12は、外部接続ポート17を有する。外部接続ポート17には、USB(Universal Serial Bus)デバイスやPCIe(Peripheral Component Interconnect Express)デバイスが接続される。
【0025】
プロセッサ10は、CPU(Central Processing Unit)であり、メモリ11及びI/Oコントローラ12と接続される。プロセッサ10は、I/Oコントローラ12を介して、NIC13、GPU14、SSD15及びHDD16などとデータの送受信を行う。また、プロセッサ10は、例えば、HDD16に格納されたプログラムを読み出してメモリ11に展開して実行する。
【0026】
NIC13は、外部装置と通信を行うためのインタフェースである。GPU14は、プロセッサ10により指定された演算処理を実行する。SSD15及びHDD16は、補助記憶装置であり、各種プログラムやデータを格納する。
【0027】
電源装置18は、プロセッサ10やメモリ11などの各部に電力を供給する。冷却装置19は、空気を循環させて情報処理装置1内の温度を下げる。システムコントローラ20は、冷却装置19の駆動速度や電源装置18の電源供給量といった情報処理装置1のシステム全体を統括管理する。
【0028】
図2は、LSIのブロック図である。LSI100は、半導体装置であり、例えば、図1におけるプロセッサ10やGPU14を実現するハードウェアである。以下の説明では、プロセッサ10を実現するLSI100を例に説明する。LSI100は、図2に示すように、共通部101、キャッシュ102、コア103及びI/O回路104を有する。
【0029】
共通部101は、全てのコア103及びキャッシュ102などが共通で使用する各種機能を有する。例えば、共通部101は、フューズ111、内蔵RAM試験回路112、検出結果収集回路113及び読出し回路114を有する。共通部101は、その他にもコア103やキャッシュ102などが共通で使用する共通回路を有してもよい。
【0030】
フューズ111は、不揮発性記憶素子である。フューズ111は、出荷時試験で得られた欠陥メモリセルの位置を示す救済アドレスを格納する。フューズ111は、保持するレジスタを書き換えることで救済アドレスを記憶してもよいし、物理的に焼き付けられることで救済アドレスを記憶してもよい。
【0031】
内蔵RAM試験回路112は、BIST回路と呼ばれる自己診断回路である。内蔵RAM試験回路112は、テストパターンを生成し、生成したテストパターンを用いてコア103の内蔵RAM132及びキャッシュ102の内蔵RAM200の試験を行う。そして、内蔵RAM試験回路112は、試験結果と期待値とを照合して欠陥メモリセルを特定する。その後、内蔵RAM試験回路112は、特定した欠陥メモリセルの位置を示す救済アドレスをフューズ111に格納する。
【0032】
検出結果収集回路113は、コア103の内蔵RAM132及びキャッシュ102の内蔵RAM200のそれぞれにおける異常検知の結果を収集する。そして、検出結果収集回路113は、収集した異常検知の結果を保持する。
【0033】
読出し回路114は、検出結果収集回路113が保持するコア103の内蔵RAM132及びキャッシュ102の内蔵RAM200のそれぞれにおける異常検知の結果を結果収集回路113から読み出して外部装置150へ出力する。
【0034】
I/O回路104は、例えばLSI100がプロセッサ10の場合に、メモリ11やI/Oコントローラ12とのデータの送受信を中継する。
【0035】
コア103は、LSI100内部に複数配置される。コア103は、それぞれがロジック回路131及び内蔵RAM132を有する。ここでは、コア103は、2つの内蔵RAM132を有する。ロジック回路131は、演算を実行する回路である。内蔵RAM132は、ロジック回路131が演算を実行する際に使用されるデータ格納装置である。
【0036】
キャッシュ102は、複数の内蔵RAM200を有する。内蔵RAM200は、コア103におけるロジック回路131が演算を実行する際に用いるデータを格納するデータ格納装置である。コア103の内蔵RAM132とキャッシュ102の内蔵RAM200とは同様の機能を有する。以下では、内蔵RAM200を例に説明する。
【0037】
図3は、実施例1に係る内蔵RAMのブロック図である。次に、図3を参照して、本実施例に係る内蔵RAM200の詳細を説明する。
【0038】
本実施例に係る内蔵RAM200は、図3に示すように、メモリセルアレイ201、デコーダ回路202、救済デコーダ回路203、異常検知回路204及びセレクタ回路220~223を有する。
【0039】
メモリセルアレイ201は、例えば、メモリセル210~213及び置換メモリセル214を有する。メモリセル210~213及び置換メモリセル214は、データの読み書きの最小単位となる回路構成であり0又は1の情報を蓄える単位メモリセルのうち同じBIT番号が割り当てられた単位メモリセルの集合である。ここでは、メモリセル210のBIT番号が0であり、メモリセル211のBIT番号が1であり、メモリセル212のBIT番号が2であり、メモリセル213のBIT番号が3であり、置換メモリセル214のBIT番号が4である。メモリセル210~213は、いずれも障害が発生しなければデータの読み書きに使用される。置換メモリセル214は、メモリセル210~213のいずれかに障害が発生した場合に置換されてデータの読み書きに用いられる。以下では、0~4のBIT番号それぞれをBIT0~4と表す場合がある。また、メモリセル210~213及び置換メモリセル214のそれぞれを区別しない場合、まとめて「メモリセル21」と呼ぶ場合がある。
【0040】
デコーダ回路202は、アクセス先のメモリセル21のアドレスの入力を受ける。そして、デコーダ回路202は、入力されたアドレスをデコードする。そして、デコーダ回路202は、デコード結果を用いて、入力されたアドレスに対応するメモリセル21に対して信号を送信する。
【0041】
セレクタ回路220~223は、それぞれメモリセル210~213に対応させて配置される。セレクタ回路220~223は、それぞれ対応するメモリセル210~213に接続するための接続経路を有する。また、セレクタ回路220~223は、対応するメモリセル210~213の隣に配置されたメモリセル211~213又は置換メモリセル214に接続するための接続経路を有する。そして、セレクタ回路220~223は、対応するメモリセル210~213への接続経路と隣のメモリセル211~213及び置換メモリセル214への接続経路を選択的に切り替え可能である。例えば、セレク回路タ220は、メモリセル210への接続経路とメモリセル211への接続経路とのいずれかを選択して接続することができる。また、セレクタ回路223は、メモリセル213への接続経路と置換メモリセル214への接続経路とのいずれかを選択して接続することができる。
【0042】
セレクタ回路220~223は、救済デコーダ回路203から送信された救済デコード信号にしたがって、それぞれの接続経路の選択を行う。例えば、救済デコード信号は、4ビットの信号であり、0~3番目のそれぞれのビットの値によりセレクタ回路220~223のそれぞれの選択経路が指定される。例えば、セレクタ回路220は、救済デコード信号の0番のビットが0の場合、メモリセル210に接続する。また、セレクタ回路220は、救済デコード信号の0番のビットが1の場合、メモリセル211に接続する。また、例えば、セレクタ回路223は、救済デコード信号の3番のビットが1の場合、置換メモリセル214へ接続する。
【0043】
救済デコーダ回路203は、フューズ111と合わせてメモリセル救済回路300と呼ばれる。救済デコーダ回路203は、セレクタ回路220~223のそれぞれに個別に繋がる接続経路を有する。救済デコーダ回路203は、フューズ111に格納された救済アドレスを読み出して、読み出した救済アドレスをデコードして救済デコード信号を生成する。その後、救済デコーダ回路203は、救済デコード信号における各セレクタ回路220~223にあたる値を、セレクタ回路220~223のそれぞれに出力する。この救済デコード信号が、「救済信号」の一例にあたる。
【0044】
例えば、欠陥メモリセルが存在しない場合、救済デコーダ回路203は、メモリセル救済なしを表す救済アドレスを取得して、0~3番目のビットが「0000」の救済デコード信号を生成して、セレクタ回路220~223のそれぞれに「0」を出力する。これにより、置換メモリセル214は使用されず、メモリセル210~213がセレクタ回路220~223を介して内蔵RAM200の外部に接続される。以下では、4ビットの救済デコード信号を「0000」のようにビット番号順に並べた4つの値で表す場合がある。
【0045】
また、例えば、メモリセル211が欠陥メモリセルの場合について説明する。救済デコーダ回路203は、欠陥メモリセルとしてメモリセル211を指定する救済アドレスをフューズ111から取得して、取得した救済アドレスをデコードして救済デコード信号を生成する。メモリセル211が欠陥メモリセルであり救済する場合、救済デコーダ回路203は、セレクタ回路220に対応する0番目のビットは0であり、その他のビットが1となるように「0111」の救済デコード信号を生成して出力する。これにより、セレクタ回路220はメモリセル210を外部に接続し、セレクタ回路221~223は、それぞれメモリセル212~213及び置換メモリセル214を外部に接続する。これにより、メモリセル救済が機能して、欠陥メモリセルであるメモリセル211を使用しなくなる。
【0046】
異常検知回路204は、救済デコーダ回路203から出力された救済デコード信号を取得する。そして、異常検知回路204は、救済デコード信号を用いて救済デコーダ回路203の異常を検知する。
【0047】
図4は、異常検知回路の原理を表すブロック図である。図4を参照して、異常検知回路204の動作原理を説明する。異常検知回路204は、遅延部205、比較部206及び保持部207を有する。
【0048】
遅延部205は、救済デコーダ回路203から出力された救済デコード信号の入力を受ける。そして、遅延部205は、救済デコード信号を遅延させて比較部206へ出力する。
【0049】
比較部206は、救済デコーダ回路203から出力された救済デコード信号の入力を受ける。また、比較部206は、救済デコード信号に遅延を加えた遅延救済デコード信号の入力を遅延部205から受ける。さらに、比較部206は、イネーブル信号(en:enable)の入力をロジック回路131などから受けて比較を開始する。例えば、内蔵RAM200の動作開始時に、比較部206へ入力されるイネーブル信号がオンにされる。イネーブル信号がオンの場合、比較部206は、救済デコード信号と遅延救済デコード信号とを比較する。
【0050】
ここで、救済デコード信号は、フューズ111に格納された救済アドレスによって決まるため、内蔵RAM200の動作中は本来であれば変化しない値である。ただし、電源ノイズなど何らかの影響やメモリセル救済回路300の劣化などにより内蔵RAM200の動作中に、救済デコード信号が変化した場合、変化前後でセレクタ回路220~223の経路選択が誤った状態となり、データ異常が発生する。
【0051】
そこで、比較部206は、救済デコード信号と遅延救済デコード信号とが同じ値であれば、正常を示す判定結果を保持部207へ出力する。これに対して、救済デコード信号と遅延救済デコード信号とが異なる値となった場合、比較部206は、異常を示す判定結果を保持部207へ出力する。
【0052】
このように、異常検知回路204は、救済デコード信号の時間方向の変化、すなわち時間的な変化を検知することで、内蔵RAM200の動作中の救済デコード信号の変化を検知する。救済デコード信号の値が一定であれば、救済デコード信号の値と遅延救済デコード信号の値とは同一である。これに対して、救済デコード信号に変化が発生した場合、遅延救済デコード信号は、遅延時間の間は変化前の値となる。したがって、救済デコード信号に変化が発生した場合、救済デコード信号の値と遅延救済デコード信号の値とは不一致となる。不一致は遅延時間の間に発生するので、次のように保持部207を設けて一度でも不一致となった場合に異常を示す判定結果を保持する。
【0053】
保持部207は、比較部206から出力された信号の入力を受ける。保持部207は、比較部206から正常を示す判定結果の入力が継続していれば、正常を示す判定結果を検出結果収集回路113へ出力する。これに対して、比較部206からの入力が異常を示す判定結果であれば、保持部207は、異常を示す判定結果を出力し、その後、入力が正常を示す判定結果に変化しても、異常を示す判定結果の出力を維持する。
【0054】
また、保持部207には、リセット信号がロジック回路131などから入力される。例えば、障害対応終了後や障害が無いことが確認された後の初期化時に、保持部207へのリセット信号の入力が行われる。保持部207は、リセット信号の入力を受けると、正常を示す判定結果に出力を戻す。
【0055】
このように、異常検知回路204は、全ての救済デコード信号の値を常時監視する。そして、異常検知回路204は、救済デコード信号の変化の有無にしたがってメモリセル救済回路300の異常を検知する。そして、異常検知後からリセット信号の入力を受けるまでに、保持部207が異常を示す判定結果を出力し続けることで、管理者は、障害が回復してもメモリセル救済回路300の異常を検知したことをその間いつでも確認することが可能である。
【0056】
図5は、実施例1に係る異常検知回路の回路図である。次に、図5を用いて、本実施例に係る異常検知回路204の詳細について説明する。図5に示すように、本実施例に係る異常検知回路204は、比較回路240、OR回路243、AND回路244及びRS-FF(Set Reset-Flip Flop)245を有する。
【0057】
比較回路240は、救済デコーダ回路203から各セレクタ回路220~223へ送られる救済デコード信号の各値に対応する数が配置される。例えば、セレクタ回路220~223の4つが存在する場合、比較回路240は、セレクタ回路220~223のそれぞれに入力される信号に対応するように4つ配置される。比較回路240は、遅延回路241及びE(Exclusive)OR回路242を有する。
【0058】
遅延回路241は、セレクタ回路220~223に入力される救済デコード信号の値のうち、対応する信号の入力を受ける。そして、遅延回路241は、入力信号に遅延を与える。その後、遅延回路241は、入力信号に遅延を与えた遅延入力信号をEOR回路242へ出力する。この遅延回路241が、図4の遅延部205にあたる。
【0059】
EOR回路242は、遅延回路241への入力信号と同様の入力信号の入力を受ける。また、EOR回路242は、遅延入力信号の入力を遅延回路241から受ける。そして、EOR回路242は、入力信号と遅延入力信号との排他的論理和を出力する。すなわち、EOR回路242は、入力信号の値と遅延入力信号の値が一致する場合、0を出力する。これに対して、入力信号の値と遅延入力信号の値が不一致の場合、EOR回路242は、1を出力する。ここで、救済デコード信号は、値が0で固定の場合に正常であるか1で固定の場合に正常であるかは設定によって自由に決定することができる。このEOR回路242が、図4の比較部206にあたる。
【0060】
OR回路243は、各比較回路240のEOR回路242から出力された信号の入力を受ける。そして、OR回路243は、入力された全ての信号の論理和を出力する。すなわち、OR回路243は、EOR回路242のうち1つでも入力信号の値と遅延入力信号の値が不一致だった場合に1を出力する。
【0061】
AND回路244は、OR回路243から出力された信号の入力を受ける。また、AND回路244は、イネーブル信号の入力を受ける。イネーブル信号がオンの場合、AND回路244は、OR回路243から取得した信号をRS-FF245へ出力する。
【0062】
RS-FF245は、リセット信号が入力されると、保持する値を0にして、Q端子から0を検出結果収集回路113へ出力する。その後、RS-FF245は、AND回路244から出力された信号の入力をS端子により受ける。そして、RS-FF245は、AND回路244から出力された信号が1に変化すると、Q端子から1を出力する。その後、RS-FF245は、S端子への入力が0になってもQ端子からの出力は1を維持する。このRS-FF245が、図4の保持部207にあたる。
【0063】
図6は、異常検知回路の動作を示す図である。リセット信号が1でオンの場合、RS-FF245は、0を出力する。また、リセット信号が0でオフであり且つイネーブル信号が0でオフの場合、RS-FF245は、値を保持する。
【0064】
また、リセット信号が0でオフであり且つイネーブル信号が1でオンの場合、救済デコード信号が正常であり値が全て一定値であれば、救済デコード信号の各値の時間方向の変化はなく値は一定である。したがって、OR回路243からの出力は0となる。この場合、RS-FF245は、値を保持する。これに対して、救済デコード信号に異常があり値が変化した場合、救済デコード信号の値のいずれかで0から1又は1から0に変わる時間方向の変化が発生する。その場合、OR回路243は、遅延時間の間に1を出力する。この時、RS-FF245は、保持する値が1になるので、出力が1になる。
【0065】
図7は、正常値が1の場合の異常検知回路のタイミングチャートである。ここでは、救済デコード信号の値が1で固定の場合に正常である。次に、図7を参照して、正常値が1の場合の異常検知回路204の動作について説明する。図7では、1つの比較回路240に入力された救済デコード信号の値を有する入力信号を救済デコード信号として表し、その比較回路240において入力信号が遅延された信号を遅延救済デコード信号として表した。また、内蔵RAM200の動作中は、AND回路244へ入力されるイネーブル信号は1で固定のため省略した。
【0066】
救済デコード信号が、正常値である1から時刻T1で0に変化し、時間P1の間は値が0であり、その後、時刻T2で正常値である1に戻る。この場合、遅延回路241は、救済デコード信号に遅延時間D1を与えた遅延救済デコード信号を出力する。そのため、時刻T1から遅延時間D1が経過するまで、EOR回路242に入力される遅延救済デコード信号の値は1である。EOR回路242は、時刻T1において値が0の救済デコード信号と値が1の遅延救済デコード信号との入力を受けるので、出力する信号の値が0から1に変化し、その後に遅延時間D1が経過するまで値が1の信号を出力する。OR回路243は、EOR回路242から値が1の信号の入力を受けて、出力する信号の値が0から1に変化し、その後に遅延時間D1が経過するまで値が1の信号を出力する。AND回路244は値が1のイネーブル信号の入力を受けているため、OR回路243から値が1の信号の入力をうける間は出力する信号の値は1となる。RS-FF245は、R端子への入力が0であるので、1の値を保持する。これにより、検出結果収集回路113により収集される検知信号の値は時刻T3において0から1に変化する。
【0067】
その後、時刻T2までは、EOR回路242に入力される救済デコード信号と遅延救済デコード信号の値はいずれも0であるので、EOR回路242は、値が0の信号を出力する。この間、OR回路243及びAND回路244も、値が0の信号を出力する。RS-FF245は、1の値を保持する。したがって、検出結果収集回路113により収集される検知信号の値は1に維持される。
【0068】
次に、時刻T2になると、EOR回路242に入力される救済デコード信号の値が1に変化し遅延救済デコード信号の値は0であるので、EOR回路242は、出力する信号の値が0から1に変化する。その後、遅延時間D1が経過するまで、EOR回路242は、値が1の信号を出力する。OR回路243は、EOR回路242から値が1の信号の入力を受けて、出力する信号の値が0から1に変化し、その後に遅延時間D1が経過するまで値が1の信号を出力する。AND回路244は値が1のイネーブル信号の入力を受けているため、OR回路243から値が1の信号の入力を受ける間は出力する信号の値は1となる。この間、RS-FF245は、R端子への入力が0であるので、1の値を保持する。したがって、検出結果収集回路113により収集される検知信号の値は1に維持される。
【0069】
その後、EOR回路242に入力される救済デコード信号と遅延救済デコード信号の値はいずれも1となり、EOR回路242は、値が0の信号を出力する。この時、OR回路243及びAND回路244も、値が0の信号を出力する。RS-FF245は、1の値を保持する。したがって、検出結果収集回路113により収集される検知信号の値は1に維持される。すなわち、時刻T3以降は、検出結果収集回路113により収集される検知信号の値は1に維持される。
【0070】
図8は、正常値が0の場合の異常検知回路のタイミングチャートである。ここでは、救済デコード信号の値が0で固定の場合に正常である。次に、図8を参照して、正常値が0の場合の異常検知回路204の動作について説明する。
【0071】
救済デコード信号が、正常値である0から時刻T11で1に変化し、時間P2の間は値が1であり、その後、時刻T12で正常値である0に戻る。この場合、遅延回路241は、救済デコード信号に遅延時間D11を与えた遅延救済デコード信号を出力する。そのため、時刻T11から遅延時間D11が経過するまで、EOR回路242に入力される遅延救済デコード信号の値は0である。EOR回路242は、時刻T11において値が1の救済デコード信号と値が0の遅延救済デコード信号との入力を受けるので、出力する信号の値が0から1に変化し、その後に遅延時間D11が経過するまで値が1の信号を出力する。OR回路243は、EOR回路242から値が1の信号の入力を受けて、出力する信号の値が0から1に変化し、その後に遅延時間D11が経過するまで値が1の信号を出力する。AND回路244は値が1のイネーブル信号の入力を受けているため、OR回路243から値が1の信号の入力をうける間は出力する信号の値は1となる。RS-FF245は、R端子への入力が0であるので、1の値を保持する。これにより、検出結果収集回路113により収集される検知信号の値は時刻T13において0から1に変化する。
【0072】
その後、時刻T12までは、EOR回路242に入力される救済デコード信号と遅延救済デコード信号の値はいずれも1であるので、EOR回路242は、値が0の信号を出力する。この間、OR回路243及びAND回路244も、値が0の信号を出力する。RS-FF245は、1の値を保持する。したがって、検出結果収集回路113により収集される検知信号の値は1に維持される。
【0073】
次に、時刻T12になると、EOR回路242に入力される救済デコード信号の値が0に変化し遅延救済デコード信号の値は1であるので、EOR回路242は、出力する信号の値が0から1に変化する。その後、遅延時間D11が経過するまで、EOR回路242は、値が1の信号を出力する。OR回路243は、EOR回路242から値が1の信号の入力を受けて、出力する信号の値が0から1に変化し、その後に遅延時間D11が経過するまで値が1の信号を出力する。AND回路244は値が1のイネーブル信号の入力を受けているため、OR回路243から値が1の信号の入力を受ける間は出力する信号の値は1となる。この間、RS-FF245は、R端子への入力が0であるので、1の値を保持する。したがって、検出結果収集回路113により収集される検知信号の値は1に維持される。
【0074】
その後、EOR回路242に入力される救済デコード信号と遅延救済デコード信号の値はいずれも0となり、EOR回路242は、値が0の信号を出力する。この時、OR回路243及びAND回路244も、値が0の信号を出力する。RS-FF245は、1の値を保持する。したがって、検出結果収集回路113により収集される検知信号の値は1に維持される。すなわち、時刻T13以降は、検出結果収集回路113により収集される検知信号の値は1に維持される。
【0075】
図9は、実施例1に係るメモリセル救済回路の異常検知処理のフローチャートである。次に、図9を参照して、本実施例に係るメモリセル救済回路300の異常検知処理の流れを説明する。
【0076】
異常検知回路204は、救済デコード信号の入力を救済デコーダ回路203から受ける(ステップS1)。この時、各比較回路240は、それぞれ対応するセレクタ回路220~223へ入力される値が救済デコード信号として入力される。
【0077】
各比較回路240の遅延回路241は、入力された救済デコード信号に遅延を付加して遅延救済デコード信号を生成する(ステップS2)。
【0078】
各比較回路240のEOR回路242は、救済デコード信号及び遅延救済デコード信号の入力を受ける。そして、各比較回路240のEOR回路242は、救済デコード信号と遅延救済デコード信号との排他的論理和を出力する(ステップS3)。
【0079】
OR回路243は、各比較回路240から救済デコード信号と遅延救済デコード信号との排他的論理和が入力信号として入力される。そして、OR回路243は、各比較回路240からの入力信号の論理和を出力する(ステップS4)。
【0080】
AND回路244は、OR回路243から出力された各比較回路240からの入力信号の論理和の入力を受ける。そして、AND回路244は、イネーブル信号が1か0かにより、イネーブル信号がオンか否かを判定する(ステップS5)。
【0081】
イネーブル信号が0でありオフの場合(ステップS5:否定)、AND回路244は、信号の出力を停止する(ステップS6)。この場合、内蔵RAM200は動作していないので、メモリセル救済回路300の異常検知処理は終了する。
【0082】
これに対して、イネーブル信号が1でありオンの場合(ステップS5:肯定)、AND回路244は、OR回路243からの入力信号を出力する(ステップS7)。
【0083】
RS-FF245は、AND回路244から出力された信号の入力を受ける。そして、RS-FF245は、リセット信号が0か1かにより、リセット信号がオフか否かを判定する(ステップS8)。リセット信号が1でありオンの場合(ステップS8:否定)、RS-FF245は、初期化を行い保持する値を0にする(ステップS9)。
【0084】
これに対して、リセット信号が0でありオフの場合(ステップS8:肯定)、RS-FF245は、保持する値が0か否かを判定する(ステップS10)。
【0085】
保持する値が0の場合(ステップS10:肯定)、RS-FF245は、入力信号の値を保持する(ステップS11)。すなわち、入力信号の値が0であれば、RS-FF245は、そのまま0を保持し、入力信号の値が1であれば、RS-FF245は、保持する値を1にする。
【0086】
これに対して、保持する値が1の場合(ステップS10:否定)、RS-FF245は、保持する値を1のまま維持する(ステップS12)。
【0087】
検出結果収集回路113は、定期的に、各内蔵RAM200の各異常検知回路204から出力された異常検知信号を収集する(ステップS13)。
【0088】
読出し回路114は、外部装置150からの異常検知信号の取得要求にしたがって、各内蔵RAM200の各異常検知回路204から出力された異常検知信号を検出結果収集回路113から読み出して、外部装置150へ送信する(ステップS14)。
【0089】
図10は、実施例1に係る内蔵RAM故障解析のフローチャートである。次に、図10を参照して、本実施例に係る内蔵RAM200の故障解析処理の流れについて説明する。
【0090】
検出結果収集回路113は、内蔵RAM200に内蔵された異常検知回路204から出力された異常検知信号を収集する。故障の解析を行う作業者は、外部装置150を用いて内蔵RAM2000の障害情報を収集する(ステップS101)。この時、外部装置150は、読出し回路114から収集された異常検知信号を取得する。
【0091】
管理者は、収集された異常検知信号を参照して、メモリセル救済回路300の異常を表す救済回路異常が検出されたか否かを判定する(ステップS102)。
【0092】
メモリセル救済回路300の異常が検出された場合(ステップS102:肯定)、作業者は、メモリセル救済回路300の故障解析を実行する(ステップS103)。
【0093】
作業者は、メモリセル救済回路300の故障解析により、故障個所又は故障原因が特定できたか否かを判定する(ステップS104)。故障個所又は故障原因が特定できた場合(ステップS104:肯定)、内蔵RAM200の故障解析処理は、ステップS115へ進む。
【0094】
これに対して、故障個所又は故障原因が不明な場合(ステップS104:否定)、作業者は、故障個所及び故障原因が不明とする。そして、内蔵RAM200の故障解析処理は、ステップS116へ進む。
【0095】
一方、メモリセル救済回路300の異常が検出されていない場合(ステップS102:否定)、作業者は、収集した障害情報から故障個所の推定を実行する(ステップS105)。
【0096】
そして、作業者は、故障個所の推定によりアドレス異常が発生しているか否かを判定する(ステップS106)。アドレス異常が発生している場合(ステップS106:肯定)、作業者は、デコーダ回路202の故障解析を実行する(ステップS107)。その後、内蔵RAM200の故障解析処理は、ステップS113へ進む。
【0097】
これに対して、アドレス異常が発生していない場合(ステップS106:否定)、作業者は、データ異常が発生しているか否かを判定する(ステップS108)。データ異常が発生していない場合(ステップS108:否定)、作業者は、その他の周辺回路の故障解析を実行する(ステップS109)。その後、内蔵RAM200の故障解析処理は、ステップS113へ進む。
【0098】
これに対して、データ異常が発生している場合(ステップS108:肯定)、作業者は、メモリセル救済が行われているか否かを判定する(ステップS110)。メモリセル救済が行われていない場合(ステップS110:否定)、内蔵RAM200の故障解析処理は、ステップS112へ進む。
【0099】
これに対して、メモリセル救済が行われている場合(ステップS110:肯定)、作業者は、救済情報を確認する(ステップS111)。
【0100】
そして、作業者は、メモリセルアレイ201の故障解析を実行する(ステップS112)。その後、内蔵RAM200の故障解析処理は、ステップS113へ進む。
【0101】
その後、作業者は、各故障解析により故障個所又は故障原因が特定できたか否かを判定する(ステップS113)。故障個所又は故障原因が特定できた場合(ステップS113:肯定)、内蔵RAM200の故障解析処理は、ステップS115へ進む。
【0102】
これに対して、故障個所及び故障原因が不明な場合(ステップS113:否定)、作業者は、内蔵RAM200の全箇所の解析が完了したか否かを判定する(ステップS114)。解析を行っていない箇所が残っている場合(ステップS114:否定)、内蔵RAM200の故障解析処理は、ステップS105へ戻る。
【0103】
これに対して、全箇所の解析が完了した場合(ステップS114:肯定)、作業者は、故障個所及び故障原因が不明とする。そして、内蔵RAM200の故障解析処理は、ステップS116へ進む。
【0104】
故障個所又は故障原因を特定した場合(ステップS104:肯定)、作業者は、解析結果を情報処理装置1の管理者などに通知する(ステップS115)。
【0105】
また、故障個所及び故障原因が不明な場合(ステップS104:否定)、作業者は、解析不可と判定する(ステップS116)。このように、作業者は、異常検知信号を確認することで、メモリセル救済回路300に異常が発生しているか否かをすぐに判定することができ、故障個所の切り分けを容易に行うことができる。
【0106】
ここで、本実施例では、遅延を与えるデジタル回路により信号変化を検出したが、他の方法で信号変化を検出してもよい。図11は、信号変化検出のための他の方法を示す図である。例えば、比較回路240として、図11に示すようなキャパシタ302及び抵抗303を有する一般的な微分回路301を用いることも可能である。微分回路301は、入力信号が変化することで出力にパルスが発生する。異常検知回路204は、微分回路301により発生されるパルスを用いて信号の変化を用いて故障検知を行うことも可能である。
【0107】
さらに、本実施例では、LSI100の共通部101に配置された検出結果収集回路113で異常検知信号を収集し、読出し回路114により外部装置150へ送信したが、異常検知信号の収集方法は他の方法を用いることもできる。例えば、異常検知信号を直接外部装置150へ出力してもよい。そこで、異常検知信号の他の収集方法について説明する。
【0108】
図12は、実施例1に係る異常検知信号収集方法の一例を説明するための図である。図12に示す構成の場合、各内蔵RAM200の異常検知信号がそれぞれ個別に外部装置150へ直接出力される。この場合、外部装置150は、異常検知信号を同時に読み取ることができる、ただし、異常検知信号を取り出す端子が、内蔵RAM200の個数分設けられる。
【0109】
図13は、実施例1に係る異常検知信号収集方法の他の例を説明するための図である。図13に示す構成の場合、複数の内蔵RAM200の異常検知信号がOR回路105でまとめられて各異常検知信号の論理和が出力される。これにより、異常検知信号を取り出す端子の数を1本に減らすことができる。すなわち、OR回路105は、LSI100に配置された複数の内蔵RAM200のいずれかで異常が検知された場合、内蔵RAM2000全体の異常の情報として出力する。このOR回路105が、「情報集約部」の一例にあたる。
【0110】
この構成の場合、どの内蔵RAM200で異常が検知されたかを区別することは困難である。ただし、通常は複数のお内蔵RAMが同時にデータ異常を起こす確率は非常に低いため、作業者は、データ異常を起こした内蔵RAM200のメモリセル救済回路300で異常を検出したと判断しても問題はない。また、図13の構成は、検出結果収集回路113へ異常検知信号を出力する場合にも用いることが可能である。
【0111】
以上に説明したように、本実施例に係る内蔵RAM、救済デコーダ回路から出力される救済デコード信号の変化を検出して、メモリセル救済回路の故障検知を行う。そして、一旦故障が検知された情報は、リセットが行われるまで維持される。これにより、内蔵RAMに異常が発生した場合に、故障解析を行う作業者は、メモリセル救済回路に異常が発生したか否かをすぐに判定することができ、メモリセル救済回路の異常かそれ以外の箇所の異常かの故障個所の切り分けを迅速に行うことができる。そして、メモリセル救済回路の異常であれば、作業者は、メモリセル救済回路に限定して故障解析を行えばよく、内蔵RAMにおける故障解析が容易になる。
【実施例0112】
図14は、実施例2に係る異常検知回路の回路図である。また、図15は、実施例2に係る異常検知信号収集方法の一例を説明するための図である。本実施例に係る異常検知回路204は、スキャン付RS-FF246を用いることが実施例1と異なる。以下の説明では、実施例1と同様の各部の動作については説明を省略する。
【0113】
スキャン付RS-FF246は、スキャン機能を有するRS-FFである。スキャン機能は、LSI100の内部のフリップフロップの値を外部に読み出す機能である。スキャン付RS-FF246には、リセット信号の他に、スキャンクロック(sck:scan clock)信号、スキャンイネーブル(se:scan enable)信号及びスキャンイン(si:scan in)信号が入力される。
【0114】
スキャン付RS-FF246は、AND回路244から出力された異常検知信号を保持する。そして、スキャン付RS-FF246は、スキャンイネーブル信号がオンの場合に、スキャンイン信号として入力された信号におけるスキャンクロックにしたがった所定の位置に自己が有する異常検知信号の値を格納する。そして、スキャン付RS-FF246は、異常検知信号の値を格納した信号をスキャンアウト(so:scan out)端子から出力する。この場合、スキャン付RS-FF246は、Q端子は出力に用いない。このスキャン付RS-FF246が、図4の保持部207にあたる。
【0115】
図15に示すように、LSI100には、TAPコントローラ(Test Access Port Controller)208が搭載される。各内蔵RAM200のスキャン付RS-FF246は、スキャンイン(si)端子とスキャンアウト(so)端子とが数珠つなぎで接続され、スキャンチェーンを構成する。
【0116】
TAPコントローラ208は、スキャンチェーンされた先頭の異常検知回路204のスキャン付RS-FF246に、スキャンイン(si)信号を入力する。また、TAPコントローラ208は、スキャンイネーブル(se)信号及びスキャンクロック(sck)を端子280から出力する。そして、TAPコントローラ208は、スキャンチェーンされた全ての異常検知回路204のスキャン付RS-FF246に入力して、各スキャン付RS-FF246にスキャンシフト動作を行わせる。
【0117】
TAPコントローラ208は、例えば、JTAG(Joint Test Action Group)(IEEE1149.1)で定義されたLSI外部端子を有する。例えば、TAPコントローラ208は、TDI(Test Data Input)端子、TDO(Test Data Output)端子、TCK(Test Clock)端子及びTMS(Test Mode Select)端子をLSI外部端子として有する。そして、TAPコントローラ208は、スキャン付RS-FF246によるスキャンシフト動作で得られた各異常検知信号の値が載せられた信号をTDO端子から出力する。すなわち、TAPコントローラ208は、異常検知回路204による異常検知の情報のそれぞれを識別可能に1つの信号の中に格納して出力する。このTAPコントローラ208が、「出力部」の一例にあたる。
【0118】
また、ここでは、異常検知回路204のスキャン付RS-FF246をスキャンチェーンとして接続したが、他のフリップフロップをスキャンチェーンに接続することも可能である。また、この場合、検出結果収集回路113及び読出し回路114をLSI100内部に搭載しなくてもよい。
【0119】
以上に説明したように、本実施例に係るLSIは、スキャン機能を用いて異常検知信号をまとめて外部に読み出すことが可能である。これにより、外部へ異常検知信号を出力するための信号線を1つにまとめることができるとともに、異常が発生したメモリセル救済回路300を特定することが可能となる。したがって、LSIのサイズを小さく抑えつつ、より容易に故障解析を実行することが可能となる。
【符号の説明】
【0120】
1 情報処理装置
10 プロセッサ
11 メモリ
12 I/Oコントローラ
13 NIC
14 GPU
15 SSD
16 HDD
17 外部接続ポート
18 電源装置
19 冷却装置
20 システムコントローラ
100 LSI
101 共通部
102 キャッシュ
103 コア
104 I/O回路
105 OR回路
111 フューズ
112 内蔵RAM試験回路
113 検出結果収集回路
114 読出し回路
131 ロジック回路
132 内蔵RAM
150 外部装置
200 内蔵RAM
201 メモリセルアレイ
202 デコーダ回路
203 救済デコーダ回路
204 異常検知回路
205 遅延部
206 比較部
207 保持部
208 TAPコントローラ
210~213 メモリセル
214 置換メモリセル
220~223 セレクタ回路
240 比較回路
241 遅延回路
242 EOR回路
243 OR回路
244 AND回路
245 RS-FF
246 スキャン付RS-FF
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15