JP2007528050A - メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステム - Google Patents

メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステム Download PDF

Info

Publication number
JP2007528050A
JP2007528050A JP2006535566A JP2006535566A JP2007528050A JP 2007528050 A JP2007528050 A JP 2007528050A JP 2006535566 A JP2006535566 A JP 2006535566A JP 2006535566 A JP2006535566 A JP 2006535566A JP 2007528050 A JP2007528050 A JP 2007528050A
Authority
JP
Japan
Prior art keywords
memory
information
bus
template
processor
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
JP2006535566A
Other languages
English (en)
Other versions
JP2007528050A5 (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.)
NXP USA Inc
Original Assignee
NXP USA Inc
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 NXP USA Inc filed Critical NXP USA Inc
Publication of JP2007528050A publication Critical patent/JP2007528050A/ja
Publication of JP2007528050A5 publication Critical patent/JP2007528050A5/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/14Handling requests for interconnection or transfer
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)
  • Executing Machine-Instructions (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

外部デバイスとインターフェースする処理システムは、プロセッサ、メモリ、及び制御器を有する。メモリは、外部デバイスについてのアクセス・プロトコル情報を与えるテンプレートを格納する。外部デバイスがアクセスされることになるとき、メモリに格納されているオペレーティング・システムは、プロセッサに外部デバイスへのアクセスを実行するよう命令する。プロセッサは、外部デバイスについての情報をシステム・バスのアドレス部分に置き、当該情報は、システム制御器により受け取られ、解釈される。次いで、制御器は、受け取られた情報により指示された外部デバイス用テンプレートを検索する。テンプレートを検索した後で、制御器は、テンプレートが指示した要領で情報を、外部デバイスがまた結合されている外部インターフェース・バス上に出力する。次いで、外部デバイスは、制御器が外部インターフェース・バス上に置いた情報に従って応答する。

Description

[発明の分野]
本発明は、一般的に、プロセッサ・ベースのシステムに関し、より詳細には、メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステムに関する。
[関連技術]
現在商業的に入手可能なスマートフォーン(smart phones)及びハンドヘルド形装置は、一般的に、ホスト・システム及びスマート・ディスプレイ・パネル(smart display panel)を装備している。スマート・ディスプレイ・パネルは、典型的には、統合化されたディスプレイ制御器及びオンデバイス・メモリ(on−device memory)を含む。そのような統合化されたディスプレイ制御器は、通常、ホスト・システムと専用ディスプレイ・ポートを介して、又はメイン・メモリへの外部インターフェース(EIM)のような標準バス・インターフェース・ユニットを介してインターフェースする。ディスプレイ・パネルはまた、1又は複数のオンチップ・ビデオ及び/又はディスプレイ・バッファを有し、当該1又は複数のオンチップ・ビデオ及び/又はディスプレイ・バッファは、ホスト・システム・メモリ・マップに対して外部にあり、即ち、ホスト・システム・メモリ・マップ内に直接に配置されていない。そのような1又は複数のバッファを用いて、更新し且つスクリーン・ディスプレイをリフレッシュする前に及び/又はイメージ及びグラフィック・レンダリングのためディスプレイ・データを格納する。
しかしながら、スマートフォーン及びハンドヘルド形装置の標準バス・インターフェース・ユニットの1つの問題は、EIMがアドレス・バスのため多数のピン又はライン、例えば、約22のオーダのラインを必要とすることである。多数のラインは、一般的に、そのようなハンドヘルド形装置又はスマートフォーンでの使用に法外な程高いコストとなる。その上、フリップフォーン型(折り畳み式携帯電話器)のモバイル・デバイスの場合、キャパシタンス及びバス・ローディングはまた、他の標準メモリ・デバイスが同じインターフェースを共用するので、タイミング及びバス帯域幅問題を引き起こすであろう。
別の選択は、専用ディスプレイ・ポートを設けることである。この場合、外部デバイス・バッファへのアクセスは、間接的方法で達成される。アプリケーションがホストにスマート・ディスプレイ又はグラフィックス・アクセラレータに対するアクセスを獲得することを要求するとき、MCUは、一連の複雑なトランザクションを実行して、現実の転送の前に装置(デバイス)と通信することを確立しなければならない。例えば、ホスト・プロセッサは、コマンドをコマンド命令により外部装置に専用ディスプレイ・インターフェースを介して送らなければならない。次いで、専用ディスプレイ・インターフェースは、必ず復号されたメッセージを外部装置に中継し又は送り、幾らかのセットアップ時間を許し、そして多分、現実のデータ転送を再開する前に、確認応答を待つ。これらのトランザクションの全てが、専用データ・バスを介して、高性能のMCUホストと比べて低いクロック速度で実行されることに注目されたい。そのような過度のMCU介入は、MCUの負荷及びバス帯域幅要件を増大させ、従って、システム性能及び電力消費に対して負の影響を生じるであろう。
別の方法は、フルのハードワイヤード・インターフェースを用いるものであるが、しかし、この固定のハードウエア方法は、ダイ寸法への著しい影響を有し、そして数個の特定の外部装置のみをサポートする。
従って、上記で説明した当該技術での問題を克服する改善された方法及びシステムに対する必要性が存在する。
[概要]
本発明の一実施形態に従った、システムに結合されたプロセッサを有する処理システムにおいて当該プロセッサに対して外部の装置を動作させる方法は、当該プロセッサに当該外部の装置と共に動作するよう命令するステップを含む。プロセッサが外部の装置と共に動作するための命令に応答して、当該プロセッサは、情報をシステム・バス上に置く。続いて、メモリ・マップ制御器インターフェースが、当該情報を検索する。当該情報に応答して、メモリ・マップ制御器インターフェースは、上記外部の装置のテンプレートにアクセスする。当該テンプレートは、システム・バスに結合されたメモリに格納されている複数のテンプレートから選択される。次いで、メモリ・マップ制御器インターフェースは、上記情報及び上記テンプレートに従って命令を外部インターフェース・バス上に置く。その結果、上記装置は、上記命令に従って動作する。
本発明は、添付図面により一例として説明され、そしてその添付図面により限定されるものではない。なお、類似の参照番号は、類似の構成要素を示す。
当業者は、図面の中の構成要素が単純化及び明瞭化して描かれており、必ずしも一定の比例に縮小又は拡大されて描かれていないことを認めるであろう。例えば、図面の中の構成要素の一部の寸法は、本発明の実施形態の理解を向上させるのを助けるため他の構成要素と比べて誇張されている場合がある。
[詳細な説明]
本明細書で用いられているように、用語「バス」は、データ、アドレス、制御又はステータス(状態)のような1又はそれより多くの様々な種類の情報を転送するため用いられ得る複数の信号又は導体を意味するため用いられている。用語「アサート」及び「ニゲート(否定する)」は、信号、ステータス・ビット、又は類似の装置をその論理的真又は論理的偽のそれぞれにさせることを意味する場合に用いられる。論理的真状態が論理レベル「1」である場合、論理的偽状態は、論理レベル「0」である。そして、論理的真状態が論理レベル「0」である場合、論理的偽状態は、論理レベル「1」である。
四角括弧は、バスの導体、又は値のビット位置を示すため用いられる。例えば、「バス60[0−7]」又は「バス60の導体[0−7]」は、バス60の8個の低位の導体を示し、そして「アドレス・ビット[0−7]又は「ADDRESS[0−7]」は、アドレス値の8個の低位ビットを示す。数字の前にある記号「$」は、その数字が16進又は16進形式で表されることを示す。数字の前にある記号「%」は、その数字が2進又は2進形式で表されることを示す。
本発明の一実施形態に従って、メモリ・マップされないデバイス・バッファに対して直接アクセスする方法は、マイクロコントローラ・ユニットを構成するステップを含む。このマイクロコントローラ・ユニットを構成するステップは、本明細書で説明されるように、柔軟なテンプレート・ベースのアドレス及びコマンド変換機構を有するメモリ・マップされた制御インターフェースを用いるステップを含む。
メモリ・マップされた制御インターフェース(MMCI)は、「MCUシステム」対「擬似MCUシステム」バス・インターフェースを含み、当該「MCUシステム」対「擬似MCUシステム」バス・インターフェースにおいては、コマンド及びアドレスが、データ・ストリーム中に埋め込まれている。MCUメモリ・アクセス・トランザクション要求が、MMCIに到着したとき、MMCIは、メモリ・トランザクション・アドレスを復号して、次の動作のうちの一部又は全てを実行する。当該次の動作とは、(a)外部デバイスが1より多い場合メモリ・アクセスのため目標とされた外部デバイスを選択すること、(b)各特定のアクセス・タイプに関してMCUホストにより前にプログラムされている1又は複数の適切なアクセス・プロトコル・テンプレートをダウンロードすること、(c)特に、ホスト・メモリ・トランザクション・アドレスから抽出される目標メモリ・アドレスをメッセージ構造の適切なフィールドに外部デバイスへの次の転送のため挿入すること、及び(d)外部デバイス・メモリからの読み出しアクセス又は外部デバイス・メモリへの書き込みアクセスのうちの1つを含む実際のデータ転送を開始することである。
本発明の一実施形態に従って、MMCIは、1つのインターフェースを与え、そのインターフェースにおいて、コマンド及びデータが、データ・ストリームに埋め込まれる。その上、MMCIは、メッセージ・プロトコル(即ち、何のコマンド又はコマンドの何のシーケンスが実際のデータ転送の前後に外部デバイスへ送られることが必要とされるか、等々)を処理し又は操作する。更に、MMCIは、アクセス・テンプレートを用いて、外部デバイスと通信するためのアクセス・プロトコルを発生する。
更に、本明細書で説明されるように、メモリ・マップ制御器インターフェースは、物理的インターフェースを含む。メモリ・マップ制御器インターフェースはまた、読み出し/書き込み及び制御信号を有するデータ・バス、又は単純に高速シリアル・インターフェースのような様々な形式を含むことができる。更にまた、一実施形態において、MMCIは、或る一定のタイプの連続したアクセスのインスタンス、例えば、バースト読み出し/書き込みにおけるようなテンプレートのうちの複数のテンプレートを選択することをバイパスするよう構成されることができる。
ここで図1を参照すると、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリへの直接アクセスを有するシステム10のブロック図が、示されている。システム10は、マイクロコントローラ・ユニット(MCU)12、及び外部デバイス14,16,18及び20のうちの少なくとも1つ又はそれより多い外部デバイスを含む。MCU12は、プロセッサ22、及び当該プロセッサ22にシステム・バス26を介して結合されたメイン・メモリ24を含む。MCU12はまた、システム・バス26を介してプロセッサ22及びメイン・メモリ24に結合されたメモリ・マップされた制御インターフェース(MMCI)28を含む。本明細書の以下で更に説明されるように、MMCI28の出力は、外部デバイス14,16,18及び20に外部インターフェース・バス30を介して結合する。MMCI28が無いときには、外部デバイス14,16,18及び20は、MMCI28に対して外部にあるメモリを含むデバイスであり、そこにおいて更に、これらのデバイスは、MCU12に対してメモリ・マップされないデバイスを含む。
外部デバイス14は、ディスプレイ制御器又はグラフィックス・アクセラレータを含み得る。例えば、外部デバイス14は、ホスト・インターフェース32、CPU34、ビデオ・メモリ36及びバス38を有するディスプレイ制御器を含み得る。バス38は、ホスト・インターフェース32、CPU34及びビデオ・メモリ36の間に結合される。外部デバイス14はまた、グラフィックス・アクセラレータを含み得る。外部デバイス16−20はまた、アドレス可能なメモリを含んでも含まなくてもよい類似の種類のオフチップ・デバイス又はデバイスを含み得る。
一実施形態に従って、システム・バス26は、データ・バス、アドレス・バス、及び他の制御及び状態(ステータス)信号から成る。全てのプロセッサ・メモリ・トランザクションは、アドレスがアドレス・バス上に、またデータがデータ・バス上に置かれることを要求する。プロセッサが外部デバイスのメモリに対してメモリ読み出し/書き込みトランザクションを実行するとき、トランザクションのアドレス部分は、MMCIが実行するであろう動作についてのMMCIに関する情報を含み、トランザクションのデータ部分は、実際のデータ転送が起こるときデスティネーション(宛先)(即ち、プロセッサ又は外部デバイス・メモリ)に対してトラスペアレントに利用可能であろう。
図2は、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリへの直接アクセスするシステムに使用のアドレス40のフォーマットのブロック図である。アドレス40は、Nビット・アドレスを含み、当該Nビット・アドレスは、制御インターフェース・ベース・アドレス部分42、アクセス・タイプ及びモード部分46、チップ選択部分48、及び目標アドレス部分50を含む。制御インターフェース・ベース・アドレス部分42は、MMCI28のためのポインタに対応する。アクセス・タイプ及びモード部分46及びチップ選択部分48は、対応の外部デバイスと使用のテンプレート情報に対するポインタを構成する。最後に、目標アドレス部分50は、対応の目標外部デバイスのメモリ内のメモリ位置を指す目標アドレス・ポインタに対応する。
本発明の一実施形態に従って、メモリ・トランザクション・アドレスが、MCUホストにより要求され、そして外部デバイス・メモリに対してMMCIを介して発行される。例えば、MCUのメモリ・トランザクション・アドレスは、分解されて、次の有り得るパラメータのうちの1又はそれより多くのパラメータになる。
・[D,…,D]:これは、メモリ・マップされたデバイス内の目標とされたメモリ位置のアドレスを表す。
・[CSm,CS0]:これは、デバイス選択を表す。
・[A1,A0]:これは、MMCIが外部デバイスと通信するための特定の情報及びプロトコルを含む1又は複数の適切なアクセス・テンプレートをロードすることを可能にするアクセス・タイプを表す。
・[Sk,S0]:これは、ホスト・システム・メモリ・マップ内のMMCIのアドレスを表す。
次の説明は、MMCIと外部デバイスとの間のメモリ・トランザクション・メッセージ構造の一例を提供する。外部デバイスは、例えば、グラフィックス・アクセラレータ、ディスプレイ制御器、周辺装置、及びコプロセッサを含み得て、これらは、埋め込み型メモリ又は他の類似のデバイスを含み得る。一実施形態において、トランザクション・メッセージ構造は、次のセグメント、即ち、PRE−CMND(事前CMND)、ADDRESS(アドレス)、DATA(R/W)(データ(読み出し/書き込み))、及びPOST−CMND(事後CMND)を含むことができる。PRE−CMNDは、外部デバイスとの通信を確立するための情報及びアクセス・プロトコルを含む1又は5〜6個のコマンドを有するプリコマンド・アクセス・テンプレートを表す。POST−CMNDは、トランザクションを完了するための実際のコマンドを含むポストコマンド・アクセス・テンプレートを表す。ADDRESSは、1又は複数のアドレス・ワードを含む目標とされるアドレス・フィールドを表す。DATAは、メモリ・トランザクションの実際のデータ(読み出し/書き込み)フィールドを表し、当該フィールドは、単一のデータ・ワード又は複数のデータ・ワードのいずれかを含む。
ここで図3を参照すると、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリに対して直接アクセスする方法のフロー図60が、示されている。第1のステップ62において、オペレーティング・システムは、プロセッサ22に目標外部デバイスにアクセスするよう命令する。目標外部デバイスは、例えば、外部デバイス14,16,18及び20のうちの1つを含むことができる。第2のステップ64において、プロセッサは、情報をシステム・バス26上に置く。第3のステップ66において、MMCI28は、システム・バスから情報を受信する。なお、当該情報は、対応の外部デバイスに関するテンプレート情報にアクセスするのに使用のためメイン・メモリ24又はMMCI28のメモリ(図示せず)に格納されているテンプレートに対するポインタを指定する。
次のステップ68において、MMCI28は、アドレス40の対応のアドレス情報に従って目標外部デバイスのテンプレートにアクセスする。ステップ70において、MMCIは、対応のテンプレートに従って目標外部デバイスに対して特有の情報を外部インターフェース・バス上に置く。最後に、ステップ72において、目標外部デバイスは、テンプレートに従って処理された情報に応答して所望の動作を実行する。
図4は、本発明の一実施形態に従った、メモリ・マップされないデバイス・メモリへ直接アクセスするシステムを組み込む無線装置80のブロック図である。無線装置80は、当該無線装置80がまた無線装置を含むことを除いて、図1の装置10に似た装置を備える。例示的無線装置は、例えば、スマート・フォーン(Smart Phone)、携帯情報端末(PDA)、又は他の類似の無線装置を含むことができる。
図1に関して上記で説明した構成要素に加えて、図4の無線装置80は更に、アンテナ84、RFプロセッサ86、ベースバンド・モデム・プロセッサ88、及びメイン・プロセッサ22とベースバンド・モデム・プロセッサ88との間に結合されたメッセージング・ユニット(MU)90を含む。更にまた、システム・バス92が、ベースバンド・モデム・プロセッサ88とマルチプレクサ94との間に結合されている。マルチプレクサ94は、システム・バス26、システム・バス92、及びメイン・メモリ24の間に結合されている。更に、マルチプレクサ94は、信号の多重化並びに信号のアービトレーション(調停)を実行する。
本明細書で説明されるように、メモリ・マップされないデバイス・メモリに対して直接アクセスする方法は、ベースバンド・アプリケーション・プロセッサで用いられることができる。例えば、一実施形態において、MMCIが、イメージング・プロセッサ・ユニット(IPU)に統合化されることができる一方、アクセス・テンプレートは、IPUの埋め込み型メモリ又はシステム・メモリに配置されることができる。
本発明の一実施形態に従った、システム・バスに結合されたプロセッサを有する処理システムにおいて、当該プロセッサに対して外部にあるマップされないデバイス・メモリを動作させる方法は、プロセッサに装置(デバイス)と共に動作するよう命令するステップを含む。その装置は、例えば、LCD制御器を含むことができる。プロセッサが装置と共に動作するようにする命令に応答して、プロセッサは、情報をシステム・バス上に置く。
一実施形態において、システム・バスは、例えば、アドレス・バスを含むことができる。その上、上記情報は、装置の動作方法を含むことができる。例えば、その動作方法は、読み出し及び書き込みから成るグループから選択されることができる。別の実施形態において、上記情報は、動作モード、チップ選択、アクセス・タイプ及びアドレスのうちの少なくとも1つを含むことができる。
上記情報がシステム・バス上に置かれることに続いて、メモリ・マップ制御器インターフェースは、上記情報を検索する。この情報に応答して、メモリ・マップ制御器インターフェースは、装置のテンプレートにアクセスする。テンプレートは、システム・バスに結合されたメモリに格納されている複数のテンプレートから選択されることができる。次いで、メモリ・マップ制御器インターフェースは、上記情報及びテンプレートに従って装置情報を外部インターフェース・バス上に置く。その結果、装置は、この装置情報に従って動作する。
本発明の別の実施形態に従って、無線装置は、アンテナ、RFプロセッサ、ベースバンド・モデム・プロセッサ、プロセッサ、メモリ、マルチプレクサ、メモリ・マップ制御器インターフェース、及びディスプレイ制御器を含む。RFプロセッサは、アンテナに結合している。ベースバンド・モデム・プロセッサは、RFプロセッサ及びモデム・バスに結合している。プロセッサは、システム・バス及びベースバンド・モデム・プロセッサに結合している。メモリは、装置に関する複数のテンプレートを格納する。
無線装置は更に、メモリ、モデム・バス及びシステム・バスに結合されたマルチプレクサを含む。メモリ・マップ制御器インターフェースは、装置についての情報を受信し、テンプレートをメモリから検索し、そしてその検索された情報及び検索されたテンプレートに従って装置情報を外部インターフェース上に与える。更に、ディスプレイ制御器は、装置情報に応答するため外部インターフェース・バスに結合している。更にまた、無線装置は、外部インターフェース・バスに結合された外部装置を含む。一実施形態において、上記情報は、動作モード、チップ選択、アクセス・タイプ及びアドレスから成るグループから選択された少なくとも1つを備える。別の実施形態において、システム・バスは、上記情報を搬送するアドレス・バスを備える。
別の実施形態において、装置を外部インターフェース・バスを介して制御する処理システムは、プロセッサ、メモリ、及びメモリ・マップ制御器インターフェースを含む。プロセッサは、システム・バスに結合している。システム・バスは、例えば、アドレス・バスを含み得る。メモリは、処理システムに対して外部にある装置の動作特性を記述するためのテンプレートを格納するためシステム・バスに結合している。更に、メモリ・マップ制御器インターフェースは、システム・バス及び外部インターフェース・バスに結合している。
メモリ・マップ制御器インターフェースは更に、情報をプロセッサからシステム・バスを介して受け取り、そしてテンプレートをメモリからシステム・バスを介して受け取るよう特徴付けられている。受け取られた情報は、動作モード、チップ選択、アクセス・タイプ及びアドレスを含むことができる。テンプレートは、メモリ・マップされない外部装置の動作特性についてのデータを含むことができる。テンプレートはまた、メモリ・マップされない外部装置のアクセス・プロトコルを含み得る。テンプレートのうちの少なくとも1つのテンプレートは、ディスプレイ制御器用である。
本発明の更に別の実施形態に従って、処理システムは、プロセッサ、システム・バス、メモリ、及び制御器手段を含む。プロセッサは、システム・バスに結合している。メモリは、複数のテンプレートを格納するためシステム・バスに結合する。更に、制御器手段は、システム・バス及び外部インターフェース・バスに結合している。
制御器手段は、複数のテンプレートのうちの1つのテンプレートを検索することにより、プロセッサにより与えられた装置に関する情報に応答する。制御器手段は更に、検索されたテンプレートと整合性のあるように当該情報を外部インターフェース・バス上に与える。各テンプレートは、装置のタイプ及びそのタイプの装置に関する動作モードに対応する。一実施形態において、テンプレートのうちの少なくとも1つのテンプレートは、ディスプレイ制御器用である。その上、メモリは、アクセスされるべき装置を識別するオペレーティング・システムを格納する。
プロセッサにより制御器手段に与えられる情報は、動作モードを指定する。更に、プロセッサにより与えられる情報は、動作モード、チップ選択、アクセス・タイプ、及びアドレスを備える。テンプレートは、外部装置のアクセス・プロトコルを含む。
従って、本発明の様々な実施形態は、以下のような独特の特徴を提供する。一実施形態において、本方法及び装置は、ホスト・システムのMCU又はDMAがそのシステム・アドレス空間内のそのメモリ又は周辺装置にアクセスするであろう方法と同じ方法で外部ディスプレイ制御器メモリから読み出し/書き込むことを可能にする。これらの実施形態は、メモリ・マップされたデバイスのように見える間接アドレスされたデバイスを提供し、そのデバイスは、ソフトウエアに複雑さを加えること無しにピン数を著しく低減する。更に、実施形態は、ソフトウエア・オーバヘッドを著しく最小にし、このソフトウエア・オーバヘッドを最小することによりシステム性能が非常に改善される。更に、実施形態は、ソフトウエア・ドライバにアドレス変換を実行することを要求すること無しに、全ての主要なオペレーティング・システムをサポートする。ビデオ・メモリをメモリ・マップすることを要求するオペレーティング・システムが存在する。しかしながら、多くの制御器は、ビデオ・メモリをプロセッサ・メモリ・マップの中にマップすることを可能にしない。本発明の実施形態は、プロセッサの内部メモリに対するアクセスを可能にする任意のプロセッサがオペレーティング・システムに対してフラットなメモリのように見えることを可能にし、従って、オペレーティング・システムがデバイスをメモリ・マップされたいずれの他のデバイスのように用いることを可能にする。次いで、実施形態は、最初に、主要なオペレーティング・システムがシステム・メモリ(図1の構成要素24)上に又はプロセッサ・バス(図1の構成要素26)に直接接続されている周辺装置上にないディスプレイ・ビデオ・バッファを用いることを可能する。
更にまた、実施形態は、単一の柔軟な(即ち、プログラム可能な)インターフェースを用いて、広範囲のアクセス手順をサポートする。一実施形態において、アクセス手順情報は、予めシステム・メモリ内に格納されてあるプログラム可能なテンプレートから得ることができる。
本発明の実施形態は更に、さもなければそのようなアーキテクチャをサポートしない制御器のためのメモリ・マップされたメモリのシミュレーションを可能にする様々な方法を提供する。従って、これは、システム・メモリの中の1又はそれより多くのディスプレイ・バッファのため書かれるアプリケーションに対して変更無しで用いるよう当該アプリケーションの使用を可能にする。そのような実施形態は、第三者がダウンロードしたアプリケーションにとって特に重要である。
本発明の一実施形態に従った装置は、外部装置によるMMCIに対するMCUセットアップ・トランザクションの大部分をオフロード(off−load)して、MCUの介入を最小にするよう構成される。従って、これは、電力消費を低減し、そしてMCUがシステム性能を最大にするため他のタスクを並列に実行することを可能にする。
本発明の一実施形態に従って、本方法及び装置は、柔軟なテンプレート・ベースのアドレス及びコマンド・トランザクション機構を含む。テンプレート・ベースのアドレス及びコマンド・トランザクション機構は、ホスト・システムがサポートを提供するようチップセットを再設計する必要無しに広範囲のディスプレイ制御器又はグラフィックス・アクセラレータへ接続することを可能にする。MMCIモジュールは、対応の指定されたアクセス・テンプレートに従って、プロセッサにより要求されたアドレス情報を復号し、適切なアクセス・プロトコルを実行して、外部装置との通信を設定する。ホスト・システム・メモリは、メモリ・マップされた制御インターフェースが用いるためのアクセス・テンプレートを格納するための場所を与える。
本発明の一実施形態は更に、ベースバンド・アプリケーション・プロセッサに関する解法を有利に提供する。この実施形態は、アプリケーション・プロセッサのMCU又はDMAがそれ自身のメモリにアクセスするであろうように外部ディスプレイ制御器のメモリ又はグラフィックス・アクセラレータのメモリにアクセスすることを可能にする。そのようなアクセスは、画像及びビデオ処理、ビデオ・グラフィックスの組み合わせたもの、及びグラフィックス・アニメーション、等々用であることができる。更に、実施形態は、システム性能を最大にし、そしてアプリケーション・プロセッサの電力消費を最小にする。従って、本発明の一実施形態は、アプリケーション・プロセッサが広範囲の外部装置をサポートすることを可能にする。
上記の記載において、本発明が、特定の実施形態を参照して説明された。しかしながら、当業者は、添付の特許請求の範囲に記載された本発明の範囲から逸脱すること無しに様々な変更及び変化を行うことができることを認めるであろう。従って、この明細書及び図面は、限定の意味ではなくむしろ例示と考えるべきであり、そして全てのそのような変更は、本発明の範囲内に含まれることを意図している。
恩恵、他の利点、及び課題に対する解法が、特定の実施形態に関して上記で説明された。しかしながら、恩恵、利点、課題に対する解法、及びいずれかの恩恵、利点又は解法を生じ、又はより明白になり得るいずれの構成要素は、特許請求の範囲のいずれかの又は全ての請求項の重要な、必要な、又は本質的な特徴又は構成要素として解釈されるべきでない。本明細書で用いられるように、用語「備える」、「有する」、又はそれらのいずれの他の変形は、非排他的包含をカバーすることを意図し、それにより、一連の構成要素を備えるプロセス、方法、物品、又は装置は、それらの構成要素だけを含むわけではなく、そのようなプロセス、方法、物品又は装置に対して明示的に挙げられた又はそれに本来的である他の構成要素を含み得る。
図1は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスするシステムのブロック図である。 図2は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスするシステムに使用のアドレスのフォーマットのブロック図である。 図3は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスする方法のフロー図である。 図4は、本発明の一実施形態に従ったメモリ・マップされないデバイス・メモリに対して直接アクセスするシステムを組み込む無線装置のブロック図である。

Claims (25)

  1. システム・バスに結合されたプロセッサを有する処理システムにおいて装置を動作させる方法であって、
    前記プロセッサに前記装置と共に動作するよう命令するステップと、
    情報を前記システム・バス上に置くステップと、
    前記情報をメモリ・マップ制御器インターフェースを用いて検索するステップと、
    前記情報に応答した前記メモリ・マップ制御器インターフェースを用いて、前記装置のテンプレートにアクセスするステップと、
    前記情報及びテンプレートに従って装置情報を外部インターフェース上に置くステップと、
    前記装置を前記装置情報に従って動作させるステップと
    を備える方法。
  2. 前記装置が、LCD制御器、コプロセッサ、周辺装置、グラフィック・アクセラレータ、イメージング装置、及び単純にアドレス可能なレジスタ又はメモリを有する任意の周辺装置のうちのいずれかである請求項1記載の方法。
  3. 前記システム・バスが、アドレス・バスを含む請求項1記載の方法。
  4. 前記情報が、前記装置の動作方法を備える請求項1記載の方法。
  5. 前記動作方法が、読み出し及び書き込みから成るグループから選択される請求項4記載の方法。
  6. 前記情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項1記載の方法。
  7. 前記テンプレートが、前記システム・バスに結合されたメモリに格納された複数のテンプレートから選択され、
    更に、少なくとも1つのテンプレートが、アクセス/装置のタイプ毎ベースで任意である
    請求項1記載の方法。
  8. アンテナと、
    前記アンテナに結合されたRFプロセッサと、
    前記RFプロセッサ及びモデム・バスに結合されたベースバンド・モデム・プロセッサと、
    前記システム・バス及び前記ベースバンド・モデム・プロセッサに結合されたプロセッサと、
    前記装置に関する複数のテンプレートを格納するメモリと、
    前記メモリ、前記モデム・バス、及び前記システム・バスに結合されたマルチプレクサと、
    前記装置についての情報を受け取り、テンプレートを前記メモリから検索し、且つ前記の受け取られた情報及び前記の検索されたテンプレートに従って装置情報を外部インターフェース上に与えるメモリ・マップ制御器インターフェースと、
    前記外部インターフェースに結合され、前記装置情報に応答するディスプレイ制御器と
    を備える無線システム。
  9. 前記の外部インターフェース・バスに結合された外部装置を更に備える請求項8記載の無線システム。
  10. 前記情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項8記載の無線システム。
  11. 前記システム・バスが、情報を搬送するアドレス・バスを備える請求項8記載の無線システム。
  12. 装置を外部インターフェース・バスを介して制御する処理システムであって、
    前記システム・バスに結合されたプロセッサと、
    前記システム・バスに結合され、前記装置の動作特性を記述するためのテンプレートを格納するメモリと、
    前記システム・バス、及び外部インターフェース・バスに結合されたメモリ・マップ制御器インターフェースと
    を備える処理システム。
  13. 前記メモリ・マップ制御器インターフェースが更に、前記プロセッサから前記システム・バスを介して情報を受け取り、且つ前記メモリから前記システム・バスを介してテンプレートを受け取るように特徴付けられる請求項12記載の処理システム。
  14. 前記の受け取られた情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項13記載の処理システム。
  15. 前記テンプレートが、前記装置の動作特性についてのデータを備える請求項14記載の処理システム。
  16. 前記テンプレートが、前記装置のアクセス・プロトコルを備える請求項13記載の処理システム。
  17. 前記テンプレートのうちの少なくとも1つのテンプレートが、ディスプレイ制御器用である請求項13記載の処理システム。
  18. 前記システム・バスが、アドレス・バスを備える請求項13記載の処理システム。
  19. システム・バスに結合されたプロセッサと、
    前記システム・バスに結合されて、複数のテンプレートを格納するメモリと、
    前記システム・バス及び外部インターフェース・バスに結合された制御器手段であって、複数のテンプレートのうちの1つのテンプレートを検索し、且つ前記の検索されたテンプレートと整合性のある要領で、前記プロセッサが与える装置に関する情報を前記外部インターフェース・バスに与えることにより、前記装置に関する情報に応答する制御器手段と
    を備える処理システム。
  20. 各テンプレートが、装置のタイプと、当該タイプの装置に関する動作モードとに対応する請求項19記載の処理システム。
  21. 前記メモリが、アクセスされるべき装置を識別するオペレーティング・システムを格納する請求項20記載の処理システム。
  22. 前記プロセッサが前記制御器手段に与える前記情報が、動作モードを指定する請求項21記載の処理システム。
  23. 前記複数のテンプレートのうちの少なくとも1つのテンプレートが、ディスプレイ制御器用である請求項22記載の処理システム。
  24. 前記プロセッサが与える前記情報が、動作モード、チップ選択、アクセスのタイプ、及びアドレスを備える請求項19記載の処理システム。
  25. 前記テンプレートが、前記装置のアクセス・プロトコルを備える請求項19記載の処理システム。
JP2006535566A 2003-10-14 2004-10-08 メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステム Pending JP2007528050A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/685,561 US7293153B2 (en) 2003-10-14 2003-10-14 Method and system for direct access to a non-memory mapped device memory
PCT/US2004/033292 WO2005038585A2 (en) 2003-10-14 2004-10-08 Method and system for direct access to a non-memory mapped device memory

Publications (2)

Publication Number Publication Date
JP2007528050A true JP2007528050A (ja) 2007-10-04
JP2007528050A5 JP2007528050A5 (ja) 2007-11-22

Family

ID=34423183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006535566A Pending JP2007528050A (ja) 2003-10-14 2004-10-08 メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステム

Country Status (7)

Country Link
US (1) US7293153B2 (ja)
EP (1) EP1676190A4 (ja)
JP (1) JP2007528050A (ja)
KR (1) KR20060130033A (ja)
CN (1) CN101223511A (ja)
TW (1) TWI345165B (ja)
WO (1) WO2005038585A2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7870323B2 (en) * 2007-12-26 2011-01-11 Marvell World Trade Ltd. Bridge circuit for interfacing processor to main memory and peripherals
TWI412932B (zh) * 2008-03-28 2013-10-21 Hon Hai Prec Ind Co Ltd 主設備對從設備之自動定址系統
US8977895B2 (en) * 2012-07-18 2015-03-10 International Business Machines Corporation Multi-core diagnostics and repair using firmware and spare cores
CN103678244B (zh) * 2012-09-12 2017-09-05 周松 一种不使用应用处理器的智能设备
US9377968B2 (en) * 2013-11-13 2016-06-28 Sandisk Technologies Llc Method and system for using templates to communicate with non-volatile memory
US10495338B2 (en) * 2015-05-20 2019-12-03 Mitsubishi Electric Corporation Remote controller setting device
US11550681B2 (en) 2020-11-02 2023-01-10 Nxp Usa, Inc. System and method for error injection in system-on-chip

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05307512A (ja) * 1992-05-01 1993-11-19 Sharp Corp 通信端末装置
JPH08274814A (ja) * 1994-12-28 1996-10-18 At & T Corp ネットワーク通信カスタマイズのための方法とシステム
JPH11212903A (ja) * 1997-11-06 1999-08-06 Hitachi Ltd データ処理システム、周辺装置及びマイクロコンピュータ
JP2000235542A (ja) * 1999-02-16 2000-08-29 Sony Corp データ処理装置及び記録媒体
JP2002099498A (ja) * 2000-09-25 2002-04-05 Mitsubishi Electric Corp プログラム実行装置およびプログラム開発支援装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0484253A (ja) 1990-07-26 1992-03-17 Mitsubishi Electric Corp バス幅制御回路
US5546553A (en) 1990-09-24 1996-08-13 Texas Instruments Incorporated Multifunctional access devices, systems and methods
US5649142A (en) 1991-10-24 1997-07-15 Intel Corporation Method and apparatus for translating addresses using mask and replacement value registers and for accessing a service routine in response to a page fault
US6088624A (en) 1996-12-09 2000-07-11 Rockwell Technologies, Llc Industrial controller with flexible data structures
JP3168255B2 (ja) 1997-02-06 2001-05-21 ファナック株式会社 機械やロボットを駆動制御するプロセッサを備えた制御装置の運転方法
US7493368B2 (en) 2000-12-01 2009-02-17 Sony Corporation System and method for effectively providing user information from a user device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05307512A (ja) * 1992-05-01 1993-11-19 Sharp Corp 通信端末装置
JPH08274814A (ja) * 1994-12-28 1996-10-18 At & T Corp ネットワーク通信カスタマイズのための方法とシステム
JPH11212903A (ja) * 1997-11-06 1999-08-06 Hitachi Ltd データ処理システム、周辺装置及びマイクロコンピュータ
JP2000235542A (ja) * 1999-02-16 2000-08-29 Sony Corp データ処理装置及び記録媒体
JP2002099498A (ja) * 2000-09-25 2002-04-05 Mitsubishi Electric Corp プログラム実行装置およびプログラム開発支援装置

Also Published As

Publication number Publication date
KR20060130033A (ko) 2006-12-18
EP1676190A4 (en) 2007-08-22
TWI345165B (en) 2011-07-11
TW200523789A (en) 2005-07-16
EP1676190A2 (en) 2006-07-05
CN101223511A (zh) 2008-07-16
US7293153B2 (en) 2007-11-06
WO2005038585A2 (en) 2005-04-28
US20050080949A1 (en) 2005-04-14
WO2005038585A3 (en) 2007-01-25

Similar Documents

Publication Publication Date Title
US5392391A (en) High performance graphics applications controller
US5796413A (en) Graphics controller utilizing video memory to provide macro command capability and enhanched command buffering
JP6078173B2 (ja) アイドル状態の構成要素の電力を落とすことによるディスプレイパイプラインにおける電力節約方法及び機器
US20070055813A1 (en) Accessing external memory from an integrated circuit
JPH09128249A (ja) プロセッサが拡張したシステム管理モードを実現するコンピュータシステム
US9400760B2 (en) Information processor with tightly coupled smart memory unit
WO2004006103A9 (en) Method and system for improving access latency of multiple bank devices
JP3940435B2 (ja) ダイレクト・メモリ・アクセス(dma)バイト・スワッピングを実行する方法および装置
JP2007528050A (ja) メモリ・マップされないデバイス・メモリへの直接アクセス方法及びシステム
CN116700795B (zh) 一种位操作控制系统及控制方法
JP2000276370A (ja) マイクロコンピュータ、電子機器及びエミュレーション方法
US6097403A (en) Memory including logic for operating upon graphics primitives
CN115101025B (zh) 一种支持虚拟帧缓冲的lcd控制电路及其控制方法
GB2258069A (en) High speed computer graphics bus
JP2003186667A (ja) 間接インタフェース
US6799247B1 (en) Remote memory processor architecture
JP4111192B2 (ja) メモリコントローラ、表示コントローラ及びメモリ制御方法
JP2007528050A5 (ja)
CN113961487A (zh) 加速存储器存取的电子装置及方法
JPWO2004077304A1 (ja) データ転送装置
US7075546B2 (en) Intelligent wait methodology
KR940004735B1 (ko) 그래픽 처리 시스템
US20140092123A1 (en) Drawing control device
CN117768598B (zh) 一种接收led控制卡单端信号并转发为差分信号的装置
US20020174290A1 (en) Memory accelerator, acceleration method and associated interface card and motherboard

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071004

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071004

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100624

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101119