(57)【要約】【課題】プロトコル変換仲裁回路、及びそれを備えるシステムと信号変換仲裁方法とを提供する。【解決手段】マスタが使用するプロトコルによる信号を受信し、受信された信号を、スレーブのシステムバスが使用するプロトコルによる信号に変換するプロトコル変換回路と、前記プロトコル変換回路の出力信号を受信し、受信された信号を、前記スレーブが使用するプロトコルによる信号に変換するための変換回路と、を備えるプロトコル変換仲裁回路。多重ポートメモリコントローラと、本発明による少なくとも一つのプロトコル変換仲裁回路とを備えるシステムは、複数個のモジュールのそれぞれがシステムバスを介さずに、直接的に前記多重ポートメモリコントローラを介して外部メモリとデータを送受信しうるので、データプロセシング時間が非常に短縮される。【選択図】図５
2005244979.tif 000002
【特許請求の範囲】
【請求項１】
マスタが使用するプロトコルによる信号を受信し、受信された信号をスレーブのシステムバスが使用するプロトコルによる信号に変換するプロトコル変換回路と、
前記プロトコル変換回路の出力信号を受信し、受信された信号を前記スレーブが使用するプロトコルによる信号に変換するための変換回路と、を備えることを特徴とするプロトコル変換仲裁回路。
【請求項２】
前記変換回路は、
前記プロトコル変換回路から出力される制御信号とデータとを受信し、前記制御信号のうち少なくとも一つの制御信号に応答してアドレスデコーダ制御信号を出力するコントローラと、
前記アドレスデコーダ制御信号に応答して、前記プロトコル変換回路から出力されるアドレスをデコーディングし、前記マスタがアクセスしようとする外部メモリについての情報を出力するアドレスデコーダと、
前記プロトコル変換回路から出力されるアドレス、前記コントローラから出力される制御信号と前記データ、及び前記アドレスデコーダから出力される前記外部メモリについての情報を受信し、受信された信号に基づいて前記スレーブで使われるプロトコルによる信号を出力する分配器と、を備えることを特徴とする請求項１に記載のプロトコル変換仲裁回路。
【請求項３】
前記コントローラは、
前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第１制御信号に応答して、前記プロトコル変換回路から出力されるデータを前記分配器へ伝送するか、または前記分配器から入力されるデータを前記プロトコル変換回路へ伝送するデータ伝送制御器と、
前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第２制御信号に応答して、前記アドレスデコーダ制御信号を出力するアドレスデコーダ制御器と、
前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第３制御信号に応答するか、または前記分配器から出力される制御信号のうち少なくとも一つの制御信号に応答して、前記マスタがアクセスしようとする前記外部メモリの状態に関連した情報を受信し、受信された情報を前記プロトコル変換回路へ伝送する応答制御器と、
前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第４制御信号に応答して、前記分配器の動作を制御するための制御信号を発生させるポート分配制御器と、を備えることを特徴とする請求項２に記載のプロトコル変換仲裁回路。
【請求項４】
プロトコル変換回路と変換回路とを備え、
前記プロトコル変換回路がマスタで使われるプロトコルによる信号を受信する段階と、
前記プロトコル変換回路が受信された信号をスレーブのシステムバスで使われるプロトコルによる信号に変換する段階と、
前記変換回路が制御信号に基づいて前記プロトコル変換回路から出力される信号をデコーディングし、前記変換された信号を前記スレーブで使われるプロトコルによる信号に変換する段階と、を行うことを特徴とする信号変換仲裁方法。
【請求項５】
前記スレーブで使われるプロトコルによる信号に変換する段階は、
前記変換回路が前記プロトコル変換回路から出力される前記制御信号のうち少なくとも一つの制御信号に応答して、アドレスデコーダ制御信号を出力する段階と、
前記変換回路が前記アドレスデコーダ制御信号に基づいて、前記プロトコル変換回路から出力されるアドレスをデコーディングし、前記マスタがアクセスしようとする前記外部メモリについての情報を出力する段階と、
前記変換回路が前記プロトコル変換回路から出力される前記アドレス、前記制御信号とデータ、及び前記外部メモリについての情報を受信し、受信された信号に基づいて前記スレーブで使われるプロトコルによる信号を出力する段階と、を備えることを特徴とする請求項４に記載の信号変換仲裁方法。
【請求項６】
マスタがスレーブを介して外部メモリをアクセスする方法において、
前記マスタが前記外部メモリをアクセスするために、前記マスタで使われるプロトコルによる信号を出力する段階と、
前記マスタで使われるプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換する段階と、
制御信号に基づいて変換された信号をデコーディングし、前記スレーブで使われるプロトコルによる信号に変換する段階と、
前記スレーブが自身のプロトコルによる信号に基づいて、前記マスタがアクセスしようとする前記外部メモリをアクセスする段階と、を備えることを特徴とするマスタがスレーブを介して外部メモリをアクセスする方法。
【請求項７】
複数個のプロトコル変換回路と、
前記複数個のプロトコル変換回路のそれぞれから出力される信号を受信し、受信された信号を仲裁し、仲裁結果に相応する信号をスレーブが使用するプロトコルによる信号に変換するための変換回路と、を備え、
前記複数個のプロトコル変換回路のそれぞれは、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換することを特徴とするプロトコル変換仲裁回路。
【請求項８】
前記変換回路は、
前記プロトコル変換回路のそれぞれから出力される制御信号のうち少なくとも一つの第１制御信号を受信し、受信された少なくとも一つの第１制御信号に基づいてコントローラ制御信号を発生させる仲裁器と、
前記仲裁器から出力された前記コントローラ制御信号と前記プロトコル変換回路のそれぞれから出力される前記制御信号のうち、少なくとも一つの第２制御信号に基づいて入力端に入力されるデータを出力端へ伝送し、アドレスデコーダ制御信号を発生させるコントローラと、
前記アドレスデコーダ制御信号に応答して、前記プロトコル変換回路のうち対応するプロトコル変換回路から出力されるアドレスをデコーディングし、前記対応するマスタがアクセスしようとする外部メモリについての情報を出力するアドレスデコーダと、
前記スレーブの複数個のポートのそれぞれと１対１に対応する入出力ポートを備え、前記アドレス、前記コントローラから出力される制御信号とデータ、及び前記アドレスデコーダから出力される前記外部メモリについての情報に基づいて、前記プロトコル変換回路から出力された信号を書き込み出力ポートのうち対応する入出力ポートを介して、前記スレーブが使用するプロトコルによる信号として出力する分配器と、を備えることを特徴とする請求項７に記載のプロトコル変換仲裁回路。
【請求項９】
前記コントローラは、
対応する前記第２制御信号と前記コントローラ制御信号のうち対応する制御信号に応答して、対応するプロトコル変換回路から出力されるデータを前記分配器へ伝送するか、または前記分配器から入力されるデータを前記プロトコル変換回路へ伝送するデータ伝送制御器と、
対応する前記第２制御信号と前記コントローラ制御信号のうち対応する制御信号に応答して、前記アドレスデコーダ制御信号を出力するアドレスデコーダ制御器と、
対応する前記第２制御信号と前記コントローラ制御信号のうち対応する制御信号に応答するか、または前記分配器から出力される制御信号のうち少なくとも一つの制御信号に応答して、対応するマスタがアクセスしようとする前記外部メモリに関連した情報を受信し、受信された情報を前記プロトコル変換回路へ伝送する応答制御器と、
対応する前記第２制御信号と前記コントローラ制御信号のうち対応する制御信号に応答して、書き込み出力ポートのそれぞれの動作を制御するための制御信号を発生させるポート分配制御器と、を備えることを特徴とする請求項８に記載のプロトコル変換仲裁回路。
【請求項１０】
複数個のプロトコル変換回路のそれぞれが、対応するマスタで使われるプロトコルによる信号を受信する段階と、
複数個のプロトコル変換回路のそれぞれが、受信された信号をスレーブのシステムバスで使われるプロトコルによる信号に変換する段階と、
制御信号に基づいて変換された信号を仲裁し、その仲裁結果に基づいてデコーディングし、前記スレーブのシステムバスで使われるプロトコルによる信号を前記スレーブで使われるプロトコルによる信号に変換する段階と、を行うことを特徴とする信号変換仲裁方法。
【請求項１１】
対応するマスタがスレーブを介して外部メモリをアクセスする方法において、
複数個のマスタのそれぞれが、前記外部メモリをアクセスするために自身が使用するプロトコルによる信号を出力する段階と、
複数個のプロトコル変換回路のそれぞれが、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換する段階と、
制御信号に基づいて変換された信号を仲裁してデコーディングし、その結果として前記スレーブで使われるプロトコルによる信号に変換する段階と、
前記スレーブが自身のプロトコルによる信号に基づいて、対応するマスタがアクセスしようとする前記外部メモリをアクセスする段階と、を備えることを特徴とするマスタがスレーブを介して外部メモリをアクセスする方法。
【請求項１２】
複数個のプロトコル変換回路と、前記複数個のプロトコル変換回路のそれぞれは、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号をスレーブのシステムバスが使用するプロトコルによる信号に変換し、
前記複数個のプロトコル変換回路のそれぞれから出力される信号を受信し、受信された信号に基づいて制御信号を出力する仲裁器と、
前記複数個のプロトコル変換回路のそれぞれから出力される信号と、前記仲裁器から出力される前記制御信号とに基づいて、前記複数個のプロトコル変換回路のそれぞれから出力された前記スレーブのシステムバスが使用するプロトコルによる信号を、前記スレーブが使用するプロトコルによる信号に変換するための変換回路と、を備えることを特徴とするプロトコル変換仲裁回路。
【請求項１３】
前記変換回路は、
前記仲裁器から出力された前記制御信号と、前記プロトコル変換回路のうち対応するプロトコル変換回路から出力される制御信号のうち、対応する少なくとも一つの制御信号に基づいて入力端に入力されるデータを出力端へ伝送し、アドレスデコーダ制御信号を発生させるコントローラと、
前記アドレスデコーダ制御信号に応答して、前記プロトコル変換回路のうち対応するプロトコル変換回路から出力されるアドレスをデコーディングし、前記対応するマスタがアクセスしようとする外部メモリについての情報を出力するアドレスデコーダと、
前記スレーブの複数個のポートのそれぞれと対応する入出力ポートを備え、前記プロトコル変換回路から出力されるアドレス、前記コントローラから出力される制御信号とデータ、及び前記アドレスデコーダから出力される前記外部メモリについての情報に基づいて、書き込み出力ポートのうち対応する入出力ポートを介して、前記スレーブが使用するプロトコルによる信号を出力する分配器と、を備えることを特徴とする請求項１２に記載のプロトコル変換仲裁回路。
【請求項１４】
複数個のポートを備えるメモリコントローラ、マスタ、及びシステムバスを備えるシステムにおいて、前記システムは、
前記複数個のポートのうち第１ポートと前記マスタとの間に接続される第１プロトコル変換仲裁回路と、
前記複数個のポートのうち第２ポートと前記システムバスとの間に接続される第２プロトコル変換仲裁回路と、を備え、
前記第１プロトコル変換仲裁回路は、前記マスタで使われるプロトコルによる信号を受信し、受信された信号を前記メモリコントローラのシステムバスで使われるプロトコルによる信号に変換する第１プロトコル変換回路と、
前記第１プロトコル変換回路の出力信号を、前記メモリコントローラで使われるプロトコルによる信号に変換するための第１変換回路と、を備え、
前記第２プロトコル変換仲裁回路は、前記システムバスで使われるプロトコルによる信号を受信し、受信された信号を前記メモリコントローラのシステムバスが使用するプロトコルによる信号に変換する第２プロトコル変換回路と、
前記第２プロトコル変換回路の出力信号を、前記メモリコントローラが使用するプロトコルによる信号に変換するための第２変換回路と、を備えることを特徴とするシステム。
【請求項１５】
前記第１変換回路は、
前記第１プロトコル変換回路から出力される制御信号とデータとを受信し、前記制御信号のうち少なくとも一つの制御信号に応答して、アドレスデコーダ制御信号を出力するコントローラと、
前記アドレスデコーダ制御信号に応答して、前記第１プロトコル変換回路から出力されるアドレスをデコーディングし、前記マスタがアクセスしようとする外部メモリについての情報を出力するアドレスデコーダと、
前記第１プロトコル変換回路から出力されるアドレス、前記コントローラから出力される制御信号とデータ、及び前記アドレスデコーダから出力される前記外部メモリについての情報を受信し、それらに基づいて前記メモリコントローラが使用するプロトコルによる信号を出力する分配器と、を備えることを特徴とする請求項１４に記載のシステム。
【請求項１６】
複数個のポートを備えるメモリコントローラと、
システムバスと、
複数個のマスタと、
複数個のポートを備えるプロトコル変換仲裁回路と、
前記メモリコントローラの対応するポートと、前記プロトコル変換仲裁回路の対応するポートとの間に１対１に接続される複数個のバスと、
前記複数個のマスタのそれぞれと、前記プロトコル変換回路の対応するポートとの間に１対１に接続される複数個のバスと、を備え、
前記プロトコル変換仲裁回路は、
複数個のプロトコル変換回路と、
前記複数個のプロトコル変換回路のそれぞれから出力される信号を受信し、受信された信号を仲裁し、仲裁結果に相応する信号を前記メモリコントローラで使われるプロトコルによる信号に変換するための変換回路と、を備え、
前記複数個のプロトコル変換回路のそれぞれは、前記複数個のマスタのうち対応するマスタで使われるプロトコルによる信号を受信し、受信された信号を前記メモリコントローラのシステムバスが使用するプロトコルによる信号に変換することを特徴とするシステム。
【請求項１７】
前記変換回路は、
前記プロトコル変換回路のそれぞれから出力される制御信号のうち少なくとも一つの第１制御信号を受信し、受信された第１制御信号に基づいてコントローラ制御信号を発生させる仲裁器と、
前記仲裁器から出力された前記コントローラ制御信号と、前記プロトコル変換回路のそれぞれから出力される前記制御信号のうち少なくとも一つの第２制御信号に基づいて、所定のデータを伝送し、アドレスデコーダ制御信号を発生させるコントローラと、
前記アドレスデコーダ制御信号に応答して、前記プロトコル変換回路のそれぞれから出力されるアドレスをデコーディングし、前記対応するマスタがアクセスしようとする外部メモリについての情報を出力するアドレスデコーダと、
前記スレーブの複数個のポートのそれぞれと対応する入出力ポートを備え、前記プロトコル変換回路から出力されるアドレス、前記コントローラから出力される制御信号とデータ、及び前記アドレスデコーダから出力される前記外部メモリについての情報に基づいて、書き込み出力ポートのうち対応する入出力ポートを介して、前記スレーブが使用するプロトコルによる信号を出力する分配器と、を備えることを特徴とする請求項１６に記載のシステム。
【請求項１８】
前記複数個のマスタのそれぞれで使われるプロトコルは、少なくとも一つ以上の相異なるプロトコルであることを特徴とする請求項１６に記載のシステム。
【請求項１９】
前記複数個のモジュールのそれぞれで使われるプロトコルは、同一のプロトコルであることを特徴とする請求項１６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロトコル変換仲裁回路に係り、特にプロトコルを変換して仲裁する変換仲裁回路、多重ポートメモリコントローラと前記変換仲裁回路とを備えるシステム、及び信号を変換して仲裁する方法に関する。
【背景技術】
【０００２】
図１は、従来の一つのポートのみを有するメモリコントローラを備えるシステムのブロック図を示す。
図１を参照すると、システムボード１００は、システム１１０と外部メモリ１２１とを備える。システム１１０は、メモリコントローラ１１１、ＡＨＢ（Ａｄｖａｎｃｅｄ Ｈｉｇｈ−ｐｅｒｆｏｒｍａｎｃｅ Ｂｕｓ）１１４、ＡＰＢ（Ａｄｖａｎｃｅｄ Ｐｅｒｉｐｈｅｒａｌ Ｂｕｓ）ブリッジ１１７、ＡＰＢ １１９、複数個のＡＨＢマスタ１１２、１１５、ＡＨＢスレーブ１１６及びＡＰＢスレーブ１１８を備える。
【０００３】
ここで、メモリコントローラ１１１、ＡＨＢ １１４、ＡＰＢブリッジ１１７、ＡＰＢ １１９、及び複数個のモジュール１１２、１１５、１１６、１１８は、一つのプロトコル、例えばＡＭＢＡ（Ａｄｖａｎｃｅｄ Ｍｉｃｒｏ−ｃｏｎｔｒｏｌｌｅｒ Ｂｕｓ Ａｒｃｈｉｔｅｃｔｕｒｅ）プロトコルのみを支援（または使用）する。
【０００４】
メモリコントローラ１１１は、複数個のモジュール１１２、１１５、１１６、１１８のそれぞれと外部メモリ１２１との間のデータの入出力を制御する。そして、メモリコントローラ１１１は、一つのポート１１３を介してＡＨＢ １１４と接続される。各モジュール１１２、１１５、１１６は、ＡＨＢ １１４と接続される。ここで、ＡＨＢ １１４は、システムバスとして使われる。
【０００５】
したがって、各モジュール１１２、１１５、１１６、１１８は、システムバス１１４、一つのポート１１３を有するメモリコントローラ１１１と入出力ピン１２０とを介して外部メモリ１２１にデータを書き込むか、または外部メモリ１２１からデータを読み取ることができる。したがって、各モジュール１１２、１１５、１１６、１１８が外部メモリ１２１とデータを入出力するためには、必ずシステムバス１１４を使用するので、システムバス１１４の負担が増加し、これによりシステム１１０の全体的な性能も低下する。
【０００６】
図２は、従来の同種のプロトコルのみを支援する多重ポートメモリコントローラを備えるシステムのブロック図を示す。図２を参照すれば、システムボード２００は、システム２１０と外部メモリ２２４とを備える。システム２１０は、メモリコントローラ２１１、システムバスＡＨＢ ２１３、ＡＰＢブリッジ２１６、ＡＰＢバス２１７、複数個のモジュール２１２、２１４、２１５、２１８、及び複数個のバス２２１、．．．２２２を備える。
【０００７】
メモリコントローラ２１１は、複数個のモジュールのそれぞれと接続できる複数個のポート２２０−１ないし２２０−ｎを備える。以下に、本明細書において、複数個のポート２２０−１、２２０−２、．．．２２０−ｎを備えるメモリコントローラ２１１を‘多重ポートメモリコントローラ’と称する。
【０００８】
多重ポートメモリコントローラ２１１、システムバス２１３、ＡＰＢブリッジ２１６、ＡＰＢバス２１７、及び複数個のモジュール２１２、２１４、２１５、２１８のいずれもは、同一のプロトコル（例えばＡＭＢＡプロトコル）のみを支援（または使用）できるので、システム２１０があらゆるモジュール２１１、２１２、２１４、２１５、２１７が使用するプロトコルと相異なるプロトコルを使用するためには、モジュール２１１、２１２、２１４、２１５、２１７のそれぞれの回路を再び設計するか、または設計を修正しなければならない不便さが発生する。この場合、モジュール２１１、２１２、２１４、２１５、２１７のそれぞれをそのまま再使用できないという問題点がある。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明が解決しようとする課題は、システムの性能を改善し、２種のプロトコルを自由に支援して、既に製作されている従来のモジュールの再使用を容易に行える構造を有する装置を提供することにある。
【課題を解決するための手段】
【００１０】
前記課題を解決するためのプロトコル変換仲裁回路は、マスタが使用するプロトコルによる信号を受信し、受信された信号をスレーブのシステムバスが使用するプロトコルによる信号に変換するプロトコル変換回路と、前記プロトコル変換回路の出力信号を受信し、受信された信号を前記スレーブが使用するプロトコルによる信号に変換するための変換回路と、を備える。
【００１１】
前記変換回路は、前記プロトコル変換回路から出力される制御信号とデータとを受信し、前記制御信号のうち少なくとも一つの制御信号に応答してアドレスデコーダ制御信号を出力するコントローラと、前記アドレスデコーダ制御信号に応答して、前記プロトコル変換回路から出力されるアドレスをデコーディングし、前記マスタがアクセスしようとする外部メモリについての情報を出力するアドレスデコーダと、前記プロトコル変換回路から出力されるアドレス、前記コントローラから出力される制御信号と前記データ、及び前記アドレスデコーダから出力される前記外部メモリについての情報を受信し、受信された信号に基づいて前記スレーブで使われるプロトコルによる信号を出力する分配器と、を備える。
【００１２】
前記コントローラは、前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第１制御信号に応答して、前記プロトコル変換回路から出力されるデータを前記分配器へ伝送するか、または前記分配器から入力されるデータを前記プロトコル変換回路へ伝送するデータ伝送制御器と、前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第２制御信号に応答して、前記アドレスデコーダ制御信号を出力するアドレスデコーダ制御器と、前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第３制御信号に応答するか、または前記分配器から出力される制御信号のうち少なくとも一つの制御信号に応答して、前記マスタがアクセスしようとする前記外部メモリの状態に関連した情報を受信し、受信された情報を前記プロトコル変換回路へ伝送する応答制御器と、前記プロトコル変換回路から出力される制御信号のうち少なくとも一つの第４制御信号に応答して、前記分配器の動作を制御するための制御信号を発生させるポート分配制御器と、を備える。
【００１３】
前記課題を解決するための信号変換仲裁方法は、プロトコル変換回路と変換回路とを備え、前記プロトコル変換回路がマスタで使われるプロトコルによる信号を受信する段階と、前記プロトコル変換回路が受信された信号をスレーブのシステムバスで使われるプロトコルによる信号に変換する段階と、前記変換回路が制御信号に基づいて前記プロトコル変換回路から出力される信号をデコーディングし、前記変換された信号を前記スレーブで使われるプロトコルによる信号に変換する段階と、を行う。
【００１４】
前記スレーブで使われるプロトコルによる信号に変換する段階は、前記変換回路が前記プロトコル変換回路から出力される前記制御信号のうち少なくとも一つの制御信号に応答して、アドレスデコーダ制御信号を出力する段階と、前記変換回路が前記アドレスデコーダ制御信号に基づいて前記プロトコル変換回路から出力されるアドレスをデコーディングし、前記マスタがアクセスしようとする前記外部メモリについての情報を出力する段階と、前記変換回路が前記プロトコル変換回路から出力される前記アドレス、前記制御信号とデータ、及び前記外部メモリについての情報を受信し、受信された信号に基づいて前記スレーブで使われるプロトコルによる信号を出力する段階と、を備える。
【００１５】
前記課題を解決するためのマスタがスレーブを介して外部メモリをアクセスする方法は、前記マスタが前記外部メモリをアクセスするために、前記マスタで使われるプロトコルによる信号を出力する段階と、前記マスタで使われるプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換する段階と、制御信号に基づいて変換された信号をデコーディングし、前記スレーブで使われるプロトコルによる信号に変換する段階と、前記スレーブが自身のプロトコルによる信号に基づいて、前記マスタがアクセスしようとする前記外部メモリをアクセスする段階と、を備える。
【００１６】
前記課題を解決するためのプロトコル変換仲裁回路は、複数個のプロトコル変換回路と、前記複数個のプロトコル変換回路のそれぞれから出力される信号を受信し、受信された信号を仲裁し、仲裁結果に相応する信号をスレーブが使用するプロトコルによる信号に変換するための変換回路と、を備え、前記複数個のプロトコル変換回路のそれぞれは、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換する。
【００１７】
前記課題を解決するための信号変換仲裁方法は、複数個のプロトコル変換回路のそれぞれが、対応するマスタで使われるプロトコルによる信号を受信する段階と、複数個のプロトコル変換回路のそれぞれが、受信された信号をスレーブのシステムバスで使われるプロトコルによる信号に変換する段階と、制御信号に基づいて変換された信号を仲裁し、その仲裁結果に基づいてデコーディングし、前記スレーブのシステムバスで使われるプロトコルによる信号を前記スレーブで使われるプロトコルによる信号に変換する段階と、を行う。
【００１８】
前記課題を解決するための対応するマスタがスレーブを介して外部メモリをアクセスする方法は、複数個のマスタのそれぞれが、前記外部メモリをアクセスするために自身が使用するプロトコルによる信号を出力する段階と、複数個のプロトコル変換回路のそれぞれが、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換する段階と、制御信号に基づいて変換された信号を仲裁してデコーディングし、その結果として前記スレーブで使われるプロトコルによる信号に変換する段階と、前記スレーブが自身のプロトコルによる信号に基づいて、対応するマスタがアクセスしようとする前記外部メモリをアクセスする段階と、を備える。
【００１９】
前記課題を解決するためのプロトコル変換仲裁回路は、複数個のプロトコル変換回路と、前記複数個のプロトコル変換回路のそれぞれは、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号を前記スレーブのシステムバスが使用するプロトコルによる信号に変換し、前記複数個のプロトコル変換回路のそれぞれから出力される信号を受信し、受信された信号に基づいて制御信号を出力する仲裁器と、前記複数個のプロトコル変換回路のそれぞれから出力される信号と、前記仲裁器から出力される前記制御信号とに基づいて、前記複数個のプロトコル変換回路のそれぞれから出力された前記スレーブのシステムバスが使用するプロトコルによる信号を、前記スレーブが使用するプロトコルによる信号に変換するための変換回路と、を備える。
【００２０】
前記課題を解決するための複数個のポートを備えるメモリコントローラ、マスタ、及びシステムバスを備えるシステムは、前記複数個のポートのうち第１ポートと前記マスタとの間に接続される第１プロトコル変換仲裁回路と、前記複数個のポートのうち第２ポートと前記システムバスとの間に接続される第２プロトコル変換仲裁回路と、を備え、前記第１プロトコル変換仲裁回路は、前記マスタで使われるプロトコルによる信号を受信し、受信された信号を前記メモリコントローラのシステムバスで使われるプロトコルによる信号に変換する第１プロトコル変換回路と、前記第１プロトコル変換回路の出力信号を、前記メモリコントローラで使われるプロトコルによる信号に変換するための第１変換回路と、を備え、前記第２プロトコル変換仲裁回路は、前記システムバスで使われるプロトコルによる信号を受信し、受信された信号を前記メモリコントローラのシステムバスが使用するプロトコルによる信号に変換する第２プロトコル変換回路と、前記第２プロトコル変換回路の出力信号を、前記メモリコントローラが使用するプロトコルによる信号に変換するための第２変換回路と、を備える。
【００２１】
前記課題を解決するためのシステムは、複数個のポートを備えるメモリコントローラと、システムバスと、複数個のマスタと、複数個のポートを備えるプロトコル変換仲裁回路と、前記メモリコントローラの対応するポートと前記プロトコル変換仲裁回路の対応するポートとの間に１対１に接続される複数個のバスと、前記複数個のマスタのそれぞれと前記プロトコル変換回路の対応するポートとの間に１対１に接続される複数個のバスと、を備え、前記プロトコル変換仲裁回路は、複数個のプロトコル変換回路と、前記複数個のプロトコル変換回路のそれぞれから出力される信号を受信し、受信された信号を仲裁し、仲裁結果に相応する信号を前記メモリコントローラで使われるプロトコルによる信号に変換するための変換回路と、を備え、前記複数個のプロトコル変換回路のそれぞれは、前記複数個のマスタのうち対応するマスタで使われるプロトコルによる信号を受信し、受信された信号を前記メモリコントローラのシステムバスが使用するプロトコルによる信号に変換する。
【００２２】
前記複数個のマスタのそれぞれで使われるプロトコルは、少なくとも一つ以上の相異なるプロトコルである。前記複数個のモジュールのそれぞれで使われるプロトコルは、同一のプロトコルである。
【発明の効果】
【００２３】
本発明による多重ポートメモリコントローラと、少なくとも一つのプロトコル変換仲裁回路とを備えるシステムは、複数個のモジュールのそれぞれがシステムバスを介さずに（または使用せずに）、直接的に多重ポートメモリコントローラを介して外部メモリとデータとを送受信しうるので、データプロセシング時間が非常に短縮される。
したがって、システムのシステムバスの負荷が減少するので、システムの性能が改善される。
【００２４】
そして、相異なるプロトコルを支援する複数個のモジュールのそれぞれを、同時に多重ポートメモリコントローラの対応するポートと接続させることができるので、従来のモジュールについての設計の変更なしに直ちに使用できる。したがって、従来のモジュールをそのまま使用できるので、システムの設計時間を短縮できる。
【発明を実施するための最良の形態】
【００２５】
本発明と、本発明の動作上の利点及び本発明の実施によって達成される目的を十分に理解するためには、本発明の望ましい実施例を例示する添付図面及び添付図面に記載された内容を参照しなければならない。
以下、添付された図面を参照して本発明の望ましい実施例を説明することにより、本発明を詳細に説明する。各図面に付された同一参照符号は同一部材を示す。
【００２６】
図３は、本発明の一実施例による一つのプロトコル変換仲裁回路が一つのモジュールと接続される構造を有するシステムのブロック図を示す。
図３を参照すると、システム３００は、多重ポートメモリコントローラ３１０、複数個のモジュール３２０、３４６、３６０、複数個のプロトコル変換仲裁回路３２２−１、３２２−２、３２２−３、複数個のプロトコル変換回路３４０、３５０、３６４、システムバス３７０、及び複数個のバス３２４、３３４、３３６、３３８、３４２、３４４、３４８、３５２、３５４、３５６、３５８、３６２、３６６を備える。また、システム３００は、少なくとも一つの外部メモリ（図示せず）と所定のデータを送受信するための少なくとも一つのデータ入出力ピン（図示せず）とを備える。
【００２７】
複数個のプロトコル変換仲裁回路３２２−１、３２２−２、３２２−３のそれぞれの構造は、相異なるプロトコルによる信号を変換するためのプロトコル変換回路３２６のみを除外すれば、図６に示されたような構造を有する。
【００２８】
本明細書では、多重ポートメモリコントローラ３１０と対応するモジュール３２０、３４６との間に接続される回路３２２−１、３２２−２、または多重ポートメモリコントローラ３１０とシステムバス３７０との間に接続される回路３２２−３をプロトコル変換仲裁回路とする。プロトコル変換仲裁回路３２２−１、３２２−２、３２２−３の構造は、図６または図７に示す通りである。
【００２９】
プロトコル変換仲裁回路は、マスタで使われるプロトコルによる信号を対応するスレーブのシステムバスで使われるプロトコルによる信号に変換した後、変換された信号を信号制御過程、信号仲裁過程、及び／または信号デコーディング過程を通じて再びスレーブで使われるプロトコルによる信号に変換する。
【００３０】
しかし、相異なるプロトコルを使用するモジュールの間に、または相異なるプロトコルを使用するモジュール３６０とバス３７０との間に接続される回路をプロトコル変換回路とする。したがって、プロトコル変換回路は、マスタで使われるプロトコルによる信号を対応するスレーブのシステムバスで使われるプロトコルによる信号に変換する動作のみを行う。
【００３１】
ここで、説明の便宜上、多重ポートメモリコントローラ３１０は第１種プロトコルを使用（または支援）し、モジュール１ ３２０は第２種プロトコルを使用し、モジュール２ ３６０は第１種プロトコルを使用し、モジュール３ ３４６は第４種プロトコルを使用し、システムバス３７０は第３種プロトコルを使用すると仮定する。
【００３２】
多重ポートメモリコントローラ３１０は、複数個のポート３１２、３１４、３１６、３１８を備え、システムバス３７０を介して各モジュール３２０、３４６、３６０と外部メモリとの間のデータを送受信する動作を制御する。
プロトコル変換仲裁回路３２２−１は、マスタ（例えば、モジュール１ ３２０）とメモリコントローラ３１０の第１ポート３１２との間に接続される。
【００３３】
図６は、本発明の第１実施例によるプロトコル変換仲裁回路のブロック図を示す。図６を参照すると、プロトコル変換仲裁回路３２２−１は、プロトコル変換回路３２６、コントローラ３２８、アドレスデコーダ３３０及び分配器３３２を備える。図８は、図３と図６とに示されたプロトコル変換仲裁回路の動作を説明するためのフローチャートである。
【００３４】
図３、図６及び図８を参照すると、プロトコル変換回路３２６は、マスタ（例えば、モジュール１ ３２０）が使用する第２種プロトコルによる信号を、バス３２４を介して受信し（８０１段階）、受信された信号をスレーブ（例えば、メモリコントローラ３１０）のシステムバス（図示せず）が使用するプロトコルによる信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤに変換し、変換された信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤをコントローラ３２８、アドレスデコーダ３３０、及び分配器３３２に出力する（８０３段階）。
【００３５】
コントローラ３２８は、プロトコル変換回路３２６から出力される制御信号ＣＮＴＲ１に応答して、アドレスデコーダ３３０と分配器３３２とをそれぞれ制御するための各種の制御信号ＣＮＴＲ４、ＣＮＴＲ５をアドレスデコーダ３３０と分配器３３２とに出力する。
コントローラ３２８は、データ伝送制御器３２８１、アドレスデコーダ制御器３２８２、応答制御器３２８３、及びポート分配制御器３２８４を備える。
【００３６】
データ伝送制御器３２８１は、制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号に応答して、プロトコル変換回路３２６から出力されるデータＤＡＴＡを分配器３３２へ伝送するか、または分配器３３２から入力されるデータＤＡＴＡをプロトコル変換回路３２６へ伝送する。
アドレスデコーダ制御器３２８２は、制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号に応答して、アドレスデコーダ３３０の動作を制御するための制御信号ＣＮＴＲ５をアドレスデコーダ３３０に出力する。
【００３７】
応答制御器３２８３は、プロトコル変換回路３２６から出力される制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号に応答するか、または分配器３３２から出力される制御信号ＣＮＴＲ３のうち対応する少なくとも一つの制御信号に応答して、アクセスされる外部メモリの状態についての情報、またはデータＤＡＴＡの伝送状態に関連した情報ＲＥＳをプロトコル変換回路３２６へ伝送する。また、応答制御器８２８３は、プロトコル変換回路３２６の動作を制御するための制御信号ＣＮＴＲ２を発生させる。
【００３８】
ポート分配制御器３２８４は、プロトコル変換回路３２６から出力される制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号に応答して、メモリコントローラ３１０の多重ポートのそれぞれの動作状態を制御するための制御信号ＣＮＴＲ４を分配器３３２に出力する。
【００３９】
アドレスデコーダ３３０は、コントローラ３２８から出力される制御信号ＣＮＴＲ５に応答して、プロトコル変換回路３２６から出力されるアドレスＡＤＤをデコーディングし、その結果としてマスタ（例えば、モジュール１ ３２０）がアクセスしようとする外部メモリについての情報ＭＳＥＬを分配器３３２に出力する。
【００４０】
アドレスデコーダ３３０は、デコーダ３３０１とメモリ選択器３３０２とを備える。デコーダ３３０１は、コントローラ３２８から出力される制御信号ＣＮＴＲ５のうち対応する少なくとも一つの制御信号に応答して、プロトコル変換回路３２６から出力されるアドレスＡＤＤをデコーディングし、その結果をメモリ選択器３３０２に出力する。
【００４１】
メモリ選択器３３０２は、コントローラ３２８のアドレスデコーダ制御器３２８２から出力される制御信号ＣＮＴＲ５のうち対応する少なくとも一つの制御信号と、デコーダ３３０１の出力信号とに基づいて、マスタ（例えば、モジュール１ ３２０）がアクセスしようとする外部メモリについての情報ＭＳＥＬを分配器３３２に出力する。外部メモリについての情報ＭＳＥＬ、例えばビット数は、前記外部メモリの個数によって決定される。
【００４２】
分配器３３２は、プロトコル変換回路３２６から出力されるアドレスＡＤＤ、コントローラ３２８から出力されるデータＤＡＴＡと制御信号ＣＮＴＲ４、及びアドレスデコーダ３３０から出力される外部メモリについての情報ＭＳＥＬを受信し、それらＡＤＤ、ＤＡＴＡ、ＣＮＴＲ４、ＭＳＥＬに基づいて、スレーブ（例えば、メモリコントローラ３１０）の対応するポート３１２に外部メモリをアクセスするために必要な信号を伝送する。したがって、分配器３３２は、スイッチング機能及び／またはマルチプレクシング機能を有する。
【００４３】
プロトコル変換回路３２６から出力されたスレーブのシステムバスが使用するプロトコルによる信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤは、コントローラ３２８、アドレスデコーダ３３０及び分配器３３２の相互作動によってスレーブ（例えば、メモリコントローラ３１０）で使われるプロトコルによる信号に変換され、変換された信号は、対応するバス３３４とポート３１２とを介してスレーブ３１０に入力される（８０５段階）。
【００４４】
したがって、コントローラ３２８とアドレスデコーダ３３０と分配器３３２とは、プロトコル変換回路３２６の出力信号をメモリコントローラ３１０で使われるプロトコルによる信号に変換する機能を行う。
したがって、スレーブ３１０は、プロトコル変換仲裁回路３２２−１から出力される信号に基づいて、マスタ３２０がアクセスしようとする外部メモリをアクセスする。
【００４５】
また、プロトコル変換仲裁回路３２２−１のコントローラ３２８は、アクセスされた外部メモリから読み取られたデータＤＡＴＡ、即ちスレーブ３１０のプロトコルによる信号を受信し、受信されたデータＤＡＴＡを分配器３３２とコントローラ３２８とを介してスレーブのシステムバスで使われるプロトコルによる信号に変換し、変換された信号をプロトコル変換回路３２６に出力する。
プロトコル変換回路３２６は、スレーブのシステムバスで使われるプロトコルによる信号をマスタ３２０が使用するプロトコルによる信号に変換し、変換された信号をマスタに出力する。
【００４６】
そして、プロトコル変換仲裁回路３２２−２は、モジュール３ ３４６とメモリコントローラ３１０の第２ポート３１４との間に接続される。プロトコル変換仲裁回路３２２−２は、マスタ（例えば、モジュール３ ３４６）が使用する第４種プロトコルによる信号を、バス３４４を介して受信し、受信された信号を、プロトコル変換回路（図示せず）を利用してスレーブ（例えば、メモリコントローラ３１０）のシステムバス（図示せず）で使われるプロトコルによる信号に変換し、上述したように、コントローラ３２８、アドレスデコーダ３３０と分配器３３２を介してスレーブ３１０で使われる第１種プロトコルによる信号に変換し、変換された信号を、バス３４２と第２ポート３１４とを介してメモリコントローラ３１０へ伝送する。したがって、モジュール３ ３４６は、対応するポート３１４を介してアクセスしようとする外部メモリ（図示せず）を直接アクセスできる。
【００４７】
また、プロトコル変換仲裁回路３２２−２は、アクセスされた外部メモリから読み取られた第１種プロトコルによる信号を、メモリコントローラ３１０の第２ポート３１４とバス３４２とを介して受信し、受信された信号を分配器３３２、コントローラ３２８及びアドレスデコーダ３３０を介して、メモリコントローラ３１０のシステムバス（図示せず）で使われるプロトコルによる信号に変換し、変換された信号をプロトコル変換回路（図示せず）を利用して、モジュール３ ３４６で使われる第４種プロトコルによる信号に再び変換し、変換された信号を、バス３４４を介してモジュール３ ３２０へ伝送する。
【００４８】
プロトコル変換仲裁回路３２２−３は、メモリコントローラ３１０の第３ポート３１６とシステムバス３７０との間に接続される。プロトコル変換仲裁回路３２２−３は、上述した２回の変換過程を通じて、システムバス３７０で使われる第３種プロトコルによる信号を、メモリコントローラ３１０で使われる第１種プロトコルによる信号に変換するか、またはメモリコントローラ３１０で使われる第１種プロトコルによる信号を、システムバス３７０で使われる第３種プロトコルによる信号に変換する。
【００４９】
図９は、マスタが本発明の第１実施例によるプロトコル変換仲裁回路を介して、外部メモリをアクセスする方法を説明するためのフローチャートである。図３、図６及び図９を参照してマスタが所定の外部メモリをアクセスする過程を説明すれば、次の通りである。
【００５０】
各マスタ３２０、３４６、３７０は、所定の外部メモリをアクセスするために、各マスタ３２０、３４６、３７０が使用するプロトコルによる信号を対応するプロトコル変換仲裁回路３２２−１、３２２−２、３２２−３に出力する（９０１段階）。
各プロトコル変換仲裁回路３２２−１、３２２−２、３２２−３のプロトコル変換回路３２６は、対応するマスタ３２０、３４６、３７０が使用するプロトコルによる信号を受信し、受信された信号をスレーブ３１０のシステムバス（図示せず）が使用するプロトコルによる信号に変換する（９０３段階）。
【００５１】
各プロトコル変換仲裁回路３２２−１、３２２−２、３２２−３のプロトコル変換回路３２６から出力された各種の信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤは、コントローラ３２８、アドレスデコーダ３３０及び分配器３３２によって、スレーブ３１０で使用する第１種プロトコルによる信号に再び変換される（９０５段階）。
スレーブ３１０は、受信された信号に基づいて、各マスタ３２０、３４６、３７０がアクセスしようとする外部メモリをアクセスする（９０７段階）。
【００５２】
図３を参照すると、２〜３プロトコル変換回路３４０は、モジュール１ ３２０とシステムバス３７０との間に接続され、プロトコル変換回路３４０とモジュール１ ３２０とは、バス３３６を介して互いに接続され、プロトコル変換回路３４０とシステムバス３７０とは、バス３３８を介して互いに接続される。
【００５３】
２〜３プロトコル変換回路３４０は、モジュール１ ３２０で使われる第２種プロトコルによる信号を、システムバス３７０で使われる第３種プロトコルによる信号に変換し、システムバス３７０で使われる第３種プロトコルによる信号をモジュール１ ３２０で使われる第２種プロトコルによる信号に変換する。
【００５４】
４〜３プロトコル変換回路３５０は、モジュール３ ３４６とシステムバス３７０との間に接続され、バス３４８は、４〜３プロトコル変換回路３５０とモジュール３ ３４６とを互いに接続し、バス３５２は、４〜３プロトコル変換回路３５０とシステムバス３７０とを互いに接続する。
【００５５】
４〜３プロトコル変換回路３５０は、モジュール３ ３４６で使われる第４種プロトコルによる信号を、システムバス３７０で使われる第３種プロトコルによる信号に変換し、システムバス３７０で使われる第３種プロトコルによる信号を、モジュール３ ３４６で使われる第４種プロトコルによる信号に変換する。
【００５６】
１〜３プロトコル変換回路３６４は、モジュール２ ３６０とシステムバス ３７０との間に接続され、バス３５８は、メモリコントローラ３１０の第４ポート３１８とモジュール２ ３６０とを互いに接続し、バス３６６は、１〜３プロトコル変換回路３６４とシステムバス３７０とを互いに接続する。
【００５７】
１〜３プロトコル変換回路３６４は、モジュール２ ３６０で使われる第１種プロトコルによる信号を、システムバス３７０で使われる第３種プロトコルによる信号に変換し、システムバス３７０で使われる第３種プロトコルによる信号を、モジュール２ ３６０で使われる第１種プロトコルによる信号に変換する。
【００５８】
システムバス３７０は、オン・チップバスである。しかし、システムバス３７０は、オン・チップバスに限定されるものではない。システムバス３７０は、ＯＣＰ（Ｏｐｅｎ Ｃｏｒｅ Ｐｒｏｔｏｃｏｌ）を使用するか、またはＡＭＢＡプロトコルを使用できる。しかし、システムバス３７０が使用できるプロトコルは、ＯＣＰまたはＡＭＢＡプロトコルに限定されるものではない。
【００５９】
したがって、本発明による少なくとも一つのプロトコル変換仲裁回路を備えるシステムのメモリコントローラ３１０は、相異なるプロトコルを使用する複数個のモジュール３２０、３４６、３６０を同時に支援でき、複数個のモジュール３２０、３４６、３６０のそれぞれは、対応するポート３１２、３１４、３１８を介して外部メモリに接近できるので、システム３００の全体的な性能が改善される効果を奏する。
【００６０】
また、各モジュール３２０、３４６、３６０が支援するプロトコルが、メモリコントローラ３１０が支援するプロトコルと相異なる場合でも、各モジュール３２０、３４６、３６０の設計を修正せずに、各モジュール３２０、３４６、３６０をシステム３００に使うことができるので、各モジュール３２０、３４６、３６０を再使用できる効果を奏する。
【００６１】
図４は、本発明の他の実施例による一つのプロトコル変換仲裁回路が、同一のプロトコルを使用する複数個のモジュール４２０−１ないし４２０−Ｎ（ここで、Ｎは自然数）と接続される構造を有するシステムのブロック図を示す。
図４を参照すると、システムは、メモリコントローラ３１０、複数個のプロトコル変換仲裁回路４２４−１、４２４−２、複数個のモジュール４２０−１ないし４２０−Ｎ、４４８、４６２、複数個のプロトコル変換回路４３８−１ないし４３８−Ｎ、４６６、システムバス３７０及び複数個のバスを備える。このシステムは、半導体チップで実現できる。
【００６２】
メモリコントローラ３１０は、複数個のポート４１２−１ないし４１２−Ｎ、４１４、４１６、４１８を備え、各モジュール４２０−１ないし４２０−Ｎ、４４８、４６２とシステムバス３７０に接続された少なくとも一つのモジュール（図示せず）とは、システムバス３７０を介して外部メモリに／からデータを書き込み／読み取る動作を制御する。
【００６３】
ここで、説明の便宜上、メモリコントローラ３１０とモジュール４６２とは、第１種プロトコルを使用し、複数個のモジュール４２０−１ないし４２０−Ｎのそれぞれは、第２種プロトコルを使用し、モジュール４４８とシステムバス３７０とは、第３種プロトコルを使用すると仮定する。
【００６４】
同一のプロトコルを使用する複数個のモジュール４２０−１ないし４２０−Ｎのそれぞれは、対応するバス４２２−１ないし４２２−Ｎを介してプロトコル変換仲裁回路４２４−１の対応する左側ポート（図示せず）に接続される。また、プロトコル変換仲裁回路４２４−１の右側ポート（図示せず）は、対応するバス４２３−１ないし４２３−Ｎを介して対応するポート４１２−１ないし４１２−Ｎに接続される。
【００６５】
したがって、プロトコル変換仲裁回路４２４−１は、接続されるモジュールの数だけの左側ポートと右側ポートとを備える。また、プロトコル変換仲裁回路４２４−１は、接続されるモジュールの数だけのプロトコル変換回路４２６−１ないし４２６−Ｎ、及び少なくとも一つの仲裁器４２８を備える。
【００６６】
図７は、本発明の第２実施例によるプロトコル変換仲裁回路のブロック図を示す。図７を参照すると、プロトコル変換仲裁回路４２４−１は、プロトコル変換回路ブロック４２６、仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２と分配器４３４を備える。
【００６７】
プロトコル変換回路ブロック４２６は、接続されるモジュールの数だけのプロトコル変換回路４２６−１ないし４２６−Ｎを備え、プロトコル変換回路４２６−１ないし４２６−Ｎのそれぞれは、対応するマスタが使用するプロトコルによる信号を受信し、受信された信号を対応するスレーブのシステムバスで使われるプロトコルによる信号に変換する。
【００６８】
ここで、前記各プロトコル変換回路４２６−１ないし４２６−Ｎは、仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２及び分配器４３４と互いに作動を行うが、図７では、説明の便宜のために、プロトコル変換回路ブロック４２６が仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２及び分配器４３４と作動を行うように示されている。
【００６９】
仲裁器４２８は、プロトコル変換回路ブロック４２６から出力された制御信号ＣＮＴＲ１に基づいて、コントローラ４３０を制御するための制御信号ＣＴＲ１ないしＣＴＲ４を出力する。
【００７０】
コントローラ４３０は、プロトコル変換回路ブロック４２６、即ち各プロトコル変換回路４２６−１ないし４２６−Ｎから出力される制御信号ＣＮＴＲ１と、仲裁器４２８から出力される制御信号ＣＴＲ１ないしＣＴＲ４とに基づいて、アドレスデコーダ４３２を制御するための制御信号ＣＮＴＲ５と、分配器４３４を制御するための制御信号ＣＮＴＲ４とを発生させる。コントローラ４３０は、データ伝送制御器４３０１、アドレスデコーダ制御器４３０２、応答制御器４３０３、及びポート分配制御器４３０４を備える。
【００７１】
データ伝送制御器４３０１は、プロトコル変換回路ブロック４２６から出力される制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号と、仲裁器４２８から出力される制御信号ＣＴＲ１とに応答して、各プロトコル変換回路４２６−１ないし４２６−Ｎから出力されるデータＤＡＴＡを分配器４３４へ伝送するか、または分配器４３４から入力されるデータＤＡＴＡを、対応するプロトコル変換回路４２６−１ないし４２６−Ｎへ伝送する。
【００７２】
アドレスデコーダ制御器４３０２は、制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号と、仲裁器４２８から出力される制御信号ＣＴＲ２とに応答して、アドレスデコーダ４３２の動作を制御するための制御信号ＣＮＴＲ５をアドレスデコーダ４３２に出力する。
【００７３】
応答制御器４３０３は、プロトコル変換回路ブロック４２６から出力される制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号と、仲裁器４２８から出力される制御信号ＣＴＲ３とに応答するか、または分配器４３４から出力される制御信号ＣＮＴＲ３のうち対応する少なくとも一つの制御信号に応答して、アクセスされる外部メモリの状態についての情報、またはデータＤＡＴＡの伝送状態に関連した情報ＲＥＳをプロトコル変換回路ブロック４２６へ伝送する。また、応答制御器４３０３は、プロトコル変換回路ブロック４２６の動作を制御するための制御信号ＣＮＴＲ２を発生させる。
【００７４】
ポート分配制御器４３０４は、プロトコル変換回路ブロック４２６から出力される制御信号ＣＮＴＲ１のうち対応する少なくとも一つの制御信号と、仲裁器４２８から出力される制御信号ＣＴＲ４とに基づいて、メモリコントローラ３１０のポートの動作状態を制御するための制御信号ＣＮＴＲ４を分配器４３４に出力する。即ち、ポート分配制御器４３０４は、対応するマスタが使用する対応するポートを指定する機能を行う。
【００７５】
アドレスデコーダ４３２は、コントローラ４３０から出力される制御信号ＣＮＴＲ５に応答して、プロトコル変換回路ブロック４２６から出力されるアドレスＡＤＤをデコーディングし、その結果として、仲裁器４２８によって優先順位が割り当てられたマスタがアクセスしようとする外部メモリについての情報ＭＳＥＬを分配器４３４に出力する。
【００７６】
アドレスデコーダ４３２は、デコーダ４３２１とメモリ選択器４３２２とを備える。デコーダ４３２１は、コントローラ４３０から出力される制御信号ＣＮＴＲ５のうち対応する少なくとも一つの制御信号に応答して、プロトコル変換回路ブロック４２６から出力されるアドレスＡＤＤをデコーディングし、その結果をメモリ選択器４３２２に出力する。
【００７７】
メモリ選択器４３２２は、コントローラ４３０から出力される制御信号ＣＮＴＲ５のうち対応する少なくとも一つの制御信号と、デコーダ４３２１の出力信号とに基づいて、仲裁器４２８によって優先順位が割り当てられたマスタがアクセスしようとする外部メモリについての情報ＭＳＥＬを分配器４３２２に出力する。外部メモリについての情報ＭＳＥＬ、例えばビット数は、外部メモリの個数によって決定される。
【００７８】
分配器４３４は、プロトコル変換回路ブロック４２６から出力されるアドレスＡＤＤ、コントローラ４３０から出力されるデータＤＡＴＡと制御信号ＣＮＴＲ４、及びアドレスデコーダ４３２から出力される外部メモリについての情報ＭＳＥＬを受信し、それらＡＤＤ、ＤＡＴＡ、ＣＮＴＲ４、ＭＳＥＬに基づいて、スレーブの対応するポートに外部メモリをアクセスするための信号を伝送する。したがって、分配器４３４は、スイッチング機能及び／またはマルチプレクシング機能を有する。
【００７９】
プロトコル変換回路ブロック４２６から出力された信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤは、コントローラ３２８、アドレスデコーダ３３０及び分配器３３２の相互作動によってスレーブで使われるプロトコルによる信号に変換され、変換された信号は、対応するバス３３４とポート３１２とを介して前記スレーブ３１０に入力される。したがって、スレーブは、プロトコル変換仲裁回路ブロック４２６から出力される信号に基づいて、マスタがアクセスしようとする外部メモリをアクセスする。
【００８０】
図４及び図７を参照すれば、プロトコル変換仲裁回路４２４−１は、マスタ（例えば、モジュール１ ４２０−１）が使用する第２種プロトコルによる信号を、バス４２２−１を介して受信し、受信された信号を、プロトコル変換回路４２６−１を利用してスレーブ（例えば、メモリコントローラ３１０）のシステムバス（図示せず）で使われる第１種プロトコルによる信号に変換し、変換された信号を仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２、分配器４３４を利用して、スレーブ３１０で使われる第１種プロトコルによる信号に再び変換し、変換された信号をメモリコントローラ３１０の対応するポート（例えば、４１２−１）を介してメモリコントローラ３１０に出力する。
【００８１】
また、プロトコル変換仲裁回路４２４−１は、マスタ４２０−１がアクセスした外部メモリから出力されたデータを、対応する第１ポート４１２−１とバス４２３−１を介して受信し、受信されたデータを、コントローラ４３０、アドレスデコーダ４３２、分配器４３４を利用して、メモリコントローラ３１０のシステムバス（図示せず）で使われる第１種プロトコルによる信号に変換し、変換された信号を、プロトコル変換回路４２６−１を利用してモジュール１ ４２０−１で使われる第２種プロトコルによる信号に再び変換し、再び変換された信号を、バス４２２−１を介してモジュール１ ４２０−１へ伝送する。
【００８２】
そして、プロトコル変換仲裁回路４２４−１は、マスタ（例えば、モジュールＮ ４２０−Ｎ）が使用する第２種プロトコルによる信号を、バス４２２−Ｎを介して受信し、受信された信号を、プロトコル変換回路４２６−Ｎを利用してスレーブ（例えば、メモリコントローラ３１０）のシステムバス（図示せず）で使われる第１種プロトコルによる信号に変換し、変換された信号を仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２、分配器４３４を利用して、スレーブ３１０で使われる第１種プロトコルによる信号に再び変換し、再び変換された信号を、メモリコントローラ３１０の対応するポート（例えば、４１２−Ｎ）を介してメモリコントローラ３１０に出力する。
【００８３】
また、プロトコル変換仲裁回路４２４−１は、マスタ４２０−Ｎがアクセスした外部メモリから出力されたデータを、対応する第Ｎポート４１２−Ｎとバス４２３−Ｎとを介して受信し、受信されたデータを、コントローラ４３０、アドレスデコーダ４３２、分配器４３４を利用してメモリコントローラ３１０のシステムバス（図示せず）で使われる第２種プロトコルによる信号に変換し、変換された信号を、プロトコル変換回路４２６−Ｎを利用してモジュールＮ ４２０−Ｎで使われる第２種プロトコルによる信号に再び変換し、再び変換された信号を、バス４２２−Ｎを介してモジュール１ ４２０−Ｎへ伝送する。
【００８４】
プロトコル変換仲裁回路４２４−２の第１ポートと、メモリコントローラ３１０のＮ＋１番目ポート４１６とは、バス４５６を介して互いに接続され、第２ポートとメモリコントローラ３１０のＮ＋２番目ポート４１８とは、バス４５４を介して互いに接続され、第３ポートとシステムバス３７０とは、バス４５８を介して互いに接続され、第４ポートとモジュール４４８とは、バス４５２を介して互いに接続される。
【００８５】
プロトコル変換仲裁回路４２４−２の動作は、プロトコル変換仲裁回路４２４−１の動作と実質的に同一である。即ち、プロトコル変換仲裁回路４２４−２は、第１種プロトコルによる信号を受信し、受信された信号を、上述したような二段階の変換過程を通じてシステムバス３７０で使われる第３種プロトコルによる信号に変換し、変換された信号をシステムバス３７０へ伝送する。
【００８６】
そして、プロトコル変換仲裁回路４２４−２は、システムバス３７０で使われる第３種プロトコルによる信号を受信し、上述したような二段階の変換過程を通じてメモリコントローラ３１０で使われる第１種プロトコルによる信号に変換し、変換された信号を、対応するポート４１６、４１８を介してメモリコントローラ３１０へ伝送する。
【００８７】
また、プロトコル変換仲裁回路４２４−２は、メモリコントローラ３１０で使われる第１種プロトコルによる信号を、モジュール４４８で使われる第３種プロトコルによる信号に変換し、モジュール４４８で使われる第３種プロトコルによる信号を、メモリコントローラ３１０で使われる第１種プロトコルによる信号に変換する。したがって、本発明によるプロトコル変換仲裁回路４２４−２は、プロトコルを変換する機能、及びモジュール４４８とシステムバス３７０とから出力された信号を仲裁する機能を同時に有する。
【００８８】
２〜３プロトコル変換回路４３８−１は、対応するバス４３６、４４０を介してモジュール１ ４２０−１とシステムバス３７０との間に接続され、第２種プロトコルによる信号を第３種プロトコルによる信号に変換するか、または前記第３種プロトコルによる信号を前記第２種プロトコルによる信号に変換する。
【００８９】
また、２〜３プロトコル変換回路４３８−Ｎは、対応するバス４４２、４４６を介してモジュールＮ ４２０−Ｎとシステムバス３７０との間に接続され、第２種プロトコルによる信号を第３種プロトコルによる信号に変換するか、または第３種プロトコルによる信号を第２種プロトコルによる信号に変換する。
【００９０】
第３種プロトコルを使用するモジュール４４８は、対応するバス４５０、４５２を介してシステムバス３７０とプロトコル変換仲裁回路４２４−２との間に接続される。
第１種プロトコルを使用するモジュール４６２は、対応するバス４６０、４６４を介してメモリコントローラ３１０のＮ＋３番目ポート４１４と、１〜３プロトコル変換回路４６６との間に接続される。
【００９１】
１〜３プロトコル変換回路４６６は、対応するバス４６４、４６８を介してモジュール４２０−１とシステムバス３７０との間に接続され、第１種プロトコルによる信号を第３種プロトコルによる信号に変換するか、または第３種プロトコルによる信号を第１種プロトコルによる信号に変換する。
【００９２】
したがって、本発明によるプロトコル変換仲裁回路を備えるシステムの各モジュール４２０−１ないし４２０−Ｎ、４４８、４６２は、システムバス３７０を利用せずに、外部メモリに接近できる。したがって、前記システムの全体的な動作は向上する。
【００９３】
図５は、本発明の他の実施例による一つのプロトコル変換仲裁回路が、相異なるプロトコルを使用する複数個のモジュールと接続される構造を有するシステムのブロック図を示す。
【００９４】
図５を参照すると、本発明によるシステムは、メモリコントローラ３１０、システムバス３７０、プロトコル変換仲裁回路４２４−１、複数個のモジュール５１６−１ないし５１６−Ｎ、５３０、複数個のプロトコル変換回路５２２−１ないし５２２−Ｎ、５３４、及び複数個のバスを備える。このシステムは、半導体チップで実現できる。
【００９５】
メモリコントローラ３１０は、複数個のポート５１２−１ないし５１２−Ｎ、５１４を備える。メモリコントローラ３１０とモジュール５３０とは、第１種プロトコルを使用し、複数個のモジュール５１６−１ないし５１６−Ｎのそれぞれは、相異なるプロトコルを使用し、システムバス３７０は、第３種プロトコルを使用すると仮定する。
【００９６】
複数個のモジュール５１６−１ないし５１６−Ｎのそれぞれは、対応するバス５１８−１ないし５１８−Ｎを介してプロトコル変換仲裁回路４２４−１の左側ポート（図示せず）のそれぞれに接続され、メモリコントローラ３１０の各ポート５１２−１ないし５１２−Ｎは、対応するバス５２６−１ないし５２６−Ｎを介してプロトコル変換仲裁回路４２４−１の右側ポート（図示せず）のそれぞれに接続される。
【００９７】
図１０は、図４と図５とに示されたプロトコル変換仲裁回路の動作を説明するためのフローチャートである。
【００９８】
図５、図７及び図１０を参照すると、プロトコル変換仲裁回路４２４−１の各プロトコル変換回路４２６−１ないし４２６−Ｎは、対応する各マスタ５１６−１ないし５１６−Ｎで使われるプロトコルによる信号を受信する（１００１段階）。
【００９９】
各プロトコル変換回路４２６−１ないし４２６−Ｎは、受信された信号をスレーブ（例えば、メモリコントローラ３１０）のシステムバス（図示せず）で使われるプロトコルによる信号に変換し、変換された信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤを出力する（１００３段階）。
【０１００】
各プロトコル変換回路４２６−１ないし４２６−Ｎから出力された信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤは、仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２及び分配器４３４の相互作動、即ち制御、仲裁、デコーディングを介して、スレーブ３１０で使われる第１種プロトコルによる信号に変換され、変換された信号は、対応するポートを介してスレーブ３１０に入力される（１００５段階）。
【０１０１】
図１１は、複数個のマスタが本発明の第２実施例によるプロトコル変換仲裁回路を介して、外部メモリをアクセスする方法を説明するためのフローチャートである。図５、図７及び図１１を参照して、マスタ５１６−１がＳＲＡＭ０をアクセスする動作を説明する。
【０１０２】
外部メモリは、ＳＲＡＭ０、ＳＲＡＭ１、ＳＤＲＡＭ０、ＳＤＲＡＭ１で構成され、ＳＲＡＭ０は、０ｘ００００００００ないし０ｘ１ＦＦＦＦＦＦＦで表示されるアドレス領域を使用し、ＳＲＡＭ１は、０ｘ２０００００００ないし０ｘ３ＦＦＦＦＦＦＦで表示されるアドレス領域を使用し、ＳＤＲＡＭ０は、０ｘ４０００００００ないし０ｘ５ＦＦＦＦＦＦＦで表示されるアドレス領域を使用し、ＳＤＲＡＭ１は、０ｘ６０００００００ないし０ｘ７ＦＦＦＦＦＦＦで表示されるアドレス領域を使用し、仲裁器４２８は、マスタ５１６−１に優先順位を付与し、第１マスタ５１６−１は、０ｘ１０００００００というアドレスを出力すると仮定する。
【０１０３】
各マスタ５１６−１ないし５１６−Ｎ、及びシステムバス３７０に接続された少なくとも一つのマスタ（図示せず）は、対応する外部メモリをアクセスするために、各マスタが使用するプロトコルによる信号を、対応するバスを介してプロトコル変換仲裁回路４２４−１に出力する（１１０１段階）。
【０１０４】
対応する各プロトコル変換回路４２６−１ないし４２６−Ｎは、受信された信号をスレーブ３１０のシステムバス（図示せず）が使用する第１種プロトコルによる信号に変換し、変換された信号ＣＮＴＲ１、ＤＡＴＡ、ＡＤＤを出力する（１１０３段階）。
仲裁器４２８は、各プロトコル変換回路４２６−１ないし４２６−Ｎから出力された信号ＣＮＴＲ１を受信し、受信された信号ＣＮＴＲ１に基づいて第１マスタ５１６−１にスレーブ３１０を使用できる優先順位を付与する。
【０１０５】
アドレスデコーダ４３２は、コントローラ４３０から出力される制御信号ＣＮＴＲ５と、第１マスタ５１６−１から出力されるアドレスＡＤＤ＝０ｘ１０００００００とに基づいて、第１マスタ５１６−１がＳＲＡＭ０をアクセスできる情報ＭＳＥＬを分配器４３４へ伝送する。
【０１０６】
分配器４３４は、コントローラ４３０から出力される各種の信号ＤＡＴＡ、ＣＮＴＲ４、ＭＳＥＬに基づいて、メモリコントローラ３１０の対応するポート（例えば、５１２−１）を介して、ＳＲＡＭ０をアクセスできる各種の信号をメモリコントローラ３１０へ伝送する。
【０１０７】
即ち、仲裁器４２８、コントローラ４３０、アドレスデコーダ４３２、分配器４３４は、制御信号ＣＮＴＲ１、ＣＮＴＲ４、ＣＮＴＲ５、ＭＳＥＬに基づいて各プロトコル変換回路４２６−１ないし４２６−Ｎから出力された信号を仲裁し、仲裁結果に基づいてアドレスＡＤＤをデコーディングし、スレーブ３１０で使われるプロトコルによる信号を対応するポートを介してスレーブ３１０へ伝送する（１１０５段階）。
【０１０８】
スレーブ３１０は、本発明によるプロトコル変換仲裁回路によって変換されたプロトコルによる信号に基づいて、対応する第１マスタ５１６−１がアクセスしようとする外部メモリＳＲＡＭ０をアクセスできる（１１０７段階）。したがって、第１マスタ５１６−１は、システムバス３７０を使用せずに、スレーブ３１０を介してアクセスしようとする外部メモリを直接アクセスできる。
【０１０９】
したがって、本発明の実施例によるシステムのシステムバス３７０の負担は減少するので、システムの全体的な性能が改善される。また、相異なるプロトコルを使用する（または支援する）少なくとも一つのモジュールを一つのシステムで使用しようとする場合でも、少なくとも一つのモジュールについての設計変更や設計の修正なしに、少なくとも一つのモジュールをシステムに直ちに使用できるという長所がある。
【０１１０】
本発明は図面に示した一実施例を参考として説明されたが、これは例示的なものに過ぎず、当業者であれば、これから多様な変形及び均等な他の実施例が可能であるという点を理解できるであろう。従って、本発明の真の技術的な保護範囲は、特許請求の範囲の技術的思想により決まらなければならない。
【産業上の利用可能性】
【０１１１】
本発明は、データプロセシング時間が速く、かつ高性能が要求されるシステムに利用できる。
【図面の簡単な説明】
【０１１２】
【図１】従来の一つのポートのみを有するメモリコントローラを備えるシステムを示すブロック図である。
【図２】従来の同種のプロトコルのみを支援する多重ポートメモリコントローラを備えるシステムを示すブロック図である。
【図３】本発明の一実施例による一つのプロトコル変換仲裁回路が、一つのモジュールと接続される構造を有するシステムを示すブロック図である。
【図４】本発明の他の実施例による一つのプロトコル変換仲裁回路が、同一のプロトコルを使用する複数個のモジュールと接続される構造を有するシステムを示すブロック図である。
【図５】本発明の他の実施例による一つのプロトコル変換仲裁回路が、相異なるプロトコルを使用する複数個のモジュールと接続される構造を有するシステムを示すブロック図である。
【図６】本発明の第１実施例によるプロトコル変換仲裁回路を示すブロック図である。
【図７】本発明の第２実施例によるプロトコル変換仲裁回路を示すブロック図である。
【図８】図３に示されたプロトコル変換仲裁回路の動作を説明するためのフローチャートである。
【図９】マスタが本発明の第１実施例によるプロトコル変換仲裁回路を介して、外部メモリをアクセスする方法を説明するためのフローチャートである。
【図１０】図４と図５とに示されたプロトコル変換仲裁回路の動作を説明するためのフローチャートである。
【図１１】複数個のマスタが本発明の第２実施例によるプロトコル変換仲裁回路を介して、外部メモリをアクセスする方法を説明するためのフローチャートである。
【符号の説明】
【０１１３】
３１０    メモリコントローラ
３７０    システムバス
４２４−１    プロトコル変換仲裁回路
４２６−１，４２６−Ｎ，５２２−１，５２２−Ｎ，５３４    プロトコル変換回路
４２８    仲裁器
４３０    コントローラ
４３２    アドレスデコーダ
４３４    分配器
５１２−１，５１２−Ｎ，５１４    ポート
５１６−１，５１６−Ｎ，５３０    モジュール
５１８−１，５１８−Ｎ，５２６−１，５２６−Ｎ    バス
【図１】
2005244979.tif 000003
【図２】
2005244979.tif 000004
【図３】
2005244979.tif 000005
【図４】
2005244979.tif 000006
【図５】
2005244979.tif 000007
【図６】
2005244979.tif 000008
【図７】
2005244979.tif 000009
【図８】
2005244979.tif 000010
【図９】
2005244979.tif 000011
【図１０】
2005244979.tif 000012
【図１１】
2005244979.tif 000013