JP2005531084A - 情報を転送する方法および装置 - Google Patents

情報を転送する方法および装置 Download PDF

Info

Publication number
JP2005531084A
JP2005531084A JP2004517588A JP2004517588A JP2005531084A JP 2005531084 A JP2005531084 A JP 2005531084A JP 2004517588 A JP2004517588 A JP 2004517588A JP 2004517588 A JP2004517588 A JP 2004517588A JP 2005531084 A JP2005531084 A JP 2005531084A
Authority
JP
Japan
Prior art keywords
dma
bus
controller
information
request
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
JP2004517588A
Other languages
English (en)
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of JP2005531084A publication Critical patent/JP2005531084A/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
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

本発明の実施例に従って簡潔に述べると、情報を転送する方法および装置がここに提供される。その方法は、バスを使用して、装置からの情報の転送中にバス上の活動(アクティビティ)をモニタし、そのバス活動に基づくダイレクト・メモリ・アクセス(DMA)リクエストを生成することを含む。

Description

本発明は、情報を転送する方法および装置に関する。
計算機システム中のマイクロプロセッサは、システム内における情報の転送を開始し、制御することができる。マイクロプロセッサは、システム内の他のコンポーネントより比較的早い速度で動作することができる。従って、マイクロプロセッサは、データの転送を始めた後に2つの比較的より遅い周辺機器間でデータが転送されるのを待つ間に、かなりの量のアイドル時間を消費する。
このように、情報を転送する代替となる方法に対する絶え間ない必要性がある。
本発明と考えられる主題は、明細書の最後の部分に特に指摘され明確に請求される。しかしながら、請求された主題は、その目的、構成および利点と共に、その動作の構成および方法の両方に関して、その添付図面とともに下記の詳細な説明を参照することによって最もよく理解されるであろう。
図示の単純化および明瞭化のために、図中で示された要素が実際の寸法で必ずしも描かれていないことが認識されるだろう。例えば、要素のいくつかの寸法は、明瞭化のために他の要素と比べて誇張されている。さらに、適切であると考えられる場合、参照数字は対応するか類似した要素を示すために図面間において繰り返される。
以下の詳細な説明では、請求された主題についての完全な理解を提供するために、多くの特定の詳細説明が述べられる。しかしながら、請求された主題がこれらの特定の詳細説明なしに実施できることを当業者は理解するであろう。他の例では、周知の方法、手順、コンポーネントおよび回路は、請求された主題を不明瞭にしないために詳細には記述されていない。
請求された主題の実施例は、その動作を実行するための装置を含んでいる。この装置は、所望の目的のために特に構成され、あるいは、その装置に格納されたプログラムによって選択的に起動されまたは再構成される汎用目的の計算装置を含んでいてもよい。そのようなプログラムは、フレキシブル・ディスク、光ディスク、CD−ROM、光磁気ディスク、電気機械式ディスク、リード・オンリ・メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、電気的にプログラム可能リード・オンリ・メモリ(EPROM)、電気的消去可能かつプログラム可能なリード・オンリ・メモリ(EEPROM)、フラッシュ・メモリ、磁気または光カード、あるいは電子的な命令およびデータを格納するのに適している他のあらゆるタイプの記憶媒体を含むあらゆるタイプの格納媒体上に格納することができるが、しかしこれらに制限されることはない。
下記説明および請求項では、用語「結合された」および「接続された」が、それらの派生語と共に、使用されてもよい。これらの用語が互いに同義語として意図されないことを理解しなければならない。もっと正確に言えば、特別の実施例では、「接続された」は2つ以上の要素が互いに直接の物理的電気的な接触中であることを示すために使用されてもよい。「結合された」は、2つ以上の要素が直接の物理的電気的な接触中であることを意味する。しかしながら、「結合された」は、さらに2つ以上の要素が互いに直接の接触はないがまだ互いに協力するか、相互作用があることを意味する。
図1に移って、計算機システム100の実施例が図示される。計算機システム100は、例えば、個人用デジタル情報処理端末(PDA)、2方向ページャ、携帯電話、ポータブル・コンピュータ、デスクトップ・コンピュータ、ワークステーション、サーバまたはビデオ機器のような多種多様なアプリケーションの中で使用され得る。請求された主題の範囲およびアプリケーションがこれらの実施例に制限されることは全くないということが指摘される。
この実施例では、計算機システム100は、外部バス・コントローラ120、通信バス・コントローラ130、内部バス・コントローラ140、ダイレクト・メモリ・アクセス(DMA)コントローラ150およびDMAリクエスト生成器160に接続されるプロセッサ110を含む。DMAコントローラ150は、外部バス・コントローラ120、通信バス・コントローラ130、内部バス・コントローラ140およびDMAリクエスト生成器160に接続される。外部バス・コントローラ120は、バス170に接続され、通信バス・コントローラ130はバス180に接続され、内部バス・コントローラ140はバス190に接続される。DMAリクエスト生成器160は、バス170,180,190に接続される。計算機システム100は、バス190に接続された内部メモリ270をさらに含んでもよい。図1に示された実施例中には示されていないが、代替の実施例では、プロセッサ110はバス170,180,190に直接接続される。さらに、代替の実施例では、DMAコントローラ150は、バス170,180,190に直接接続されてもよい。
さらに、計算機システム100は、例えばデジタル・カメラ、ディスプレイ、キーボード、メモリ装置、プリンタ、オーディオ装置などのような周辺機器(図示せず)へのインターフェイスの装置を含んでいてもよい。これらの周辺機器は入出力(I/O)装置または外部装置と呼ばれてもよい。図1に図示された実施例では、計算機システム100は、周辺機器へのインターフェイスを行なう次の装置、すなわち、外部メモリ・コントローラ210、表示コントローラ220、カメラ・コントローラ230、オーディオ・コントローラ240、シリアル・フェリフェラル・インターフェイス(serial peripheral interface:SPI)250、非同期シリアル通信用送受信機(universal asynchronous receiver transmitter:UART)260を含んでもよい。これらのインターフェイス装置は、周辺機器に集積(「オンチップ」)されてもよく、あるいは別の実施例では、個別部品であってもよい。インターフェイス装置も周辺機器と呼ばれる。外部メモリ・コントローラ210、表示コントローラ220、カメラ・コントローラ230およびオーディオ・コントローラ240は、バス170に接続されてもよい。SPI250およびUART260は、バス180に接続されてもよい。
バス170,180,190は、計算機システム100の一部から他の部分へ情報を送信するために、例えば、データ・ラインの集合からなるデータ経路であってよいが、請求された主題の範囲がこれに限定されることはない。プロセッサ110は、例えば、1以上のマイクロプロセッサ、デジタル信号プロセサ、マイクロコントローラまたはその他これらに類似するものを含む。プロセッサ110は、例えば、ソフトウェア・プログラムまたはオペレーティング・システムのようなソフトウェア・プロセスを実行するが、そこではソフトウェア・プロセスは、例えば、データや命令のようなデジタル情報を使用する。
内部メモリ270は格納装置と呼ばれることがあり、例えば、プロセッサ110によって実行されるオペレーティング・システムまたはソフトウェア・プログラムによって使用される命令またはデータのような情報を格納するのに適合する。いくつかの実施例では、内部メモリ270は、例えば、スタティック・ランダム・アクセス・メモリ(SRAM)またはダイナミック・ランダム・アクセス・メモリ(DRAM)のような揮発性メモリであってよいが、請求された主題の範囲がこの点に制限されることはない。代替の実施例では、内部メモリ270は、例えば、電気的プログラム可能リード・オンリ・メモリ(EPROM)、電気的抹消可能およびプログラム可能リード・オンリ・メモリ(EEPROM)のような不揮発性メモリ、またはフラッシュ・メモリ(1つのセル当たり複数ビットを含むNANDまたはNORタイプ)であってよい。
ここに、データ、情報という用語が相互に交換して使用することができることに注目されるべきである。例えば、データは、さらにデータおよび/または命令の双方に言及する。さらに、情報、データという用語は、単一ビット情報のまたは1ビットを越える情報を指すこともある。
いくつかの実施例では、計算機システム100内の情報の転送を制御するために、バス・コントローラ120,130,140は、プロセッサ110またはDMAコントローラ150と共に使用される。バス・コントローラ120,130,140は、情報を格納するためにバッファ、キューまたはレジスタを含み、計算機システム100中の情報の転送を制御する制御、アドレスおよびデータ信号を生成するために適合した回路類をさらに含む。例えば、バス・コントローラ120,130,140は、制御信号、アドレス信号およびデータ信号を生成し、それらは計算機システム100中で様々な装置への特定の書き込みまたは読み取り動作に関連する。
上述のように、プロセッサ110は情報の転送を制御するために、バス・コントローラ120,130,140と共に使用されてもよい。例えば、計算機システム100の多様な周辺および内部装置間の情報の転送を開始するために、プロセッサ110は、バス・コントローラ120,130,140にデータ、アドレスおよび制御情報を提供する。
計算機システム100中のメモリ装置間における情報の転送を制御するため、あるいは計算機システム100中のメモリ装置と周辺機器との間の情報の転送を制御するために、DMAコントローラ150は、バス・コントローラ120,130,140と共に使用されてもよい。DMAコントローラ150は、プロセッサ110を使用せずに、メモリ装置へまたはそのメモリ装置からの情報の転送を行なうことができる。DMAコントローラ150を使用する転送は、DMA転送と呼ばれる。
DMAコントローラ150は、予め定める数のDMAチャンネルを有し、各チャンネルは計算機システム100中の特定の装置に専用される。DMAコントローラ150は、計算機システム100中のメモリ装置または周辺機器からのDMAリクエストを受信するために予め定める数のDMAリクエスト入力端子を含む。DMAリクエストの受信に応答して、DMAコントローラ150はDMA転送を開始する。周辺機器またはメモリ装置がDMAリクエスト入力端子の1つへDMAリクエストを送信するのに適合している場合、周辺機器またはメモリ装置はDMA装置と呼ばれ、DMAインターフェイスを具備する。DMA装置のDMAインターフェイスは、DMA装置へおよびDMA装置からの情報を転送するために、DMAコントローラ150とDMA装置との間でハンドシェークを提供する。
非DMA装置はDMAインターフェイスを具備しない装置であり、例えば、これらの装置はDMAリクエスト入力端子にアクセスすることができない。いくつかの実施例では、非DMA装置は、非DMA装置へおよび非DMA装置からの情報を転送するために、DMAコントローラ150ではなく、プロセッサ110を使用することができる。内部メモリ270、SPI250、UART260、コントローラ210、220、230および240は、DMA装置または非DMA装置のいずれかとして形成される。
例として、カメラ・コントローラ230は、カメラ(図示せず)に接続される。カメラ・コントローラ230はDMAインターフェイスであってよく、つまり、この例において、カメラ・コントローラ230は、バス170および外部バス・コントローラ120を介してDMAコントローラ150のDMAリクエスト入力端子へDMAリクエストを送るために適合する。この例において、カメラおよびカメラ・コントローラ230は、DMAインターフェイスを具備するDMA装置と考えられる。DMAコントローラ150は、カメラから内部メモリ270へデータ・ブロックを転送するために使用される。この例において、DMAリクエストに先立って、プロセッサ110はDMAコントローラ150に次の事項、すなわちソース・アドレス、行先アドレス、および、転送データのサイズを供給する。ソース・アドレスはカメラ中のデータ・ブロックの場所であり、また、行先アドレスはDMA転送中に内部メモリ270のどこへデータを置くべきかを示す場所である。カメラ・コントローラ230は、DMAリクエストの生成によりDMA転送を引き起こすために形成される。
DMAリクエストは、カメラ・コントローラ230からバス170および外部バス・コントローラ120を経由して、DMAリクエスト入力端子のうちの1つへ転送される。DMAリクエストに応答して、DMAコントローラ150は、DMAコントローラ150がバス170,190を制御することを示す信号をプロセッサ110に送信する。プロセッサ110がバス170,190の制御を開放した後、DMAコントローラ150はDMA確認信号をカメラ・コントローラ230へ送信する。DMA転送中に、バス170,190は、プロセッサ110ではなくDMAコントローラ150によって駆動され、また、DMAコントローラ150は、DMA転送を行なうための適切な信号を生成する。DMA転送の間、データはカメラから内部メモリ270へ直接に転送され、または、別の実施例では、データはDMAコントローラ150を通過させてもよい。この実施例では、DMA転送中、データ・ブロックは、最初カメラからバス170を介して外部バス・コントローラ120へ転送され、その後データ・ブロックは外部バス・コントローラ120から内部バス・コントローラ140へ転送され、そしてデータ・ブロックは内部バス・コントローラ140からバス190を経由して内部メモリ270へ転送される。
DMAリクエスト生成器160は、これらのバス上の活動(アクティビティ)をモニタするためにバス170,180,190に接続される。DMAリクエスト生成器160は、DMAコントローラ150の1またはそれ以上のDMAリクエスト入力端子に接続される。
DMAリクエスト生成器160は、バスを使用して、装置へまたはその装置からの情報の転送中に、バス上に転送された信号の活動をモニタすることができ、DMAリクエスト生成器160はそのバスの活動に基づいてDMAリクエストを生成することができる。いくつかの実施例では、DMAリクエスト生成器160は、コントローラ210、コントローラ220、コントローラ230またはコントローラ240へ、またはそれらのコントローラからの情報の転送中に、バス170上の活動をモニタすることができる。さらに、DMAリクエスト生成器160は、SPI250またはUART260へ、またはそれらからの情報の転送中に、バス180上の活動をモニタする。さらに、DMAリクエスト生成器160は、内部メモリ270へまたは内部メモリからの情報の転送中に、バス190上の活動をモニタすることができる。
DMAリクエスト生成器160は、DMAのイベントを検出するように適合されており、そのDMAイベントに応答してDMAトリガを生成する。いくつかの実施例では、DMAリクエスト生成器160は、DMAイベントを検出するために外部専用ピン(図示せず)に接続される。DMAイベントは予め定められたイベントである。例えば、装置からの情報ブロックの転送完了は、DMAイベントとして定義されるが、請求された主題の範囲はこの点に制限されることはない。あるいは、非DMA装置から情報を転送する要求は、DMAイベントである。
DMAリクエスト生成器160は、DMAイベントが生じたかどうか、例えば、装置からの情報ブロックの転送が完了したかどうかを判断するために装置に結合されたバスをモニタする。DMAイベントの検出に応答して、DMAリクエスト生成器160は、DMAリクエストを生成し、DMAコントローラ150のDMAリクエスト入力端子の1つへこの要求を転送する。換言すれば、DMAリクエスト生成器160は、装置からの情報ブロックの転送が完了したかどうかを判断するためにバスをモニタするように適合し、また装置からの情報ブロックの転送が完了する場合にDMAリクエストを生成するように適合されている。DMAリクエスト生成器160からのDMAリクエストを受信することに応答して、DMAコントローラ150は多くの方法で応答する。例えば、DMAコントローラ150は、別の装置へ情報ブロックのDMA転送を開始するか、または、代替の実施例では、DMAコントローラ150は、装置からの別の情報ブロックの転送を別に開始することができる。
装置からの情報ブロックの転送が完了したかどうか判断するために、DMAリクエスト生成器160は、バス上の1つまたは多くの信号をモニタする。例えば、DMAリクエスト生成器160は、周辺またはメモリ装置のチップ選択(CS)信号、バスを介して送信されたアクセス信号(例えば、読み取りまたは書き込み信号)、またはバス上のアドレス信号をモニタしてもよい。
いくつかの実施例では、DMAコントローラ150は、非DMA装置からの情報を転送するために使用されてもよい。例えば、カメラ・コントローラ230が非DMA装置である場合、DMAリクエスト生成器160は、情報がカメラ・コントローラ230から転送されるかどうかを判断するためにバス170上のバス活動をモニタしてもよい。カメラ・コントローラ230に結合されたバス170上の信号は、カメラ・コントローラ230から情報を転送できる準備ができていることを示し、次に、リクエスト生成器160がDMAコントローラ150を使用して、カメラ・コントローラ230からのDMA転送を開始するDMAリクエストを生成することを要求する。
いくつかの実施例では、DMAリクエスト生成器160は、DMAコントローラ150へのDMAリクエストの転送タイミングを制御する。例えば、DMAリクエスト生成器160は、DMAイベントを検出した後またはDMAトリガを受け取った後、予め定める遅延後にまたは予め定める時間後にDMAリクエストをDMAコントローラ150へ送信する。代替の実施例では、DMAリクエスト生成器160は、DMAリクエストをDMAコントローラ150へ直ちに転送し、次にDMAトリガを受信する。あるいは、DMAリクエスト生成器160は、予め定めるDMAのイベントの回数を検出した後にDMAリクエストをDMAコントローラ150へ転送する。DMAリクエストをDMAコントローラ150へ送信するタイミングの制御によって、DMAリクエスト生成器160は、計算機システム100中の情報の流れを制御しかつバランスを保つ。
図2に移って、DMAリクエスト生成器160の実施例が、請求された主題の実施例に従って図示される。この実施例では、DMAリクエスト生成器160は、トリガ生成器370、トリガ生成器370に接続されたリクエスト生成器380、および、トリガ生成器370およびリクエスト生成器380に接続されたコントローラ装置390を含む。
トリガ生成器370は、バス170,180,190に接続され、これらのバス上の活動をモニタする。トリガ生成器370は、バス170,180,190上の活動に応答してDMAトリガを生成する。DMAトリガは生成器380を要求するために転送される。
リクエスト生成器380は、DMAコントローラ150の1またはそれ以上のDMAリクエスト入力端子に接続される。いくつかの実施例では、DMAトリガに応答して、リクエスト生成器380は、DMA転送を始めるために、DMAリクエスト入力端子の1つへDMAリクエストを直ちに送信する。代替の実施例では、リクエスト生成器380は、DMAトリガを受け取った後予め定める時間してDMAコントローラ150にDMAリクエストを送信する。他の実施例では、複数のDMAトリガを受け取った後に、リクエスト生成器380はDMAリクエストをDMAコントローラ150に送信する。例えば、少なくとも3つのDMAトリガを受け取った後に、リクエスト生成器380はDMAリクエストをDMAコントローラ150に送信するために形成される。
コントロール装置390は、トリガ生成器370およびリクエスト生成器380を制御し形成するように適合する。いくつかの実施例では、プロセッサ110から構成情報を得るために、コントロール装置390はプロセッサ110に接続される。例えば、プロセッサ110は、トリガ生成器370がバス170,180,190上でどんな情報をモニタするかを定義する。さらに、プロセッサ110は、どんな条件の下でかつリクエスト生成器380がいつDMAリクエストを生成するかを定義する。
例として、図1および図2の両方を参照して、2つの情報ブロックが、カメラ・コントローラ230に結合されたカメラ(図示せず)から転送される。2つの情報ブロックは内部メモリ270に転送される。2つの別個の転送動作が2つの情報ブロックを転送するために使用され、各転送はカメラから内部メモリ270への情報ブロックを段階的に送信することを含む。例えば、最初の段階で、情報ブロックは、最初にカメラ・コントローラ230へ転送される。次のステージ中に、その情報ブロックは、バス170を経由して、カメラ・コントローラ230から外部バス・コントローラ120へ転送される。次のステージでは、情報ブロックは、外部バス・コントローラ120から内部バス・コントローラ140へ転送される。最終段階では、情報ブロックは、内部バス・コントローラ140からバス190を経由して内部メモリ270へ転送される。
カメラ・コントローラ230は、例えばコントローラ120,130,140、プロセッサ110、DMAコントローラ150、DMAリクエスト生成器160および内部メモリ270と比較して、比較的遅い装置である。従って、カメラ・コントローラ230から外部バス・コントローラ120までの情報の転送は、例えば外部バス・コントローラ120と内部バス・コントローラ140との間の情報の転送と比較して、あるいは内部バス・コントローラ140と内部メモリ270との間の情報の転送と比較して、比較的遅い。
いくつかの実施例では、最初の情報ブロックはカメラ・コントローラ230から外部バス・コントローラ120へ転送され、DMAリクエスト生成器160は、カメラ・コントローラ230からの最初の情報ブロックの転送が完了したかどうか判断するためにバス170をモニタする。この転送中に、DMAリクエスト生成器160がカメラ・コントローラ230と外部バス・コントローラ120との間の情報の転送をモニタしているので、DMAコントローラ150は、計算機システム100中の他の装置間においてDMA転送を自由に行なうことができる。例えば、カメラ・コントローラ230と外部バス・コントローラ120との間で最初の情報ブロックを転送している間、DMAコントローラ150がアイドル状態でこの転送の完了を待機するよりむしろ、DMAコントローラ150が例えばSPI250と内部メモリ270との間で情報の転送を支援するために使用されてもよい。DMAリクエスト生成器160は、カメラ・コントローラ230からの最初の情報ブロックの転送が完了したかどうか判断するためにバス170をモニタする。カメラ・コントローラ230からの最初の情報ブロックの転送が完了した場合、カメラ・コントローラ230からの第2の情報ブロックのDMA転送を開始するために、DMAリクエスト生成器160はDMAリクエストをDMAコントローラ150に送信する。
DMAリクエスト生成器160は、バス170上の1または多くの信号をモニタする。例えば、DMAリクエスト生成器160は、カメラ・コントローラ230のCS入力端子へ送信されたチップ選択(CS)信号をモニタする。カメラ・コントローラ230へ転送されたCS信号が読み取り動作中に低へアサートされた場合、その後、トリガ生成器370は、カメラ・コントローラ230からの情報の転送が完了したかどうか判断するために、CS信号の立ち上がりエッジを検出するように形成される。トリガ生成器370がCS信号の立ち上がりエッジを検出する場合、その後、トリガ生成器370はDMAトリガを生成し、そのDMAトリガをリクエスト生成器380へ送信する。換言すれば、CS信号が比較的低い電圧レベルから比較的高い電圧へ遷移したことをトリガ生成器370が検出した場合、トリガ生成器370は、DMAトリガをリクエスト生成器380へ送信する。
別の実施例では、DMAリクエスト生成器160は、バス170を経由してカメラ・コントローラ230の入力端子へ転送されたアクセス信号(例えば、読み取り信号または書き込み信号)をモニタすることができる。例えば、カメラ・コントローラ230に送信された読み取り信号が読み取り動作中に低にアサートされる場合、その後、トリガ生成器370は、カメラ・コントローラ230からの情報の転送が完了したかどうかを判断するために読み取り信号の立ち上がりエッジを検出するように形成される。他の実施例では、DMAリクエスト生成器160は、バス170を経由してカメラ・コントローラ230の入力端子へ転送されたアドレスまたはデータ信号をモニタする。カメラ・コントローラ230に送信されたアドレスまたはデータ信号の1つ以上は、カメラ・コントローラ230からの情報の転送がいつ完了したかの表示を提供する。例えば、カメラ・コントローラ230からの情報の転送が完了したかどうか判断するために、1以上の信号のレベルまたは値が予め定めるレベルまたは値と比較される。トリガ生成器370は、カメラ・コントローラ230からの情報の転送が完了したかどうか判断するための比較を行なうために形成される。そのレベルまたは値が前もって定義したレベルまたは値と等しい場合、その後、トリガ生成器370は、DMAトリガを生成するために形成される。
図3を参照して、請求された主題の実施例に従うポータブル通信装置400が示される。ポータブル通信装置400は、バス・コントローラ420、バス・コントローラ430、DMAコントローラ450およびDMAリクエスト生成器460に接続されるプロセッサ410を含む。DMAコントローラ450は、バス・コントローラ420、バス・コントローラ430およびDMAリクエスト生成器460に接続される。バス・コントローラ420はバス470に接続され、また、バス・コントローラ430はバス480に接続される。DMAリクエスト生成器460はバス470,480に接続される。ポータブル通信装置400は、バス480に接続されたメモリ570をさらに含む。ワイヤレス送受信機500はアンテナ510およびバス470に接続される。さらに、ポータブル通信装置400は、インターフェイス装置520,530を含み、両方はバス470に接続される。
図1および図3を参照して、インターフェイス装置520,530の動作は、SPI250、UART260、コントローラ210、コントローラ220、コントローラ230またはコントローラ240の動作に類似する。バス・コントローラ420の動作は、外部バス・コントローラ120または通信バス・コントローラ130の動作に類似する。バス・コントローラ430の動作は、内部バス・コントローラ140の動作に類似する。プロセッサ410、DMAコントローラ450およびDMAリクエスト生成器460の動作は、プロセッサ110、DMAコントローラ150およびDMAリクエスト生成器160の動作にそれぞれ類似する。
ポータブル通信装置400は、無線周波数(RF)信号を備えた無線通信ネットワーク間でメッセージを送信し受信するためにアンテナ510を備えるワイヤレス送受信機500を使用する。
ポータブル通信装置400は、メッセージを送信し受信するために次の通信エアー・インターフェース・プロトコルのうちの1つ、すなわち、符号分割多元接合(CDMA)、セルラー無線電話通信システム、セルラー無線電話通信システムであるグローバル移動体通信システム(GSM)、セルラー無線電話通信システムである北米デジタル・セルラー(NADC)、時分割多元接続(TDMA)システム、拡張TDMA(E−TDMA)セルラー無線電話通信システム、広帯域CDMA(WCDMA)のような第3世代(3G)システム、CDMA−2000、および、これらと同種のシステムに使用することができるが、請求された主題の範囲はこの点に限定されるものではない。
本発明の特徴がここに図示され記述されたが、多くの修正、代替、変更および均等が当業者に想起されるであろう。添付の請求項は、本発明の精神に入る修正および変更をすべて包含すると意図される。
請求された主題の実施例に従った計算機システムのブロック図である。 請求された主題の実施例に従ったダイレクト・メモリ・アクセス(DMA)リクエスト生成器のブロック図である。 請求された主題の実施例に従ったポータブル通信装置を図示するブロック図である。

Claims (20)

  1. バスを使用して装置からの情報の転送中にバス上の活動をモニタする段階と、
    前記バス上の前記活動に基づいてダイレクト・メモリ・アクセス(DMA)リクエストを生成する段階と、
    を含むことを特徴とする方法。
  2. 生成する段階は、前記バス上の信号が前記バスを使用する装置からの情報の転送が完了したことを示す場合に、DMAリクエストを生成する段階を含むことを特徴とする請求項1記載の方法。
  3. 生成する段階は、前記バス上の信号が第1のレベルから第2のレベルへ遷移する場合に、DMAリクエストを生成する段階を含むことを特徴とする請求項1記載の方法。
  4. 生成する段階は、前記バス上の信号が予め定めるレベルにある場合に、前記DMAリクエストを生成する段階を含むことを特徴とする請求項1記載の方法。
  5. モニタする段階は、DMAイベントを検出するために前記バスをモニタする段階を含むことを特徴とする請求項1記載の方法。
  6. 生成する段階は、前記DMAイベントに応答して前記DMAリクエストを生成する段階をさらに含むことを特徴とする請求項5記載の方法。
  7. 前記DMAイベントの予め定める回数に応答して前記DMAリクエストを生成する段階をさらに含むことを特徴とする請求項5記載の方法。
  8. 前記DMAイベントに応答して前記DMAリクエストを生成し、前記DMAリクエストは前記DMAイベント後の予め定める時間で生成される段階をさらに含むことを特徴とする請求項5記載の方法。
  9. 前記DMAイベントは、前記バスを使用する装置からの情報の転送が完了したことを示すイベントであることを特徴とする請求項5記載の方法。
  10. 非DMA装置から情報を転送するためにダイレクト・メモリ・アクセス(DMA)コントローラを使用する段階を含むことを特徴とする方法。
  11. 情報が非DMA装置から転送される準備ができているかどうかを判断するために非DMA装置に結合されたバスをモニタする段階をさらに含むことを特徴とする請求項10記載の方法。
  12. 非DMA装置に結合された前記バス上の信号が、情報が非DMA装置から転送される準備ができていることを示す場合に、DMAリクエストを生成する段階をさらに含むことを特徴とする請求項11記載の方法。
  13. 第2装置からの情報の転送が完了したかどうかを判断するために適合され、かつ、前記第2装置からの前記情報の転送が完了した場合にダイレクト・メモリ・アクセス(DMA)リクエストを生成するために適合した第1装置、
    を含むことを特徴とする装置。
  14. 前記第2装置に結合されたバスをさらに含み、前記第1装置は前記第2装置からの情報の転送が完了したかどうかを判断するために前記バス上の信号をモニタすることを特徴とする請求項13記載の装置。
  15. 前記第2装置が非DMA装置であることを特徴とする請求項13記載の装置。
  16. 前記第1装置に結合されたDMAコントローラをさらに含み、前記DMAコントローラは前記DMAリクエストを受信するために適合し、かつ、前記DMAリクエストに応答して、前記第2装置から、またはその装置に情報を転送するために適合していることを特徴とする請求項13記載の装置。
  17. 前記DMAコントローラはDMAリクエストを受信するために少なくとも2つのDMAリクエスト入力端子を具備し、前記第2装置は非DMA装置であり、また、前記第2装置は前記DMAコントローラの前記DMAリクエスト入力端子のいずれにも接続されないことを特徴とする請求項16記載の装置。
  18. プロセッサと、
    前記プロセッサに結合されたワイヤレス送受信機と、
    前記プロセッサに結合されたバスと、
    前記バスに結合された第1装置と、
    第1装置からの情報の転送が完了したかどうかを判断するためにバスをモニタするように適合した第2装置であり、前記第2装置からの情報の転送が完了した場合、ダイレクト・メモリ・アクセス(DMA)リクエストを生成するために適合した第2装置と、
    を含むことを特徴とするシステム。
  19. 前記第2装置に結合されたDMAコントローラをさらに含むことを特徴とする請求項18記載のシステム。
  20. 前記DMAコントローラは前記DMAリクエストを受信するためのDMAリクエスト入力端子を有し、前記第1装置は前記DMAコントローラの前記DMAリクエスト入力端子のいずれにも接続されないことを特徴とする請求項19記載のシステム。
JP2004517588A 2002-06-27 2003-05-22 情報を転送する方法および装置 Pending JP2005531084A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/186,001 US20040003145A1 (en) 2002-06-27 2002-06-27 Method and apparatus to transfer information
PCT/US2003/016451 WO2004003760A1 (en) 2002-06-27 2003-05-22 Method and apparatus to transfer information

Publications (1)

Publication Number Publication Date
JP2005531084A true JP2005531084A (ja) 2005-10-13

Family

ID=29779784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004517588A Pending JP2005531084A (ja) 2002-06-27 2003-05-22 情報を転送する方法および装置

Country Status (6)

Country Link
US (1) US20040003145A1 (ja)
JP (1) JP2005531084A (ja)
CN (1) CN1679008A (ja)
AU (1) AU2003239625A1 (ja)
TW (1) TWI290679B (ja)
WO (1) WO2004003760A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005104514A1 (fr) * 2004-04-23 2005-11-03 Hui Zhou Tcl Mobile Communication Co., Ltd. Procede et dispositif permettant de photographier avec un telephone mobile
US7912998B2 (en) * 2006-01-06 2011-03-22 Hewlett-Packard Development Company, L.P. DMA access systems and methods
EP1857935B1 (en) * 2006-05-16 2013-10-23 Saab Ab Fault tolerant data bus node in a distributed system
CN106844264A (zh) 2016-12-30 2017-06-13 广东欧珀移动通信有限公司 一种移动终端
CN108470008B (zh) * 2018-01-23 2020-08-14 广州市中海达测绘仪器有限公司 串口数据读写方法、装置、计算机设备和存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179709A (en) * 1989-01-13 1993-01-12 International Business Machines Corporation Look ahead bus transfer request
US5452291A (en) * 1993-11-30 1995-09-19 Panasonic Technologies, Inc. Combination brouter and cluster controller
JPH0830546A (ja) * 1994-07-20 1996-02-02 Nec Niigata Ltd バス制御装置
US5634076A (en) * 1994-10-04 1997-05-27 Analog Devices, Inc. DMA controller responsive to transition of a request signal between first state and second state and maintaining of second state for controlling data transfer
US5732279A (en) * 1994-11-10 1998-03-24 Brooktree Corporation System and method for command processing or emulation in a computer system using interrupts, such as emulation of DMA commands using burst mode data transfer for sound or the like
JPH0954746A (ja) * 1995-08-11 1997-02-25 Toshiba Corp コンピュータシステム
US5884100A (en) * 1996-06-06 1999-03-16 Sun Microsystems, Inc. Low-latency, high-throughput, integrated cache coherent I/O system for a single-chip processor
US6108722A (en) * 1996-09-13 2000-08-22 Silicon Grpahics, Inc. Direct memory access apparatus for transferring a block of data having discontinous addresses using an address calculating circuit
JPH10320349A (ja) * 1997-05-15 1998-12-04 Ricoh Co Ltd プロセッサ及び当該プロセッサを用いるデータ転送システム
US5958024A (en) * 1997-08-29 1999-09-28 Advanced Micro Devices, Inc. System having a receive data register for storing at least nine data bits of frame and status bits indicating the status of asynchronous serial receiver
US6032204A (en) * 1998-03-09 2000-02-29 Advanced Micro Devices, Inc. Microcontroller with a synchronous serial interface and a two-channel DMA unit configured together for providing DMA requests to the first and second DMA channel
US6122679A (en) * 1998-03-13 2000-09-19 Compaq Computer Corporation Master DMA controller with re-map engine for only spawning programming cycles to slave DMA controllers which do not match current programming cycle
US20030023700A1 (en) * 2001-07-27 2003-01-30 Lightsurf Technologies, Inc. System and methodology providing on-board user interface
US7013398B2 (en) * 2001-11-15 2006-03-14 Nokia Corporation Data processor architecture employing segregated data, program and control buses

Also Published As

Publication number Publication date
WO2004003760A1 (en) 2004-01-08
AU2003239625A1 (en) 2004-01-19
CN1679008A (zh) 2005-10-05
US20040003145A1 (en) 2004-01-01
TWI290679B (en) 2007-12-01
TW200422845A (en) 2004-11-01

Similar Documents

Publication Publication Date Title
JP6080984B2 (ja) 異なる相互接続プロトコルのための一つの相互接続プロトコルの列挙および/または設定機構の活用
US8127053B1 (en) System and method for peripheral device communications
US20180329837A1 (en) Input/output direction decoding in mixed vgpio state exchange
CN108304334B (zh) 应用处理器和包括中断控制器的集成电路
WO2019141157A1 (zh) 一种核间数据传输的装置和方法
KR20100096762A (ko) 시스템 온 칩 및 이를 포함하는 전자 시스템
JP2009514084A (ja) リセット装置を具えたデータ処理装置
JP2017519294A (ja) フラッシュメモリベースストレージデバイスのマルチホスト電力コントローラ(mhpc)
WO2006071944A2 (en) Method, apparatus and system to generate an interrupt by monitoring an external interface
TWI396086B (zh) 用於結合於一行動設備中之系統、用於連接及資料傳輸之方法及相關行動設備
US20230325262A1 (en) Message notification method and apparatus
JP2005531084A (ja) 情報を転送する方法および装置
WO2012081085A1 (ja) 割込み要因管理装置及び割込み処理システム
US9563586B2 (en) Shims for processor interface
US8838847B2 (en) Application engine module, modem module, wireless device and method
JP3824511B2 (ja) コンピュータ装置および無線通信モジュールの制御方法
JP4585249B2 (ja) 情報処理装置
US11606316B2 (en) System and method for modem stabilization when waiting for AP-driven link recovery
US20240333650A1 (en) Method and device for performing dynamic traffic shaping
KR100578655B1 (ko) 패킷 전송 시점을 인터럽트로 알리는 무선통신 단말기 및그 방법
CN108153703A (zh) 一种外设访问方法和装置
EP4377783A1 (en) Hierarchical state save and restore for device with varying power states
TW202347135A (zh) 系統及其操作方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070820

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20070928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080121

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080421

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080521

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090223