JP2009032053A - データ受信システム - Google Patents

データ受信システム Download PDF

Info

Publication number
JP2009032053A
JP2009032053A JP2007195775A JP2007195775A JP2009032053A JP 2009032053 A JP2009032053 A JP 2009032053A JP 2007195775 A JP2007195775 A JP 2007195775A JP 2007195775 A JP2007195775 A JP 2007195775A JP 2009032053 A JP2009032053 A JP 2009032053A
Authority
JP
Japan
Prior art keywords
data
storage area
descriptor
reception
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007195775A
Other languages
English (en)
Inventor
Takeo Tsumura
武男 津村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2007195775A priority Critical patent/JP2009032053A/ja
Priority to US12/153,403 priority patent/US8341351B2/en
Publication of JP2009032053A publication Critical patent/JP2009032053A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】記憶能力が異なる複数の記憶領域を有するデータ受信システムにおいて、データ受信時に好適にデータの記憶を行うことができるデータ受信システムを提供する。
【解決手段】アクセス制御部2はデータ取得部1が伝送路から取得したデータを受信FIFOメモリ3に記憶させた後、受信FIFOメモリ3に記憶されているデータの合計容量が所定のしきい値以下である場合にはそのままにし、受信FIFOメモリ3に記憶されているデータ容量が所定のしきい値を超えている場合には、アクセス制御部2はデータをデータ記憶領域4に転送し記憶させる。
【選択図】図2

Description

本発明は、所定の伝送路からデータを受信するデータ受信システムに関する。
LAN(Local Area Network)等のネットワーク伝送路を介して情報を送受信するシステムが普及している。こうしたシステムの規格の1つに、イーサネット(Ethernet:登録商標)がある。
イーサネットでは、データの送受信処理は、システム全体の制御装置(CPU(Central Control Unit)等)と、送受信用のアクセス制御ユニット(MAC:Media Access Controller)とが送信及び受信ディスクリプタを介して行う。ディスクリプタとは、転送の方向(送信か受信か)、送信するデータ或いは受信したデータの記憶領域内の記憶位置を示す情報(アドレス)やデータサイズ等を示す送受信制御情報である。特に、受信ディスクリプタは、受信されたデータを格納したバッファメモリのアドレスを記録している。
例えば、データの送信を行う際には、CPUが送信ディスクリプタを生成し、MACが送信ディスクリプタを参照して送信するデータをバッファメモリから読み出し送信を行う。反対に、データの受信を行う際には、CPUが受信ディスクリプタを生成し、MACが受信したデータをバッファメモリに書き込み、書き込んだデータのアドレスを基に受信ディスクリプタを更新する。
イーサネット等の伝送路を介したデータ受信装置の従来の一例について以下説明する。
図1は、従来のデータ受信システム200の構成の一例を示すブロック図である。
図1に示すように、データ受信システム200は、データ取得部201、MAC202、一時記憶領域203、データ記憶領域204、ディスクリプタ領域205、CPU206を有する。
データ取得部201は、伝送路にLANケーブル等で物理的に接続されており、伝送路空データを取得する。伝送路からは所定のデータサイズ以下のデータが常に伝送されており、データ取得部201はデータを常に取得し続けることになる。また、データ取得部201は後述するMAC202と直接接続されており、伝送路から取得したデータをMAC202に転送する。
MAC202は、後述するCPU206が生成した受信ディスクリプタを参照して、データの受信制御を行う。具体的には、まず、MAC202は、データ取得部201が取得したデータを後述する一時記憶領域203に一時的に記憶させる。その後、ディスクリプタ領域に記憶された受信ディスクリプタを参照し、受信ディスクリプタに記載されたデータ記憶領域204内の位置に当該データをDMA(Direct Memory Access)転送し、その位置に記憶させる。MAC202の受信制御の詳細については後述する。
また、MAC202は、一時記憶領域203を有する。
一時記憶領域203は、MAC202が受信したデータを後述するデータ記憶領域204に記憶させる前に一時的に記憶させるための記憶領域である。一時記憶領域203は、MAC202が受信したデータをデータ記憶領域204に転送し記憶させるまでの遅延を吸収する目的で設置されている。
データ記憶領域204は、受信したデータを記憶するための記憶領域である。後述するCPU206は、データ記憶領域204に記憶されたデータを使用して所定の処理を行う。
ディスクリプタ領域205は、CPU206が生成したディスクリプタを記憶する記憶領域であり、所定数のディスクリプタを記憶することができる。
CPU206は、データ受信システム200の全体の制御を行う演算制御部である。
また、CPU206は、データ記憶領域204に記憶されたデータを読み出し、これを使用して所定の処理を実行する。
さらに、CPU206は、情報の送受信に備えて送信及び受信ディスクリプタを生成し、ディスクリプタ領域205に記憶する。
このような従来のデータ受信システム200における、データ受信時の動作例は、以下の通りである。
CPU206は、複数のデータ受信に備えて、複数のディスクリプタ(受信ディスクリプタ)を生成してディスクリプタ領域205に記憶させ、生成したディスクリプタの存在をMAC202に通知する。MAC202は、データ取得部201が伝送路から取得したデータを受信データとして一時記憶領域203に記憶させる。CPU206から新規ディスクリプタの存在を通知されたら、MAC202はディスクリプタに記載された情報を基に、一時記憶領域203に記憶された受信データをデータ記憶領域204にDMA転送し記憶させる。転送が終了したら、MAC202は転送した受信データの容量や格納位置情報(データ記憶領域内のアドレス情報)を基に参照したディスクリプタを更新し、CPU206に受信完了を通知する。CPU206は、受信が完了したデータをデータ記憶領域204から読み出し、読み出したデータを使用して所定の処理を行う。このような処理を、データ取得部201が取得した所定サイズのデータごとに繰り返している。
このような従来のデータ送受信装置の一例が、特許文献1に開示されている。
特開平05−158865号公報
従来のデータ送受信装置の一例としてのデータ受信システム200では、上述したように、データ取得部201が取得したデータはMAC202によって一時記憶領域203に一時的に記憶された後、ディスクリプタに従ってデータ記憶領域204に格納されることになる。
一時記憶領域203は、あくまでデータ取得部201が受信したデータを一時的に記憶するために配設されている記憶領域であるので、記憶容量は大きくない。一時記憶領域203の記憶容量は、例えば8KByte〜64KByte程度が一般的である。例えばイーサネット(登録商標)では、最大フレーム長(一度の受信機会)に受信可能なデータ量は、通常約1.5KByteであるため、複数のデータが連続して受信される場合等には、先に受信されたデータがMAC202により一時記憶領域203からデータ記憶領域204へ転送される間にその後に受信されたデータにより一時記憶領域203が一杯になってしまい、さらにその後に受信されるデータを一時記憶領域203に記憶できず、データの受信が不可能な状況になることがある、という不利益があった。
本発明は上述した不利益を解消するためになされたものであり、記憶能力が異なる複数の記憶領域を有するデータ受信システムにおいて、データ受信時に好適にデータの記憶を行うことができるデータ受信システムを提供することを目的とする。
上記した不利益を解消するために、第1の発明のデータ受信システムは、所定の伝送路からのデータを取得するデータ取得部と、前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、複数の記憶領域と、を有し、前記複数の記憶領域は、第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含み、前記アクセス制御部は、転送部をさらに有し、前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、当該第2の記憶領域に記憶させる。
第2の発明のデータ受信システムは、所定の伝送路からのデータを取得するデータ取得部と、前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、複数の記憶領域と、前記データが記憶された記憶領域内の位置に関する受信ディスクリプタを記憶するディスクリプタ領域と、制御部と、を有し、前記複数の記憶領域は、第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含み、前記アクセス制御部は、転送部をさらに有し、前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、前記受信ディスクリプタに記載された位置に関する情報を基に当該第2の記憶領域に記憶させるとともに、当該受信ディスクリプタを受信ディスクリプタが使用中であることを示すフラグを付加して更新し、当該受信ディスクリプタの更新を前記制御部に対して通知し、前記制御部は、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、当該データを使用して所定の処理を行う。
第3の発明のデータ受信システムは、所定の伝送路からのデータを取得するデータ取得部と、前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含む複数の記憶領域と、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを記憶するためのディスクリプタ領域と、前記データ取得部のデータ取得前にデータを記憶する位置情報を除いた受信ディスクリプタを生成して前記ディスクリプタ領域に記憶させる制御部と、をさらに有し、前記アクセス制御部は、転送部をさらに有し、前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、前記受信ディスクリプタに記載された位置に関する情報を基に当該第2の記憶領域に記憶させるとともに、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記ディスクリプタ領域内の受信ディスクリプタのいずれかに当該データを記憶する前記記憶領域内の位置に関する情報を記述し、前記制御部は、前記受信ディスクリプタを参照することにより前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを読み出し、当該データを使用して所定の処理を行う。
第4の発明のデータ受信システムは、所定の伝送路からのデータを取得するデータ取得部と、前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含む複数の記憶領域と、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを記憶するためのディスクリプタ領域と、制御部と、を有し、前記アクセス制御部は、転送部をさらに有し、前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、前記受信ディスクリプタに記載された位置に関する情報を基に当該第2の記憶領域に記憶させるとともに、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述した受信ディスクリプタを生成し、前記制御部は、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、当該データを使用して所定の処理を行う。
本発明によれば、記憶能力が異なる複数の記憶領域を有するデータ受信システムにおいて、データ受信時に受信したデータを記憶させる記憶領域を好適に決定してデータを記憶させることができるデータ受信システムを提供することができる。
<第1実施形態>
以下、本発明のデータ受信システムの第1の実施形態としてのデータ受信システム100について説明する。
図2は、データ受信システム100の構成の一例を示すブロック図である。
図2に示すように、データ受信システム100は、データ取得部1、アクセス制御部2、受信FIFOメモリ3(本発明の第1の記憶領域に対応)、データ記憶領域4(本発明の第2の記憶領域に対応)、ディスクリプタ領域5、CPU6(本発明の制御部に対応)を有する。
データ取得部1は、伝送路(イーサネット(登録商標)等のLAN(Local Area Network)等)を接続するための端子を有し、伝送路から送信されるデータを取得する。その後、データ取得部1は、後述するアクセス制御部2に直接接続されており、伝送路から取得したデータをアクセス制御部2に転送する。データ取得部1は、伝送路上のデータを常に取得し、アクセス制御部2に引き渡す処理を行う。
また、アクセス制御部2は、受信FIFOメモリ3を有する。
受信FIFOメモリ3は、アクセス制御部2がデータ取得部1から取得したデータを記憶するための記憶領域である。
受信FIFOメモリ3は、FIFO(First In, First Out)構造を有したSRAM(Static Random Access Memory)等のバッファメモリであり、一般に8KByte〜64KByte程度の記憶容量を有している。受信FIFOメモリ3は、図1に関連付けて説明した従来のデータ受信システム200においては、一時記憶領域203に相当する。
アクセス制御部2は、データ取得部1が伝送路から取得したデータを受け取り、取得したデータをまず一旦受信FIFOメモリ3に記憶させる。その後、アクセス制御部2は、受信FIFOメモリ3に既に記憶されているデータの合計容量を参照し、当該合計容量が所定のしきい値以下であった場合には、受信FIFOメモリ3に一旦記憶されたデータをそのままにし、当該合計容量が所定のしきい値を超えた場合は、受信FIFOメモリ3に一旦記憶されたデータを後述するデータ記憶領域4に対してDMA転送し記憶させる。所定のしきい値は、受信FIFOメモリ3の全容量に応じて決定される値であり、所定のしきい値の設定方法については本実施形態では限定しない。
例えば受信FIFOメモリ3の全容量が64KByteである場合、しきい値を32KByteに設定したとする。アクセス制御部2がデータ取得部1からデータを取得し受信FIFOメモリ3に一旦記憶させた結果、受信FIFOメモリ3内に記憶されている全データの合計容量が32KByte未満であった場合には、記憶させたデータは受信FIFOメモリ3に記憶させたままにし、受信FIFOメモリ3内に記憶されている全データの合計が32KByteを超えている場合には、一旦受信FIFOメモリ3に記憶されたデータをデータ記憶領域4に対してDMA転送し記憶させる。
アクセス制御部2は、データ取得部1が取得したデータを受信FIFOメモリ3に一旦記憶させる場合、或いは、受信FIFOメモリ3に記憶されたデータをデータ記憶領域4に対してDMA転送し記憶させる場合に、データを記憶させる受信FIFOメモリ3或いはデータ記憶領域4内の位置を、受信ディスクリプタを参照して決定する。
受信ディスクリプタについて説明する。
受信ディスクリプタは、アドレス情報、データ容量及び使用済みフラグが記載された情報である。
アドレス情報は、データの記憶位置を示す情報であり、受信FIFOメモリ3或いはデータ記憶領域4内の位置を示すアドレス情報である。アドレス情報がどのように受信FIFOメモリ3或いはデータ記憶領域4内の位置を示すかについては、本実施形態では限定しない。
データ容量は、そのデータの容量(データサイズ)を示す情報である。
使用済みフラグは、その受信ディスクリプタが使用されているか否かを示すフラグである。使用済みフラグがオフになっている受信ディスクリプタは、その受信ディスクリプタに記載されたアドレス情報が示すアドレスにはデータが記憶されていないことを示しており、すなわち、アクセス制御部2にとってその受信ディスクリプタが使用可能である(その受信ディスクリプタに記載されたアドレス情報のアドレスにデータを記憶可能である)ことを示している。
反対に、使用済みフラグがオンになっている受信ディスクリプタは、記載されたアドレス情報が示すアドレスにデータが記憶されていることを示しており、すなわち、その受信ディスクリプタが使用不可能である(その受信ディスクリプタに記載されたアドレス情報のアドレスにデータを記憶できない)ことを示している。
本実施形態では、受信ディスクリプタには、受信FIFOメモリ3に対応するものと、データ記憶領域4に対応するものとの2種類が存在する。すなわち、受信FIFOメモリ3内のどの位置にデータを記憶するかを示すアドレス情報を有する受信ディスクリプタと、データ記憶領域4内のどの位置にデータを記憶するかを示すアドレス情報を有する受信ディスクリプタの両方が存在する。
受信ディスクリプタは、後述するCPU6によって生成され、後述するディスクリプタ領域5に記憶されている。CPU6によって生成された受信ディスクリプタには、受信FIFOメモリ3或いはデータ記憶領域4のアドレス情報のみ記載されており、データ容量はまだ記載されていない。また、使用済みフラグはオフになっている。
アクセス制御部2は、データ取得部1からのデータ取得時に、受信FIFOメモリ3に対応した受信ディスクリプタのうちの1つを参照し、参照した受信ディスクリプタに記載されたアドレス情報に基づいて、そのアドレスにデータを記憶させる。アクセス制御部2は、受信ディスクリプタに記載されたアドレス情報を基にデータ取得部1から取得したデータを受信FIFOメモリ3に記憶させた後、当該データのデータ容量を基に、対応する受信ディスクリプタのデータ容量を更新し、さらに当該受信ディスクリプタの使用済みフラグをオンに更新する。
その後、アクセス制御部2は、受信FIFOメモリ3内のデータ容量の合計が所定のしきい値を超えたか否かの判定を行い、データをデータ記憶領域4に転送するか否かを決定する。アクセス制御部2は、データをデータ記憶領域4に転送させる場合には、データ記憶領域4に対応した受信ディスクリプタを参照し、参照した受信ディスクリプタに記載されたアドレス情報に基づいて、そのアドレスにデータを記憶させる。同時に、当該データのデータ容量を基に、対応する受信ディスクリプタのデータ容量を更新し、さらに当該受信ディスクリプタの使用済みフラグをオンに更新する。データをデータ記憶領域4に転送しない場合には、そのままにする。
アクセス制御部2はDMAC(Direct Memory Access Controller)21を有する。DMAC21は、受信FIFOメモリ3に記憶されたデータをデータ記憶領域4にDMA転送するためのコントローラである。DMAC21は、メモリとメモリまたはメモリとI/O(In/Out)デバイスの間でデータをDMA(Direct Memory Access)転送するための転送制御を行う。DMAC21は、アクセス制御部2が受信FIFOメモリ3に記憶されたデータをデータ記憶領域4に記憶させることを決定した際に、受信FIFOメモリ3に記憶されたデータをデータ記憶領域4に対してDMA転送するための転送制御を行う。
データ記憶領域4は、SDRAM(Synchronous Dynamic Random Access Memory)等により構成される、受信FIFOメモリ3と比較して大容量の記憶領域であり、例えば256MByteの記憶容量を有する。データ記憶領域4は、アクセス制御部2のDMAC21により受信FIFOメモリ3から転送されたデータを記憶する。
受信FIFOメモリ3とデータ記憶領域4とを比較すると、受信FIFOメモリ3は小容量であるが高速、データ記憶領域4は大容量であるが受信FIFOメモリ3と比較して低速である、という特徴をそれぞれ有する。従って、受信FIFOメモリ3及びデータ記憶領域4はこれらの特徴を満たすような記憶媒体であればよく、すなわち、必ずしも上述したように受信FIFOメモリ3がSRAM、データ記憶領域4がSDRAMで構成される必要は無い。
ディスクリプタ領域5は、上述した受信ディスクリプタを記憶するための記憶領域である。
CPU6は、データ受信システム100の各構成を統括的に制御する。
CPU6は、データを記憶するための受信FIFOメモリ3内のアドレスを指定した受信ディスクリプタと、データ記憶領域4内のアドレスを指定した受信ディスクリプタを生成し、ディスクリプタ領域5に記憶する。なお、この時点でCPU6により生成されるディスクリプタ情報には、データ容量に関する情報は記載されておらず、使用済みフラグはオフになっている。
CPU6は、ディスクリプタ領域5に記憶された受信ディスクリプタのうち、使用済みフラグがオンになっている受信ディスクリプタを参照し、受信FIFOメモリ3或いはデータ記憶領域4からデータを読み出し、当該データを使用した種々の処理を行う。CPU6が行う種々の処理に関しては、本発明では限定しない。
CPU6は、読み出したデータを処理に使用し終わった後、そのデータを受信FIFOメモリ3或いはデータ記憶領域4から削除する、或いは他の記憶領域(図2に図示しない)に転送すると共に、当該データの受信ディスクリプタの使用済みフラグをオフに更新し、アクセス制御部2にこれを通知する。この削除或いは転送により受信FIFOメモリ3及びデータ記憶領域4の容量が空き、データ取得部1が取得した新たなデータを記憶できるようになる。これにより、アクセス制御部2は、次回以降の受信機会にデータ取得部1が取得したデータを記憶する際には、ディスクリプタ領域5に記憶された受信ディスクリプタの使用済みフラグを参照することにより、使用可能な(データをそのアドレス情報のアドレスに記憶可能な)受信ディスクリプタを知ることができる。
本実施形態のデータ受信システム100の各構成の動作は以上の通りである。
次に、上述した各構成を用いた、接続された伝送路からデータを受信する場合のデータ受信システム100全体の動作例について説明する。
図3は、データ受信時のデータ受信システム100の動作例を示すフローチャートである。
なお、図3に示すフローチャートは、データ受信システム100の1回の受信機会におけるデータの受信処理を示したものであり、実際には図3に示す動作を繰り返している。
ステップST1:
データ取得部1は、伝送路から取得したデータをアクセス制御部2に渡す。
ステップST2:
アクセス制御部2は、ディスクリプタ領域5に記憶された、受信FIFOメモリ3に対応した受信ディスクリプタのうち1つを参照し、当該受信ディスクリプタに記載されたアドレス情報を基に、ステップST1において取得したデータを受信FIFOメモリ3に記憶させる。
ステップST3:
アクセス制御部2は、ステップST2において受信FIFOメモリ3にデータを記憶させる際に参照した受信ディスクリプタを更新する。すなわち、アクセス制御部2は、ステップST2において参照した、受信FIFOメモリ3に対応する受信ディスクリプタに受信FIFOメモリ3に記憶されたデータのデータ容量を追記し、使用済みフラグをオンにする。
ステップST4:
アクセス制御部2は、ステップST3における受信ディスクリプタの更新をCPU6に対して通知する。
CPU6は、この通知によりデータの受信を知り、このデータを使用した処理を行うことが可能になる。
ステップST5:
アクセス制御部2は、受信FIFOメモリ3を参照し、受信FIFOメモリ3内に記憶されているデータの合計容量をチェックする。
ステップST6:
アクセス制御部2は、ステップST5においてチェックした受信FIFOメモリ3に記憶されているデータの合計容量が所定のしきい値以下である場合はステップST1に戻り、合計容量が所定のしきい値を超えている場合はステップST7に進む。
ステップST7:
アクセス制御部2のDMAC21は、ステップST1においてデータ取得部1から取得し、ステップST2において受信FIFOメモリ3に一旦記憶したデータをデータ記憶領域4に転送する。
ステップST8:
アクセス制御部2は、ディスクリプタ領域5に記憶された、データ記憶領域4に対応した受信ディスクリプタのうちの1つを参照し、そのアドレス情報に従って、ステップST7においてDMAC21が転送したデータをデータ記憶領域4に記憶させる。
ステップST9:
アクセス制御部2は、ステップST8においてデータ記憶領域4にデータを記憶させる際に参照した受信ディスクリプタを更新する。すなわち、アクセス制御部2は、ステップST3において更新した、受信FIFOメモリ3に対応した受信ディスクリプタから、データ容量を削除し、使用済みフラグをオフに戻す。さらに、ステップST8において参照した、データ記憶領域4に対応する受信ディスクリプタに、ステップST8においてデータ記憶領域4に記憶されたデータ容量を追記し、使用済みフラグをオンにする。
ステップST10:
アクセス制御部2は、ステップST9における受信ディスクリプタの更新をCPU6に対して通知する。
CPU6は、この通知によりデータの受信を知り、このデータを使用した処理を行うことが可能になる。
なお、このステップ終了後、次の受信機会においてデータ取得部1が伝送路から取得したデータの処理を行うため、ステップST1に戻る。
本実施形態のデータ受信システム100は、上述したように伝送路からのデータを記憶する動作を繰り返す。
以上説明した本実施形態のデータ受信システム100によれば、受信FIFOメモリ3とデータ記憶領域4の2つの記憶部を有している。
上述したように、本実施形態のデータ受信システム100によれば、アクセス制御部2は、データ取得部1が伝送路から取得したデータを、受信FIFOメモリ3に対応した受信ディスクリプタのうちの1つを参照することにより一旦受信FIFOメモリ3に記憶させた後、受信FIFOメモリ3に記憶されているデータの合計容量が所定のしきい値以下である場合にはそのままにし、受信FIFOメモリ3に記憶されているデータの合計容量が所定のしきい値を超えている場合には、一旦受信FIFOメモリ3に記憶したデータ記憶領域4に転送して記憶させる。受信FIFOメモリ3は、小容量であるが高速であり、データ記憶領域4は大容量であるが受信FIFOメモリ3と比較して低速であるため、本実施形態のデータ受信システム100によれば、受信FIFOメモリ3に空き容量がある場合には受信FIFOメモリ3に高速に記憶を行うことができ、受信FIFOメモリ3に空き容量が無い場合には、大容量のデータ記憶領域4に確実に記憶を行うことができる。特に、データ記憶領域4に記憶させる際にはDMAC21によるDMA転送を行うが、受信FIFOメモリ3に記憶させる際にはDMA転送が必要ないため、より高速な記憶を行うことができる。
また、本実施形態のデータ受信システム100によれば、受信FIFOメモリ3に記憶されているデータの合計容量が所定のしきい値を超えている場合には、アクセス制御部2は、一旦受信FIFOメモリ3に記憶されたデータをDMAC21によりデータ記憶領域4にDMA転送して記憶させる。受信FIFOメモリ3に記憶されているデータ容量が所定のしきい値を超えている状態は、データ取得部1が伝送路から取得したデータをCPU6が処理しきれていない状態であり、伝送路からのデータ受信速度が増大した場合等に起こる状態であるが、本実施形態のデータ受信システム100によれば、このような状態でも、伝送路から取得し一旦受信FIFOメモリ3に記憶されたデータを、受信FIFOメモリ3と比較して大容量のデータ記憶領域4に記憶させるので、データの受信失敗やデータ欠落等を防止することができる。
ただし、データ取得部1が伝送路から取得したデータを、受信FIFOメモリ3とデータ記憶領域4とのいずれに記憶するかを決定する方法として、上述した第1実施形態においては受信FIFOメモリ3内のデータ容量が所定のしきい値を基準に決定する方法を一例として説明したが、本発明はこれには限定されない。例えば、データ取得部1が所定時間内に受信するデータ量の多寡を基準として受信FIFOメモリ3とデータ記憶領域4のいずれに受信したデータを記憶するかを決定しても良い。さらに、受信データの内容に応じて、受信FIFOメモリ3とデータ記憶領域4のいずれに受信データを記憶するかを決定しても良い。
なお、上述した第1実施形態では、受信FIFOメモリ3とデータ記憶領域4の2つのデータ記憶領域を有する場合について説明したが、本発明はこれには限定されず、複数の受信FIFOメモリ3と複数のデータ記憶領域4とを有していても良い。
<第2実施形態>
以下、本発明のデータ受信システムの第2の実施形態としてのデータ受信システム101について説明する。
本第2実施形態のデータ受信システム101の構成は、アクセス制御部2a及びCPU6aを除いて、第1実施形態のデータ受信システム100と同様である。
本実施形態のデータ受信システム101は、データ取得部1、アクセス制御部2a、受信FIFOメモリ3(本発明の第1の記憶領域に対応)、データ記憶領域4(本発明の第2の記憶領域に対応)、ディスクリプタ領域5、CPU6a(本発明の制御部に対応)を有する。
本第2実施形態のデータ受信システム101では、受信ディスクリプタに関する処理において第1実施形態において説明したデータ受信システム100と異なっている。
第1実施形態のデータ受信システム100では、受信FIFOメモリ3とデータ記憶領域4のそれぞれに対応した受信ディスクリプタがディスクリプタ領域5に予め記憶されており、アクセス制御部2はデータ取得部1からデータを取得し、受信FIFOメモリ3にデータを一旦記憶させた後、受信FIFOメモリ3内のデータの合計容量に応じて、一旦受信FIFOメモリ3に記憶させたデータを受信FIFOメモリ3とデータ記憶領域4のどちらに記憶させるかを決定し、記憶させる記憶領域に対応した受信ディスクリプタを参照し、記載されたアドレス情報に従って当該データを記憶させ、記憶させた後に参照した受信ディスクリプタを更新していた。
しかし、本第2実施形態のデータ受信システム101では、CPU6aはアドレス情報及びデータ容量が記載されていない受信ディスクリプタを生成してディスクリプタ領域5に記憶させておき、アクセス制御部2aは、データを受信FIFOメモリ3或いはデータ記憶領域4に記憶させた後、当該データのアドレス情報及びデータ容量を基に受信ディスクリプタを更新する。
すなわち、第1実施形態のデータ受信システム100においては、アクセス制御部2はCPU6が生成した受信ディスクリプタに記載されたアドレス情報を基に、データ取得部1が取得したデータを記憶させていたが、本第2実施形態のデータ受信システム101では、データを受信FIFOメモリ3或いはデータ記憶領域4に記憶させる際に、データを記憶させる位置をアクセス制御部2aが決定し、記憶させた後に記憶させたアドレスを受信ディスクリプタにアドレス情報として記載する。
以下、本第2実施形態の各構成の動作について説明する。ただし、データ取得部1、受信FIFOメモリ3、データ記憶領域4、ディスクリプタ領域5の動作に関しては第1実施形態に説明した動作と同様であるため、本実施形態においては説明を省略する。
アクセス制御部2aは、データ取得部1が伝送路から取得したデータを受け取り、取得したデータのデータ容量等を基に、受信FIFOメモリ3を参照し、記憶させるアドレスを決定する。そして、受信FIFOメモリ3の決定したアドレスにデータ取得部1から取得したデータを記憶させる。同時に、記憶させたデータのデータ容量を基に、ディスクリプタ領域5に記憶された受信ディスクリプタのうち、更新フラグがオフである受信ディスクリプタを1つ選択し、選択した受信ディスクリプタにアドレス情報及びデータ容量を追記すると共に、使用済みフラグをオンにする。
次に、アクセス制御部2aは、受信FIFOメモリ3に既に記憶されているデータの合計容量を参照し、当該合計容量が所定のしきい値以下である場合には、一旦受信FIFOメモリ3に記憶させたデータをそのままにし、当該合計容量が所定のしきい値を超えていた場合は、データを後述するデータ記憶領域4に転送して記憶させる。
この際、アクセス制御部2aは、転送するデータのデータ容量等を基に、データを記憶させるデータ記憶領域4内のデータを記憶させるアドレスを決定し、決定したアドレスにデータを記憶させる。
そして、アクセス制御部2aは、ディスクリプタ領域5に記憶された受信ディスクリプタのうち、更新フラグがオフである受信ディスクリプタを1つ選択し、選択した受信ディスクリプタのアドレス情報及びデータ容量を追記すると共に、使用済みフラグをオンにする。
本実施形態におけるアドレス情報について説明する。
本実施形態のアドレス情報は、CPU6aから見たI/O(In/Out)アドレスにより指定される。本実施形態のアドレス情報の概念図を図4に示す。
図4は、アドレス情報の概念図であり、CPU6aから見た受信FIFOメモリ3及びデータ記憶領域4のI/Oアドレスを概念的に示している。
図4に示した領域Aが受信FIFOメモリ3を示すアドレス群であり、領域Bがデータ記憶領域4を示すアドレス群である。I/Oアドレスは、例えば32ビットのものを使用する。
アクセス制御部2aのデータを記憶させるアドレスの決定方法について説明する。
アクセス制御部2aは、受信FIFOメモリ3にデータを記憶させるように決定した場合には、領域Aの空き領域を検索し、空き領域の先頭のアドレスを取得する。そして、当該空き領域の先頭からデータを記憶させる。
データ記憶領域4に記憶させるように決定した場合にも同様である。すなわち、アクセス制御部2aは、領域Bの空き領域を検索し、空き領域の先頭のアドレスを取得して、当該空き領域の先頭からデータを記憶させる。
このように記憶領域にデータを記憶させることにより、記憶領域を有効に利用することが可能になる。また、受信FIFOメモリ3からデータ記憶領域4へのデータ転送を一部省略しているため、性能の向上も実現される。
第1実施形態において説明したデータ受信システム100においては、CPU6が受信ディスクリプタ生成時に指定したアドレス情報に従ってアクセス制御部2が指定されたアドレスにデータを記憶させていた。すなわち、CPU6はデータ取得部1がデータを実際に取得する以前に受信ディスクリプタを生成しており、CPU6が生成した受信ディスクリプタに記載されたアドレス情報は、データのサイズを考慮せずに設定されている。従って、CPU6は新規に受信ディスクリプタを生成する際に、1回の受信機会でデータ取得部1が取得可能な最大のデータ容量(1.5KByte)を記憶可能なように受信ディスクリプタのアドレス情報を設定する必要があり、従って、実際にデータ取得部1が取得したデータが1.5KByteに満たない場合には、記憶領域にデータが記憶された場合に、データとデータとの間に隙間が空いてしまう(1つのデータの終了アドレスと次のデータの開始アドレスが連続していない)場合がある。
一方、本第2実施形態のデータ受信システム101においては、上述したようにアクセス制御部2aは常に空き領域の先頭アドレスからデータを記憶させるため、1つのデータの終了アドレスと次のデータの開始アドレスは常に連続しており、データとデータとの間に隙間が空いてしまい記憶領域が無駄になることが無く、記憶領域を有効に利用することが可能になっている。
CPU6aは、データ受信システム101の各構成を統括的に制御する。
CPU6aは、アドレス情報とデータ容量とを含まない受信ディスクリプタを生成し、予めディスクリプタ領域5に記憶させておく。
また、CPU6aは、データ取得部1が取得したデータがアクセス制御部2aにより受信FIFOメモリ3或いはデータ記憶領域4に記憶された後、アクセス制御部2aからの通知を受け、アクセス制御部2aにより更新された受信ディスクリプタを参照することにより当該データを読み出し、データを使用した種々の処理を行う。CPU6aが行う種々の処理に関しては、本発明では限定しない。CPU6aが処理に使用し終わった後、そのデータは受信FIFOメモリ3或いはデータ記憶領域4から削除される、或いは他の記憶領域に転送される。この削除或いは転送処理により受信FIFOメモリ3及びデータ記憶領域4の容量が空き、データ取得部1が取得した新たなデータを記憶できるようになる。すなわち、CPU6aは、処理に使用し終わったデータの受信ディスクリプタのアドレス情報とデータ容量とを削除して使用済みフラグをオフに戻し、アクセス制御部2aにこれを通知する。これにより、アクセス制御部2aは、次にデータを記憶させる際に使用可能な受信ディスクリプタを知ることができる。
以上説明したように、本第2実施形態のデータ受信システム101によれば、CPU6aはデータ取得前にアドレス情報及びデータ容量が記載されていない受信ディスクリプタを生成してディスクリプタ領域5に記憶させておき、アクセス制御部2aは、データ取得部1が取得したデータをさせる受信FIFOメモリ3或いはデータ記憶領域4内の位置を決定し、当該記憶させた位置のアドレス情報及びデータ容量を基に受信ディスクリプタを記載し、使用済みフラグをオンに更新する。この際、記憶領域の空き領域を検索し、空き領域の開始アドレスからデータを記憶させるようにデータを記憶させる位置を決定するので、CPUが予めデータ記憶位置のアドレス情報を含む受信ディスクリプタを生成しておく場合と比較して、記憶領域を有効に利用することができるようになる。
また、本第2実施形態においては、アドレス情報はCPU6aから見たI/Oアドレスにより、受信FIFOメモリ3とデータ記憶領域4の両方のアドレスが管理されているため、第1実施形態のように、受信FIFOメモリ3に対応した受信ディスクリプタとデータ記憶領域4に対応した受信ディスクリプタの両方を予め用意しておく必要が無く、ディスクリプタ領域の容量を小さく抑えることが可能になる。
また、本第2実施形態のデータ受信システム101においては、上述したような効果に加えて、第1実施形態のデータ受信システム100と同様に、受信FIFOメモリ3に記憶されているデータ容量が所定のしきい値を超えている場合には、アクセス制御部2aがデータ取得部1の取得したデータをDMAC21によりデータ記憶領域4にDMA転送して記憶させるので、データの受信失敗やデータ欠落等を防止することができるとともに、より高速な記憶を実行することができる。
<第3実施形態>
以下、本発明のデータ受信システムの第3の実施形態としてのデータ受信システム102について説明する。
本第3実施形態のデータ受信システム102の構成は、アクセス制御部2b及びCPU6bを除いて、第1実施形態のデータ受信システム100及び第2実施形態のデータ受信システム101と同様である。
本第3実施形態のデータ受信システム102は、データ取得部1、アクセス制御部2b、受信FIFOメモリ3(本発明の第1の記憶領域に対応)、データ記憶領域4(本発明の第2の記憶領域に対応)、ディスクリプタ領域5、CPU6b(本発明の制御部に対応)を有する。
本第3実施形態のデータ受信システム102では、受信ディスクリプタに関する処理において第2実施形態において説明したデータ受信システム101と異なっている。
第2実施形態のデータ受信システム101では、CPU6aがアドレス情報及びデータ容量を含まない受信ディスクリプタを予め生成してディスクリプタ領域5に記憶させておき、アクセス制御部2aは、データを記憶させる位置を受信FIFOメモリ3及びデータ記憶領域4の空き領域を検索することにより決定して記憶させ、アドレス情報及びデータ容量を基に受信ディスクリプタを更新していた。
本第3実施形態のデータ受信システム102では、CPU6bは受信ディスクリプタを生成せず、データ取得部1が取得したデータをアクセス制御部2aが受信FIFOメモリ3或いはデータ記憶領域4に記憶させる際に受信ディスクリプタを生成する。
すなわち、第2実施形態のデータ受信システム100ではCPU6が受信ディスクリプタの生成を行っていたが、本実施形態のデータ受信システム102では受信ディスクリプタの生成をアクセス制御部2bが行う点において第2実施形態と異なっている。
以下、第3実施形態のデータ受信システム102の各構成について説明する。ただし、データ取得部1、受信FIFOメモリ3、データ記憶領域4、ディスクリプタ領域5の動作に関しては第1実施形態に説明した動作と同様であるため、本実施形態においては説明を省略する。
アクセス制御部2bは、データ取得部1が伝送路から取得したデータを受け取り、取得したデータを一旦受信FIFOメモリ3に記憶させる。この際、アクセス制御部2は、データを記憶させた受信FIFOメモリ3内の領域のアドレス情報と、記憶されたデータのデータ容量とを記載し、使用済みフラグをオンにした受信ディスクリプタを生成し、ディスクリプタ領域5に記憶させる。
次に、アクセス制御部2bは、第1実施形態のデータ受信システム100のアクセス制御部2及び第2実施形態のデータ受信システム101のアクセス制御部2aと同様に、受信FIFOメモリ3に既に記憶されているデータの合計容量を参照し、当該合計容量が所定のしきい値以下である場合には受信FIFOメモリ3に記憶させたデータをそのままにし、当該合計容量が所定のしきい値を超えていた場合は、データをデータ記憶領域4に転送し記憶させる。
アクセス制御部2bは、データ記憶領域4にデータを記憶させた後、記憶させたデータのアドレス情報及びデータ容量を記載し、使用済みフラグをオンにした受信ディスクリプタを生成する。
CPU6bは、データ受信システム102の各構成を統括的に制御する。
また、CPU6bは、受信FIFOメモリ3或いはデータ記憶領域4に記憶されたデータを、ディスクリプタ領域5に記憶された、使用済みフラグがオンである受信ディスクリプタを参照することにより読み出し、データを使用した種々の処理を行う。CPU6bが行う種々の処理に関しては、本発明では限定しない。CPU6bが処理に使用し終わった後、そのデータは受信FIFOメモリ3或いはデータ記憶領域4から削除或いは他の記憶領域に転送される。この転送処理により受信FIFOメモリ3及びデータ記憶領域4の容量が空き、データ取得部1が取得した新たなデータを記憶できるようになる。すなわち、CPU6bは、処理に使用し終わったデータの受信ディスクリプタのアドレス情報とデータ容量とを削除して使用済みフラグをオフに戻し、アクセス制御部2bにこれを通知する。これにより、アクセス制御部2bは、次にデータを記憶させる際に使用可能な受信ディスクリプタを知ることができる。
また、CPU6bは、アクセス制御部2bが受信ディスクリプタを生成する前に、ディスクリプタ領域5内の空き領域に関する情報をアクセス制御部2bに伝える。アクセス制御部2bは、この情報を基に生成した受信ディスクリプタをディスクリプタ領域に記憶させる。
以上説明したように、本第3実施形態のデータ受信システム102によれば、アクセス制御部2bがデータを記憶させる位置を決定しデータを記憶させた後に、記憶させた位置のアドレス情報及びデータ容量を含む受信ディスクリプタを生成する。このため、受信ディスクリプタ生成のためにCPU6bに負荷が掛かる事態を回避することができる。また、アクセス制御部2bがデータを受信FIFOメモリ3或いはデータ記憶領域4に記憶させる際に、ディスクリプタ領域5に記憶された、予め生成された受信ディスクリプタを読み出す必要がなくなるため、従来のデータ受信システムのように、CPUがビジー状態になった等の理由でアクセス制御部が受信ディスクリプタを読み出すことができず、取得したデータの記憶が遅れ、これによりCPUによるデータを使用した所定の処理に遅れが生じる事態を回避することができる。
本発明は上述した実施形態には限定されない。
すなわち、本発明の実施に際しては、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
図1は、従来のデータ送受信装置の構成の一例を示すブロック図である。 図2は、本発明の第1実施形態のデータ受信装置の構成の一例を示すブロック図である。 図3は、本発明の第1実施形態のデータ受信装置のデータ受信時の動作例を示すフローチャートである。 図4は、アドレス情報の概念図である。
符号の説明
100,101,102…データ受信システム、1…データ取得部、2,2a,2b…アクセス制御部、21…DMAC、3…受信FIFOメモリ、4…データ記憶領域、5…ディスクリプタ領域、6,6a,6b…CPU、200…データ受信システム、201…データ取得部、202…MAC、203…一時記憶領域、204…データ記憶領域、205…ディスクリプタ領域

Claims (9)

  1. 所定の伝送路からのデータを取得するデータ取得部と、
    前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、
    複数の記憶領域と、
    を有し、
    前記複数の記憶領域は、第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含み、
    前記アクセス制御部は、転送部をさらに有し、
    前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、当該第2の記憶領域に記憶させる
    データ受信システム。
  2. 前記アクセス制御部は、前記データ取得部が取得したデータを前記第1の記憶領域に一旦記憶させ、その後前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記第1の記憶領域に一旦記憶させたデータを前記転送部に前記第2の記憶領域に対して転送させ、当該第2の記憶領域に記憶させる
    請求項1に記載のデータ受信システム。
  3. 前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを生成し、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、所定の処理を行う制御部と、
    前記受信ディスクリプタを記憶するディスクリプタ領域と、
    をさらに有し、
    前記アクセス制御部は、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を前記ディスクリプタ領域に記憶された前記受信ディスクリプタに記述し、
    前記受信ディスクリプタを読み出し、当該受信ディスクリプタに記載された位置に関する情報を基に前記データを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる
    請求項2に記載のデータ受信システム。
  4. 前記アクセス制御部は、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記受信ディスクリプタに当該受信ディスクリプタが使用中であることを示すフラグを付加し、
    前記制御部は、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、当該データを使用して所定の処理を行う
    請求項3に記載のデータ受信システム。
  5. 前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを記憶するためのディスクリプタ領域と、
    前記データ取得部のデータ取得前にデータを記憶する位置情報を除いた受信ディスクリプタを生成して前記ディスクリプタ領域に記憶させる制御部と、
    をさらに有し、
    前記アクセス制御部は、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記ディスクリプタ領域内の受信ディスクリプタのいずれかに当該データを記憶する前記記憶領域内の位置に関する情報を記述し、
    前記制御部は、前記受信ディスクリプタを参照することにより前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを読み出し、当該データを使用して所定の処理を行う
    請求項1に記載のデータ受信システム。
  6. 前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを記憶するためのディスクリプタ領域と、
    制御部と、
    をさらに有し、
    前記アクセス制御部は、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述した受信ディスクリプタを生成し、
    前記制御部は、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、当該データを使用して所定の処理を行う
    請求項1に記載のデータ受信システム。
  7. 所定の伝送路からのデータを取得するデータ取得部と、
    前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、
    複数の記憶領域と、
    前記データが記憶された記憶領域内の位置に関する受信ディスクリプタを記憶するディスクリプタ領域と、
    制御部と、
    を有し、
    前記複数の記憶領域は、第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含み、
    前記アクセス制御部は、転送部をさらに有し、
    前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、前記受信ディスクリプタに記載された位置に関する情報を基に当該第2の記憶領域に記憶させるとともに、当該受信ディスクリプタを受信ディスクリプタが使用中であることを示すフラグを付加して更新し、当該受信ディスクリプタの更新を前記制御部に対して通知し、
    前記制御部は、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、当該データを使用して所定の処理を行う
    データ受信システム。
  8. 所定の伝送路からのデータを取得するデータ取得部と、
    前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、
    第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含む複数の記憶領域と、
    前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを記憶するためのディスクリプタ領域と、
    前記データ取得部のデータ取得前にデータを記憶する位置情報を除いた受信ディスクリプタを生成して前記ディスクリプタ領域に記憶させる制御部と、
    をさらに有し、
    前記アクセス制御部は、転送部をさらに有し、
    前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、前記受信ディスクリプタに記載された位置に関する情報を基に当該第2の記憶領域に記憶させるとともに、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記ディスクリプタ領域内の受信ディスクリプタのいずれかに当該データを記憶する前記記憶領域内の位置に関する情報を記述し、
    前記制御部は、前記受信ディスクリプタを参照することにより前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを読み出し、当該データを使用して所定の処理を行う
    データ受信システム。
  9. 所定の伝送路からのデータを取得するデータ取得部と、
    前記データ取得部が取得した前記データを所定の記憶領域に記憶させるアクセス制御部と、
    第1の記憶領域と、前記第1の記憶領域と比較して記憶可能容量が大きく、かつ記憶速度が低速である第2の記憶領域とを含む複数の記憶領域と、
    前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述するための受信ディスクリプタを記憶するためのディスクリプタ領域と、
    制御部と、
    を有し、
    前記アクセス制御部は、転送部をさらに有し、
    前記アクセス制御部は、前記第1の記憶領域に記憶されているデータの合計容量が所定のしきい値を超えているか否かの判定を行い、当該合計容量が当該しきい値を超えている場合に、前記データ取得部が取得したデータを前記転送部に前記第2の記憶領域に対して転送させ、前記受信ディスクリプタに記載された位置に関する情報を基に当該第2の記憶領域に記憶させるとともに、前記データ取得部が取得したデータを前記第1の記憶領域或いは前記第2の記憶領域に記憶させる際に、前記第1の記憶領域或いは前記第2の記憶領域内の当該データを記憶する位置に関する情報を記述した受信ディスクリプタを生成し、
    前記制御部は、前記第1の記憶領域或いは前記第2の記憶領域に記憶された前記データを前記受信ディスクリプタを参照することにより読み出し、当該データを使用して所定の処理を行う
    データ受信システム。
JP2007195775A 2007-07-27 2007-07-27 データ受信システム Pending JP2009032053A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007195775A JP2009032053A (ja) 2007-07-27 2007-07-27 データ受信システム
US12/153,403 US8341351B2 (en) 2007-07-27 2008-05-19 Data reception system with determination whether total amount of data stored in first storage area exceeds threshold

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007195775A JP2009032053A (ja) 2007-07-27 2007-07-27 データ受信システム

Publications (1)

Publication Number Publication Date
JP2009032053A true JP2009032053A (ja) 2009-02-12

Family

ID=40296384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007195775A Pending JP2009032053A (ja) 2007-07-27 2007-07-27 データ受信システム

Country Status (2)

Country Link
US (1) US8341351B2 (ja)
JP (1) JP2009032053A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150082723A (ko) * 2014-01-06 2015-07-16 에스케이플래닛 주식회사 데이터의 저장 효율성을 높이기 위한 사용자 단말기 및 사용자 단말기의 데이터 저장 방법
WO2022049801A1 (ja) * 2020-09-07 2022-03-10 オムロン株式会社 通信制御機器および通信制御機器の制御方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9420072B2 (en) 2003-04-25 2016-08-16 Z124 Smartphone databoost
WO2011116502A1 (en) * 2010-03-26 2011-09-29 Nec(China) Co., Ltd. Indexing server and method therefor
US8788576B2 (en) * 2010-09-27 2014-07-22 Z124 High speed parallel data exchange with receiver side data handling
US8751682B2 (en) 2010-09-27 2014-06-10 Z124 Data transfer using high speed connection, high integrity connection, and descriptor
US8499051B2 (en) 2011-07-21 2013-07-30 Z124 Multiple messaging communication optimization
US9774721B2 (en) 2011-09-27 2017-09-26 Z124 LTE upgrade module
US20130076653A1 (en) 2011-09-27 2013-03-28 Mohammed Selim Displaying of charging status on dual screen device
US9411695B2 (en) 2013-12-04 2016-08-09 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Provisioning memory in a memory system for mirroring

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05158865A (ja) 1991-12-04 1993-06-25 Hitachi Ltd チェーンブロック転送方式
US5412782A (en) * 1992-07-02 1995-05-02 3Com Corporation Programmed I/O ethernet adapter with early interrupts for accelerating data transfer
US5717855A (en) * 1994-02-28 1998-02-10 International Business Machines Corporation Segmented communications adapter with packet transfer interface
US5687316A (en) 1994-07-29 1997-11-11 International Business Machines Corporation Communication apparatus and methods having P-MAC, I-MAC engines and buffer bypass for simultaneously transmitting multimedia and packet data
US6192428B1 (en) * 1998-02-13 2001-02-20 Intel Corporation Method/apparatus for dynamically changing FIFO draining priority through asynchronous or isochronous DMA engines in response to packet type and predetermined high watermark being reached
US6397287B1 (en) * 1999-01-27 2002-05-28 3Com Corporation Method and apparatus for dynamic bus request and burst-length control
JP2000259524A (ja) 1999-03-09 2000-09-22 Toshiba Corp データ受信回路
US7237031B2 (en) * 2002-03-07 2007-06-26 Sun Microsystems, Inc. Method and apparatus for caching protocol processing data
US6968358B2 (en) * 2002-07-25 2005-11-22 International Business Machines Corporation Method and apparatus for network communication card memory management

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150082723A (ko) * 2014-01-06 2015-07-16 에스케이플래닛 주식회사 데이터의 저장 효율성을 높이기 위한 사용자 단말기 및 사용자 단말기의 데이터 저장 방법
KR102177924B1 (ko) * 2014-01-06 2020-11-13 에스케이플래닛 주식회사 데이터의 저장 효율성을 높이기 위한 사용자 단말기 및 사용자 단말기의 데이터 저장 방법
WO2022049801A1 (ja) * 2020-09-07 2022-03-10 オムロン株式会社 通信制御機器および通信制御機器の制御方法
JP7476733B2 (ja) 2020-09-07 2024-05-01 オムロン株式会社 通信制御機器および通信制御機器の制御方法

Also Published As

Publication number Publication date
US8341351B2 (en) 2012-12-25
US20090031092A1 (en) 2009-01-29

Similar Documents

Publication Publication Date Title
JP2009032053A (ja) データ受信システム
JP5087467B2 (ja) コンピュータストレージシステムにおいてデータ圧縮並びに整合性を管理する方法および装置
JP2018185814A5 (ja)
US8713275B2 (en) Memory access monitoring method and device
JP2013507022A (ja) フローアウェアネットワークノード内でデータパケットを処理するための方法
CN108228102B (zh) 节点间数据迁移方法、装置、计算设备及计算机存储介质
US9710196B2 (en) Method of storing data, storage system, and storage apparatus
CN109564502B (zh) 应用于存储设备中的访问请求的处理方法和装置
CN110555001A (zh) 数据处理方法、装置、终端及介质
JP6333353B2 (ja) メモリノードを含む分散型メモリシステム用装置および方法
WO2014153931A1 (zh) 文件存储方法、装置、访问客户端及元数据服务器系统
US20220107752A1 (en) Data access method and apparatus
US20080225858A1 (en) Data transferring apparatus and information processing system
TW201642140A (zh) 用於防止欠載之封包記憶體系統、方法及裝置
US20220253238A1 (en) Method and apparatus for accessing solid state disk
US6947971B1 (en) Ethernet packet header cache
JP7073737B2 (ja) 通信ログ記録装置、通信ログ記録方法、および、通信ログ記録プログラム
US8959278B2 (en) System and method for scalable movement and replication of data
CN101464839B (zh) 一种访存缓冲装置及方法
CN117312201B (zh) 一种数据传输方法、装置及加速器设备、主机和存储介质
US20050044328A1 (en) Methods and apparatus for maintaining coherency in a multi-processor system
US20240036761A1 (en) Buffer management apparatus that uses pure hardware to manage buffer blocks configured in storage medium and associated buffer management method
US11914865B2 (en) Methods and systems for limiting data traffic while processing computer system operations
US20230393785A1 (en) Data recording device and control method for data recording device
JP2007213304A (ja) キャッシュメモリシステム及びマルチプロセッサシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081029

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081029

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090706

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090818