(57)【要約】本発明の実施例に従って簡潔に述べると、情報を転送する方法および装置がここに提供される。その方法は、バスを使用して、装置からの情報の転送中にバス上の活動（アクティビティ）をモニタし、そのバス活動に基づくダイレクト・メモリ・アクセス（ＤＭＡ）リクエストを生成することを含む。
2005531084.tif 000002
【特許請求の範囲】
【請求項１】
バスを使用して装置からの情報の転送中にバス上の活動をモニタする段階と、
前記バス上の前記活動に基づいてダイレクト・メモリ・アクセス（ＤＭＡ）リクエストを生成する段階と、
を含むことを特徴とする方法。
【請求項２】
生成する段階は、前記バス上の信号が前記バスを使用する装置からの情報の転送が完了したことを示す場合に、ＤＭＡリクエストを生成する段階を含むことを特徴とする請求項１記載の方法。
【請求項３】
生成する段階は、前記バス上の信号が第１のレベルから第２のレベルへ遷移する場合に、ＤＭＡリクエストを生成する段階を含むことを特徴とする請求項１記載の方法。
【請求項４】
生成する段階は、前記バス上の信号が予め定めるレベルにある場合に、前記ＤＭＡリクエストを生成する段階を含むことを特徴とする請求項１記載の方法。
【請求項５】
モニタする段階は、ＤＭＡイベントを検出するために前記バスをモニタする段階を含むことを特徴とする請求項１記載の方法。
【請求項６】
生成する段階は、前記ＤＭＡイベントに応答して前記ＤＭＡリクエストを生成する段階をさらに含むことを特徴とする請求項５記載の方法。
【請求項７】
前記ＤＭＡイベントの予め定める回数に応答して前記ＤＭＡリクエストを生成する段階をさらに含むことを特徴とする請求項５記載の方法。
【請求項８】
前記ＤＭＡイベントに応答して前記ＤＭＡリクエストを生成し、前記ＤＭＡリクエストは前記ＤＭＡイベント後の予め定める時間で生成される段階をさらに含むことを特徴とする請求項５記載の方法。
【請求項９】
前記ＤＭＡイベントは、前記バスを使用する装置からの情報の転送が完了したことを示すイベントであることを特徴とする請求項５記載の方法。
【請求項１０】
非ＤＭＡ装置から情報を転送するためにダイレクト・メモリ・アクセス（ＤＭＡ）コントローラを使用する段階を含むことを特徴とする方法。
【請求項１１】
情報が非ＤＭＡ装置から転送される準備ができているかどうかを判断するために非ＤＭＡ装置に結合されたバスをモニタする段階をさらに含むことを特徴とする請求項１０記載の方法。
【請求項１２】
非ＤＭＡ装置に結合された前記バス上の信号が、情報が非ＤＭＡ装置から転送される準備ができていることを示す場合に、ＤＭＡリクエストを生成する段階をさらに含むことを特徴とする請求項１１記載の方法。
【請求項１３】
第２装置からの情報の転送が完了したかどうかを判断するために適合され、かつ、前記第２装置からの前記情報の転送が完了した場合にダイレクト・メモリ・アクセス（ＤＭＡ）リクエストを生成するために適合した第１装置、
を含むことを特徴とする装置。
【請求項１４】
前記第２装置に結合されたバスをさらに含み、前記第１装置は前記第２装置からの情報の転送が完了したかどうかを判断するために前記バス上の信号をモニタすることを特徴とする請求項１３記載の装置。
【請求項１５】
前記第２装置が非ＤＭＡ装置であることを特徴とする請求項１３記載の装置。
【請求項１６】
前記第１装置に結合されたＤＭＡコントローラをさらに含み、前記ＤＭＡコントローラは前記ＤＭＡリクエストを受信するために適合し、かつ、前記ＤＭＡリクエストに応答して、前記第２装置から、またはその装置に情報を転送するために適合していることを特徴とする請求項１３記載の装置。
【請求項１７】
前記ＤＭＡコントローラはＤＭＡリクエストを受信するために少なくとも２つのＤＭＡリクエスト入力端子を具備し、前記第２装置は非ＤＭＡ装置であり、また、前記第２装置は前記ＤＭＡコントローラの前記ＤＭＡリクエスト入力端子のいずれにも接続されないことを特徴とする請求項１６記載の装置。
【請求項１８】
プロセッサと、
前記プロセッサに結合されたワイヤレス送受信機と、
前記プロセッサに結合されたバスと、
前記バスに結合された第１装置と、
第１装置からの情報の転送が完了したかどうかを判断するためにバスをモニタするように適合した第２装置であり、前記第２装置からの情報の転送が完了した場合、ダイレクト・メモリ・アクセス（ＤＭＡ）リクエストを生成するために適合した第２装置と、
を含むことを特徴とするシステム。
【請求項１９】
前記第２装置に結合されたＤＭＡコントローラをさらに含むことを特徴とする請求項１８記載のシステム。
【請求項２０】
前記ＤＭＡコントローラは前記ＤＭＡリクエストを受信するためのＤＭＡリクエスト入力端子を有し、前記第１装置は前記ＤＭＡコントローラの前記ＤＭＡリクエスト入力端子のいずれにも接続されないことを特徴とする請求項１９記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を転送する方法および装置に関する。
【背景技術】
【０００２】
計算機システム中のマイクロプロセッサは、システム内における情報の転送を開始し、制御することができる。マイクロプロセッサは、システム内の他のコンポーネントより比較的早い速度で動作することができる。従って、マイクロプロセッサは、データの転送を始めた後に２つの比較的より遅い周辺機器間でデータが転送されるのを待つ間に、かなりの量のアイドル時間を消費する。
【０００３】
このように、情報を転送する代替となる方法に対する絶え間ない必要性がある。
【０００４】
本発明と考えられる主題は、明細書の最後の部分に特に指摘され明確に請求される。しかしながら、請求された主題は、その目的、構成および利点と共に、その動作の構成および方法の両方に関して、その添付図面とともに下記の詳細な説明を参照することによって最もよく理解されるであろう。
【０００５】
図示の単純化および明瞭化のために、図中で示された要素が実際の寸法で必ずしも描かれていないことが認識されるだろう。例えば、要素のいくつかの寸法は、明瞭化のために他の要素と比べて誇張されている。さらに、適切であると考えられる場合、参照数字は対応するか類似した要素を示すために図面間において繰り返される。
【発明の開示】
【０００６】
以下の詳細な説明では、請求された主題についての完全な理解を提供するために、多くの特定の詳細説明が述べられる。しかしながら、請求された主題がこれらの特定の詳細説明なしに実施できることを当業者は理解するであろう。他の例では、周知の方法、手順、コンポーネントおよび回路は、請求された主題を不明瞭にしないために詳細には記述されていない。
【０００７】
請求された主題の実施例は、その動作を実行するための装置を含んでいる。この装置は、所望の目的のために特に構成され、あるいは、その装置に格納されたプログラムによって選択的に起動されまたは再構成される汎用目的の計算装置を含んでいてもよい。そのようなプログラムは、フレキシブル・ディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスク、電気機械式ディスク、リード・オンリ・メモリ（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、電気的にプログラム可能リード・オンリ・メモリ（ＥＰＲＯＭ）、電気的消去可能かつプログラム可能なリード・オンリ・メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、磁気または光カード、あるいは電子的な命令およびデータを格納するのに適している他のあらゆるタイプの記憶媒体を含むあらゆるタイプの格納媒体上に格納することができるが、しかしこれらに制限されることはない。
【０００８】
下記説明および請求項では、用語「結合された」および「接続された」が、それらの派生語と共に、使用されてもよい。これらの用語が互いに同義語として意図されないことを理解しなければならない。もっと正確に言えば、特別の実施例では、「接続された」は２つ以上の要素が互いに直接の物理的電気的な接触中であることを示すために使用されてもよい。「結合された」は、２つ以上の要素が直接の物理的電気的な接触中であることを意味する。しかしながら、「結合された」は、さらに２つ以上の要素が互いに直接の接触はないがまだ互いに協力するか、相互作用があることを意味する。
【０００９】
図１に移って、計算機システム１００の実施例が図示される。計算機システム１００は、例えば、個人用デジタル情報処理端末（ＰＤＡ）、２方向ページャ、携帯電話、ポータブル・コンピュータ、デスクトップ・コンピュータ、ワークステーション、サーバまたはビデオ機器のような多種多様なアプリケーションの中で使用され得る。請求された主題の範囲およびアプリケーションがこれらの実施例に制限されることは全くないということが指摘される。
【００１０】
この実施例では、計算機システム１００は、外部バス・コントローラ１２０、通信バス・コントローラ１３０、内部バス・コントローラ１４０、ダイレクト・メモリ・アクセス（ＤＭＡ）コントローラ１５０およびＤＭＡリクエスト生成器１６０に接続されるプロセッサ１１０を含む。ＤＭＡコントローラ１５０は、外部バス・コントローラ１２０、通信バス・コントローラ１３０、内部バス・コントローラ１４０およびＤＭＡリクエスト生成器１６０に接続される。外部バス・コントローラ１２０は、バス１７０に接続され、通信バス・コントローラ１３０はバス１８０に接続され、内部バス・コントローラ１４０はバス１９０に接続される。ＤＭＡリクエスト生成器１６０は、バス１７０，１８０，１９０に接続される。計算機システム１００は、バス１９０に接続された内部メモリ２７０をさらに含んでもよい。図１に示された実施例中には示されていないが、代替の実施例では、プロセッサ１１０はバス１７０，１８０，１９０に直接接続される。さらに、代替の実施例では、ＤＭＡコントローラ１５０は、バス１７０，１８０，１９０に直接接続されてもよい。
【００１１】
さらに、計算機システム１００は、例えばデジタル・カメラ、ディスプレイ、キーボード、メモリ装置、プリンタ、オーディオ装置などのような周辺機器（図示せず）へのインターフェイスの装置を含んでいてもよい。これらの周辺機器は入出力（Ｉ／Ｏ）装置または外部装置と呼ばれてもよい。図１に図示された実施例では、計算機システム１００は、周辺機器へのインターフェイスを行なう次の装置、すなわち、外部メモリ・コントローラ２１０、表示コントローラ２２０、カメラ・コントローラ２３０、オーディオ・コントローラ２４０、シリアル・フェリフェラル・インターフェイス（serial peripheral interface:ＳＰＩ）２５０、非同期シリアル通信用送受信機（universal asynchronous receiver transmitter:ＵＡＲＴ）２６０を含んでもよい。これらのインターフェイス装置は、周辺機器に集積（「オンチップ」）されてもよく、あるいは別の実施例では、個別部品であってもよい。インターフェイス装置も周辺機器と呼ばれる。外部メモリ・コントローラ２１０、表示コントローラ２２０、カメラ・コントローラ２３０およびオーディオ・コントローラ２４０は、バス１７０に接続されてもよい。ＳＰＩ２５０およびＵＡＲＴ２６０は、バス１８０に接続されてもよい。
【００１２】
バス１７０，１８０，１９０は、計算機システム１００の一部から他の部分へ情報を送信するために、例えば、データ・ラインの集合からなるデータ経路であってよいが、請求された主題の範囲がこれに限定されることはない。プロセッサ１１０は、例えば、１以上のマイクロプロセッサ、デジタル信号プロセサ、マイクロコントローラまたはその他これらに類似するものを含む。プロセッサ１１０は、例えば、ソフトウェア・プログラムまたはオペレーティング・システムのようなソフトウェア・プロセスを実行するが、そこではソフトウェア・プロセスは、例えば、データや命令のようなデジタル情報を使用する。
【００１３】
内部メモリ２７０は格納装置と呼ばれることがあり、例えば、プロセッサ１１０によって実行されるオペレーティング・システムまたはソフトウェア・プログラムによって使用される命令またはデータのような情報を格納するのに適合する。いくつかの実施例では、内部メモリ２７０は、例えば、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）またはダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）のような揮発性メモリであってよいが、請求された主題の範囲がこの点に制限されることはない。代替の実施例では、内部メモリ２７０は、例えば、電気的プログラム可能リード・オンリ・メモリ（ＥＰＲＯＭ）、電気的抹消可能およびプログラム可能リード・オンリ・メモリ（ＥＥＰＲＯＭ）のような不揮発性メモリ、またはフラッシュ・メモリ（１つのセル当たり複数ビットを含むＮＡＮＤまたはＮＯＲタイプ）であってよい。
【００１４】
ここに、データ、情報という用語が相互に交換して使用することができることに注目されるべきである。例えば、データは、さらにデータおよび／または命令の双方に言及する。さらに、情報、データという用語は、単一ビット情報のまたは１ビットを越える情報を指すこともある。
【００１５】
いくつかの実施例では、計算機システム１００内の情報の転送を制御するために、バス・コントローラ１２０，１３０，１４０は、プロセッサ１１０またはＤＭＡコントローラ１５０と共に使用される。バス・コントローラ１２０，１３０，１４０は、情報を格納するためにバッファ、キューまたはレジスタを含み、計算機システム１００中の情報の転送を制御する制御、アドレスおよびデータ信号を生成するために適合した回路類をさらに含む。例えば、バス・コントローラ１２０，１３０，１４０は、制御信号、アドレス信号およびデータ信号を生成し、それらは計算機システム１００中で様々な装置への特定の書き込みまたは読み取り動作に関連する。
【００１６】
上述のように、プロセッサ１１０は情報の転送を制御するために、バス・コントローラ１２０，１３０，１４０と共に使用されてもよい。例えば、計算機システム１００の多様な周辺および内部装置間の情報の転送を開始するために、プロセッサ１１０は、バス・コントローラ１２０，１３０，１４０にデータ、アドレスおよび制御情報を提供する。
【００１７】
計算機システム１００中のメモリ装置間における情報の転送を制御するため、あるいは計算機システム１００中のメモリ装置と周辺機器との間の情報の転送を制御するために、ＤＭＡコントローラ１５０は、バス・コントローラ１２０，１３０，１４０と共に使用されてもよい。ＤＭＡコントローラ１５０は、プロセッサ１１０を使用せずに、メモリ装置へまたはそのメモリ装置からの情報の転送を行なうことができる。ＤＭＡコントローラ１５０を使用する転送は、ＤＭＡ転送と呼ばれる。
【００１８】
ＤＭＡコントローラ１５０は、予め定める数のＤＭＡチャンネルを有し、各チャンネルは計算機システム１００中の特定の装置に専用される。ＤＭＡコントローラ１５０は、計算機システム１００中のメモリ装置または周辺機器からのＤＭＡリクエストを受信するために予め定める数のＤＭＡリクエスト入力端子を含む。ＤＭＡリクエストの受信に応答して、ＤＭＡコントローラ１５０はＤＭＡ転送を開始する。周辺機器またはメモリ装置がＤＭＡリクエスト入力端子の１つへＤＭＡリクエストを送信するのに適合している場合、周辺機器またはメモリ装置はＤＭＡ装置と呼ばれ、ＤＭＡインターフェイスを具備する。ＤＭＡ装置のＤＭＡインターフェイスは、ＤＭＡ装置へおよびＤＭＡ装置からの情報を転送するために、ＤＭＡコントローラ１５０とＤＭＡ装置との間でハンドシェークを提供する。
【００１９】
非ＤＭＡ装置はＤＭＡインターフェイスを具備しない装置であり、例えば、これらの装置はＤＭＡリクエスト入力端子にアクセスすることができない。いくつかの実施例では、非ＤＭＡ装置は、非ＤＭＡ装置へおよび非ＤＭＡ装置からの情報を転送するために、ＤＭＡコントローラ１５０ではなく、プロセッサ１１０を使用することができる。内部メモリ２７０、ＳＰＩ２５０、ＵＡＲＴ２６０、コントローラ２１０、２２０、２３０および２４０は、ＤＭＡ装置または非ＤＭＡ装置のいずれかとして形成される。
【００２０】
例として、カメラ・コントローラ２３０は、カメラ（図示せず）に接続される。カメラ・コントローラ２３０はＤＭＡインターフェイスであってよく、つまり、この例において、カメラ・コントローラ２３０は、バス１７０および外部バス・コントローラ１２０を介してＤＭＡコントローラ１５０のＤＭＡリクエスト入力端子へＤＭＡリクエストを送るために適合する。この例において、カメラおよびカメラ・コントローラ２３０は、ＤＭＡインターフェイスを具備するＤＭＡ装置と考えられる。ＤＭＡコントローラ１５０は、カメラから内部メモリ２７０へデータ・ブロックを転送するために使用される。この例において、ＤＭＡリクエストに先立って、プロセッサ１１０はＤＭＡコントローラ１５０に次の事項、すなわちソース・アドレス、行先アドレス、および、転送データのサイズを供給する。ソース・アドレスはカメラ中のデータ・ブロックの場所であり、また、行先アドレスはＤＭＡ転送中に内部メモリ２７０のどこへデータを置くべきかを示す場所である。カメラ・コントローラ２３０は、ＤＭＡリクエストの生成によりＤＭＡ転送を引き起こすために形成される。
【００２１】
ＤＭＡリクエストは、カメラ・コントローラ２３０からバス１７０および外部バス・コントローラ１２０を経由して、ＤＭＡリクエスト入力端子のうちの１つへ転送される。ＤＭＡリクエストに応答して、ＤＭＡコントローラ１５０は、ＤＭＡコントローラ１５０がバス１７０，１９０を制御することを示す信号をプロセッサ１１０に送信する。プロセッサ１１０がバス１７０，１９０の制御を開放した後、ＤＭＡコントローラ１５０はＤＭＡ確認信号をカメラ・コントローラ２３０へ送信する。ＤＭＡ転送中に、バス１７０，１９０は、プロセッサ１１０ではなくＤＭＡコントローラ１５０によって駆動され、また、ＤＭＡコントローラ１５０は、ＤＭＡ転送を行なうための適切な信号を生成する。ＤＭＡ転送の間、データはカメラから内部メモリ２７０へ直接に転送され、または、別の実施例では、データはＤＭＡコントローラ１５０を通過させてもよい。この実施例では、ＤＭＡ転送中、データ・ブロックは、最初カメラからバス１７０を介して外部バス・コントローラ１２０へ転送され、その後データ・ブロックは外部バス・コントローラ１２０から内部バス・コントローラ１４０へ転送され、そしてデータ・ブロックは内部バス・コントローラ１４０からバス１９０を経由して内部メモリ２７０へ転送される。
【００２２】
ＤＭＡリクエスト生成器１６０は、これらのバス上の活動（アクティビティ）をモニタするためにバス１７０，１８０，１９０に接続される。ＤＭＡリクエスト生成器１６０は、ＤＭＡコントローラ１５０の１またはそれ以上のＤＭＡリクエスト入力端子に接続される。
【００２３】
ＤＭＡリクエスト生成器１６０は、バスを使用して、装置へまたはその装置からの情報の転送中に、バス上に転送された信号の活動をモニタすることができ、ＤＭＡリクエスト生成器１６０はそのバスの活動に基づいてＤＭＡリクエストを生成することができる。いくつかの実施例では、ＤＭＡリクエスト生成器１６０は、コントローラ２１０、コントローラ２２０、コントローラ２３０またはコントローラ２４０へ、またはそれらのコントローラからの情報の転送中に、バス１７０上の活動をモニタすることができる。さらに、ＤＭＡリクエスト生成器１６０は、ＳＰＩ２５０またはＵＡＲＴ２６０へ、またはそれらからの情報の転送中に、バス１８０上の活動をモニタする。さらに、ＤＭＡリクエスト生成器１６０は、内部メモリ２７０へまたは内部メモリからの情報の転送中に、バス１９０上の活動をモニタすることができる。
【００２４】
ＤＭＡリクエスト生成器１６０は、ＤＭＡのイベントを検出するように適合されており、そのＤＭＡイベントに応答してＤＭＡトリガを生成する。いくつかの実施例では、ＤＭＡリクエスト生成器１６０は、ＤＭＡイベントを検出するために外部専用ピン（図示せず）に接続される。ＤＭＡイベントは予め定められたイベントである。例えば、装置からの情報ブロックの転送完了は、ＤＭＡイベントとして定義されるが、請求された主題の範囲はこの点に制限されることはない。あるいは、非ＤＭＡ装置から情報を転送する要求は、ＤＭＡイベントである。
【００２５】
ＤＭＡリクエスト生成器１６０は、ＤＭＡイベントが生じたかどうか、例えば、装置からの情報ブロックの転送が完了したかどうかを判断するために装置に結合されたバスをモニタする。ＤＭＡイベントの検出に応答して、ＤＭＡリクエスト生成器１６０は、ＤＭＡリクエストを生成し、ＤＭＡコントローラ１５０のＤＭＡリクエスト入力端子の１つへこの要求を転送する。換言すれば、ＤＭＡリクエスト生成器１６０は、装置からの情報ブロックの転送が完了したかどうかを判断するためにバスをモニタするように適合し、また装置からの情報ブロックの転送が完了する場合にＤＭＡリクエストを生成するように適合されている。ＤＭＡリクエスト生成器１６０からのＤＭＡリクエストを受信することに応答して、ＤＭＡコントローラ１５０は多くの方法で応答する。例えば、ＤＭＡコントローラ１５０は、別の装置へ情報ブロックのＤＭＡ転送を開始するか、または、代替の実施例では、ＤＭＡコントローラ１５０は、装置からの別の情報ブロックの転送を別に開始することができる。
【００２６】
装置からの情報ブロックの転送が完了したかどうか判断するために、ＤＭＡリクエスト生成器１６０は、バス上の１つまたは多くの信号をモニタする。例えば、ＤＭＡリクエスト生成器１６０は、周辺またはメモリ装置のチップ選択（ＣＳ）信号、バスを介して送信されたアクセス信号（例えば、読み取りまたは書き込み信号）、またはバス上のアドレス信号をモニタしてもよい。
【００２７】
いくつかの実施例では、ＤＭＡコントローラ１５０は、非ＤＭＡ装置からの情報を転送するために使用されてもよい。例えば、カメラ・コントローラ２３０が非ＤＭＡ装置である場合、ＤＭＡリクエスト生成器１６０は、情報がカメラ・コントローラ２３０から転送されるかどうかを判断するためにバス１７０上のバス活動をモニタしてもよい。カメラ・コントローラ２３０に結合されたバス１７０上の信号は、カメラ・コントローラ２３０から情報を転送できる準備ができていることを示し、次に、リクエスト生成器１６０がＤＭＡコントローラ１５０を使用して、カメラ・コントローラ２３０からのＤＭＡ転送を開始するＤＭＡリクエストを生成することを要求する。
【００２８】
いくつかの実施例では、ＤＭＡリクエスト生成器１６０は、ＤＭＡコントローラ１５０へのＤＭＡリクエストの転送タイミングを制御する。例えば、ＤＭＡリクエスト生成器１６０は、ＤＭＡイベントを検出した後またはＤＭＡトリガを受け取った後、予め定める遅延後にまたは予め定める時間後にＤＭＡリクエストをＤＭＡコントローラ１５０へ送信する。代替の実施例では、ＤＭＡリクエスト生成器１６０は、ＤＭＡリクエストをＤＭＡコントローラ１５０へ直ちに転送し、次にＤＭＡトリガを受信する。あるいは、ＤＭＡリクエスト生成器１６０は、予め定めるＤＭＡのイベントの回数を検出した後にＤＭＡリクエストをＤＭＡコントローラ１５０へ転送する。ＤＭＡリクエストをＤＭＡコントローラ１５０へ送信するタイミングの制御によって、ＤＭＡリクエスト生成器１６０は、計算機システム１００中の情報の流れを制御しかつバランスを保つ。
【００２９】
図２に移って、ＤＭＡリクエスト生成器１６０の実施例が、請求された主題の実施例に従って図示される。この実施例では、ＤＭＡリクエスト生成器１６０は、トリガ生成器３７０、トリガ生成器３７０に接続されたリクエスト生成器３８０、および、トリガ生成器３７０およびリクエスト生成器３８０に接続されたコントローラ装置３９０を含む。
【００３０】
トリガ生成器３７０は、バス１７０，１８０，１９０に接続され、これらのバス上の活動をモニタする。トリガ生成器３７０は、バス１７０，１８０，１９０上の活動に応答してＤＭＡトリガを生成する。ＤＭＡトリガは生成器３８０を要求するために転送される。
【００３１】
リクエスト生成器３８０は、ＤＭＡコントローラ１５０の１またはそれ以上のＤＭＡリクエスト入力端子に接続される。いくつかの実施例では、ＤＭＡトリガに応答して、リクエスト生成器３８０は、ＤＭＡ転送を始めるために、ＤＭＡリクエスト入力端子の１つへＤＭＡリクエストを直ちに送信する。代替の実施例では、リクエスト生成器３８０は、ＤＭＡトリガを受け取った後予め定める時間してＤＭＡコントローラ１５０にＤＭＡリクエストを送信する。他の実施例では、複数のＤＭＡトリガを受け取った後に、リクエスト生成器３８０はＤＭＡリクエストをＤＭＡコントローラ１５０に送信する。例えば、少なくとも３つのＤＭＡトリガを受け取った後に、リクエスト生成器３８０はＤＭＡリクエストをＤＭＡコントローラ１５０に送信するために形成される。
【００３２】
コントロール装置３９０は、トリガ生成器３７０およびリクエスト生成器３８０を制御し形成するように適合する。いくつかの実施例では、プロセッサ１１０から構成情報を得るために、コントロール装置３９０はプロセッサ１１０に接続される。例えば、プロセッサ１１０は、トリガ生成器３７０がバス１７０，１８０，１９０上でどんな情報をモニタするかを定義する。さらに、プロセッサ１１０は、どんな条件の下でかつリクエスト生成器３８０がいつＤＭＡリクエストを生成するかを定義する。
【００３３】
例として、図１および図２の両方を参照して、２つの情報ブロックが、カメラ・コントローラ２３０に結合されたカメラ（図示せず）から転送される。２つの情報ブロックは内部メモリ２７０に転送される。２つの別個の転送動作が２つの情報ブロックを転送するために使用され、各転送はカメラから内部メモリ２７０への情報ブロックを段階的に送信することを含む。例えば、最初の段階で、情報ブロックは、最初にカメラ・コントローラ２３０へ転送される。次のステージ中に、その情報ブロックは、バス１７０を経由して、カメラ・コントローラ２３０から外部バス・コントローラ１２０へ転送される。次のステージでは、情報ブロックは、外部バス・コントローラ１２０から内部バス・コントローラ１４０へ転送される。最終段階では、情報ブロックは、内部バス・コントローラ１４０からバス１９０を経由して内部メモリ２７０へ転送される。
【００３４】
カメラ・コントローラ２３０は、例えばコントローラ１２０，１３０，１４０、プロセッサ１１０、ＤＭＡコントローラ１５０、ＤＭＡリクエスト生成器１６０および内部メモリ２７０と比較して、比較的遅い装置である。従って、カメラ・コントローラ２３０から外部バス・コントローラ１２０までの情報の転送は、例えば外部バス・コントローラ１２０と内部バス・コントローラ１４０との間の情報の転送と比較して、あるいは内部バス・コントローラ１４０と内部メモリ２７０との間の情報の転送と比較して、比較的遅い。
【００３５】
いくつかの実施例では、最初の情報ブロックはカメラ・コントローラ２３０から外部バス・コントローラ１２０へ転送され、ＤＭＡリクエスト生成器１６０は、カメラ・コントローラ２３０からの最初の情報ブロックの転送が完了したかどうか判断するためにバス１７０をモニタする。この転送中に、ＤＭＡリクエスト生成器１６０がカメラ・コントローラ２３０と外部バス・コントローラ１２０との間の情報の転送をモニタしているので、ＤＭＡコントローラ１５０は、計算機システム１００中の他の装置間においてＤＭＡ転送を自由に行なうことができる。例えば、カメラ・コントローラ２３０と外部バス・コントローラ１２０との間で最初の情報ブロックを転送している間、ＤＭＡコントローラ１５０がアイドル状態でこの転送の完了を待機するよりむしろ、ＤＭＡコントローラ１５０が例えばＳＰＩ２５０と内部メモリ２７０との間で情報の転送を支援するために使用されてもよい。ＤＭＡリクエスト生成器１６０は、カメラ・コントローラ２３０からの最初の情報ブロックの転送が完了したかどうか判断するためにバス１７０をモニタする。カメラ・コントローラ２３０からの最初の情報ブロックの転送が完了した場合、カメラ・コントローラ２３０からの第２の情報ブロックのＤＭＡ転送を開始するために、ＤＭＡリクエスト生成器１６０はＤＭＡリクエストをＤＭＡコントローラ１５０に送信する。
【００３６】
ＤＭＡリクエスト生成器１６０は、バス１７０上の１または多くの信号をモニタする。例えば、ＤＭＡリクエスト生成器１６０は、カメラ・コントローラ２３０のＣＳ入力端子へ送信されたチップ選択（ＣＳ）信号をモニタする。カメラ・コントローラ２３０へ転送されたＣＳ信号が読み取り動作中に低へアサートされた場合、その後、トリガ生成器３７０は、カメラ・コントローラ２３０からの情報の転送が完了したかどうか判断するために、ＣＳ信号の立ち上がりエッジを検出するように形成される。トリガ生成器３７０がＣＳ信号の立ち上がりエッジを検出する場合、その後、トリガ生成器３７０はＤＭＡトリガを生成し、そのＤＭＡトリガをリクエスト生成器３８０へ送信する。換言すれば、ＣＳ信号が比較的低い電圧レベルから比較的高い電圧へ遷移したことをトリガ生成器３７０が検出した場合、トリガ生成器３７０は、ＤＭＡトリガをリクエスト生成器３８０へ送信する。
【００３７】
別の実施例では、ＤＭＡリクエスト生成器１６０は、バス１７０を経由してカメラ・コントローラ２３０の入力端子へ転送されたアクセス信号（例えば、読み取り信号または書き込み信号）をモニタすることができる。例えば、カメラ・コントローラ２３０に送信された読み取り信号が読み取り動作中に低にアサートされる場合、その後、トリガ生成器３７０は、カメラ・コントローラ２３０からの情報の転送が完了したかどうかを判断するために読み取り信号の立ち上がりエッジを検出するように形成される。他の実施例では、ＤＭＡリクエスト生成器１６０は、バス１７０を経由してカメラ・コントローラ２３０の入力端子へ転送されたアドレスまたはデータ信号をモニタする。カメラ・コントローラ２３０に送信されたアドレスまたはデータ信号の１つ以上は、カメラ・コントローラ２３０からの情報の転送がいつ完了したかの表示を提供する。例えば、カメラ・コントローラ２３０からの情報の転送が完了したかどうか判断するために、１以上の信号のレベルまたは値が予め定めるレベルまたは値と比較される。トリガ生成器３７０は、カメラ・コントローラ２３０からの情報の転送が完了したかどうか判断するための比較を行なうために形成される。そのレベルまたは値が前もって定義したレベルまたは値と等しい場合、その後、トリガ生成器３７０は、ＤＭＡトリガを生成するために形成される。
【００３８】
図３を参照して、請求された主題の実施例に従うポータブル通信装置４００が示される。ポータブル通信装置４００は、バス・コントローラ４２０、バス・コントローラ４３０、ＤＭＡコントローラ４５０およびＤＭＡリクエスト生成器４６０に接続されるプロセッサ４１０を含む。ＤＭＡコントローラ４５０は、バス・コントローラ４２０、バス・コントローラ４３０およびＤＭＡリクエスト生成器４６０に接続される。バス・コントローラ４２０はバス４７０に接続され、また、バス・コントローラ４３０はバス４８０に接続される。ＤＭＡリクエスト生成器４６０はバス４７０，４８０に接続される。ポータブル通信装置４００は、バス４８０に接続されたメモリ５７０をさらに含む。ワイヤレス送受信機５００はアンテナ５１０およびバス４７０に接続される。さらに、ポータブル通信装置４００は、インターフェイス装置５２０，５３０を含み、両方はバス４７０に接続される。
【００３９】
図１および図３を参照して、インターフェイス装置５２０，５３０の動作は、ＳＰＩ２５０、ＵＡＲＴ２６０、コントローラ２１０、コントローラ２２０、コントローラ２３０またはコントローラ２４０の動作に類似する。バス・コントローラ４２０の動作は、外部バス・コントローラ１２０または通信バス・コントローラ１３０の動作に類似する。バス・コントローラ４３０の動作は、内部バス・コントローラ１４０の動作に類似する。プロセッサ４１０、ＤＭＡコントローラ４５０およびＤＭＡリクエスト生成器４６０の動作は、プロセッサ１１０、ＤＭＡコントローラ１５０およびＤＭＡリクエスト生成器１６０の動作にそれぞれ類似する。
【００４０】
ポータブル通信装置４００は、無線周波数（ＲＦ）信号を備えた無線通信ネットワーク間でメッセージを送信し受信するためにアンテナ５１０を備えるワイヤレス送受信機５００を使用する。
【００４１】
ポータブル通信装置４００は、メッセージを送信し受信するために次の通信エアー・インターフェース・プロトコルのうちの１つ、すなわち、符号分割多元接合（ＣＤＭＡ）、セルラー無線電話通信システム、セルラー無線電話通信システムであるグローバル移動体通信システム（ＧＳＭ）、セルラー無線電話通信システムである北米デジタル・セルラー（ＮＡＤＣ）、時分割多元接続（ＴＤＭＡ）システム、拡張ＴＤＭＡ（Ｅ−ＴＤＭＡ）セルラー無線電話通信システム、広帯域ＣＤＭＡ（ＷＣＤＭＡ）のような第３世代（３Ｇ）システム、ＣＤＭＡ−２０００、および、これらと同種のシステムに使用することができるが、請求された主題の範囲はこの点に限定されるものではない。
【００４２】
本発明の特徴がここに図示され記述されたが、多くの修正、代替、変更および均等が当業者に想起されるであろう。添付の請求項は、本発明の精神に入る修正および変更をすべて包含すると意図される。
【図面の簡単な説明】
【００４３】
【図１】請求された主題の実施例に従った計算機システムのブロック図である。
【図２】請求された主題の実施例に従ったダイレクト・メモリ・アクセス（ＤＭＡ）リクエスト生成器のブロック図である。
【図３】請求された主題の実施例に従ったポータブル通信装置を図示するブロック図である。
【図１】
2005531084.tif 000003
【図２】
2005531084.tif 000004
【図３】
2005531084.tif 000005
【国際調査報告】
2005531084.tif 000006
2005531084.tif 000007
2005531084.tif 000008