(57)【要約】【課題】  小形・簡便・低コストで転送効率が高い受信データ格納装置及び受信データ格納方法を提供する。【解決手段】  ネットワークからの受信パケットデータに対する付加情報データを生成する情報付加回路と、前記受信パケットデータと前記付加情報データとを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置において、前記バッファは、切れ目のないアドレスで形成され、前記データを格納するリングメモリと、前記リングメモリを制御するリングメモリ制御回路とを備え、前記リングメモリ制御回路は、前記受信パケットデータを順次プッシュするアドレスを指定するライトポインタと、前記付加情報データをプッシュする所定のアドレスを指定し、読出し可能なアドレスを指定するリード許可ポインタと、前記メインメモリに対して順次ポップするアドレスを指定するリードポインタとを有することを特徴とする受信データ格納装置。【選択図】                    図１
2006094246.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークからの受信パケットデータに対する付加情報データを生成する情報付加回路と、前記受信パケットデータと前記付加情報データとを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置において、
前記バッファは、切れ目のないアドレスで形成され、前記データを格納するリングメモリと、前記リングメモリを制御するリングメモリ制御回路とを備え、
前記リングメモリ制御回路は、前記受信パケットデータを順次プッシュするアドレスを指定するライトポインタと、前記付加情報データをプッシュする所定のアドレスを指定し、読出し可能なアドレスを指定するリード許可ポインタと、前記メインメモリに対して順次ポップするアドレスを指定するリードポインタとを有することを特徴とする受信データ格納装置。
【請求項２】
前記リングメモリ制御回路は、前記リード許可ポインタのアドレスを前記ライトポインタのアドレスとし、前記ライトポインタのアドレスをインクリメントすることを特徴とする請求項１記載の受信データ格納装置。
【請求項３】
前記リングメモリは、前記受信パケットデータと前記付加情報データとを識別する識別タグをアドレス毎に格納することを特徴とする請求項２記載の受信データ格納装置。
【請求項４】
前記リングメモリ制御回路は、前記リードポインタと前記ライトポインタとに基づくフル信号を生成し、前記リードポインタと前記リード許可ポインタとに基づくレディ信号を生成し、前記情報付加回路からのプッシュ信号のアサートに基づき、前記ライトポインタをインクリメントし、前記データ転送制御回路からのポップ信号のアサートに基づき、前記リードポインタをインクリメントすると共に、
前記付加情報データは、前記受信パケットデータのデータ数を有する
ことを特徴とする請求項３記載の受信データ格納装置。
【請求項５】
ネットワークからの受信パケットデータに対する付加情報データを生成する情報付加回路と、前記受信パケットデータと前記付加情報データとを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置の受信データ格納方法において、
前記バッファは、切れ目のないアドレスで形成されるリングメモリを備えると共に、
前記リングメモリに前記受信パケットデータをプッシュし、ライトポインタのアドレスをインクリメントするステップ、
リード許可ポインタに基づき前記リングメモリに前記付加情報データをプッシュし、前記リード許可ポインタのアドレスを前記ライトポインタのアドレスとし、前記ライトポインタのアドレスをインクリメントするステップ、
前記リード許可ポインタに基づき前記リングメモリに格納されたデータをポップし、リードポインタのアドレスをインクリメントするステップ、
を備えることを特徴とする受信データ格納方法。
【請求項６】
ネットワークからの受信パケットデータに対する付加情報データ及び前記受信パケットデータと前記付加情報データとを識別する識別タグを生成し、前記受信パケットデータ及び前記付加情報データと前記識別タグとの組から成る情報・受信パケットデータを生成する情報付加回路と、前記情報・受信パケットデータを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置の受信データ格納方法において、
前記バッファは、切れ目のないアドレスで形成されるリングメモリを備えると共に、
リードポインタのアドレスとリード許可ポインタのアドレスとが同じとなり、ライトポインタのアドレスが前記リードポインタのアドレスをインクリメントした値となるステップ、
前記情報付加回路からのプッシュ信号のアサートを検出すると共に、前記識別タグに基づき、前記リングメモリに前記受信パケットデータをプッシュし、前記ライトポインタのアドレスをインクリメントするステップ、
前記情報付加回路からのプッシュ信号のアサートを検出すると共に、前記識別タグ及び前記リード許可ポインタに基づき、前記リングメモリに前記付加情報データをプッシュし、前記リード許可ポインタのアドレスを前記ライトポインタのアドレスとし、前記ライトポインタのアドレスをインクリメントするステップ、
前記リードポインタと前記リード許可ポインタとに基づくレディ信号を生成するステップ、
前記データ転送制御回路からのポップ信号のアサートを検出すると共に、前記リード許可ポインタに基づき前記リングメモリに格納されたデータをポップし、前記リードポインタのアドレスをインクリメントするステップ、
を備えることを特徴とする受信データ格納方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続するストア＆フォワード方式の受信データ格納装置及び受信データ格納方法に関する。
【背景技術】
【０００２】
図４は、従来の受信データ格納装置を示す構成図である。図４の従来例の構成を説明する。同図において、受信データ格納装置２’はネットワーク１に接続する。
【０００３】
また、受信データ格納装置２’内部の構成を説明する。
インターフェース回路（Ｉ／Ｆ回路）３の入力はネットワーク１に接続する。さらに、情報付加回路４’の入力はＩ／Ｆ回路３の出力に接続する。また、バッファ（ＦＩＦＯ）５’の入力は情報付加回路４’の出力に接続する。さらに、データ転送制御回路６の入力はバッファ５’の出力に接続する。また、メインメモリ７はデータ転送制御回路６の出力に接続する。
【０００４】
このような図４の従来例の動作を説明する。
Ｉ／Ｆ回路３は、ネットワーク１から受信データ格納装置２’宛てのパケットを受信すると、受信パケットデータ８を生成する。
【０００５】
そして、受信パケットデータ８は、例えば、先頭データであるパケットデータ＃０と、パケットデータ＃１と、・・・、パケットデータ＃（Ｎ−１）と、最終データであるパケットデータ＃Ｎとから形成される。
【０００６】
また、情報付加回路４’は、受信パケットデータ８のデータ数を計数し付加情報データであるパケットデータ数を生成する。さらにまた、情報付加回路４’は、受信パケットデータ８とパケットデータ数とを結合した情報・受信パケットデータ９’を生成する。
【０００７】
詳しくは、情報・受信パケットデータ９’は、例えば、パケットデータ＃０と、パケットデータ＃１と、・・・、パケットデータ＃（Ｎ−１）と、パケットデータ＃Ｎと、パケットデータ数とから形成される。即ち、パケットデータ数は、パケットデータ＃０からパケットデータ＃Ｎの後に付加する。
【０００８】
さらに、バッファ５’は、順次、情報・受信パケットデータ９’をプッシュ（ＰＵＳＨ）し、一時的に格納する。
【０００９】
また、データ転送制御回路６は、バッファ５’に情報・受信パケットデータ９’の全てが格納されたことを確認する。また、データ転送制御回路６は、情報・受信パケットデータ９’のデータ長に異常がないことを確認する。さらに、データ転送制御回路６は、情報・受信パケットデータ９’の巡回冗長検査（ＣＲＣ）コードに異常がないことを確認する。なお、ＣＲＣコードは、データ転送において、データ転送中にエラーが発生していないかどうかを検出する方法に用いるコードである。
【００１０】
そして、データ転送制御回路６は、バッファ５’に情報・受信パケットデータ９’の全てが格納され、情報・受信パケットデータ９’のデータ長に異常がなく、情報・受信パケットデータ９’のＣＲＣコードに異常がないときに、バッファ５’に格納されたデータ（情報・受信パケットデータ９’相当のデータ）をポップ（ＰＯＰ）し、メインメモリ７に転送する。
【００１１】
さらに、メインメモリ７は、データ転送制御回路６からのデータ（情報・受信パケットデータ９’相当のデータ）を格納する。そして、メインメモリ７に格納されたデータは、マイコン（図示せず）などにより所定の処理をする。
【００１２】
つまり、図４の従来例は、ストア＆フォワード方式で動作する。そして、このような図４の従来例は、メインメモリ７に転送されるデータ（情報・受信パケットデータ９’相当のデータ）は、正常なパケットだけとなるため無駄なエラーパケットの転送を削除できる。
【００１３】
また、図５は、従来の他の受信データ格納装置を示す構成図である。同図において、図４と同等の要素には同等符号を付し、説明を省略する。受信データ格納装置２’’内部の構成を説明する。
【００１４】
受信パケットデータ用バッファ（ＦＩＦＯ）１０の入力はＩ／Ｆ回路３の出力に接続する。また、付加情報データ用バッファ（ＦＩＦＯ）１１の入力は情報付加回路４’’の出力に接続する。さらに、読出し制御回路１２の入力は受信パケットデータ用バッファ１０の出力と付加情報データ用バッファ１１の出力とに接続する。また、データ転送制御回路６’の入力は読出し制御回路１２の出力に接続する。
【００１５】
このような図５の従来例の動作を説明する。なお、図４の実施例の動作と同様となる動作の説明は省略する。同図において、情報付加回路４’’は、受信パケットデータ８のデータ数を計数しパケットデータ数を生成する。
【００１６】
さらに、付加情報データ用バッファ１１は、順次、パケットデータ数をプッシュ（ＰＵＳＨ）し、一時的に格納し、付加情報データ１４を生成する。そして、付加情報データ１４は、例えば、パケットデータ数＃０と、パケットデータ数＃１と、・・・、パケットデータ数＃（Ｎ−１）と、パケットデータ数＃Ｎとから形成される。
【００１７】
また、受信パケットデータ用バッファ１０は、順次、受信パケットデータをプッシュ（ＰＵＳＨ）し、一時的に格納し、受信パケットデータ１３を生成する。そして、図５の実施例の受信パケットデータ１３は、図４の実施例の受信パケットデータ８に相当するデータとなる。
【００１８】
さらに、読出し制御回路１２は、受信パケットデータ用バッファ１０の出力と付加情報データ用バッファ１１の出力とを切り替える。
【００１９】
そして、データ転送制御回路６’は、受信パケットデータ用バッファ１０に受信パケットデータ１３の全てが格納され、受信パケットデータ１３及び付加情報データ１４のデータ長に異常がなく、受信パケットデータ１３及び付加情報データ１４のＣＲＣコードに異常がないときに、受信パケットデータ用バッファ１０及び付加情報データ用バッファ１１に格納されたデータをポップ（ＰＯＰ）し、メインメモリ７に転送する。
【００２０】
したがって、図５の実施例は、図４の従来例と同様に、ストア＆フォワード方式で動作する。
【００２１】
【特許文献１】特許第３４７３９７５号公報
【特許文献２】特許第２５３９６１４号公報
【発明の開示】
【発明が解決しようとする課題】
【００２２】
しかしながら、図４の従来例は、データ転送制御回路６とメインメモリ７との接続において、データ転送開始のときに転送データ数を転送先に通知するバスプロトコル、例えば、ＰＣＩ−Ｘバスを用いることができないという課題がある。
【００２３】
詳しくは、データ転送制御回路６は、情報・受信パケットデータ９’のパケットデータ＃０からパケットデータ＃Ｎをポップした後でないと情報・受信パケットデータ９’のパケットデータ数が得られない。
【００２４】
なお、上述の実施例とは別に、データ転送制御回路６に、情報・受信パケットデータ９’のパケットデータ＃０からパケットデータ＃Ｎをポップしたデータを一時的に格納する手段（図示せず）を設けると、データ転送制御回路６は、メインメモリ７に対して、パケットデータ数を転送した後にパケットデータ＃０からパケットデータ＃Ｎを転送することができる。よって、この場合は、データ転送制御回路６とメインメモリ７との接続にＰＣＩ−Ｘバスを用いることができる。
【００２５】
しかしながら、このような場合は、構成要素が増加すると共に、データ転送制御回路６の処理が複雑となるという課題がある。このため、全体として、効率的にデータ転送制御回路６とメインメモリ７との転送ができないという課題がある。
【００２６】
さらに、図５の従来例は、受信パケットデータ用バッファ１０または付加情報データ用バッファ１１の何れか一方にオーバーフローが発生すると、他方に空き容量があっても処理を中断する。
【００２７】
したがって、受信パケットデータ用バッファ１０と付加情報データ用バッファ１１とのバッファリソースの使用効率が悪いという課題がある。また、受信パケットデータ用バッファ１０または付加情報データ用バッファ１１の何れかにオーバーフローが発生したときの処理が複雑になるという課題がある。
【００２８】
さらに、図５の従来例は、構成要素が多く、大型・高価という課題がある。
【００２９】
本発明の目的は、以上説明した課題を解決するものであり、小形・簡便・低コストで転送効率が高い受信データ格納装置及び受信データ格納方法を提供することにある。
【課題を解決するための手段】
【００３０】
このような目的を達成する本発明は、次の通りである。
（１）ネットワークからの受信パケットデータに対する付加情報データを生成する情報付加回路と、前記受信パケットデータと前記付加情報データとを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置において、前記バッファは、切れ目のないアドレスで形成され、前記データを格納するリングメモリと、前記リングメモリを制御するリングメモリ制御回路とを備え、前記リングメモリ制御回路は、前記受信パケットデータを順次プッシュするアドレスを指定するライトポインタと、前記付加情報データをプッシュする所定のアドレスを指定し、読出し可能なアドレスを指定するリード許可ポインタと、前記メインメモリに対して順次ポップするアドレスを指定するリードポインタとを有することを特徴とする受信データ格納装置。
（２）前記リングメモリ制御回路は、前記リード許可ポインタのアドレスを前記ライトポインタのアドレスとし、前記ライトポインタのアドレスをインクリメントすることを特徴とする（１）記載の受信データ格納装置。
（３）前記リングメモリは、前記受信パケットデータと前記付加情報データとを識別する識別タグをアドレス毎に格納することを特徴とする（２）記載の受信データ格納装置。
（４）前記リングメモリ制御回路は、前記リードポインタと前記ライトポインタとに基づくフル信号を生成し、前記リードポインタと前記リード許可ポインタとに基づくレディ信号を生成し、前記情報付加回路からのプッシュ信号のアサートに基づき、前記ライトポインタをインクリメントし、前記データ転送制御回路からのポップ信号のアサートに基づき、前記リードポインタをインクリメントすると共に、前記付加情報データは、前記受信パケットデータのデータ数を有することを特徴とする（３）記載の受信データ格納装置。
（５）ネットワークからの受信パケットデータに対する付加情報データを生成する情報付加回路と、前記受信パケットデータと前記付加情報データとを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置の受信データ格納方法において、前記バッファは、切れ目のないアドレスで形成されるリングメモリを備えると共に、前記リングメモリに前記受信パケットデータをプッシュし、ライトポインタのアドレスをインクリメントするステップ、リード許可ポインタに基づき前記リングメモリに前記付加情報データをプッシュし、前記リード許可ポインタのアドレスを前記ライトポインタのアドレスとし、前記ライトポインタのアドレスをインクリメントするステップ、前記リード許可ポインタに基づき前記リングメモリに格納されたデータをポップし、リードポインタのアドレスをインクリメントするステップ、を備えることを特徴とする受信データ格納方法。
（６）ネットワークからの受信パケットデータに対する付加情報データ及び前記受信パケットデータと前記付加情報データとを識別する識別タグを生成し、前記受信パケットデータ及び前記付加情報データと前記識別タグとの組から成る情報・受信パケットデータを生成する情報付加回路と、前記情報・受信パケットデータを一次的に格納するバッファと、前記バッファに格納されたデータをメインメモリにストア＆フォワード方式で転送するデータ転送制御回路とを備える受信データ格納装置の受信データ格納方法において、前記バッファは、切れ目のないアドレスで形成されるリングメモリを備えると共に、リードポインタのアドレスとリード許可ポインタのアドレスとが同じとなり、ライトポインタのアドレスが前記リードポインタのアドレスをインクリメントした値となるステップ、前記情報付加回路からのプッシュ信号のアサートを検出すると共に、前記識別タグに基づき、前記リングメモリに前記受信パケットデータをプッシュし、前記ライトポインタのアドレスをインクリメントするステップ、前記情報付加回路からのプッシュ信号のアサートを検出すると共に、前記識別タグ及び前記リード許可ポインタに基づき、前記リングメモリに前記付加情報データをプッシュし、前記リード許可ポインタのアドレスを前記ライトポインタのアドレスとし、前記ライトポインタのアドレスをインクリメントするステップ、前記リードポインタと前記リード許可ポインタとに基づくレディ信号を生成するステップ、前記データ転送制御回路からのポップ信号のアサートを検出すると共に、前記リード許可ポインタに基づき前記リングメモリに格納されたデータをポップし、前記リードポインタのアドレスをインクリメントするステップ、を備えることを特徴とする受信データ格納方法。
【発明の効果】
【００３１】
以上説明したことから明らかなように、本発明によれば次のような効果がある。
本発明によれば、小形・簡便・低コストで転送効率が高い受信データ格納装置及び受信データ格納方法を提供できる。
【００３２】
また、本発明によれば、データ転送制御回路とメインメモリとの接続において、データ転送開始のときに転送データ数を転送先に通知するバスプロトコル、例えば、ＰＣＩ−Ｘバスを用いることができる。そして、本発明によれば、このような転送を効率的に処理する受信データ格納装置及び受信データ格納方法を提供できる。
【００３３】
さらに、本発明によれば、周辺回路を簡便に形成できる。
【発明を実施するための最良の形態】
【００３４】
以下に図１に基づいて本発明を詳細に説明する。図１は、本発明の一実施例を示す構成図である。同図において、図４と同等の要素には同等符号を付し、説明を省略する。
【００３５】
図１の実施例の特徴は、バッファ（ＦＩＬＯ）５内部のリングメモリ制御回路１５とリングメモリ１６とに係る構成にある。
【００３６】
バッファ（ＦＩＦＯ）５は、情報付加回路４からプッシュ信号（ＰＵＳＨ信号）１８と情報・受信パケットデータ（ＰＵＳＨデータ）９とを入力する。また、バッファ５は、情報付加回路４にフル信号（ＦＵＬＬ信号）１９を出力する。
【００３７】
さらに、バッファ５は、データ転送制御回路６からポップ信号（ＰＯＰ信号）２０を入力する。さらにまた、バッファ５は、データ転送制御回路６に情報・受信パケットデータ（ＰＯＰデータ）１７とレディ信号（ＲＥＡＤＹ信号）２１とを出力する。
【００３８】
また、バッファ５は、その内部に、切れ目のないアドレスで形成されるリングメモリ１６と、リングメモリ１６を制御するリングメモリ制御回路１５とを有する。
【００３９】
さらに、情報付加回路４は、受信パケットデータ８のデータ数を計数し付加情報データであるパケットデータ数を生成する。さらにまた、情報付加回路４は、受信パケットデータ８とパケットデータ数とを識別する識別タグをアドレス毎に生成する。
【００４０】
詳しくは、パケットデータ＃０に対する識別タグは先頭データとし、パケットデータ＃１に対する識別タグは中間データとし、・・・、パケットデータ＃（Ｎ−１）に対する識別タグは中間データとし、パケットデータ＃Ｎに対する識別タグは最終データとし、パケットデータ数に対する識別タグは付加情報データとする。
【００４１】
そして、パケットデータ＃０と先頭データとは組となり、パケットデータ＃１と中間データとは組みとなり、・・・、パケットデータ＃（Ｎ−１）と中間データとは組になり、パケットデータ＃Ｎと最終データとは組になり、パケットデータ数と付加情報データとは組になる。
【００４２】
また、情報付加回路４は、パケットデータ＃０と先頭データとの組と、パケットデータ＃１と中間データとの組と、・・・、パケットデータ＃（Ｎ−１）と中間データとの組と、パケットデータ＃Ｎと最終データとの組と、パケットデータ数と付加情報データとの組とから成る情報・受信パケットデータ９を生成する。
【００４３】
なお、情報・受信パケットデータ９は、受信パケットデータ８（パケットデータ＃０、パケットデータ＃１、・・・、パケットデータ＃（Ｎ−１）、パケットデータ＃Ｎ）及びパケットデータ数から成るデータと、識別タグ（先頭データ、中間データ、・・・中間データ、最終データ、付加情報データ）とを結合したものになる。
【００４４】
さらに、情報・受信パケットデータ１７は、例えば、パケットデータ数と、パケットデータ＃０と、パケットデータ＃１と、・・・、パケットデータ＃（Ｎ−１）と、パケットデータ＃Ｎと、から形成される。即ち、パケットデータ数は、パケットデータ＃０からパケットデータ＃Ｎのはじめに付加される。
【００４５】
図２及び図３は、図１の実施例のリングメモリ１６におけるポインタを示す図である。
同図において、リングメモリ制御回路１５は、リングメモリ１６に対するアドレスポインタとして、ライトポインタＷｐと、リード許可ポインタＥｐと、リードポインタＲｐとを有する。なお、リングメモリは切れ目のないアドレスで形成される（図示せず）。
【００４６】
まず、このような図１の実施例におけるプッシュのときの動作について、図２を用いて説明する。図２は、図１の実施例のリングメモリ１６におけるプッシュのときのポインタを示す図である。
【００４７】
図２に対応する実施例は、情報・受信パケットデータ９について７つのアドレスが対応している。詳しくは、図２のパケット先頭データＳＯＰは、図１の情報・受信パケットデータ９のパケットデータ＃０と先頭データとの組に対応する。
【００４８】
また、図２のパケット中間データＭＯＰ０は図１の情報・受信パケットデータ９のパケットデータ＃１と中間データとの組に対応し、図２のパケット中間データＭＯＰ１は図１の情報・受信パケットデータ９のパケットデータ＃２と中間データとの組に対応し、図２のパケット中間データＭＯＰ２は図１の情報・受信パケットデータ９のパケットデータ＃３と中間データとの組に対応し、図２のパケット中間データＭＯＰ３は図１の情報・受信パケットデータ９のパケットデータ＃４と中間データとの組に対応する。
【００４９】
さらに、図２のパケット最終データＥＯＰは図１の情報・受信パケットデータ９のパケットデータ＃５と中間データとの組に対応する。また、図２のパケット付加情報データＩＮＦＯは図１の情報・受信パケットデータ９のパケットデータ数と付加情報データとの組に対応する。
【００５０】
第１に、リードポインタのアドレスとリード許可ポインタのアドレスとが同じとなり、ライトポインタのアドレスが前記リードポインタのアドレス（前記リード許可ポインタのアドレス）をインクリメントした値となるステップＳ１１を実行する。
【００５１】
即ち、各アドレスポインタのアドレスは以下の関係（１）から関係（３）を満足する。なお、リードポインタのアドレスとリード許可ポインタのアドレスとの絶対的な値は何であってもよい。
【００５２】
リードポインタＲｐ＝＝リード許可ポインタＥｐ    （１）
リード許可ポインタＥｐ＝＝リードポインタＲｐ    （２）
ライトポインタＷｐ＝＝リードポインタＲｐ＋１    （３）
【００５３】
そして、図２（ａ）は、このような初期状態を示す図である。
【００５４】
第２に、情報付加回路４からのＰＵＳＨ信号１８のアサートを検出すると共に、識別タグに基づき、リングメモリ１６に情報・受信パケットデータ９（受信パケットデータ８）をプッシュし、ライトポインタＷｐのアドレスをインクリメントするステップＳ１２を実行する。
【００５５】
詳しくは、識別タグが先頭データのとき、リングメモリ１６のライトポインタＷｐのアドレスにパケット先頭データＳＯＰをプッシュし、その後、ライトポインタＷｐのアドレスをインクリメントする。
【００５６】
そして、図２（ｂ）は、このようなパケット先頭データＳＯＰをプッシュし、その後、ライトポインタＷｐのアドレスをインクリメントした状態を示す図である。
【００５７】
また、識別タグが中間データのとき、リングメモリ１６のライトポインタＷｐのアドレスにパケット中間データＭＯＰ０からパケット中間データＭＯＰ３の何れかをプッシュし、その後、ライトポインタＷｐのアドレスをインクリメントする。
【００５８】
さらに、識別タグが最終データのとき、リングメモリ１６のライトポインタＷｐのアドレスにパケット最終データＥＯＰをプッシュし、その後、ライトポインタＷｐのアドレスをインクリメントする。
【００５９】
そして、情報・受信パケットデータ９中の受信パケットデータ８に相当する部分がリングメモリ１６に格納される。また、図２（ｃ）は、このようなパケット最終データＥＯＰをプッシュし、その後、ライトポインタＷｐのアドレスをインクリメントした状態を示す図である。
【００６０】
第３に、情報付加回路４からのＰＵＳＨ信号１８のアサートを検出すると共に、識別タグに基づき、リングメモリ１６にパケットデータ数をプッシュし、リード許可ポインタＥｐのアドレスをライトポインタＲｐのアドレスとし、ライトポインタＷｐのアドレスをインクリメントするステップＳ１３を実行する。
【００６１】
詳しくは、識別タグが付加情報データのとき、リングメモリ１６のリード許可ポインタＥｐのアドレスに付加情報データＩＮＦＯをプッシュし、その後、リード許可ポインタＥｐのアドレスをライトポインタＷｐのアドレスとし、ライトポインタＷｐのアドレスをインクリメントする。
【００６２】
よって、リード許可ポインタＥｐは、付加情報データＩＮＦＯをプッシュする所定のアドレスを指定する。即ち、リード許可ポインタＥｐは、付加情報データＩＮＦＯを格納するためのポインタとして作用する。そして、付加情報データＩＮＦＯは、受信パケットデータ８に相当する部分の前に格納される。
【００６３】
このようにして、情報・受信パケットデータ９の全部分がリングメモリ１６に格納される。また、図２（ｄ）は、このようなアドレスに付加情報データＩＮＦＯをプッシュし、その後、リード許可ポインタＥｐのアドレスをライトポインタＷｐのアドレスとし、ライトポインタＷｐのアドレスをインクリメントした状態を示す図である。
【００６４】
一方、リングメモリ制御回路１５は、リードポインタＲｐとライトポインタＷｐとに基づくＦＵＬＬ信号１９を生成する。具体的には、以下の関係（４）を満足するときはＦＵＬＬ信号１９をアサートし、以下の関係（５）を満足するときはＦＵＬＬ信号１９をネゲートする。
リードポインタＲｐ＝＝ライトポインタＷｐ  （４）
リードポインタＲｐ！＝ライトポインタＷｐ  （５）
【００６５】
このようにすると、リングメモリ１６にこれ以上格納ができないときにＦＵＬＬ信号１９がアサートとなる。つまり、リングメモリ１６のアドレス数が情報・受信データ９のアドレス数＋１よりも小さいときは、ＦＵＬＬ信号１９がアサートとなる。
【００６６】
そして、ＦＵＬＬ信号１９がアサートになると、情報付加回路４は情報・受信パケットデータ９の転送を停止する。
【００６７】
第４に、リングメモリ制御回路１５は、リードポインタＲｐとリード許可ポインタＥｐとに基づくＲＥＡＤＹ信号２１を生成するステップＳ１４を実行する。具体的には、以下の関係（６）を満足するときはＲＥＡＤＹ信号２１をアサートし、以下の関係（７）を満足するときはＲＥＡＤＹ信号２１をネゲートする。
リードポインタＲｐ！＝リード許可ポインタＥｐ  （６）
リードポインタＲｐ＝＝リード許可ポインタＥｐ  （７）
【００６８】
このようにすると、リングメモリ１６に転送可能なデータか格納されているときにＲＥＡＤＹ信号２１はアサートとなる。そして、データ転送制御回路６は、ＲＥＡＤＹ信号２１のアサートに基づいて、ＰＯＰ信号２０をアサートする。
【００６９】
次に、このような図１の実施例におけるポップのときの動作について、図３を用いて説明する。図３は、図１の実施例のリングメモリ１６におけるポップのときのポインタを示す図である。なお、図２と同一要素には同一符号を付し、説明を省略する。
【００７０】
第５に、データ転送制御回路６からのＰＯＰ信号２０のアサートを検出すると共に、リングメモリ１６に格納されたデータをポップし、リードポインタＲｐのアドレスをインクリメントするステップＳ１５を実行する。
【００７１】
そして、図３（ａ）は、パケット付加情報データＩＮＦＯをポップし、リードポインタＲｐのアドレスをインクリメントした状態を示す図である。このとき、リードポインタＲｐのアドレスは、パケット先頭データＳＯＰのアドレスとなる。
【００７２】
また、図３（ｂ）は、図３（ａ）の状態の後、パケット先頭データＳＯＰ及びパケット中間データ（ＭＯＰ０からＭＯＰ３）をポップした状態を示す図である。このとき、リードポインタＲｐのアドレスは、パケット最終データＥＯＰのアドレスとなる。
【００７３】
さらに、図３（ｃ）は、パケット最終データＥＯＰをポップし、リードポインタＲｐのアドレスをインクリメントした状態を示す図である。このとき、リードポインタＲｐのアドレスは、リード許可ポインタＥｐのアドレスとなり、前述の関係（１）から関係（３）を満足する。即ち、図３（ｃ）の状態は、図２（ａ）の状態と同じになる。また、前述の関係（７）に基づきＲＥＡＤＹ信号２１をネゲートする。
【００７４】
そして、ＲＥＡＤＹ信号２１がネゲートになると、データ転送制御回路６はＰＯＰ信号２０をネゲートし、情報・受信パケットデータ１７の転送を停止する。
【００７５】
したがって、リード許可ポインタＥｐは、読出し可能なアドレスを指定し、許可する。即ち、リード許可ポインタＥｐは、有効なデータを読み出すことができるリード許可ポインタとして作用する。
【００７６】
このようにして、図１の実施例は、ストア＆フォワード方式で動作する。そして、リード許可ポインタＥｐは、付加情報データＩＮＦＯを格納するためのポインタとしての機能と、有効なデータを読み出すことができるリード許可ポインタとしての機能とを有する。
【００７７】
また、図１の実施例の情報・受信パケットデータ１７は、データ転送開始のときに転送データ数を転送先に通知するバスプロトコル、例えば、ＰＣＩ−Ｘバスに対応している。このため、図１の実施例は、高い転送効率の受信データ格納装置及び受信データ格納方法を提供できる。
【００７８】
さらに、本発明によれば、バッファに対するアクセスは、プッシュ（ＰＵＳＨ）とポップ（ＰＯＰ）とのインターフェースとなるため、周辺回路が簡便になる。
【００７９】
また、前述の実施例では付加情報データは受信パケットデータ８のパケットデータ数を有するものであったが、これとは別に、付加情報データは受信パケットデータ８の優先順位を有するものであっても同等の構成となり、同等の作用効果を得ることができる。
【００８０】
さらに、前述の実施例では付加情報データは受信パケットデータ８のパケットデータ数を有するものであったが、これとは別に、付加情報データは受信パケットデータ８のステータスの情報を有するものであっても同等の構成となり、同等の作用効果を得ることができる。
【００８１】
また、前述の実施例における情報・受信パケットデータ１７のパケットデータ数ははじめに付加するように形成したが、これとは別に、パケットデータ数ははじめ以外に付加するように形成しても、同等の作用効果を得ることができる。
【００８２】
さらに、前述の実施例では付加情報データは一回のプッシュまたは一回のポップでリングメモリ１６にアクセスしていたが、これとは別に、複数回のプッシュまたは複数回のポップでリングメモリ１６にアクセスしても実質的に同等の構成となり、同等の作用効果が得られる。
【００８３】
また、前述の実施例において、受信パケットデータ８に相当する部分が不要パケットであるときは、リードポインタのアドレスとリード許可ポインタのアドレスとが同じとなり、ライトポインタのアドレスが前記リードポインタのアドレス（前記リード許可ポインタのアドレス）をインクリメントした値となるステップＳ１１を実行し、初期状態とする。こうして、不要パケットを削除する。
【００８４】
以上のように、本発明は、前述の実施例に限定されることなく、その本質を逸脱しない範囲でさらに多くの変更及び変形を含むものである。
【図面の簡単な説明】
【００８５】
【図１】本発明の一実施例を示す構成図である。
【図２】図１の実施例のリングメモリ１６におけるプッシュのときのポインタを示す図である。
【図３】図１の実施例のリングメモリ１６におけるポップのときのポインタを示す図である。
【図４】従来の受信データ格納装置を示す構成図である。
【図５】従来の他の受信データ格納装置を示す構成図である。
【符号の説明】
【００８６】
１  ネットワーク
２  受信データ格納装置
３  インターフェース回路（Ｉ／Ｆ回路）
４  情報付加回路
５  バッファ（ＦＩＦＯ）
６  データ転送制御回路
７  メインメモリ
１５  リングメモリ制御回路
１６  リングメモリ
８  受信パケットデータ
９  情報・受信パケットデータ（ＰＵＳＨデータ）
１７  情報・通信パケットデータ（ＰＯＰデータ）
１８  プッシュ信号（ＰＵＳＨ信号）
１９  フル信号（ＦＵＬＬ信号）
２０  ポップ信号（ＰＯＰ信号）
２１  レディ信号（ＲＥＡＤＹ信号）
Ｒｐ  リードポインタ
Ｗｐ  ライトポインタ
Ｅｐ  リード許可ポインタ
ＳＯＰ  パケット先頭データ
ＭＯＰ０からＭＯＰ４  パケット中間データ
ＥＯＰ  パケット最終データ
ＩＮＦＯ  パケット付加情報データ
【図２】
2006094246.tif 000003
【図３】
2006094246.tif 000004
【図４】
2006094246.tif 000005
【図５】
2006094246.tif 000006
【図１】
2006094246.tif 000007