(57)【要約】【課題】エラーのアドレス情報の記憶回路のビット数を減らす。【解決手段】情報処理装置１は、エラーアドレス判別部２９によって第１のエラーアドレス空間に属すると判別されたアドレス情報の上位ビットをログとして記憶する上位ビット記憶部３１と、エラーアドレス判別部２９によって第１のエラーアドレス空間に属すると判別されたアドレス情報が第２のエラーアドレス空間に属するようにそのアドレス情報の上位ビットを変換するアドレス変換部３３と、アドレス変換部３３で変換されたアドレス情報の上位ビットをデコードし、そのアドレス情報を第２のアドレスバス７へ伝送するデコーダ４１と、アドレス情報が第２のエラーアドレス空間に属するかを判別するエラーアドレス判別部８７と、エラーアドレス判別部８７によって第２のエラーアドレス空間に属すると判別されたアドレス情報をログとして記憶するエラーアドレス記憶部８９と、を備える。【選択図】図１
2011237869.tif 000002
【特許請求の範囲】
【請求項１】
第１のアドレス空間に属するアドレス情報が伝送される第１のアドレスバスと、
前記第１のアドレスバスの下流側にあり、第２のアドレス空間に属するアドレス情報が伝送される第２のアドレスバスと、
前記第１のアドレス空間は、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして特定される第１のエラーアドレス空間及び前記第２のアドレス空間を含んでおり、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして当該アドレス情報が前記第１のエラーアドレス空間に属するかを判別する第１のエラーアドレス判別部と、
前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットをデコードし、前記第２のアドレス空間に属するアドレス情報については前記第２のアドレスバスへ伝送するデコーダと、
前記第２のアドレス空間は、前記第２のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして特定される第２のエラーアドレス空間を含んでおり、前記第２のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして当該アドレス情報が第２のエラーアドレス空間に属するかを判別する第２のエラーアドレス判別部と、
前記第２のエラーアドレス判別部によって前記第２のエラーアドレス空間に属すると判別されたアドレス情報をログとして記憶するエラーアドレス記憶部と、
前記第１のエラーアドレス判別部によって前記第１のエラーアドレス空間に属すると判別されたアドレス情報の上位ビットをログとして記憶する上位ビット記憶部と、
前記第１のエラーアドレス判別部によって前記第１のエラーアドレス空間に属すると判別されたアドレス情報が前記第２のエラーアドレス空間に属するように当該アドレス情報の上位ビットを変換するアドレス変換部と、を備え、
前記デコーダは、前記アドレス変換部で変換されたアドレス情報の上位ビットをデコードし、当該アドレス情報を前記第２のアドレスバスへ伝送する情報処理装置。
【請求項２】
前記第１のアドレスバスの下流側にあり、第３のエラーアドレス空間を含む第３のアドレス空間に属するアドレス情報が伝送される第３のアドレスバスを備え、
前記第１のアドレス空間は、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして特定される前記第３のアドレス空間及び前記第３のエラーアドレス空間をさらに含んでおり、
前記第１のエラーアドレス判別部は、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして当該アドレス情報が前記第３のエラーアドレス空間に属するかを判別し、
前記上位ビット記憶部は、前記第１のエラーアドレス判別部によって前記第３のエラーアドレス空間に属すると判別されたアドレス情報の上位ビットをログとして記憶し、
前記アドレス変換部は、前記第１のエラーアドレス判別部によって前記第３のエラーアドレス空間に属すると判別されたアドレス情報が前記第２のエラーアドレス空間に属するように当該アドレス情報の上位ビットを変換する請求項１に記載の情報処理装置。
【請求項３】
前記第１及び第２のエラーアドレス判別部において判別に用いられる前記第１、第２及び第３のエラーアドレス空間を、入力操作によって設定するエラーアドレス設定部を備える請求項２に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置で発生したエラーのアドレス情報の記憶に関する。
【背景技術】
【０００２】
アドレス空間に属するアドレスのうち、アクセスを許可されない領域外のアドレスを指定するアドレス情報(以下、エラーのアドレス情報)が、ソフトウェアのバグ等の原因によって発生することがある。エラーのアドレス情報が発生した場合、そのアドレス情報は記憶され、エラーの解析に利用される。エラーのアドレス情報をキャッシュタグメモリに記憶することにより、エラーのアドレス情報を記憶する特別なレジスタを設ける必要がなくなる技術が提案されている(特許文献１参照)。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−２０１１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
バス(例えばシステムバス)はアドレスバス、データバス及び制御バスによって構成されており、バスマスタ、バススレーブ及びブリッジ等を相互に接続する。バスマスタからのアドレス情報は、アドレスバスによって伝送され、アドレス情報の上位ビットがアドレスデコーダでデコードされることにより、下流側の複数の装置(バススレーブ、ブリッジ等)のいずれかが選択される。アドレスデコーダはバス及びバススレーブ等に設けられている。
【０００５】
エラーのアドレス情報か否かはエラーアドレス判別回路によって判別され、エラーのアドレス情報と判別された場合、そのアドレス情報はログとしてエラーアドレス記憶回路に記憶される。また、割込通知回路がバスマスタ(例えばＣＰＵ)に割り込み通知をし、バスマスタが割り込み制御をする。エラーアドレス記憶回路に記憶されたアドレス情報は、後でエラーアドレスの解析に用いられる。
【０００６】
近年、シリアル転送規格のバスが増えており、複数のバス規格を備えるシステムが多くなっている。また、複数のアドレス空間を持つシステムが提案されている。これらのシステムでは複数のバス(複数のアドレスデコーダと言うこともできる)が存在する。
【０００７】
エラーアドレス判別回路、エラーアドレス記憶回路及び割込通知回路のセットがバス毎に設けられている場合、単純にこれらのバスを接続してシステムを構成すれば、バスの数が増えると、それに応じてエラーアドレス判別回路、エラーアドレス記憶回路及び割込通知回路が増加することになる。
【０００８】
本発明はエラーのアドレス情報を記憶する回路のビット数を減らすことができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成する本発明の一の局面に係る情報処理装置は、第１のアドレス空間に属するアドレス情報が伝送される第１のアドレスバスと、前記第１のアドレスバスの下流側にあり、第２のアドレス空間に属するアドレス情報が伝送される第２のアドレスバスと、前記第１のアドレス空間は、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして特定される第１のエラーアドレス空間及び前記第２のアドレス空間を含んでおり、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして当該アドレス情報が前記第１のエラーアドレス空間に属するかを判別する第１のエラーアドレス判別部と、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットをデコードし、前記第２のアドレス空間に属するアドレス情報については前記第２のアドレスバスへ伝送するデコーダと、前記第２のアドレス空間は、前記第２のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして特定される第２のエラーアドレス空間を含んでおり、前記第２のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして当該アドレス情報が第２のエラーアドレス空間に属するかを判別する第２のエラーアドレス判別部と、前記第２のエラーアドレス判別部によって前記第２のエラーアドレス空間に属すると判別されたアドレス情報をログとして記憶するエラーアドレス記憶部と、前記第１のエラーアドレス判別部によって前記第１のエラーアドレス空間に属すると判別されたアドレス情報の上位ビットをログとして記憶する上位ビット記憶部と、前記第１のエラーアドレス判別部によって前記第１のエラーアドレス空間に属すると判別されたアドレス情報が前記第２のエラーアドレス空間に属するように当該アドレス情報の上位ビットを変換するアドレス変換部と、を備え、前記デコーダは、前記アドレス変換部で変換されたアドレス情報の上位ビットをデコードし、当該アドレス情報を前記第２のアドレスバスへ伝送する。
【００１０】
本発明によれば、第１のアドレスバスによって伝送されるアドレス情報が、第１のエラーアドレス判別部で第１のエラーアドレス空間に属すると判別された場合、そのアドレス情報(エラーのアドレス情報)の上位ビットがログとして上位ビット記憶部に記憶される。そして、エラーのアドレス情報の上位ビットが第２のエラーアドレス空間に属するように変換されるので、エラーのアドレス情報は第２のアドレスバスへ伝送される。これにより、エラーのアドレス情報は第２のエラーアドレス判別部で第２のエラーアドレス空間に属すると判別されて、ログとしてエラーアドレス記憶部に記憶される。
【００１１】
したがって、第１のエラーアドレス空間に属すると判別されたアドレス情報は、上位ビットが上位ビット記憶部に記憶され、上位ビット以外の残りのビットがエラーアドレス記憶部に記憶される。以上のように本発明によれば、第１のエラーアドレス空間に属するアドレス情報を記憶するのに、第２のエラーアドレス空間に属するアドレス情報が記憶されるエラーアドレス記憶部を利用するので、エラーのアドレス情報を全ビット記憶する記憶部を第１、第２のエラーアドレス空間にそれぞれ設ける必要がない結果、エラーのアドレス情報を記憶する回路のビット数を減らすことができる。
【００１２】
上記構成において、前記第１のアドレスバスの下流側にあり、第３のエラーアドレス空間を含む第３のアドレス空間に属するアドレス情報が伝送される第３のアドレスバスを備え、前記第１のアドレス空間は、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして特定される前記第３のアドレス空間及び前記第３のエラーアドレス空間をさらに含んでおり、前記第１のエラーアドレス判別部は、前記第１のアドレスバスによって伝送されるアドレス情報の上位ビットを基にして当該アドレス情報が前記第３のエラーアドレス空間に属するかを判別し、前記上位ビット記憶部は、前記第１のエラーアドレス判別部によって前記第３のエラーアドレス空間に属すると判別されたアドレス情報の上位ビットをログとして記憶し、前記アドレス変換部は、前記第１のエラーアドレス判別部によって前記第３のエラーアドレス空間に属すると判別されたアドレス情報が前記第２のエラーアドレス空間に属するように当該アドレス情報の上位ビットを変換するようにすることができる。
【００１３】
この構成によれば、第１のエラーアドレス判別部においてアドレス情報が第３のエラーアドレス空間に属するか否かを判別している。そのアドレス情報が第３のエラーアドレス空間に属すると判別された場合、そのアドレス情報(エラーのアドレス情報)は第１のエラーアドレス空間に属すると判別されたエラーのアドレス情報と同様にして、上位ビット記憶部とエラーアドレス記憶部に分けて記憶される。これにより、第３のアドレスバスに対応するエラーアドレス処理部(第３のエラーアドレス判別部、エラーアドレス記憶部等)を設けなくても、第３のエラーアドレス空間に属するアドレス情報を処理することができる。よって、第３のアドレスバスに対応するエラーアドレス処理部を省くことができる。
【００１４】
上記構成において、前記第１及び第２のエラーアドレス判別部において判別に用いられる前記第１、第２及び第３のエラーアドレス空間を、入力操作によって設定するエラーアドレス設定部を備えることができる。
【００１５】
この構成によれば、第１、第２及び第３のエラーアドレス空間を情報処理装置のシステムの設計者等の入力操作によって設定できるので、これらのエラーアドレス空間が固定されている場合に比べて汎用性を向上させることができる。
【発明の効果】
【００１６】
本発明によれば、エラーのアドレス情報を記憶する回路のビット数を減らすことができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態に係る情報処理装置の電気的な構成を示すブロック図である。
【図２】比較例に係る情報処理装置の電気的な構成を示すブロック図である。
【図３】本実施形態に係る情報処理装置に設定されるアドレス空間の一例を示す図である。
【図４】比較例に係る情報処理装置に設定されるアドレス空間を示す図である。
【図５】図１に示す第１のアドレスバスに対応するエラーアドレス判別部及びアドレス変換部のブロック図である。
【図６】図１に示す第２のアドレスバスに対応するエラーアドレス判別部のブロック図である。
【図７】エラーのアドレス情報が発生した場合に本実施形態に係る情報処理装置で実行される処理を説明するフローチャートである。
【図８】図７のフローチャートの続きである。
【図９】本実施形態に係る情報処理装置において、第１のエラーアドレス空間に属すると判別されたアドレス情報の処理を説明する図である。
【図１０】本実施形態に係る情報処理装置において、第３のエラーアドレス空間に属すると判別されたアドレス情報の処理を説明する図である。
【発明を実施するための形態】
【００１８】
以下、図面に基づいて本発明の実施形態について、比較例と比較しながら詳細に説明する。図１は本発明の一実施形態に係る情報処理装置１の電気的な構成を示すブロック図である。図２は比較例に係る情報処理装置３の電気的な構成を示すブロック図である。
【００１９】
情報処理装置１，３は複数の規格のバス(例えば三つの規格のバス)を備える。それぞれの規格のバスはアドレスバス、データバス及び制御バスによって構成されるが、本実施形態ではアドレスバスについて説明し、データバス及び制御バスの説明を省略する。
【００２０】
第１のアドレスバス５は一つ目の規格のバスを構成するアドレスバスであり、第２のアドレスバス７は二つ目の規格のバスを構成するアドレスバスであり、第３のアドレスバス９は三つ目の規格のバスを構成するアドレスバスである。第１のアドレスバス５は例えば３６ビットのアドレス情報を伝送し、第２のアドレスバス７及び第３のアドレスバス９は例えば３２ビットのアドレス情報を伝送する。第１のアドレスバス５、第２のアドレスバス７及び第３のアドレスバス９はシリアルバス及びパラレルバスのいずれでもよい。
【００２１】
第１のアドレスバス５はバスマスタ(図１及び図２では四つのバスマスタ１１，１３，１５，１７)からのアドレス情報を、下流側の第２のアドレスバス７及び第３のアドレスバス９に伝送する。情報処理装置１，３は第１のアドレスバス５により伝送されるアドレス情報で指定されるアドレスがエラーアドレスか否かを判別し、エラーアドレスであればそのアドレス情報(エラーのアドレス情報)をログとして記憶する回路(以下、エラーアドレス処理部１９)が設けられている。エラーアドレス処理部１９について、比較例に係る情報処理装置３から説明する。
【００２２】
図２に示すように、比較例に係る情報処理装置３はエラーアドレス処理部１９として、３６ビットレジスタ２１、エラーアドレス判別部２３、３６ビットエラーアドレス記憶部２５及び割込通知部２７を備える。第１のアドレスバス５により伝送される３６ビットのアドレス情報は３６ビットレジスタ２１に格納される。
【００２３】
エラーアドレス判別部２３は第１のエラーアドレス空間の情報を有する。例えば３６ビットの上位４ビットが「１０００」のアドレス情報が第１のエラーアドレス空間に属する場合、上位４ビットが「１０００」のアドレス情報をエラーのアドレス情報とする論理回路を備える。エラーアドレス判別部２３は３６ビットレジスタ２１に格納された３６ビットのアドレス情報の上位ビット(例えば上位４ビット)から、そのアドレス情報がエラーのアドレス情報か否かを判別する。
【００２４】
エラーアドレス判別部２３がエラーのアドレス情報と判別すれば、３６ビットレジスタ２１に格納されているそのアドレス情報は３６ビットエラーアドレス記憶部２５に送られて、そこで記憶され、後でエラーアドレスの解析に利用される。３６ビットエラーアドレス記憶部２５は例えば３６ビットレジスタの回路である。
【００２５】
また、エラーアドレス判別部２３がエラーのアドレス情報と判別すれば、割込通知部２７はバスマスタ１１，１３，１５，１７のうち、割り込み制御をするバスマスタに割り込み通知をする。この通知を受けたバスマスタにより割り込み制御がされる。
【００２６】
一方、図１に示す本実施形態に係る情報処理装置１はエラーアドレス処理部１９として、３６ビットレジスタ２１、エラーアドレス判別部２９(第１のエラーアドレス判別部)、エラーアドレスの上位ビット記憶部３１、アドレス変換部３３及びエラーアドレス設定部３５を備える。情報処理装置１のエラーアドレス処理部１９は割込通知部を備えておらず、アドレス変換部３３及びエラーアドレス設定部３５を備えており、３６ビットエラーアドレス記憶部２５の換わりに上位ビット記憶部３１を備えている。この点で、図２に示す比較例に係る情報処理装置３のエラーアドレス処理部１９と異なる。この理由は後で説明する。
【００２７】
情報処理装置１，３において、エラーアドレス判別部２３，２９がエラーのアドレス情報と判別しなかった３６ビットのアドレス情報は、３６ビットレジスタ２１から第１のアドレスバス５に接続される複数のデコーダ(例えば、デコーダ３７，３９，４１)へ伝送される。これらのデコーダは第１のアドレスバス５によって伝送されるアドレス情報の上位ビット(例えば上位４ビット)をデコードする。これにより、バスブリッジ４３、バススレーブ４５及びバスブリッジ４７のいずれかが選択される。例えば上位４ビットが「１１１１」であればバスブリッジ４７が選択される(第２のアドレスバス７が選択されると言うこともできる)。
【００２８】
バスブリッジ４７は第１のアドレスバス５の規格(通信手順、通信速度等)を第２のアドレスバス７の規格に変換する機能を有する。バスブリッジ４３は第１のアドレスバス５の規格を第３のアドレスバス９の規格に変換する機能を有する。
【００２９】
デコーダ４１によりバスブリッジ４７が選択された場合、３６ビットのアドレス情報は上位４ビットが削除されて３２ビットにされ、第１のアドレスバス５から第２のアドレスバス７へ伝送される。一方、デコーダ３７によりバスブリッジ４３が選択された場合、３６ビットのアドレス情報は上位４ビットが削除されて３２ビットにされ、第１のアドレスバス５から第３のアドレスバス９へ伝送される。第２のアドレスバス７には例えば、バススレーブ４９を選択するデコーダ５１とバススレーブ５３を選択するデコーダ５５が接続されている。また、第２のアドレスバス７はバスマスタ(図１及び図２では一つバスマスタ１８)からのアドレス情報を下流側に伝送する。第３のアドレスバス９には例えば、バススレーブ５７を選択するデコーダ５９とバススレーブ６１を選択するデコーダ６３が接続されている。
【００３０】
図２に示す比較例に係る情報処理装置３は第２のアドレスバス７に対応するエラーアドレス処理部６３として、３２ビットレジスタ６５、エラーアドレス判別部６７、３２ビットエラーアドレス記憶部６９及び割込通知部７１を備える。第３のアドレスバス９に対応するエラーアドレス処理部７３として、３２ビットレジスタ７５、エラーアドレス判別部７７、３２ビットエラーアドレス記憶部７９及び割込通知部８１を備える。エラーアドレス処理部６３，７３がエラーアドレス処理部１９と異なるのは、３６ビットレジスタ２１が３２ビットレジスタ６５，７５であり、３６ビットエラーアドレス記憶部２５が３２ビットエラーアドレス記憶部６９，７９である点である。これは第２のアドレスバス７及び第３のアドレスバス９が３２ビットのアドレス情報を伝送し、第１のアドレスバス５が３６ビットのアドレス情報を伝送するからである。
【００３１】
これに対して、図１に示す本実施形態に係る情報処理装置１は、第３のアドレスバス９に対応するエラーアドレス処理部が設けられていない。また、第２のアドレスバス７に対応するエラーアドレス処理部６３として、３２ビットレジスタ８５、エラーアドレス判別部８７、３２ビットエラーアドレス記憶部８９、割込通知部９１及びエラーアドレス設定部９３を備える。これらの理由は後で説明する。
【００３２】
次に本実施形態に係る情報処理装置１に設定されるアドレス空間及び比較例に係る情報処理装置３に設定されるアドレス空間について説明する。図３は本実施形態に係る情報処理装置１に設定されるアドレス空間の一例を示す図である。図４は比較例に係る情報処理装置３に設定されるアドレス空間を示す図である。
【００３３】
図４に示すように、比較例に係る情報処理装置３に設定されるアドレス空間は、第１のアドレスバス５によって伝送されるアドレス情報が属する３６ビットの第１のアドレス空間(６４ＧＢ)、第２のアドレスバス７によって伝送されるアドレス情報が属する３２ビットの第２のアドレス空間(４ＧＢ)及び第３のアドレスバス９によって伝送されるアドレス情報が属する３２ビットの第３のアドレス空間(４ＧＢ)を有する。アドレス情報は１６進数で示されている。
【００３４】
第１のアドレス空間は第１のアドレスバス５によって伝送される３６ビットのアドレス情報の上位４ビット(１６進数の上位一桁)を基にして特定される第３のアドレス空間、バススレーブ４５用のアドレス空間、第１のエラーアドレス空間及び第２のアドレス空間を含む。
【００３５】
上位４ビットが「００００」、すなわち１６進数の上位一桁が「０」であれば第３のアドレス空間に属するアドレス情報であり、第３のアドレスバス９へ送られる。以下、上位４ビット又は８ビットの表現の最後に付けられた括弧内の記号は、１６進数による表現を示す。例えば上位４ビット「１１１１(Ｆ)」の括弧内の記号Ｆは、「１１１１」の１６進数による表現である。
【００３６】
上位４ビットが「０００１(１)」であれば、バススレーブ４５に割り当てられたアドレス空間である。上位４ビットが「００１０(２)」〜「１１１０(Ｅ)」であれば、第１のエラーアドレス空間に属するアドレス情報(エラーのアドレス情報)である。第１のエラーアドレス空間に属するアドレス情報は、図２に示すエラーアドレス判別部２３で判別される。上位４ビットが「１１１１(Ｆ)」であれば、第２のアドレス空間に属するアドレス情報であり、第２のアドレスバス７へ送られる。
【００３７】
第２のアドレス空間は３２ビットの上位４ビットを基にして特定されるバススレーブ４９用のアドレス空間、第２のエラーアドレス空間及びバススレーブ５３用のアドレス空間に分けられる。
【００３８】
上位４ビットが「００００(０)」〜「１０１１(Ｂ)」であれば、バススレーブ４９に割り当てられたアドレス空間である。上位４ビットが「１１００(Ｃ)」〜「１１１０(Ｅ)」であれば、第２のエラーアドレス空間に属するアドレス情報(エラーのアドレス情報)である。第２のエラーアドレス空間に属するアドレス情報は、図２に示すエラーアドレス判別部６７で判別される。上位４ビットが「１１１１(Ｆ)」であれば、バススレーブ５３に割り当てられたアドレス空間である。
【００３９】
第３のアドレス空間は３２ビットの上位４ビットを基にして特定されるバススレーブ５７用のアドレス空間、第３のエラーアドレス空間及びバススレーブ６１用のアドレス空間に分けられる。
【００４０】
第３のアドレス空間は３２ビットの上位４ビットが「００００(０)」〜「１０１１(Ｂ)」であれば、バススレーブ５７に割り当てられたアドレス空間である。上位４ビットが「１１００(Ｃ)」であれば、第３のエラーアドレス空間に属するアドレス情報(エラーのアドレス情報)である。第３のエラーアドレス空間に属するアドレス情報は、図２に示すエラーアドレス判別部７７で判別される。上位４ビットが「１１０１(Ｄ)」〜「１１１１(Ｆ)」であれば、バススレーブ６１に割り当てられたアドレス空間である。
【００４１】
図３に示す本実施形態に係る情報処理装置１に設定されるアドレス空間のアドレスの設定は、図４に示すアドレス空間のアドレスの設定と同じである。
【００４２】
上述したように図２に示す比較例に係る情報処理装置３は、第１のアドレスバス５、第２のアドレスバス７、第３のアドレスバス９にそれぞれ対応させてエラーアドレス処理部１９，６３，７３を設けている。第１のアドレスバス５に対応するエラーアドレス処理部１９で第１のエラーアドレス空間に属するアドレス情報を処理し、第２のアドレスバス７に対応するエラーアドレス処理部６３で第２のエラーアドレス空間に属するアドレス情報を処理し、第３のアドレスバス９に対応するエラーアドレス処理部７３で第３のエラーアドレス空間に属するアドレス情報を処理している。なお、バスマスタ１８から出力されたエラーのアドレス情報(エラーアドレス空間に属すると判別されたアドレス情報)は、比較例及び本実施形態においてエラーアドレス処理部６３で処理される。
【００４３】
比較例のように、各バスに対応させてエラーアドレス処理部を設ければ、単純にこれらのバスを接続してシステムを構成した場合、バスの数が増えると、それに応じてエラーアドレス処理部が増加することになる。
【００４４】
これに対して本実施形態に係る情報処理装置１によれば、第１，第２及び第３のアドレスバス５，７，９のエラーアドレス処理部の機能を、第２のアドレスバス７に対応するエラーアドレス処理部６３に集約することができる。以下、これについて説明する。
【００４５】
本実施形態に係る情報処理装置１では、図１に示す３６ビットレジスタ２１に格納された３６ビットのアドレス情報が、エラーアドレス判別部２９によって第１のエラーアドレス空間又は第３のエラーアドレス空間に属すると判別された場合、その３６ビットのアドレス情報の上位ビットを変換して第２のエラーアドレス空間に属させる処理をする。
【００４６】
図５は図１に示すエラーアドレス判別部２９及びアドレス変換部３３のブロック図である。エラーアドレス判別部２９は上位４ビット一致回路９５と上位８ビット一致回路９７を備える。上位４ビット一致回路９５は第１のアドレスバス５によって伝送される３６ビットのアドレス情報の上位４ビットが、「００１０(２)」〜「１１１０(Ｅ)」のいずれかに一致するか否かを判定し、これによりそのアドレス情報が第１のエラーアドレス空間に属するかを判別する。
【００４７】
上位８ビット一致回路は３６ビットのアドレス情報の上位８ビットが、「００００１１００(０Ｃ)」に一致するかを判定する。これによりそのアドレス情報が第３のエラーアドレス空間に属するかを判別する。
【００４８】
アドレス変換部３３は上位８ビット設定回路９９，１０１を備える。上位８ビット設定回路９９は上位４ビット一致回路９５により上位４ビットが「００１０(２)」〜「１１１０(Ｅ)」のいずれかと判別された場合、３６ビットレジスタ２１に格納されている３６ビットのアドレス情報の上位８ビットを「１１１１１１１０(ＦＥ)」に変換する。(ＦＥ)はエラーアドレス処理部６３を有する第２のアドレスバス７に対応するアドレスである。また、(Ｅ)は第２のアドレス空間における第２のエラーアドレス空間に対応するアドレスの上位４ビットである。これによりアドレス情報は第２のエラーアドレス空間に属するので、第２のアドレスバス７へ伝送される。
【００４９】
一方、上位８ビット設定回路１０１は上位８ビット一致回路９７により上位８ビットが「００００１１００(０Ｃ)」と判別された場合、３６ビットレジスタ２１に格納されている３６ビットのアドレス情報の上位８ビットを「１１１１１１００(ＦＣ)」に変換する。(ＦＣ)はエラーアドレス処理部６３を有する第２のアドレスバス７に対応するアドレスである。また、(Ｃ)は第２のアドレス空間における第２のエラーアドレス空間に対応するアドレスの上位４ビットである。これによりアドレス情報は第２のエラーアドレス空間に属するので、第２のアドレスバス７へ伝送される。
【００５０】
図６は図１に示すエラーアドレス判別部８７のブロック図である。エラーアドレス判別部８７は上位４ビット一致回路１０３を備える。上位４ビット一致回路１０３は第２のアドレスバス７によって伝送される３２ビットのアドレス情報の上位４ビットが、「１１００(Ｃ)」、「１１０１(Ｄ)」及び「１１１０(Ｅ)」のいずれかに一致するか否かを判定し、これによりそのアドレス情報が第２のエラーアドレス空間に属するアドレス情報かを判別する。
【００５１】
次に、エラーのアドレス情報が発生した場合に本実施形態に係る情報処理装置１で実行される処理について、図１、図７及び図８を主に用いて説明する。図７及び図８はその処理を説明するフローチャートである。
【００５２】
バスマスタ１１，１３，１５，１７のいずれかにより出力された３６ビットのアドレス情報は、第１のアドレスバス５によって伝送されて、３６ビットレジスタ２１に格納される(ステップＳ１)。エラーアドレス判別部２９は３６ビットレジスタ２１に格納されたアドレス情報が第１のエラーアドレス空間に属するか否かを判別する(ステップＳ３)。これを図５及び図９を用いて詳細に説明する。図９は第１のエラーアドレス空間に属すると判別されたアドレス情報(エラーのアドレス情報)の処理を説明する図である。
【００５３】
エラーアドレス判別部２９の上位４ビット一致回路９５は、３６ビットレジスタ２１に格納されたアドレス情報の上位４ビットが「００１０(２)」〜「１１１０(Ｅ)」のいずれかと一致するか判定する。上位４ビット一致回路９５が一致すると判定した場合、エラーアドレス判別部２９は３６ビットレジスタ２１に格納されたアドレス情報１０５が第１のエラーアドレス空間に属すると判別する(ステップＳ３でＹｅｓ)。エラーアドレス判別部２９はエラーフラグを立てて、３６ビットレジスタ２１に格納されているアドレス情報１０５の上位８ビットをログとして、エラーアドレスの上位ビット記憶部３１に記憶させる(ステップＳ５)。
【００５４】
ステップＳ５の後、エラーアドレス判別部２９はアドレス変換部３３の上位８ビット設定回路９９にアドレス変換を命令する。これは３６ビットレジスタ２１に格納されているアドレス情報１０５が第２のエラーアドレス空間に属するように、アドレス情報１０５を変換する処理である。上位８ビット設定回路９９は、３６ビットレジスタ２１に格納されているアドレス情報１０５の上位８ビットを、「１１１１１１１０(ＦＥ)」に変換する。これにより、３６ビットレジスタ２１に格納されているアドレス情報は、アドレス情報１０５からアドレス情報１０７に変換される(ステップＳ７)。アドレス情報１０７は第２のエラーアドレス空間に属する。３６ビットのアドレス情報の上位４ビットが「１１１１(Ｆ)」で第２のアドレス空間に属することになるが、第２のエラーアドレス空間に属するように上位８ビットを変換している。
【００５５】
３６ビットレジスタ２１に格納されたアドレス情報１０７は、デコーダ３７，３９，４１(図１)へ送られる。アドレス情報１０７の上位４ビットが「１１１１(Ｆ)」なので、デコーダ４１によりバスブリッジ４７が選択される。デコーダ４１は３６ビットのアドレス情報１０７の上位４ビット「１１１１(Ｆ)」を削除して、３２ビットのアドレス情報１０９(図９)を第２のアドレスバス７へ送る(ステップＳ９)。
【００５６】
第２のアドレスバス７によって伝送されたアドレス情報１０９は、３２ビットレジスタ８５に格納される(ステップＳ１１)。エラーアドレス判別部８７(第２のエラーアドレス判別部)により、３２ビットレジスタ８５に格納されたアドレス情報１０９(図９)は第２のエラーアドレス空間に属すると判別される(ステップＳ１３)。これを図６及び図９を用いて説明する。３２ビットレジスタ８５に格納されたアドレス情報１０９の上位４ビットが「１１１０(Ｅ)」なので、エラーアドレス判別部８７の上位４ビット一致回路１０３は、アドレス情報１０９の上位４ビットが「１１１０(Ｅ)」と一致すると判定する。エラーアドレス判別部８７はエラーフラグを立てて、３２ビットレジスタ８５に格納されている３２ビットのアドレス情報１０９をログとして、３２ビットエラーアドレス記憶部８９に記憶させる(ステップＳ１５)。
【００５７】
エラーアドレス判別部８７によってアドレス情報１０９が第２のエラーアドレス空間に属すると判別されると、割込通知部９１はバスマスタ１１，１３，１５，１７のうち、割り込み制御をするバスマスタに割り込み通知をする。この通知を受けたバスマスタにより割り込み制御がされる(ステップＳ１７)。
【００５８】
ここで本実施形態に係る情報処理装置１の第１の効果を説明する。第１のアドレスバス５によって伝送される３６ビットのアドレス情報が、エラーアドレス判別部２９で第１のエラーアドレス空間に属すると判別された場合、そのアドレス情報(エラーのアドレス情報)の上位ビットがログとして上位ビット記憶部３１に記憶される。そして、アドレス変換部３３において、エラーのアドレス情報の上位ビットが第２のエラーアドレス空間に属するように変換されるので、エラーのアドレス情報は第２のアドレスバス７へ伝送される。これにより、エラーのアドレス情報はエラーアドレス判別部８７で第２のエラーアドレス空間に属すると判別されて、ログとして３２ビットエラーアドレス記憶部８９に記憶される。
【００５９】
したがって、図９を参照して、情報処理装置１において第１のエラーアドレス空間に属する３６ビットのアドレス情報１０５は、上位８ビットが上位ビット記憶部３１で記憶され、残りの２８ビットが３２ビットエラーアドレス記憶部８９で記憶される。これらはエラーの解析の際につなげられて、３６ビットのアドレス情報１０５に復元される。
【００６０】
以上のように本実施形態によれば、第１のエラーアドレス空間に属するアドレス情報を記憶するのに、第２のエラーアドレス空間に属するアドレス情報が記憶される３２ビットエラーアドレス記憶部８９を利用している。これにより、図１に示すエラーのアドレス情報の記憶部(上位ビット記憶部３１)は、３６ビットの記憶回路にする必要がなく、８ビットの記憶回路でよい。よって、本実施形態によれば、第１のアドレスバス５に対応するエラーアドレス処理部１９に設けられるエラーのアドレス情報の記憶回路(上位ビット記憶部３１)のビット数を減らすことができる。
【００６１】
なお、３２ビットのアドレス情報１０９の上位４ビット「１１１０(Ｅ)」は、第１のエラーアドレス空間に属するアドレス情報１０５が、第２のエラーアドレス空間に属するように上位８ビットが変換された際に加えられたものである。上位４ビット「１１１０(Ｅ)」は、第２のエラーアドレス空間に属する他のアドレス情報の上位４ビット「１１００(Ｃ)及び「１１０１(Ｄ)」と区別されている。これにより、３２ビットエラーアドレス記憶部８９に格納されている残りの２８ビットが第１のエラーアドレス空間に属するアドレス情報のものであることが分かる。
【００６２】
図７のフローチャートの説明に戻る。エラーアドレス判別部２９の上位４ビット一致回路９５が、３６ビットレジスタ２１に格納されたアドレス情報の上位４ビットが「００１０(２)」〜「１１１０(Ｅ)」のいずれかと一致しないと判定した場合(ステップＳ３でＮｏ)、エラーアドレス判別部２９はそのアドレス情報が第３のエラーアドレス空間に属するか否かを判別する(ステップＳ１９)。これを図５及び図１０を用いて詳細に説明する。図１０は第３のエラーアドレス空間に属すると判別されたアドレス情報の処理を説明する図である。
【００６３】
エラーアドレス判別部２９の上位８ビット一致回路９７は、３６ビットレジスタ２１に格納されたアドレス情報の上位８ビットが「００００１１００(０Ｃ)」と一致するか判定する。上位８ビット一致回路９７が一致すると判定した場合、エラーアドレス判別部２９は３６ビットレジスタ２１に格納されたアドレス情報１１１が第３のエラーアドレス空間に属すると判別する(ステップＳ１９でＹｅｓ)。
【００６４】
エラーアドレス判別部２９はエラーフラグを立てて、３６ビットレジスタ２１に格納されているアドレス情報１１１の上位８ビットをログとして、エラーアドレスの上位ビット記憶部３１に記憶させる(ステップＳ２１)。
【００６５】
ステップＳ２１の後、エラーアドレス判別部２９はアドレス変換部３３の上位８ビット設定回路１０１にアドレス変換を命令する。これは３６ビットレジスタ２１に格納されているアドレス情報１１１が第２のエラーアドレス空間に属するように、アドレス情報１１１を変換する処理である。上位８ビット設定回路１０１は、３６ビットレジスタ２１に格納されているアドレス情報１１１の上位８ビットを、「１１１１１１００(ＦＣ)」に変換する。これにより、３６ビットレジスタ２１に格納されているアドレス情報は、アドレス情報１１１からアドレス情報１１３に変換される(ステップＳ２３)。アドレス情報１１３は第２のエラーアドレス空間に属する。
【００６６】
３６ビットレジスタ２１に格納されたアドレス情報１１３は、上位４ビットが「１１１１(Ｆ)」なので、デコーダ４１によりバスブリッジ４７が選択される。デコーダ４１は３６ビットのアドレス情報１１３の上位４ビット「１１１１(Ｆ)」を削除して、３２ビットにしたアドレス情報１１５(図１０)を第２のアドレスバス７へ送る(ステップＳ２５)。そして、ステップＳ１１の処理へ進む。後の処理は第１のエラーアドレス空間に属するアドレス情報と同じである。
【００６７】
ここで本実施形態に係る情報処理装置１の第２の効果を説明する。本実施形態に係る情報処理装置１によれば、第１のアドレスバス５に対応するエラーアドレス処理部１９に備えられるエラーアドレス判別部２９において、３６ビットレジスタ２１に格納された３６ビットのアドレス情報が第３のエラーアドレス空間に属するか否か判別している。そのアドレス情報が第３のエラーアドレス空間に属すると判別した場合、第１のエラーアドレス空間に属するアドレス情報と同様にして、アドレス情報１１１の上位８ビットを上位ビット記憶部３１に格納し、残りの２８ビットを３２ビットエラーアドレス記憶部８９に格納している。これらはエラーの解析の際につなげられて、３６ビットのアドレス情報１１１に復元される。したがって、本実施形態によれば、第３のアドレスバス９に対応するエラーアドレス処理部を設けなくても、第３のエラーアドレス空間に属するアドレス情報を処理することができる。よって、本実施形態によれば、第３のアドレスバス９に対応するエラーアドレス処理部を省くことができる。
【００６８】
なお、３２ビットのアドレス情報１１５の上位４ビット「１１００(Ｃ)」は、第３のエラーアドレス空間に属するアドレス情報１１１が、第２のエラーアドレス空間に属するように上位８ビットが変換された際に加えられたものである。上位４ビット「１１００(Ｃ)は、第２のエラーアドレス空間に属する他のアドレス情報の上位ビット「１１０１(Ｄ)」及び「１１１０(Ｅ)」と区別されている。これにより、３２ビットエラーアドレス記憶部８９に格納されている残りの２８ビットが第３のエラーアドレス空間に属するアドレス情報のものであることが分かる。
【００６９】
図７のフローチャートの説明に戻る。ステップＳ１９でＮｏの場合、すなわち、図１に示す３６ビットレジスタ２１に格納された３６ビットのアドレス情報が、第１及び第３のエラーアドレス空間のいずれにも属さない場合、そのアドレス情報の上位４ビットを基にしてデコーダ３７，３９，４１によって、バスブリッジ４３、バススレーブ４５及びバスブリッジ４７のいずれかが選択される(図８に示すステップＳ２７)。
【００７０】
３６ビットのアドレス情報が第３のアドレス空間に属する場合(図３)、すなわち３６ビットの上位４ビットが「００００(０)」であれば、デコーダ３７によってバスブリッジ４３が選択されて、第３のアドレスバス９に３２ビットのアドレス情報が送られる。第３のアドレス空間には第３のエラーアドレス空間が含まれるが、上述したように第３のエラーアドレス空間に属するアドレス情報は第２のエラーアドレス空間に属するように変換されて、エラーアドレス処理部６３で処理される。したがって、本実施形態に係る情報処理装置１には第３のアドレスバス９に対応するエラーアドレス処理部が設けられていない。
【００７１】
３６ビットのアドレス情報がバススレーブ４５に割り当てられたアドレス空間に属する場合(図３)、すなわち３６ビットの上位４ビットが「０００１(１)」であれば、デコーダ３９によってバススレーブ４５が選択されて、３２ビットのアドレス情報がバススレーブ４５に送られる。
【００７２】
３６ビットのアドレス情報が第２のアドレス空間に属する場合(図３)、すなわち３６ビットの上位４ビットが「１１１１(Ｆ)」であれば、デコーダ４１によってバスブリッジ４７が選択されて、第２のアドレスバス７に３２ビットのアドレス情報が送られる。
【００７３】
第２のアドレスバス７によって伝送されたアドレス情報は、３２ビットレジスタ８５に格納される(ステップＳ２９)。エラーアドレス判別部８７(第２のエラーアドレス判別部)により、３２ビットレジスタ８５に格納されたアドレス情報が、第２のエラーアドレス空間に属するか否かが判別される(ステップＳ３１)。ここでの第２のエラーアドレス空間は第２のアドレス空間に本来含まれているものである。すなわち、図３に示す第２のアドレス空間において、３２ビットのアドレス情報の上位４ビットが「１１０１(Ｄ)」のアドレス空間である。    
【００７４】
これについて図６を用いて説明する。エラーアドレス判別部８７の上位４ビット一致回路１０３は、３２ビットレジスタ８５に格納されたアドレス情報の上位４ビットが「１１０１(Ｄ)」と一致するか否か判定する。上位４ビット一致回路１０３が一致すると判定した場合(ステップＳ３１でＹｅｓ)、エラーアドレス判別部８７はエラーフラグを立てて、３２ビットレジスタ８５に格納されている３２ビットのアドレス情報をログとして、３２ビットエラーアドレス記憶部８９に記憶させる(ステップＳ１５)。そしてステップＳ１７の処理がされる。
【００７５】
エラーアドレス判別部８７がエラーのアドレス情報と判別しなかった場合(ステップＳ３１でＮｏ)、そのアドレス情報の上位４ビットを基にして  デコーダ５１，５５によって、バススレーブ４９，５３のいずれかが選択される(ステップＳ３３)。３２ビットのアドレス情報が選択されたバススレーブに送られる(ステップＳ３５)。
【００７６】
以上がエラーのアドレス情報が発生した場合に本実施形態に係る情報処理装置１で実行される処理の説明である。上記第１及び第２の効果で説明したように、本実施形態に係る情報処理装置１によれば、第１，第２及び第３のアドレスバス５，７，９のエラーアドレス処理部の機能を、第２のアドレスバス７に対応するエラーアドレス処理部６３に集約することができる。これにより、第３のアドレスバス９に対応するエラーアドレス処理部を省くことができる。また、第１のアドレスバス５に対応するエラーアドレス処理部１９からは、エラーのアドレス情報を記憶する回路(上位ビット記憶部３１)のビット数を小さくできると共に割込通知部を省くことができる。
【００７７】
ここで、図１に示すエラーアドレス設定部３５，９３について説明する。例えば、異なるメーカのチップセットを組み合わせて図１に示す情報処理装置１を作製する場合、各チップセットのエラーアドレス空間が予め固定されていれば、エラーアドレス空間が矛盾する等の場合、情報処理装置１を正常に動作させることができない。そこで、本実施形態では、エラーアドレス設定部３５，９３を設けることにより、エラーアドレス空間を設定できるようにしている。これにより、エラーアドレス空間が固定されている場合に比べて汎用性が向上させることができる。
【００７８】
エラーアドレス設定部３５，９３はキーボード等の入力装置及びエラーアドレス空間を特定する情報が格納されるレジスタ(エラーアドレス空間設定用レジスタ)等により構成される。情報処理装置１のシステムの設計者等が入力装置を用いてエラーアドレス空間を特定する情報を入力することにより、その情報がエラーアドレス空間設定用レジスタに格納される。エラーアドレス判別部２９は３６ビットレジスタ２１に格納された３６ビットアドレス情報がエラーアドレス設定部３５のエラーアドレス空間設定用レジスタに格納されたエラーアドレス空間に属するか否かを判別し、エラーアドレス判別部８７は３２ビットレジスタ８５に格納された３２ビットアドレス情報がエラーアドレス設定部９３のエラーアドレス空間設定用レジスタに格納されたエラーアドレス空間に属するか否かを判別する。
【００７９】
本実施形態において、上流側のアドレスバスに対応するエラーアドレス空間(第１のエラーアドレス空間)及び下流側のアドレスバスに対応するエラーアドレス空間(第３のエラーアドレス空間)に属するアドレス情報を、下流側の他のエラーアドレス判定部を備えたアドレスバスに対応するエラーアドレス空間(第２のエラーアドレス空間)に属するアドレス情報に変換できれば、上記第１及び第２の効果を得ることができる。したがって、本実施形態では第１のアドレスバス５によって伝送されるアドレス情報のビット数(３６ビット)が、第２のアドレスバス７及び第３のアドレスバス９によって伝送されるアドレス情報のビット数(３２ビット)より大きい場合で説明したが、同じ場合でもよい。また、情報処理装置１は複数の規格のバス(例えば三つの規格のバス)を備えているが、これらのバスは同じチップに搭載されていてもよいし、異なるチップに搭載されていてもよい。
【符号の説明】
【００８０】
１,３  情報処理装置
５  第１のアドレスバス
７  第２のアドレスバス
９  第３のアドレスバス
２９  エラーアドレス判別部(第１のエラーアドレス判別部)
３１  エラーアドレスの上位ビット記憶部(上位ビット記憶部)
８７  エラーアドレス判別部(第２のエラーアドレス判別部)
８９  ３２ビットエラーアドレス記憶部(エラーアドレス記憶部)
１９，６３，７３  エラーアドレス処理部
１０５，１０７，１０９，１１１，１１３，１１５  アドレス情報
【図１】
2011237869.tif 000003
【図２】
2011237869.tif 000004
【図３】
2011237869.tif 000005
【図４】
2011237869.tif 000006
【図５】
2011237869.tif 000007
【図６】
2011237869.tif 000008
【図７】
2011237869.tif 000009
【図８】
2011237869.tif 000010
【図９】
2011237869.tif 000011
【図１０】
2011237869.tif 000012