XDR DRAM


XDR_DRAM

 「XDRDRAM」  
XDR DRAM(エクストリームデータレートダイナミックランダムアクセスメモリ)は、高性能のダイナミックランダムアクセスメモリインターフェイスです。これはRDRAMに基づいており、RDRAMを継承しています。競合するテクノロジーには、DDR2とGDDR4が含まれます。 XDRDRAM。 コンテンツ
1 概要
2 技術仕様
2.1 パフォーマンス 2.2 特徴 2.3 電力要件 2.4 システム設計の容易さ 2.5 レイテンシー
3 プロトコル
3.1 行アクティブ化コマンド 3.2 読み取り/書き込みコマンド
3.2.1 マスクされた書き込みコマンド
3.3 プリチャージ/リフレッシュコマンド 3.43.4 キャリブレーション/パワーダウンコマンド
4 低速シリアルバス
4.1 コマンドの一般的な構造
5 も参照してください
6 参考文献
7 外部リンク

概要
XDRは、小型で高帯域幅のコンシューマーシステム、高性能メモリアプリケーション、およびハイエンドGPUで効果的に機能するように設計されています。これにより、初期のRDRAMを悩ませていた異常に高いレイテンシの問題が解消されます。また、XDR DRAMはピンごとの帯域幅に重点を置いているため、PCB製造のコスト管理をさらに進めることができます。これは、同じ量の帯域幅に必要なレーンが少ないためです。ラムバスは技術に対する権利を所有しています。XDRは、PlayStation3コンソールでSonyによって使用されます。

技術仕様

パフォーマンス
400MHzでの初期クロックレート。
8進データレート(ODR):レーンごとのクロックサイクルごとに8ビット。
各チップは、8、16、または32のプログラム可能なレーンを提供し、900 MHz(7.2 GHz有効)で最大230.4 Gbit / s(28.8  GB / s)を提供し ます。

特徴
双方向差動ラムバス信号レベル(DRSL)
これは、差動オープンコレクタードライバー、電圧振幅0.2Vを使用します。LVDSと同じではありません。
プログラム可能なオンチップ終端
適応インピーダンス整合
8バンクのメモリアーキテクチャ
フル帯域幅で最大4つのバンクインターリーブトランザクション
ポイントツーポイントデータ相互接続
チップスケールパッケージ包装
動的リクエストスケジューリング
最大の効率のための書き込み後の早期読み取りのサポート
ゼロオーバーヘッドリフレッシュ

電力要件
1.8 V Vdd
プログラム可能な超低電圧DRSL200mVスイング
低電力PLL / DLL設計
パワーダウンセルフリフレッシュサポート
動的クロックゲーティングによる動的データ幅のサポート
ピンごとのI / Oパワーダウン
サブページアクティベーションのサポート

システム設計の容易さ
ビットごとのFlexPhase回路は、2.5psの解像度を補正します
XDR相互接続は最小ピン数を使用します

レイテンシー
1.25 / 2.0 / 2.5 / 3.33ns要求パケット

プロトコル
XDR RAMチップの高速信号は、差動クロック入力(マスターからのクロック、CFM / CFMN)、12ビットシングルエンド要求/コマンドバス(RQ11..0)、および最大16の双方向差動データバスです。ビット幅(DQ15..0 / DQN15..0)。要求バスは複数のメモリチップに並列に接続できますが、データバスはポイントツーポイントです。1つのRAMチップのみを接続できます。固定幅のメモリコントローラーでさまざまな量のメモリをサポートするために、チップにはプログラム可能なインターフェイス幅が32ビット幅のDRAMコントローラーは、2つの16ビットチップをサポートするか、それぞれが8ビットのデータを提供する4つのメモリチップ、または2ビットインターフェイスで構成された最大16のチップに接続できます。
さらに、各チップには、その機能を決定し、そのインターフェイスを構成するために使用される低速シリアルバスがこれは、リセットライン(RST)、シリアルコマンド入力(CMD)、シリアルクロック(SCK)、およびデイジーチェーン接続されて最終的に接続されるシリアルデータ入力/出力ライン(SDIおよびSDO)の3つの共有入力で構成されます。メモリコントローラの単一のピンに。
すべてのシングルエンドラインはアクティブローです。アサートされた信号または論理1は、低電圧で表されます。
要求バスは、クロック入力に対して2倍のデータレートで動作します。2つの連続する12ビット転送(CFMの立ち下がりエッジで始まる)は、24ビットのコマンドパケットを作成します。
データバスはクロックの8倍の速度で動作します。400MHzクロックは3200MT / sを生成します。すべてのデータの読み取りと書き込みは、2クロックサイクル続く16転送バーストで動作します。
リクエストパケットの形式は次のとおりです。
XDRDRAM要求パケットフォーマット
クロックエッジ
少し NOP 列の読み取り/書き込み
キャリブレーション/パワーダウン
プリチャージ/リフレッシュ
行アクティブ化
マスクされた書き込み 少し 少し 説明 少し 説明 少し 説明 少し 説明
少し
説明↓ RQ110 0
COLオペコード 0 COLXオペコード 0 ROWPオペコード 0 ROWAオペコード 1 COLMオペコード ↓ RQ100 0 0 0 1 M3 マスクの下位ビットを書き込む ↓ RQ90 0 1 1 R9 行アドレスの上位ビットM2 ↓
RQ80 1 0 1R10 M1 ↓ RQ7 WRX
書き込み/読み取りビット 予約済み POP1 プリチャージ遅延(0–3)R11 M0 ↓ RQ6 C8
列アドレスの上位ビット POP0 R12 予約済み C8 列アドレスの上位ビット ↓ RQ5 C9 予約済みR13 C9 ↓ RQ4 C10
予約済み R14 C10 予約済み↓ RQ3 C11 XOP3
サブオプコード R15C11 ↓ RQ2 BC2
銀行の住所XOP2 BP2
プリチャージバンク BA2 銀行の住所 BC2 銀行の住所 ↓ RQ1 BC1 XOP1 BP1 BA1 BC1 ↓RQ0 BC0 XOP0 BP0 BA0 BC0 ↑ RQ11 DELC コマンド遅延(0–1) 予約済み POP2 プリチャージ有効 DELA コマンド遅延(0–1) M7 マスク上位ビットを書き込む ↑ RQ10 予約済み ROP2
更新コマンド R8 行アドレスの下位ビット M6 ↑ RQ9ROP1 R7 M5 ↑ RQ8ROP0R6 M4 ↑ RQ7 C7
列アドレスの下位ビット DELR1
更新遅延(0–3)R5 C7
列アドレスの下位ビット ↑ RQ6 C6 DELR0R4 C6 ↑
RQ5 C5 予約済みR3 C5 ↑
RQ4 C4 R2C4 ↑ RQ3 SC3
サブ列アドレス R1 SC3 サブ列アドレス ↑ RQ2 SC2 BR2
銀行を更新するR0 SC2 ↑
RQ1 SC1 BR1 SR1 サブ行アドレスSC1 ↑
RQ0 SC0 BR0SR0 SC0
さまざまなコマンド間で経過しなければならない最小時間を与えるタイミング制約が多数あります(ダイナミックランダムアクセスメモリ§メモリタイミングを参照)。それらを送信するDRAMコントローラーは、それらがすべて満たされていることを確認する必要が
一部のコマンドには遅延フィールドが含まれています。これらは、指定されたクロックサイクル数だけそのコマンドの効果を遅らせます。これにより、(異なるバンクへの)複数のコマンドを同じクロックサイクルで有効にすることができます。

行アクティブ化コマンド
これは、標準のSDRAMのactivateコマンドと同等に動作し、バンクのセンスアンプアレイにロードされる行アドレスを指定します。電力を節約するために、チップは、センスアンプアレイの一部のみをアクティブにするように構成され得る。この場合、SR1..0ビットはアクティブにする行の半分または4分の1を指定し、後続の読み取り/書き込みコマンドの列アドレスはその部分に制限する必要が(更新操作では常に行全体が使用されます。)

読み取り/書き込みコマンド
これらは、標準のSDRAMの読み取りまたは書き込みコマンドと同様に動作し、列アドレスを指定します。データは、書き込みコマンドの数サイクル後(通常は3)にチップに提供され、読み取りコマンドの数サイクル後(通常は6)にチップによって出力されます。他の形式のSDRAMと同様に、DRAMコントローラは、データバスが両方向で同時に使用されるようにスケジュールされていないことを確認する責任がデータは常に16転送バーストで転送され、2クロックサイクル続きます。したがって、×16デバイスの場合、バーストごとに256ビット(32バイト)が転送されます。
チップが16ビット幅未満のデータバスを使用している場合、1つまたは複数のサブ列アドレスビットを使用して、データバスに表示される列の部分を選択します。データバスが8ビット幅の場合、SC3は、読み取られたデータのどの半分にアクセスするかを識別するために使用されます。データバスが4ビット幅の場合、SC3とSC2が使用されます。
従来のSDRAMとは異なり、バースト内でデータが提供される順序を選択するための規定はありません。したがって、クリティカルワードファーストの読み取りを実行することはできません。

マスクされた書き込みコマンド
マスクされた書き込みコマンドは通常の書き込みと似ていますが、コマンドの遅延は許可されず、マスクバイトが提供されます。これにより、どの8ビットフィールドに書き込むかを制御できます。これは、どのバイトが書き込まれるかを示すビットマップではありません。書き込みバーストの32バイトには十分な大きさではありません。むしろ、DRAMコントローラーが未書き込みのバイトを埋めるビットパターンです。DRAMコントローラは、書き込まれる他のバイトに表示されないパターンを見つける役割を果たします。256の可能なパターンがあり、バーストには32バイトしかないため、1つを見つけるのは簡単です。複数のデバイスが並列に接続されている場合でも、バスの幅が最大128ビットであれば、マスクバイトを常に見つけることができます。(これにより、バーストごとに256バイトが生成されますが、マスクされた書き込みコマンドは、少なくとも1つが書き込まれない場合にのみ使用されます。)
各バイトは、特定のクロックサイクル中に1つのデータラインを介して転送される8つの連続したビットです。M0はクロックサイクル中に転送された最初のデータビットと一致し、M7は最後のビットと一致します。
この規則は、クリティカルワードファースト読み取りの実行にも干渉します。すべてのワードには、少なくとも転送された最初の8ビットのビットが含まれている必要が

プリチャージ/リフレッシュコマンド
このコマンドは、従来のSDRAMのプリチャージコマンドとリフレッシュコマンドの組み合わせに似ています。POPのXおよびBPは、xはROPはながら、ビットがプリチャージ動作を指定するxは、DELRは、xは、及びBRは、xはビットがリフレッシュ動作を指定します。それぞれを個別に有効にすることができます。有効にすると、それぞれに異なるコマンド遅延が発生する可能性があり、異なるバンクにアドレス指定する必要が
プリチャージコマンドは、一度に1つのバンクにのみ送信できます。従来のSDRAMとは異なり、「すべてのバンクをプリチャージする」コマンドはありません。
リフレッシュコマンドも従来のSDRAMとは異なります。「すべてのバンクをリフレッシュ」コマンドはなく、リフレッシュ操作は個別のアクティブ化操作とプリチャージ操作に分割されるため、タイミングはメモリコントローラーによって決定されます。リフレッシュカウンターもコントローラーによってプログラム可能です。操作は次のとおりです。
000:NOPRリフレッシュ操作を実行しない
001:REFPリフレッシュプリチャージ。選択したバンクの更新操作を終了します。
010:REFAリフレッシュがアクティブになります。REFH / M / Lレジスタによって選択された行と選択されたバンクをアクティブにしてリフレッシュします。
011:REFIの更新と増分; REFAと同様ですが、REFH / M / Lレジスタもインクリメントします。
100:LRR0ロードリフレッシュレジスタがロー。RQ7–0をリフレッシュカウンタREFLの下位8ビットにコピーします。コマンドの遅延はありません。
101:LRR1ロードリフレッシュレジスタの中間。RQ7–0をリフレッシュカウンタREFMの中央の8ビットにコピーします。コマンドの遅延はありません。
110:LRR2ロードリフレッシュレジスタがハイ。RQ7–0をリフレッシュカウンタREFHの上位8ビットにコピーします(実装されている場合)。コマンドの遅延はありません。
111 予約済み

キャリブレーション/パワーダウンコマンド
このコマンドは、XOP xフィールドで決定されるように、さまざまな機能を実行します。16の可能性がありますが、実際に使用されるのは4つだけです。3つのサブコマンドは、出力ドライバーのキャリブレーションを開始および停止します(100ミリ秒ごとに定期的に実行する必要があります)。
4番目のサブコマンドは、チップをパワーダウンモードにします。このモードでは、内部リフレッシュを実行し、高速データラインを無視します。低速シリアルバスを使用してウェイクアップする必要が

低速シリアルバス
XDR DRAMは、低速シリアルバスを使用してプローブおよび構成されます。RST、SCK、およびCMD信号は、コントローラーによってすべてのチップに並列に駆動されます。SDIラインとSDOラインはデイジーチェーン接続されており、最後のSDO出力がコントローラーに接続され、最初のSDI入力がハイ(ロジック0)に接続されています。
リセット時に、各チップはそのSDOピンをロー(1)に駆動します。リセットが解除されると、一連のSCKパルスがチップに送信されます。各チップは、SDI入力がハイ(0)であることを確認してから、1サイクル後にSDO出力をハイ(0)に駆動します。さらに、リセットを解除してからSDI入力がハイになるまでに経過したサイクル数をカウントし、そのカウントを内部チップIDレジスタにコピーします。コントローラからCMD回線を介して送信されるコマンドには、チップIDフィールドと一致する必要のあるアドレスが含まれています。

コマンドの一般的な構造
各コマンドは、8ビットアドレスを使用して、単一の8ビットレジスタを読み書きします。これにより、最大256個のレジスタが許可されますが、現在割り当てられているのは1〜31の範囲のみです。
通常、CMDラインはハイ(ロジック0)のままであり、SCKパルスは効果がありません。コマンドを送信するために、32ビットのシーケンスがCMDラインを介してクロックアウトされます。
4ビットの1100コマンド開始信号。
読み取り/書き込みビット。0の場合、これは読み取りであり、1の場合、これは書き込みです。
シングル/ブロードキャストビット。0の場合、IDが一致するデバイスのみが選択されます。1の場合、すべてのデバイスがコマンドを実行します。
6ビットのシリアルデバイスID。デバイスIDは、デバイスのリセット時に0から始まり自動的に割り当てられます。
8ビットのレジスタアドレス
「0」のシングルビット。これにより、読み取り要求を処理し、読み取りの場合にSDO出力を有効にする時間が提供されます。
8ビットのデータ。これが読み取りコマンドの場合、提供されるビットは0でなければならず、レジスタの値は選択されたチップのSDOピンで生成されます。選択されていないすべてのチップは、SDI入力をSDO出力に接続するため、コントローラーに値が表示されます。
「0」のシングルビット。これでコマンドが終了し、SDO出力を無効にする時間が与えられます。

も参照してくださいRDRAM XDR2 DRAM
デバイス帯域幅のリスト

参考文献
^ AnandTech:セルプロセッサのラムバスとIntelのデュアルコア発表 ^ Elpidaは世界最速の7.2GHzXDRDRAMを生産 ^ 2011年7月24日、 Wayback Machine(Rambus)でアーカイブされたXDR™アーキテクチャ

外部リンク
ラムバスXDR製品ページ
Rambus FlexIO CPU Inte、
rfaceはXDRインターフェイスを提供します
Qimonda XDR(TM)DRAM製品