(57)【要約】一実施形態において、本発明はメモリをアクセスする方法を提供する。その方法は、第１のプロセッサ用のメモリサブシステムへ、前記第１のプロセッサと前記メモリサブシステム間の通信路上に挿入された中間の第２のプロセッサへメモリトランザクションを送信し、前記メモリトランザクションは前記第２プロセッサの通過が可能なときに前記メモリサブシステムに到達するよう制御すること含んでいる。
2005531863.tif 000002
【特許請求の範囲】
【請求項１】
メモリトランザクションを第１プロセッサ用のメモリサブシステムへ、前記第１のプロセッサと前記メモリサブシステム間の通信路上に挿入された中間の第２プロセッサへ送信する処理と、
前記メモリトランザクションは前記第２プロセッサの通過が可能なときに前記メモリサブシステムに到達するよう制御する処理を含むことを特徴とするメモリアクセス方法。
【請求項２】
前記制御処理は、前記メモリトランザクションの通過を遅延させることを含む請求項１に記載の方法。
【請求項３】
前記メモリトランザクションの通過を遅延させることは、前記第２プロセッサによって前記第１プロセッサに対する待ち信号（WAIT signal）を真状態（asserting）にしたり又は準備信号（READY signal）を偽状態（de-asserting）にすることを含む請求項２に記載の方法。
【請求項４】
前記遅延は、前記第２プロセッサによって開始された前記メモリサブシステムの電流メモリ周期を終了することができるのに十分な期間であることを特徴とする請求項２に記載の方法。
【請求項５】
前記制御処理は、前記第２プロセッサによって開始された前記メモリサブシステムの電流メモリ周期を中止する処理を含む請求項１に記載の方法。
【請求項６】
前記中止処理は、データロスなく安全に前記電流メモリ周期を中止することが可能な場合にのみ実行されることを特徴とする請求項５に記載の方法。
【請求項７】
前記中止処理は、前記メモリサブシステムがメモリアクセスを事前に熟考して終了するときにデータの整合性を維持するメモリ素子を含む場合にのみ実行されることを特徴とする請求項６に記載の方法。
【請求項８】
前記制御処理は、アドレス、データ、及び制御信号を前記第１プロセッサから前記第２プロセッサ集合の多重化機構へ送り、前記第１プロセッサからのチップ選択信号を前記目降りサブシステムに対して真状態にするときに前記アドレス、データ、及び制御信号を選択することを含む請求項７に記載の方法。
【請求項９】
前記第２プロセッサからのチップ選択信号を真状態にする場合に、前記多重化機構は、前記第２プロセッサのメモリコントローラによって生成されたアドレス、データ、及び制御信号を選択するように設定される請求項８に記載の方法。
【請求項１０】
前記メモリトランザクションが前記メモリサブシステムに通過するときを知らせるために、前記第１プロセッサからの１以上のチップ選択信号の真状態を同期させることをさらに含む請求項８に記載の方法。
【請求項１１】
中止された電流メモリ周期に関連する情報を保存することをさらに含む請求項１０に記載の方法。
【請求項１２】
前記中止された電流メモリ周期は、前記通過したメモリトランザクションの完了後に再開されることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記第２プロセッサは、プラットフォームに独立した中間言語命令を実行することを特徴とする請求項１に記載の方法。
【請求項１４】
前記メモリサブシステムのメモリ素子で内部に発生した非同期リフレッシュ要求を無効にする処理と、
リフレッシュを実行するときを前記メモリ素子に知らせるために外部リフレッシュ要求信号を発生させる処理をさらに含む請求項１に記載の方法。
【請求項１５】
前記外部リフレッシュ要求信号は、前記第２プロセッサがメモリでアクセスしていないときに当該第２プロセッサによって発生されることを特徴とする請求項１４に記載の方法。
【請求項１６】
前記第１プロセッサは、移動通信装置用のベースバンドプロセッサであることを特徴とする請求項１に記載の方法。
【請求項１７】
前記第２プロセッサは、前記移動通信装置用のアプリケーションプロセッサであることを特徴とする請求項１に記載の方法。
【請求項１８】
第１プロセッサと、
メモリサブシステムと、
前記第１プロセッサが前記メモリサブシステムにアクセスできるようにする、前記第１プロセッサと前記メモリサブシステム間の通信路と、
前記第１プロセッサと前記メモリサブシステム間に挿入され、かつ前記通信路内の中間地点を定義する第２プロセッサとを有するシステムであって、
前記第２プロセッサは、前記第１プロセッサ及び第２プロセッサにより前記メモリサブシステムに対するアクセスを制御するためにメモリコントローラを含むことを特徴とするシステム。
【請求項１９】
前記通信路は、前記第１プロセッサと前記第２プロセッサ間に第１のバス、及び前記第２プロセッサと前記メモリサブシステム間に第２のバスを含むことを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記第２のバスは、前記第２プロセッサを前記メモリサブシステム内の第１及び第２グループのメモリ素子それぞれに対して結合する別個のアドレス及び制御ラインを含むことを特徴とする請求項１８に記載のシステム。
【請求項２１】
前記第１グループのメモリ素子は、前記第１プロセッサによる要求にアクセス可能であり、かつ前記第２グループのメモリ素子は、前記第２グループが前記第２プロセッサによってアクセスされないときにのみ前記第１プロセッサにアクセス可能であることを特徴とする請求項２０に記載のシステム。
【請求項２２】
前記第１グループのメモリ部品内の不揮発性メモリ素子は、前記第１プロセッサによってアクセスされないときのみ前記第２プロセッサに対してアクセス可能であることを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記第２のバスは２つの分離したバスを有し、各バスは前記第２プロセッサを前記メモリサブシステム内の第１及び第２グループのメモリ素子とそれぞれ結合することを特徴とする請求項１８に記載のシステム。
【請求項２４】
前記第２プロセッサは、前記第１プロセッサが前記メモリサブシステムに対してメモリ周期信号を発生するときを検出するために検出機構を含むことを特徴とする請求項１８に記載のシステム。
【請求項２５】
前記第２プロセッサは、前記第１プロセッサからの検出メモリ周期信号を前記第２プロセッサへ通過させることができる通過機構を含むことを特徴とする請求項２４に記載のシステム。
【請求項２６】
前記通過機構は、前記第２プロセッサが前記メモリサブシステムにアクセスしない場合、直ちに、検出メモリ周期信号を前記メモリサブシステムへ通過できるようにすることを特徴とする請求項２５に記載のシステム。
【請求項２７】
データロスなく前記第２プロセッサによる前記メモリサブシステムの最新メモリアクセスを中止できるまで、前記通過機構は、前記メモリサブシステムに対する検出メモリ周期信号の通過を遅延させることを特徴とする請求項２６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータシステム内のメモリアクセスに関し、特に、メモリをアクセスする方法及び当該方法を実行するコンピュータシステムに関するものである。
【背景技術】
【０００２】
ここ数年、無線技術の使用は非常に普及しており、特に無線携帯電話において顕著である。携帯電話は、様々な型の無線周波数ベースバンド及び符号分割多重アクセス（ＣＤＭＡ）、広域自動車通信システム（ＧＳＭ）、汎用パケット無線システム（ＧＰＲＳ），（ＰＤＣ）などのベース局モデムプロトコルを展開する。
【０００３】
一般に、携帯電話は音声通信用でコンピュータ処理上必要なものを提供するベースバンドチップを有している。このベースバンドチップは、通常、中央処理装置（ＣＰＵ）、不揮発性（フラッシュ型メモリ）又は揮発性の擬似スタティックＲＡＭ（ｐＳＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）型のメモリをインタフェースするメモリインタフェース、液晶ディスプレイ（ＬＣＤ）コントローラ、キーボード及び音声装置又はインタフェース、並びにベース局にリンクを確立するために無線周波数（ＲＦ）部品をインタフェースする機構を含んでいる。
【０００４】
最近まで、携帯電話は音声のみ、通信のみに用いられていたが、インターネットとともにＳＫＴ，Ｊ−Ｐｈｏｎ，ＤｏＣｏＭｏ，Ｖｅｒｉｚｏｎ，ボーダフォンなどの様々な無線移動媒体は、加入者あたりの高収益を実現するために携帯電話のユーザにデータサービスを提供するようになってきた。
【０００５】
このようなデータサービスは、ベースバンドチップから高い実行性能を要求するのが一般的である。ある場合では、ベースバンドチップ上の実行要求を少なくするために、特定のアプリケーションを実施するためのアプリケーションチップを提供する。アプリケーションチップ及びベースバンドチップは、メモリサブシステムを要求するのが一般的である。
【０００６】
携帯電話のメモリサブシステムは、携帯電話のうちで最も高価な代表部品の１つであり、それゆえに、ベースバンドチップ及びアプリケーションプロセッサによるメモリサブシステムへのアクセス方法は、携帯電話の価格及び実行性能に重大な影響を与える可能性がある。
【０００７】
（関連出願）
本出願は、１９９８年１２月８日に出願された出願番号０９／２０８，７４１、２０００年１月２０日に出願された出願番号０９／４８８，１８６、２０００年１０月１０日に出願された出願番号６０／２３９，２９８、２０００年１０月１３日に出願された出願番号０９／６８７，７７７、２００１年５月２５日に出願された出願番号０９／８６６，５０８、２００１年７月２日に出願された出願番号６０／３０２，８９１、２００１年８月２４日に出願された出願番号０９／９３８，８８６、２００１年７月１７日に出願された出願番号６０／３０６，３７６、及び出願番号１０／１８７，８５８に関連し、それらすべては引用によりここに組み込まれている。
【０００８】
（発明の詳細な説明）
説明のために、以下の記載では本発明の完全な理解をもたらす多数の特定応用例の詳細について述べる。しかしながら、当業者であればこれら特定応用例の詳細がなくても実行可能であることは明らかであろう。他の例では、本発明の不明瞭さを避けるためにブロック図の形式で、構造及び素子を示す。
【０００９】
本明細書における「一実施形態」又は「ある実施形態」への言及は、本実施形態に関係して述べられた特別な特徴、構造、又は特性が本発明の少なくとも１つの実施形態に含まれることを意味する。本明細書の様々な箇所での「一実施形態において」というフレーズの出現は、同様の実施形態すべてに言及する必要がないばかりか、別の又は代わりの実施形態が、他の実施形態と互いに相反するものでもない。さらに、ある実施形態且つ他の実施形態によるものではなく示され得る様々な特徴を述べる。同様に、ある実施形態のためのものであって他の実施形態のためのものではない様々な要求を述べる。
【００１０】
携帯電話が供給することができるデータサービスは、位置に基づくサービス、地理的位置によって世界的ニュースになり得るリアルタイム又は非リアルタイムニュース、絵、スポーツイベントからのストリーミングビデオ、２次元（２Ｄ）及び３次元（３Ｄ）のゲーム、動画像データ圧縮標準規格（ＭＰＥＧ４）若しくは静止画像データ圧縮標準規格（ＪＰＥＧ）サポート、又は携帯電話へ組み込み可能なカメラを使用したり又はしなかったりするマルチメディアメッセージなどを表示するデータサービスを含む。
【００１１】
これらデータサービスのそれぞれは、ベースバンドチップによって増大された実行性能を要求するアプリケーションによって使用可能になる。ベースバンドチップにアプリケーション機能を組み込むことは実現可能だが、ベースバンドモデム機能及び少なくとも幾つかのアプリケーションを２つの別のチップへ分離することも可能である。また、２つ目のチップは、携帯電話のメモリサブシステムに対するインタフェースを含むだろう。
【００１２】
本発明は、空間内のベースバンド素子及びアプリケーションプロセッサと、コスト制限された携帯電話環境との間で、メモリを共有する機構を提供する。本発明は、携帯電話又は他の同様なシステム、例えば、携帯型情報端末（ＰＤＡ）、双方向無線呼び出し、ポケットＰＣ、ノートコンピュータなどに要求されたメモリが、ベースバンド及びアプリケーションプロセッサによって共有され、これにより低電力消費及び低価格をもたらすような、ベースバンドプロセッサとともにアプリケーションプロセッサを展開する機構を提供する。特に、メモリサブシステムにアクセスすることのために要求されたメモリ及びアービトレーションを共有するよう要求された機構というのは、メモリにアクセスすることが時期尚早に終了し又は中止し、そして後にそのアクセスを再試行する場合に、待ち信号（WAIT signal）又は準備信号（READY signal）なしに、ベースバンドがメモリサブシステム及びアプリケーションプロセッサに直ちにアクセスするだろうというものである。
【００１３】
図１ａは、ベースバンドチップ又はプロセッサ１０１がメモリサブシステム１０２を定義する様々なメモリにどのように結合されているかについての現在の技術例を示している。ベースバンドプロセッサのベースバンドバスは、典型的には、アドレス（ＡＢ）、コントロール（ＣＢ）、チップ選択（ＣＳＢ）と同様にデータバス（ＤＢ）を含む。典型的な携帯電話の場合、様々なタイプのメモリ、即ちＮＯＲフレッシュ及び／又はＮＡＮＤフレッシュ及び／又はミラービットフレッシュ又はＲＯＭのような不揮発性メモリと同様、ＳＲＡＭ（例えば、６トランジスタ型メモリ）型又はｐＳＲＡＭ（擬似スタティックＲＡＭ又はこの均等物）型又はＳＤＲＡＭ（シンクロナスＤＲＡＭ）型のメモリがある。これらのメモリの幾つかは、バースト（burst）モード動作をサポートすることができる。メモリ１０２が重なって示されているが、それらが、メモリ及びベースバンドプロセッサ１０１間に接続された、同じアドレスバス（ＡＢ）、データバス（ＤＢ）、及びコントロール（ＣＢ）を有していることを示し、かつベースバンドプロセッサから接続された個々のチップ選択（ＣＳＢ）を有することができる。
【００１４】
また、ベースバンドチップと同じシリコン上に揮発性及び不揮発性のメモリを組み入れることが可能である。典型的には、ブート（boot）コード及び他の常駐ソフトウェアが、ＮＯＲフラッシュ又はＲＯＭのような不揮発性メモリ内に常駐し、そして実行時データ及び／又はダウンロードされたアプリケーションが揮発性メモリから実行する。また、フラッシュなどの不揮発性メモリ内にダウンロードアプリケーションを格納することができる。
【００１５】
典型的な携帯電話のベースバンドプロセッサ及びメモリ間のデータバス（ＤＢ）は、１６ビット幅であるが、３２ビット又はそれ以上でも良い。コントロールは、典型的にはＯＥ（出力可能）、ＷＥ（出力可能）、及びＢＥ（バイト可能）などの信号を有する。また、ベースバンドインタフェースに対する各メモリ素子用の並列ＣＳＢ（チップ選択）があり、そして図示していないが、同一のベースバンドバス上で、ＬＣＤ、音声又はデジタルカメラ装置などの他の装置をアドレス指定するＣＳＢが存在し得る。
【００１６】
また、いくつかのベースバンドプロセッサは待ち信号をサポートし、そのときは他の装置によってアサート（真）状態にされることでベースバンドプロセッサをベースバンド上の最新の読み出し若しくは書き込みトランザクション、又はアクセス周期を待たせる。あるいはまた、準備信号（READY signal）のアサート（真）状態が、ベースバンドプロセッサに対して、ベースバンドバス（ＤＢ）での読み出しとしてデータを使用可能であったり、又はベースバンドバスのデータが書き込まれた或いは今、書き込み可能であることを知らせる場合に、その準備信号を用いることができる。また、準備信号と同じ方法の待ち信号、及び待ち信号と同じ方法の準備信号を使用することも可能である。
【００１７】
典型的な携帯電話の場合、ベースバンド１０１はベースバンドのコントロールを有し、ベースバンドはこのバス上のトランザクションを開始する。トランザクションタイプ又はアクセスタイプは、正常な読み出し及び書き込み、又はバースト読み出し及びバースト書き込みを含む。一実施形態において、バーストアクセス型のトランザクションは、ベースバンド１０１からメモリへ供給されたクロックを有することができる。他の装置がベースバンドバスのコントロール（即ち、マルチマスター機能性）を要求し、他の装置がベースバンドバス上のトランザクションを開始するという機構を提供することが可能である。要求及び許可型（grant type）の信号プロトコルを用いたコントロールを要求する機構は本発明にとって重要なことではないが、当業者であれば様々なアービテーション方式、及びベースバンドバスのコントロールを望むベースバンドプロセッサ及び他の素子との間の内部結合を理解できるだろう。
【００１８】
アプリケーションプロセッサが用いられる携帯電話の場合、アプリケーションプロセッサが、様々なメモリ（揮発性及び／又は不揮発性）にアクセスすることも必要とされる。ベースバンドがベースバンドバスでマルチマスター機能性をまったく有さず、かつどんな待ち信号又は準備信号も使用できない場合では、ベースバンドプロセッサによって使用されるメモリを共有することは実用的ではない。
【００１９】
図１ｂは、アプリケーションプロセッサ１０３がベースバンドバスにインタフェースし、そのベースバンドがバスのコントロールを維持する典型的なシステムである。アプリケーションプロセッサがバス上のスレーブ素子であり、ベースバンドプロセッサがマスターである。アプリケーションプロセッサ１０３は、典型的にはベースバンドプロセッサと、アプリケーションプロセッサ内に常駐するプロセッサとの間を通信する通信バッファを持っている。マルチマスターシステムにおいて、ベースバンドプロセッサ内に通信バッファ及びセマフォを組み入れることができる。一実施形態において、その通信バッファは、デュアルポートメモリ又はデュアルポートメモリとして実装されたシングルポートメモリであり、アプリケーションプロセッサに埋め込まれる。
【００２０】
メモリ量はアプリケーションに基づいて変化する。他の実施形態では、アプリケーションプロセッサとインタフェースするメモリ１０４に、定義されたプロトコルとデータを常駐させることによって、ベースバンドとアプリケーションプロセッサ１０３との間の通信は、アプリケーションプロセッサ内のレジスタ又はＲＡＭの何れかとして、ハードウェア内に１以上のセマフォを有することにより達成され得る。これはベースバンドがアプリケーションプロセッサ１０３と同時に動作することを可能にする。図１ｂのシステムはメモリサブシステム１０４及びアプリケーションプロセッサ１０３のための空間を必要とする。
【００２１】
さらに、メモリサブシステム１０２を共有することができないので、メモリサブシステム１０４に関する特別なコスト及び電力消費がある。アプリケーションプロセッサ１０３及びメモリサブシステム１０４を１パッケージ１０５内へ機械的にスタックすることが可能である。アプリケーションプロセッサ１０３とメモリサブシステム１０４との間のバス及びインタフェースは、生産での評価以外で、スタックパッケージ１０５の外部ピン又はボールで利用可能に作られる必要はない。ベースバンドバスのインタフェースだけが、スタックパッケージ１０５のピン又はボールで利用可能でなければならない。シリコンの間又はパッケージの基部の上で、少なくともシステムバスの幾つか、即ち１０３と１０４間で行うことができる。
【００２２】
アプリケーションプロセッサ１０３，２０１，２０３，３０１は、アプリケーションを実行するのに必要な機構を内部に有している。さらに、このアプリケーションプロセッサ１０３，２０１，２０３，３０１は、前述した様々な通信バッファを実装することもできる。アプリケーションを実行するために要求される機構は、ベースバンドプロセッサに対するインタフェースを含み、１以上のＣＰＵ及び／又はディジタル信号プロセッサ（ＤＳＰ）が、命令及びデータ用の関連キャッシュ、又は統合キャッシュを含む。様々なプロセッサは、この様々なプロセッサ、メモリサブシステムにインタフェースするメモリコントローラ、内部バス方式用の状態装置及び様々な素子によってアクセスする内部バス及びメモリサブシステム用のアービトレーション（arbitration）、及びメモリコントローラ用の状態装置などのためのデータ書き込み実行性能を高めるために、１以上の書き込みバッファを含む。さらに、アプリケーションプロセッサ１０３，２０１，２０３，３０１は、Ｊａｖａ（登録商標）バイトコード、又はＮＥＴのような他のプラットフォームに独立した中間言語の実行を加速させることができる。一実施形態では、アプリケーションプロセッサは、ＪＡＶＡ又はＮＥＴのようなスタック型仮想装置用のハードウェアアクセラレータ（加速器）を有している。
【００２３】
一実施形態では、Ｊａｖａバイトコードのアクセラレータは、ＣＰＵの１つに結合し、動作時に命令及び／又はデータキャッシュ、又は統合キャッシュを共有する。別の実施形態では、Ｊａｖａバイトコードのアクセラレータは、スタンドアローンアクセラレータとして実行される。このスタンドアローンアクセラレータもまた、命令及び／又はデータキャッシュ、又は統合キャッシュを含む。一実施形態では、Ｊａｖａバイトコードでないすべてがアクセラレータによって実行される。アクセラレータによって実行されないＪａｖａバイトコードは、アプリケーションプロセッサ内のＣＰＵによって、又はベースバンドプロセッサによって、ソフトウェアで実行される。
【００２４】
ベースバンドプロセッサにＪａｖａバイトコードの幾つかをソフトウェアで実行することを要求するために、ソフトウェアで実行するためのＪａｖａバイトコード、Ｊａｖａバイトコードがソフトウェアで実行するためのメモリ又はＪａｖａプログラムカウンタ（ＪａｖａＰＣ）内の位置、及びベースバンドプロセッサに対する例えば「新規」又は「新配列」のバイトコード用の他のパラメータに関するデータを準備することが必要であり、少なくともＪａｖａＰＣ及びオブジェクトの参照を準備することが必要である。
【００２５】
これを実現するために、アプリケーションプロセッサは、後述するバッファ又は後述する同じ通信方法に似た双方向通信バッファを有する。レジスタの信号及び/又はステータスビットは、アクセラレータがＪａｖａバイトコードを実行するためにアプリケーションプロセッサのベースバンド又はＣＰＵを要求していることを知らせるよう要求される。割り込みとしてこの信号をポーリングしたり又は使用することができる。さらに、アプリケーションプロセッサは、ＭＰＥＧ４、デジタルカメラ、ＬＣＤコントローラ、直接メモリアクセス（ＤＭＡ）エンジン、ビデオスカラー、２Ｄ／３Ｄグラフィックアクセラレータのような他の周辺装置又はアクセラレータを、グラフィック及び／又はビデオ、ＩＩＣ／Ｓインタフェース、拡張マーク付け言語（ＸＭＬ）アクセラレータ、同期データリンク制御（ＳＤＬＣ）／ハイレベルデータリンク制御（ＨＤＬＣ）などの通信ポート用のチップフレームバッファ上に有する。
【００２６】
また、アプリケーションプロセッサをアプリケーションアクセラレータチップとして参照することができる。アプリケーションプロセッサは様々な内部レジスタを有し、他の周辺機能と同様にメモリコントローラを構成する。さらに、図１ｂに示された実施形態として、前述したように、ベースバンドプロセッサとアプリケーションプロセッサ間の通信を行うための通信バッファがある。通信バッファの大きさ及びベースバンドプロセッサとの通信を確立する際に幾つのセマフォが要求されるかに関して、この通信バッファを適合性あるように作ることができる。通信バッファの構成は、リセット後にある既知の値に初期設定され、ベースバンドプロセッサによって異なる値にプログラムされることができる。
【００２７】
ベースバンドプロセッサとアプリケーションプロセッサ間の完全な二重通信を確立するために、両プロセッサがこれらのセマフォを管理しなければならない。ベースバンドプロセッサとアプリケーションプロセッサ間の通信を確立する一例は、以下のプロトコルを使用する。通信バッファをスタートさせて（すなわち、ハードウェア若しくはソフトウェアがリセットを開始して）、通信バッファをクリアー（又はクリアーとみなされるように）する。そしてセマフォがクリアーされたり、又は通信バッファに有効なデータが存在しないことを示す。通信バッファは２つのセグメントに分けられる。第１のセグメントは書き込み用ベースバンドプロセッサのため、第２のセグメントは読み出し用ベースバンドプロセッサのためのものである。アプリケーションプロセッサは、第１のセグメントを読み出し、そして第２のセグメントに書き込む。
【００２８】
さらに、両プロセッサは、プロセッサ自身のセマフォレジスタを有し（或いはまた、メモリ又は通信バッファ内の既知の位置にセマフォがあってもよい）、ベースバンドプロセッサ及びアプリケーションプロセッサが制御及びメッセージ用のそれぞれのセマフォを読み出し及び/又は書き込みすることができる。
【００２９】
メッセージを受信するプロセッサは、メッセージを書くプロセッサによって書かれたセマフォをクリアーすることだけできる。セマフォをクリアーするかわりに、セマフォレジスタに肯定フラグメッセージを格納することもできる。リセット状態又はスタートアップをそのままにしておきながら、それぞれのプロセッサは、他のプロセッサの存在を問い合わせること及び有効なメッセージが個々の通信バッファセグメントに書かれてきたことを示すメッセージを個々のセマフォレジスタに書くことにおいて、その書き込みを許可する個々の通信バッファセグメントにクエリー（問合せ）メッセージを書き込む。１又は両方のプロセッサがそのようなクエリー（問合せ）を開始することができる。
【００３０】
メッセージを読み出した後の両プロセッサは、クリアーにしたり、又はメッセージが読み出されたことを示す肯定メッセージを他のプロセッサによって書かれたセマフォレジスタ内に書き込むことができる。セマフォレジスタに書かれるメッセージの他の例は、準備、誤り、又は再試行メッセージなどを含む。セマフォがメッセージを受信するプロセッサによってクリアーにされた後のみ、メッセージを送信するプロセッサは、通信バッファを再度書き込むことによって又は他のメッセージを書き込むこと（posting）によって、クエリーに応答することができる。
【００３１】
アプリケーションプロセッサは、少なくとも１つのＣＳＢ（チップ選択）を要求し、アプリケーションプロセッサ１０３からの書き込み又は読み出しを選択するためのベースバンドを使用できるようにする。図１ｂの典型的な実施形態では、アプリケーションプロセッサ用の付加的なメモリを要求する。さらに、アプリケーションプロセッサ１０３は、ベースバンドプロセッサのメモリサブシステム１０２を共有しない。
【００３２】
図２ａは、ベースバンドプロセッサとそのメモリサブシステム１０２の間のパスに挿入されたアプリケーションプロセッサ２０１を示している。メモリサブシステムにアクセスするベースバンドプロセッサのために、アプリケーションプロセッサを通過させなければならない。このアーキテクチャの場合、ベースバンドは待ち又は準備信号の入力を有していない。そしてアプリケーションプロセッサ２０１は、ベースバンドプロセッサによって要求されたときにベースバンドがメモリサブシステム１０２にアクセスする機構を準備しなければならない。
【００３３】
ベースバンドプロセッサがメモリサブシステムにアクセスすることを許可するアプリケーションプロセッサのための様々な方法がある。ある方法は、前述した通信バッファを介する。別の方法は、後で詳述するように、通信バッファをバイパスするアプリケーションプロセッサを直接通過するものもある。一実施形態では、前記方法の１又は両方の何れかを許可する。
【００３４】
図４ａ及び４ｂは、ベースバンドプロセッサの典型的な読み出し及び書き込み周期を示している。これらは非同期として示されているが、当業者であればクロックが存在するバースト及び同期を含む他の周期が可能であることを理解できるであろう。この例の場合、ｔＲＣ（読み出しアクセス周期時間）及びｔＷＣ（書き込みアクセス周期時間）が、読み出し及び書き込みメモリアクセス周期をそれぞれに完了するためにかかる時間を表す。アプリケーションプロセッサがメモリをアクセスし、かつそのトランザクション又はアクセスを一部介し、そしてベースバンドプロセッサがメモリサブシステムに対するそのアクセスを開始する場合、一実施形態では、アプリケーションプロセッサは、その最新トランザクションを終え、次にベースバンドプロセッサがメモリサブシステム１０２への通過をアクセスさせることができる能力を有している。これは、ベースバンドプロセッサに、アプリケーションプロセッサ２０１がその周期を終えるのを待つ必要がなかった場合に、要求されたアクセス周期時間よりも長いアクセス周期をもつことを要求する。
【００３５】
別の実施形態では、アプリケーションプロセッサ２０１はベースバンドプロセッサが通過できるようにするため、最新のアクセスを直ちに中止するだろう。この実施形態では、アプリケーションプロセッサ２０１は、最新のアクセスを中止したことの表示を維持し、ベースバンドプロセッサがメモリサブシステム１０２に対して直ちにアクセスし通過できるようにする。図４ｃは、時刻ｔＡＢＯＲＴで（ＣＳＭ，ＡＭ，ＤＭ，ＵＢ／ＬＢ，ＯＥＭ，ＷＥＭ）を終了させるアプリケーションプロセッサのメモリコントローラによって開始されたメモリ読み出し周期を示し、これはベースバンドプロセッサが、ロー（low）で示されたメモリサブシステムへの書き込みに起因する。フルアクセス時間よりも小さな時間（＜ｔＲＣ）アドレスＡＭをアサート（真）状態にさせるによって、アプリケーションによって開始されたメモリアクセスが終了することが示されている。
【００３６】
図４ｄは、アプリケーションプロセッサがメモリへ書き込むことを示し、メモリを読み出したいベースバンドによって割りこまれ、アプリケーションプロセッサのメモリコントローラが、アドレスＡＭによって示されたフル周期よりも小さな書き込み周期（＜ｔＷＣ）を終了することになる。すべての組み合わせが示されているわけではないが、当業者であれば、メモリサブシステムの異なるメモリに割り込み且つアクセスするベースバンドを含むすべての組み合わせを理解することができ、アプリケーションプロセッサによって真状態にされたＣＳＭ（メモリに対するチップ選択）は、フル周期よりも短くなるだろう。
【００３７】
１以上のＣＳＢ（アクセスに関するベースバンドから、メモリサブシステム１０２へのチップ選択）の真状態に起因して、アドレス、データ、及びコントロールに関する（図５に示されるような）一組の多重化装置を有することによって、メモリにアクセスするベースバンドの経路を実現することができる。アプリケーションプロセッサ２０１がメモリにアクセスしているとき、アプリケーションプロセッサ２０１内のメモリコントローラによって作られたアドレス、データ、及び制御ラインを選択するようその多重化装置をセットする。１以上のＣＳＢのアサーション（真）状態は、クロックされたフリップフロップ及び／又は、Ｓ／Ｒ（セット／リセット）フリップフロップによって同期され、ベースバンドが通過している表示を生成する。この結果、アプリケーションプロセッサのアクセスが時期尚早に終わっている表示を生成する。一旦、同期装置が表示すれば、ベースバンドはもはやメモリにアクセスせず、アプリケーションプロセッサのメモリアクセスを再試行することができる。
【００３８】
一実施形態では、ベースバンドアクセスを検出する同期装置が、アプリケーションプロセッサ内のクロックのエッジ（edge）を高めるとともに落とすことの両方に使用される。これは、ベースバンドアクセスの検出を早くすることを可能にする。同じクロックが、アプリケーションプロセッサのメモリコントローラによって用いられる。あるいはまた、位相同期ループ（ＰＬＬ）によってたびたびステップアップされたり、又はクロック分岐回路によってたびたびステップダウンされたりするクロックを用いることができる。揮発性メモリ装置のアクセスを打ち切ることは、擬似スタティックＲＡＭなどのダイナミックラム技術に基づくメモリにとって、メモリコアのデータを減少させることができたことに留意されたい。ＳＲＡＭ及び書き込みサイクルが終了される場合、ＳＲＡＭに基づく６トランジスタ（６Ｔ）もまたこの問題を有している。６ＴのＳＲＡＭにおいて、行及び／又は列のデコーダが表されたアドレスのデコードを終えることができない間に、書き込みサイクルが終了する場合、データが失われたり、メモリの未知領域に書き込まれるかもしれない。
【００３９】
データの喪失又は未知領域へのデータの改悪を避けるために、一実施形態では、メモリのデコーダが処理され又は充分なアクセス時間が満たされた後で、アプリケーションプロセッサ１０３,２０１,２０３,３０１が、メモリサブシステムへＷＥ信号をアサート（真態に）するだろう。このデコーダの処理時間後、データが改悪されることになる領域がわかり、書き込みメモリへ表されるアドレスとなる。前述したアプリケーションプロセッサのメモリコントローラは、バースト及び同期サイクルを含む必須タイプのメモリサイクルを生み出すことができる。
【００４０】
一実施形態において、アプリケーションプロセッサ１０３,２０１,２０３,又は３０１は、ベースバンドプロセッサがそのアクセスを終えると、そのアドレスにデータを改悪し且つ書き直す領域のアドレス及びデータを保持するだろう。この技術は、その構造がゆえに６トランジスタ（６Ｔ）ＳＲＡＭで可能であるのに対し、擬似スタティックエスラム（ｐＳＲＡＭ）は、図４ｃ及び図４ｄに示されるタイプの時期尚早の終了サイクルがゆえに複数の領域でデータを失う問題を有している。そこでのサイクルは、それぞれ、ｔＲＣよりも小さい（＜ｔＲＣ）又はｔＷＣよりも小さい（＜ｔＷＣ）。これは、各ビット用に１トランジスタ及び１コンデンサで作られた内部構造で、且つＤＲＡＭに類似する構造を有するｐＳＲＡＭのためである。
【００４１】
ＤＲＡＭと同じように、ｐＳＲＡＭは、内部に生成される擬似リフレッシュを必要とする。典型的には、ｐＳＲＡＭは、特定された又は広告されたアクセス速度よりも内部的に早く動作する。代表的なｐＳＲＡＭの場合、タイマーを用いたリフレッシュ要求を生成するメカニズムがあり、データ行が読み出されかつ再保存されるだろう。また、リフレッシュする行を示すために、増減する行アドレスカウンタがある。各リフレッシュ要求のために、全行がリフレッシュされるまで、データ一行がこの方法でリフレッシュされる。
【００４２】
このリフレッシュメカニズムは継続して行われ、その結果、ｐＳＲＡＭのすべての行が規則的にリフレッシュされることになる。仮にリフレッシュメカニズムが停止されることになれば、ｐＳＲＡＭは、ある有限時間後にデータを失うだろう。それは、リフレッシュサイクルがまさに開始し、外部の装置がｐＳＲＡＭにアクセスしたいということである。ｐＳＲＡＭは、リフレッシュサイクルを終えると、次に外部装置とアクセスすることを許可するのが一般的である。リフレッシュサイクルが終了できるようにしなければならないことから、外部装置は長いアクセス時間（ほぼ２倍の長さ）をみるだろう。リフレッシュ要求がｐＳＲＡＭの内部に非同期に生成されるので、リフレッシュサイクルがいつ生じるかに関しては予測できず、ｐＳＲＡＭのために特定されたアクセス時間がリフレッシュサイクル時間を含む。内部のリフレッシュ要求が外部のアクセスと一致する場合、リフレッシュと同様にアクセスを調整し管理するロジックがある。
【００４３】
アクセスされる特定の行のために、アクセスがコアで保持されるデータを常に取消すので、典型的には、ｐＳＲＡＭ及びＳＤＲＡＭは、アドレスデコード、内部行アクセス、及び事前変換サイクル、データを補充する事前変換サイクルの工程を経る。そのようなｐＳＲＡＭの要求の１つは、全メモリアクセスの間は、少なくともアドレスが固定されていなければならないことである。アドレスが全サイクルで固定されていない場合、データ行の全部又は一部を失う可能性がある。これは、行アクセスが開始され且つＤＲＡＭセルの事前変換サイクル前の行アドレスが変換する場合、新たなアクセスが異なる行のために保証され、そして前の行のデータが失われるだろう。一実施形態において、新たなアドレスのアクセスを開始する前の事前変換サイクルが完了するまで、ｐＳＲＡＭは待つ。一実施形態において、ｐＳＲＡＭがアドレス及びチップ選択の両方のこの特徴を有することが要求されるだろう。
【００４４】
ベースバンドプロセッサが通過するアクセスを開始し、且つリフレッシュ要求が未処理になるときに、アプリケーションプロセッサがｐＳＲＡＭにアクセスする場合、ｐＳＲＡＭは、改悪データに生じたｐＳＲＡＭにアクセスすることを要求する３つのデバイスに遭遇しなければならない。仮に、３つのアクセスのそれぞれが同時に起こり、そして次から次へと終了することを求めていれば、１つのデバイスのアクセス時間が、内部のアクセス時間の２倍以上になっただろう。これは、実行性能をかなり遅延させることを起こさせるだろう。
【００４５】
これを克服するために、一実施形態において、ｐＳＲＡＭの内部リフレッシュ要求を禁止し、且つＲＥＦ＃として図４ｃ及び図４ｄに示されるように、リフレッシュ時を表す外部リフレッシュ要求信号を生成するメカニズムが提供される。ｐＳＲＡＭ内部リフレッシュの禁止は、別の信号を真状態にすること（アサーション）によって実現されることができる。一実施形態において、アプリケーションプロセッサがリフレッシュカウンタ及び調整ロジックを持つことによってｐＳＲＡＭにアクセスしないとき、外部リフレッシュ信号がアプリケーションプロセッサによって生成される。リフレッシュ要求がアプリケーションプロセッサによって生成される一方で、リフレッシュする行を示すｐＳＲＡＭによって、ｐＳＲＡＭの行アドレスカウンタを用いることができる。あるいはまた、アプリケーションプロセッサから、行アドレスカウンタをソース源とすることができる。
【００４６】
一実施形態において、アプリケーションプロセッサがメモリサブシステムにアクセスしていて、アプリケーションプロセッサがそのアクセスを完了する前に、ベースバンドプロセッサがメモリサブシステムに対するアクセスを開始する場合に、アプリケーションプロセッサは、ベースバンドプロセッサへＷＡＩＴ信号をアサートする（真状態にする）、又はベースバンドプロセッサによってサポートされる信号タイプに依存して、ベースバンドプロセッサへＲＥＡＤＹ信号を非アサートにする（真状態でないようにする）。
【００４７】
アプリケーションプロセッサがそのアクセスを完了するのに対して、これらの信号は、ベースバンドプロセッサを立ち往生させる。アサートされるＲＥＡＤＹ信号の場合、ベースバンドプロセッサは、その読み出し又は書き込みトランザクションの有効なデータが完了することを期待することができる。この場合、アプリケーションプロセッサは、あおのアクセスを終えた後で、ＷＡＩＴ信号をアサートすること、又はＲＥＡＤＹ信号を非アサートすることを維持するだろう。次に、アプリケーションプロセッサは、多重化装置をベースバンドアドレス、データ（ベースバンド書き込みアクセスの場合、その他の場合、データは読み出される）、及びメモリサブシステムへの制御ラインのソース源にできるようにする。これにより、メモリサブシステムへの完全なアクセスを充分に行う時間として、ベースバンドプロセッサのためのアクセスを開始する。その後に、アプリケーションプロセッサは、ベースバンドプロセッサに対して、ＷＡＩＴ信号を非アサートしたり、ＲＥＡＤＹ信号をアサートにする。このため、ＷＡＩＴ信号が非アサート又はＲＥＡＤＹ信号がアサートである場合、ベースバンドプロセッサは、有効データを得るだろう。
【００４８】
アプリケーションプロセッサがメモリサブシステムにアクセスするのに対して、アプリケーションプロセッサ１０３,２０１,２０３,及び３０１は、アクセスを要求するベースバンドプロセッサを検出するロジックを含む。また、アプリケーションプロセッサは、ベースバンドのためにメモリアクセスを少なくとも部分的に管理する状態マシーンを含む。
【００４９】
一実施形態において、メモリサブシステムは、他のタイプのメモリに加えて、複数の内部バンクでＳＤＲＡＭを有する。ベースバンドプロセッサが非同期タイプのタイミングを表し、ＳＤＲＡＭメモリがクロックに合わせた同期信号を予定する場合、アプリケーションプロセッサは、ベースバンドアクセスを検出し且つアプリケーションプロセッサのクロックに同期し、ＳＤＲＡＭへの読み出し、書き込み、バースト読み出し、又はバースト書き込みを達成するためにＳＤＲＡＭにアクセスする。ベースバンド及びアプリケーションプロセッサのためのクロックを、互いに同期又は非同期することができる。
【００５０】
一実施形態において、前記説明したようなｐＳＲＡＭに対する同様な方法で、ＳＤＲＡＭのデータ損失を避けるため、アプリケーションプロセッサがメモリサブシステムにアクセスし、且つベースバンドプロセッサがメモリサブシステムへのアクセスを開始し、（その結果、通過を要求する）、そしてアプリケーションプロセッサがまだ終わっていない場合、アプリケーションプロセッサ１０３,２０３,及び３０１は、ＳＤＲＡＭのすべてのバンクではないが、折り合った又は割当てられた１以上のＳＤＲＡＭバンクにアクセスするだろう。さらに、ベースバンドプロセッサは、アプリケーションプロセッサによってアクセスされないバンクに唯一アクセスするだろう。この動作モードは、アプリケーションプロセッサが実行中にのみ観察され、その他の場合、ベースバンドはいつでもすべてのバンクにアクセスすることができる。この動作モードで、アプリケーションプロセッサ１０３,２０３,及び３０１内のＳＤＲＡＭコントローラは、ベースバンドが通過を要求するときに、アプリケーションプロセッサのために少なくとも１つのＳＤＲＡＭバンクを開いたまま、そして、通過中及び／又は通過後にベースバンドプロセッサのために要求されたバンクを単に開いたり及び／又は閉じたりしたままの状態にすることができる。
【００５１】
別の実施形態において、図２ｂに示すようにメモリが２つのグループになっている場合、アプリケーションプロセッサ２０３は、メモリサブシステムに使用できるスプリットバスを有する。グループ２０６は、アドレス（ＡＭ２）、データ（ＤＭ）、チップ選択（ＣＳＭ２）、及び制御（ＣＭ２）を有し、グループ２０５は、自身のアドレス（ＡＭ１）、チップ選択（ＣＳＭ１）、及び制御（ＣＭ１）を有して、データバス（ＤＭ）をグループ２０６と共有する。データバンドプロセッサは、オンデマンドでグループ２０６にアクセスすること、アプリケーションプロセッサ２０３がスタンバイ状態にあるか又はメモリにアクセスしていない場合にグループ２０５にのみアクセスすることが許可される。
【００５２】
これとは逆に、アプリケーションプロセッサは、オンデマンドでグループ２０５のメモリにアクセスすることができるのと同様、グループ２０６の不揮発性メモリにアクセスすることができる。というのは、不揮発性メモリが時期尚早の終了サイクルのためにデータを損失するという問題がないからである。６ＴのＳＲＡＭが揮発性記憶容量に用いられる場合、この制約は要求されない。この場合、アプリケーションプロセッサ又はベースバンドプロセッサの何れか一方が、いつでも両方のグループにアクセスすることができる。さらに、ベースバンドプロセッサはいつでもグループ２０６のメモリにアクセスすることができるので、ベースバンドプロセッサがグループ２０６にアクセスしている間、グループ２０５へ向かうＯＥ以外のアドレス及び制御が固定されたままで且つ変化しないだろう。同時に、データバスが共有されるので、少なくともＯＥ制御がグループ２０５及び２０６の両方のために独立して制御されることが必要であり、このためメモリグループ２０５及び／又は２０６から、及び／又はアプリケーションプロセッサ２０３から、同時にデータバスを駆動する競合（コンテンション）がまったくない。
【００５３】
データバスの競合（コンフリクト）を避けるため、アプリケーションプロセッサ２０３は、グループ２０５のメモリに向かうＯＥを非アサートするだろう。一実施形態において、アプリケーションプロセッサ２０３は、ベースバンドプロセッサがグループ２０６にアクセスしている間、メモリコントロール状態マシーンに内部ストール（stall）又は待ちを生成するだろう。グループ２０５メモリに対するアドレス（ＡＭ１）は、この間、アサートされ且つ固定のままの状態であり、その後にアクセスを終了する。グループ２０５に向かうＣＳＭ１及び／又はＷＥ,ＢＬＥ,ＢＨＥは、アドレス（ＡＭ１）と同様の方法で処理されることができる。
【００５４】
別の実施形態において、アプリケーションプロセッサは、グループ２０５に向かうアドレス（ＡＭ１）をラッチ（latch）し、それらをデータバスの競合（コンテンション）を避けるためにグループ２０５のメモリに対するＯＥを非アサートする間、ラッチしたままの状態にするだろう。アプリケーションプロセッサ２０３のメモリコントローラ状態マシーンは、ベースバンドプロセッサがメモリアクセスを終えると、初めから又はメモリコントローラ状態マシーンを通った一部からの何れかでそのアクセスを再び開始する。これを達成するために、前述した同期装置が用いられベースバンドプロセッサアクセスを検出する。これにより、グループ２０６へ目標設定されたベースバンドプロセッサからの任意のＣＳＢは、通過の表示を作るよう同期される。アプリケーションプロセッサがメモリからデータを読み出し、そしてベースバンドプロセッサがメモリにデータを書き込むことを試みる場合、メモリが使用禁止された出力を持つまで、短期間でバス競合があるだろう。というのは、アプリケーションプロセッサは、通過するためにメモリにデータバスを駆動し始めるからである。
【００５５】
アプリケーションプロセッサが１つのメモリから読み出し、且つベースバンドプロセッサが通過モードにおいて別のメモリから読み出し又は別のメモリへの書き込みを試みる際に、競合が起こる。一実施形態において、アプリケーションプロセッサ１０３,２０１,２０３,及び３０１は、ベースバンドアクセスの開始で、短期間にメモリに向かうデータバスを駆動させず、このため任意のバス競合を避けるだろう。加えて、ベースバンドプロセッサがＯＥ信号をアサートすることがたとえできるとしても、すべてのメモリに対するＯＥ信号は同じような短期間で非アサートされるだろう。この短期間は、プログラム可能に作られ、リセット後の初期値を持っている。グループ２０５及び２０６のメモリは、任意に混合した揮発性及び／又は不揮発性メモリで構成できることに留意されたい。
【００５６】
別の実施形態において、アプリケーションプロセッサ３０１は、図３に示すような、２つのグループのメモリ３０２及び３０３に対する２つの完全且つ独立したバスを有する。両グループは、独立したアドレス、データ、チップ選択、及び制御ラインを持っている。例えば、ベースバンドプロセッサは、グループ３０３にいつでもアクセスし、アプリケーションプロセッサ３０１は、グループ３０２にいつでもアクセスする。また、アプリケーションプロセッサ３０１は、グループ３０３へのベースバンドプロセッサから何のアクセスもないことをまず確かめることによって、グループ３０３の不揮発性メモリにアクセスすることができる。この不揮発性メモリに対するアクセスは、時期尚早に終了し且つ再起動されることができる。ベースバンドプロセッサからのメモリアクセスがアプリケーションプロセッサ及びそのメモリコントローラのクロックと同期している場合、通過を検出する同期装置を用いる必要はない。ＣＳＢ信号のアサーションのみが通過を許可する際の判断を検出するのに必要となる。
【００５７】
アプリケーションプロセッサ１０３,２０１,及び２０３と同様、アプリケーションプロセッサ３０１内にバス競合を避けるためのメカニズムを組み入れることができる。アプリケーションプロセッサ５０１に描画された多重化装置は、多重化装置５０２,５０３,５０４,５０５,及び５０６を通過するために用いられ、分離したり又は共通の選択を通るように制御されるなどのように、通過動作のために分離した選択信号を持つことができる。ベースバンドプロセッサがメモリサブシステムに読み出しアクセスを実行し、その他では、多重化装置５０５,５０６がアプリケーションプロセッサ５０１の内部にデータを読み出すために使用される場合、多重化装置５０５,５０６は、メモリからベースバンドプロセッサへ読み出されたデータを通過することができるようにするため用いられる。一実施形態において、５０１に示された少なくとも１つの多重化装置は、アプリケーションプロセッサ１０３,２０１,２０３,及び３０１内にあるだろう。一実施形態において、アプリケーションプロセッサ１０３,２０１,２０３,及び／又は３０１と、少なくとも幾つかの又はすべてのメモリサブシステムは、アプリケーションプロセッサ及びメモリダイ（die）がパッケージ内にスタックされるスタックパッケージにある。スタックパッケージの別の実施形態において、幾つかのダイは１以上のスタック層に並んで置かれることができる。別の実施形態において、スタック総の１つは、挿入物にマウントされたダイ、又はスタック内の他のダイ、又はパッケージの基盤に対する、信号、バス、及び／又は電源の経路を容易にするシリコンで作られた挿入物である。この種のパッケージングは、携帯電話及び他のデバイスへ処理するアプリケーションを保存するスペースを提供する。
【００５８】
ベースバンドプロセッサの機能性は、音声及び／又はデータのベース基地と通信することを提供するので、ベースバンドのために要求される実行性能は、あまり高くない。この理由のため、市場には多くのベースバンドプロセッサがあり、ベースバンド内のプロセッサは、どんなキャッシュメモリも持っていない。キャッシュメモリ及びＷＡＩＴ又はＲＥＡＤＹ信号のまったく無いベースバンドプロセッサ用として、図６は、ベースバンドプロセッサの高い実行性能を生じさせる前述したアプリケーションプロセッサに、ベースバンド用キャッシュメモリ及びキャッシュコントローラが組み入れられた一実施形態を示している。アプリケーションプロセッサのキャッシュは、キャッシュなしベースバンドプロセッサに対するレベル１キャッシュとして現れる。別の実施形態では、キャッシュされたプロセッサを持つベースバンドプロセッサは、アプリケーションプロセッサのキャッシュがレベル２キャッシュとして動作するような統合キャッシュと一緒に、アプリケーションプロセッサにインタフェースするだろう。これらのキャッシュは、命令キャッシュ及び／又はデータキャッシュ、又は統一キャッシュであり得る。
【００５９】
図７はアプリケーション７０１を示し、それは前述した任意のアプリケーションプロセッサと同様である。さらに、アプリケーションプロセッサ７０１は、ＬＣＤ又は他のディスプレイ装置７０３にインタフェースすることを含む。一実施形態において、イメージがメモリサブシステム７０２に組み入れられるフレームバッファがある。一実施形態では、ベースバンドプロセッサからのコマンドを受信すると、メモリサブシステムからディスプレイ装置へフレームバッファをコピーすることによって、アプリケーションプロセッサ７０１が、ディスプレイ装置のイメージをロードし且つ更新する。また、メモリサブシステムからのデータバスは、ディスプレイ装置のデータバス及びアドレスに接続され、及び／又はアプリケーションプロセッサ７０１からの制御信号はディスプレイ装置をアサートして、イメージをディスプレイ装置にロードする。アプリケーションプロセッサ７０１は、アドレス及び／又は制御信号をディスプレイ装置にアサートする間、メモリサブシステムからの読み出しアクセス動作を実行する。これにより、フレームバッファから読み出されるイメージデータを、ディスプレイ装置に直接的にロードする。これは、画像データを省電力で消費するディスプレイ装置にロードする有効な方法を提供する。これにより、携帯電話のバッテリー寿命を改善することができる。
【００６０】
別の実施形態では、フレームバッファは、アプリケーションプロセッサ７０１に組み入れられ、データが７０１からディスプレイ装置へ直接的にソースされる。これら実施形態の両方のために、ディスプレイ装置のＸ方向の要素数と、ディスプレイ装置のＹ方向の要素数の表示が必要であり、メモリ内にフレームバッファが存在する。
【００６１】
さらに、アプリケーションプロセッサ７０１は、ベースバンドプロセッサからの更新されたイメージコマンドを受信することができるとともに、ディスプレイ装置上にそのイメージをロードすることができる。アプリケーションプロセッサは、少なくとも幾つかの要求されたアドレスを生成し、内部メモリからフレームバッファを読み出す。一実施形態では、Ｘ及びＹのためにカウンタが保持され、メモリアドレスを生成する。別の実施形態では、アプリケーションプロセッサ７０１がディスプレイ装置にイメージデータをロードするのに忙しいという表示及び／又はイメージのローディングが行われたという表示がある。
【００６２】
別の実施形態において、そのディスプレイ装置がイメージをロードしている間に、ベースバンドプロセッサがメモリサブシステムにアクセスすることを試みる場合、イメージがロードされるまで、ＷＡＩＴ信号がアサートされるか又はＲＥＡＤＹ信号が非アサートされる。そのイメージローディングは途中で中止され、ベースバンドプロセッサが通過することができるようにする。
【００６３】
様々な発明がアプリケーションプロセッサ１０３,２０１,２０３,３０１,５０１,６０１,及び７０１を参照しながら示されてきたが、当業者であればここに開示されたすべての発明がすべてのアプリケーションプロセッサに適用可能であることが理解されるだろう。
【００６４】
本発明は特定の典型的な実施形態を参照して述べられていたが、先に述べたクレームのような本発明の広範囲な精神から離れることなくこれらの実施形態に様々な修正及び変更を行えることは明らかである。したがって、詳細な説明及び図面は、限定されたケースでなく説明されたケース内のものとしてみなされるべきである。
【図面の簡単な説明】
【００６５】
【図１ａ】図１ａは、ベースバンドプロセッサ及びそのメモリサブシステムの図である。
【図１ｂ】図１ｂは、ベースバンドプロセッサ、そのメモリサブシステム、ベースバンドプロセッサに結合したそれ自身のメモリサブシステムを備えたアプリケーションプロセッサの図である。
【図２ａ】図２ａは、ベースバンドプロセッサ及びアプリケーションプロセッサ間の共有メモリサブシステムを示す図であり、そのベースバンドプロセッサは、通過モードでアプリケーションプロセッサを通ってメモリサブシステムにアクセスする。
【図２ｂ】図２ｂは、ベースバンドプロセッサ及びアプリケーションプロセッサ間の他のメモリサブシステムを示す図であり、メモリバスは分割され、ベースバンドプロセッサは、通過モードでアプリケーションプロセッサを通ってメモリサブシステムにアクセスする。
【図３】図３は、メモリサブシステム用の２つの完全なバスを示す図であり、ベースバンドは１つのメモリバス上のメモリにアクセスし、同時にアプリケーションプロセッサは他のバス上の他のメモリにアクセスし、そしてアプリケーションプロセッサが動作しなかったりスタンバイ状態のときは、ベースバンドプロセッサは任意のバス上の全てのメモリにアクセスすることができる。
【図４ａ】図４ａは、様々なタイプのメモリアクセスを示すタイミング図である。
【図４ｂ】図４ｂは、様々なタイプのメモリアクセスを示すタイミング図である。
【図４ｃ】図４ｃは、様々なタイプのメモリアクセスを示すタイミング図である。
【図４ｄ】図４ｄは、様々なタイプのメモリアクセスを示すタイミング図である。
【図５】図５は、アプリケーションプロセッサによるベースバンドプロセッサの通過及びメモリアクセス用の様々な多重化装置を示す図である。
【図６】図６は、ベースバンドプロセッサの実行性能を高めるために、アプリケーションにＬ１又はＬ２キャッシュの使用を示す図である。
【図７】図７は、アプリケーションプロセッサを通るＬＣＤ素子を更新又は再表示するための重要な機構を示す図である。
【図１ａ】
2005531863.tif 000003
【図１ｂ】
2005531863.tif 000004
【図２ａ】
2005531863.tif 000005
【図２ｂ】
2005531863.tif 000006
【図３】
2005531863.tif 000007
【図４ａ】
2005531863.tif 000008
2005531863.tif 000009
2005531863.tif 000010
2005531863.tif 000011
【図５】
2005531863.tif 000012
【図６】
2005531863.tif 000013
【図７】
2005531863.tif 000014
【国際調査報告】
2005531863.tif 000015
2005531863.tif 000016