(57)【特許請求の範囲】
【請求項１】
多ポートＲＡＭの障害検出回路であって、第１のリードポートイネーブルのみが“１”の場合、両ポートに第１のポートのリードアドレスを同時に供給し、第２のリードポートイネーブルのみが“１”の場合、両ポートに第２のポートのリードアドレスを同時に供給し、両リードポートイネーブルが“１”の場合、第１のポートに第１のリードアドレスを第２のポートに第２のリードアドレスを供給し、
片方のリードポートイネーブルのみが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害はＲＡＭセル自体の故障であり、片側ポートからのリードデータだけの障害を検出すればポート固有のリード回路（配線を含む）の故障であることを切り分ける手段を有することを特徴とする多ポートＲＡＭの障害検出回路。
【請求項２】
両方のリードポートイネーブルが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害は重故障であることを切り分ける手段を有することを特徴とする請求項１記載の多ポートＲＡＭの障害検出回路。
【請求項３】
第１のリードポートイネーブルのみが“１”の場合、または、第２のリードポートイネーブルのみが“１”の場合、片側ポートからのリードデータだけの障害を検出すると、その障害を検出したポートアドレスで再度索引を行うことにより、２度目の索引で、どちらのポートからのリードデータにも障害を検出しなければ、間欠故障であること、１回目と同一ポートからのリードデータのみに障害を検出すれば、固定故障であることを切り分ける手段を有することを特徴とする請求項１または２記載の多ポートＲＡＭの障害検出回路。
【請求項４】
第１のリードポートイネーブルのみが“１”の場合、または、第２のリードポートイネーブルのみが“１”の場合、片側ポートからのリードデータだけの障害を検出した場合は、その障害を検出したポートアドレスで再度索引を行うことにより、１回目と異なるポートからのリードデータのみに障害を検出した場合、または、両方のポートからのリードデータに障害を検出した場合に重故障であることを切り分けることを特徴とする請求項３記載の多ポートＲＡＭの障害検出回路。
【請求項５】
第１のリードポートイネーブル、および、第２のリードポートイネーブルの両方が“１”の場合、片側ポートからのリードデータのみに障害を検出した場合は、その障害を検出したポートアドレスで再度索引を行うことにより、２度目の索引で、どちらのポートからのリードデータにも障害を検出しなければ、間欠故障であること、片方のポートからのリードデータに障害を検出すれば、固定故障であること、両方のポートからのリードデータに障害を検出すれば重故障であることを切り分ける手段を有することを特徴とする請求項２記載の多ポートＲＡＭの障害検出回路。
【請求項６】
多ポートＲＡＭの障害検出方法であって、第１のリードポートイネーブルのみが“１”の場合、両ポートに第１のポートのリードアドレスを同時に供給し、第２のリードポートイネーブルのみが“１”の場合、両ポートに第２のポートのリードアドレスを同時に供給し、両リードポートイネーブルが“１”の場合、第１のポートに第１のリードアドレスを第２のポートに第２のリードアドレスを供給し、
片方のリードポートイネーブルのみが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害はＲＡＭセル自体の故障であり、片側ポートからのリードデータだけの障害を検出すればポート固有のリード回路（配線を含む）の故障であることを切り分けることを特徴とする多ポートＲＡＭの障害検出方法。
【請求項７】
両方のリードポートイネーブルが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害は重故障であることを切り分けることを特徴とする請求項６記載の多ポートＲＡＭの障害検出方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は多ポートＲＡＭの障害検出回路、および、障害検出方法に関し、特に、多重化しているポートを利用してその障害を検出する多ポートＲＡＭの障害検出回路、および、障害検出方法に関する。
【０００２】
【従来の技術】
近年、めざましい技術の進歩にともない、より高周波で動作する半導体は常に未知なる問題に直面し、これを乗り越えなければならないという宿命を背負う中、特に多ポートＲＡＭのような複雑な構造をもつものは特にその問題の内容も複雑化している。このため、障害を検出した場合にその障害モードをより的確且つ迅速につかむ仕組みが求められている。
【０００３】
従来、この種の多ポートのＲＡＭの障害検出回路は、たとえば特開平１１−３２０８号公報に記載されているように、第１の２ポートＲＡＭおよび第２の２ポートＲＡＭへデータを書き込む際に、そのデータを第１データレジスタおよび第２データレジスタに保持するとともに、その書き込みアドレスもアドレスレジスタに保持する。このアドレスレジスタに保持されたアドレスに基づいて、第１データレジスタおよび第２データレジスタに保持したデータに対応するデータを第１の２ポートＲＡＭおよび第２の２ポートＲＡＭから読み出す。そして、第１データレジスタに保持されているデータと第１の２ポートＲＡＭから読み出したデータが不一致の場合は、あるいは、第２データレジスタに保持されているデータと第２の２ポートＲＡＭから読み出したデータが不一致の場合に、障害信号ＥＲＲを出力するように構成されている。
【０００４】
この従来の障害検出回路は、データを書き込む際にレジスタに保持した情報およびデータの比較結果に基づいて、メモリの障害を検知することができ、特にメモリ自身の障害を検知している。
【０００５】
【発明が解決しようとする課題】
本発明は、メモリ自身の障害を検知することにおいて、多ポートＲＡＭのリード時の障害を、リード要求が出ていないポートを利用して、その障害が多ポートＲＡＭのＲＡＭセル自体の故障であるか、または配線を含むリード回路の故障であるかを切り分けることができる。
【０００６】
さらに、本発明では、多ポートＲＡＭのリード時の障害において、全てのポートのリード要求が出ている場合は、障害を検出したポートのアドレスで他のポートを利用して、その障害が多ポートＲＡＭのＲＡＭセル自体の故障であるか、または配線を含むリード回路の故障であるかを切り分けることができる。
【０００７】
さらに、また、本発明では、多ポートＲＡＭのリード時の障害において、障害を検出したポートのアドレスで再度索引を行うので、その障害が固定的な故障であるか、間欠的な故障であるかを切り分けることができる。
【０００８】
【課題を解決するための手段】
本発明の第１の多ポートＲＡＭの障害検出回路は、多ポートＲＡＭの障害検出回路であって、第１のリードポートイネーブルのみが“１”の場合、両ポートに第１のポートのリードアドレスを同時に供給し、第２のリードポートイネーブルのみが“１”の場合、両ポートに第２のポートのリードアドレスを同時に供給し、両リードポートイネーブルが“１”の場合、第１のポートに第１のリードアドレスを第２のポートに第２のリードアドレスを供給し、片方のリードポートイネーブルのみが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害はＲＡＭセル自体の故障であり、片側ポートからのリードデータだけの障害を検出すればポート固有のリード回路（配線を含む）の故障であることを切り分ける手段を有する。
【０００９】
本発明の第２の多ポートＲＡＭの障害検出回路は、前記第１の多ポートＲＡＭの障害検出回路であって、両方のリードポートイネーブルが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害は重故障であることを切り分ける手段を有する。
【００１０】
本発明の第３の多ポートＲＡＭの障害検出回路は、前記第１または第２の多ポートＲＡＭの障害検出回路であって、第１のリードポートイネーブルのみが“１”の場合、または、第２のリードポートイネーブルのみが“１”の場合、片側ポートからのリードデータだけの障害を検出すると、その障害を検出したポートアドレスで再度索引を行うことにより、２度目の索引で、どちらのポートからのリードデータにも障害を検出しなければ、間欠故障であること、１回目と同一ポートからのリードデータのみに障害を検出すれば、固定故障であることを切り分ける手段を有する。
【００１１】
本発明の第４の多ポートＲＡＭの障害検出回路は、前記第３の多ポートＲＡＭの障害検出回路であって、第１のリードポートイネーブルのみが“１”の場合、または、第２のリードポートイネーブルのみが“１”の場合、片側ポートからのリードデータだけの障害を検出した場合は、その障害を検出したポートアドレスで再度索引を行うことにより、１回目と異なるポートからのリードデータのみに障害を検出した場合、または、両方のポートからのリードデータに障害を検出した場合に重故障であることを切り分ける。
【００１２】
本発明の第５の多ポートＲＡＭの障害検出回路は、前記第２の多ポートＲＡＭの障害検出回路であって、第１のリードポートイネーブル、および、第２のリードポートイネーブルの両方が“１”の場合、片側ポートからのリードデータのみに障害を検出した場合は、その障害を検出したポートアドレスで再度索引を行うことにより、２度目の索引で、どちらのポートからのリードデータにも障害を検出しなければ、間欠故障であること、片方のポートからのリードデータに障害を検出すれば、固定故障であること、両方のポートからのリードデータに障害を検出すれば重故障であることを切り分ける手段を有する。
【００１３】
本発明の第１の多ポートＲＡＭの障害検出方法は、多ポートＲＡＭの障害検出方法であって、第１のリードポートイネーブルのみが“１”の場合、両ポートに第１のポートのリードアドレスを同時に供給し、第２のリードポートイネーブルのみが“１”の場合、両ポートに第２のポートのリードアドレスを同時に供給し、両リードポートイネーブルが“１”の場合、第１のポートに第１のリードアドレスを第２のポートに第２のリードアドレスを供給し、片方のリードポートイネーブルのみが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害はＲＡＭセル自体の故障であり、片側ポートからのリードデータだけの障害を検出すればポート固有のリード回路（配線を含む）の故障であることを切り分ける。
【００１４】
本発明の第２の多ポートＲＡＭの障害検出方法は、前記第１の多ポートＲＡＭの障害検出方法であって、両方のリードポートイネーブルが“１”の場合に、両ポートからのリードデータの障害を検出すれば、その障害は重故障であることを切り分ける。
【００１５】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１６】
図1は本発明の第１の実施例の構成を示す。図1を参照すると、本発明の第１の実施例は、２リードポートＲＡＭにおける構成を示しているが、ここでは２リードポートをそれぞれＡポート、Ｂポートと呼称している。
【００１７】
Ａ及びＢポートアドレスＡ１及びＢ１はそれぞれアドレスセレクタＡ２及びＢ２に入力される。アドレスセレクタＡ２ではＡポートリードイネーブルＡ５が“１”の場合、ポートアドレスＡ１を選択し、“０”の場合、ポートアドレスＢ１を選択する。同様にアドレスセレクタＢ２ではＢポートリードイネーブルＢ５が“１”の場合はポートアドレスＢ１を選択し、“０”の場合ポートアドレスＡ１を選択する。アドレスセレクタＡ２およびＢ２の出力はそれぞれアドレスセレクタＡ３及びＢ３（後述）を介してアドレスレジスタＡ４およびＢ４に入力されると同時に２リードポートＲＡＭ１０のＡポート及びＢポートに入力される。
【００１８】
つまり２リードポートＲＡＭ１０のアドレスはＡポートリードイネーブルＡ５のみが１の場合両ポートにＡポートアドレスＡ１が入力される。同様にＢポートリードイネーブルＢ５のみが“１”の場合両ポートにＢポートアドレスＢ１が入力される。ポートリードイネーブルＡ５及びＢ５の両方“１”の場合はＡポートにＡポートアドレスＡ１が、ＢポートにＢポートアドレスＢ１がそれぞれ入力される。
【００１９】
Ａ及びＢポートリードイネーブルＡ５及びＢ５は論理和１３がとられて論理和１４（後述）を介して２リードポートＲＡＭ１０に供給されると共にＡＢポートイネーブルレジスタ６に入力される。２リードポートＲＡＭ１０の出力、Ａ及びＢポートリードデータＡ７及びＢ７はパリティチェック回路Ａ８及びＢ８でそれぞれパリティチェックされる。パリティチェック回路Ａ８及びＢ８のチェック結果はそれぞれＡＢポートリードイネーブルレジスタ６の出力と論理積Ａ１５及びＢ１５がとられてＡ及びＢポートパリティエラーＡ９及びＢ９として報告される。
【００２０】
ここで上記に示すようにＡまたはＢポートのどちらかのリードイネーブルしか“１”でない場合は、両ポートに同一アドレスが供給されているため、両ポートのパリティエラーが報告されていればそのアドレスにより索引されたＲＡＭセル自体の故障であり、片方のポートのパリティエラーのみが報告されていればそのポートのリード回路（配線を含む）の故障であると切り分けることができる。
【００２１】
またＡ及びＢポートパリティエラーＡ９及びＢ９は論理和１６がとられた後、１Ｔパルス生成回路１１で１Ｔ間のＲＡＭリード抑止信号１２が生成される。ＲＡＭリード抑止信号１２は２リードポートＲＡＭ１０の通常のアクセスを抑止すると共にＡポートアドレスセレクタＡ３にてＢポートアドレスレジスタＢ４の出力を選択する。同様にＲＡＭリード抑止信号１２はＢポートアドレスセレクタＢ３でＡポートアドレスレジスタＡ４の出力を選択する。
【００２２】
また、ＲＡＭリード抑止信号１２は論理和１３の出力とさらに論理和１４をとり、２リードポートＲＡＭ１０及びＡＢポートリードイネーブルレジスタ６に入力される。つまり先のパリティチェック結果でエラーが検出された場合、Ａポート及びＢポートのアドレスを交換して再度２リードポートＲＡＭを索引し、パリティチェックを行う。これにより間欠故障か固定故障の切り分け、及びＡ、Ｂ各ポートがそれぞれ異なるアドレスにて索引した時のＲＡＭセル故障かリード回路の故障かを切り分けることを実現している。
【００２３】
本発明の動作を図１および図２の表を参照して説明する。
【００２４】
図１および図２において、ＡポートリードイネーブルＡ５が“１”、ＢポートリードイネーブルＢ５が“０”の場合、アドレスセレクタＡ２及びＢ２共にＡポートアドレスＡ１が選択される。アドレスセレクタＡ３およびＢ３は１Ｔ前に２リードポートＲＡＭ１０のパリティエラーがなければそのままアドレスセレクタＡ２およびＢ２の出力が選択されるため、ここでは２リードポートＲＡＭ１０のＡおよびＢポート両アドレスとしてＡポートアドレスＡ１が供給されＲＡＭを索引する。索引結果にＡポートパリティエラーＡ９のみが検出された場合、もしくはＢポートパリティエラーＢ９のみが検出された場合はＡ、Ｂポート共に同一アドレスＡ１でＲＡＭセルを索引していることからエラーを検出したポートのリード回路（配線を含む）の故障と切り分けることができる。Ａ、Ｂ両パリティエラーが共に検出された場合は逆にＲＡＭセル自体の故障であると切り分けられる。ＡポートリードイネーブルＡ５が“０”、ＢポートリードイネーブルＢ５が“１”の場合も同様に切り分けることが可能となる。
【００２５】
また、Ａ、Ｂ両ポートのリードイネーブルがともに“１”の場合は２リードポートＲＡＭ１０のＡポート索引アドレスとしてポートアドレスＡ１が、Ｂポート索引アドレスとしてポートアドレスＢ１が選択されてＲＡＭを索引する。このとき、索引結果にＡポートパリティエラーＡ９のみが検出された場合は、Ａポートのリード回路の故障であるかあるいはＡ１アドレスで索引したＲＡＭセルの故障であるかの切り分けはまだできない。ＢポートのパリティエラーＢ９のみが検出された場合も同様である。ここまでを表の“一回目の索引”にまとめる。ただし、Ａ、Ｂ両ポートのリードイネーブルが共に１でＡ，Ｂ両パリティエラーを検出した場合は重障害として本発明では処理される。
【００２６】
ＡおよびＢポートアドレスレジスタＡ４およびＢ４にはＲＡＭ１０の索引と同時に各ポートの索引アドレスが入力されている。ＡポートアドレスセレクタＡ３でＢポートアドレスレジスタＢ４の出力を、ＢポートアドレスセレクタＢ３でＡポートアドレスレジスタＡ４の出力を選択することで各ポートの索引アドレスを入れ替える。 “１回目の索引”でパリティエラーを検出した場合、通常のＲＡＭリードはＲＡＭリード抑止指示１２によって抑止され、変わりに上記の入れ替えられた索引アドレスで“２回目の索引”が行われる。
【００２７】
１回目の索引がＡポートリードイネーブルのみが“１”だった場合（ＲＡＭ１０の両ポートにアドレスＡ１が供給されていた場合）、２回目の索引もアドレスＡ１が両ポートに供給される。２回目の索引によりパリティエラーを検出しなくなった場合は１回目のパリティエラーは間欠故障、二度目の索引でもパリティエラーを検出した場合は固定故障と切り分けられる。一回目の索引がＢポートリードイネーブルのみが“１”だった場合も同様に扱われる。
【００２８】
１回目の索引がＡ，Ｂ両ポートリードイネーブルが“１”だった場合、２回目の索引は上記により異なるＡ，Ｂポートのアドレスを入れ替えて索引される。１回目でＡポートのパリティエラーＡ９を検出し、２回目でアドレスを入れ替えてもＡポートのパリティエラーＡ９を検出した場合はＡポートのリード回路の固定故障と切り分けされる。また、２回目ではＢポートのパリティエラーを検出した場合には、アドレスＡ１で索引されるＲＡＭセルの固定故障と切り分けされる。また、２回目でどちらのポートでもパリティエラーを検出しない場合は、リード回路の故障、ＲＡＭセルの故障の切り分けはできず、間欠故障であることのみが切り分けされる。一回目でＢポートのパリティエラーを検出した場合も同様に扱われる。以上を図２に示す表にまとめる。なお、一回目の索引で片ポートパリティエラーを検出し、２回目の索引で両ポートのパリティエラーを検出した場合等は重故障として本発明では処理される。
【００２９】
発明の他の実施例は第１の実施例で２リードポートＲＡＭにおける構成を示したが、３リードポート以上であっても同様である。２リードポートの場合、アドレスは第一リードポート（Ａポート）と第２リードポート（Ｂポート）を入れ替える形となっているが、３ポート以上の場合は第一ポートのアドレス→第２ポートのアドレス→第３ポートのアドレス→・・・第１ポートというようにローテートすることで実現可能となる。
【００３０】
【発明の効果】
以上説明したように、本発明は、多ポートＲＡＭのリード時の障害において、リード要求が出ていないポートを利用してリードを多重化しているからである。全てのポートのリード要求が出ている場合は、障害を検出したポートのアドレスで他のポートを利用して再度索引を行うことにより、その障害が多ポートＲＡＭのＲＡＭセル自体の故障であるか、または配線を含むリード回路の故障であるかを切り分けることできる効果がある。
【００３１】
本発明は、多ポートＲＡＭのリード時の障害において、障害を検出したポートのアドレスで再度索引を行うことにより、その障害が固定的な故障であるか、間欠的な故障であるかを切り分けることできる効果がある。
【図面の簡単な説明】
【図１】本発明の第１の実施例にける２リードポートＲＡＭにおける構成を示す図である。
【図２】本発明の第１の実施例における２リードポートＲＡＭの論理表を示す図である。
【符号の説明】
６    ＡＢポードリードイネーブルレジスタ
１０    ２リードポートＲＡＭ
１１    ＩＴパルス発生回路
１２    ＲＡＭリード抑止指示
１３、１４、１６    論理和
Ａ１    Ａポートアドレス
Ａ２、Ａ３    Ａポートアドレスセレクタ
Ａ４    Ａポートアドレスレジスタ
Ａ５    Ａポートリードイネーブル
Ａ７    Ａポートリードデータ
Ａ８、Ｂ８    パリティチェック回路
Ａ９    Ａポートパリティエラー
Ａ１５、Ｂ１５    論理積
Ｂ１    Ｂポートアドレス
Ｂ２、Ｂ３    Ｂポートアドレスセレクタ
Ｂ４    Ｂポートアドレスレジスタ
Ｂ５    Ｂポートリードイネーブル
Ｂ７    Ｂポートリードデータ
Ｂ９    Ｂポートパリティエラー
【図１】
0003716192.tif 000002
【図２】
0003716192.tif 000003