(57)【要約】  外部デバイスとインターフェースする処理システムは、プロセッサ、メモリ、及び制御器を有する。メモリは、外部デバイスについてのアクセス・プロトコル情報を与えるテンプレートを格納する。外部デバイスがアクセスされることになるとき、メモリに格納されているオペレーティング・システムは、プロセッサに外部デバイスへのアクセスを実行するよう命令する。プロセッサは、外部デバイスについての情報をシステム・バスのアドレス部分に置き、当該情報は、システム制御器により受け取られ、解釈される。次いで、制御器は、受け取られた情報により指示された外部デバイス用テンプレートを検索する。テンプレートを検索した後で、制御器は、テンプレートが指示した要領で情報を、外部デバイスがまた結合されている外部インターフェース・バス上に出力する。次いで、外部デバイスは、制御器が外部インターフェース・バス上に置いた情報に従って応答する。
2007528050.tif 000002
【特許請求の範囲】
【請求項１】
システム・バスに結合されたプロセッサを有する処理システムにおいて装置を動作させる方法であって、
前記プロセッサに前記装置と共に動作するよう命令するステップと、
情報を前記システム・バス上に置くステップと、
前記情報をメモリ・マップ制御器インターフェースを用いて検索するステップと、
前記情報に応答した前記メモリ・マップ制御器インターフェースを用いて、前記装置のテンプレートにアクセスするステップと、
前記情報及びテンプレートに従って装置情報を外部インターフェース上に置くステップと、
前記装置を前記装置情報に従って動作させるステップと
を備える方法。
【請求項２】
前記装置が、ＬＣＤ制御器、コプロセッサ、周辺装置、グラフィック・アクセラレータ、イメージング装置、及び単純にアドレス可能なレジスタ又はメモリを有する任意の周辺装置のうちのいずれかである請求項１記載の方法。
【請求項３】
前記システム・バスが、アドレス・バスを含む請求項１記載の方法。
【請求項４】
前記情報が、前記装置の動作方法を備える請求項１記載の方法。
【請求項５】
前記動作方法が、読み出し及び書き込みから成るグループから選択される請求項４記載の方法。
【請求項６】
前記情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項１記載の方法。
【請求項７】
前記テンプレートが、前記システム・バスに結合されたメモリに格納された複数のテンプレートから選択され、
更に、少なくとも１つのテンプレートが、アクセス／装置のタイプ毎ベースで任意である
請求項１記載の方法。
【請求項８】
アンテナと、
前記アンテナに結合されたＲＦプロセッサと、
前記ＲＦプロセッサ及びモデム・バスに結合されたベースバンド・モデム・プロセッサと、
前記システム・バス及び前記ベースバンド・モデム・プロセッサに結合されたプロセッサと、
前記装置に関する複数のテンプレートを格納するメモリと、
前記メモリ、前記モデム・バス、及び前記システム・バスに結合されたマルチプレクサと、
前記装置についての情報を受け取り、テンプレートを前記メモリから検索し、且つ前記の受け取られた情報及び前記の検索されたテンプレートに従って装置情報を外部インターフェース上に与えるメモリ・マップ制御器インターフェースと、
前記外部インターフェースに結合され、前記装置情報に応答するディスプレイ制御器と
を備える無線システム。
【請求項９】
前記の外部インターフェース・バスに結合された外部装置を更に備える請求項８記載の無線システム。
【請求項１０】
前記情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項８記載の無線システム。
【請求項１１】
前記システム・バスが、情報を搬送するアドレス・バスを備える請求項８記載の無線システム。
【請求項１２】
装置を外部インターフェース・バスを介して制御する処理システムであって、
前記システム・バスに結合されたプロセッサと、
前記システム・バスに結合され、前記装置の動作特性を記述するためのテンプレートを格納するメモリと、
前記システム・バス、及び外部インターフェース・バスに結合されたメモリ・マップ制御器インターフェースと
を備える処理システム。
【請求項１３】
前記メモリ・マップ制御器インターフェースが更に、前記プロセッサから前記システム・バスを介して情報を受け取り、且つ前記メモリから前記システム・バスを介してテンプレートを受け取るように特徴付けられる請求項１２記載の処理システム。
【請求項１４】
前記の受け取られた情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項１３記載の処理システム。
【請求項１５】
前記テンプレートが、前記装置の動作特性についてのデータを備える請求項１４記載の処理システム。
【請求項１６】
前記テンプレートが、前記装置のアクセス・プロトコルを備える請求項１３記載の処理システム。
【請求項１７】
前記テンプレートのうちの少なくとも１つのテンプレートが、ディスプレイ制御器用である請求項１３記載の処理システム。
【請求項１８】
前記システム・バスが、アドレス・バスを備える請求項１３記載の処理システム。
【請求項１９】
システム・バスに結合されたプロセッサと、
前記システム・バスに結合されて、複数のテンプレートを格納するメモリと、
前記システム・バス及び外部インターフェース・バスに結合された制御器手段であって、複数のテンプレートのうちの１つのテンプレートを検索し、且つ前記の検索されたテンプレートと整合性のある要領で、前記プロセッサが与える装置に関する情報を前記外部インターフェース・バスに与えることにより、前記装置に関する情報に応答する制御器手段と
を備える処理システム。
【請求項２０】
各テンプレートが、装置のタイプと、当該タイプの装置に関する動作モードとに対応する請求項１９記載の処理システム。
【請求項２１】
前記メモリが、アクセスされるべき装置を識別するオペレーティング・システムを格納する請求項２０記載の処理システム。
【請求項２２】
前記プロセッサが前記制御器手段に与える前記情報が、動作モードを指定する請求項２１記載の処理システム。
【請求項２３】
前記複数のテンプレートのうちの少なくとも１つのテンプレートが、ディスプレイ制御器用である請求項２２記載の処理システム。
【請求項２４】
前記プロセッサが与える前記情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項１９記載の処理システム。
【請求項２５】
前記テンプレートが、前記装置のアクセス・プロトコルを備える請求項１９記載の処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
［発明の分野］
本発明は、一般的に、プロセッサ・ベースのシステムに関し、より詳細には、メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステムに関する。
【０００２】
［関連技術］
現在商業的に入手可能なスマートフォーン（ｓｍａｒｔ  ｐｈｏｎｅｓ）及びハンドヘルド形装置は、一般的に、ホスト・システム及びスマート・ディスプレイ・パネル（ｓｍａｒｔ  ｄｉｓｐｌａｙ  ｐａｎｅｌ）を装備している。スマート・ディスプレイ・パネルは、典型的には、統合化されたディスプレイ制御器及びオンデバイス・メモリ（ｏｎ−ｄｅｖｉｃｅ  ｍｅｍｏｒｙ）を含む。そのような統合化されたディスプレイ制御器は、通常、ホスト・システムと専用ディスプレイ・ポートを介して、又はメイン・メモリへの外部インターフェース（ＥＩＭ）のような標準バス・インターフェース・ユニットを介してインターフェースする。ディスプレイ・パネルはまた、１又は複数のオンチップ・ビデオ及び／又はディスプレイ・バッファを有し、当該１又は複数のオンチップ・ビデオ及び／又はディスプレイ・バッファは、ホスト・システム・メモリ・マップに対して外部にあり、即ち、ホスト・システム・メモリ・マップ内に直接に配置されていない。そのような１又は複数のバッファを用いて、更新し且つスクリーン・ディスプレイをリフレッシュする前に及び／又はイメージ及びグラフィック・レンダリングのためディスプレイ・データを格納する。
【０００３】
しかしながら、スマートフォーン及びハンドヘルド形装置の標準バス・インターフェース・ユニットの１つの問題は、ＥＩＭがアドレス・バスのため多数のピン又はライン、例えば、約２２のオーダのラインを必要とすることである。多数のラインは、一般的に、そのようなハンドヘルド形装置又はスマートフォーンでの使用に法外な程高いコストとなる。その上、フリップフォーン型（折り畳み式携帯電話器）のモバイル・デバイスの場合、キャパシタンス及びバス・ローディングはまた、他の標準メモリ・デバイスが同じインターフェースを共用するので、タイミング及びバス帯域幅問題を引き起こすであろう。
【０００４】
別の選択は、専用ディスプレイ・ポートを設けることである。この場合、外部デバイス・バッファへのアクセスは、間接的方法で達成される。アプリケーションがホストにスマート・ディスプレイ又はグラフィックス・アクセラレータに対するアクセスを獲得することを要求するとき、ＭＣＵは、一連の複雑なトランザクションを実行して、現実の転送の前に装置（デバイス）と通信することを確立しなければならない。例えば、ホスト・プロセッサは、コマンドをコマンド命令により外部装置に専用ディスプレイ・インターフェースを介して送らなければならない。次いで、専用ディスプレイ・インターフェースは、必ず復号されたメッセージを外部装置に中継し又は送り、幾らかのセットアップ時間を許し、そして多分、現実のデータ転送を再開する前に、確認応答を待つ。これらのトランザクションの全てが、専用データ・バスを介して、高性能のＭＣＵホストと比べて低いクロック速度で実行されることに注目されたい。そのような過度のＭＣＵ介入は、ＭＣＵの負荷及びバス帯域幅要件を増大させ、従って、システム性能及び電力消費に対して負の影響を生じるであろう。
【０００５】
別の方法は、フルのハードワイヤード・インターフェースを用いるものであるが、しかし、この固定のハードウエア方法は、ダイ寸法への著しい影響を有し、そして数個の特定の外部装置のみをサポートする。
【０００６】
従って、上記で説明した当該技術での問題を克服する改善された方法及びシステムに対する必要性が存在する。
【０００７】
［概要］
本発明の一実施形態に従った、システムに結合されたプロセッサを有する処理システムにおいて当該プロセッサに対して外部の装置を動作させる方法は、当該プロセッサに当該外部の装置と共に動作するよう命令するステップを含む。プロセッサが外部の装置と共に動作するための命令に応答して、当該プロセッサは、情報をシステム・バス上に置く。続いて、メモリ・マップ制御器インターフェースが、当該情報を検索する。当該情報に応答して、メモリ・マップ制御器インターフェースは、上記外部の装置のテンプレートにアクセスする。当該テンプレートは、システム・バスに結合されたメモリに格納されている複数のテンプレートから選択される。次いで、メモリ・マップ制御器インターフェースは、上記情報及び上記テンプレートに従って命令を外部インターフェース・バス上に置く。その結果、上記装置は、上記命令に従って動作する。
【０００８】
本発明は、添付図面により一例として説明され、そしてその添付図面により限定されるものではない。なお、類似の参照番号は、類似の構成要素を示す。
【０００９】
当業者は、図面の中の構成要素が単純化及び明瞭化して描かれており、必ずしも一定の比例に縮小又は拡大されて描かれていないことを認めるであろう。例えば、図面の中の構成要素の一部の寸法は、本発明の実施形態の理解を向上させるのを助けるため他の構成要素と比べて誇張されている場合がある。
【００１０】
［詳細な説明］
本明細書で用いられているように、用語「バス」は、データ、アドレス、制御又はステータス（状態）のような１又はそれより多くの様々な種類の情報を転送するため用いられ得る複数の信号又は導体を意味するため用いられている。用語「アサート」及び「ニゲート（否定する）」は、信号、ステータス・ビット、又は類似の装置をその論理的真又は論理的偽のそれぞれにさせることを意味する場合に用いられる。論理的真状態が論理レベル「１」である場合、論理的偽状態は、論理レベル「０」である。そして、論理的真状態が論理レベル「０」である場合、論理的偽状態は、論理レベル「１」である。
【００１１】
四角括弧は、バスの導体、又は値のビット位置を示すため用いられる。例えば、「バス６０［０−７］」又は「バス６０の導体［０−７］」は、バス６０の８個の低位の導体を示し、そして「アドレス・ビット［０−７］又は「ＡＤＤＲＥＳＳ［０−７］」は、アドレス値の８個の低位ビットを示す。数字の前にある記号「＄」は、その数字が１６進又は１６進形式で表されることを示す。数字の前にある記号「％」は、その数字が２進又は２進形式で表されることを示す。
【００１２】
本発明の一実施形態に従って、メモリ・マップされないデバイス・バッファに対して直接アクセスする方法は、マイクロコントローラ・ユニットを構成するステップを含む。このマイクロコントローラ・ユニットを構成するステップは、本明細書で説明されるように、柔軟なテンプレート・ベースのアドレス及びコマンド変換機構を有するメモリ・マップされた制御インターフェースを用いるステップを含む。
【００１３】
メモリ・マップされた制御インターフェース（ＭＭＣＩ）は、「ＭＣＵシステム」対「擬似ＭＣＵシステム」バス・インターフェースを含み、当該「ＭＣＵシステム」対「擬似ＭＣＵシステム」バス・インターフェースにおいては、コマンド及びアドレスが、データ・ストリーム中に埋め込まれている。ＭＣＵメモリ・アクセス・トランザクション要求が、ＭＭＣＩに到着したとき、ＭＭＣＩは、メモリ・トランザクション・アドレスを復号して、次の動作のうちの一部又は全てを実行する。当該次の動作とは、（ａ）外部デバイスが１より多い場合メモリ・アクセスのため目標とされた外部デバイスを選択すること、（ｂ）各特定のアクセス・タイプに関してＭＣＵホストにより前にプログラムされている１又は複数の適切なアクセス・プロトコル・テンプレートをダウンロードすること、（ｃ）特に、ホスト・メモリ・トランザクション・アドレスから抽出される目標メモリ・アドレスをメッセージ構造の適切なフィールドに外部デバイスへの次の転送のため挿入すること、及び（ｄ）外部デバイス・メモリからの読み出しアクセス又は外部デバイス・メモリへの書き込みアクセスのうちの１つを含む実際のデータ転送を開始することである。
【００１４】
本発明の一実施形態に従って、ＭＭＣＩは、１つのインターフェースを与え、そのインターフェースにおいて、コマンド及びデータが、データ・ストリームに埋め込まれる。その上、ＭＭＣＩは、メッセージ・プロトコル（即ち、何のコマンド又はコマンドの何のシーケンスが実際のデータ転送の前後に外部デバイスへ送られることが必要とされるか、等々）を処理し又は操作する。更に、ＭＭＣＩは、アクセス・テンプレートを用いて、外部デバイスと通信するためのアクセス・プロトコルを発生する。
【００１５】
更に、本明細書で説明されるように、メモリ・マップ制御器インターフェースは、物理的インターフェースを含む。メモリ・マップ制御器インターフェースはまた、読み出し／書き込み及び制御信号を有するデータ・バス、又は単純に高速シリアル・インターフェースのような様々な形式を含むことができる。更にまた、一実施形態において、ＭＭＣＩは、或る一定のタイプの連続したアクセスのインスタンス、例えば、バースト読み出し／書き込みにおけるようなテンプレートのうちの複数のテンプレートを選択することをバイパスするよう構成されることができる。
【００１６】
ここで図１を参照すると、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリへの直接アクセスを有するシステム１０のブロック図が、示されている。システム１０は、マイクロコントローラ・ユニット（ＭＣＵ）１２、及び外部デバイス１４，１６，１８及び２０のうちの少なくとも１つ又はそれより多い外部デバイスを含む。ＭＣＵ１２は、プロセッサ２２、及び当該プロセッサ２２にシステム・バス２６を介して結合されたメイン・メモリ２４を含む。ＭＣＵ１２はまた、システム・バス２６を介してプロセッサ２２及びメイン・メモリ２４に結合されたメモリ・マップされた制御インターフェース（ＭＭＣＩ）２８を含む。本明細書の以下で更に説明されるように、ＭＭＣＩ２８の出力は、外部デバイス１４，１６，１８及び２０に外部インターフェース・バス３０を介して結合する。ＭＭＣＩ２８が無いときには、外部デバイス１４，１６，１８及び２０は、ＭＭＣＩ２８に対して外部にあるメモリを含むデバイスであり、そこにおいて更に、これらのデバイスは、ＭＣＵ１２に対してメモリ・マップされないデバイスを含む。
【００１７】
外部デバイス１４は、ディスプレイ制御器又はグラフィックス・アクセラレータを含み得る。例えば、外部デバイス１４は、ホスト・インターフェース３２、ＣＰＵ３４、ビデオ・メモリ３６及びバス３８を有するディスプレイ制御器を含み得る。バス３８は、ホスト・インターフェース３２、ＣＰＵ３４及びビデオ・メモリ３６の間に結合される。外部デバイス１４はまた、グラフィックス・アクセラレータを含み得る。外部デバイス１６−２０はまた、アドレス可能なメモリを含んでも含まなくてもよい類似の種類のオフチップ・デバイス又はデバイスを含み得る。
【００１８】
一実施形態に従って、システム・バス２６は、データ・バス、アドレス・バス、及び他の制御及び状態（ステータス）信号から成る。全てのプロセッサ・メモリ・トランザクションは、アドレスがアドレス・バス上に、またデータがデータ・バス上に置かれることを要求する。プロセッサが外部デバイスのメモリに対してメモリ読み出し／書き込みトランザクションを実行するとき、トランザクションのアドレス部分は、ＭＭＣＩが実行するであろう動作についてのＭＭＣＩに関する情報を含み、トランザクションのデータ部分は、実際のデータ転送が起こるときデスティネーション（宛先）（即ち、プロセッサ又は外部デバイス・メモリ）に対してトラスペアレントに利用可能であろう。
【００１９】
図２は、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリへの直接アクセスするシステムに使用のアドレス４０のフォーマットのブロック図である。アドレス４０は、Ｎビット・アドレスを含み、当該Ｎビット・アドレスは、制御インターフェース・ベース・アドレス部分４２、アクセス・タイプ及びモード部分４６、チップ選択部分４８、及び目標アドレス部分５０を含む。制御インターフェース・ベース・アドレス部分４２は、ＭＭＣＩ２８のためのポインタに対応する。アクセス・タイプ及びモード部分４６及びチップ選択部分４８は、対応の外部デバイスと使用のテンプレート情報に対するポインタを構成する。最後に、目標アドレス部分５０は、対応の目標外部デバイスのメモリ内のメモリ位置を指す目標アドレス・ポインタに対応する。
【００２０】
本発明の一実施形態に従って、メモリ・トランザクション・アドレスが、ＭＣＵホストにより要求され、そして外部デバイス・メモリに対してＭＭＣＩを介して発行される。例えば、ＭＣＵのメモリ・トランザクション・アドレスは、分解されて、次の有り得るパラメータのうちの１又はそれより多くのパラメータになる。
【００２１】
・［Ｄｎ，…，Ｄ０］：これは、メモリ・マップされたデバイス内の目標とされたメモリ位置のアドレスを表す。
【００２２】
・［ＣＳｍ，ＣＳ０］：これは、デバイス選択を表す。
【００２３】
・［Ａ１，Ａ０］：これは、ＭＭＣＩが外部デバイスと通信するための特定の情報及びプロトコルを含む１又は複数の適切なアクセス・テンプレートをロードすることを可能にするアクセス・タイプを表す。
【００２４】
・［Ｓｋ，Ｓ０］：これは、ホスト・システム・メモリ・マップ内のＭＭＣＩのアドレスを表す。
【００２５】
次の説明は、ＭＭＣＩと外部デバイスとの間のメモリ・トランザクション・メッセージ構造の一例を提供する。外部デバイスは、例えば、グラフィックス・アクセラレータ、ディスプレイ制御器、周辺装置、及びコプロセッサを含み得て、これらは、埋め込み型メモリ又は他の類似のデバイスを含み得る。一実施形態において、トランザクション・メッセージ構造は、次のセグメント、即ち、ＰＲＥ−ＣＭＮＤ（事前ＣＭＮＤ）、ＡＤＤＲＥＳＳ（アドレス）、ＤＡＴＡ（Ｒ／Ｗ）（データ（読み出し／書き込み））、及びＰＯＳＴ−ＣＭＮＤ（事後ＣＭＮＤ）を含むことができる。ＰＲＥ−ＣＭＮＤは、外部デバイスとの通信を確立するための情報及びアクセス・プロトコルを含む１又は５〜６個のコマンドを有するプリコマンド・アクセス・テンプレートを表す。ＰＯＳＴ−ＣＭＮＤは、トランザクションを完了するための実際のコマンドを含むポストコマンド・アクセス・テンプレートを表す。ＡＤＤＲＥＳＳは、１又は複数のアドレス・ワードを含む目標とされるアドレス・フィールドを表す。ＤＡＴＡは、メモリ・トランザクションの実際のデータ（読み出し／書き込み）フィールドを表し、当該フィールドは、単一のデータ・ワード又は複数のデータ・ワードのいずれかを含む。
【００２６】
ここで図３を参照すると、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリに対して直接アクセスする方法のフロー図６０が、示されている。第１のステップ６２において、オペレーティング・システムは、プロセッサ２２に目標外部デバイスにアクセスするよう命令する。目標外部デバイスは、例えば、外部デバイス１４，１６，１８及び２０のうちの１つを含むことができる。第２のステップ６４において、プロセッサは、情報をシステム・バス２６上に置く。第３のステップ６６において、ＭＭＣＩ２８は、システム・バスから情報を受信する。なお、当該情報は、対応の外部デバイスに関するテンプレート情報にアクセスするのに使用のためメイン・メモリ２４又はＭＭＣＩ２８のメモリ（図示せず）に格納されているテンプレートに対するポインタを指定する。
【００２７】
次のステップ６８において、ＭＭＣＩ２８は、アドレス４０の対応のアドレス情報に従って目標外部デバイスのテンプレートにアクセスする。ステップ７０において、ＭＭＣＩは、対応のテンプレートに従って目標外部デバイスに対して特有の情報を外部インターフェース・バス上に置く。最後に、ステップ７２において、目標外部デバイスは、テンプレートに従って処理された情報に応答して所望の動作を実行する。
【００２８】
図４は、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリへ直接アクセスするシステムを組み込む無線装置８０のブロック図である。無線装置８０は、当該無線装置８０がまた無線装置を含むことを除いて、図１の装置１０に似た装置を備える。例示的無線装置は、例えば、スマート・フォーン（Ｓｍａｒｔ  Ｐｈｏｎｅ）、携帯情報端末（ＰＤＡ）、又は他の類似の無線装置を含むことができる。
【００２９】
図１に関して上記で説明した構成要素に加えて、図４の無線装置８０は更に、アンテナ８４、ＲＦプロセッサ８６、ベースバンド・モデム・プロセッサ８８、及びメイン・プロセッサ２２とベースバンド・モデム・プロセッサ８８との間に結合されたメッセージング・ユニット（ＭＵ）９０を含む。更にまた、システム・バス９２が、ベースバンド・モデム・プロセッサ８８とマルチプレクサ９４との間に結合されている。マルチプレクサ９４は、システム・バス２６、システム・バス９２、及びメイン・メモリ２４の間に結合されている。更に、マルチプレクサ９４は、信号の多重化並びに信号のアービトレーション（調停）を実行する。
【００３０】
本明細書で説明されるように、メモリ・マップされないデバイス・メモリに対して直接アクセスする方法は、ベースバンド・アプリケーション・プロセッサで用いられることができる。例えば、一実施形態において、ＭＭＣＩが、イメージング・プロセッサ・ユニット（ＩＰＵ）に統合化されることができる一方、アクセス・テンプレートは、ＩＰＵの埋め込み型メモリ又はシステム・メモリに配置されることができる。
【００３１】
本発明の一実施形態に従った、システム・バスに結合されたプロセッサを有する処理システムにおいて、当該プロセッサに対して外部にあるマップされないデバイス・メモリを動作させる方法は、プロセッサに装置（デバイス）と共に動作するよう命令するステップを含む。その装置は、例えば、ＬＣＤ制御器を含むことができる。プロセッサが装置と共に動作するようにする命令に応答して、プロセッサは、情報をシステム・バス上に置く。
【００３２】
一実施形態において、システム・バスは、例えば、アドレス・バスを含むことができる。その上、上記情報は、装置の動作方法を含むことができる。例えば、その動作方法は、読み出し及び書き込みから成るグループから選択されることができる。別の実施形態において、上記情報は、動作モード、チップ選択、アクセス・タイプ及びアドレスのうちの少なくとも１つを含むことができる。
【００３３】
上記情報がシステム・バス上に置かれることに続いて、メモリ・マップ制御器インターフェースは、上記情報を検索する。この情報に応答して、メモリ・マップ制御器インターフェースは、装置のテンプレートにアクセスする。テンプレートは、システム・バスに結合されたメモリに格納されている複数のテンプレートから選択されることができる。次いで、メモリ・マップ制御器インターフェースは、上記情報及びテンプレートに従って装置情報を外部インターフェース・バス上に置く。その結果、装置は、この装置情報に従って動作する。
【００３４】
本発明の別の実施形態に従って、無線装置は、アンテナ、ＲＦプロセッサ、ベースバンド・モデム・プロセッサ、プロセッサ、メモリ、マルチプレクサ、メモリ・マップ制御器インターフェース、及びディスプレイ制御器を含む。ＲＦプロセッサは、アンテナに結合している。ベースバンド・モデム・プロセッサは、ＲＦプロセッサ及びモデム・バスに結合している。プロセッサは、システム・バス及びベースバンド・モデム・プロセッサに結合している。メモリは、装置に関する複数のテンプレートを格納する。
【００３５】
無線装置は更に、メモリ、モデム・バス及びシステム・バスに結合されたマルチプレクサを含む。メモリ・マップ制御器インターフェースは、装置についての情報を受信し、テンプレートをメモリから検索し、そしてその検索された情報及び検索されたテンプレートに従って装置情報を外部インターフェース上に与える。更に、ディスプレイ制御器は、装置情報に応答するため外部インターフェース・バスに結合している。更にまた、無線装置は、外部インターフェース・バスに結合された外部装置を含む。一実施形態において、上記情報は、動作モード、チップ選択、アクセス・タイプ及びアドレスから成るグループから選択された少なくとも１つを備える。別の実施形態において、システム・バスは、上記情報を搬送するアドレス・バスを備える。
【００３６】
別の実施形態において、装置を外部インターフェース・バスを介して制御する処理システムは、プロセッサ、メモリ、及びメモリ・マップ制御器インターフェースを含む。プロセッサは、システム・バスに結合している。システム・バスは、例えば、アドレス・バスを含み得る。メモリは、処理システムに対して外部にある装置の動作特性を記述するためのテンプレートを格納するためシステム・バスに結合している。更に、メモリ・マップ制御器インターフェースは、システム・バス及び外部インターフェース・バスに結合している。
【００３７】
メモリ・マップ制御器インターフェースは更に、情報をプロセッサからシステム・バスを介して受け取り、そしてテンプレートをメモリからシステム・バスを介して受け取るよう特徴付けられている。受け取られた情報は、動作モード、チップ選択、アクセス・タイプ及びアドレスを含むことができる。テンプレートは、メモリ・マップされない外部装置の動作特性についてのデータを含むことができる。テンプレートはまた、メモリ・マップされない外部装置のアクセス・プロトコルを含み得る。テンプレートのうちの少なくとも１つのテンプレートは、ディスプレイ制御器用である。
【００３８】
本発明の更に別の実施形態に従って、処理システムは、プロセッサ、システム・バス、メモリ、及び制御器手段を含む。プロセッサは、システム・バスに結合している。メモリは、複数のテンプレートを格納するためシステム・バスに結合する。更に、制御器手段は、システム・バス及び外部インターフェース・バスに結合している。
【００３９】
制御器手段は、複数のテンプレートのうちの１つのテンプレートを検索することにより、プロセッサにより与えられた装置に関する情報に応答する。制御器手段は更に、検索されたテンプレートと整合性のあるように当該情報を外部インターフェース・バス上に与える。各テンプレートは、装置のタイプ及びそのタイプの装置に関する動作モードに対応する。一実施形態において、テンプレートのうちの少なくとも１つのテンプレートは、ディスプレイ制御器用である。その上、メモリは、アクセスされるべき装置を識別するオペレーティング・システムを格納する。
【００４０】
プロセッサにより制御器手段に与えられる情報は、動作モードを指定する。更に、プロセッサにより与えられる情報は、動作モード、チップ選択、アクセス・タイプ、及びアドレスを備える。テンプレートは、外部装置のアクセス・プロトコルを含む。
【００４１】
従って、本発明の様々な実施形態は、以下のような独特の特徴を提供する。一実施形態において、本方法及び装置は、ホスト・システムのＭＣＵ又はＤＭＡがそのシステム・アドレス空間内のそのメモリ又は周辺装置にアクセスするであろう方法と同じ方法で外部ディスプレイ制御器メモリから読み出し／書き込むことを可能にする。これらの実施形態は、メモリ・マップされたデバイスのように見える間接アドレスされたデバイスを提供し、そのデバイスは、ソフトウエアに複雑さを加えること無しにピン数を著しく低減する。更に、実施形態は、ソフトウエア・オーバヘッドを著しく最小にし、このソフトウエア・オーバヘッドを最小することによりシステム性能が非常に改善される。更に、実施形態は、ソフトウエア・ドライバにアドレス変換を実行することを要求すること無しに、全ての主要なオペレーティング・システムをサポートする。ビデオ・メモリをメモリ・マップすることを要求するオペレーティング・システムが存在する。しかしながら、多くの制御器は、ビデオ・メモリをプロセッサ・メモリ・マップの中にマップすることを可能にしない。本発明の実施形態は、プロセッサの内部メモリに対するアクセスを可能にする任意のプロセッサがオペレーティング・システムに対してフラットなメモリのように見えることを可能にし、従って、オペレーティング・システムがデバイスをメモリ・マップされたいずれの他のデバイスのように用いることを可能にする。次いで、実施形態は、最初に、主要なオペレーティング・システムがシステム・メモリ（図１の構成要素２４）上に又はプロセッサ・バス（図１の構成要素２６）に直接接続されている周辺装置上にないディスプレイ・ビデオ・バッファを用いることを可能する。
【００４２】
更にまた、実施形態は、単一の柔軟な（即ち、プログラム可能な）インターフェースを用いて、広範囲のアクセス手順をサポートする。一実施形態において、アクセス手順情報は、予めシステム・メモリ内に格納されてあるプログラム可能なテンプレートから得ることができる。
【００４３】
本発明の実施形態は更に、さもなければそのようなアーキテクチャをサポートしない制御器のためのメモリ・マップされたメモリのシミュレーションを可能にする様々な方法を提供する。従って、これは、システム・メモリの中の１又はそれより多くのディスプレイ・バッファのため書かれるアプリケーションに対して変更無しで用いるよう当該アプリケーションの使用を可能にする。そのような実施形態は、第三者がダウンロードしたアプリケーションにとって特に重要である。
【００４４】
本発明の一実施形態に従った装置は、外部装置によるＭＭＣＩに対するＭＣＵセットアップ・トランザクションの大部分をオフロード（ｏｆｆ−ｌｏａｄ）して、ＭＣＵの介入を最小にするよう構成される。従って、これは、電力消費を低減し、そしてＭＣＵがシステム性能を最大にするため他のタスクを並列に実行することを可能にする。
【００４５】
本発明の一実施形態に従って、本方法及び装置は、柔軟なテンプレート・ベースのアドレス及びコマンド・トランザクション機構を含む。テンプレート・ベースのアドレス及びコマンド・トランザクション機構は、ホスト・システムがサポートを提供するようチップセットを再設計する必要無しに広範囲のディスプレイ制御器又はグラフィックス・アクセラレータへ接続することを可能にする。ＭＭＣＩモジュールは、対応の指定されたアクセス・テンプレートに従って、プロセッサにより要求されたアドレス情報を復号し、適切なアクセス・プロトコルを実行して、外部装置との通信を設定する。ホスト・システム・メモリは、メモリ・マップされた制御インターフェースが用いるためのアクセス・テンプレートを格納するための場所を与える。
【００４６】
本発明の一実施形態は更に、ベースバンド・アプリケーション・プロセッサに関する解法を有利に提供する。この実施形態は、アプリケーション・プロセッサのＭＣＵ又はＤＭＡがそれ自身のメモリにアクセスするであろうように外部ディスプレイ制御器のメモリ又はグラフィックス・アクセラレータのメモリにアクセスすることを可能にする。そのようなアクセスは、画像及びビデオ処理、ビデオ・グラフィックスの組み合わせたもの、及びグラフィックス・アニメーション、等々用であることができる。更に、実施形態は、システム性能を最大にし、そしてアプリケーション・プロセッサの電力消費を最小にする。従って、本発明の一実施形態は、アプリケーション・プロセッサが広範囲の外部装置をサポートすることを可能にする。
【００４７】
上記の記載において、本発明が、特定の実施形態を参照して説明された。しかしながら、当業者は、添付の特許請求の範囲に記載された本発明の範囲から逸脱すること無しに様々な変更及び変化を行うことができることを認めるであろう。従って、この明細書及び図面は、限定の意味ではなくむしろ例示と考えるべきであり、そして全てのそのような変更は、本発明の範囲内に含まれることを意図している。
【００４８】
恩恵、他の利点、及び課題に対する解法が、特定の実施形態に関して上記で説明された。しかしながら、恩恵、利点、課題に対する解法、及びいずれかの恩恵、利点又は解法を生じ、又はより明白になり得るいずれの構成要素は、特許請求の範囲のいずれかの又は全ての請求項の重要な、必要な、又は本質的な特徴又は構成要素として解釈されるべきでない。本明細書で用いられるように、用語「備える」、「有する」、又はそれらのいずれの他の変形は、非排他的包含をカバーすることを意図し、それにより、一連の構成要素を備えるプロセス、方法、物品、又は装置は、それらの構成要素だけを含むわけではなく、そのようなプロセス、方法、物品又は装置に対して明示的に挙げられた又はそれに本来的である他の構成要素を含み得る。
【図面の簡単な説明】
【００４９】
【図１】図１は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスするシステムのブロック図である。
【図２】図２は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスするシステムに使用のアドレスのフォーマットのブロック図である。
【図３】図３は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスする方法のフロー図である。
【図４】図４は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスするシステムを組み込む無線装置のブロック図である。
【図１】
2007528050.tif 000003
【図２】
2007528050.tif 000004
【図３】
2007528050.tif 000005
【図４】
2007528050.tif 000006
【国際調査報告】
2007528050.tif 000007