(57)【要約】【課題】それぞれメモリにアクセス可能な複数のＣＰＵを含む情報処理装置において、情報処理装置での処理形態に応じたメモリエラー処理を可能にする。【解決手段】メモリを有する複数のＣＰＵ（２００〜２０３）と、それぞれのＣＰＵは、上記メモリにアクセスしたＣＰＵを識別可能なＣＰＵ識別情報を記憶可能な第１記憶部（ＣＰＵＩＤ）を有する。メモリにアクセスしたときソフトウェアエラーが発生すると、メモリを有するＣＰＵは、どのＣＰＵが該当するメモリをアクセスしたかを識別するＣＰＵ識別情報を第１記憶部に記憶し、メモリのソフトエラー発生を割込みコントローラ（３０）に通知する。上記ＣＰＵは、上記割り込みコントローラからメモリのソフトウェアエラーの割り込みを受理した後は、上記第１記憶部の記憶情報を用いて、アクセスしたＣＰＵを認識し、エラー処理が行われる。【選択図】図１
2010231619.tif 000002
【特許請求の範囲】
【請求項１】
それぞれメモリにアクセス可能な複数のＣＰＵを含む情報処理装置であって、
上記メモリにアクセスしたＣＰＵを識別可能なＣＰＵ識別情報を記憶可能な第１記憶部を含み、上記第１記憶部の記憶情報を用いて、上記メモリのソフトウェアエラーに対応するエラー処理が行われることを特徴とする情報処理装置。
【請求項２】
ソフトウェアエラーに対応するエラー通知を取り込み、所定の優先順位に従って割り込み信号をアサートする割り込みコントローラを含み、
上記ＣＰＵは、上記割り込みコントローラからメモリのソフトウェアエラーの割り込みを受理する際に、該当するメモリのソフトウェアエラーを発生したアドレス情報が上記第１記憶部に格納される請求項１記載の情報処理装置。
【請求項３】
上記割り込みコントローラは、ソフトウェア設定によるＣＰＵ間割り込みの機能を含み、
上記メモリを制御するＣＰＵの識別情報と、上記第１記憶部に記憶されたＣＰＵ識別情報とが異なるとき、ＣＰＵ間割り込みを発生し、上記第１記憶部に記憶されたＣＰＵ識別情報に対応するＣＰＵに対して、上記メモリでのソフトウェアエラーの発生を通知する請求項２記載の情報処理装置。
【請求項４】
上記複数のＣＰＵで共有される共有メモリと、
上記共有メモリの動作を制御可能な制御回路と、を有し、
上記制御回路は、上記メモリのソフトウェアエラーを発生したアドレス、及び上記供給メモリのソフトウェアエラーを生じた場合の上記共有メモリにアクセスしたＣＰＵの識別情報を保持可能な第２記憶部と、を含み、
上記割り込みコントローラは、上記共有メモリのソフトウェアエラーの検出結果と、メモリアクセスにかかるＣＰＵの識別情報が上記制御回路から通知された場合に、当該識別情報に対応するＣＰＵに対して、上記メモリのソフトウェアエラー割り込みを発生させる請求項２記載の情報処理装置。
【請求項５】
上記複数のＣＰＵはそれぞれ１次キャッシュを含み、
上記情報処理装置は、上記１次キャッシュのタグのコピーを記憶する複製タグメモリを含み、
上記１次キャッシュをアクセスするときに、上記複製タグメモリが更新可能に構成され、
上記複製タグメモリでメモリエラーが発生したとき、上記１次キャッシュを制御するＣＰＵ内の上記第１記憶部には、上記１次キャッシュのアクセスにかかるＣＰＵの識別情報と、上記１次キャッシュのタグ情報と、上記複製メモリに対応するフラグビットが設定される請求項２記載の情報処理装置。
【請求項６】
上記情報処理装置は、２次キャッシュと、上記２次キャッシュを制御可能な制御回路と、を含み、
上記２次キャッシュ制御回路は、該当するメモリのソフトウェアエラーを発生したアドレス、及び上記メモリのソフトウェアエラーを生じた場合の上記メモリにアクセスしたＣＰＵの識別情報を保持可能な第３記憶部を含み、
上記割り込みコントローラは、上記２次キャッシュのソフトウェアエラーの検出結果、及び上記２次キャッシュのアクセスにかかるＣＰＵの識別情報が通知されると、上記ＣＰＵの識別情報に対応するＣＰＵに対して、上記メモリのソフトウェアエラー割り込みを発生する請求項２記載の情報処理装置。
【請求項７】
上記情報処理装置は、２次キャッシュと、上記２次キャッシュを制御可能な制御回路と、を含み、
上記２次キャッシュ制御回路は、該当するメモリのソフトウェアエラーを発生したアドレス、及び上記メモリのソフトウェアエラーを生じた場合の上記メモリにアクセスしたＣＰＵの識別情報を保持可能な第３記憶部を含み、
複数のＣＰＵが対称性マルチプロセシングとして同じＯＳで動作し、いずれかのＣＰＵの２次キャッシュへのアクセスでソフトウェアエラーが発生したとき、
上記割り込みコントローラは、上記２次キャッシュのソフトウェアエラーの検出結果、及び上記２次キャッシュのアクセスにかかるＣＰＵの識別情報が通知されると、
同じＯＳで動作する複数のＣＰＵに対して、一斉に上記メモリのソフトウェアエラー割り込みを発生する請求項２記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置におけるソフトウェアエラー処理技術に関し、例えばメモリにＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）やパリティなどのメモリのエラーを検出する機構を備えた複数のＣＰＵ（中央処理装置）を有するマイクロプロセッサに適用して有効な技術に関する。
【背景技術】
【０００２】
半導体技術の進歩により、微細化が進み、複数のＣＰＵや機能ブロックが搭載されるマイクロプロセッサが開発されているが、特にメモリのソフトウェアエラーによる誤動作の影響は顕著となっている。ソフトウェアエラーは、宇宙線のうち、主にアルファ線や中性子線がメモリセルの内容を破壊してしまうことにより生じる。ソフトウェアエラーは、ハードウェアエラーと異なり、永久故障ではなく一時故障であるため、メモリセルの内容を訂正することができる。このソフトウェアエラーに対して、エラーの検出を行うパリティや、検出または訂正を行うＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）機能をメモリに付加することが一般的である。
【０００３】
微細化に伴う集積度の向上により、複数のＣＰＵが搭載されるマイクロプロセッサでは、それぞれのＣＰＵの１次ＲＡＭ（ランダム・アクセス・メモリ）や１次キャッシュ、共有メモリとしての２次ＲＡＭや２次キャッシュ、ＲＯＭ（リード・オンリー・メモリ）など多くのメモリが搭載される。高信頼化のために、各メモリに対して、パリティやＥＣＣ機能を実装することが必要となっている。複数のＣＰＵと複数のメモリを搭載するマイクロプロセッサでは、どのようにメモリエラーを検出し、訂正するかが、信頼度を上げるために重要となる。
【０００４】
ＣＰＵ内のメモリのうち、１次キャッシュメモリのパリティエラーの処理方法として、割り込みによるパリティエラーの通知と、キャッシュラインの無効化が、特許文献１に開示される。キャッシュメモリのパリティエラーを検出すると、割り込みを発生してオペレーティングシステムに通知し、割り込みステータスレジスタをソフトウェアで参照することにより、パリティエラーであることを確認することができる。この割り込みは、命令に同期し、直前の命令までは命令を完了しており、後続の命令は実行が中断されている。パリティエラーを生じた命令に関しては、プログラムカウンタは記憶されており、割り込みの種類により完了させることや、中断させることを選ぶことができる。パリティエラーを生じたキャッシュメモリのラインがメモリと同じ内容のときは、キャッシュラインを無効化する処理を行う。
【０００５】
複数のＣＰＵと複数のメモリを搭載するマイクロプロセッサのうち、共通のオペレーティングシステム（ＯＳ）で動作する場合のハードウェアエラーの処理方法として、エラー情報の記録が、特許文献２に開示されている。共通のＯＳで動作するマイクロプロセッサでハードウェアエラーが生じたときには、エラーを発生したＣＰＵまたは、エラーを発生していない別の正常なＣＰＵで、オペレーティングシステムに従い、エラー情報を記録し、ファイルシステムの同期処理を実施してメモリダンプを採取した後、システムを再起動する。エラー情報には、エラーが発生したＣＰＵのＣＰＵ番号と、エラーが発生したデータのアドレスが記載される。他のＣＰＵへの通知にはＣＰＵ間通信用に共有メモリが使用される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−０９９４０６号公報
【特許文献２】再表２００６／０８２６５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、1次キャッシュのパリティエラーに関して、割り込みを用いたメモリエラー処理が開示されるが、複数のＣＰＵと複数のメモリでのメモリエラー処理方法は開示されていない。
【０００８】
特許文献２では、共通のオペレーティングシステムで動作する複数のＣＰＵと複数のメモリを搭載するマイクロプロセッサでのメモリエラーの処理方法が開示される。しかし、特許文献２では、各ＣＰＵが固有に持つメモリとＣＰＵ間の通信用に共有メモリがあり、ＣＰＵが固有に持つメモリに関してメモリエラー処理が対象であり、共有メモリでのメモリエラー処理は考慮されていない。メモリエラー発生時のメモリエラー情報のＣＰＵ番号は、ＣＰＵの固有のメモリが対象のため、常に固有メモリを保有するＣＰＵ番号となる。
【０００９】
複数のＣＰＵを有するマルチプロセッサは、二つの処理形態、すなわち、非対称マルチプロセシング（ＡＭＰ：Ａｓｙｍｍｅｔｒｉｃ  Ｍｕｌｔｉ−ｐｒｏｃｅｓｓｉｎｇ）と、対称マルチプロセシング（ＳＭＰ：Ｓｙｍｍｅｔｒｉｃ  Ｍｕｌｔｉ−Ｐｒｏｃｅｓｓｉｎｇ）とを有する。
【００１０】
非対称マルチプロセシングは、ＣＰＵごとに独立のメモリ空間を持ち、処理がＣＰＵごとに静的に割り付けられる並列処理方式である。単一のＣＰＵを複数個バスで接続し、それぞれにオペレーティングシステムを動作させた処理形態はＡＭＰとなる。
【００１１】
対称マルチプロセシングは、複数のＣＰＵでメモリ空間を共有し、処理が均一になるよう動的に割り付けられる並列処理方式である。ＳＭＰ向けのオペレーティングシステムは、メモリ空間を共通とするスレッドと呼ばれる処理単位に分割し、複数のＣＰＵに処理負荷が均一になるように、スレッドを割り当てて処理を行う。
【００１２】
本願発明者は、複数のＣＰＵと複数のメモリを搭載するマルチプロセッサなどの情報処理装置で、複数のオペレーティングシステムが動作する場合において、ＣＰＵが個別に持つ内蔵メモリと共有メモリでのメモリエラーの処理方法について検討したところ、マルチプロセッサなどの情報処理装置での処理形態に応じたメモリエラー処理が必要であることを見い出した。
【００１３】
尚、特許文献２では、共通のオペレーティングシステムでＣＰＵが固有に持つメモリに関してのメモリエラーの開示であるが、前述の処理形態を鑑みると、複数の異なるオペレーティングシステムが動作する場合は考慮されていない。
【００１４】
本発明の目的は、それぞれメモリにアクセス可能な複数のＣＰＵを含む情報処理装置において、報処理装置での処理形態に応じたメモリエラー処理を可能とする技術を提供することにある。
【００１５】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１６】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１７】
すなわち、メモリを有する複数のＣＰＵと、それぞれのＣＰＵは、上記メモリにアクセスしたＣＰＵを識別可能なＣＰＵ識別情報を記憶可能な第１記憶部（ＣＰＵＩＤ）を有する。メモリにアクセスしたときソフトウェアエラーが発生すると、メモリを有するＣＰＵは、どのＣＰＵが該当するメモリをアクセスしたかを識別するＣＰＵ識別情報を第１記憶部に記憶し、メモリのソフトエラー発生を割込みコントローラ（３０）に通知する。上記ＣＰＵは、上記割り込みコントローラからメモリのソフトウェアエラーの割り込みを受理した後は、上記第１記憶部の記憶情報を用いて、アクセスしたＣＰＵを認識し、エラー処理が行われるように構成することができる。
【発明の効果】
【００１８】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１９】
すなわち、メモリにアクセスしたＣＰＵの識別情報に応じて適切なエラー処理を行うことができるので、複数のＣＰＵと複数のメモリを搭載する情報処理装置において、情報処理装置での処理形態に応じたメモリエラー処理が可能になる。
【図面の簡単な説明】
【００２０】
【図１】本発明にかかる情報処理装置の一例とされるマイクロプロセッサの構成例ブロック図である。
【図２】上記マイクロプロセッサにおいてメモリエラーが発生した場合の処理の説明図である。
【図３】上記マイクロプロセッサにおいてＣＰＵのメモリアクセスによりメモリエラーが発生するケースの説明図である。
【図４】上記マイクロプロセッサにおいて、ＣＰＵで複製タグのメモリエラーが発生するケースの説明図である。
【図５】上記マイクロプロセッサに含まれる複製タグメモリ（ＤＡＡ）の構成例ブロック図である。
【図６】上記マイクロプロセッサにおいて、互いに異なるオペレーティングシステムが動作するときに対称性マルチプロセシングのＣＰＵでメモリエラーが発生するケースの第一の説明図である。
【図７】上記マイクロプロセッサにおいて、互いに異なるオペレーティングシステムが動作するときに対称性マルチプロセシングのＣＰＵでメモリエラーが発生するケースの第二の説明図である。
【発明を実施するための形態】
【００２１】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００２２】
〔１〕本発明の代表的な実施の形態に係る情報処理装置（１０）は、それぞれメモリ（Ｌ１Ｃ，ＲＡＭ１，ＲＡＭ２）にアクセス可能な複数のＣＰＵ（２００〜２０３）と、上記メモリにアクセスしたＣＰＵを識別可能なＣＰＵ識別情報を記憶可能な第１記憶部とを含む。そして、上記第１記憶部の記憶情報を用いて、上記メモリのソフトウェアエラーに対応するエラー処理が行われる。ＣＰＵ識別情報として、ＣＰＵ毎に割り当てられたＣＰＵ番号などのＩＤ情報を挙げることができる。
【００２３】
〔２〕上記〔１〕において、ソフトウェアエラーに対応するエラー通知を取り込み、所定の優先順位に従って割り込み信号をアサートする割り込みコントローラ（３０）を設けることができる。このとき、上記ＣＰＵは、上記割り込みコントローラからメモリのソフトウェアエラーの割り込みを受理する際に、該当するメモリのソフトウェアエラーを発生したアドレス情報が上記第１記憶部に格納されるように構成することができる。
【００２４】
〔３〕上記〔２〕において、上記割り込みコントローラは、ソフトウェア設定によるＣＰＵ間割り込みの機能を含み、上記メモリを制御するＣＰＵの識別情報と、上記第１記憶部に記憶されたＣＰＵ識別情報とが異なるとき、ＣＰＵ間割り込みを発生し、上記第１記憶部に記憶されたＣＰＵ識別情報に対応するＣＰＵに対して、上記メモリでのソフトウェアエラーの発生を通知するように構成することができる。
【００２５】
〔４〕上記〔２〕において、上記複数のＣＰＵで共有される共有メモリ（５０）と、上記共有メモリの動作を制御可能な制御回路（４０）とを設けることができる。そして上記制御回路には、上記メモリのソフトウェアエラーを発生したアドレス、及び上記供給メモリのソフトウェアエラーを生じた場合の上記共有メモリにアクセスしたＣＰＵの識別情報を保持可能な第２記憶部を設けることができる。このとき、上記割り込みコントローラは、上記共有メモリのソフトウェアエラーの検出結果と、メモリアクセスにかかるＣＰＵの識別情報が上記制御回路から通知された場合に、当該識別情報に対応するＣＰＵに対して、上記メモリのソフトウェアエラー割り込みを発生させるように構成することができる。
【００２６】
〔５〕上記〔２〕において、上記複数のＣＰＵにはそれぞれ１次キャッシュ（Ｌ１Ｃ）を設けることができ、また、上記情報処理装置には、上記１次キャッシュのタグのコピーを記憶する複製タグメモリ（２１１）設けることができる。そして、上記１次キャッシュをアクセスするときに、上記複製タグメモリが更新可能に構成され、上記複製タグメモリでメモリエラーが発生したとき、上記１次キャッシュを制御するＣＰＵ内の上記第１記憶部には、上記１次キャッシュのアクセスにかかるＣＰＵの識別情報と、上記１次キャッシュのタグ情報と、上記複製メモリに対応するフラグビットが設定されるように構成することができる。
【００２７】
〔６〕上記〔２〕において、上記情報処理装置には、２次キャッシュと、上記２次キャッシュを制御可能な制御回路とを設けることができる。そして上記２次キャッシュ制御回路には、該当するメモリのソフトウェアエラーを発生したアドレス、及び上記メモリのソフトウェアエラーを生じた場合の上記メモリにアクセスしたＣＰＵの識別情報を保持可能な第３記憶部を設けることができる。このとき、上記割り込みコントローラは、上記２次キャッシュのソフトウェアエラーの検出結果、及び上記２次キャッシュのアクセスにかかるＣＰＵの識別情報が通知されると、上記ＣＰＵの識別情報に対応するＣＰＵに対して、上記メモリのソフトウェアエラー割り込みを発生するように構成することができる。
【００２８】
〔７〕上記〔２〕において、上記情報処理装置には、２次キャッシュと、上記２次キャッシュを制御可能な制御回路とを設けることができる。そして上記２次キャッシュ制御回路には、該当するメモリのソフトウェアエラーを発生したアドレス、及び上記メモリのソフトウェアエラーを生じた場合の上記メモリにアクセスしたＣＰＵの識別情報を保持可能な第３記憶部を設けることができる。複数のＣＰＵが対称性マルチプロセシングとして同じＯＳで動作し、いずれかのＣＰＵの２次キャッシュへのアクセスでソフトウェアエラーが発生したとき、上記割り込みコントローラは、次のように構成することができる。
【００２９】
すなわち、上記割り込みコントローラは、上記２次キャッシュのソフトウェアエラーの検出結果、及び上記２次キャッシュのアクセスにかかるＣＰＵの識別情報が通知されると、同じＯＳで動作する複数のＣＰＵに対して、一斉に上記メモリのソフトウェアエラー割り込みを発生するように構成することができる。
【００３０】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００３１】
尚、発明を実施するための形態を説明するための全図において、同一の機能を有する要素には同一の符号を付して、その繰り返しの説明を省略する。
【００３２】
図１には、本発明にかかる情報処理装置の一例とされるマイクロプロセッサが示される。
【００３３】
同図に示されるマイクロプロセッサ（ＬＳＩ）１０は、特に制限されないが、公知の半導体集積回路製造技術によって単結晶シリコン基板のような１個の半導体基板に形成される。マイクロプロセッサ１０は、特に制限されないが、複数のＣＰＵを持つＣＰＵ群（ＣＰＵＧＲ）２０、割り込みコントローラ（ＩＮＴＣ）３０、ＲＯＭ制御部（ＲＯＭＣｔｌ）４０を備えるＲＯＭ（リード・オンリー・メモリ）５０を含む。ＣＰＵ群（ＣＰＵＧＲ）２０、割り込みコントローラ３０、及びＲＯＭ５０は、システムバス（ＳＢＵＳ）を介して互いに信号のやり取りが可能に結合される。
【００３４】
ＣＰＵ群２０は、特に制限されないが、４つのＣＰＵ２００，２０１，２０２，２０３、システムコントローラ（ＳＹＳＣ）２１０、２次キャッシュ（Ｌ２Ｃ）２１２、複製タグメモリ（ＤＡＡ）２１１を含み、それらがスヌープバス（ＳＮＰＢＵＳ）で互いに接続されて成る。４つのＣＰＵ２００，２０１，２０２，１０３は、互いに同一構成とされ、それぞれＣＰＵ番号（ＩＤ番号）＃０，＃１，＃２，＃３よって識別される。例えばＣＰＵ（＃０）２００は、ＣＰＵの中核をなすＣＰＵコア（Ｃｏｒｅ）、１次キャッシュ（Ｌ１Ｃ）、内蔵ＳＲＡＭ１（ＲＡＭ１）、内蔵ＳＲＡＭ２（ＲＡＭ２）、エラー情報保持回路（ＥＩＮＦＯ）を含む。ＣＰＵコア（Ｃｏｒｅ）は、予め設定されたプログラムに従って所定の演算処理を実行する。ＣＰＵコアは最初に１次キャッシュ（Ｌ１Ｃ）を読みに行く。１次キャッシュ（Ｌ１Ｃ）にデータがなかった場合は、上記１次キャッシュ（Ｌ１Ｃ）に比べて、より低速でより容量の大きな２次キャッシュ（Ｌ２Ｃ）２１２に読みに行く。内蔵ＳＲＡＭ１（ＲＡＭ１）及び内蔵ＳＲＡＭ２（ＲＡＭ２）は、上記ＣＰＵにおける演算処理の作業領域に使用される。また、メモリエラーの検出を可能とするメモリエラー検出回路（ＥＤＥＴ）が、メモリエラー検出を必要とする各メモリに設けられている。メモリエラー検出回路（ＥＤＥＴ）では、基本的にＥＣＣエラー検出やパリティエラー検出などによって、読み出しデータのエラー検出が行われる。エラー情報保持回路（ＥＩＮＦＯ）には、エラー情報が保持される。エラー情報保持回路（ＥＩＮＦＯ）は、特に制限されないが、エラーフラグを保持するためのエラーフラグレジスタ（ＥＲ＿ＦＬＧ）、メモリエラーを生じた場合のエラーアドレスを保持するためのエラーアドレスレジスタ（ＡＤＲ）、どのＣＰＵのメモリアクセスによりメモリエラーが発生したかを示すＣＰＵ番号を保持するためのアクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）を含む。このようなエラー情報保持回路（ＥＩＮＦＯ）は、システムコントローラ（ＳＹＳＣ）やＲＯＭ制御部４０内にも設けられている。
【００３５】
各ＣＰＵ２００〜２０３から割り込みコントローラ３０へは、メモリエラーを通知するためのメモリエラー通知信号（ＭＥＲＲ０〜ＭＥＲＲ３）が供給される。割り込みコントローラ３０から各ＣＰＵ２００〜２０３へは、メモリエラー割り込み信号（ＩＮＴ０〜ＩＮＴ３）が供給される。ＲＯＭ制御部４０から割り込みコントローラ３０へは、ＲＯＭメモリエラー通知信号（ＭＥＲＲ＿ＲＯＭ）とＲＯＭ５０へのＣＰＵアクセス番号（ＲＯＭ＿ＣＰＵ＿ＩＤ）が供給される。
【００３６】
ＲＡＭやＲＯＭなどからのデータ読み出しにおけるＥＣＣ（誤り訂正、検出）エラーや、パリティエラーを「メモリエラー」と総称する。また、ＥＣＣエラー検出は、１ビットエラー訂正と２ビットエラー検出を行うＳＥＣ−ＤＥＤを前提とし、パリティエラー検出は１ビットエラー検出を前提としている。
【００３７】
＜メモリエラー検出＞
メモリエラーの検出について説明する。
【００３８】
ＣＰＵ２００〜２０３では、コア内でのメモリのエラー検出が行われ、エラーが検出された場合には、対応するメモリエラー通知信号（ＭＥＲＲ０〜ＭＥＲＲ３）がアサートされる。ここでメモリエラーを通知するＣＰＵは、メモリエラーに係るメモリを有するＣＰＵであり、メモリアクセスを行ったＣＰＵではない。例えばＣＰＵ２００内のＲＡＭ２からのデータ読み出しでエラーを生じた場合、そのエラーを割り込みコントローラ３０に通知するのは、ＣＰＵ２００であり、このＣＰＵ２００によって、対応するメモリエラー通知信号ＭＥＲＲ０がアサートされる。このようにメモリエラーに係るメモリを有するＣＰＵによってメモリエラーを通知するようにするのは、ＣＰＵ内の複数のメモリ、例えば１次キャッシュ（Ｌ１Ｃ）、内蔵ＳＲＡＭ１（ＲＡＭ１）、内蔵ＳＲＡＭ２（ＲＡＭ２）が同時にメモリエラーを検出したときの優先度判定や、複数メモリのメモリエラー処理を行う際のハードウェア制御範囲を当該ＣＰＵ内にとどめることで、処理の簡略化を図るものである。
【００３９】
複製タグメモリ２１１や２次キャッシュ２１２は、複数のＣＰＵ２００〜２０３で共有される。このため、共有メモリからのデータ読み出しでエラーを生じた場合には、システムコントローラ２１０からメモリアクセスを行ったＣＰＵに対してメモリエラーが通知され、そのＣＰＵから割り込みコントローラ３０に対する割り込みによってメモリエラーが通知される。
【００４０】
＜メモリエラー割り込み発生＞
次に、メモリエラー割り込みが発生した場合の処理について説明する。
【００４１】
メモリエラーが通知された割り込みコントローラ（ＩＮＴＣ）は、他の割り込みとの優先度判定を行い、他の割り込みよりメモリエラーの優先度が高いとき、メモリエラー割り込みを選択し、ＣＰＵ（２００〜２０３）に対してメモリエラー割り込みを発生する。割り込みコントローラ（ＩＮＴＣ）は、各ＣＰＵ（２００〜２０３）に対して独立に割り込みを発生する。ここで、メモリエラーを通知したＣＰＵコアと、メモリエラー割り込み信号を受理するＣＰＵコアは同じものとする。つまり、メモリエラーを通知したＣＰＵコアによってメモリエラー割り込み信号が受理される。
【００４２】
＜メモリエラー割り込みを受けたＣＰＵでの処理＞
次に、メモリエラー割り込みを受けたＣＰＵでの処理について説明する。
【００４３】
メモリエラー割り込み信号（ＩＮＴ０〜ＩＮＴ３）によって、割り込みコントローラ３０からＣＰＵ（２００〜２０３）に対してメモリエラー割り込みが通知されると、該当するＣＰＵは、一つのメモリからのデータ読み出しでエラーが検出された場合はそのメモリを選択し、複数のメモリからのデータ読み出しでエラーが検出された場合は最も優先度が高いメモリを選択する。そして、ＣＰＵ内のエラー情報保持回路（ＥＩＮＦＯ）に、選択されたメモリのエラーフラグと、選択されたメモリに対するアクセスＣＰＵ番号及びエラーアドレスが、それぞれ対応するアクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）及びメモリエラーアドレスレジスタ（ＡＤＲ）に格納される。尚、メモリエラー割り込みが直ちにＣＰＵ（２００〜２０３）に受け付けられるとは限らないため、各メモリにおけるメモリエラー検出回路（ＥＤＥＴ）内には、アクセスＣＰＵ番号とエラーアドレスを保持するための手段が設けられている。エラーアドレスを保持するための手段には、特に制限されないが、フリップフロップなどを適用することができる。
【００４４】
また、メモリアクセスを行ったＣＰＵ（２００〜２０３）に対して直接割り込みを要求しないようにしている。その理由は、ハードウェアの簡略化のためである。すなわち、メモリアクセスを行ったＣＰＵ（２００〜２０３）に対して直接割り込みを要求する場合には、メモリアドレスをそのＣＰＵに渡す必要があり、ＣＰＵ数が増加すると、それだけ、ＣＰＵ間でそのアドレスの信号線数が増大する。これに対して、メモリアクセスを行ったＣＰＵ（２００〜２０３）に対して直接割り込みを要求しないようにすることで、ＣＰＵ間でのアドレス信号線数の増大を回避できる。
【００４５】
＜ソフトウェアによるメモリエラー分析＞
次に、ソフトウェアによるメモリエラー分析について説明する。
【００４６】
メモリエラー割り込みを受理したＣＰＵ（２００〜２０３）が、アクセスＣＰＵ番号レジスタと同一の番号のとき、ＣＰＵ内のアクセスであるから、当該ＣＰＵで所定のソフトウェアを実行することでメモリエラーアドレスを調べることができ、それにより、エラーを発生させたメモリを知ることができる。例えば、メモリに書き込まれたデータに、１ビットエラー訂正を行うＥＣＣコードが付加されている場合、ソフトウェアで当該メモリをリードして得たデータを直ちにライトすることで、ＥＣＣによりリードデータは訂正されるため、メモリセルデータの訂正を行うことができる。２ビットエラー検出のときは、訂正ができないため、例えば障害プログラムをＣＰＵで実行したり、あるいは、ＣＰＵの動作モードをセーフモードに遷移したりすれば良い。
【００４７】
割り込みを受理したＣＰＵ（２００〜２０３）がアクセスＣＰＵ番号レジスタと異なる番号のとき、メモリアクセスを行ったＣＰＵに通知するため、ソフトウェアで、アクセスＣＰＵ番号のＣＰＵコアへＣＰＵ間割り込みを発生させる。これにより、メモリアクセスを行ったＣＰＵは、エラーを生じたメモリを知ることができる。
【００４８】
割り込みを受理したＣＰＵ（２００〜２０３）は、メモリエラーフラグレジスタ（ＥＲ＿ＦＬＧ）の中で、メモリエラーを受理したメモリに該当するビットをクリアすると、他に複数のビットが論理値“１”となっている場合は、継続してメモリエラーが割り込みコントローラへ通知される。１要因ずつ割り込み処理を行い、全てのビットがクリアされたとき、メモリエラー処理は終了となる。
【００４９】
メモリエラーを処理するため、各メモリにおけるエラー検出回路（ＥＤＥＴ）には、次の４つの回路が設けられる。
【００５０】
すなわち、（１）ＥＣＣ、またはパリティ機能回路、（２）メモリエラーを検出した際の検出フラグ(１ビット)の１次保持回路、（３）フラグクリア後に初めてメモリエラーが通知されたときのエラーアドレスの１次保持回路、（４）メモリエラーを発生したアクセスＣＰＵ番号（他のＣＰＵコアのアクセスを許可するメモリのみ）の１次保持回路、の４つである。
【００５１】
上記１次保持回路は、フリップフロップで構成することができる。各メモリにおいてエラーアドレスとして記憶されるのは、特に制限されないが、ひとつである。一度、フラグがセットされると、フラグクリア信号がアサートされるまで、エラーアドレスは更新されない。フラグクリアまでにメモリエラーが生じても、そのメモリエラーは無視される。
【００５２】
各ＣＰＵ（２００〜２０３）内にはエラー情報保持回路（ＥＩＮＦＯ）が搭載される。このエラー保持回路（ＥＩＮＦＯ）は、特に制限されないが、エラーフラグレジスタ（ＥＲ＿ＦＬＧ）、エラーアドレスレジスタ（ＡＤＲ）、メモリエラーを発生したアクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）から構成される。
【００５３】
メモリエラー割り込みが通知されると、コア内で最も優先度の高いメモリのエラーフラグが、メモリエラーフラグレジスタ(ＥＲ＿ＦＬＧ)にセットされ、エラーアドレスとＣＰＵ番号が、該当するメモリのエラー検出回路（ＥＤＥＴ）からそれぞれエラー情報保持回路（ＥＩＮＦＯ）のエラーアドレスレジスタ（ＡＤＲ）とアクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）にコピーされる。
【００５４】
次に、別のＣＰＵによりメモリアクセスによって、メモリエラーが発生した場合の処理について、図２に基づいて説明する。
【００５５】
図２においては、ＣＰＵ２００とＣＰＵ２０１とで、互いに異なるオペレーティングシステムが動作し、非対称マルチプロセシング（ＡＭＰ）処理が行われるものとする。この場合の処理は次のように行われる。
【００５６】
ＣＰＵ２００からＣＰＵ２０１内のＲＡＭ１をリードした際に、メモリエラーが発生した場合を想定する。この場合、ＣＰＵ２０１から割り込みコントローラ（ＩＮＴＣ）３０へメモリエラーが通知される（（２）ＭＥＲＲ１）。割り込みコントローラ３０からＣＰＵ２０１へメモリエラー割り込みが発生する（（３）ＩＮＴ１）。
【００５７】
ＲＡＭ１の情報として、メモリエラーアドレスレジスタ（ＡＤＲ）にエラーアドレスＨ’１０００００００が保持され、メモリアクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）にＣＰＵ番号（＃０）が保持される。
【００５８】
ＣＰＵ２０１の割り込みハンドラにて適切な処理が行われる。メモリアクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）をリードし、ＣＰＵ番号が＃０であることから、ソフトウェアでＣＰＵ２００へＣＰＵ間割り込みを行うことにより通知する。割り込みを受理したＣＰＵがアクセスを行ったＣＰＵの番号と異なるとき、アクセスを行ったＣＰＵに通知するため、ソフトウェアにより、ＣＰＵ番号に対応するＣＰＵへＣＰＵ間割り込みを発生させる。これにより、アクセスを行ったＣＰＵにエラーを発生させたメモリを知らせることができる。割り込みを受理したＣＰＵとアクセスを行ったＣＰＵとで、互いに異なるオペレーティングシステムが動作しているときは、アクセスにかかるＣＰＵで、１ビットエラーや２ビットエラーの処理を適切に行うためには、明示的にアクセスにかかるＣＰＵにも通知しておく必要がある。このケースではＣＰＵ２０１からＣＰＵ２００へソフトウェア割り込みを行う。
【００５９】
次に、ＣＰＵ２００とＣＰＵ２０１とで、互いに異なるオペレーティングシステムが動作し、非対称マルチプロセシング（ＡＭＰ）処理が行われているときのＣＰＵで共有されるＲＯＭへのアクセス時のメモリエラー処理について説明する。
【００６０】
図３には、ＣＰＵ２０１のＲＯＭへのメモリアクセスによりメモリエラーが発生するケースが示される。
【００６１】
ＣＰＵ２０１において、ＣＰＵコア（Ｃｏｒｅ）からＲＯＭバッファ（ＲＯＭＢ）ヘロードが行われる（（１）ＬＤ）。しかし、実際にはＲＯＭバッファ（ＲＯＭＢ）がミスし、ＲＯＭへのリードが行われてしまう（（２）ＲＯＭ  Ｒｅｅｄ）。そして、ＲＯＭでメモリエラーが発生する（（３）ＭＥＲ＿ＲＯＭ，ＲＣＰＵＩＤ）。ＲＯＭ制御部（ＲＯＭＣｔｌ）４０から、割り込みコントローラ（ＩＮＴＣ）３０にメモリエラー（ＲＯＭ＿ＭＥＲＲ）とＣＰＵ＿ＩＤとしてＣＰＵ２０１を通知する。割り込みコントローラ（ＩＮＴＣ）３０からＣＰＵ２０１へメモリエラー割り込みが発生する（（４）ＩＮＴ１）。
【００６２】
これは、共有メモリのアクセス時のメモリエラーの処理である。割り込みコントローラ（ＩＮＴＣ）は, ＲＯＭからＣＰＵ_ＩＤを受け、動的に割り込みを通知するＣＰＵを設定することができる。ＲＯＭのエラー情報をＲＯＭコントローラ４０内に持つか、ＣＰＵ内に持つかは特に制限されない。ＣＰＵ内に持つ場合は、遠距離の制御線を引くことになるため、本例では、ＲＯＭコントローラＲＯＭＣｔｌ内に持たせることにした。
【００６３】
次に、ＣＰＵ２００からＣＰＵ２０３は、互いに等しいオペレーティングシステムが動作し、対称マルチプロセシング（ＳＭＰ）処理が行われているときのスヌープキャッシュと呼ばれるキャッシュコヒーレンシ機能に関わるメモリのエラー処理について説明する。
【００６４】
図４には、キャッシュコヒーレンシが処理されているマイクロプロセッサで、ＣＰＵ２０２で複製タグのメモリエラーが発生するケースが示される。
【００６５】
ＣＰＵ２０２で１次キャッシュ（Ｌ１Ｃ）のデータロードが行われる（（１）ＬＤ）。次に、各ＣＰＵ２００〜２０３において、１次キャッシュのタグのコピーを持つ複製タグメモリ（ＤＡＡ）２１１の更新が行われる（（２）ＤＡＡ  ＵＰＤ）。スヌープ方式における各キャッシュが必要なときに最新データを取得可能にするためである。そして複製タグメモリ（ＤＡＡ）２１１でメモリエラーが発生すると、スヌープキャッシュ（ＳＮＣ）を介してシステムコントローラ（ＳＹＳＣ）からＣＰＵ２０２にメモリエラーが通知される（（３）ＭＥＲＲ＿ＤＡＡ２）。そしてＣＰＵ２０２から割り込みコントローラ（ＩＮＴＣ）３０へメモリエラー割り込みが通知される（（４）（ＭＥＲＲ２））。割り込みコントローラ（ＩＮＴＣ）３０からＣＰＵ２０２へメモリエラー割り込みが発生する（（５）ＩＮＴ２）。
【００６６】
このように、コヒーレントキャッシュに対応するシステムにおいて、複製タグメモリ（ＤＡＡ）２１１のメモリエラー発生時にはＣＰＵ２０２におけるエラー情報保持回路（ＥＩＮＦＯ）内に、複製タグメモリ２１１のフラグビットと、ＣＰＵ番号（ＣＰＵＩＤ）と１次キャッシュのタグアドレスがエラーアドレス（ＡＤＲ）として保持される。ソフトウェアとしては、該当するＣＰＵ内の１次キャッシュにおけるメモリエラーとして扱い、ソフトウェアで有効ビットをクリアすることで無効化する。
【００６７】
図５には、複製タグメモリ（ＤＡＡ）２１１の構成例が示される。
【００６８】
複製タグメモリ（ＤＡＡ）２１１は、各ＣＰＵ２００〜２０３に含まれる１次キャッシュのタグ情報を持つ。図５では、４つのＣＰＵで、各ＣＰＵコアの１次キャッシュが４ウェイの例を示している。Ｓビットは共有状態のシェアードビット、Ｖビットは有効ビットである。システムコントローラ２１０内のエラー情報保持回路（ＥＩＮＦＯ）には、複製タグメモリ（ＤＡＡ）２１１のメモリエラーフラグレジスタ（ＥＲ＿ＦＬＧ）、メモリエラーアドレスレジスタ（ＡＤＲ）と、アクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）が設けられる。
【００６９】
図５において、メモリのソフトウェアエラー（ＥＲＲ）が発生する場合について説明する。
【００７０】
宇宙線などによるソフトウェアエラーは一部の狭い場所に集中する。一例として、複製タグメモリ内のアレイのＣＰＵ番号＃１に相当する部分に宇宙線が当たっているものとする。他のＣＰＵに対応するアレイは物理的に離れているため、同時に宇宙線があたりソフトウェアエラーを引き起こす可能性は極めて低い。このため、宇宙線については、一つのＣＰＵに相当する部分のみ考慮すればよい。また、一つのデータに対し、２ビット以上のエラー確率を下げるため、メモリアレイはデータのビットの距離を離すことで対応することができる。システムコントローラ２１０内のエラー情報保持回路（ＥＩＮＦＯ）には、メモリエラーフラグレジスタ（ＥＲ＿ＦＬＧ）にはＤＡＡビットに１がセットされ、メモリエラーアドレスレジスタ（ＡＤＲ）にはメモリエラーが発生した部分の１次キャッシュのタグアドレス、アクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）にはＤＡＡ内のＣＰＵ番号＃１が格納される。メモリエラー割込みの通知を受けたＣＰＵは、ＣＰＵ１の１次キャッシュにおけるメモリエラーとして扱い、ソフトウェアで該当する１次キャッシュのタグアドレス（Ｈ’３０００００００）の有効ビットをクリアすることで無効化する。
【００７１】
次に、ＣＰＵ２００〜２０２は対称マルチプロセシング（ＳＭＰ）とされ、ＣＰＵ２０３は非対称マルチプロセシング（ＡＭＰ）とされ、互いに異なるオペレーティングシステムが混在して動作する場合のメモリエラー処理について説明する。
【００７２】
図６には、ＳＭＰ、ＡＭＰとで、互いに異なるオペレーティングシステムが動作するときにメモリエラーが発生するケースが示される。ＣＰＵ２００〜２０２は対称マルチプロセシング（ＳＭＰ）でＯＳ０が動作し、ＣＰＵ２０３はＯＳ１が動作する。
【００７３】
ＣＰＵ２００からＬ２キャッシュ２１２のリードを行った際にメモリエラーが発生したものとする。システムコントローラ２１０は、メモリエラーフラグレジスタ（ＥＲ＿ＦＬＧ）のＬ２キャッシュ２１２のビットをセットし、メモリエラーアドレスレジスタ（ＡＤＲ）に、「Ｈ’４０００００００」を格納し、アクセスＣＰＵ番号レジスタ（ＣＰＵＩＤ）に、「＃０」を格納する。
【００７４】
次に、システムコントローラ２１０は、ＣＰＵ２００にメモリエラーを通知する（（２）ＭＥＲＲ＿Ｌ２Ｃ＿０）。ＣＰＵ２００は、割り込みコントローラ３０にメモリエラーを通知する（（３）ＭＥＲＲ＿０）。これにより割り込みコントローラ３０からＣＰＵ２００へのメモリエラー割り込みが発生する（（４）ＩＮＴ０）。
【００７５】
このようにマルチプロセッサで複数のオペレーティングシステムが実行されるとき、Ｌ２キャッシュ２１２などの共有メモリでメモリエラーが生じると、アクセス元ＣＰＵに割り込みが行われる。理由として、Ｌ２キャッシュ２１２はエントリが同じＯＳでないとアクセスすることができないこと、及びアクセス元ＣＰＵでないとエントリの無効化を行うことができないことによる。
【００７６】
対称マルチプロセシング（ＳＭＰ）で共通のＯＳで動作するＣＰＵに関しては、メモリエラーが起こったエントリにアクセス、又は、エントリを無効化することが可能であるため、図７に示すような変更も可能である。例えば図６の例では、対称マルチプロセッサシング（ＳＭＰ）で共通の動作を行うＣＰＵ２００、２０１、２０２であっても、メモリエラーが発生した際のアクセス元ＣＰＵを特定し、そのＣＰＵにメモリエラーの通知を行う構成である。しかし、図７に示される例では、共通のＯＳで動作するＣＰＵ２００、２０１、２０２を一つのグループとして把握し、アクセス元ＣＰＵとしてメモリエラーに関する割り込み処理を行うＣＰＵは、そのグループ内の何れかのＣＰＵとしている。具体的には、ＣＰＵ２００のアクセスでメモリエラーが生じたとき、ＣＰＵ２００が割込みコントローラにメモリエラーを通知した後、割込みコントローラはＳＭＰで動作するＣＰＵ２００、２０１、２０２に一斉にメモリエラーを割り込みを通知し、一番早くメモリエラーを受け付けたＣＰＵをメモリエラー割り込みを受けたＣＰＵとする。このとき、割り込みコントローラの中に複数のＣＰＵのうちのどれが、共通のＯＳで動作しているかを示すフラグを新たに設けておけば、どのＣＰＵに並列してメモリエラー割り込みを通知すればよいか判断することができる。
【００７７】
上記の実施の形態によれば、以下の作用効果を得ることができる。
【００７８】
（１）それぞれ１次キャッシュ（Ｌ１Ｃ）や内蔵ＳＲＡＭ１（ＲＡＭ１）及び内蔵ＳＲＡＭ２（ＲＡＭ２）にアクセス可能な複数のＣＰＵ２００〜２０３と、上記メモリにアクセスしたＣＰＵを識別可能なＣＰＵ識別情報を記憶可能なエラー情報保持回路（ＥＩＮＦＯ）とが設けられる。そして、上記エラー情報保持回路（ＥＩＮＦＯ）の記憶情報を用いて、上記メモリのソフトウェアエラーに対応するエラー処理が行われることにおり、非対称マルチプロセシング（ＡＭＰ）に対応する複数のオペレーティングシステムが動作する場合の１次キャッシュ（Ｌ１Ｃ）や内蔵ＳＲＡＭ１（ＲＡＭ１）及び内蔵ＳＲＡＭ２（ＲＡＭ２）などの内蔵メモリのメモリエラー処理を行うことができる。
【００７９】
（２）上記複数のＣＰＵ２００〜２０３で共有されるＲＯＭ５０と、それを制御可能なＲＯＭ制御部４０とを設けることができる。そして上記ＲＯＭ制御部４０には、上記メモリのソフトウェアエラーを発生したアドレス、及び上記供給メモリのソフトウェアエラーを生じた場合の上記共有メモリにアクセスしたＣＰＵのＣＰＵ番号を保持可能なエラー情報保持回路（ＥＩＮＦＯ）を設けることができる。このとき、割り込みコントローラ３０は、上記共有メモリのソフトウェアエラーの検出結果と、メモリアクセスにかかるＣＰＵの識別情報が上記制御回路から通知された場合に、当該識別情報に対応するＣＰＵに対して、上記メモリのソフトウェアエラー割り込みを発生させるように構成することができる。これにより、非対称マルチプロセシング（ＡＭＰ）に対応する複数のオペレーティングシステムが動作する場合の共有メモリであるＲＯＭ５０のメモリエラー処理を行うことができる。
【００８０】
（３）上記複数のＣＰＵ２００〜２０３にはそれぞれ１次キャッシュ（Ｌ１Ｃ）が設けられ、また、上記マイクロプロセッサ１０には、上記１次キャッシュのタグのコピーを記憶する複製タグメモリ２１１設けられる。そして、上記１次キャッシュ（Ｌ１Ｃ）をアクセスするときに、上記複製タグメモリ２１１が更新可能に構成される。上記複製タグメモリ２１１でメモリエラーが発生したとき、上記１次キャッシュ（Ｌ１Ｃ）を制御するＣＰＵ内のエラー情報保持回路（ＥＩＮＦＯ）には、上記１次キャッシュ（Ｌ１Ｃ）のアクセスにかかるＣＰＵの識別を可能とするＣＰＵ番号と、上記１次キャッシュ（Ｌ１Ｃ）のタグ情報と、上記複製メモリ２１１に対応するフラグビットが設定される。これにより、対称マルチプロセシング（ＳＭＰ）に対応するオペレーティングシステムにおいて、特にスヌープキャッシュと呼ばれるキャッシュコヒーレンシ機能に関わるメモリのエラー処理を行うことができる。
【００８１】
（４）上記マイクロプロセッサ１０には、２次キャッシュ（Ｌ２Ｃ）と、上記２次キャッシュを制御可能なシステムコントローラ２１０とが設けられる。そして上記システムコントローラ２１０には、該当するメモリのソフトウェアエラーを発生したアドレス、及び上記メモリのソフトウェアエラーを生じた場合の上記メモリにアクセスしたＣＰＵの識別情報を保持可能なエラー情報保持回路（ＥＩＮＦＯ）が設けられる。上記割り込みコントローラは、上記２次キャッシュのソフトウェアエラーの検出結果、及び上記２次キャッシュのアクセスにかかるＣＰＵの識別情報が通知されると、上記ＣＰＵの識別情報に対応するＣＰＵに対して、上記メモリのソフトウェアエラー割り込みを発生する。これにより、非対称マルチプロセシング（ＡＭＰ）と対称マルチプロセシング（ＳＭＰ）に対応するオペレーティングシステムが混在して動作するマイクロプロセッサにおいて、共有メモリとしての二次キャッシュのメモリエラー処理を行うことができる。
【００８２】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００８３】
例えば複数のＣＰＵ、複数のメモリを備え、複数のオペレーティングシステムで動作するマイクロプロセッサにおいても本発明を適用することができる。
【符号の説明】
【００８４】
１０  マイクロプロセッサ
２０  ＣＰＵ群
３０  割り込みコントローラ
４０  ＲＯＭ制御部
５０  ＲＯＭ
２００，２０１，２０２，２０３  ＣＰＵ
２１０  システムコントローラ
２１２  ２次キャッシュ
Ｃｏｒｅ  ＣＰＵコア
Ｌ１Ｃ  １次キャッシュ
ＲＡＭ１  内蔵ＳＲＡＭ１
ＲＡＭ２  内蔵ＳＲＡＭ２
ＥＩＮＦＯ  エラー情報保持回路
ＥＲ＿ＦＬＧ  エラーフラグレジスタ
ＡＤＲ  エラーアドレスレジスタ
ＣＰＵＩＤ  アクセスＣＰＵ番号レジスタ
【図１】
2010231619.tif 000003
【図２】
2010231619.tif 000004
【図３】
2010231619.tif 000005
【図４】
2010231619.tif 000006
【図５】
2010231619.tif 000007
【図６】
2010231619.tif 000008
【図７】
2010231619.tif 000009