(57)【要約】      （修正有）【課題】バス・パフォーマンスと必要な数のバス信号とのバランスを取るメモリ・バス・インターフェースを提供する。【解決手段】メモリ・バス・インターフェース１２０のための方法及び装置は、読み取りデータ・ストローブを含み、周辺装置１３０，１３５が活動化される時期を示すチップ選択信号を送達するためのチップ選択を含み、ホスト・デバイスと前記周辺装置との間の通信を提供する。また、このインターフェースはディファレンシャル・クロック信号を送達するためのディファレンシャル・クロック対も含む。読み取りデータ・ストローブは周辺装置から読み取りデータ・ストローブ信号を送達するためにこのインターフェースに含まれる。このインターフェースはコマンド、アドレス、及びデータ情報を送達するためのデータ・バスを含む。読み取りデータ・ストローブは有効データがデータ・バス上に存在する時期を示す。【選択図】図１
2013214284.tif 000002
【特許請求の範囲】
【請求項１】
周辺装置が活動化される時期を示すチップ選択信号を送達するためのチップ選択であって、前記バス・インターフェースがホスト・デバイスと前記周辺装置との間の通信を提供する、チップ選択と、
第１のクロック信号と第２のクロック信号とを含むディファレンシャル・クロック信号を送達するためのディファレンシャル・クロック対と、
前記周辺装置から読み取りデータ・ストローブ信号を送達するための読み取りデータ・ストローブと、
コマンド、アドレス、及びデータ情報を送達するためのデータ・バスと、
を含むメモリ・バス・インターフェース。
【請求項２】
前記ディファレンシャル・クロックの対及び前記読み取りデータ・ストローブが、ダブル・データ・レート（ＤＤＲ）方式でデータの転送を可能にする、
請求項１記載のメモリ・バス・インターフェース。
【請求項３】
前記データ・バスが８線幅データ・バスを含み、
前記メモリ・バス・インターフェースが１２線インターフェースを含む、
請求項１記載のメモリ・バス・インターフェース。
【請求項４】
読み取りトランザクションにおいて、前記ディファレンシャル・クロック対の交差部が前記コマンド及び前記アドレス情報の送達を示し、且つ、前記読み取りデータ・ストローブ信号の遷移が前記データ情報の送達を示す、
請求項１記載のメモリ・バス・インターフェース。
【請求項５】
書き込みトランザクションにおいて、前記ディファレンシャル・クロック対の交差部が前記コマンド、アドレス、及びデータ情報の送達を示す、
請求項１記載のメモリ・バス・インターフェース。
【請求項６】
前記クロック対の機能がシングルエンド型又はディファレンシャルである、
請求項１記載のメモリ・バス・インターフェース。
【請求項７】
前記読み取りデータ・ストローブの機能がシングルエンド型又はディファレンシャルである、
請求項１記載のメモリ・バス・インターフェース。
【請求項８】
前記データ・バスがシングル・データ・レート・バス又はダブル・データ・レート・バスとして動作する、
請求項１記載のメモリ・バス・インターフェース。
【請求項９】
メモリ・バス・インターフェースを使用してトランザクションを実行するための方法であって、
周辺装置が活動化される時期を示すチップ選択信号の送達を容易にするためのチップ選択を構成することであって、前記バス・インターフェースがホスト・デバイスと前記周辺装置との間の通信を提供することと、
ディファレンシャル・クロック信号を使用可能にするために第１のクロック信号と第２のクロック信号とを送達するためのディファレンシャル・クロック対を構成することと、
前記周辺装置から読み取りデータ・ストローブ信号としてソース同期出力クロックを送達するための読み取りデータ・ストローブを構成することと、
コマンド・タイプ、アドレス、及びデータ情報を送達するためのデータ・バスを構成することと、
を含み、
前記ディファレンシャル・クロックの対及び前記読み取りデータ・ストローブが、読み取りトランザクション及び書き込みトランザクションのためにダブル・データ・レート（ＤＤＲ）方式でデータの転送を可能にする、
方法。
【請求項１０】
前記読み取りトランザクションを実行することを更に含み、
前記読み取りトランザクションを実行することが；
前記第１のクロック信号及び前記第２のクロック信号のための電圧がＬＯＷ及びＨＩＧＨである間に前記チップ選択信号をアサートすることにより前記ホスト・デバイスで前記読み取りトランザクションを開始することと、
前記データ・バスにより前記ディファレンシャル・クロック信号において３クロック・サイクルにわたって読み取りタイプ・コマンド及びターゲット・アドレスを送信することであって、前記読み取りタイプ・コマンドが、前記トランザクションが読み取りタイプを含むことを示すことと、
前記読み取りトランザクションが連続バースト・タイプであるか又は折り返しバースト・タイプであるかを示すことと、
前記データ・バスにより前記周辺装置から前記ホスト・デバイスでデータを受信することと、
前記読み取りデータ・ストローブにより読み取りデータ・ストローブ信号を前記ホスト・デバイスで受信することと、
前記読み取りデータ・ストローブ信号の立ち上がりから始まる前記データを前記ホスト・デバイスで取り出すことであって、前記読み取りデータ・ストローブ信号がソース同期出力クロックを含むことと、
を含む、
請求項９記載の方法。
【請求項１１】
前記データ・バスにより６クロック遷移にわたって前記読み取りコマンド及び前記ターゲット・アドレスを送信することと、
前記データを取り出す前に前記ＲＤＳ信号の遷移を待つこと、
を更に含む請求項１０記載の方法。
【請求項１２】
マルチバイト・バースト・モードにおいてデータ値ごとに前記ディファレンシャル・クロック信号及び前記読み取りデータ・ストローブ信号をトグルすること、
を更に含む請求項１０記載の方法。
【請求項１３】
前記第１のクロック信号がＬＯＷであり、前記第２のクロック信号がＨＩＧＨである間に前記チップ選択信号をＨＩＧＨにアサートすることにより、前記読み取りトランザクションを終了すること、
を更に含む請求項１０記載の方法。
【請求項１４】
前記データの準備ができると直ちに前記周辺装置で前記読み取りデータ・ストローブ信号をトリガすること、
を更に含む請求項１０記載の方法。
【請求項１５】
前記書き込みトランザクションを実行することを更に含み、前記書き込みトランザクションを実行することが；
前記第１のクロック信号がＬＯＷであり、前記第２のクロック信号がＨＩＧＨである間に前記チップ選択をＬＯＷに遷移することにより、前記ホスト・デバイスで前記書き込みトランザクションの開始を示すことと、
前記データ・バスにより前記ディファレンシャル・クロック信号において３クロック・サイクルにわたって書き込みタイプ・コマンド及びターゲット・アドレスを送信することであって、前記書き込みタイプ・コマンドが、前記トランザクションが書き込みタイプを含むことを示すことと、
前記書き込みトランザクションが連続バースト・タイプであるか又は折り返しバースト・タイプであるかを示すことと、
前記データ・バスにより前記ホスト・デバイスからデータを送信することと、
を含む、
請求項９記載の方法。
【請求項１６】
前記第１及び第２のクロック信号の信号交差部に前記コマンド、アドレス、及びデータ情報を中心で位置合わせすること、
を更に含む請求項１５記載の方法。
【請求項１７】
マルチバイト・バースト・モードにおいてデータ値ごとに前記ディファレンシャル・クロック信号をトグルすること、
を更に含む請求項１５記載の方法。
【請求項１８】
前記第１のクロック信号がＬＯＷであり、前記第２のクロック信号がＨＩＧＨである間に前記チップ選択信号をＨＩＧＨにアサートすることにより、前記書き込みトランザクションを終了すること、
を更に含む請求項１５記載の方法。
【請求項１９】
ホスト・デバイスと、
データを記憶するために動作可能なメモリ・アレイを含むメモリ・デバイスと、
プロセッサと、
前記メモリ・デバイスと前記ホスト・デバイスとの間の接続を提供するバス・インターフェースと、
を含み、
前記バス・インターフェースが；
周辺装置が活動化される時期を示すチップ選択信号を送達するためのチップ選択であって、前記バス・インターフェースが前記ホスト・デバイスと前記周辺装置との間の通信を提供する、チップ選択と、
第１のクロック信号と第２のクロック信号とを含むディファレンシャル・クロック信号を送達するためのディファレンシャル・クロック対と、
前記周辺装置から読み取りデータ・ストローブ信号を送達するための読み取りデータ・ストローブと、
コマンド、アドレス、及びデータ情報を送達するためのデータ・バスと、
を含む、
装置。
【請求項２０】
前記読み取りデータ・ストローブが読み取りデータ情報の送達を示す、
請求項１９記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本発明は一般に通信バスに関する。
【背景技術】
【０００２】
[0002]  ほとんどのマイクロコントローラ及びマイクロプロセッサ・デバイスは、オフチップ周辺装置と通信するためのバス・インターフェースを含んでいる。これらのバス・インターフェースは、メモリ、アナログ・デジタル変換器、デジタル・アナログ変換器、液晶ディスプレイ（ＬＣＤ）コントローラ、及び無数のその他の周辺装置を含む、幅広い種類の製品をサポートする。
【０００３】
[0003]  特定のカテゴリの周辺装置をターゲットにする固有の特性を有するいくつかの異なる周辺バス・インターフェースが存在する。従来技術で使用可能なバス・インターフェースは、バスのパフォーマンスと実現コストとのバランスを取ることを試行する。ホスト・マイクロコントローラの実現コストは、インターフェース信号カウント、入出力ドライバの物理特性、及びマイクロコントローラに統合されたバス・コントローラの複雑さを含む、いくつかの特性を対象として含んでいる。
【０００４】
[0004]  必要なピンの数と周辺バスによって提供されるパフォーマンスのレベルとのバランスを取る作業がしばしば行われる。より具体的には、バス・インターフェースは、典型的にピン・カウントの最小化、又はデータ・スループットの最大化に焦点を合わせている。一方、システム・レベルのハードウェア・オーバヘッドを最小限にするべく、より少ないバス信号によって高待ち時間バス（higher latency busses）が実現される場合が多い。例えば、シリアル周辺バス・インターフェースは典型的にロー・ピン・カウントで設計されるが、データ転送速度は遅くなる。一例として、Ｉ２Ｃバスは、ホスト・デバイスと周辺装置との間の通信をサポートするために２本のピンだけを必要とする低速インターフェースである。その一方で、低待ち時間（low-latency）かつ高スループットの周辺バスは、典型的に、ホスト・マイクロコントローラと周辺装置との間のインターフェースをサポートするために多数の信号を必要とする。例えば、パラレル周辺バス・インターフェースは、高速データ伝送速度用に設計されている。一例として、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）バス・インターフェースは、オフチップＤＲＡＭメモリ・デバイスに高いデータ・スループットを提供するために使用される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
[0005]  従って、本発明の諸実施形態は、バス・パフォーマンスと必要な数のバス信号とのバランスを取るメモリ・バス・インターフェースを提供する。
【課題を解決するための手段】
【０００６】
[0005]  一実施形態では、読み取りデータ・ストローブ（read data strobe）を含む、メモリ・バス・インターフェースのための装置が記載される。このインターフェースは周辺装置が活動化される時期を示すチップ選択（chip select）信号を送達するためのチップ選択を含み、このバス・インターフェースはホスト・デバイスと周辺装置との間の通信を提供する。また、このインターフェースは、ディファレンシャル・クロック（differential clock）信号を送達するためのディファレンシャル・クロック対も含む。読み取りデータ・ストローブは、周辺装置から読み取りデータ・ストローブ信号を送達するためにこのインターフェースに含まれる。このインターフェースは、コマンド、アドレス、及びデータ情報を送達するためのデータ・バスを含む。読み取りデータ・ストローブは、有効データが周辺装置によってデータ・バス上に出力されている時期を示す。
【０００７】
[0006]  他の実施形態では、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用してトランザクションを実行するための方法が開示される。このバス・インターフェースは、ホスト・デバイスと周辺装置との間の通信を提供する。この方法はチップ選択信号の送達を容易にするためのチップ選択を構成することを含み、チップ選択信号は周辺装置が活動化される時期を示す。この方法は、ディファレンシャル・クロック信号を使用可能にするために第１のクロック信号と第２のクロック信号とを送達するためのディファレンシャル・クロック対を構成することを更に含む。この方法は、周辺装置から読み取りデータ・ストローブ信号としてソース同期出力クロック（source synchronous output clock）を送達するための読み取りデータ・ストローブを構成することを更に含む。また、データ・バスは、コマンド、アドレス、及びデータ情報を送達するためにも構成される。ディファレンシャル・クロックの対及び読み取りデータ・ストローブは、読み取りトランザクション及び書き込みトランザクションのためにダブル・データ・レート（ＤＤＲ）方式でデータの転送を可能にする。
【０００８】
[0007]  更に他の実施形態では、ホスト・デバイスと周辺装置との間の通信を提供するメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法が開示される。このバス・インターフェースは、ディファレンシャル・クロック対と、有効データが存在する時期を示す読み取りデータ・ストローブを含む。ディファレンシャル・クロック信号及び読み取りデータ・ストローブは、読み取りトランザクションのためにＤＤＲ方式でデータ・バス上のデータの転送を可能にする。より具体的には、メモリ・バス上で読み取りトランザクションを実行するための方法は、第１及び第２のクロック信号が相補的である（例えば、第１のクロック信号がＬＯＷであり、第２のクロック信号がＨＩＧＨである）間にチップ選択信号を（例えば、ＬＯＷに）アサートすることによりホスト・デバイスで読み取りトランザクションを開始することを含む。また、この方法は、データ・バスによりディファレンシャル・クロック信号において３クロック・サイクルにわたって読み取りコマンド及びターゲット・アドレスをホスト・デバイスから周辺装置に送信することを含む。また、この方法は、データ・バスにより周辺装置からホスト・デバイスでデータを受信することと、周辺装置で発生している読み取りデータ・ストローブ信号を読み取りデータ・ストローブ・インターフェースによりホスト・デバイスで受信することも含む。この方法は、読み取りデータ・ストローブ信号の立ち上がりから始まるデータをホスト・デバイスで取り出すことを更に含み、読み取りデータ・ストローブ信号はソース同期出力クロックを含む。
【０００９】
[0008]  更に他の実施形態では、ホスト・デバイスと周辺装置との間の通信を提供するメモリ・バス・インターフェースを使用して書き込みトランザクションを実行するための方法が開示される。このバス・インターフェースは、ディファレンシャル・クロック信号を提供するクロック信号対と、有効データが存在する時期を示す読み取りデータ・ストローブ信号を含む。ディファレンシャル・クロック信号及び読み取りデータ・ストローブは、読み取りトランザクションのためにＤＤＲ方式でデータ・バス上のデータの転送を可能にする。より具体的には、メモリ・バス上で書き込みトランザクションを実行するための方法は、第１のクロック信号がＬＯＷであり、第２のクロック信号がＨＩＧＨである間にチップ選択をＬＯＷに遷移することによりホスト・デバイスで書き込みトランザクションの開始を示すことを含む。また、この方法は、データ・バスによりディファレンシャル・クロック信号において３クロック・サイクルにわたって書き込みコマンド及びターゲット・アドレスを送信することを含む。この方法は、データ・バスによりホスト・デバイスからデータを送信することを含む。
【００１０】
[0009]  本発明は、制限としてではなく例として、添付図面の図に示されており、これらの図では同様の参照番号が同様の要素を示す。
【図面の簡単な説明】
【００１１】
【図１】[00010]現在請求されている主題の諸実施形態を実現可能なコンピューティング・システムのブロック図である。
【図２Ａ】[00011]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含む低減ピン・カウント（reduced pin count）・インターフェースの図である。
【図２Ｂ】[00012]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用してトランザクションを実行するための方法を示すフローダイアグラムである。
【図３Ａ】[00013]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法を示すフローダイアグラムである。
【図３Ｂ】[00014]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによる読み取りトランザクションを示すタイミング図である。
【図３Ｃ】[00015]本発明の一実施形態により、図３Ｂのタイミング図と比較した時に、ＲＰＣメモリ・インターフェース・バスによりコマンド及びアドレス情報を送達するためにより少ないビットを必要とするメモリ・バス・インターフェースによる読み取りトランザクションを示す、もう１つのタイミング図である。
【図４Ａ】[00016]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによる書き込みトランザクションを示すタイミング図である。
【図４Ｂ】[00017]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによる書き込みトランザクションを示すタイミング図である。
【図５】[00018]本発明の一実施形態により、周辺装置内の異なるターゲット・アドレスの待ち時間特性（latency characteristic）を決定し、待ち時間特性に基づいて有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブをトリガするように構成された周辺装置の周辺制御装置のブロック図である。
【図６】[00019]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによるバス・トランザクションのための読み取り又は書き込みトランザクション中のビット配置を示す図である。
【図７】[00020]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによるバス・トランザクションのためのビット機能を示す表である。
【発明を実施するための形態】
【００１２】
[00021]  次に本発明の諸実施形態について詳細に言及するが、その例は添付図面に示されている。以下の諸実施形態に併せて本発明について論じるが、これらの諸実施形態のみに本発明を限定するものではないことが理解されるであろう。これに反して、本発明は、特許請求の範囲によって定義されるように本発明の精神及び範囲によって含まれる可能性のある代替例、変更例、及び同等例を含むものである。さらに、以下に示す本発明の詳細な説明では、本発明を完全に理解するために多数の具体的な詳細が明記されている。しかし、本発明の諸実施形態は、これらの具体的な詳細なしでも実践することができる。その他の事例では、本発明の諸態様を不必要に曖昧にしないために、周知の方法、手順、コンポーネント、及び回路については詳細に記載していない。例えば、本発明を曖昧にするのを回避するために、周知のシステム構成及びプロセス・ステップのいくつかについては詳細に開示しない。同様に、本発明の諸実施形態を示す図面は半概略的であって、一定の縮尺で描かれているわけではなく、特に、寸法の一部は提示を明瞭にするためのものであり、図には誇張して示されている。
【００１３】
[00022]  従って、本発明の諸実施形態は、バス・パフォーマンスと必要な数のバス信号との固有のバランスを提供する装置及び方法を提供するものである。本発明のその他の諸実施形態は、上記の利点を提供し、より低い初期待ち時間及びより高い持続スループットを発揮する低減ピン・カウント・メモリ・バス・インターフェースの実現も提供する。本発明の更に他の諸実施形態は、上記の利点を提供し、有効データがバスにより送達される時期を示すためのデータ・ストローブ信号の使用を実現するメモリ・バス・インターフェースによる可変待ち時間方式の実現も提供し、それにより、これまでデータ・バスにより情報を送達する時に既存の可変待ち時間バス・プロトコルに付随していた専用の「ＲＥＡＤＹ」又は「ＷＡＩＴ」信号の必要性が解消される。
【００１４】
[00023]  図１は、現在請求されている主題の諸実施形態を実現可能なコンピューティング・システム１００のブロック図である。一例として、コンピューティング・システム１００は、メモリを提供するためのメモリＳＯＣなどの１チップ上のシステム（ＳＯＣ）を含むことができる。コンピューティング・システム１００は特定の数及びタイプの要素を有するものとして図１に示され記載されているが、諸実施形態は必ずしもこの模範的な実現例に限定されない。即ち、コンピューティング・システム１００は、図示されているもの以外の要素を含むことができ、図示されている要素のうちの２つ以上を含むことができる。例えば、コンピューティング・システム１００は、図示されている１つのプロセッサ１１０より多くの処理装置を含むことができる。同様に、他の例では、コンピューティング・システム１００は、図１に示されていない追加のコンポーネントを含むことができる。
【００１５】
[00024]  最も基本的な構成では、コンピューティング・システム１００は典型的に少なくとも１つのプロセッサ１１０とメモリ・デバイス１０４とを含む。コンピューティング・デバイスの正確な構成及びタイプ次第で、メモリ・デバイス１０４は揮発性（ＲＡＭなど）、不揮発性（ＲＯＭ、フラッシュ・メモリなど）、又はこれら２種類の何らかの組み合わせにすることができる。一実施形態では、メモリ・デバイス１０４はＮＯＲフラッシュ・メモリ・アレイを含む。コンピューティング・システム１００は、磁気又は光学式のディスク又はテープを含むがこれらに限定されない追加の記憶装置１１２（取り外し可能及び／又は取り外し不能）も含むことができる。記憶媒体としては、コンピュータ可読命令、データ構造、プログラム・モジュール、又はその他のデータなどの情報の記憶のためにいずれかの方法又は技術で実現された揮発性及び不揮発性記憶装置、取り外し可能及び取り外し不能記憶装置を含む。制限としてではなく例として、記憶媒体としては、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリ又はその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル・ビデオ・ディスク（ＤＶＤ）又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用可能であって、コンピューティング・システム１００によってアクセス可能である任意のその他の媒体を含む。
【００１６】
[00025]  更に、コンピューティング・システム１００は、メモリ・バス・インターフェース１２０を介してメモリ・デバイス１０４に結合されたホスト・デバイス１０６を含むことができ、このバスはホスト・デバイス１０６及びメモリ・デバイス１０４と周辺装置１３０及び１３５などの１つ又は複数の周辺装置とのトランザクションを容易にする。後述するように、メモリ・デバイス・インターフェース１２０は、有効データがバス上で使用可能である時期を示すために読み取りデータ・ストローブを使用してデータの送達を可能にする。
【００１７】
[00026]  コンピューティング・システム１００は、コンピューティング・システム１００がその他のシステムと通信できるようにする通信接続部（複数も可）１１８も含むことができる。通信接続部（複数も可）１１８は通信媒体の一例である。制限としてではなく例として、通信媒体としては、有線ネットワーク又は直接線式接続などの有線媒体、並びに音波、ＲＦ、赤外線及びその他の無線媒体などの無線媒体を含む。
【００１８】
[00027]  コンピュータ・システム１００は、キーボード、マウス、ペン、音声入力装置、ゲーム入力装置（例えば、ジョイ・スティック、ゲーム・コントロール・パッド、及び／又はその他のタイプのゲーム入力装置）、タッチ入力装置などの入力装置（複数も可）１１６を含むことができる。更に、コンピューティング・システム１００は、ディスプレイ（例えば、コンピュータ・モニタ及び／又は投射システム）、スピーカ、プリンタ、ネットワーク周辺装置などの出力装置（複数も可）１１４も含むことができる。
【００１９】
[00028]  図２Ａは、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブ２３０を含む低減ピン・カウント（ＲＰＣ）・メモリ・バス・インターフェース２１０の図２００である。文脈のため、図２のバス・インターフェース２１０は、図１のバス１２０と同様の機能を提供し、図１に示されているように、コンピューティング・システム１００のホスト・デバイス１０６と周辺装置１３０又は１３５及び／又はメモリ・デバイス１０４など、ホスト・デバイスと周辺装置との間の通信を容易にするように動作する。一実施形態では、ＲＰＣメモリ・バス・インターフェースはパラレル・インターフェースを含む。他の実施形態では、ＲＰＣメモリ・バス・インターフェースはシリアル・バス・インターフェースを含む。
【００２０】
[00029]  特に、ＲＰＣメモリ・バス・インターフェース２１０は、チップ選択（ＣＳ＃）信号を送達するために構成されたチップ選択線２１５を含む。ＣＳ＃信号は、対応する周辺装置が所与のトランザクションのために活動化される時期を識別するために使用されるデバイス・イネーブル信号を含む。例えば、チップ選択２１５は、周辺装置が活動化される時期を示すＣＳ＃信号を送達するために構成される。より具体的には、ＣＳ＃信号は、読み取り又は書き込みトランザクションが要求されたことを周辺装置に通知するために使用可能になる。
【００２１】
[00030]  更に、ＲＰＣインターフェース２１０は、第１のクロック線２２３と第２のクロック線２２５とを含むディファレンシャル・クロック対の線２２０を含む。より具体的には、ディファレンシャル・クロック対２２０は、２つのクロック・ソースを含むディファレンシャル基準クロック信号を送達するために構成される。即ち、ディファレンシャル・クロック信号は、第１のクロック線２２３により送達される第１のクロック（ＣＫ）信号と第２のクロック線２２５により送達される第２のクロック（ＣＫ＃）信号に基づくものであり、これらの信号を含むものである。ＣＫ信号とＣＫ＃信号とを含むディファレンシャル・クロックは、バス・インターフェース２１０によりコマンド固有情報、アドレス情報、及びデータ情報を捕捉すべき時期を識別するために使用される。その他の実施形態では、クロック機構の機能はシングルエンド型（single ended）又はディファレンシャルである。
【００２２】
[00031]  ＲＰＣインターフェース２１０は読み取りデータ・ストローブ線２３０も含む。読み取りデータ・ストローブ線２３０は、一実施形態では、任意選択で周辺装置から読み取りデータ・ストローブ（ＲＤＳ）信号を送達するように構成される。ＲＤＳ信号は、一実施形態では、ソース同期出力クロックを含む。更に、ＲＤＳ信号は、読み取りデータがデータ・バス２３５上で有効である時期を示すために周辺装置によって使用される。諸実施形態では、ＲＤＳ信号の機能はシングルエンド型又はディファレンシャルであるか、或いは全く存在しない。
【００２３】
[00032]  加えて、ＲＰＣインターフェース２１０はデータ・バス２３５を含む。データ・バス２３５は、図７に関して更に記載するように、コマンド固有ＩＤ、アドレス情報、及びデータ情報を送達するように構成される。一実施形態では、データ・バス２３５は、ディファレンシャル・クロック信号のすべてのエッジで１バイト（例えば、８ビット）のデータを送達可能な８線幅データ・バスとして構成される。このため、ＲＰＣメモリ・バス・インターフェース２１０は、最小限の１２線アクティブ信号バス・インターフェースにより低初期待ち時間及び高持続スループットを提供する。
【００２４】
[00033]  一実施形態では、ＣＫ信号とＣＫ＃信号とを含むディファレンシャル・クロック及びＲＤＳ信号の使用により、ダブル・データ・レート（ＤＤＲ）方式でデータを転送することができ、その場合、一実施形態では、通常のクロック・サイクルあたり２回、データが伝送される。より具体的には、ディファレンシャル・クロック及びＲＤＳ信号は、データ・バス２３５によりＤＤＲ方式でトランザクション並びにコマンド固有ＩＤ、アドレス情報、及びデータ情報の転送を可能にする。更に他の諸実施形態では、シングル・データ・レート方式でデータを伝送するために、ＣＫ及びＣＫ＃の両方のクロック信号の代わりに１つのクロック信号のみが使用される。
【００２５】
[00034]  図２Ａに示されているように、追加の信号のために追加の線及び／又はピンが使用可能である。例えば、コンピューティング・システム（例えば、図１のシステム１００）及び／又はメモリ・チップなどのチップに電力を送達するために、１つ又は複数の電力線及び／又はピンが設けられる。電力線及び／又はピンは、システム全体の電力を分配するための１つ又は複数のＶｃｃ線と、チップ上の入出力コンポーネントに第２の電力を分配するための１つ又は複数のＶＩＯ線とを含む。加えて、書き込み保護線は、メモリ内の書き込み機能を使用不可にする書き込み保護（ＷＰ＃）信号を送達するように構成される。また、リセット線又はピンは、チップを初期化してリセット又は初期状態に戻すためのリセット（ＲＥＳＥＴ＃）信号を送達するように構成される。また、１つ又は複数の接地線及び／又はピンは、コンピューティング・システム（例えば、図１のシステム１００）及び／又はメモリ・チップを接地するために設けられる。例えば、１つ又は複数のＶＳＳＩＯ接地線はシステム又はチップ上の入出力コンポーネントに対する接地を可能にする。また、１つ又は複数のＶＳＳ接地線はシステム又はチップに対するシステム全体の接地を可能にする。
【００２６】
[00035]  図２Ｂは、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用してトランザクションを実行するための方法を示すフローダイアグラム２００Ｂである。一実施形態では、フローダイアグラム２００Ｂで実行されるトランザクションは、ホスト・デバイスと周辺装置及び／又はシステム又はチップ上のメモリ・デバイスとの間の通信を容易にする時に低初期待ち時間及び高持続スループットを提供するために図２ＡのＲＰＣバス・インターフェース２１０上で実行される。
【００２７】
[00036]  ２６０では、ＲＰＣインターフェースはチップ選択線を含むように構成され、この線はチップ選択（ＣＳ＃）信号の送達を容易にするように構成される。図４Ｂ、図４Ｃ、及び図５Ｂに関して以下に更に記載するように、ＣＳ＃信号は、読み取り又は書き込みトランザクションなど、所与のトランザクションのために周辺装置が活動化される時期を示す。
【００２８】
[00037]  ２６５では、ＲＰＣインターフェースは１対のクロック線を含むように構成され、このクロック線はディファレンシャル・クロック信号を使用可能にするために第１のクロック信号及び第２のクロック信号を送達するように構成される。このため、１対のクロック線は、バス・インターフェースによりコマンド固有情報、アドレス情報、及びデータ情報を捕捉すべき時期を識別するために使用されるディファレンシャル基準クロックを送達するように構成される。
【００２９】
[00038]  ２７０では、ＲＰＣインターフェースは読み取りデータ・ストローブ線を含むように構成され、この読み取りデータ・ストローブ線は周辺装置から読み取りデータ・ストローブ（ＲＤＳ）信号としてソース同期出力クロックを送達するように構成される。ＲＤＳ信号は、読み取りデータがデータ・バス上で有効である時期を示すために周辺装置によって使用される。加えて、他の実施形態では、ＲＤＳ信号は双方向性であり、書き込みデータがデータ・バス上で有効である時期を示すためにホスト・デバイスによって使用される。前述の通り、ディファレンシャル・クロック対の信号及びＲＤＳ信号により、データをデータ・バスによりＤＤＲ方式で転送することができる。
【００３０】
[00039]  ２７５では、ＲＰＣインターフェースはデータ・バスを含むように構成され、このデータ・バスはコマンド固有ＩＤ、アドレス、及びデータ情報を送達するように構成される。例えば、コマンドＩＤは、現在のトランザクションが読み取りトランザクションであるか又は書き込みトランザクションであるかを示す。一実施形態では、データ・バスは、一度に８ビットのデータを送達可能な８線幅データ・バスとして構成される。
【００３１】
[00040]  図３Ａ及び図３Ｂは相俟って、図２Ａのインターフェース２１０などのＲＰＣメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法を示している。特に、図３Ａは、ホスト・デバイスとメモリ・デバイスとの間の通信を容易にするメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法を示すフローダイアグラム３００Ａである。図３Ｂは、本発明の一実施形態により、ＲＰＣメモリ・バス・インターフェースによる、図３Ａに概略を示した読み取りトランザクションの実現を示すタイミング図３００Ｂである。即ち、タイミング図３００Ｂは読み取りトランザクションに使用されるバス信号プロトコルを示している。詳細には、ＲＰＣメモリ・バス・インターフェースは、有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブを含む。また、ディファレンシャル・クロック及びデータ・ストローブ信号の使用により、コマンド、アドレス、及びデータ情報をより高いクロック・レートにおいてＤＤＲ方式で転送することができる。
【００３２】
[00041]  一実施形態では、フローダイアグラム３００Ａで実行され、タイミング図３００Ｂに概略を示したトランザクションは、ホスト・デバイスと周辺装置及び／又はシステム又はチップ上のメモリ・デバイスとの間の通信を容易にする時に低初期待ち時間及び高持続スループットを提供するために、図２ＡのＲＰＣバス・インターフェース２１０上で実行される。即ち、フローダイアグラム３００Ａで実行されるトランザクションは、ホスト・デバイスと、コンピューティング・システム上の周辺装置として動作するメモリ・デバイスとの間の読み取りトランザクションの実現を示す。
【００３３】
[00042]  ３１０では、ホスト・デバイスにおいて、クロック信号が反対の電圧（例えば、ＨＩＧＨ及びＬＯＷ）を有する間にＲＰＣインターフェースのチップ選択（ＣＳ＃）信号のアサート（例えば、ＨＩＧＨ又はＬＯＷ）と、データ・バスによるコマンド及びアドレス情報の送達により、読み取りトランザクションがホスト・デバイスによって開始される。例証のため、タイミング図３００Ｂに示されているように、読み取り要求がホスト・デバイスからメモリ・デバイスに送達される読み取りトランザクションの開始時に、第１のクロック信号（ＣＫ）がＬＯＷにアサートされ、第２のクロック信号（ＣＫ＃）がＨＩＧＨである間に、チップ選択（ＣＳ＃）信号がＬＯＷにアサートされる。また、一実施形態では、読み取りトランザクションの持続時間の間、チップ選択（ＣＳ＃）信号がＬＯＷにアサートされる。
【００３４】
[00043]  ３２０では、第１の６クロック遷移（例えば、３クロック・サイクル）が行われると、読み取りコマンド及びターゲット・アドレス情報がデータ・バスによりホスト・デバイスから送達される。即ち、周辺メモリ・デバイスに対してトランザクション特性を示すために、ホストによって６クロック・エッジが使用される。諸実施形態では、トランザクション特性を示すために１つ又は複数のコマンド及びアドレス（ＣＡｘ）ビットがホスト・デバイスから周辺メモリ・デバイスに送達され、トランザクション特性を示すために１つ又は複数のクロック遷移を必要とする可能性がある。例証のため、タイミング図３００Ｂに示されているように、一実施形態では、図７に関して更に記載するように、ＲＰＣバス・インターフェースにより読み取りトランザクションの初期部分の間、４８ＣＡｘビットが提示される。特に、トランザクションは、第１の６クロック・エッジの間、ホスト・デバイスから周辺装置にＤＤＲ方式でＤＱ［７−０］データ・バス上で転送される６バイト幅の値によって識別される。これらのＣＡｘビットは現在のトランザクションが読み取りトランザクションであることを示し、その結果、受信側の周辺メモリ・デバイスは現在のトランザクションが読み取り要求であることを理解する。加えて、この情報は、そこから周辺メモリ・デバイスによってデータが取り出されて、ホスト・デバイスに送達して戻される予定のメモリ内のターゲット・アドレスを含む。このため、周辺装置は、要求されたデータをメモリからアクセスし、ＲＰＣインターフェースのデータ・バスＤＱ［７−０］により要求されたデータをホスト・デバイスに返送する。
【００３５】
[00044]  図３Ｃでは、タイミング図３００Ｃは、本発明の一実施形態により、トランザクション特性を示すために必要なコマンド及びアドレス・ビットの数の変動を示す、ＲＰＣメモリ・バス・インターフェースによる読み取りトランザクションを示している。タイミング図３００Ｃは、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブ（ＲＤＳ）を含む。図示の通り、タイミング図３００Ｃは図３Ｂのタイミング図３００Ｂに含まれるものより少ないコマンド及びアドレス・ビットを含む。即ち、タイミング図３００Ｃではアドレス・ビットが４クロック・エッジにわたって送達され、タイミング図３００Ｂでは必要なコマンド及びアドレス・ビットを送達するために６クロック・エッジを必要とする。具体的には、タイミング図３００Ｃに関連するターゲットの周辺メモリ・デバイスは、タイミング図３００Ｂに関連するメモリ・デバイスと比較すると、より少ないアドレス・ビットを必要とする低密度デバイスにすることができる。このため、この低密度デバイスは、コマンド及びアドレス位置情報を定義するためにより少ないクロック・エッジ及び／又はサイクルを必要とする。
【００３６】
[00045]  ３３０では、データが周辺メモリ・デバイスによって送達され、データ・バスによりホスト・デバイスで受信される。タイミング図３００Ｂに示されているように、データ（Ｄｎ．．．）は周辺メモリ・デバイスによって出力される。
【００３７】
[00046]  加えて、３４０では、読み取りデータ・ストローブ（ＲＤＳ）信号が周辺メモリ・デバイスによって送達され、ホスト・デバイスによって受信される。一実施形態では、ＲＤＳ信号はソース同期出力クロックを含む。ＲＤＳ信号は、要求されたデータが有効であり、データ・バス上で使用可能である時期を示すために使用される。詳細には、３５０では、ＲＤＳ信号によって示されるように、データがホスト・デバイスによって取り出される。エッジで位置合わせされたＲＤＳ信号の使用により、データはホスト・デバイスによって取り出される。一実施形態では、タイミング図３００Ｂに示されているように、ＲＤＳ信号の立ち上がりから始まるデータが取り出される。
【００３８】
[00047]  図３Ｂに示されているように、一実施形態では、要求されたデータが返される前に待ち時間が考慮される。周辺メモリ・デバイスがメモリ・アレイのターゲット・アドレスからデータを取り出し、データ・バスによるホスト・デバイスへの送達に備えてそのデータを周辺装置の出力バッファに移動できるようにするために、待ち時間が必要である（例えば、１つ又は複数のダミー・クロック・サイクル）。諸実施形態では、潜在期間（latency period）は周辺装置によって決定される。潜在期間後、要求されたデータはデータ・バスにより周辺装置によってホスト・デバイスに送達され、有効データを示すために読み取りデータ・ストローブ（ＲＤＳ）信号がアサートされる（例えば、ＨＩＧＨ又はＬＯＷ）。一実施形態では、待ち時間はハード・カウント潜在期間である（例えば、図３Ｂに示されているように２クロック・サイクルの潜在期間、１０クロック・サイクルなど）。例えば、ハード・カウントは周辺メモリ・デバイスについて考えられる最大潜在期間を考慮する。即ち、待ち時間は、周辺装置のすべてのセクションの最大待ち時間を考慮に入れる最大潜在期間である。更に他の実施形態では、待ち時間は最適化待ち時間カウント期間である。即ち、潜在期間は、デバイス又はデバイス・セクション固有のものであり、図５に関して更に記載するように、どの周辺装置又は周辺装置のどのセクションが要求されたデータを送達するかによって様々になる可能性がある。図５に関して更に記載するように、潜在期間は周辺装置によって決定され、１つ又は複数の待ち時間レジスタに記憶することができる。更に他の実施形態では、潜在期間は本質的に周辺装置によって把握されており、潜在期間についてどの待ち時間カウンタ及び／又はレジスタも参照しない。即ち、周辺装置（例えば、要求されたデータの出力バッファへの転送を管理するコンポーネント及び／又はコンポーネント回路）は本質的に、要求されたデータが出力バッファ上で取り出されロードされた時期を把握しており、どのような所定の潜在期間にもかかわらず、データ・バス上で送達する準備ができている。このため、データが送達に使用可能であることを周辺データが把握すると直ちに、周辺装置は、どのような所定の潜在期間にもかかわらず、要求されたデータをデータ・バスにより送達するように構成される。
【００３９】
[00048]  タイミング図３００Ｂに示されているように、一実施形態では、ＣＳ＃信号のアサート直後にＲＤＳ信号がＬＯＷにドライブされる。他の実施形態では、周辺メモリ・デバイスがデータの送達とともにＲＤＳ信号をＨＩＧＨにドライブするまで、ＲＤＳ信号はＨｉ−ｚ状態のままになる。更に他の実施形態では、ＣＳ＃信号のアサート直後にＲＤＳ信号はＨＩＧＨにドライブされる。
【００４０】
[00049]  一実施形態では、ＲＰＣホスト・コントローラ及びＲＰＣ周辺装置の構成次第で、読み取りバーストは単一のデータ・バイト又は一連のデータ・バイトを取り出すことができる。マルチバイト・バースト・シナリオでは、ＣＫ信号、ＣＫ＃信号、及びＲＤＳ信号は新しいデータ値ごとにトグルし続ける。
【００４１】
[00050]  図３Ａに戻ると、３６０では、第１のクロック信号がＬＯＷであり、第２のクロック信号がＨＩＧＨである間にチップ選択信号（ＣＳ＃）をＨＩＧＨにアサートすることにより、読み取り動作の終了がホスト・デバイスで示される。例えば、タイミング図３００Ｂに示されているように、ＣＫ信号がＬＯＷにアサートされ、ＣＫ＃信号がＨＩＧＨにアサートされる間に、ＣＳ＃信号がＨＩＧＨに戻ることにより、読み取りトランザクションが終了する。その他の諸実施形態では、ＣＫ信号とＣＫ＃信号が反対の電圧（例えば、ＨＩＧＨとＬＯＷ）を有する間に、ＣＳ＃信号がＬＯＷに戻ることにより終了を示すことなど、その他の組み合わせがサポートされる。
【００４２】
[00051]  図４Ａ及び図４Ｂは相俟って、図２Ａのインターフェース２１０などのＲＰＣメモリ・バス・インターフェースを使用して書き込みトランザクションを実行するための方法を示している。特に、図４Ａは、ホスト・デバイスとメモリ・デバイスとの間の通信を容易にするメモリ・バス・インターフェースを使用して書き込みトランザクションを実行するための方法を示すフローダイアグラム４００Ａである。図４Ｂは、本発明の一実施形態により、ＲＰＣメモリ・バス・インターフェースによる、図４Ａに概略を示した書き込みトランザクションの実現を示すタイミング図４００Ｂである。即ち、タイミング図４００Ｂは書き込みトランザクションに使用されるバス信号プロトコルを示している。また、ディファレンシャル・クロック及びデータ・ストローブ信号の使用により、コマンド、アドレス、及びデータ情報をより高いクロック・レートにおいてＤＤＲ方式で転送することができる。
【００４３】
[00052]  ４１０では、ホスト・デバイスにおいて、書き込みトランザクションがホスト・デバイスとメモリ・デバイスとの間で行われているという表示がＲＰＣインターフェースのチップ選択線上に提示される。より具体的には、クロック信号が反対の電圧（例えば、ＨＩＧＨ及びＬＯＷ）を有する間にチップ選択（ＣＳ＃）信号を（例えば、ＨＩＧＨ又はＬＯＷに）アサートすることにより、書き込みトランザクションがホスト・デバイスによって開始される。例証のため、タイミング図４００Ｂに示されているように、書き込みコマンドがホスト・デバイスからメモリ・デバイスに送達される書き込みトランザクションの開始時に、第１のクロック信号（ＣＫ）がＬＯＷにアサートされ、第２のクロック信号（ＣＫ＃）がＨＩＧＨである間に、ＣＳ＃信号がＬＯＷにアサートされる。また、一実施形態では、書き込みトランザクションの持続時間の間、チップ選択（ＣＳ＃）信号がＬＯＷにアサートされる。
【００４４】
[00053]  ４２０では、第１の６クロック遷移（例えば、３クロック・サイクル）が行われると、書き込みコマンド及びターゲット・アドレス情報がデータ・バスによりホスト・デバイスから送達される。即ち、周辺メモリ・デバイスに対してトランザクション特性を示すために、ホストによって６クロック・エッジが使用される。諸実施形態では、トランザクション特性を示すために１つ又は複数のコマンド及びアドレス（ＣＡｘ）ビットがホスト・デバイスから周辺メモリ・デバイスに送達され、トランザクション特性を示すために１つ又は複数のクロック遷移を必要とする可能性がある。例証のため、タイミング図４００Ｂに示されているように、図７に関して更に記載するように、ＲＰＣバス・インターフェースにより書き込みトランザクションの初期部分の間、４８ＣＡｘビットが提示される。特に、書き込みトランザクションは、第１の６クロック・エッジの間、ホスト・デバイスから周辺装置にＤＤＲ方式でＤＱ［７−０］データ・バス上で転送される６バイト幅の値によって識別される。これらのＣＡｘビットは現在のトランザクションが書き込みトランザクションであることを示す。加えて、この情報は、周辺装置においてデータが書き込まれるメモリ内のターゲット・アドレスを含む。
【００４５】
[00054]  ４３０では、データがデータ・バスによりホスト・デバイスによって周辺メモリ・デバイスに送達される。書き込みトランザクションでは待ち時間は不要である。タイミング図４００Ｂに示されているように、データ（Ｄｎ．．．）は、ＣＫ信号とＣＫ＃信号の交差部に中心で位置合わせされ、ホスト・デバイスによって出力され、周辺装置に書き込まれる。
【００４６】
[00055]  タイミング図４００Ｂに示されているように、一実施形態では、ＣＳ＃信号のアサート直後にＲＤＳ信号がアサートされる（例えば、ＬＯＷ又はＨＩＧＨにドライブされる）。この場合、ＲＤＳ信号は、書き込みトランザクションの持続時間の間、アサートされた状態のままになる。他の実施形態では、ＲＤＳ信号は書き込みトランザクションの間、Ｈｉ−ｚ状態のままになる。
【００４７】
[00056]  一実施形態では、ＲＰＣホスト・コントローラ及びＲＰＣ周辺装置の構成次第で、書き込みバーストは単一のデータ・バイト又は一連のデータ・バイトを取り出すことができる。マルチバイト・バースト・シナリオでは、ＣＫ信号及びＣＫ＃信号は新しいデータ値ごとにトグルし続ける。
【００４８】
[00057]  図４Ａに戻ると、４４０では、第１のクロック信号がＬＯＷであり、第２のクロック信号がＨＩＧＨである間にチップ選択信号（ＣＳ＃）をＨＩＧＨにアサートすることにより、書き込み動作の終了がホスト・デバイスで示される。例えば、タイミング図４００Ｂに示されているように、ＣＫ信号がＬＯＷにアサートされ、ＣＫ＃信号がＨＩＧＨにアサートされる間に、ＣＳ＃信号がＨＩＧＨに戻ることにより、書き込みトランザクションが終了する。
【００４９】
[00058]  図５は、本発明の一実施形態により、可変待ち時間ゲーティング・メカニズムとして並びに有効データが存在する時期を示すためのデータ・ストローブとしてＲＤＳ信号を使用することができる周辺制御装置を示している。例えば、図５は、ＲＰＣバス・インターフェースにより可変待ち時間読み取りトランザクションを実現するように構成されたＲＰＣ周辺装置５３０のブロック図である。
【００５０】
[00059]  特に、図５は、本発明の一実施形態により、ＲＰＣメモリ・バス・インターフェース５６０によりホスト・デバイスと周辺装置との可変待ち時間読み取りトランザクションを実現するように構成されたコンピューティング・システム５０５（例えば、ホスト・デバイス）のＲＰＣ周辺装置５３０のブロック図である。一実施形態では、周辺装置５３０は、読み取りデータ転送を開始するために固定数のクロック・サイクルを待たなければならないのではなく、データの出力準備ができると直ちにＲＤＳ信号のアサートを開始するように構成される。即ち、ＲＤＳ信号は、それぞれの新しいデータ値がデータ・バス（ＤＱ［７．．０］）上に提示される時期をホスト・デバイスに対して示すために使用される。その上、本発明の諸実施形態により、有効データがデータ・バス上で使用可能である時期を示すために従来の可変待ち時間バス・プロトコルに付随していた専用のＲＥＡＤＹ又はＷＡＩＴ信号の必要性が解消される。
【００５１】
[00060]  図５に示されているように、コンピューティング・システム５０５（例えば、ホスト・デバイス）は、ＲＰＣメモリ・バス・インターフェース５６０による周辺装置５３０との通信を調整するためにＲＰＣ周辺インターフェース５３０を含む。コンピューティング・システム５０５は、中央処理装置５４０と、組み込みランダム・アクセス・メモリ（ＲＯＭ）５５０及び／又は組み込みスタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）５５５などに埋め込み命令を記憶するためのメモリとを含む。また、コンピューティング・システム５０５は、ｘＤＲＡＭ５３５などのメモリ・デバイスを制御するためのｘＤＲＡＭコントローラ５３７も含むことができる。
【００５２】
[00061]  詳細には、ＲＰＣ周辺装置５３０は、周辺装置の異なるセクションから読み取られたデータを直ちに使用可能なものにすることができる可変待ち時間機構を提供する。即ち、周辺装置５３０は、そのデータをデータ・バス上で使用可能な状態にする時に、ターゲット・アドレスの特性次第で、周辺装置の異なるセクションの可変初期アクセス時間を決定し、それを反映することができる。即ち、周辺装置５３０は、本発明の一実施形態により、周辺装置内の異なるターゲット・アドレスの待ち時間特性を決定し、その待ち時間特性に基づいて有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブをトリガすることができる。
【００５３】
[00062]  例えば、ターゲット・アドレスが識別されてからデータが提示されるまでに要する時間は初期待ち時間として定義される。周辺装置はターゲット・アドレス次第で多種多様な内部待ち時間を有する可能性があるが、様々な実施形態では、初期データ値をデータ・バス上に置く前に決定された待ち時間が経過するまで、データは内部でストールされる。
【００５４】
[00063]  一例として、フラッシュ・メモリ・デバイスはいくつかの異なるターゲット・アドレス初期待ち時間特性を有する。読み取り動作は、状況レジスタ、ＳＲＡＭバッファ、メイン・フラッシュ・アレイ、２次フラッシュ・アレイ、及びＲＯＭアレイを含むために、異なるメモリ領域にアクセスすることができる。これらの異なるメモリ領域はいずれも、大幅に変動する特徴的なアクセス時間を有する。本発明の可変待ち時間メカニズムは、ターゲット・データを短縮時間でホストに返すことができるようにすることにより、全体的なパフォーマンスの改善を可能にする。
【００５５】
[00064]  より具体的には、周辺装置５３０は、有効データがデータ・バス上に存在する時期を示すデータ・ストローブ機能を提供するだけでなく、可変待ち時間ゲーティング機能を実行するように構成される。特に、一実施形態では、データを提示する準備ができると直ちに周辺装置５３０は初期ＲＤＳ遷移エッジ（例えば、ＬＯＷからＨＩＧＨに）を開始することになる。例えば、図５Ｂのタイミング図５００ＢはＲＰＣバス・インターフェースによる読み取りトランザクションを示しており、ＲＤＳの初期遷移は２クロック初期待ち時間として示されている。このため、本発明の諸実施形態は、ターゲット・アドレスの待ち時間特性次第でより早く又はより遅く遷移するためのＲＤＳ信号の第１の立ち上がりを提供する。
【００５６】
[00065]  図５に示されているように、周辺装置５３０は待ち時間タイマ５１５と１つ又は複数の待ち時間レジスタ５２０とを含む。一実施形態では、待ち時間タイマ５１５は、異なるアドレス又は異なるメモリ領域に関するクロック周波数とは無関係に最適初期待ち時間タイミングを決定することができる。このため、より高いクロック・レートはより大きい待ち時間カウントを使用し、より低いクロック・レートはより小さい待ち時間カウントを使用する。
【００５７】
[00066]  一実施形態では、待ち時間タイマ５１５は、周辺装置５３０内の最も遅いターゲット位置について最悪の場合の待ち時間を決定することができる。即ち、待ち時間レジスタ５２０には、すべてのメモリ位置について一般化された待ち時間カウントがロードされる。待ち時間カウントは、ターゲット・アドレスが識別されてから初期データが出力されるまでに必要なクロック・サイクルの数を示す。このため、周辺装置は、そのターゲット位置及び／又はアドレスに関する対応待ち時間カウントとターゲット・アドレスの相対速度次第で、データ出力（及びＲＤＳ信号のトグル）を開始すべき時期を調整するように構成される。
【００５８】
[00067]  他の実施形態では、待ち時間タイマ５１５は特定のターゲット位置に関する待ち時間を決定することができ、その位置は１つ又は複数のメモリ・アドレスに関連付けられる。決定された待ち時間は、対応するターゲット位置に関する待ち時間レジスタ５２０に記憶することができる。即ち、待ち時間レジスタ５２０には、ターゲット・アドレスが識別されてから対応するターゲット・アドレスについて初期データが出力されるまでに必要なクロック・サイクルの数を示す１つ又は複数の待ち時間カウントがロードされる。このため、周辺装置は、ターゲット・アドレス領域のそれぞれに関連する個別の待ち時間レジスタにアクセスでき、異なるアドレス領域は異なる初期アクセス時間特性を有する。待ち時間レジスタ５２０には、データ・スループットを最適化するための特性値がロードされる。そのように、周辺装置５３０は、異なるターゲット・アドレスの待ち時間特性を決定し、その待ち時間特性に基づいて有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブをトリガするように構成される。
【００５９】
[00068]  図６は、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによるバス・トランザクションのための読み取り又は書き込みトランザクション中のビット配置を示すビット・ダイアグラム６００である。ビット・ダイアグラム６００に示されているビット配置は、ＲＰＣバス・インターフェースにより実行される読み取り及び書き込みトランザクションの初期部分の間に転送される情報を表すものであり、そのすべては図１〜図５に前述されている。
【００６０】
[00069]  図６に示されているように、ＲＰＣ周辺装置によって実行すべきバス・トランザクションを定義するためにホストＲＰＣコントローラによって出力されるコマンド及びアドレス情報に関するビット割り当てが記載されている。コマンド及びアドレス情報は、ＲＰＣトランザクションの第１の６クロック・エッジ中に転送される第１の６バイトにわたってデータ・バス上で送達される。特に、４８ＣＡｘビットはＲＰＣバス・トランザクション（例えば、読み取り又は書き込みトランザクション）の初期部分の間、提示される。即ち、図６では６バイトの情報が提示されている。例えば、第６のバイト６１０はビット４７−４０を含み、ＣＫ信号の第１の立ち上がりでトリガされ、第５のバイト６１５はビット３９−３２を含み、ＣＫ信号の第１の立ち下がりでトリガされ、第４のバイト６２０はビット３１−２４を含み、ＣＫ信号の第２の立ち上がりでトリガされ、第３のバイト６２５はビット２３−１６を含み、ＣＫ信号の第２の立ち下がりでトリガされ、第２のバイト６３０はビット１５−８を含み、ＣＫ信号の第３の立ち上がりでトリガされ、第１のバイト６３５はビット７−０を含み、ＣＫ信号の第３の立ち下がりでトリガされる。
【００６１】
[00070]  図７は、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブ（ＲＤＳ）信号を含むメモリ・バス・インターフェースによるバス・トランザクションのためのビット機能を示す表７００である。表７００のビット機能は図６に示されているビット割り当てを表すものであり、ＲＰＣ周辺装置によって実行すべきバス・トランザクションを定義するためにホストＲＰＣコントローラによって出力されるコマンド及びアドレス情報を記載している。
【００６２】
[00071]  より具体的には、ビット４７（Ｒ／Ｗ＃）はそのトランザクションを読み取り又は書き込みトランザクションとして識別するものである。例えば、Ｒ／Ｗ＃＝１である場合、これは読み取りトランザクションを示し、Ｒ／Ｗ＃値＝０は書き込みトランザクションを示す。また、ビット４６（ターゲット）は、メイン・メモリ又はレジスタ空間内など、ターゲット・アドレスが位置する場所を示す。例えば、０というターゲット値はメモリ空間を示し、１というターゲット値はレジスタ空間を示す。ビット４５−１６は将来の行アドレス拡張のために予約されている。
【００６３】
[00072]  ビット３７−１６（行アドレス）はターゲット・アドレスの行コンポーネントに関する情報を提供する。行アドレス・ビットはどの３２バイトがメモリ・アレイからアクセスされるかを識別するものである。
【００６４】
[00073]  ビット１５（バースト・タイプ）はトランザクション出力のバーストが連続であるか又は折り返しであるかを示す。例えば、０というバースト・タイプ値は折り返しバースト（wrapped burst）を示し、１という値は連続バースト（continuous burst）を示す。詳細には、折り返しバーストは、３２バイト行として構成されたアレイに関する３２バイトの情報の末尾に達するまで、バースト長又は行内の所望の開始アドレスにアクセスし、そのバースト長の末尾まで続行し、そのバースト長の始めに折り返す。
【００６５】
[00074]  これに反して、連続バースト・タイプは、同じく所望の開始アドレスにアクセスし、連続バースト長の末尾まで続行する。次に、投機的にメモリ・アレイ内の次のグループのデータを出力バッファに入れて、現在のバースト長を拡張する。チップ選択がＨＩＧＨに戻ると、読み取りバーストの終了までこのアレイの投機的読み取りが継続する。
【００６６】
[00075]  ビット１４−１３はＲＰＣ  ＲＡＭデバイスに使用されるバイト・イネーブルのために予約されている。０１というバイト・イネーブル値はビット１５−８がマスクされていることを示し、１０というバイト・イネーブル値はビット７−０がマスクされていることを示す。ＲＰＣフラッシュ・デバイスの場合、バイト・イネーブル値は１１にドライブされる。加えて、ビット１２−４は将来の列アドレス拡張のために予約されている。
【００６７】
[00076]  ビット３−０（列アドレス）は列アドレス情報を提供する。即ち、列アドレス・ビットはメモリ・アレイ内のターゲット・アドレスの列コンポーネントを提供する。一実施形態では、インターフェースは８、１６、又は３２ビット・ワード・インターフェースをサポートする。そのように、読み取りと書き込みはどちらも対称的にバランスが取られている。他の実施形態では、１６ビット・インターフェースの場合、どの１つ又は複数のバイト（上位又は下位或いはその両方）が有効であるかを示すインジケータ及び／又はビット（例えば、ビット値２１）が存在する。
【００６８】
[00077]  従って、本発明の諸実施形態は、有効データがバスにより送達される時期を示すためのデータ・ストローブ信号の使用を実現するメモリ・バス・インターフェースによる可変待ち時間方式の実現を提供する低減ピン・カウント・メモリ・バス・インターフェースを提供する。
【００６９】
[00078]  上記の明細書では、実現例ごとに変動する可能性のある多数の具体的な詳細に関連して本発明の諸実施形態について説明してきた。従って、何が本発明であるか並びに本出願人によって本発明であると意図されているかを示す唯一かつ排他的な標識は、今後の訂正を含み、特許請求の範囲が発行される特定の形式で、本出願から由来する特許請求の範囲である。このため、請求項に明確に列挙されていない制限、要素、特性、特徴、利点、又は属性はいずれもこのような請求項の範囲を制限してはならない。従って、明細書及び図面は制限的な意味ではなく例証となるものと見なすべきである。
【図１】
2013214284.tif 000003
【図２Ａ】
2013214284.tif 000004
【図２Ｂ】
2013214284.tif 000005
【図３Ａ】
2013214284.tif 000006
【図３Ｂ】
2013214284.tif 000007
【図３Ｃ】
2013214284.tif 000008
【図４Ａ】
2013214284.tif 000009
【図４Ｂ】
2013214284.tif 000010
【図５】
2013214284.tif 000011
【図６】
2013214284.tif 000012
【図７】
2013214284.tif 000013
【外国語明細書】
2013214284000001.pdf