(57)【要約】【課題】大容量で、低価の外部ＳＲＡＭを通信用データバッファに提供するための双方向データ通信用単一ポートメモリ制御装置に関する。【解決手段】本発明の双方向データ通信用単一ポートメモリ制御装置の構成は、外部同期方式の単一ポートメモリと、送信パケットフレームの書き込みデータと書き込みイネーブル及び読み取りイネーブルとを利用した読み取り信号及び書き込み信号を発生する送信制御部と、受信パケットフレームの書き込みデータと書き込みイネーブル及び読み取りイネーブルとを利用した読み取り信号及び書き込み信号を発生する受信制御部と、上記送信制御部及び受信制御部から引き込まれる読み取り／書き込み制御信号に応じて上記メモリへの読み取り／書き込みのアービトレーションを行うアービトレーション制御部と、上記アービトレーション制御部の動作モードを選択するモード選択部とを含む。【選択図】  図３
2007157162.tif 000002
【特許請求の範囲】
【請求項１】
単一ポートから成るメモリの制御装置において、
送信端から発生された送信パケットフレームの書き込みデータと、書き込みイネーブル信号及び読み取りイネーブル信号とを利用して送信パケットフレームのための読み取り信号及び書き込み信号を発生する送信制御部と、
受信端から発生された受信パケットフレームの書き込みデータと、書き込みイネーブル信号及び読み取りイネーブル信号とを利用して受信パケットフレームのための読み取り信号及び書き込み信号を発生する受信制御部と、
前記送信制御部と受信制御部から引き込まれる送信／受信パケットフレームに対するメモリの読み取り／書き込みを動作モードに応じてアービトレーションを行うアービトレーション制御部と、
前記アービトレーション制御部に動作モード信号を出力するモード選択部と、
を含むことを特徴とする双方向データ通信用単一ポートメモリ制御装置。
【請求項２】
前記アービトレーション制御部は、読み取り及び書き込み信号に応じて読み取り状態と、書き込み状態と、アイドル状態とがピングポング（ｐｉｎｇ−ｐｏｎｇ）方式に遷移され、読み取り／書き込みが独立的に動作することを特徴とする、請求項１に記載の双方向データ通信用単一ポートメモリ制御装置。
【請求項３】
前記受信制御部は、受信パケットフレームのクラスを分類するパケット分類部と、
受信端において書き込みイネーブル信号発生の際書き込みコマンドを出力し、アービトレーション制御部に書き込み制御信号を出力する書き込み制御部と、
受信端において読み取りイネーブル信号発生の際読み取りコマンドを出力し、アービトレーション制御部に読み取り制御信号を出力する読み取り制御部と、
メモリに記録されたフレーム数をカウントして保存する少なくとも一つ以上のフレームカウントレジスタと、
現在メモリに記録されたフレームの大きさ情報を各キュー別に保存する少なくとも一つ以上のフレームサイズＲＡＭと、
受信端に現在読み取るフレームの大きさをリアルタイムに伝達するための信号を保存する少なくとも一つ以上の長さレジスタと、
メモリに割り当てられた各受信用キューの開始住所を保存する開始住所レジスタと、
メモリに割り当てられた各受信用キューの終了住所を保存する終了住所レジスタと、
を含むことを特徴とする、請求項１に記載の双方向データ通信用単一ポートメモリ制御装置。
【請求項４】
前記送信制御部は、送信パケットフレームのクラスを分類するパケット分類部と、
送信端において書き込みイネーブル信号発生の際書き込みコマンドを出力し、アービトレーション制御部に書き込み制御信号を出力する書き込み制御部と、
送信端において読み取りイネーブル信号発生の際読み取りコマンドを出力し、アービトレーション制御部に読み取り制御信号を出力する読み取り制御部と、
フレーム数をカウントして保存する少なくとも一つ以上のフレームカウントレジスタと、
現在メモリに書き込みされたフレームの大きさ情報を保存する少なくとも一つ以上のフレームサイズＲＡＭと、
送信端に現在読み取るフレームの大きさをリアルタイムに伝達するための信号を保存する少なくとも一つ以上の長さレジスタと、
前記メモリに割り当てられた各送信キューの開始住所を保存する開始住所レジスタと、
前記メモリに割り当てられた各送信キューの終了住所を保存する終了住所レジスタと、
を含むことを特徴とする、請求項１に記載の双方向データ通信用単一ポートメモリ制御装置。
【請求項５】
前記アービトレーション制御部の動作モードは、何の動作を行わない無動作状態モードと、受信パケットフレームの読み取り／書き込みを処理する受信モードと、送信パケットフレームの読み取り／書き込みを処理する送信モード及び受信フレームを送信フレームにループバックさせるループバックモードとを含み、前記無動作状態モード、受信モード、送信モード、ループバックモードが順次に繰り返して行われることを特徴とする、請求項１に記載の双方向データ通信用単一ポートメモリ制御装置。
【請求項６】
モード選択部のモードに応じてアービトレーション制御部にモード信号を出力する段階と、
モード信号が受信モードである場合に受信パケットフレームを受信用キューにアクセスする段階と、
モード信号が送信モードである場合に送信パケットフレームを送信用キューにアクセスする段階とを行うことを特徴とする、双方向データ通信用単一ポートメモリ制御方法。
【請求項７】
前記アービトレーション制御部にモード信号を出力する前に、無動作状態モード、受信モード、送信モード、ループバックモードとを定義する段階を予め行うことを特徴とする、請求項６に記載の双方向データ通信用単一ポートメモリ制御方法。
【請求項８】
前記アービトレーション制御部にモード信号を出力する段階は、無動作状態モード、受信モード、送信モード、ループバックモード信号は、順次に発生する段階であることを特徴とする、請求項７に記載の双方向データ通信用単一ポートメモリ制御方法。
【請求項９】
前記受信パケットフレームを受信用キューにアクセスする段階において、
受信端の書き込みイネーブル信号に応じて書き込み制御部はスケジューラに予め定義されたパケットフレームの種類に該当するキューに書き込みコマンドを伝達することを特徴とする、請求項６に記載の双方向データ通信用単一ポートメモリ制御方法。
【請求項１０】
前記受信パケットフレームを受信用キューにアクセスする段階において、
受信端の読み取りイネーブル信号に応じてスケジューラから読み取るパケットのフレーム情報を獲得し、該当するキューに読み取りコマンドを伝達することを特徴とする、請求項６に記載の双方向データ通信用単一ポートメモリ制御方法。
【請求項１１】
前記送信パケットフレームを送信用キューにアクセスする段階において、
送信端の書き込みイネーブル信号に応じてスケジューラで定義されたパケットフレームの種類に該当するキューに書き込みコマンドを伝達することを特徴とする、請求項６に記載の双方向データ通信用単一ポートメモリ制御方法。
【請求項１２】
前記送信パケットフレームを送信用キューにアクセスする段階において、
送信端の読み取りイネーブル信号に応じてスケジューラから読み取るパケットのフレーム情報を獲得し、該当するキューに読み取りコマンドを伝達することを特徴とする、請求項６に記載の双方向データ通信用単一ポートメモリ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ通信用メモリに関するもので、より詳しくは双方向データ通信用単一ポートメモリ制御装置及びその制御方法に関する。
【背景技術】
【０００２】
一般的にデータ通信用バッファリング装置は先入選出（Ｆｉｒｓｔ Ｉｎ Ｆｉｒｓｔ Ｏｕｔ、ＦＩＦＯ）メモリ構造を利用している。これは通信用素子内では非定型的なデータが続けて入力され、逆に通信素子外部には定型化されたデータを出力しなければならないためである。このようなＦＩＦＯメモリを実現するために、既存には２つの単一ポート（Ｓｉｎｇｌｅ Ｐｏｒｔ）ＳＲＡＭ（Ｓｔａｔｉｃ Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）を並列連結する方式を利用していた。即ち、一つのＳＲＡＭでは読み取り及び書き込み動作を同時に行うことができないため、一つのＳＲＡＭで継続的にデータを記録し、他のＳＲＡＭでデータを出力する方式である。このような方式は最も一般的で簡単に実現可能であるという理由から多く利用されている。しかし、２つのメモリを利用しなければならないし、送信速度による適応部などの制御部を実現するための回路の大きさが大きくなる問題点があった。
【０００３】
従来技術を図面を参照して詳しく説明する。
【０００４】
図１は従来技術による通信用受信装置に関するブロック図である。特許文献１に開示された通信用受信装置は、図１に示すように、入力クロック（ＣＬＫ１）より位相の早いクロック（ＣＬＫ２）を生成するためのクロック発生部１と、入力されたクロックから住所を制御するための信号を発生する住所制御部２と、住所制御部２の制御信号に応じて住所を発生する住所発生部３と、住所発生部３から発生した住所に応じて入力データ（Ｄｉｎ）を保存したり、出力データ（Ｄｏｕｔ）として出力させるＲＡＭ４とで構成される。上記ＲＡＭ４は従来に２つのメモリを並列連結して実現していたＦＩＦＯメモリ構造を２ポートの単一メモリで構成したものである。
【０００５】
上記従来技術は、２ポートのメモリを使用するため、ＡＳＩＣやＦＰＧＡなどに内部メモリを内蔵する際に使用可能であるが、単一ポート外部メモリを使用せざるを得ない装置に適用させる場合は困難である。また図１の住所発生部３はリセット信号にリセットされ、読み取り増加信号（Ｒｅａｄ_Ｉｎｃ）に応じて読み取り住所が１ずつ増加し、書き込み増加信号（Ｗｒｉｔｅ_Ｉｎｃ）に応じて書き込み住所が１ずつ増加され、これを選択信号（Ｒｅａｄ_Ｗｒｉｔｅ）に応じてＲＡＭに選択的に住所を発生するものである。
【０００６】
図２は従来技術によるデータ通信用データバッファリング装置に関するブロック図である。特許文献２に開示されたデータ通信用データバッファリング装置は図２に示すように、入力される送受信データを一時保存及びそのデータを選択して出力する第１マルチプレクサ２１と、第１マルチプレクサ２１によって選択された送信及び受信データを一時保存するメモリ３０と、メモリ３０に入力される送信及び受信データを保存するための送信バッファ住所と受信バッファ住所を発生する住所生成器１３と、その発生された送信バッファ住所と受信バッファ住所のうち一つを選択して出力する第２マルチプレクサ２２と、メモリ３０の読み取り信号及び書き込み信号を発生するメモリの読み取り信号及び書き込み信号発生器１４と、メモリ３０で発生された送受信データを送受信するために一時保存する送受信用出力レジスタ４１、４２とで構成される。
【０００７】
上記メモリ３０は二重バッファ構造を有する送信及び受信バッファに設計し送受信用データの一時保存が可能になるようにした。
【０００８】
上記従来技術もやはり必ずしも２ポートメモリを使用しなければならないので、単一ポート外部メモリに対する適用は容易ではなく、ＡＳＩＣやＦＰＧＡなどに内部メモリを内蔵する際に使用可能な技術である。
【０００９】
そして一つのメモリに２つの送信バッファ及び２つの受信バッファを構成したが、送信及び受信バッファの住所がクロック及びＣＰＵからの制御信号に応じて１ずつ自動的に増加する構造を有しているためランダムな送信及び受信バッファに対する制御は行うことができない。
【００１０】
また二重バッファ構造により、受信バッファ０が一杯になると受信バッファ１に書き込み動作を行うことができ、読み取り動作は書き込みが完了した受信バッファに対して行うことができ、この場合に受信バッファ０を先に読み取る。
【００１１】
上記従来技術は送信端及び受信端に各々２つずつ合計４つのラムを使用することによりチップ製作時にラムの面積が大きくなりコストアップさせる問題点があり、ＲＡＭが入力データポート（Ｄｉｎ）と出力データポート（Ｄｏｕｔ）に分離されなければならないため、２ポートを物理的に支援できなければならないので低価で供給し難いという問題点がある。
【特許文献１】大韓民国特許登録番号第１０−０３５３８１６号
【特許文献２】大韓民国特許登録番号第１０−０１８１４８５号
【発明の開示】
【発明が解決しようとする課題】
【００１２】
従って、本発明はこのような従来の問題点を克服し、大容量で低価の外部ＳＲＡＭを通信用データバッファに提供するために送信及び受信データと、送信及び受信制御信号のアービトレーションを行う双方向データ通信用単一ポートメモリ制御装置及びその制御方法を提供することである。
【課題を解決するための手段】
【００１３】
かかる目的を達成するための本発明による双方向データ通信用単一ポートメモリ制御装置は、送信パケットフレームの書き込みデータと、書き込みイネーブル信号及び読み取りイネーブル信号とを利用して送信データに対する読み取り信号及び書き込み信号を発生する送信制御部と、受信パケットフレームの書き込みデータと、書き込みイネーブル信号及び読み取りイネーブル信号とを利用した受信データに対する読み取り信号及び書き込み信号を発生する受信制御部と、動作モードに応じて上記送信制御部と受信制御部の読み取り／書き込み信号による単一ポートメモリへの読み取り／書き込み動作順次のアービトレーションを行うアービトレーション制御部と、上記アービトレーション制御部の動作モードを選択するモード選択部とで形成されることを特徴とする。
【００１４】
上記アービトレーション制御部は、読み取り及び書き込み制御信号に応じて動作モードがピングポング（ｐｉｎｇ−ｐｏｎｇ）方式で互いに独立的に動作することを特徴とする。
【００１５】
上記受信制御部は、受信パケットフレームのクラスを分類するパケット分類部と、書き込みイネーブル信号発生の際書き込みコマンドを出力し、アービトレーション制御部に書き込み制御信号を出力する書き込み制御部と、読み取りイネーブル信号発生の際読み取りコマンドを出力し、アービトレーション制御部に読み取り制御信号を出力する読み取り制御部と、フレーム数をカウントして保存する少なくとも一つ以上のフレームカウントレジスタと、現在メモリに記録するフレームの大きさ情報を保存する少なくとも一つ以上のフレームサイズＲＡＭと、上記読み取り制御部において読み取りデータの順次を制御するスケジューラと、現在読み取るフレームの大きさを上記スケジューラにリアルタイムに伝達するための信号を保存する少なくとも一つ以上の長さレジスタと、上記メモリの各キューの開始住所を保存する開始住所レジスタと、上記メモリの各キューの終了住所を保存する終了住所レジスタとを含む。
【００１６】
上記送信制御部は、送信パケットフレームのクラスを分類するパケット分類部と、書き込みイネーブル信号発生の際書き込みコマンドを出力し、アービトレーション制御部に書き込み制御信号を出力する書き込み制御部と、読み取りイネーブル信号発生の際読み取りコマンドを出力し、アービトレーション制御部に読み取り制御信号を出力する読み取り制御部と、メモリの各キュー別に保存するフレーム数をカウントして保存する少なくとも一つ以上のフレームカウントレジスタと、現在メモリの各キュー別に記録されたフレームの大きさ情報を保存する少なくとも一つ以上のフレームサイズＲＡＭと、上記読み取り制御部によって読み取るデータの順次を制御するスケジューラと、現在読み取るフレームの大きさを上記スケジューラにリアルタイムに伝達するための信号を保存する少なくとも一つ以上の長さレジスタと、メモリの各キューの開始住所を保存する開始住所レジスタと、メモリの各キューの終了住所を保存する終了住所レジスタとを含む。
【００１７】
上記開始住所レジスタと終了住所レジスタは個別キューの大きさに合わせてＣＰＵによってプログラムされる。
【００１８】
上記モード選択部は、メモリからの読み取り／書き込み動作を行わない無動作状態モードと、受信パケットフレームに対する読み取り／書き込みを行う受信モードと、送信パケットフレームに対する読み取り／書き込みを行う送信モードと、ループバック入力信号によって受信フレームを送信フレームにループバックさせるために読み取り／書き込みを行うループバックモードの信号を順次に発生させることを特徴とする。
【００１９】
さらに、上記の目的を達成するための本発明による双方向データ通信用単一ポートメモリ制御方法は、モード選択部のモードに応じてアービトレーション制御部にモード信号を出力する段階と、モード信号が受信モードである場合に受信パケットフレームをメモリの受信用キューにアクセスする段階と、モード信号が送信モードである場合に送信パケットフレームをメモリの送信用キューにアクセスする段階とを行う。
【００２０】
上記アービトレーション制御部にモード信号を出力する前に、無動作状態モード、受信モード、送信モード、ループバックモードとを定義する段階を予め行い、上記無動作状態モード、受信モード、送信モード、ループバックモード信号は、順次に発生する。
【００２１】
上記受信パケットフレームを受信用キューにアクセスする段階において、書き込みイネーブル信号に応じて書き込み制御部はスケジューラに予め定義されたパケットフレームの種類に該当するキューに書き込みコマンドを伝達することを特徴とする。
【００２２】
上記受信パケットフレームを受信用キューにアクセスする段階において、読み取りイネーブル信号に応じてスケジューラから読み取るパケットのフレーム情報を獲得し、該当するキューに読み取りコマンドを伝達することを特徴とする。
【００２３】
上記送信パケットフレームを送信用キューにアクセスする段階において、書き込みイネーブル信号に応じて書き込み制御部はスケジューラに予め定義されたパケットフレームの種類に該当するキューに書き込みコマンドを伝達することを特徴とする。
【００２４】
上記送信パケットフレームを送信用キューにアクセスする段階において、読み取りイネーブル信号に応じてスケジューラから読み取るパケットのフレーム情報を獲得し、該当するキューに読み取りコマンドを伝達することを特徴とする。
【発明の効果】
【００２５】
本発明によれば、一つの外部同期方式の単一ポートＲＡＭで構成されたメモリから送／受信データを区分して読み取り／書き込みが可能であるので、データのバッファリングに必要なＲＡＭの数を減らすことができ、これによりコスト節減が可能で、かつ大容量のメモリまで提供することが可能である。
【００２６】
さらに一つの外部同期方式の単一ポートＲＡＭで構成されたメモリからデータのクラスキュー別に送信及び受信が可能であるので、データのバッファリングだけでなく、ＣｏＳ（Ｃｌａｓｓ ｏｆ  Ｓｅｒｖｉｃｅ）まで提供することが可能である。
【発明を実施するための最良の形態】
【００２７】
以下、添付された図面を参照して、本発明の好ましき実施例をより詳しく説明する。
【００２８】
図３は本発明の好ましき実施例による双方向データ通信用単一ポートメモリ制御装置に関するブロック図である。
【００２９】
双方向データ通信用単一ポートメモリ制御装置は、ＦＰＧＡまたはＡＳＩＣの内部または外部にＳＳＰＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ Ｓｉｎｇｌｅ Ｐｏｒｔ ＲＡＭ）を利用して実現する。特に送信端及び受信端から入力される書き込みイネーブル信号（Ｗｒｉｔｅ_ｅｎ）と、書き込みデータ（Ｗｒｉｔｅ_Ｄａｔａ）と、読み取りイネーブル信号（Ｒｅａｄ_ｅｎ）とを介してアービトレーション制御部のアービトレーションによって書き込み制御信号及び読み取り制御信号を単一ポートメモリに順次に出力する。上記の基本的な概念に関する構成を図３を参照して説明すると次の通りである。
【００３０】
本発明による双方向データ通信用単一ポートメモリ制御装置は、受信制御部１１０と、送信制御部１２０と、アービトレーション制御部１０３と、モード選択部１０４と、メモリ２００とを含む。
【００３１】
上記受信制御部１１０は受信パケットを処理するブロックであり、送信制御部１２０は送信パケットを処理するためのブロックであり、アービトレーション制御部１０３は上記受信制御部１１０から引き込まれるパケットをメモリ２００の受信用キューに伝送し、送信制御部１２０から引き込まれるパケットをメモリ２００の送信用キューに伝送するためのブロックであり、モード選択部１０４は上記アービトレーション制御部１０３の動作モード、即ち、送信モードまたは受信モードなどの制御信号を出力するブロックであり、メモリ２００は受信制御部１１０と送信制御部１２０から引き込まれるパケットフレームを当該住所（アドレス）に保存するために単一ポート形態で提供されるメモリであって、例えば、単一ポートＳＲＡＭである。
【００３２】
さらに、基準クロック（１２５ＭＨｚ）を２分周クロックに生成して提供する２分周器１０６と、４分周クロックに生成して提供する４分周器１０５とをさらに含み、上記２分周器１０６と４分周器１０５を通ったクロックはモード選択部１０４に提供され４つの動作モード制御信号を出力する。また４分周器１０５を通ったクロックは受信制御部１１０及び送信制御部１２０に提供され、４分周クロックのタイミングを提供するための基準クロックとして使用される。
【００３３】
図４は図３に示された双方向データ通信用単一メモリ制御装置の動作タイミング図である。図４を参照すると、アドレスの上昇エッジクロックにおいてデータは２クロックの後から読み取るか書き込むことのできる例を示している。基本クロック（１２５ＭＨｚ）と同じ周期ごとにアドレス情報（Ａｄｄｒｅｓｓ）が出力され、モード選択部１０４に提供される２分周及び４分周クロックに応じて２クロック周期毎にモード選択信号（Ｍｏｄｅ）が出力される。
【００３４】
図４において、モード選択部１０４から出力されたモード選択信号（Ｍｏｄｅ）の値が００である場合別途の動作のない無動作（Ｎｏ ｏｐｅｒａｔｉｏｎ）状態に動作し、０１である場合受信制御部１１０から印加されるパケットフレームを処理するための受信モードに動作し 、１０である場合送信制御部１２０から印加されるパケットフレームを処理するための送信モードに動作し、１１である場合受信パケットを送信パケットにループバックさせるためのループバックモードに動作するように定義する。
【００３５】
上記受信制御部１１０と送信制御部１２０は構造が同じであり、但し受信制御部１１０に印加された受信パケットは受信用キューに保存し、送信制御部１２０に印加された送信パケットは送信用キューに保存するという差異点がある。
【００３６】
従って、受信制御部１１０と送信制御部１２０は保存するメモリの差異だけあるのみで、基本構成は同じであるため、受信制御部１１０を基準に説明する。
【００３７】
上記受信制御部１１０は図５に示すように、パケット分類部１１１と、書き込み制御部１１２と、フレームカウントレジスタ１１３と、フレームサイズＲＡＭ１１４と、長さレジスタ１１５と、外部に存在するスケジューラ１１６と、読み取り制御部１１７と、開始住所レジスタ１１８と、終了住所レジスタ１１９とで構成される。
【００３８】
書き込み制御部１１２、１２２と読み取り制御部１１７、１２７によって発生された書き込み制御信号及び読み取り制御信号が上記アービトレーション制御部１０３の制御によってメモリ（ＳＲＡＭ）２００に出力される。書き込み／読み取り制御信号は、図４に示すように、住所情報（Ａｄｄｒｅｓｓ）、読み取り／書き込み制御信号（ＲＷ_ｎ）、メモリ住所選択信号（ＣＳ_ｎ）、ＡＤＶ_ｎ（Ａｄｄｒｅｓｓ Ａｄｖａｎｃｅ／Ｌｏａｄ）、出力イネーブル信号（ＯＥ_ｎ）、データ入力信号（Ｄａｔａ_ｉｎ、３６ビート）などを含む。
【００３９】
パケット分類部１１１、１２１によるパケットフレームのクラス別分類の後に保存されるキュー選択信号が書き込み制御部１１２、１２２に印加され、この信号に応じて当該パケットフレームが外部ＳＲＡＭの個別キューに各々保存される。
【００４０】
この時、各キューに記録されたパケットフレーム別バイトの大きさがフレームサイズＲＡＭ１１４、１２４に記録される。またデータとともにメモリ２００の各キューに一つ以上のフレームが存在する場合に各キューの全体フレーム数、メモリに残っている全体フレームの大きさ及び各キューの第１のフレームの大きさを別途のレジスタ１１３、１１５、１２３、１２５に保管して外部スケジューラ１１６、１２６に提供する。この情報はスケジューラ１１６、１２６がデータを読み取る順をスケジューリングする際使用され、割り当てられた承認期間（ｇｒａｎｔ）の間キューに待機しているフレームを伝送できるか判断するのに重要に使用される。
【００４１】
図８は読み取り制御部及び書き込み制御部の制御状態に関する状態図である。上記書き込み制御部１１２、１２２は図８（ａ）の書き込み制御状態図のように動作する。パケット分類部１１１、１２１から書き込みイネーブル信号（Ｗｒｉｔｅ_ｅｎ）と書き込みデータ（Ｗｒｉｔｅ_ｄａｔａ）の入力を受け、キュー選択信号とｐｘ_ｗｒｅｎ（個別Ｐｒｉｏｒｉｔｙ ＱｕｅｕｅのＷｒｉｔｅ Ｅｎａｂｌｅ、通常１〜８個）、ｐｘ_ｄａｔａ（個別Ｐｒｉｏｒｉｔｙ ＱｕｅｕｅのＷｒｉｔｅ Ｄａｔａ、３６ビート、１〜８個）信号とを生成し書き込み制御部１１２、１２２に伝達すると、書き込み制御部１１２、１２２は書き込み制御信号を生成させる。より具体的に、上記書き込み制御部１１２、１２２は書き込みイネーブル信号（Ｗｒｉｔｅ_ｅｎ）が発生するクロック毎にアイドル（Ｉｄｌｅ）状態からＴ１状態、書き込み状態（Ｗｒｉｔｅ）に遷移し、この時書き込みイネーブル信号（Ｗｒｉｔｅ_ｅｎ）＝１である場合は書き込み状態を続けて維持し、Ｗｒｉｔｅ_ｅｎ＝０である場合は待機（Ｗａｉｔ）状態を経てアイドル（Ｉｄｌｅ）状態に遷移する。
【００４２】
この時、実際書き込み制御信号は上記Ｔ１状態で発生しＷａｉｔ状態で取消される。発生された書き込み制御信号は当該Ｐｒｉｏｒｉｔｙキューに対する上記開始住所レジスタ１１８、１２８に記録された住所に対する書き込みオフセット（Ｗｒｉｔｅ Ｏｆｆｓｅｔ）住所を発生しアービトレーション制御部１０３に伝達し、終了住所レジスタ１１９、１２９に記録された値と書き込み制御部において発生する住所が同じであれば次の住所を当該キューの開始住所レジスタに記録された住所に書き込み住所を回帰させる。
【００４３】
上記読み取り制御部１１７、１２７は図８（ｂ）の状態図のように動作する。外部に存在するスケジューラ１１６、１２６によって当該キューに対する読み取りイネーブル信号（Ｒｅａｄ_ｅｎ）が発生すると読み取り制御部１１７、１２７はメモリ２００の当該キューのデータを読み取るために開始／終了住所レジスタ１１８／１２８、１１９／１２９に記録された住所に対する読み取りオフセット住所などの読み取り制御信号を発生しアービトレーション制御部１０３に伝達する。読み取り制御部１１７、１２７はスケジューラ１１６、１２６によって読み取りイネーブル信号（Ｒｅａｄ_ｅｎ）が発生したクロックでＩｄｌｅ状態に移り、次のクロックでＴ１状態に、その次のクロックでＴ２状態に遷移する。この際、ｒｄ_ｃｎｔ（現在読み取るパケットの大きさの値としてＤｏｗｎ Ｃｏｕｎｔとする）値はＩｄｌｅ状態で読み取ろうとするパケットの大きさをフレームサイズＲＡＭ１１４、１２４から予め読み取って保存する。次のクロックで読み取り状態（Ｒｅａｄ）に遷移するようになり、この場合にｒｄ_ｃｎｔ＝４になるまで読み取り状態を維持する。Ｒｅａｄ_ｅｎ＝１であり、ｒｄ_ｃｎｔ＝４である場合にＷ１状態に遷移し、上記次の状態でＲｅａｄ_ｅｎ＝０であり、ｒｄ_ｃｎｔ＝１である場合Ｉｄｌｅ状態に回帰する。上記Ｔ１状態に遷移する際ＳＯＦ（Ｓｔａｒｔ_ｏｆ_Ｆｒａｍｅ）信号が１となり、Ｔ２状態に遷移する際ＳＯＦ信号が０となる。読み取り状態（Ｒｅａｄ）でＥＯＦ（Ｅｎｄ_ｏｆ_Ｆｒａｍｅ）信号が１となり、Ｗ１状態に遷移する際ＳＯＦ信号が０となる。このような信号は読み取ったデータの境界を外部スケジューラ１１６、１２６に通報する機能を有し、個別キューのＦＩＦＯ状態情報を制御するのに使用される。
【００４４】
長さレジスタ１１５、１２５は外部スケジューラ１１６、１２６に現在読み取るフレームの大きさをリアルタイムに伝達するためのものであって、メモリ２００に設定された受信及び送信キューの個数だけ存在する。
【００４５】
フレームサイズＲＡＭ１１４、１２４はメモリ２００に設定された送信及び受信キューの個数だけ存在するもので、書き込み制御部１１２、１２２によって現在各キューに記録されたフレームの大きさ情報を保存する。保存された大きさ情報はキュー長さレジスタ１１５、１２５に移され外部スケジューラ１１６、１２６に現在読み取るフレームの大きさを伝達し、読み取り制御部１１７、１２７に読み取るフレームの大きさ情報を提供する。
【００４６】
ＣＰＵによって設定可能な開始住所レジスタ１１８、１２８と終了住所レジスタ１１９、１２９によって各キューの大きさを設定できるようにする機能を有するようにする。設定可能なキューの大きさは１Ｋ×３２単位に設定可能であり、フレーム送信中でも変更することが可能である。例えば、図５及び図６のキュー開始住所レジスタを次のように設定すれば各キューの大きさが分かる。
【００４７】
各キューを２５６Ｋバイトに割り当てようとすると、次のように割り当てることができる。  
１．キュー_０_開始_住所＝ｈ'０００００、キュー_０_終了_住所＝ｈ'０ＦＦＦＦ
２．キュー_１_開始_住所＝ｈ'１００００、キュー_１_終了_住所＝ｈ'１ＦＦＦＦ
３．キュー_２_開始_住所＝ｈ'２００００、キュー_２_終了_住所＝ｈ'２ＦＦＦＦ
４．キュー_３_開始_住所＝ｈ'３００００、キュー_３_終了_住所＝ｈ'３ＦＦＦＦ
【００４８】
図７はアービトレーション制御部の読み取り／書き込み動作関係に対する図である。上記アービトレーション制御部１０３は何の動作もしないＩｄｌｅ状態、読み取る動作が行われるようにアービトレーションを行うＲｅａｄ状態、書き込み動作が行われるようにアービトレーションを行うＷｒｉｔｅ状態のうち一つに動作するが、図７に示すように読み取り（Ｒｅａｄ）及び書き込み（Ｗｒｉｔｅ）制御信号に応じて動作状態がピングポング（ｐｉｎｇ−ｐｏｎｇ）するようになり互いに独立的に動作できる。アービトレーション制御部１０３は、受信制御部１１０及び送信制御部１２０からの制御信号とモード選択部１０４のモード信号に応じて、図４のような制御信号をメモリ２００に伝達する。この際、モード信号は無動作（Ｎｏ Ｏｐｅｒａｔｉｏｎ）、受信、送信、ループバックモードの４種に区分され、各モード信号が順次に発生される。これによりアービトレーション制御部１０３は受信及び送信制御部１１０、１２０で発生させたＳＲＡＭ制御信号中のＲＷ_ｎに応じて書き込み動作及び読み取り動作を行う。仮に読み取り動作を行った場合はメモリ２００から出力されたデータ（Ｄａｔａ_ｏｕｔ）をモード信号に応じてラッチさせ、受信用Ｒｅａｄ_ｄａｔａまたは送信用Ｒｅａｄ−ｄａｔａ信号を生成する。
【００４９】
図３のメモリ２００は、図５乃至図６に示すように、受信バッファと送信バッファに区分し適切な大きさに割り当てることができる。
【００５０】
結論的に、入力されるフレームの規格により全部で８個の仮想バッファがプログラム可能な外部の単一バッファ上に実現され、バッファの大きさによってＦＰＧＡまたはＡＳＩＣの内部に実装が不可能な大規模バッファが要求される場合、外部にＳＳＰＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ Ｓｉｎｇｌｅ  Ｐｏｒｔ ＲＡＭ）に実現することが可能である。
【００５１】
以上、本発明に対してその好ましき実施例を参照して説明したが、当該技術分野の熟練された当業者は、上記の特許請求の範囲に記載された本発明の技術的思想及び領域から外れない範囲内において本発明を多様に修正及び変更させて実施できる。
【図面の簡単な説明】
【００５２】
【図１】従来技術による通信用受信装置に関するブロック図ある。
【図２】従来技術によるデータ通信用データバッファリング装置に関するブロック図である。
【図３】本発明の好ましき実施例による双方向データ通信用単一ポートメモリ制御装置に関するブロック図である。
【図４】図３に示す各部の動作タイミング図である。
【図５】図３の受信制御部に関する詳細ブロック図である。
【図６】図３の送信制御部に関する詳細ブロック図である。
【図７】図３のアービトレーション制御部の読み取り／書き込み動作関係を示す状態遷移図である。
【図８】図３の読み取り制御部及び書き込み制御部の制御に関する状態図である。
【符号の説明】
【００５３】
１１０  受信制御部 
１２０  送信制御部
１０３  アービトレーション制御部 
１０４  モード選択部
１０５  ４分周器 
１０６  ２分周器
２００  メモリ
【図１】
2007157162.tif 000003
【図２】
2007157162.tif 000004
【図３】
2007157162.tif 000005
【図４】
2007157162.tif 000006
【図５】
2007157162.tif 000007
【図６】
2007157162.tif 000008
【図７】
2007157162.tif 000009
【図８】
2007157162.tif 000010