(57)【特許請求の範囲】
【請求項１】
ネットワークから受信したフレームをユーザ毎に領域を割り当てたメモリに書き込み、前記メモリから各ユーザのフレームデータを読み出して後続回路に供給するメモリ回路において、
前記ネットワークから受信したフレームのフレーム間ギャップとフレーム先頭のプリアンブルとフレーム開始分界点を含む期間である空きタイムスロットで、前記メモリのテストを行うためのテストアドレスを順次変化させて生成するテストアドレス生成手段と、
前記メモリの前記テストアドレスから読み出したデータを退避する退避手段と、
前記メモリの前記テストアドレスにテストデータを書き込むテスト書き込み手段と、
前記メモリの前記テストアドレスからテストデータを読み出すテスト読み出し手段と、
前記テスト読み出し手段で読み出されたテストデータを予め保持している基準データと比較して障害の有無を判定する判定手段と、
前記退避手段に退避されているデータを前記メモリの前記テストアドレスに書き戻す書き戻し手段と、
を有することを特徴とするメモリ回路。
【請求項２】
請求項１記載のメモリ回路において、
前記判定手段で障害と判定されたアドレスを含むユーザの領域を障害領域として管理し前記障害領域に割り当てられていたユーザに別の障害のない領域を割り当てる障害メモリ管理手段
を有することを特徴とするメモリ回路。
【請求項３】
請求項２記載のメモリ回路において、
前記テストデータは、１，０が交番する第１の値と０，１が交番する第２の値であることを特徴とするメモリ回路。
【請求項４】
ネットワークから受信したフレームをユーザ毎に領域を割り当てたメモリに書き込み、前記メモリから各ユーザのフレームデータを読み出して後続回路に供給するメモリ回路を診断するメモリ診断方法において、
前記ネットワークから受信したフレームのフレーム間ギャップとフレーム先頭のプリアンブルとフレーム開始分界点を含む期間である空きタイムスロットで、前記メモリのテストを行うためのテストアドレスを順次変化させて生成する第１ステップと、
前記メモリの前記テストアドレスから読み出したデータを退避する第２ステップと、
前記メモリの前記テストアドレスにテストデータを書き込む第３ステップと、
前記メモリの前記テストアドレスからテストデータを読み出す第４ステップと、
前記第４ステップで読み出されたテストデータを予め保持している基準データと比較して障害の有無を判定する第５ステップと、
前記第２ステップで退避されているデータを前記メモリの前記テストアドレスに書き戻す第６ステップと、
前記第１乃至第６ステップを繰り返すことを特徴とするメモリ診断方法。
【請求項５】
請求項４記載のメモリ診断方法において、
前記第５ステップで障害と判定されたアドレスを含むユーザの領域を障害領域として管理し、前記障害領域に割り当てられていたユーザに別の障害のない領域を割り当てることを特徴とするメモリ診断方法。
【請求項６】
請求項５記載のメモリ診断方法において、
前記テストデータは、１，０が交番する第１の値と０，１が交番する第２の値であり、
前記第１ステップは、前記第１の値のテストデータを用いて前記第２乃至第７ステップを実行し、前記第２の値のテストデータを用いて前記第２乃至第７ステップを実行したのち前記テストアドレスを変化させることを特徴とするメモリ診断方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークから受信したフレームを書き込まれるメモリの診断方法及びメモリ回路に関する。
【背景技術】
【０００２】
イーサネット（登録商標）等のＬＡＮフレームの伝送を行う伝送装置では、入力インタフェース部でネットワークから受信したフレームデータをユーザ毎にメモリに書き込む。そして、スケジューラの制御で上記メモリからフレームデータを読み出してスイッチング部に供給し、宛先に応じてクロスコネクト処理を行う。クロスコネクトされたフレームデータは出力インタフェース部からネットワークに送出される。このように、伝送装置のメモリは伝送フレーム処理で常にアクセスされており、メモリへのアクセス頻度が高い。また、１つのメモリ空間を複数のユーザが分割して使用している。
【０００３】
図１は従来のメモリ回路の一例の構成図を示す。ＬＡＮフレーム（入力データ）はライト制御部１に供給される。ライト制御部１は入力データをワード単位とし、ユーザ毎に使用領域を異ならせてライトアドレスを生成し、上記入力データをワード単位でメモリ２に書き込む。リード制御部３はリードアドレスを生成してメモリ２からデータを読み出し、読み出されたデータは後続回路に供給される。
【０００４】
故障診断プログラムを起動してメモリの診断を行い、メモリにおける故障アドレスを検出してレジスタに格納しておき、メモリをアクセスするアドレスが故障アドレスと一致したときセレクタによりメモリに代えて救済用レジスタを選択することで、メモリの故障アドレスを救済用レジスタに置き換えてメモリの故障救済を行う方法が従来から知られている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−１８１８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般的なメモリのチェック方法として、パリティコードや誤り訂正コード（ＥＣＣ）を用いたチェック方法があるが、以下のようなデメリットがある。パリティチェックは、偶数又は奇数のチェックであるため確率論で必ずしもエラーが検出できるとは限らない。ＥＣＣチェックは、チェックのための冗長ビットが必要であり、メモリ容量や回路規模が増大する。
【０００７】
従来、伝送装置では出荷試験においてメモリ診断が行われるだけであり、出荷後は運用状態でメモリ診断を実施することは時間制約上難しかった。このため、経年変化でメモリ故障が発生しても、メモリ故障を検出することができなかった。また、使用されていないメモリ空間に対する診断も十分でないという問題があった。
【０００８】
開示のメモリ回路は、運用中に自動でメモリ全体の故障検出を行うことを目的とする。
【課題を解決するための手段】
【０００９】
開示の一実施形態によるメモリ回路は、ネットワークから受信したフレームをユーザ毎に領域を割り当てたメモリに書き込み、前記メモリから各ユーザのフレームデータを読み出して後続回路に供給するメモリ回路において、
前記ネットワークから受信したフレームのフレーム間ギャップとフレーム先頭のプリアンブルとフレーム開始分界点を含む期間である空きタイムスロットで、前記メモリのテストを行うためのテストアドレスを順次変化させて生成するテストアドレス生成手段と、
前記メモリの前記テストアドレスから読み出したデータを退避する退避手段と、
前記メモリの前記テストアドレスにテストデータを書き込むテスト書き込み手段と、
前記メモリの前記テストアドレスからテストデータを読み出すテスト読み出し手段と、
前記テスト読み出し手段で読み出されたテストデータを予め保持している基準データと比較して障害の有無を判定する判定手段と、
前記退避手段に退避されているデータを前記メモリの前記テストアドレスに書き戻す書き戻し手段と、を有する。
【発明の効果】
【００１０】
本実施形態によれば、運用中に自動でメモリ全体の故障検出を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】従来のメモリ回路の一例の構成図である。
【図２】伝送装置の一実施形態の構成図である。
【図３】メモリ回路の一実施形態の構成図である。
【図４】ＬＡＮフレーム間ギャップを示す図である。
【図５】メモリチェック処理の一実施形態のフローチャートである。
【図６】メモリチェックの信号タイミングチャートを示す図である。
【図７】メモリチェックの信号タイミングチャートを示す図である。
【図８】障害メモリ管理テーブルの一実施形態を示す図である。
【図９】ユーザ領域が故障した場合の障害メモリ管理テーブルの例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて実施形態を説明する。
【００１３】
＜伝送装置の構成＞
図２は伝送装置の一実施形態の構成図を示す。図２において、インタフェースユニット１０には複数の光トランシーバ１１−０〜１１−７が設けられている。各光トランシーバ１１−０〜１１−７にはネットワークから光信号が供給され電気信号に変換される。なお、ネットワークから入来するＬＡＮフレームはＴＰＩＤ（タグプロトコル識別子：０ｘ８１００）とタグ制御情報からなるＶＬＡＮタグを有している。上記タグ制御情報内には３ビットのユーザプライオリティと１２ビットのＶＩＤ（仮想ＬＡＮ識別子）が含まれている。
【００１４】
各光トランシーバ１１−０〜１１−７から出力されるＬＡＮフレームはＭＡＣ処理部１２に供給され、ＭＡＣアドレスの終端等のＭＡＣ処理が行われる。その後、ＬＡＮフレームは優先度制御部１３に供給される。
【００１５】
優先度制御部１３内のフレーム識別部１４はＬＡＮフレームのＶＩＤを識別し、識別したＶＩＤをリード・ライト制御部１６に供給し、ＬＡＮフレームをポリサー１５に供給する。ポリサー１５はＬＡＮフレームの流量制限を行う。
【００１６】
リード・ライト制御部１６はＶＩＤに応じてメモリのライトアドレスを発生し、入力ＬＡＮフレームはライトアドレスによってメモリ１７のＶＩＤに応じた領域に書き込まれる。スケジューラ１８は読み出し順序の調整を行う。
【００１７】
リード・ライト制御部１６はスケジューラ１８の調整に応じたリードアドレスを生成してメモリ１７に供給し、メモリ１７のリードアドレスで指示された領域からＬＡＮフレームが読み出される。メモリ１７から読み出されたＬＡＮフレームはインタフェース部２０を経てスイッチファブリックユニット３０に供給される。また、リード・ライト制御部１６はメモリ１７の障害を検出すると障害情報を障害メモリ管理部１９に通知し、障害情報は障害メモリ管理部１９にて保持管理される。
【００１８】
スイッチファブリックユニット３０はＬＡＮフレームに対し宛先に応じてクロスコネクト処理を行い、クロスコネクトされたＬＡＮフレームは宛先に応じたインタフェースユニット３５の光トランシーバ３６からネットワークに送出される。
【００１９】
また、ＣＰＵユニット４０により、インタフェースユニット１０，スイッチファブリックユニット３０，インタフェースユニット３５それぞれのＣＰＵ２１，３１，３７に対し、フローエントリ設定と監視が行われている。
【００２０】
＜伝送装置の構成＞
図３はメモリ回路の一実施形態の構成図を示す。このメモリ回路は図２におけるリード・ライト制御部１６及びメモリ１７に対応する。図３において、端子５０からのＬＡＮフレーム（入力データ）はライト制御部５１に供給される。
【００２１】
ライト制御部５１は障害メモリ管理部１９又はＣＰＵ２１からユーザ毎の使用領域を指示されており、入力データをワード単位とし、ユーザ毎に使用領域を異ならせてライトアドレスを生成する。上記入力データとライトアドレスはデータセレクタ５２とアドレスセレクタ５３を介してメモリ５４に供給され、入力データはワード単位でメモリ５４に書き込まれる。メモリ５４は図２におけるメモリ１７に対応する。
【００２２】
また、リード制御部５５はリードアドレスを生成する。リードアドレスはアドレスセレクタ５６を介してメモリ５４に供給され、メモリ５４から読み出されたデータは端子５７から後続回路に供給される。なお、読み出されたデータはテンポラリフリップフロップ（ｔｅｍｐ−ＦＦ）５８及びテストリード制御及びチェック部６２に供給される。テンポラリフリップフロップ５８は格納データをデータセレクタ５２に供給する。
【００２３】
端子６０にはフレーム識別部１４から空きタイムスロット指示信号が供給されており、この空きタイムスロット指示信号はテストライト制御部６１，データセレクタ５２，アドレスセレクタ５３，５６それぞれに供給される。
【００２４】
テストライト制御部６１は空きタイムスロットの期間においてテストデータ０ｘＡＡ，０ｘ５５（０ｘは１６進表示を示す）を生成すると共に、内蔵するアドレスカウンタにてライトアドレスを生成する。また、テストライト制御部６１は空きタイムスロットの期間の１番タイムスロットでデータセレクタ５２にテストデータ（テストライト制御部６１の出力）を選択させ、５番タイムスロットで退避データ（テンポラリフリップフロップ５８の出力）を選択させる選択信号を生成する。上記選択信号はデータセレクタ５２に供給される。上記テストデータとライトアドレスはデータセレクタ５２とアドレスセレクタ５３を介してメモリ５４に供給されて、テストデータ又は退避データがワード単位でメモリ５４に書き込まれる。
【００２５】
なお、テストデータ０ｘＡＡは２進表示の‘１０１０’つまり１，０が交番する第１の値であり、テストデータ０ｘ５５は２進表示で‘０１０１’つまり０，１が交番する第２の値であり、同一アドレスに２つのテストデータ０ｘＡＡ，０ｘ５５それぞれを書き込み、上記アドレスから読み出したテストデータを基準データ０ｘＡＡ，０ｘ５５それぞれと比較する２回のチェックを行うことで、メモリ５４の１アドレス分の正確な故障検出を行うことができる。
【００２６】
また、テストリード制御及びチェック部６２は、空きタイムスロットの期間において内蔵するアドレスカウンタにてリードアドレスを生成する。リードアドレスはアドレスセレクタ５６を介してメモリ５４に供給され、メモリ５４からテストデータが読み出されてテストリード制御及びチェック部６２に供給される。テストリード制御及びチェック部６２はメモリ５４から読み出されたテストデータを予め保持している基準データ０ｘＡＡ，０ｘ５５と比較して、不一致の場合にチェック結果とリードアドレス（テストアドレス）を含む故障情報を故障障害メモリ管理部１９に対して通知する。
【００２７】
＜ＬＡＮフレーム間ギャップ＞
図４にＬＡＮフレーム間ギャップを示す。ＬＡＮフレームは、先行するＬＡＮフレームとの間に少なくとも１２バイト分のＩＦＧ（Ｉｎｔｅｒｆｒａｍｅ  Ｇａｐ）がある。ＬＡＮフレームの先頭には７バイト分のプリアンブルと、１バイト分のＳＦＤ（Ｓｔａｒｔ  Ｆｒａｍｅ  Ｄｅｌｉｍｅｔｅｒ：フレーム開始分界点）があり、その後に最大９６００バイトの可変長のＬＡＮフレーム（ペイロード領域）が続いている。このため、ＩＦＧとプリアンブルとＳＦＤの計２０バイト分を空きタイムスロットとしてメモリ５４のチェックを行う。
【００２８】
＜メモリチェック処理＞
図５にメモリ回路が空きタイムスロットに実行するメモリチェック処理の一実施形態のフローチャートを示す。図５において、ステップＳ１でテストライト制御部６１とテストリード制御及びチェック部６２が生成するリードアドレス及びライトアドレスであるテストアドレスをメモリ５４の先頭アドレスに設定する。このとき、テストデータとして０ｘＡＡを設定する。
【００２９】
ステップＳ２でテストリード制御及びチェック部６２からのリードアドレスをメモリ５４に供給して、メモリ５４から読み出されたデータをテンポラリフリップフロップ５８に書き込んで退避する。
【００３０】
次に、ステップＳ３でテストライト制御部６１からのテストデータ（０ｘＡＡ又は０ｘ５５）をメモリ５４のライトアドレスに書き込む。なお、上記テストリード制御及びチェック部６２とテストライト制御部６１は同期しており、上記リードアドレスとライトアドレスは同一である。そして、テストリード制御及びチェック部６２からのリードアドレスをメモリ５４に供給して、メモリ５４から読み出されたテストデータをテストリード制御及びチェック部６２に供給する。
【００３１】
ステップＳ４でテストリード制御及びチェック部６２はメモリ５４から読み出されたテストデータを予め保持している基準データ（０ｘＡＡ又は０ｘ５５）と比較して正常（一致）であればステップＳ５に進み、異常（不一致）であればステップＳ６に進む。
【００３２】
ステップＳ５ではテストライト制御部６１からのライトアドレスとテンポラリフリップフロップ５８の退避データをメモリ５４に供給し、退避データをメモリ５４の退避時と同一アドレスに書き戻す。
【００３３】
ステップＳ６ではテストリード制御及びチェック部６２は故障情報を故障障害メモリ管理部１９に対して通知し、障害メモリ管理部１９は障害メモリ管理テーブルの故障と判定された領域を未使用領域とする。
【００３４】
ステップＳ５又はＳ６の実行後、ステップＳ７で直前に使用したテストデータが０ｘＡＡであるか否かを判別する。直前のテストデータが０ｘＡＡの場合にはステップＳ８でテストデータとして０ｘ５５を設定してステップＳ２に進む。直前のテストデータが０ｘ５５の場合にはステップＳ９でテストデータとして０ｘＡＡを設定し、更に、テストアドレスとしてのリードアドレス及びライトアドレスを１だけカウントアップしてステップＳ２に進む。
【００３５】
＜信号タイミングチャート＞
図６及び図７にメモリチェックの信号タイミングチャートを示す。図６（Ｂ）に示すＬＡＮフレームの間に、図６（Ｃ）にハイレベルで示す２０クロック分の空きタイムスロットがある。なお、図６（Ｃ）におけるクロックは、図６（Ａ）に示す１００ＭＨｚのシステムクロックを基にしてＬＡＮフレームの１バイトの期間を１周期で示すクロックである。
【００３６】
上記２０クロック分の空きタイムスロットの期間において、ライト制御部５１は図６（Ｄ）に示すように、アドレスの生成（通常アドレスのカウント）を停止している。この空きタイムスロットの期間にテストライト制御部６１及びテストリード制御及びチェック部６２は図６（Ｅ），（Ｆ）に示すように、テストアドレス（即ち、ライトアドレス及びリードアドレス）を０，１，２と３回カウントアップする。なお、図６（Ａ）〜（Ｅ）に対し図６（Ｆ）〜図６（Ｊ）は時間軸（横軸）を拡大して表している。
【００３７】
そして、図６（Ｆ）に示す各テストアドレスの発生期間を図６（Ｇ）に示す０番から５番までの６タイムスロットに分割する。
【００３８】
０番タイムスロットでは、図６（Ｈ）に示すように、メモリ５４のテストアドレスからデータを読み出してテンポラリフリップフロップ５８に退避する。
【００３９】
１番タイムスロットでは、図６（Ｉ）に示すように、メモリ５４のテストアドレスにテストデータ０ｘＡＡを書き込む。
【００４０】
２番タイムスロットでは、図６（Ｈ）に示すように、メモリ５４のテストアドレスからテストデータを読み出してテストリード制御及びチェック部６２で基準データ０ｘＡＡと比較する。
【００４１】
３番タイムスロットでは、図６（Ｉ）に示すように、メモリ５４のテストアドレスにテストデータ０ｘ５５を書き込む。
【００４２】
４番タイムスロットでは、図６（Ｈ）に示すように、メモリ５４のテストアドレスからテストデータを読み出してテストリード制御及びチェック部６２で基準データ０ｘ５５と比較する。
【００４３】
５番タイムスロットでは、図６（Ｉ）に示すように、メモリ５４のテストアドレスにテンポラリフリップフロップ５８の退避データを書き戻す。
【００４４】
図６ではメモリ５４のテストアドレスから基準データと一致するテストデータが読み出されて故障が検出されないため、テストリード制御及びチェック部６２の出力するチェック結果は、図６（Ｊ）に示すように故障なしを示すローレベルを維持する。
【００４５】
このようにして、メモリ５４の１アドレスについてのチェックが行われ、２０クロック分の空きタイムスロットの期間において、メモリ５４の３つのテストアドレスのチェックがなされる。
【００４６】
図６はメモリ５４に故障がない場合を示しているのに対し、図７はメモリ５４に故障がある場合を示している。図７（Ｂ）に示すＬＡＮフレームの間に、図７（Ｃ）にハイレベルで示す２０クロック分の空きタイムスロットがある。
【００４７】
上記２０クロック分の空きタイムスロットの期間において、ライト制御部５１は図７（Ｄ）に示すように、アドレスの生成（通常アドレスのカウント）を停止している。この空きタイムスロットの期間にテストライト制御部６１及びテストリード制御及びチェック部６２は図７（Ｅ），（Ｆ）に示すように、テストアドレス（即ち、ライトアドレス及びリードアドレス）を３００，３０１，３０２と３回カウントアップする。なお、図７（Ａ）〜（Ｅ）に対し図７（Ｆ）〜図７（Ｊ）は時間軸（横軸）を拡大して表している。
【００４８】
図７（Ｆ）に示す各テストアドレスの発生期間を図７（Ｇ）に示す０番から５番までの６タイムスロットに分割する。
【００４９】
テストアドレス３００の０番タイムスロットでは、図７（Ｈ）に示すように、メモリ５４のテストアドレスからデータを読み出してテンポラリフリップフロップ５８に退避する。
【００５０】
テストアドレス３００の１番タイムスロットでは、図７（Ｉ）に示すように、メモリ５４のテストアドレスにテストデータ０ｘＡＡを書き込む。
【００５１】
テストアドレス３００の２番タイムスロットでは、図７（Ｈ）に示すように、メモリ５４のテストアドレスからテストデータ０ｘＡＡを読み出してテストリード制御及びチェック部６２で基準データ０ｘＡＡと比較する。
【００５２】
テストアドレス３００の３番タイムスロットでは、図７（Ｉ）に示すように、メモリ５４のテストアドレスにテストデータ０ｘ５５を書き込む。
【００５３】
テストアドレス３００の４番タイムスロットでは、図７（Ｈ）に示すように、メモリ５４のテストアドレスからテストデータ０ｘ１５を読み出してテストリード制御及びチェック部６２で基準データ０ｘ５５と比較する。
【００５４】
テストアドレス３００の５番タイムスロットでは、図７（Ｉ）に示すように、メモリ５４のテストアドレスにテンポラリフリップフロップ５８の退避データを書き戻す。
【００５５】
図７（Ｉ）の３番タイムスロットでテストデータ０ｘ５５をメモリ５４のテストアドレスに書き込んだにも拘わらず、図７（Ｈ）の４番タイムスロットでメモリ５４のテストアドレスからテストデータ０ｘ１５が読み出され、故障が検出されないため、テストリード制御及びチェック部６２の出力するチェック結果は、図７（Ｊ）に示すように５番タイムスロットで故障ありを示すハイレベルとなる。
【００５６】
図８に障害メモリ管理部１９に内蔵される障害メモリ管理テーブルの一実施形態を示す。図８では、図７のチェック結果を反映して、メモリ５４のアドレス３００−３ＦＦのユーザ領域に対するメモリ診断結果を異常としている。このようにユーザ毎に使用されるメモリ領域の一部が異常であった場合は、その領域を未使用領域としてユーザにはアサインされないようにしている。
【００５７】
図９は、ユーザｆｌｏｗ−０に使用していたアドレス０００−０ＦＦのユーザ領域が故障した場合の障害メモリ管理テーブルの例を示す。使用されているメモリ空間（ユーザ領域）が異常と判定された場合は、そのメモリ空間を未使用領域とすると共に、代替の例えばアドレス５００−５ＦＦを使用領域としてユーザｆｌｏｗ−０に再度アサインする。
【００５８】
このように障害メモリ管理部１９の障害メモリ管理テーブルで、ユーザ領域が有効か無効（正常か異常）かの判定結果とユーザｆｌｏｗ−Ｎｏ情報を格納することで、ユーザ毎のメモリ空間の管理が可能となり、正常なメモリ空間を使用することが可能となる。
【００５９】
なお、上記メモリ５４の使用前提としてＬＡＮフレーム（ＳＦＤ以降のペイロード領域）を格納することを想定している。従って、診断結果が異常であったメモリ領域は未使用とし、異常であったメモリ領域に既に格納されていたデータは廃棄する。そして、次に入力されるデータから新しいメモリ空間に格納し、正常に処理する構成としている。
【００６０】
このようにして、運用中に自動でメモリ全体の故障検出を行うことができ、異常があった場合は、その領域はユーザに開放せず未使用として扱い、メモリ空間が正常の領域にユーザの入力データがエントリされることで、メモリ回路の信頼性を確保することができる。
（付記１）
ネットワークから受信したフレームをユーザ毎に領域を割り当てたメモリに書き込み、前記メモリから各ユーザのフレームデータを読み出して後続回路に供給するメモリ回路において、
前記ネットワークから受信したフレームのフレーム間ギャップを含む空きタイムスロットで、前記メモリのテストを行うためのテストアドレスを順次変化させて生成するテストアドレス生成手段と、
前記メモリの前記テストアドレスから読み出したデータを退避する退避手段と、
前記メモリの前記テストアドレスにテストデータを書き込むテスト書き込み手段と、
前記メモリの前記テストアドレスからテストデータを読み出すテスト読み出し手段と、
前記テスト読み出し手段で読み出されたテストデータを予め保持している基準データと比較して障害の有無を判定する判定手段と、
前記退避手段に退避されているデータを前記メモリの前記テストアドレスに書き戻す書き戻し手段と、
を有することを特徴とするメモリ回路。
（付記２）
付記１記載のメモリ回路において、
前記判定手段で障害と判定されたアドレスを含むユーザの領域を障害領域として管理し前記障害領域に割り当てられていたユーザに別の障害のない領域を割り当てる障害メモリ管理手段
を有することを特徴とするメモリ回路。
（付記３）
付記２記載のメモリ回路において、
前記テストデータは、１，０が交番する第１の値と０，１が交番する第２の値であることを特徴とするメモリ回路。
（付記４）
ネットワークから受信したフレームをユーザ毎に領域を割り当てたメモリに書き込み、前記メモリから各ユーザのフレームデータを読み出して後続回路に供給するメモリ回路を診断するメモリ診断方法において、
前記ネットワークから受信したフレームのフレーム間ギャップを含む空きタイムスロットで、前記メモリのテストを行うためのテストアドレスを順次変化させて生成する第１ステップと、
前記メモリの前記テストアドレスから読み出したデータを退避する第２ステップと、
前記メモリの前記テストアドレスにテストデータを書き込む第３ステップと、
前記メモリの前記テストアドレスからテストデータを読み出す第４ステップと、
前記第４ステップで読み出されたテストデータを予め保持している基準データと比較して障害の有無を判定する第５ステップと、
前記第２ステップで退避されているデータを前記メモリの前記テストアドレスに書き戻す第６ステップと、
前記第１乃至第６ステップを繰り返すことを特徴とするメモリ診断方法。
（付記５）
付記４記載のメモリ診断方法において、
前記第５ステップで障害と判定されたアドレスを含むユーザの領域を障害領域として管理し、前記障害領域に割り当てられていたユーザに別の障害のない領域を割り当てることを特徴とするメモリ診断方法。
（付記６）
付記５記載のメモリ診断方法において、
前記テストデータは、１，０が交番する第１の値と０，１が交番する第２の値であり、
前記第１ステップは、前記第１の値のテストデータを用いて前記第２乃至第７ステップを実行し、前記第２の値のテストデータを用いて前記第２乃至第７ステップを実行したのち前記テストアドレスを変化させることを特徴とするメモリ診断方法。
（付記７）
付記３記載のメモリ回路において、
前記空きタイムスロットは、前記フレーム間ギャップとフレーム先頭のプリアンブルとフレーム開始分界点を含む期間であることを特徴とするメモリ回路。
（付記８）
付記６記載のメモリ診断方法において、
前記空きタイムスロットは、前記フレーム間ギャップとフレーム先頭のプリアンブルとフレーム開始分界点を含む期間であることを特徴とするメモリ診断方法。
【符号の説明】
【００６１】
１０  インタフェースユニット１０
１１−０〜１１−７  光トランシーバ
１２  ＭＡＣ処理部
１３  優先度制御部
１４  フレーム識別部
１５  ポリサー
１６  リード・ライト制御部
１７  メモリ
１８  スケジューラ
１９  障害メモリ管理部
２０  インタフェース部
３０  スイッチファブリックユニット
４０  ＣＰＵユニット
５１  ライト制御部
５２，データセレクタ
５３，５６  アドレスセレクタ
５４  メモリ
５５  リード制御部
５８  テンポラリフリップフロップ
６１  テストライト制御部
６２  テストリード制御及びチェック部
【図１】
0005413060.tif 000002
【図２】
0005413060.tif 000003
【図３】
0005413060.tif 000004
【図４】
0005413060.tif 000005
【図５】
0005413060.tif 000006
【図６】
0005413060.tif 000007
【図７】
0005413060.tif 000008
【図８】
0005413060.tif 000009
【図９】
0005413060.tif 000010