JP2013214284A - 読み取りデータ・ストローブ信号を含む低減ピン・カウント(rpc)メモリ・バス・インターフェースのための装置及び方法 - Google Patents

読み取りデータ・ストローブ信号を含む低減ピン・カウント(rpc)メモリ・バス・インターフェースのための装置及び方法 Download PDF

Info

Publication number
JP2013214284A
JP2013214284A JP2013000647A JP2013000647A JP2013214284A JP 2013214284 A JP2013214284 A JP 2013214284A JP 2013000647 A JP2013000647 A JP 2013000647A JP 2013000647 A JP2013000647 A JP 2013000647A JP 2013214284 A JP2013214284 A JP 2013214284A
Authority
JP
Japan
Prior art keywords
data
signal
read
bus
transaction
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.)
Granted
Application number
JP2013000647A
Other languages
English (en)
Other versions
JP6196447B2 (ja
JP2013214284A5 (ja
Inventor
Alan Zitlaw Clifford
アラン ジトロウ クリフォード
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.)
Spansion LLC
Original Assignee
Spansion LLC
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 Spansion LLC filed Critical Spansion LLC
Publication of JP2013214284A publication Critical patent/JP2013214284A/ja
Publication of JP2013214284A5 publication Critical patent/JP2013214284A5/ja
Application granted granted Critical
Publication of JP6196447B2 publication Critical patent/JP6196447B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/22Means for limiting or controlling the pin/gate ratio
    • 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
    • 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
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 

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)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)

Abstract

【課題】バス・パフォーマンスと必要な数のバス信号とのバランスを取るメモリ・バス・インターフェースを提供する。
【解決手段】メモリ・バス・インターフェース120のための方法及び装置は、読み取りデータ・ストローブを含み、周辺装置130,135が活動化される時期を示すチップ選択信号を送達するためのチップ選択を含み、ホスト・デバイスと前記周辺装置との間の通信を提供する。また、このインターフェースはディファレンシャル・クロック信号を送達するためのディファレンシャル・クロック対も含む。読み取りデータ・ストローブは周辺装置から読み取りデータ・ストローブ信号を送達するためにこのインターフェースに含まれる。このインターフェースはコマンド、アドレス、及びデータ情報を送達するためのデータ・バスを含む。読み取りデータ・ストローブは有効データがデータ・バス上に存在する時期を示す。
【選択図】図1

Description

[0001] 本発明は一般に通信バスに関する。
[0002] ほとんどのマイクロコントローラ及びマイクロプロセッサ・デバイスは、オフチップ周辺装置と通信するためのバス・インターフェースを含んでいる。これらのバス・インターフェースは、メモリ、アナログ・デジタル変換器、デジタル・アナログ変換器、液晶ディスプレイ(LCD)コントローラ、及び無数のその他の周辺装置を含む、幅広い種類の製品をサポートする。
[0003] 特定のカテゴリの周辺装置をターゲットにする固有の特性を有するいくつかの異なる周辺バス・インターフェースが存在する。従来技術で使用可能なバス・インターフェースは、バスのパフォーマンスと実現コストとのバランスを取ることを試行する。ホスト・マイクロコントローラの実現コストは、インターフェース信号カウント、入出力ドライバの物理特性、及びマイクロコントローラに統合されたバス・コントローラの複雑さを含む、いくつかの特性を対象として含んでいる。
[0004] 必要なピンの数と周辺バスによって提供されるパフォーマンスのレベルとのバランスを取る作業がしばしば行われる。より具体的には、バス・インターフェースは、典型的にピン・カウントの最小化、又はデータ・スループットの最大化に焦点を合わせている。一方、システム・レベルのハードウェア・オーバヘッドを最小限にするべく、より少ないバス信号によって高待ち時間バス(higher latency busses)が実現される場合が多い。例えば、シリアル周辺バス・インターフェースは典型的にロー・ピン・カウントで設計されるが、データ転送速度は遅くなる。一例として、I2Cバスは、ホスト・デバイスと周辺装置との間の通信をサポートするために2本のピンだけを必要とする低速インターフェースである。その一方で、低待ち時間(low-latency)かつ高スループットの周辺バスは、典型的に、ホスト・マイクロコントローラと周辺装置との間のインターフェースをサポートするために多数の信号を必要とする。例えば、パラレル周辺バス・インターフェースは、高速データ伝送速度用に設計されている。一例として、ダイナミック・ランダム・アクセス・メモリ(DRAM)バス・インターフェースは、オフチップDRAMメモリ・デバイスに高いデータ・スループットを提供するために使用される。
[0005] 従って、本発明の諸実施形態は、バス・パフォーマンスと必要な数のバス信号とのバランスを取るメモリ・バス・インターフェースを提供する。
[0005] 一実施形態では、読み取りデータ・ストローブ(read data strobe)を含む、メモリ・バス・インターフェースのための装置が記載される。このインターフェースは周辺装置が活動化される時期を示すチップ選択(chip select)信号を送達するためのチップ選択を含み、このバス・インターフェースはホスト・デバイスと周辺装置との間の通信を提供する。また、このインターフェースは、ディファレンシャル・クロック(differential clock)信号を送達するためのディファレンシャル・クロック対も含む。読み取りデータ・ストローブは、周辺装置から読み取りデータ・ストローブ信号を送達するためにこのインターフェースに含まれる。このインターフェースは、コマンド、アドレス、及びデータ情報を送達するためのデータ・バスを含む。読み取りデータ・ストローブは、有効データが周辺装置によってデータ・バス上に出力されている時期を示す。
[0006] 他の実施形態では、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用してトランザクションを実行するための方法が開示される。このバス・インターフェースは、ホスト・デバイスと周辺装置との間の通信を提供する。この方法はチップ選択信号の送達を容易にするためのチップ選択を構成することを含み、チップ選択信号は周辺装置が活動化される時期を示す。この方法は、ディファレンシャル・クロック信号を使用可能にするために第1のクロック信号と第2のクロック信号とを送達するためのディファレンシャル・クロック対を構成することを更に含む。この方法は、周辺装置から読み取りデータ・ストローブ信号としてソース同期出力クロック(source synchronous output clock)を送達するための読み取りデータ・ストローブを構成することを更に含む。また、データ・バスは、コマンド、アドレス、及びデータ情報を送達するためにも構成される。ディファレンシャル・クロックの対及び読み取りデータ・ストローブは、読み取りトランザクション及び書き込みトランザクションのためにダブル・データ・レート(DDR)方式でデータの転送を可能にする。
[0007] 更に他の実施形態では、ホスト・デバイスと周辺装置との間の通信を提供するメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法が開示される。このバス・インターフェースは、ディファレンシャル・クロック対と、有効データが存在する時期を示す読み取りデータ・ストローブを含む。ディファレンシャル・クロック信号及び読み取りデータ・ストローブは、読み取りトランザクションのためにDDR方式でデータ・バス上のデータの転送を可能にする。より具体的には、メモリ・バス上で読み取りトランザクションを実行するための方法は、第1及び第2のクロック信号が相補的である(例えば、第1のクロック信号がLOWであり、第2のクロック信号がHIGHである)間にチップ選択信号を(例えば、LOWに)アサートすることによりホスト・デバイスで読み取りトランザクションを開始することを含む。また、この方法は、データ・バスによりディファレンシャル・クロック信号において3クロック・サイクルにわたって読み取りコマンド及びターゲット・アドレスをホスト・デバイスから周辺装置に送信することを含む。また、この方法は、データ・バスにより周辺装置からホスト・デバイスでデータを受信することと、周辺装置で発生している読み取りデータ・ストローブ信号を読み取りデータ・ストローブ・インターフェースによりホスト・デバイスで受信することも含む。この方法は、読み取りデータ・ストローブ信号の立ち上がりから始まるデータをホスト・デバイスで取り出すことを更に含み、読み取りデータ・ストローブ信号はソース同期出力クロックを含む。
[0008] 更に他の実施形態では、ホスト・デバイスと周辺装置との間の通信を提供するメモリ・バス・インターフェースを使用して書き込みトランザクションを実行するための方法が開示される。このバス・インターフェースは、ディファレンシャル・クロック信号を提供するクロック信号対と、有効データが存在する時期を示す読み取りデータ・ストローブ信号を含む。ディファレンシャル・クロック信号及び読み取りデータ・ストローブは、読み取りトランザクションのためにDDR方式でデータ・バス上のデータの転送を可能にする。より具体的には、メモリ・バス上で書き込みトランザクションを実行するための方法は、第1のクロック信号がLOWであり、第2のクロック信号がHIGHである間にチップ選択をLOWに遷移することによりホスト・デバイスで書き込みトランザクションの開始を示すことを含む。また、この方法は、データ・バスによりディファレンシャル・クロック信号において3クロック・サイクルにわたって書き込みコマンド及びターゲット・アドレスを送信することを含む。この方法は、データ・バスによりホスト・デバイスからデータを送信することを含む。
[0009] 本発明は、制限としてではなく例として、添付図面の図に示されており、これらの図では同様の参照番号が同様の要素を示す。
[00010]現在請求されている主題の諸実施形態を実現可能なコンピューティング・システムのブロック図である。 [00011]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含む低減ピン・カウント(reduced pin count)・インターフェースの図である。 [00012]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用してトランザクションを実行するための方法を示すフローダイアグラムである。 [00013]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法を示すフローダイアグラムである。 [00014]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによる読み取りトランザクションを示すタイミング図である。 [00015]本発明の一実施形態により、図3Bのタイミング図と比較した時に、RPCメモリ・インターフェース・バスによりコマンド及びアドレス情報を送達するためにより少ないビットを必要とするメモリ・バス・インターフェースによる読み取りトランザクションを示す、もう1つのタイミング図である。 [00016]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによる書き込みトランザクションを示すタイミング図である。 [00017]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによる書き込みトランザクションを示すタイミング図である。 [00018]本発明の一実施形態により、周辺装置内の異なるターゲット・アドレスの待ち時間特性(latency characteristic)を決定し、待ち時間特性に基づいて有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブをトリガするように構成された周辺装置の周辺制御装置のブロック図である。 [00019]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによるバス・トランザクションのための読み取り又は書き込みトランザクション中のビット配置を示す図である。 [00020]本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによるバス・トランザクションのためのビット機能を示す表である。
[00021] 次に本発明の諸実施形態について詳細に言及するが、その例は添付図面に示されている。以下の諸実施形態に併せて本発明について論じるが、これらの諸実施形態のみに本発明を限定するものではないことが理解されるであろう。これに反して、本発明は、特許請求の範囲によって定義されるように本発明の精神及び範囲によって含まれる可能性のある代替例、変更例、及び同等例を含むものである。さらに、以下に示す本発明の詳細な説明では、本発明を完全に理解するために多数の具体的な詳細が明記されている。しかし、本発明の諸実施形態は、これらの具体的な詳細なしでも実践することができる。その他の事例では、本発明の諸態様を不必要に曖昧にしないために、周知の方法、手順、コンポーネント、及び回路については詳細に記載していない。例えば、本発明を曖昧にするのを回避するために、周知のシステム構成及びプロセス・ステップのいくつかについては詳細に開示しない。同様に、本発明の諸実施形態を示す図面は半概略的であって、一定の縮尺で描かれているわけではなく、特に、寸法の一部は提示を明瞭にするためのものであり、図には誇張して示されている。
[00022] 従って、本発明の諸実施形態は、バス・パフォーマンスと必要な数のバス信号との固有のバランスを提供する装置及び方法を提供するものである。本発明のその他の諸実施形態は、上記の利点を提供し、より低い初期待ち時間及びより高い持続スループットを発揮する低減ピン・カウント・メモリ・バス・インターフェースの実現も提供する。本発明の更に他の諸実施形態は、上記の利点を提供し、有効データがバスにより送達される時期を示すためのデータ・ストローブ信号の使用を実現するメモリ・バス・インターフェースによる可変待ち時間方式の実現も提供し、それにより、これまでデータ・バスにより情報を送達する時に既存の可変待ち時間バス・プロトコルに付随していた専用の「READY」又は「WAIT」信号の必要性が解消される。
[00023] 図1は、現在請求されている主題の諸実施形態を実現可能なコンピューティング・システム100のブロック図である。一例として、コンピューティング・システム100は、メモリを提供するためのメモリSOCなどの1チップ上のシステム(SOC)を含むことができる。コンピューティング・システム100は特定の数及びタイプの要素を有するものとして図1に示され記載されているが、諸実施形態は必ずしもこの模範的な実現例に限定されない。即ち、コンピューティング・システム100は、図示されているもの以外の要素を含むことができ、図示されている要素のうちの2つ以上を含むことができる。例えば、コンピューティング・システム100は、図示されている1つのプロセッサ110より多くの処理装置を含むことができる。同様に、他の例では、コンピューティング・システム100は、図1に示されていない追加のコンポーネントを含むことができる。
[00024] 最も基本的な構成では、コンピューティング・システム100は典型的に少なくとも1つのプロセッサ110とメモリ・デバイス104とを含む。コンピューティング・デバイスの正確な構成及びタイプ次第で、メモリ・デバイス104は揮発性(RAMなど)、不揮発性(ROM、フラッシュ・メモリなど)、又はこれら2種類の何らかの組み合わせにすることができる。一実施形態では、メモリ・デバイス104はNORフラッシュ・メモリ・アレイを含む。コンピューティング・システム100は、磁気又は光学式のディスク又はテープを含むがこれらに限定されない追加の記憶装置112(取り外し可能及び/又は取り外し不能)も含むことができる。記憶媒体としては、コンピュータ可読命令、データ構造、プログラム・モジュール、又はその他のデータなどの情報の記憶のためにいずれかの方法又は技術で実現された揮発性及び不揮発性記憶装置、取り外し可能及び取り外し不能記憶装置を含む。制限としてではなく例として、記憶媒体としては、RAM、ROM、EEPROM、フラッシュ・メモリ又はその他のメモリ技術、CD−ROM、デジタル・ビデオ・ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用可能であって、コンピューティング・システム100によってアクセス可能である任意のその他の媒体を含む。
[00025] 更に、コンピューティング・システム100は、メモリ・バス・インターフェース120を介してメモリ・デバイス104に結合されたホスト・デバイス106を含むことができ、このバスはホスト・デバイス106及びメモリ・デバイス104と周辺装置130及び135などの1つ又は複数の周辺装置とのトランザクションを容易にする。後述するように、メモリ・デバイス・インターフェース120は、有効データがバス上で使用可能である時期を示すために読み取りデータ・ストローブを使用してデータの送達を可能にする。
[00026] コンピューティング・システム100は、コンピューティング・システム100がその他のシステムと通信できるようにする通信接続部(複数も可)118も含むことができる。通信接続部(複数も可)118は通信媒体の一例である。制限としてではなく例として、通信媒体としては、有線ネットワーク又は直接線式接続などの有線媒体、並びに音波、RF、赤外線及びその他の無線媒体などの無線媒体を含む。
[00027] コンピュータ・システム100は、キーボード、マウス、ペン、音声入力装置、ゲーム入力装置(例えば、ジョイ・スティック、ゲーム・コントロール・パッド、及び/又はその他のタイプのゲーム入力装置)、タッチ入力装置などの入力装置(複数も可)116を含むことができる。更に、コンピューティング・システム100は、ディスプレイ(例えば、コンピュータ・モニタ及び/又は投射システム)、スピーカ、プリンタ、ネットワーク周辺装置などの出力装置(複数も可)114も含むことができる。
[00028] 図2Aは、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブ230を含む低減ピン・カウント(RPC)・メモリ・バス・インターフェース210の図200である。文脈のため、図2のバス・インターフェース210は、図1のバス120と同様の機能を提供し、図1に示されているように、コンピューティング・システム100のホスト・デバイス106と周辺装置130又は135及び/又はメモリ・デバイス104など、ホスト・デバイスと周辺装置との間の通信を容易にするように動作する。一実施形態では、RPCメモリ・バス・インターフェースはパラレル・インターフェースを含む。他の実施形態では、RPCメモリ・バス・インターフェースはシリアル・バス・インターフェースを含む。
[00029] 特に、RPCメモリ・バス・インターフェース210は、チップ選択(CS#)信号を送達するために構成されたチップ選択線215を含む。CS#信号は、対応する周辺装置が所与のトランザクションのために活動化される時期を識別するために使用されるデバイス・イネーブル信号を含む。例えば、チップ選択215は、周辺装置が活動化される時期を示すCS#信号を送達するために構成される。より具体的には、CS#信号は、読み取り又は書き込みトランザクションが要求されたことを周辺装置に通知するために使用可能になる。
[00030] 更に、RPCインターフェース210は、第1のクロック線223と第2のクロック線225とを含むディファレンシャル・クロック対の線220を含む。より具体的には、ディファレンシャル・クロック対220は、2つのクロック・ソースを含むディファレンシャル基準クロック信号を送達するために構成される。即ち、ディファレンシャル・クロック信号は、第1のクロック線223により送達される第1のクロック(CK)信号と第2のクロック線225により送達される第2のクロック(CK#)信号に基づくものであり、これらの信号を含むものである。CK信号とCK#信号とを含むディファレンシャル・クロックは、バス・インターフェース210によりコマンド固有情報、アドレス情報、及びデータ情報を捕捉すべき時期を識別するために使用される。その他の実施形態では、クロック機構の機能はシングルエンド型(single ended)又はディファレンシャルである。
[00031] RPCインターフェース210は読み取りデータ・ストローブ線230も含む。読み取りデータ・ストローブ線230は、一実施形態では、任意選択で周辺装置から読み取りデータ・ストローブ(RDS)信号を送達するように構成される。RDS信号は、一実施形態では、ソース同期出力クロックを含む。更に、RDS信号は、読み取りデータがデータ・バス235上で有効である時期を示すために周辺装置によって使用される。諸実施形態では、RDS信号の機能はシングルエンド型又はディファレンシャルであるか、或いは全く存在しない。
[00032] 加えて、RPCインターフェース210はデータ・バス235を含む。データ・バス235は、図7に関して更に記載するように、コマンド固有ID、アドレス情報、及びデータ情報を送達するように構成される。一実施形態では、データ・バス235は、ディファレンシャル・クロック信号のすべてのエッジで1バイト(例えば、8ビット)のデータを送達可能な8線幅データ・バスとして構成される。このため、RPCメモリ・バス・インターフェース210は、最小限の12線アクティブ信号バス・インターフェースにより低初期待ち時間及び高持続スループットを提供する。
[00033] 一実施形態では、CK信号とCK#信号とを含むディファレンシャル・クロック及びRDS信号の使用により、ダブル・データ・レート(DDR)方式でデータを転送することができ、その場合、一実施形態では、通常のクロック・サイクルあたり2回、データが伝送される。より具体的には、ディファレンシャル・クロック及びRDS信号は、データ・バス235によりDDR方式でトランザクション並びにコマンド固有ID、アドレス情報、及びデータ情報の転送を可能にする。更に他の諸実施形態では、シングル・データ・レート方式でデータを伝送するために、CK及びCK#の両方のクロック信号の代わりに1つのクロック信号のみが使用される。
[00034] 図2Aに示されているように、追加の信号のために追加の線及び/又はピンが使用可能である。例えば、コンピューティング・システム(例えば、図1のシステム100)及び/又はメモリ・チップなどのチップに電力を送達するために、1つ又は複数の電力線及び/又はピンが設けられる。電力線及び/又はピンは、システム全体の電力を分配するための1つ又は複数のVcc線と、チップ上の入出力コンポーネントに第2の電力を分配するための1つ又は複数のVIO線とを含む。加えて、書き込み保護線は、メモリ内の書き込み機能を使用不可にする書き込み保護(WP#)信号を送達するように構成される。また、リセット線又はピンは、チップを初期化してリセット又は初期状態に戻すためのリセット(RESET#)信号を送達するように構成される。また、1つ又は複数の接地線及び/又はピンは、コンピューティング・システム(例えば、図1のシステム100)及び/又はメモリ・チップを接地するために設けられる。例えば、1つ又は複数のVSSIO接地線はシステム又はチップ上の入出力コンポーネントに対する接地を可能にする。また、1つ又は複数のVSS接地線はシステム又はチップに対するシステム全体の接地を可能にする。
[00035] 図2Bは、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースを使用してトランザクションを実行するための方法を示すフローダイアグラム200Bである。一実施形態では、フローダイアグラム200Bで実行されるトランザクションは、ホスト・デバイスと周辺装置及び/又はシステム又はチップ上のメモリ・デバイスとの間の通信を容易にする時に低初期待ち時間及び高持続スループットを提供するために図2AのRPCバス・インターフェース210上で実行される。
[00036] 260では、RPCインターフェースはチップ選択線を含むように構成され、この線はチップ選択(CS#)信号の送達を容易にするように構成される。図4B、図4C、及び図5Bに関して以下に更に記載するように、CS#信号は、読み取り又は書き込みトランザクションなど、所与のトランザクションのために周辺装置が活動化される時期を示す。
[00037] 265では、RPCインターフェースは1対のクロック線を含むように構成され、このクロック線はディファレンシャル・クロック信号を使用可能にするために第1のクロック信号及び第2のクロック信号を送達するように構成される。このため、1対のクロック線は、バス・インターフェースによりコマンド固有情報、アドレス情報、及びデータ情報を捕捉すべき時期を識別するために使用されるディファレンシャル基準クロックを送達するように構成される。
[00038] 270では、RPCインターフェースは読み取りデータ・ストローブ線を含むように構成され、この読み取りデータ・ストローブ線は周辺装置から読み取りデータ・ストローブ(RDS)信号としてソース同期出力クロックを送達するように構成される。RDS信号は、読み取りデータがデータ・バス上で有効である時期を示すために周辺装置によって使用される。加えて、他の実施形態では、RDS信号は双方向性であり、書き込みデータがデータ・バス上で有効である時期を示すためにホスト・デバイスによって使用される。前述の通り、ディファレンシャル・クロック対の信号及びRDS信号により、データをデータ・バスによりDDR方式で転送することができる。
[00039] 275では、RPCインターフェースはデータ・バスを含むように構成され、このデータ・バスはコマンド固有ID、アドレス、及びデータ情報を送達するように構成される。例えば、コマンドIDは、現在のトランザクションが読み取りトランザクションであるか又は書き込みトランザクションであるかを示す。一実施形態では、データ・バスは、一度に8ビットのデータを送達可能な8線幅データ・バスとして構成される。
[00040] 図3A及び図3Bは相俟って、図2Aのインターフェース210などのRPCメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法を示している。特に、図3Aは、ホスト・デバイスとメモリ・デバイスとの間の通信を容易にするメモリ・バス・インターフェースを使用して読み取りトランザクションを実行するための方法を示すフローダイアグラム300Aである。図3Bは、本発明の一実施形態により、RPCメモリ・バス・インターフェースによる、図3Aに概略を示した読み取りトランザクションの実現を示すタイミング図300Bである。即ち、タイミング図300Bは読み取りトランザクションに使用されるバス信号プロトコルを示している。詳細には、RPCメモリ・バス・インターフェースは、有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブを含む。また、ディファレンシャル・クロック及びデータ・ストローブ信号の使用により、コマンド、アドレス、及びデータ情報をより高いクロック・レートにおいてDDR方式で転送することができる。
[00041] 一実施形態では、フローダイアグラム300Aで実行され、タイミング図300Bに概略を示したトランザクションは、ホスト・デバイスと周辺装置及び/又はシステム又はチップ上のメモリ・デバイスとの間の通信を容易にする時に低初期待ち時間及び高持続スループットを提供するために、図2AのRPCバス・インターフェース210上で実行される。即ち、フローダイアグラム300Aで実行されるトランザクションは、ホスト・デバイスと、コンピューティング・システム上の周辺装置として動作するメモリ・デバイスとの間の読み取りトランザクションの実現を示す。
[00042] 310では、ホスト・デバイスにおいて、クロック信号が反対の電圧(例えば、HIGH及びLOW)を有する間にRPCインターフェースのチップ選択(CS#)信号のアサート(例えば、HIGH又はLOW)と、データ・バスによるコマンド及びアドレス情報の送達により、読み取りトランザクションがホスト・デバイスによって開始される。例証のため、タイミング図300Bに示されているように、読み取り要求がホスト・デバイスからメモリ・デバイスに送達される読み取りトランザクションの開始時に、第1のクロック信号(CK)がLOWにアサートされ、第2のクロック信号(CK#)がHIGHである間に、チップ選択(CS#)信号がLOWにアサートされる。また、一実施形態では、読み取りトランザクションの持続時間の間、チップ選択(CS#)信号がLOWにアサートされる。
[00043] 320では、第1の6クロック遷移(例えば、3クロック・サイクル)が行われると、読み取りコマンド及びターゲット・アドレス情報がデータ・バスによりホスト・デバイスから送達される。即ち、周辺メモリ・デバイスに対してトランザクション特性を示すために、ホストによって6クロック・エッジが使用される。諸実施形態では、トランザクション特性を示すために1つ又は複数のコマンド及びアドレス(CAx)ビットがホスト・デバイスから周辺メモリ・デバイスに送達され、トランザクション特性を示すために1つ又は複数のクロック遷移を必要とする可能性がある。例証のため、タイミング図300Bに示されているように、一実施形態では、図7に関して更に記載するように、RPCバス・インターフェースにより読み取りトランザクションの初期部分の間、48CAxビットが提示される。特に、トランザクションは、第1の6クロック・エッジの間、ホスト・デバイスから周辺装置にDDR方式でDQ[7−0]データ・バス上で転送される6バイト幅の値によって識別される。これらのCAxビットは現在のトランザクションが読み取りトランザクションであることを示し、その結果、受信側の周辺メモリ・デバイスは現在のトランザクションが読み取り要求であることを理解する。加えて、この情報は、そこから周辺メモリ・デバイスによってデータが取り出されて、ホスト・デバイスに送達して戻される予定のメモリ内のターゲット・アドレスを含む。このため、周辺装置は、要求されたデータをメモリからアクセスし、RPCインターフェースのデータ・バスDQ[7−0]により要求されたデータをホスト・デバイスに返送する。
[00044] 図3Cでは、タイミング図300Cは、本発明の一実施形態により、トランザクション特性を示すために必要なコマンド及びアドレス・ビットの数の変動を示す、RPCメモリ・バス・インターフェースによる読み取りトランザクションを示している。タイミング図300Cは、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブ(RDS)を含む。図示の通り、タイミング図300Cは図3Bのタイミング図300Bに含まれるものより少ないコマンド及びアドレス・ビットを含む。即ち、タイミング図300Cではアドレス・ビットが4クロック・エッジにわたって送達され、タイミング図300Bでは必要なコマンド及びアドレス・ビットを送達するために6クロック・エッジを必要とする。具体的には、タイミング図300Cに関連するターゲットの周辺メモリ・デバイスは、タイミング図300Bに関連するメモリ・デバイスと比較すると、より少ないアドレス・ビットを必要とする低密度デバイスにすることができる。このため、この低密度デバイスは、コマンド及びアドレス位置情報を定義するためにより少ないクロック・エッジ及び/又はサイクルを必要とする。
[00045] 330では、データが周辺メモリ・デバイスによって送達され、データ・バスによりホスト・デバイスで受信される。タイミング図300Bに示されているように、データ(Dn...)は周辺メモリ・デバイスによって出力される。
[00046] 加えて、340では、読み取りデータ・ストローブ(RDS)信号が周辺メモリ・デバイスによって送達され、ホスト・デバイスによって受信される。一実施形態では、RDS信号はソース同期出力クロックを含む。RDS信号は、要求されたデータが有効であり、データ・バス上で使用可能である時期を示すために使用される。詳細には、350では、RDS信号によって示されるように、データがホスト・デバイスによって取り出される。エッジで位置合わせされたRDS信号の使用により、データはホスト・デバイスによって取り出される。一実施形態では、タイミング図300Bに示されているように、RDS信号の立ち上がりから始まるデータが取り出される。
[00047] 図3Bに示されているように、一実施形態では、要求されたデータが返される前に待ち時間が考慮される。周辺メモリ・デバイスがメモリ・アレイのターゲット・アドレスからデータを取り出し、データ・バスによるホスト・デバイスへの送達に備えてそのデータを周辺装置の出力バッファに移動できるようにするために、待ち時間が必要である(例えば、1つ又は複数のダミー・クロック・サイクル)。諸実施形態では、潜在期間(latency period)は周辺装置によって決定される。潜在期間後、要求されたデータはデータ・バスにより周辺装置によってホスト・デバイスに送達され、有効データを示すために読み取りデータ・ストローブ(RDS)信号がアサートされる(例えば、HIGH又はLOW)。一実施形態では、待ち時間はハード・カウント潜在期間である(例えば、図3Bに示されているように2クロック・サイクルの潜在期間、10クロック・サイクルなど)。例えば、ハード・カウントは周辺メモリ・デバイスについて考えられる最大潜在期間を考慮する。即ち、待ち時間は、周辺装置のすべてのセクションの最大待ち時間を考慮に入れる最大潜在期間である。更に他の実施形態では、待ち時間は最適化待ち時間カウント期間である。即ち、潜在期間は、デバイス又はデバイス・セクション固有のものであり、図5に関して更に記載するように、どの周辺装置又は周辺装置のどのセクションが要求されたデータを送達するかによって様々になる可能性がある。図5に関して更に記載するように、潜在期間は周辺装置によって決定され、1つ又は複数の待ち時間レジスタに記憶することができる。更に他の実施形態では、潜在期間は本質的に周辺装置によって把握されており、潜在期間についてどの待ち時間カウンタ及び/又はレジスタも参照しない。即ち、周辺装置(例えば、要求されたデータの出力バッファへの転送を管理するコンポーネント及び/又はコンポーネント回路)は本質的に、要求されたデータが出力バッファ上で取り出されロードされた時期を把握しており、どのような所定の潜在期間にもかかわらず、データ・バス上で送達する準備ができている。このため、データが送達に使用可能であることを周辺データが把握すると直ちに、周辺装置は、どのような所定の潜在期間にもかかわらず、要求されたデータをデータ・バスにより送達するように構成される。
[00048] タイミング図300Bに示されているように、一実施形態では、CS#信号のアサート直後にRDS信号がLOWにドライブされる。他の実施形態では、周辺メモリ・デバイスがデータの送達とともにRDS信号をHIGHにドライブするまで、RDS信号はHi−z状態のままになる。更に他の実施形態では、CS#信号のアサート直後にRDS信号はHIGHにドライブされる。
[00049] 一実施形態では、RPCホスト・コントローラ及びRPC周辺装置の構成次第で、読み取りバーストは単一のデータ・バイト又は一連のデータ・バイトを取り出すことができる。マルチバイト・バースト・シナリオでは、CK信号、CK#信号、及びRDS信号は新しいデータ値ごとにトグルし続ける。
[00050] 図3Aに戻ると、360では、第1のクロック信号がLOWであり、第2のクロック信号がHIGHである間にチップ選択信号(CS#)をHIGHにアサートすることにより、読み取り動作の終了がホスト・デバイスで示される。例えば、タイミング図300Bに示されているように、CK信号がLOWにアサートされ、CK#信号がHIGHにアサートされる間に、CS#信号がHIGHに戻ることにより、読み取りトランザクションが終了する。その他の諸実施形態では、CK信号とCK#信号が反対の電圧(例えば、HIGHとLOW)を有する間に、CS#信号がLOWに戻ることにより終了を示すことなど、その他の組み合わせがサポートされる。
[00051] 図4A及び図4Bは相俟って、図2Aのインターフェース210などのRPCメモリ・バス・インターフェースを使用して書き込みトランザクションを実行するための方法を示している。特に、図4Aは、ホスト・デバイスとメモリ・デバイスとの間の通信を容易にするメモリ・バス・インターフェースを使用して書き込みトランザクションを実行するための方法を示すフローダイアグラム400Aである。図4Bは、本発明の一実施形態により、RPCメモリ・バス・インターフェースによる、図4Aに概略を示した書き込みトランザクションの実現を示すタイミング図400Bである。即ち、タイミング図400Bは書き込みトランザクションに使用されるバス信号プロトコルを示している。また、ディファレンシャル・クロック及びデータ・ストローブ信号の使用により、コマンド、アドレス、及びデータ情報をより高いクロック・レートにおいてDDR方式で転送することができる。
[00052] 410では、ホスト・デバイスにおいて、書き込みトランザクションがホスト・デバイスとメモリ・デバイスとの間で行われているという表示がRPCインターフェースのチップ選択線上に提示される。より具体的には、クロック信号が反対の電圧(例えば、HIGH及びLOW)を有する間にチップ選択(CS#)信号を(例えば、HIGH又はLOWに)アサートすることにより、書き込みトランザクションがホスト・デバイスによって開始される。例証のため、タイミング図400Bに示されているように、書き込みコマンドがホスト・デバイスからメモリ・デバイスに送達される書き込みトランザクションの開始時に、第1のクロック信号(CK)がLOWにアサートされ、第2のクロック信号(CK#)がHIGHである間に、CS#信号がLOWにアサートされる。また、一実施形態では、書き込みトランザクションの持続時間の間、チップ選択(CS#)信号がLOWにアサートされる。
[00053] 420では、第1の6クロック遷移(例えば、3クロック・サイクル)が行われると、書き込みコマンド及びターゲット・アドレス情報がデータ・バスによりホスト・デバイスから送達される。即ち、周辺メモリ・デバイスに対してトランザクション特性を示すために、ホストによって6クロック・エッジが使用される。諸実施形態では、トランザクション特性を示すために1つ又は複数のコマンド及びアドレス(CAx)ビットがホスト・デバイスから周辺メモリ・デバイスに送達され、トランザクション特性を示すために1つ又は複数のクロック遷移を必要とする可能性がある。例証のため、タイミング図400Bに示されているように、図7に関して更に記載するように、RPCバス・インターフェースにより書き込みトランザクションの初期部分の間、48CAxビットが提示される。特に、書き込みトランザクションは、第1の6クロック・エッジの間、ホスト・デバイスから周辺装置にDDR方式でDQ[7−0]データ・バス上で転送される6バイト幅の値によって識別される。これらのCAxビットは現在のトランザクションが書き込みトランザクションであることを示す。加えて、この情報は、周辺装置においてデータが書き込まれるメモリ内のターゲット・アドレスを含む。
[00054] 430では、データがデータ・バスによりホスト・デバイスによって周辺メモリ・デバイスに送達される。書き込みトランザクションでは待ち時間は不要である。タイミング図400Bに示されているように、データ(Dn...)は、CK信号とCK#信号の交差部に中心で位置合わせされ、ホスト・デバイスによって出力され、周辺装置に書き込まれる。
[00055] タイミング図400Bに示されているように、一実施形態では、CS#信号のアサート直後にRDS信号がアサートされる(例えば、LOW又はHIGHにドライブされる)。この場合、RDS信号は、書き込みトランザクションの持続時間の間、アサートされた状態のままになる。他の実施形態では、RDS信号は書き込みトランザクションの間、Hi−z状態のままになる。
[00056] 一実施形態では、RPCホスト・コントローラ及びRPC周辺装置の構成次第で、書き込みバーストは単一のデータ・バイト又は一連のデータ・バイトを取り出すことができる。マルチバイト・バースト・シナリオでは、CK信号及びCK#信号は新しいデータ値ごとにトグルし続ける。
[00057] 図4Aに戻ると、440では、第1のクロック信号がLOWであり、第2のクロック信号がHIGHである間にチップ選択信号(CS#)をHIGHにアサートすることにより、書き込み動作の終了がホスト・デバイスで示される。例えば、タイミング図400Bに示されているように、CK信号がLOWにアサートされ、CK#信号がHIGHにアサートされる間に、CS#信号がHIGHに戻ることにより、書き込みトランザクションが終了する。
[00058] 図5は、本発明の一実施形態により、可変待ち時間ゲーティング・メカニズムとして並びに有効データが存在する時期を示すためのデータ・ストローブとしてRDS信号を使用することができる周辺制御装置を示している。例えば、図5は、RPCバス・インターフェースにより可変待ち時間読み取りトランザクションを実現するように構成されたRPC周辺装置530のブロック図である。
[00059] 特に、図5は、本発明の一実施形態により、RPCメモリ・バス・インターフェース560によりホスト・デバイスと周辺装置との可変待ち時間読み取りトランザクションを実現するように構成されたコンピューティング・システム505(例えば、ホスト・デバイス)のRPC周辺装置530のブロック図である。一実施形態では、周辺装置530は、読み取りデータ転送を開始するために固定数のクロック・サイクルを待たなければならないのではなく、データの出力準備ができると直ちにRDS信号のアサートを開始するように構成される。即ち、RDS信号は、それぞれの新しいデータ値がデータ・バス(DQ[7..0])上に提示される時期をホスト・デバイスに対して示すために使用される。その上、本発明の諸実施形態により、有効データがデータ・バス上で使用可能である時期を示すために従来の可変待ち時間バス・プロトコルに付随していた専用のREADY又はWAIT信号の必要性が解消される。
[00060] 図5に示されているように、コンピューティング・システム505(例えば、ホスト・デバイス)は、RPCメモリ・バス・インターフェース560による周辺装置530との通信を調整するためにRPC周辺インターフェース530を含む。コンピューティング・システム505は、中央処理装置540と、組み込みランダム・アクセス・メモリ(ROM)550及び/又は組み込みスタティック・ランダム・アクセス・メモリ(SRAM)555などに埋め込み命令を記憶するためのメモリとを含む。また、コンピューティング・システム505は、xDRAM535などのメモリ・デバイスを制御するためのxDRAMコントローラ537も含むことができる。
[00061] 詳細には、RPC周辺装置530は、周辺装置の異なるセクションから読み取られたデータを直ちに使用可能なものにすることができる可変待ち時間機構を提供する。即ち、周辺装置530は、そのデータをデータ・バス上で使用可能な状態にする時に、ターゲット・アドレスの特性次第で、周辺装置の異なるセクションの可変初期アクセス時間を決定し、それを反映することができる。即ち、周辺装置530は、本発明の一実施形態により、周辺装置内の異なるターゲット・アドレスの待ち時間特性を決定し、その待ち時間特性に基づいて有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブをトリガすることができる。
[00062] 例えば、ターゲット・アドレスが識別されてからデータが提示されるまでに要する時間は初期待ち時間として定義される。周辺装置はターゲット・アドレス次第で多種多様な内部待ち時間を有する可能性があるが、様々な実施形態では、初期データ値をデータ・バス上に置く前に決定された待ち時間が経過するまで、データは内部でストールされる。
[00063] 一例として、フラッシュ・メモリ・デバイスはいくつかの異なるターゲット・アドレス初期待ち時間特性を有する。読み取り動作は、状況レジスタ、SRAMバッファ、メイン・フラッシュ・アレイ、2次フラッシュ・アレイ、及びROMアレイを含むために、異なるメモリ領域にアクセスすることができる。これらの異なるメモリ領域はいずれも、大幅に変動する特徴的なアクセス時間を有する。本発明の可変待ち時間メカニズムは、ターゲット・データを短縮時間でホストに返すことができるようにすることにより、全体的なパフォーマンスの改善を可能にする。
[00064] より具体的には、周辺装置530は、有効データがデータ・バス上に存在する時期を示すデータ・ストローブ機能を提供するだけでなく、可変待ち時間ゲーティング機能を実行するように構成される。特に、一実施形態では、データを提示する準備ができると直ちに周辺装置530は初期RDS遷移エッジ(例えば、LOWからHIGHに)を開始することになる。例えば、図5Bのタイミング図500BはRPCバス・インターフェースによる読み取りトランザクションを示しており、RDSの初期遷移は2クロック初期待ち時間として示されている。このため、本発明の諸実施形態は、ターゲット・アドレスの待ち時間特性次第でより早く又はより遅く遷移するためのRDS信号の第1の立ち上がりを提供する。
[00065] 図5に示されているように、周辺装置530は待ち時間タイマ515と1つ又は複数の待ち時間レジスタ520とを含む。一実施形態では、待ち時間タイマ515は、異なるアドレス又は異なるメモリ領域に関するクロック周波数とは無関係に最適初期待ち時間タイミングを決定することができる。このため、より高いクロック・レートはより大きい待ち時間カウントを使用し、より低いクロック・レートはより小さい待ち時間カウントを使用する。
[00066] 一実施形態では、待ち時間タイマ515は、周辺装置530内の最も遅いターゲット位置について最悪の場合の待ち時間を決定することができる。即ち、待ち時間レジスタ520には、すべてのメモリ位置について一般化された待ち時間カウントがロードされる。待ち時間カウントは、ターゲット・アドレスが識別されてから初期データが出力されるまでに必要なクロック・サイクルの数を示す。このため、周辺装置は、そのターゲット位置及び/又はアドレスに関する対応待ち時間カウントとターゲット・アドレスの相対速度次第で、データ出力(及びRDS信号のトグル)を開始すべき時期を調整するように構成される。
[00067] 他の実施形態では、待ち時間タイマ515は特定のターゲット位置に関する待ち時間を決定することができ、その位置は1つ又は複数のメモリ・アドレスに関連付けられる。決定された待ち時間は、対応するターゲット位置に関する待ち時間レジスタ520に記憶することができる。即ち、待ち時間レジスタ520には、ターゲット・アドレスが識別されてから対応するターゲット・アドレスについて初期データが出力されるまでに必要なクロック・サイクルの数を示す1つ又は複数の待ち時間カウントがロードされる。このため、周辺装置は、ターゲット・アドレス領域のそれぞれに関連する個別の待ち時間レジスタにアクセスでき、異なるアドレス領域は異なる初期アクセス時間特性を有する。待ち時間レジスタ520には、データ・スループットを最適化するための特性値がロードされる。そのように、周辺装置530は、異なるターゲット・アドレスの待ち時間特性を決定し、その待ち時間特性に基づいて有効データがデータ・バス上に存在する時期を示す読み取りデータ・ストローブをトリガするように構成される。
[00068] 図6は、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブを含むメモリ・バス・インターフェースによるバス・トランザクションのための読み取り又は書き込みトランザクション中のビット配置を示すビット・ダイアグラム600である。ビット・ダイアグラム600に示されているビット配置は、RPCバス・インターフェースにより実行される読み取り及び書き込みトランザクションの初期部分の間に転送される情報を表すものであり、そのすべては図1〜図5に前述されている。
[00069] 図6に示されているように、RPC周辺装置によって実行すべきバス・トランザクションを定義するためにホストRPCコントローラによって出力されるコマンド及びアドレス情報に関するビット割り当てが記載されている。コマンド及びアドレス情報は、RPCトランザクションの第1の6クロック・エッジ中に転送される第1の6バイトにわたってデータ・バス上で送達される。特に、48CAxビットはRPCバス・トランザクション(例えば、読み取り又は書き込みトランザクション)の初期部分の間、提示される。即ち、図6では6バイトの情報が提示されている。例えば、第6のバイト610はビット47−40を含み、CK信号の第1の立ち上がりでトリガされ、第5のバイト615はビット39−32を含み、CK信号の第1の立ち下がりでトリガされ、第4のバイト620はビット31−24を含み、CK信号の第2の立ち上がりでトリガされ、第3のバイト625はビット23−16を含み、CK信号の第2の立ち下がりでトリガされ、第2のバイト630はビット15−8を含み、CK信号の第3の立ち上がりでトリガされ、第1のバイト635はビット7−0を含み、CK信号の第3の立ち下がりでトリガされる。
[00070] 図7は、本発明の一実施形態により、有効データが存在する時期を示す読み取りデータ・ストローブ(RDS)信号を含むメモリ・バス・インターフェースによるバス・トランザクションのためのビット機能を示す表700である。表700のビット機能は図6に示されているビット割り当てを表すものであり、RPC周辺装置によって実行すべきバス・トランザクションを定義するためにホストRPCコントローラによって出力されるコマンド及びアドレス情報を記載している。
[00071] より具体的には、ビット47(R/W#)はそのトランザクションを読み取り又は書き込みトランザクションとして識別するものである。例えば、R/W#=1である場合、これは読み取りトランザクションを示し、R/W#値=0は書き込みトランザクションを示す。また、ビット46(ターゲット)は、メイン・メモリ又はレジスタ空間内など、ターゲット・アドレスが位置する場所を示す。例えば、0というターゲット値はメモリ空間を示し、1というターゲット値はレジスタ空間を示す。ビット45−16は将来の行アドレス拡張のために予約されている。
[00072] ビット37−16(行アドレス)はターゲット・アドレスの行コンポーネントに関する情報を提供する。行アドレス・ビットはどの32バイトがメモリ・アレイからアクセスされるかを識別するものである。
[00073] ビット15(バースト・タイプ)はトランザクション出力のバーストが連続であるか又は折り返しであるかを示す。例えば、0というバースト・タイプ値は折り返しバースト(wrapped burst)を示し、1という値は連続バースト(continuous burst)を示す。詳細には、折り返しバーストは、32バイト行として構成されたアレイに関する32バイトの情報の末尾に達するまで、バースト長又は行内の所望の開始アドレスにアクセスし、そのバースト長の末尾まで続行し、そのバースト長の始めに折り返す。
[00074] これに反して、連続バースト・タイプは、同じく所望の開始アドレスにアクセスし、連続バースト長の末尾まで続行する。次に、投機的にメモリ・アレイ内の次のグループのデータを出力バッファに入れて、現在のバースト長を拡張する。チップ選択がHIGHに戻ると、読み取りバーストの終了までこのアレイの投機的読み取りが継続する。
[00075] ビット14−13はRPC RAMデバイスに使用されるバイト・イネーブルのために予約されている。01というバイト・イネーブル値はビット15−8がマスクされていることを示し、10というバイト・イネーブル値はビット7−0がマスクされていることを示す。RPCフラッシュ・デバイスの場合、バイト・イネーブル値は11にドライブされる。加えて、ビット12−4は将来の列アドレス拡張のために予約されている。
[00076] ビット3−0(列アドレス)は列アドレス情報を提供する。即ち、列アドレス・ビットはメモリ・アレイ内のターゲット・アドレスの列コンポーネントを提供する。一実施形態では、インターフェースは8、16、又は32ビット・ワード・インターフェースをサポートする。そのように、読み取りと書き込みはどちらも対称的にバランスが取られている。他の実施形態では、16ビット・インターフェースの場合、どの1つ又は複数のバイト(上位又は下位或いはその両方)が有効であるかを示すインジケータ及び/又はビット(例えば、ビット値21)が存在する。
[00077] 従って、本発明の諸実施形態は、有効データがバスにより送達される時期を示すためのデータ・ストローブ信号の使用を実現するメモリ・バス・インターフェースによる可変待ち時間方式の実現を提供する低減ピン・カウント・メモリ・バス・インターフェースを提供する。
[00078] 上記の明細書では、実現例ごとに変動する可能性のある多数の具体的な詳細に関連して本発明の諸実施形態について説明してきた。従って、何が本発明であるか並びに本出願人によって本発明であると意図されているかを示す唯一かつ排他的な標識は、今後の訂正を含み、特許請求の範囲が発行される特定の形式で、本出願から由来する特許請求の範囲である。このため、請求項に明確に列挙されていない制限、要素、特性、特徴、利点、又は属性はいずれもこのような請求項の範囲を制限してはならない。従って、明細書及び図面は制限的な意味ではなく例証となるものと見なすべきである。

Claims (20)

  1. 周辺装置が活動化される時期を示すチップ選択信号を送達するためのチップ選択であって、前記バス・インターフェースがホスト・デバイスと前記周辺装置との間の通信を提供する、チップ選択と、
    第1のクロック信号と第2のクロック信号とを含むディファレンシャル・クロック信号を送達するためのディファレンシャル・クロック対と、
    前記周辺装置から読み取りデータ・ストローブ信号を送達するための読み取りデータ・ストローブと、
    コマンド、アドレス、及びデータ情報を送達するためのデータ・バスと、
    を含むメモリ・バス・インターフェース。
  2. 前記ディファレンシャル・クロックの対及び前記読み取りデータ・ストローブが、ダブル・データ・レート(DDR)方式でデータの転送を可能にする、
    請求項1記載のメモリ・バス・インターフェース。
  3. 前記データ・バスが8線幅データ・バスを含み、
    前記メモリ・バス・インターフェースが12線インターフェースを含む、
    請求項1記載のメモリ・バス・インターフェース。
  4. 読み取りトランザクションにおいて、前記ディファレンシャル・クロック対の交差部が前記コマンド及び前記アドレス情報の送達を示し、且つ、前記読み取りデータ・ストローブ信号の遷移が前記データ情報の送達を示す、
    請求項1記載のメモリ・バス・インターフェース。
  5. 書き込みトランザクションにおいて、前記ディファレンシャル・クロック対の交差部が前記コマンド、アドレス、及びデータ情報の送達を示す、
    請求項1記載のメモリ・バス・インターフェース。
  6. 前記クロック対の機能がシングルエンド型又はディファレンシャルである、
    請求項1記載のメモリ・バス・インターフェース。
  7. 前記読み取りデータ・ストローブの機能がシングルエンド型又はディファレンシャルである、
    請求項1記載のメモリ・バス・インターフェース。
  8. 前記データ・バスがシングル・データ・レート・バス又はダブル・データ・レート・バスとして動作する、
    請求項1記載のメモリ・バス・インターフェース。
  9. メモリ・バス・インターフェースを使用してトランザクションを実行するための方法であって、
    周辺装置が活動化される時期を示すチップ選択信号の送達を容易にするためのチップ選択を構成することであって、前記バス・インターフェースがホスト・デバイスと前記周辺装置との間の通信を提供することと、
    ディファレンシャル・クロック信号を使用可能にするために第1のクロック信号と第2のクロック信号とを送達するためのディファレンシャル・クロック対を構成することと、
    前記周辺装置から読み取りデータ・ストローブ信号としてソース同期出力クロックを送達するための読み取りデータ・ストローブを構成することと、
    コマンド・タイプ、アドレス、及びデータ情報を送達するためのデータ・バスを構成することと、
    を含み、
    前記ディファレンシャル・クロックの対及び前記読み取りデータ・ストローブが、読み取りトランザクション及び書き込みトランザクションのためにダブル・データ・レート(DDR)方式でデータの転送を可能にする、
    方法。
  10. 前記読み取りトランザクションを実行することを更に含み、
    前記読み取りトランザクションを実行することが;
    前記第1のクロック信号及び前記第2のクロック信号のための電圧がLOW及びHIGHである間に前記チップ選択信号をアサートすることにより前記ホスト・デバイスで前記読み取りトランザクションを開始することと、
    前記データ・バスにより前記ディファレンシャル・クロック信号において3クロック・サイクルにわたって読み取りタイプ・コマンド及びターゲット・アドレスを送信することであって、前記読み取りタイプ・コマンドが、前記トランザクションが読み取りタイプを含むことを示すことと、
    前記読み取りトランザクションが連続バースト・タイプであるか又は折り返しバースト・タイプであるかを示すことと、
    前記データ・バスにより前記周辺装置から前記ホスト・デバイスでデータを受信することと、
    前記読み取りデータ・ストローブにより読み取りデータ・ストローブ信号を前記ホスト・デバイスで受信することと、
    前記読み取りデータ・ストローブ信号の立ち上がりから始まる前記データを前記ホスト・デバイスで取り出すことであって、前記読み取りデータ・ストローブ信号がソース同期出力クロックを含むことと、
    を含む、
    請求項9記載の方法。
  11. 前記データ・バスにより6クロック遷移にわたって前記読み取りコマンド及び前記ターゲット・アドレスを送信することと、
    前記データを取り出す前に前記RDS信号の遷移を待つこと、
    を更に含む請求項10記載の方法。
  12. マルチバイト・バースト・モードにおいてデータ値ごとに前記ディファレンシャル・クロック信号及び前記読み取りデータ・ストローブ信号をトグルすること、
    を更に含む請求項10記載の方法。
  13. 前記第1のクロック信号がLOWであり、前記第2のクロック信号がHIGHである間に前記チップ選択信号をHIGHにアサートすることにより、前記読み取りトランザクションを終了すること、
    を更に含む請求項10記載の方法。
  14. 前記データの準備ができると直ちに前記周辺装置で前記読み取りデータ・ストローブ信号をトリガすること、
    を更に含む請求項10記載の方法。
  15. 前記書き込みトランザクションを実行することを更に含み、前記書き込みトランザクションを実行することが;
    前記第1のクロック信号がLOWであり、前記第2のクロック信号がHIGHである間に前記チップ選択をLOWに遷移することにより、前記ホスト・デバイスで前記書き込みトランザクションの開始を示すことと、
    前記データ・バスにより前記ディファレンシャル・クロック信号において3クロック・サイクルにわたって書き込みタイプ・コマンド及びターゲット・アドレスを送信することであって、前記書き込みタイプ・コマンドが、前記トランザクションが書き込みタイプを含むことを示すことと、
    前記書き込みトランザクションが連続バースト・タイプであるか又は折り返しバースト・タイプであるかを示すことと、
    前記データ・バスにより前記ホスト・デバイスからデータを送信することと、
    を含む、
    請求項9記載の方法。
  16. 前記第1及び第2のクロック信号の信号交差部に前記コマンド、アドレス、及びデータ情報を中心で位置合わせすること、
    を更に含む請求項15記載の方法。
  17. マルチバイト・バースト・モードにおいてデータ値ごとに前記ディファレンシャル・クロック信号をトグルすること、
    を更に含む請求項15記載の方法。
  18. 前記第1のクロック信号がLOWであり、前記第2のクロック信号がHIGHである間に前記チップ選択信号をHIGHにアサートすることにより、前記書き込みトランザクションを終了すること、
    を更に含む請求項15記載の方法。
  19. ホスト・デバイスと、
    データを記憶するために動作可能なメモリ・アレイを含むメモリ・デバイスと、
    プロセッサと、
    前記メモリ・デバイスと前記ホスト・デバイスとの間の接続を提供するバス・インターフェースと、
    を含み、
    前記バス・インターフェースが;
    周辺装置が活動化される時期を示すチップ選択信号を送達するためのチップ選択であって、前記バス・インターフェースが前記ホスト・デバイスと前記周辺装置との間の通信を提供する、チップ選択と、
    第1のクロック信号と第2のクロック信号とを含むディファレンシャル・クロック信号を送達するためのディファレンシャル・クロック対と、
    前記周辺装置から読み取りデータ・ストローブ信号を送達するための読み取りデータ・ストローブと、
    コマンド、アドレス、及びデータ情報を送達するためのデータ・バスと、
    を含む、
    装置。
  20. 前記読み取りデータ・ストローブが読み取りデータ情報の送達を示す、
    請求項19記載の装置。
JP2013000647A 2012-03-30 2013-01-07 読み取りデータ・ストローブ信号を含む低減ピン・カウント(rpc)メモリ・バス・インターフェースのための装置及び方法 Active JP6196447B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/435,445 US8966151B2 (en) 2012-03-30 2012-03-30 Apparatus and method for a reduced pin count (RPC) memory bus interface including a read data strobe signal
US13/435,445 2012-03-30

Publications (3)

Publication Number Publication Date
JP2013214284A true JP2013214284A (ja) 2013-10-17
JP2013214284A5 JP2013214284A5 (ja) 2017-07-13
JP6196447B2 JP6196447B2 (ja) 2017-09-13

Family

ID=48326627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013000647A Active JP6196447B2 (ja) 2012-03-30 2013-01-07 読み取りデータ・ストローブ信号を含む低減ピン・カウント(rpc)メモリ・バス・インターフェースのための装置及び方法

Country Status (6)

Country Link
US (1) US8966151B2 (ja)
JP (1) JP6196447B2 (ja)
KR (2) KR102030126B1 (ja)
CN (1) CN103366794B (ja)
GB (1) GB2500818B (ja)
TW (1) TWI547807B (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9281005B2 (en) 2014-05-01 2016-03-08 Avago Technologies General Ip (Singapore) Pte. Ltd. Multiplexed communication in a storage device
US9430148B2 (en) 2014-05-01 2016-08-30 Avago Technologies General Ip (Singapore) Pte. Ltd. Multiplexed synchronous serial port communication with skew control for storage device
US9343103B2 (en) 2014-07-11 2016-05-17 Avago Technologies General Ip (Singapore) Pte. Ltd. Serial port communication for storage device using single bidirectional serial data line
KR102235521B1 (ko) 2015-02-13 2021-04-05 삼성전자주식회사 특정 패턴을 갖는 저장 장치 및 그것의 동작 방법
US10002102B2 (en) * 2015-03-13 2018-06-19 Microchip Technology Incorporated Low-pin microcontroller device with multiple independent microcontrollers
US9812183B2 (en) 2016-03-04 2017-11-07 Adesto Technologies Corporation Read latency reduction in a memory device
US10613763B2 (en) 2016-04-21 2020-04-07 Adesto Technologies Corporation Memory device having multiple read buffers for read latency reduction
US10380060B2 (en) * 2016-06-17 2019-08-13 Etron Technology, Inc. Low-pincount high-bandwidth memory and memory bus
KR20180046428A (ko) 2016-10-27 2018-05-09 삼성전자주식회사 메모리 장치 및 그것의 트레이닝 방법
KR20180070743A (ko) * 2016-12-16 2018-06-27 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
WO2019050534A1 (en) * 2017-09-08 2019-03-14 Etron Technology America, Inc. MEMORY BUS AND MEMORY WITH LARGE BAND WIDTH AND LOW NUMBER OF PINS
US11681352B2 (en) 2019-11-26 2023-06-20 Adesto Technologies Corporation Standby current reduction in memory devices
CN111538686A (zh) * 2020-03-31 2020-08-14 广东高云半导体科技股份有限公司 少管脚存储器的控制系统、fpga芯片和存储系统
US11366774B2 (en) 2020-09-24 2022-06-21 Adesto Technologies Corporation Memory latency reduction in XIP mode
US11704258B2 (en) 2021-08-11 2023-07-18 Dialog Semiconductor US Inc. Latency reduction in SPI flash memory devices

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328963A (ja) * 1998-04-02 1999-11-30 Hyundai Electronics Ind Co Ltd メモリ・システム、半導体メモリ装置およびシンクロナス・メモリ装置の動作方法
JP2000200486A (ja) * 1998-06-25 2000-07-18 Fujitsu Ltd 半導体記憶装置
JP2000315185A (ja) * 1999-04-30 2000-11-14 Hitachi Ltd 半導体メモリファイルシステム
US20050068812A1 (en) * 2003-09-30 2005-03-31 Jong-Hoon Oh Echo clock on memory system having wait information
US20080165589A1 (en) * 2007-01-08 2008-07-10 Macronix International Co., Ltd. Method and system for a serial peripheral interface
US20090300237A1 (en) * 2008-06-02 2009-12-03 Micron Technology, Inc. Asynchronous/synchronous interface
JP2010501916A (ja) * 2006-08-22 2010-01-21 モサイド・テクノロジーズ・インコーポレーテッド スケーラブルメモリシステム
WO2011025895A1 (en) * 2009-08-26 2011-03-03 Qualcomm Incorporated Hybrid single and dual-channel ddr interface scheme by interleaving address/control signals during dual-channel operation

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000065B2 (en) * 2002-01-02 2006-02-14 Intel Corporation Method and apparatus for reducing power consumption in a memory bus interface by selectively disabling and enabling sense amplifiers
US6886067B2 (en) * 2002-05-23 2005-04-26 Seiko Epson Corporation 32 Bit generic asynchronous bus interface using read/write strobe byte enables
US7009894B2 (en) * 2004-02-19 2006-03-07 Intel Corporation Dynamically activated memory controller data termination
CN1787110A (zh) * 2005-10-28 2006-06-14 杭州华为三康技术有限公司 一种实现接口的方法和装置
WO2007125519A2 (en) * 2006-05-03 2007-11-08 Nxp B.V. Latency optimized resynchronization solution for ddr/ddr2 sdram read path
US7890684B2 (en) * 2006-08-31 2011-02-15 Standard Microsystems Corporation Two-cycle return path clocking
US8713231B2 (en) * 2009-11-13 2014-04-29 Panasonic Corporation Interface circuit and interface system
US8593902B2 (en) * 2011-09-06 2013-11-26 Mediatek Inc. Controller and access method for DDR PSRAM and operating method thereof
US8738852B2 (en) * 2011-08-31 2014-05-27 Nvidia Corporation Memory controller and a dynamic random access memory interface

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328963A (ja) * 1998-04-02 1999-11-30 Hyundai Electronics Ind Co Ltd メモリ・システム、半導体メモリ装置およびシンクロナス・メモリ装置の動作方法
JP2000200486A (ja) * 1998-06-25 2000-07-18 Fujitsu Ltd 半導体記憶装置
JP2000315185A (ja) * 1999-04-30 2000-11-14 Hitachi Ltd 半導体メモリファイルシステム
US20050068812A1 (en) * 2003-09-30 2005-03-31 Jong-Hoon Oh Echo clock on memory system having wait information
JP2010501916A (ja) * 2006-08-22 2010-01-21 モサイド・テクノロジーズ・インコーポレーテッド スケーラブルメモリシステム
US20080165589A1 (en) * 2007-01-08 2008-07-10 Macronix International Co., Ltd. Method and system for a serial peripheral interface
US20090300237A1 (en) * 2008-06-02 2009-12-03 Micron Technology, Inc. Asynchronous/synchronous interface
WO2011025895A1 (en) * 2009-08-26 2011-03-03 Qualcomm Incorporated Hybrid single and dual-channel ddr interface scheme by interleaving address/control signals during dual-channel operation

Also Published As

Publication number Publication date
TWI547807B (zh) 2016-09-01
TW201339847A (zh) 2013-10-01
GB2500818B (en) 2015-12-23
KR20130111301A (ko) 2013-10-10
GB2500818A (en) 2013-10-02
GB201305446D0 (en) 2013-05-08
CN103366794A (zh) 2013-10-23
US8966151B2 (en) 2015-02-24
JP6196447B2 (ja) 2017-09-13
KR102030126B1 (ko) 2019-10-08
US20130262907A1 (en) 2013-10-03
KR20190116212A (ko) 2019-10-14
CN103366794B (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
JP6196447B2 (ja) 読み取りデータ・ストローブ信号を含む低減ピン・カウント(rpc)メモリ・バス・インターフェースのための装置及び方法
KR102401271B1 (ko) 메모리 시스템 및 그 동작 방법
CN105608027B (zh) 非易失存储设备和访问非易失存储设备的方法
JP2020166832A5 (ja)
US10902890B2 (en) Method, apparatus and system for a per-DRAM addressability mode
US7496719B2 (en) Universal nonvolatile memory boot mode
US11799479B2 (en) Apparatus for transmitting and receiving a signal, a method of operating the same, a memory device, and a method of operating the memory device
TWI600010B (zh) 用於進行連續寫入至動態隨機存取記憶體的排組之設備、方法及系統
KR102168487B1 (ko) 높은 클럭 속도에서 연속하는 판독 버스트 지원
JP4972212B2 (ja) ブリッジ回路
KR102500896B1 (ko) Nand 드롭된 커맨드 검출 및 복구
WO2022241754A1 (en) Memory device and controlling method thereof
EP4323877A1 (en) Adaptive memory access management
US20190096459A1 (en) Memory devices for performing multiple write operations and operating methods thereof
US7103707B2 (en) Access control unit and method for use with synchronous dynamic random access memory device
US8402233B2 (en) Method and apparatus for high throughput mass storage device interface in a microprocessor for handheld systems
JP7500698B2 (ja) メモリからeccを読み出す回路および方法
EP4375840A1 (en) Memory controller, electronic system including the same and method of controlling memory access

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151119

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20160118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161207

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20170216

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20170531

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170619

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20170714

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170818

R150 Certificate of patent or registration of utility model

Ref document number: 6196447

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250