列アドレスストローブレイテンシは、CASレイテンシまたはCLとも呼ばれ、READコマンドとデータが使用可能になるまでのクロックサイクルの遅延です。[1] [2]非同期DRAMでは、間隔はナノ秒(絶対時間)で指定されます。[3]同期DRAM では、間隔はクロックサイクルで指定されます。 レイテンシは絶対時間ではなくクロックティックの数に依存するため、クロックレートが異なる場合、 SDRAMモジュールがCASイベントに応答する実際の時間は、同じモジュールを使用する間でも異なる場合があります。
RAM操作の背景
ダイナミック RAM は長方形の配列になっています。各行は水平ワード ラインによって選択されます。特定の行に沿って論理ハイ信号を送信すると、その行にあるMOSFET が有効になり、各ストレージ コンデンサが対応する垂直ビット ラインに接続されます。各ビット ラインは、ストレージ コンデンサによって生成された小さな電圧変化を増幅するセンス アンプに接続されています。この増幅された信号は DRAM チップから出力されるとともに、ビット ラインを逆方向に駆動して行を更新します。
ワードラインがアクティブでない場合、アレイはアイドル状態となり、ビットラインはプリチャージされた[4]状態、つまり高と低の中間の電圧に保持されます。この不確定な信号は、行がアクティブになると、ストレージコンデンサによって高または低の方向に偏向されます。
メモリにアクセスするには、まず行を選択し、センス アンプにロードする必要があります。その後、この行がアクティブになり、列にアクセスして読み取りまたは書き込みを行うことができます。
CAS レイテンシとは、列アドレスと列アドレス ストローブ信号がメモリ モジュールに提示されてから、対応するデータがメモリ モジュールによって使用可能になるまでの遅延です。目的の行はすでにアクティブになっている必要があります。アクティブでない場合は、追加の時間が必要です。
たとえば、一般的な 1 GiB SDRAMメモリ モジュールには、それぞれ 128 MiBのストレージ スペースを提供する8 つの独立した 1ギガビットDRAM チップが含まれます。各チップは内部で 2 27 =128 Mibitsの 8 つのバンクに分割され、それぞれが独立した DRAM アレイを構成します。各バンクには、それぞれ2 13 =8192 ビットの 2 14 =16384 行が含まれます。1 バイトのメモリ (各チップから、DIMM 全体で合計 64 ビット) にアクセスするには、3 ビットのバンク番号、14 ビットの行アドレス、および 13 ビットの列アドレスを指定します。[引用が必要]
メモリアクセス速度への影響
非同期DRAMでは、メモリはクロックではなく設定されたタイミングに基づいてメモリバス上のメモリコントローラによってアクセスされ、システムバスとは分離されていました。[3]ただし、 同期DRAMにはクロックレートに依存するCASレイテンシがあります。したがって、SDRAMメモリモジュールのCASレイテンシは絶対時間ではなくクロックティックで指定されます。[要出典]
メモリ モジュールには複数の内部バンクがあり、あるバンクからのデータを別のバンクのアクセス レイテンシ中に出力できるため、パイプライン処理によって CAS レイテンシに関係なく出力ピンを 100% ビジー状態に維持できます。達成可能な最大帯域幅はクロック速度によってのみ決まります。残念ながら、この最大帯域幅は、読み取るデータのアドレスが事前に十分わかっている場合にのみ達成できます。アクセスするデータのアドレスが予測できない場合は、パイプラインが停止し、帯域幅が失われる可能性があります。完全に未知のメモリ アクセス (ランダム アクセスとも呼ばれます) の場合、関連するレイテンシは、開いている行を閉じるのにかかる時間と、目的の行を開く時間、そしてそこからデータを読み取るための CAS レイテンシの合計です。ただし、空間的局所性のため、同じ行の複数のワードにアクセスすることがよくあります。この場合、経過時間は CAS レイテンシのみによって決まります。
最近のDRAMモジュールの CAS レイテンシは時間ではなくクロック ティックで指定されるため、異なるクロック速度でレイテンシを比較する場合、公平な比較を行うにはレイテンシを絶対時間に変換する必要があります。クロックが速い場合は、数値的に CAS レイテンシが高くても時間が短くなる可能性があります。同様に、クロックが低速のメモリ モジュールでは、CAS レイテンシ サイクル数を減らして、同じ CAS レイテンシ時間を維持できます。[引用が必要]
ダブル データ レート(DDR) RAM は、クロック サイクルごとに 2 回の転送を実行し、通常はこの転送速度で表されます。CAS レイテンシはクロック サイクルで指定され、転送 (クロックの立ち上がりエッジと立ち下がりエッジの両方で発生) では指定されないため、CAS レイテンシ時間の計算にはクロック レート (転送速度の半分) が使用されていることを確認することが重要です。[引用が必要]
もう 1 つの複雑な要因は、バースト転送の使用です。最新のマイクロプロセッサのキャッシュ ラインサイズは 64 バイトで、64 ビット幅 (8 バイト) のメモリから 8 回の転送でいっぱいになります。CAS レイテンシでは、メモリの最初のワードを転送する時間しか正確に測定できません。8 ワードすべてを転送する時間は、データ転送速度にも依存します。幸い、プロセッサは通常、8 ワードすべてを待つ必要はありません。バーストは通常、クリティカル ワードを先に送信し、最初のクリティカル ワードはマイクロプロセッサによってすぐに使用できます。
以下の表では、データ レートは 1 秒あたりの百万転送 (メガ転送とも呼ばれます) (MT/s) で示され、クロック レートは 1 秒あたりの百万サイクル (MHz) で示されます。
メモリタイミングの例
注記
- ^ 転送時間 = 1 / データレート。
- ^ ダブル データ レート (DDR) の場合、コマンド レート = データ レート / 2、シングル データ レート (SDR) の場合、コマンド レート = データ レート。
- ^ サイクルタイム = 1 / コマンドレート = 2 × 転送時間。
- ^ abc N番目のワード = [(2 × CASレイテンシ) + (N − 1)] × 転送時間。
参照
参考文献
- ^ Stokes, Jon「Hannibal」(1998–2004)。「Ars Technica RAM ガイド パート II: 非同期および同期 DRAM」。Ars Technica。2012 年 11 月 1 日時点のオリジナルよりアーカイブ。
- ^ Jacob, Bruce L. (2002 年 12 月 10 日)、同期 DRAM アーキテクチャ、組織、および代替テクノロジ(PDF)、メリーランド大学
- ^ ab メモリ技術の進化:システムメモリ技術の概要、HP、2008 年 7 月
- ^ Keeth, Brent; Baker, R. Jacob; Johnson, Brian; Lin, Feng (2007 年 12 月 4 日)。DRAM 回路設計: 基礎と高速トピック。John Wiley & Sons。ISBN 978-0470184752。
外部リンク
- Google スプレッドシート: ユーザーが入力したメモリ タイミングの比較とメモリ タイミングの例 (CAS レイテンシのみ)
- Google スプレッドシート: DDR4 RAM の実際のタイミングの完全な比較グリッド
- PCSTATS: メモリ帯域幅とレイテンシタイミング
- メモリアクセスの仕組み
- トムのハードウェア ガイド: タイトなタイミングと高クロック周波数
- RAMタイミングの理解
- AnandTech: SDRAM メモリについて知りたいことすべて、でも聞くのが怖かったこと
