JP4941557B2 - メモリアクセス制御装置 - Google Patents

メモリアクセス制御装置 Download PDF

Info

Publication number
JP4941557B2
JP4941557B2 JP2009520251A JP2009520251A JP4941557B2 JP 4941557 B2 JP4941557 B2 JP 4941557B2 JP 2009520251 A JP2009520251 A JP 2009520251A JP 2009520251 A JP2009520251 A JP 2009520251A JP 4941557 B2 JP4941557 B2 JP 4941557B2
Authority
JP
Japan
Prior art keywords
packet
data
memory
read
clock
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.)
Active
Application number
JP2009520251A
Other languages
English (en)
Other versions
JPWO2009001450A1 (ja
Inventor
秀典 木内
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2009001450A1 publication Critical patent/JPWO2009001450A1/ja
Application granted granted Critical
Publication of JP4941557B2 publication Critical patent/JP4941557B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9042Separate storage for different parts of the packet, e.g. header and payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Systems (AREA)

Description

本発明はメモリアクセス制御装置に関し、特にメモリへの高速アクセス制御を行うメモリアクセス制御装置に関する。
近年、IP(Internet Protocol)パケットのトラフィック増加に伴って、高速大容量通信が必須となっており、バックボーンを支えるネットワーク機器では、パケット処理能力の向上が要求され、これらネットワーク機器に使用されるメモリも高速、大容量化が要求されている。
このような状況において、DDR(Double Data Rate)という機能を有する、200MHzを越える高速動作が可能な高速同期式SRAM(Static Random Access Memory)であるDDRメモリが登場し注目されている。
図9は従来メモリとDDRメモリとのデータ転送の違いを示す図である。従来メモリは、通常、クロック信号の立ち上がりまたは立ち下がりのいずれかに対して、1つのデータの読み書きを行うが、DDRメモリでは、クロック信号の立ち上がりと立ち下がりの両方でデータの読み書きが行えるものであり(1クロックサイクルに2ワードのデータ処理が可能)、従来メモリの倍の転送速度を実現することができる(なお、DDR機能を拡張したQDR(Quad Data Rate)メモリは、独立して動作可能な2つのI/Oポートを持って、クロックサイクルごとに4ワードのデータを扱えるメモリデバイスである)。
CPUが高速化する中で、メモリのバンド幅(速度)がシステムのボトルネックとなっていたが、このようなバンド幅の広いDDRメモリを使用することで、ボトルネックを解消することができ、高速ネットワークシステムを構築することが可能になる。一方、DDRメモリのアクセス時間は、通常のデータアクセスの半分の処理時間となるので、必然的にタイミングマージンは厳しいものとなり、DDRメモリのパフォーマンスを十分に活かすためのメモリアクセス制御が必要となる。
従来のメモリアクセス制御として、供給側メモリおよび格納側メモリのそれぞれのアクセス単位の差を、バッファの書き込みおよび読み出しを制御することによって吸収して、供給側メモリからの任意長のデータを格納側メモリへ高速転送する技術が提案されている(特許文献1)。
特開平10−222460号公報(段落番号〔0014〕〜〔0029〕、第1図)
図10はDDRメモリを使用した従来のメモリアクセス制御装置の構成を示す図である。メモリアクセス制御装置50は、DDRメモリ51、情報RAM52、読み出し制御部53、FiFo54、遅延補正部55、パケット組み立て部56から構成される。
DDRメモリ51は、パケットを格納する。また、読み出し時には、データ(パケットデータ)d1と、データd1に同期するクロックck1とを並走して出力する(読み出しデータとクロックとを並走出力する機能は、DDR機能の特徴の1つである)。
情報RAM52は、DDRメモリ51に格納されているパケットに対して、該当パケットの先頭データが格納されているDDRメモリ51のアドレス(読み出し開始アドレス)を格納する。読み出し制御部53は、読み出し開始アドレスと、パケット長情報(1パケットのLength情報)を受信して、1パケットを読み出すために必要なアドレスを生成し、DDRメモリ51へ送信する。
FiFo54は、書き込み側では、DDRメモリ51から並走出力されたデータd1とクロックck1を受信し、クロックck1を用いて、データd1の書き込み制御を行う。また、読み出し側では、システムクロックck2を用いてデータ(以下、データd2とする)を出力し、さらに、前回出力した(n−1)パケット目の位相と、今回出力するnパケット目の位相との差分情報である位相差情報を生成する。
遅延補正部55は、FiFo54から出力されたデータd2および位相差情報を受信して、クロック乗り換え処理で生じた遅延量(レイテンシ)を補正する。パケット組み立て部56は、遅延補正部55から出力されたデータを受信し、受信データの中からパケットの先頭データを検出する。そして、検出した先頭データからパケット長情報を抽出して読み出し制御部53へ通知し、また、データの整列を行ってパケットを再構築し、後段処理部へ出力する。
ここで、読み出し制御部53の動作としては、情報RAM52に格納されている読み出し開始アドレスが、読み出し制御部53へ送信されると、読み出し開始アドレスからどれだけ読み出しを行うかの読み出し終了アドレスを、遅延補正部55から出力されたパケット情報(実際にDDRメモリ51から読み出された先頭データに設定されているパケット長情報である)により認識する。
読み出し制御部53は、読み出し開始アドレスから1パケット分のアドレス生成を開始して、読み出し終了アドレスの値になるまで順次インクリメントし、インクリメントしたアドレス値をDDRメモリ51へ順次送信し続けて、DDRメモリ51から1パケット分のデータd1を読み出す。
図11は遅延補正部55の構成を示す図である。遅延補正部55は、シフトレジスタ51a、セレクタ51b、タイミング生成部51cから構成される。シフトレジスタ51a内部のラッチ(FF)51a−1〜51a−nは、カスケード接続され、各ラッチの出力端がセレクタ51bの入力端と接続する。また、タイミング生成部51cは、位相差情報と、読み出し制御部53から出力されるパケット読み出し開始信号とにもとづき、選択信号を生成しセレクタ51bへ送信する。
ここで、FiFo54から出力されたデータd2は、シフトレジスタ51aに入力すると、各ラッチによって1クロック毎にシフトされたデータが出力され、それぞれのデータはセレクタ51bに入力される。
セレクタ51bは、シフトレジスタ51aから出力される複数のデータの中から位相差情報(選択信号)にもとづいて、所望タイミングのデータを選択し、遅延調整後のデータとして出力する。なお、セレクタ51bによるデータ選択を切り替えるタイミングは、パケット単位に行うことになるので、タイミング生成部51cでは、位相差情報と、パケット読み出し開始信号との論理をとって選択信号を生成している。
図12〜図14は遅延補正時のタイミングを示す概念図である。パケット間には1クロック以上のスタッフビットが挿入され、スタッフビットの増減を利用して位相調整(遅延調整)を行うこととする。また、図11の構成図において、X段目のラッチ51a−2から出力しているデータを現在選択しているデータとする。
図12に対し、(n−1)パケット目の位相とnパケット目の位相とに位相差がない場合、前の状態に対して遅延量に変化がないために、現在選択されているX段目のラッチ51a−2から出力しているデータをセレクタ51bから継続して出力する。
図13に対し、(n−1)パケット目の位相に対して、nパケット目の位相が1クロック分短くなった場合は、前の状態に対して遅延量が1クロック分短くなることを意味することになるので、セレクタ51bは、現在のX段目のラッチ51a−2からX−1段目のラッチ51a−1に切り替えて、X−1段目のラッチ51a−1から出力しているデータを選択する(1クロック分のスタッフビットが欠損することになるが、パケットそのもののデータ欠損は生じない)。
図14に対し、(n−1)パケット目の位相に対して、nパケット目の位相が1クロック分長くなった場合は、前の状態に対して遅延量が1クロック分長くなることを意味することになるので、セレクタ51bは、現在のX段目のラッチ51a−2からX+1段目のラッチ51a−3に切り替えて、X+1段目のラッチ51a−3から出力しているデータを選択する(1クロック分のスタッフビットが挿入されたことになる)。なお、図示はしていないが、遅延補正部55からは、遅延補正後のパケットデータの他に、該当パケットの先頭データを示すイネーブル信号も生成して出力する。
上記のように、遅延補正部55において、FiFo54出力後のデータd2に対して遅延補正が行われ、パケット組み立て部56では、遅延補正後のパケットデータと、パケットの先頭を示すイネーブル信号を受信することにより、各パケットの先頭データを正確に検出することができ、パケット長情報を先頭データから抽出することが可能になる。
しかし、上記のような従来のメモリアクセス制御装置50の構成では、以下に挙げるような問題点があった。
(1)クロック乗り換え処理で生じる、DDRメモリ51からの読み出しデータの遅延量が不定のため(遅延量が一定でないため)、遅延量を調整するための複雑な機構(すなわち、上記の遅延補正部55)が必要であった。
(2)例えば、読み出し制御部53がパケット長情報を受信する前に、DDRメモリ51からの読み出しが完了してしまうような場合、読み出し制御部53では、パケット長情報を受信しないと、読み出し完了であることを認識できず、DDRメモリ51から次パケットの読み出しを行うことができない。このため、読み出し制御部53において、パケット長情報を受信するまでのブランクが生じてしまうために、データ帯域が低下し、通信速度の低下を引き起こすことになる。
(3)メモリアクセス制御装置50が実装されるプリント基板上の配線デザインにも遅延量は影響するので、正確な遅延量の把握が困難である。
(4)読み出し制御部53は、遅延補正を行う遅延補正部55に依存した構成となっており、独立して処理を行うことができない。
本発明はこのような点に鑑みてなされたものであり、複雑な遅延量補正を不要とし、データ帯域の低下を防止したメモリアクセス制御装置を提供することを目的とする。
記課題を解決するために、メモリへのアクセス制御を行うメモリアクセス制御装置が提供される。メモリアクセス制御装置は、データの読み出し時、前記データと、前記データに同期したクロックとを並走して出力するクロック並走出力機能を持ち、パケットを格納するパケットメモリと、前記パケットの先頭データが格納されている、前記パケットメモリのアドレスである読み出し開始アドレスを格納する情報メモリと、読み出しアドレスを生成して前記パケットメモリから前記データを読み出す読み出し制御部と、前記クロックを用いて、前記パケットメモリから読み出された前記データを書き込み、システムクロックで前記データを読み出してクロック乗り換えを行うクロック乗り換え部と、クロック乗り換え後のデータを受信して、前記パケットの再構築を行うパケット組み立て部とを有する。前記情報メモリは、前記読み出し開始アドレスの格納に加えて、前記パケットの長さを示すパケット長情報も格納し、前記読み出し制御部は、前記読み出し開始アドレスと前記パケット長情報とを受信して、1パケットを読み出すために必要な前記読み出しアドレスを生成して前記パケットメモリから前記データを読み出し、前記パケットメモリは、前記パケットの格納に加えて、前記パケットの先頭データを示す先頭パルス情報も格納し、前記パケット組み立て部は、前記パケットメモリから出力された前記先頭パルス情報から前記先頭データを検出し、前記先頭データのフィールドに設定されているパケット長情報を抽出して、再構築対象パケットのデータ範囲を認識し、前記データ範囲内で前記クロック乗り換え後のデータを整列して前記パケットの再構築を行い、前記読み出しアドレスの生成側である前記情報メモリおよび前記読み出し制御部と、パケットデータの再構築側である前記クロック乗り換え部および前記パケット組み立て部とは、互いに独立して制御する。
パケット長情報を共有しない構成により、読み出し制御側と、読み出し処理側とで、完全に独立して処理を行えるようになった。これによりデータ読み出しのレイテンシ量を考慮する必要が無くなり自由度を増すことが可能になる。
また、読み出し制御において、読み出しパケット長を即座に知ることができるため、次のパケットを即座に読み出すことができ、データ帯域の低下を防ぐことが可能になる。さらに、多種にわたるメモリのタイプにも対応可能となる。
さらに、読み出しアドレス生成の制御側と、読み出しデータの再構築側とで、パケット長情報を共有しないので、互いに独立させることができ、クロック乗り換え制御で発生していた遅延量を補正するための複雑な機構が不要となり、データ帯域の低下も防止することが可能になる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
メモリアクセス制御装置の原理図である。 通信ネットワークの一例を示す図である。 パケット処理装置の全体構成を示す図である。 パケット構築部の構成を示す図である。 AB Write制御部の構成を示す図である。 AB Read制御部の構成を示す図である。 情報RAMの構成を示す図である。 ABメモリの構成を示す図である。 従来メモリとDDRメモリとのデータ転送の違いを示す図である。 DDRメモリを使用した従来のメモリアクセス制御装置の構成を示す図である。 遅延補正部の構成を示す図である。 遅延補正時のタイミングを示す概念図である。 遅延補正時のタイミングを示す概念図である。 遅延補正時のタイミングを示す概念図である。
以下、本発明の実施の形態を図面を参照して説明する。図1はメモリアクセス制御装置の原理図である。メモリアクセス制御装置10は、パケットメモリ11、情報メモリ12、読み出し制御部13、クロック乗り換え部14、パケット組み立て部15から構成され、パケットメモリ11へのアクセス制御を行う装置である。
パケットメモリ11は、パケットを格納するDDRメモリであり、データd1(パケットを構成するパケットデータ)の読み出し時、データd1と、データd1に同期したクロックck1とを並走して出力する。情報メモリ12は、パケットの先頭データが格納されている、パケットメモリ11のアドレスである読み出し開始アドレスを格納する。
読み出し制御部13は、読み出しアドレスを生成してパケットメモリ11からデータd1を読み出す。クロック乗り換え部14は、例えば、FiFoに該当し、書き込み時には、クロックck1を用いて、パケットメモリ11から読み出されたデータd1を記憶領域に書き込み、読み出し時には、システムクロックck2でデータd2を読み出してクロック乗り換えを行う。パケット組み立て部15は、クロック乗り換え後のデータd2を受信して、パケットの再構築を行う。
ここで、パケットメモリ11は、パケットの格納に加えて、パケットの先頭を示す先頭パルス情報も格納する。また、情報メモリ12は、読み出し開始アドレスの格納に加えて、パケットの長さを示すパケット長情報も格納する。
読み出し制御部13は、読み出し開始アドレスとパケット長情報とから、パケットメモリ11に格納されている該当パケットの読み出し終了アドレスを認識する。そして、読み出し開始アドレスから開始して読み出し終了アドレスの値になるまで、アドレス値を順次インクリメントして、インクリメントしたアドレス値を読み出しアドレスとして生成し、パケットメモリ11へ読み出しアドレスを逐次送信し続けて、パケットメモリ11から該当パケット分のデータd1を読み出す。
パケット組み立て部15は、パケットメモリ11から出力された先頭パルス情報から先頭データを検出し、検出した先頭データのフィールドに設定されているパケット長情報を抽出して、再構築対象パケットのデータ範囲を認識する。そして、そのデータ範囲内に含まれるクロック乗り換え後のデータd2を整列して、該当パケットの再構築を行う。
このように、メモリアクセス制御装置10では、パケットメモリ11の読み出しアドレスは、情報メモリ12に格納されている読み出し開始アドレス(パケットの先頭データがパケットメモリ11に格納されているアドレス値)を開始アドレスとし、情報メモリ12に格納されているパケット長情報に対応するデータ数分読み出しを行う(該当パケットに対し、読み出し開始アドレスからどれだけ読み出しを行うか、すなわち該当パケットの読み出し終了アドレスは、パケット長情報から認識できる)。
また、パケットの先頭データには、パケット長情報が設定されるフィールドがあるので、パケット組み立て部15では、パケットメモリ11およびクロック乗り換え部14を介して送信された先頭パルス情報を受信すると、この先頭パルス情報から該当パケットの先頭データを検出し(該当パケットを構成しているデータd2の中から先頭データを検出する)、かつ先頭データ内に設定されているパケット長情報を抽出する。そして、抽出したパケット長情報にもとづいて、その先頭データからどこまでのデータが再構築対象のパケットであるかのデータ範囲を認識して、そのデータ範囲に含まれるデータd2の整列を行って、パケットを再構築し後段処理部へ出力する。
上記のように、メモリアクセス制御装置10では、パケット長情報を情報メモリ12の中にあらかじめ格納しておくことにより、読み出しアドレスのStart/Endを読み出し制御部13内で独自判断して、読み出しアドレスを生成することができる。
また、パケットの先頭を示す先頭パルス情報もパケットメモリ11に格納しておくことにより、パケット組み立て部15において、パケットメモリ11から読み出されてクロック乗り換えされたデータd2のみから、パケット再構築を行うことが可能になる。
このような構成によって、読み出しアドレス生成の制御側(情報メモリ12、読み出し制御部13)と、読み出しデータの再構築側(クロック乗り換え部14、パケット組み立て部15)とを完全に独立させることができる。したがって、従来のような、クロック乗り換え制御で発生していた遅延量を補正するための複雑な機構が不要となり、さらに、データ帯域の低下も防止することができ、高品質なメモリアクセスを行うことが可能になる。
なお、パケットメモリ11に格納される先頭パルス情報や、情報メモリ12に格納されるパケット長情報は、上位に位置するパケット解析部によって処理対象のパケットが解析されて、パケット解析部からパケットメモリ11および情報メモリ12に対して記憶設定されるものである。
次にメモリアクセス制御装置10を適用した通信ネットワークについて説明する。図2は通信ネットワークの一例を示す図である。通信ネットワーク100は、基幹網としてSONET(Synchronous Optical Network)網101を有し、さらに、POS(Packet Over SONET)システム102、3rdパーティ(プロバイダやルータなどの集まり)103、クライアント端末104を有している。SONET網101と3rdパーティ103との間に、POSシステム102が配置され、3rdパーティ103の下流にクライアント端末104が配置される。
POSシステム102は、パケット伝送制御を行うブロックであって、メモリアクセス制御装置10の機能が含まれる。POSシステム102において、帯域制御やパケット組み立てなどを行う際に必要なメモリアクセス制御として、メモリアクセス制御装置10の機能が適用されることで、大容量・高速なメモリアクセス制御を実行することが可能になる。
次にメモリアクセス制御装置10を応用したパケット処理装置の構成および動作について説明する。図3はパケット処理装置の全体構成を示す図である。パケット処理装置1は、パケット構築部20、後段処理部30、組み立てバッファ部40から構成される。
パケット構築部20は、断片化された複数チャネルが混在して入力されるパケットをチャネル毎に組み立てていく機能を持ち、メモリアクセス制御装置10の情報メモリ12、読み出し制御部13、クロック乗り換え部14、パケット組み立て部15の機能を実現する。
後段処理部30は、チャネル毎に組み立てられたパケットに対して、識別処理や帯域制御(Policer/Shaperなど)を行って出力する機能を持つ。組み立てバッファ部40は、断片化されたパケットデータの並べ替えを行うために一旦格納するバッファ機能を有し、AB(Alignment Buffer)メモリ40aを有している。ABメモリ40aは、メモリアクセス制御装置10のパケットメモリ11に対応する。なお、ABメモリ40aとしては、QDRタイプ(QDR-II)のメモリを使用している。
図4はパケット構築部20の構成を示す図である。パケット構築部20は、AB Write制御部21、AB Read制御部22、容量監視部23、メモリインタフェース部24および情報RAM25から構成される。
まず、AB Write制御部21について説明する。図5はAB Write制御部21の構成を示す図である。AB Write制御部21は、受信パケット判定部21a、加算器21b、Read Add保持メモリ21c、インクリメント部21dから構成される。
入力されたパケットは、受信パケット判定部21aにおいてエラーパケットか否かの検出を行った後、正常パケット形態であれば、AB WENを有効にして、書き込みデータ(AB WDT)と書き込みアドレス(AB WAD)と共に、メモリインタフェース部24に書き込み要求を行う。
AB WADについては、Read Add保持メモリ21cに格納されている書き込みStart Addressをインクリメント(+1)しながら生成する。また、1パケット書き込み完了時(End Packet信号がActiveになる)には、Read Add保持メモリ21cを更新するが、書き込み完了したパケットの長さ(Length)を現在のStart Addressに足した値を新たに、Read Add保持メモリ21cにチャネル毎に書き込む。
さらに、容量監視部23からのABメモリ40aのオーバーフローを示す信号(AB OVF)がActiveになった場合は、現在書き込んでいるパケットを無効とし、次に新たなパケットの先頭(SOP)が入力されるまではAB WENを有効にしない。
一方、1パケット書き込み完了時にはEnd Packetと一緒に、情報RAM25へ書き込みを行うためのデータ(Read Start AddrとPacket Length)をAB Read制御部22に出力する。
次にAB Read制御部22について説明する。図6はAB Read制御部22の構成を示す図である。AB Read制御部22は、情報RAM制御部22a、AB Read信号生成部22b、出力データ生成部22cから構成される。
情報RAM制御部22aは、AB Write制御部21から送信されたEnd Packet信号をトリガに、情報RAM25の書き込みアドレス(INFO WAD)を生成(更新)し、そのアドレスに対してRead Start AddrおよびPacket Lengthから書き込みデータ(INFO WDT)を生成し、書き込みEnable信号(INFO WEN)と共に情報RAM25に書き込みを行う。
また、情報RAM読み出しアドレス(INFO RDT)および読み出しEnable信号(INFO REN)の生成もWriteとReadの位相差監視および、情報RAM25から読み出されたPacket Length情報をもとに生成する。
一方、AB Read信号生成部22bでは、情報RAM25から読み出されたRead Start AddrからABメモリ用Read Address(AB RAD)と、情報RAM制御部22aからのRead Timing信号をもとにABメモリ用Read Enable(AB REN)を生成し、メモリインタフェース部24へ出力する。
また、出力データ生成部22cにおいては、ABメモリ40aより読み出されてきたデータ(AB RDT)のFrame Pulseビットによりパケットの先頭を見つけ、後段へのデータ出力のための、SOP(Start of Packet)、EOP(End of Packet)、ENB(Data Enable)を生成する。なお、情報RAM25は、2Port RAMを使用する。port AをWrite用にport BをRead用に使用している。
次に図4に戻って容量監視部23について説明する。容量監視部23は、ABメモリ40aのWriteおよびRead Address値を監視し、その差分によりABメモリ40aのオーバーフロー/アンダーフローの検出を行うブロックである。AB Write制御部21から出力されるAB WADと、AB Read制御部22から出力されるAB RADからその検出を行う。
また、メモリインタフェース部24においては、使用するメモリタイプによっても処理は異なるが、QDR-IIの2バーストメモリを使用しているため、以下の機能を有する。
書き込み側においては、DDR出力であるため、Write用クロック(QDR WCLK)とWrite Address/Data/WEN(QDR AD/WDT/WEN)の位相差にマージンを持たせるため、QDR AD/WDT/WENを遅延させる機能を持つ。
また、読み出し側においては、ABメモリ40aから読み出されたデータ(QDR RDT)は、並走して入力されるエコークロック(QDR CQ)から、内部のSystemクロック(Sys CLK)に乗せ換えが必要である。そのためのFiFoメモリ(8段構成)を使用している。
図7は情報RAM25の構成を示す図である。2Port RAMにて構成する。Port AはWrite専用、Port BはRead専用とする。ビット構成は、パリティビットフィールド、Lengthフィールド、Start Addressフィールドに分かれ、それぞれシステムが扱うパケットの最大長およびABメモリ40aの容量によってビット幅が決定される。
また、アドレス幅は、ABメモリ40aに蓄積されるパケット数に関係しており、システムで扱う最短パケットが最大帯域で入力された場合に、ABメモリ40aに最大数のパケットが蓄積される状態を想定して決定される。
図8はABメモリ40aの構成を示す図である。QDR-II(2バースト)の36ビットデータ幅のメモリにて構成する。ビット構成は、Data Field 1(8*2 bits)、Parity Bit 1(1bit)、Data Field 2(8*2 bits)、Parity Bit 2(1bit)、Frame Pulseから成り、Data Field 1、2は、それぞれ2バイトのデータ領域を持ち、合計1アドレスに対して4バイトのデータを格納する。Parity Bit 1、Parity Bit 2はそれぞれData Field 1、Data Field 2、Frame Pulseの奇数パリティを保持する。またアドレス幅は、使用できるメモリデバイスにもよるが、システム仕様の観点から性能劣化が起こらない十分な容量を選択する。
以上説明したように、メモリアクセス制御装置10によれば、パケット長情報を読み出しアドレス生成の制御側と、読み出しデータの再構築側とで共有しない構成にしたので、読み出しアドレス生成制御と、読み出しデータ再構築制御とを独立して行うことができ、これによりパケットメモリ11からのデータ読み出しの遅延量を考慮する必要が無くなり、自由度を向上させることが可能になる。
また、読み出し制御部13において、読み出しパケット長を即座に知ることができるため、次のパケットをパケットメモリ11から即座に読み出すことができ、データ帯域の低下を防ぐことが可能になる。
なお、上記で説明したメモリアクセス制御装置10の機能および動作は、DDRメモリを対象に説明したが、DDRメモリに限らず、多種にわたるメモリタイプに対応することが可能である。
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
符号の説明
10 メモリアクセス制御装置
11 パケットメモリ
12 情報メモリ
13 読み出し制御部
14 クロック乗り換え部
15 パケット組み立て部
d1 パケットメモリ11からの読み出しデータ
d2 クロック乗り換え後のデータ
ck1 クロック(並走クロック)
ck2 システムクロック

Claims (2)

  1. メモリへのアクセス制御を行うメモリアクセス制御装置において、
    データの読み出し時、前記データと、前記データに同期したクロックとを並走して出力するクロック並走出力機能を持ち、パケットを格納するパケットメモリと、
    前記パケットの先頭データが格納されている、前記パケットメモリのアドレスである読み出し開始アドレスを格納する情報メモリと、
    読み出しアドレスを生成して前記パケットメモリから前記データを読み出す読み出し制御部と、
    前記クロックを用いて、前記パケットメモリから読み出された前記データを書き込み、システムクロックで前記データを読み出してクロック乗り換えを行うクロック乗り換え部と、
    クロック乗り換え後のデータを受信して、前記パケットの再構築を行うパケット組み立て部と、
    を有し、
    前記情報メモリは、前記読み出し開始アドレスの格納に加えて、前記パケットの長さを示すパケット長情報も格納し、
    前記読み出し制御部は、前記読み出し開始アドレスと前記パケット長情報とを受信して、1パケットを読み出すために必要な前記読み出しアドレスを生成して前記パケットメモリから前記データを読み出
    前記パケットメモリは、前記パケットの格納に加えて、前記パケットの先頭データを示す先頭パルス情報も格納し、前記パケット組み立て部は、前記パケットメモリから出力された前記先頭パルス情報から前記先頭データを検出し、前記先頭データのフィールドに設定されているパケット長情報を抽出して、再構築対象パケットのデータ範囲を認識し、前記データ範囲内で前記クロック乗り換え後のデータを整列して前記パケットの再構築を行い、
    前記読み出しアドレスの生成側である前記情報メモリおよび前記読み出し制御部と、パケットデータの再構築側である前記クロック乗り換え部および前記パケット組み立て部とは、互いに独立して制御する、
    ことを特徴とするメモリアクセス制御装置。
  2. メモリへのアクセス制御を行うメモリアクセス制御方法において、
    データの読み出し時、前記データと、前記データに同期したクロックとを並走して出力するクロック並走出力機能を持つパケットメモリによって、パケットを格納し、
    前記パケットの先頭データが格納されている、前記パケットメモリのアドレスである読み出し開始アドレスを情報メモリによって格納し、
    読み出しアドレスを生成して前記パケットメモリから前記データを読み出す読み出し制御を行い、前記クロックを用いて、前記パケットメモリから読み出された前記データを書き込み、システムクロックで前記データを読み出してクロック乗り換えを行い、クロック乗り換え後のデータを受信して、前記パケットの再構築を行い、
    前記情報メモリは、前記読み出し開始アドレスの格納に加えて、前記パケットの長さを示すパケット長情報も格納し、
    前記読み出し開始アドレスと前記パケット長情報とを受信して、1パケットを読み出すために必要な前記読み出しアドレスを生成して前記パケットメモリから前記データを読み出し、
    前記パケットメモリは、前記パケットの格納に加えて、前記パケットの先頭データを示す先頭パルス情報も格納し、
    前記パケットメモリから出力された前記先頭パルス情報から前記先頭データを検出し、前記先頭データのフィールドに設定されているパケット長情報を抽出して、再構築対象パケットのデータ範囲を認識し、前記データ範囲内で前記クロック乗り換え後のデータを整列して前記パケットの再構築を行い、
    前記読み出しアドレスの生成側である前記情報メモリおよび前記読み出し制御と、パケットデータの再構築側である前記クロック乗り換えおよび前記パケットの再構築とは、互いに独立して制御する、
    ことを特徴とするメモリアクセス制御方法。
JP2009520251A 2007-06-27 2007-06-27 メモリアクセス制御装置 Active JP4941557B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/062918 WO2009001450A1 (ja) 2007-06-27 2007-06-27 メモリアクセス制御装置

Publications (2)

Publication Number Publication Date
JPWO2009001450A1 JPWO2009001450A1 (ja) 2010-08-26
JP4941557B2 true JP4941557B2 (ja) 2012-05-30

Family

ID=40185284

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009520251A Active JP4941557B2 (ja) 2007-06-27 2007-06-27 メモリアクセス制御装置

Country Status (3)

Country Link
US (1) US8312208B2 (ja)
JP (1) JP4941557B2 (ja)
WO (1) WO2009001450A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10074409B2 (en) * 2017-01-31 2018-09-11 Intel Corporation Configurable storage blocks having simple first-in first-out enabling circuitry
WO2022181929A1 (ko) * 2021-02-26 2022-09-01 (주)씨앤테크 기기간 연결을 지원하는 사물인터넷 통신 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02287739A (ja) * 1989-04-28 1990-11-27 Moji Zukei Center:Kk メモリアクセス方法
US6073180A (en) 1996-03-07 2000-06-06 Nippon Telegraph And Telephone Corporation High-speed batch file transfer method and apparatus, and storage medium in which a program for executing the transfer is stored
JP3191701B2 (ja) 1996-10-29 2001-07-23 日本電気株式会社 伝送フレームフォーマット変換回路
JP3190847B2 (ja) 1997-02-12 2001-07-23 甲府日本電気株式会社 データ転送制御装置
JPH11249978A (ja) * 1998-03-04 1999-09-17 Nippon Telegr & Teleph Corp <Ntt> データ転送方法および装置
WO2001058066A1 (fr) * 2000-02-01 2001-08-09 Fujitsu Limited Dispositif de transfert d'information
JP3708902B2 (ja) * 2002-05-13 2005-10-19 株式会社ルネサステクノロジ 半導体装置
JP4154213B2 (ja) * 2002-11-01 2008-09-24 富士通株式会社 パケット処理装置
JP4037811B2 (ja) * 2003-09-10 2008-01-23 富士通株式会社 Sonet/sdh装置の監視制御通信方式
JP2005117206A (ja) * 2003-10-06 2005-04-28 Hitachi Ltd ネットワークプロセッサアクセラレータ

Also Published As

Publication number Publication date
WO2009001450A1 (ja) 2008-12-31
US20100088479A1 (en) 2010-04-08
US8312208B2 (en) 2012-11-13
JPWO2009001450A1 (ja) 2010-08-26

Similar Documents

Publication Publication Date Title
US7093061B2 (en) FIFO module, deskew circuit and rate matching circuit having the same
JP4890613B2 (ja) パケットスイッチ装置
JP5568089B2 (ja) 複数のシリアルレシーバ用の自動データアライナのための方法、装置およびシステム
US20100257293A1 (en) Route Lookup System, Ternary Content Addressable Memory, and Network Processor
EP2846470A1 (en) A method of mobile terminal internal communications
JP4941557B2 (ja) メモリアクセス制御装置
US20080301537A1 (en) Packet transmission device and packet transmission method
US6778526B1 (en) High speed access bus interface and protocol
KR100452640B1 (ko) 데이터 패킷 수신 장치 및 방법
US7496115B2 (en) Apparatus for multiplexing Gigabit Ethernet frame and apparatus for demultiplexing 10-Gigabit Ethernet frame
US7380084B2 (en) Dynamic detection of block boundaries on memory reads
US7424653B2 (en) System and method for error capture and logging in computer systems
US7480357B2 (en) System and method for effectuating the transfer of data blocks across a clock boundary
US20040236982A1 (en) System and method for in-order queue draining
Lu et al. Design and implementation of multi-channel high speed HDLC data processor
TW202306365A (zh) 用於互連協定的訊框接收的資料處理的方法以及儲存裝置
JP2008136081A (ja) データ転送装置およびデータ転送方法
JP4593677B2 (ja) クロック乗せ換え装置及びクロック乗せ換え方法
JP5459308B2 (ja) データ転送装置及びデータ転送装置の制御方法
US20100054280A1 (en) Packet based data cell delineation
JP4673697B2 (ja) デジタル遅延バッファ及びこれに関連する方法
EP1972126B1 (en) A method for high speed framing and a device having framing capabilities
JP4401910B2 (ja) データ通信装置及びデータ通信方法
CN114090494B (zh) 数据传输方法、装置、设备和存储介质
US11528164B2 (en) Method for operating a network subscriber and network subscriber

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120131

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120213

R150 Certificate of patent or registration of utility model

Ref document number: 4941557

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150309

Year of fee payment: 3