弊社をフォローする:
Follow us on LinkedIn Follow us on Twitter Like us on Facebook Subscribe to our channel on YouTube Follow us on Tumblr
共有する:
| More

可変バースト長

背景

多種多様のコンピュータシステムで DRAM が使用されています。異なった種類のコンピュータシステムが同一の DRAM を使用する場合の利点は、償却済み設計費用や製造費用によって、規模の経済から恩恵を受けられることです。異なるコンピュータの使用分野でも、同じような DRAM 性能のニーズが存在するのも事実ですが、やはり使用分野によって、それぞれ独自の要件も存在します。このような要件の1つに、メモリの読み込み/書き込み処理時のデータ転送量となるバースト長があります。一部のコンピュータ使用分野では、短いバースト長が必要なメモリシステムアーキテクチャを用いるものがある一方、比較的長いバースト長を用いるものもあります。さまざまなユーザーが満足できることを目的にした革新的技術により、DRAM においてバースト長を変えられるようになりました。可変バースト長では、システムの要件に応じて使用するバースト長をコンピュータシステムで選択できます。ラムバス社は1990年代初期に可変バースト長を用いた最初の DRAM を発表しました。これによって、システム製造業者は各社のシステムニーズに合わせて、1回の要求で転送されるデータ量を自由に設定できるようになりました。可変バースト長が採用されたことで、1つの DRAM が複数のシステムアーキテクチャに対応するように設計および製造することが可能になり、コストの削減、そしてシステムの柔軟性の大幅な向上を実現します。

フラッシュメモリも、多くのコンピュータシステムで使用される一般的なメモリ技術です。可変バースト長は、数種のフラッシュメモリデバイスでも採用されています。DRAM メモリデバイスとフラッシュメモリデバイスにおいて、可変バースト長は同じように動作し、システムにも同様の利益をもたらします。

可変バースト長とは何でしょうか。

DRAM がメモリ読み込み要求を受け取ったとき、メモリバスのワイヤを介してデータを返します。要求に対して返される転送データブロックの大きさは、DRAM のバースト長によって決まります。図 1 では、バースト長が 4 の場合とバースト長が 8 の場合が示されています。図に示されるように、バースト長 8(図 1 の下部)を用いたDRAMでは、バースト長 4 を用いた DRAM と比較して、読み込み要求に対して返されるデータ量が 2倍となります。

図 1:バースト長 4 と 8 の場合のそれぞれの読み取り処理

図 1 で示されるように、データ転送量が異なるメモリシステムで同一の DRAM を使用する際に、可変バースト長は役立ちます。バースト長 4 を用いた DRAM では、連続して 2回の読み込み処理を実行することで、ワイヤごとに 8 ビットのデータが転送されますが、2 つの要求に対応するために、アドレスおよび制御信号のバンド幅が 2 倍必要となります。アドレスや制御信号のバンド幅が制限されているシステムでは、最大のデータスループットを実現するために十分なアドレス/制御信号のバンド幅を確保することが、不可能な場合もあります(二重バス速度テクノロジの情報を参照)。可変バースト長では、データ転送に必要なアドレスおよび制御信号のバンド幅を縮減することによってこの問題を解決しています。

図 2 および 3 では、同一の DRAM デバイスを使用した 2つの異なるメモリシステムにおいて、可変バースト長をどのように使用できるかを示しています。図 2 のコンピュータシステムには CPU、メモリコントローラおよびメモリが含まれており、これらがメモリモジュール上に配置されています。このシステムは、小さなフォームファクタまたは低価格 PC に該当します。このシステムでは、メモリバスのデータ部は 64 ビット幅になっており、CPUは 64 バイト単位でデータにアクセスします。これは、CPU の内部キャッシュ内のキャッシュラインの大きさに相当します。システムの効率を最適化するために、メモリコントローラはバースト長が 8 になるように DRAM を設定します。この設定により、メモリコントローラからの 1回の要求で 64 バイト(8x64 ビット= 64 バイト)のデータブロックがメモリから転送されます。

図 2:DRAM バースト長 8 を用いた小型/低価格 PC

図 3 では、高性能 PC、ブレード、またはサーバーに見られるアーキテクチャを表しています。このメモリシステムでは、メモリバスのデータ部は 128 ビット幅になっています。このシステムでは、図 2 のメモリシステムの 2倍のデータ線が使用されていますが、どちらのアーキテクチャも同じデータブロックサイズ要件を持つ同一 CPU を使用できるため、CPU メーカーは 1つの CPU デザインを複数の市場に対して投入することができます。このシステムでバースト長が 8 に設定された場合、メモリコントローラからの 1回の要求に対してメモリモジュールは 128バイト 単位でデータを転送します。これは、CPU の要件を超えており、メモリのバンド幅を浪費することになります。しかし、メモリデバイスのバースト長を 4(4x128 ビット=64 バイト)に設定できる柔軟性を持たせることによって、各メモリデバイスのデータ出力はバースト長が 8 のときの半分で済みます。これにより、必要なデータを 1回の要求で得られるとともに不必要な余剰データを生成することもなくなり、メモリコントローラはメモリシステムの効率を最大に向上することができます。

図 3:DRAM バースト長 4 を用いた高性能 PC/ブレード/サーバ

可変バースト長によって同一 DRAM デバイスを複数のシステムアーキテクチャで使用でき、必要な DRAM デバイスおよびモジュールアーキテクチャの数を削減できます。同一 DRAM デバイスを多くのシステムで使用できることにより、製造コストや在庫コストを削減でき、システム製造業者に限らず、消費者にもメリットをもたらします。可変バースト長の柔軟性によって、システムのニーズに合わせて最適なバースト長の選択が可能になり、制御信号の使用バンド幅の削減、そしてメモリバスの効率的な使用を実現します。

メリット

以下は、可変バースト長のメリットを享受する人々の例です。

  • CPU 設計者:可変バースト長によって、単一の DRAM またはフラッシュメモリのデザインを複数のメモリシステムアーキテクチャに適用できます。これにより、CPU デザインを複数の市場に投入でき、規模の経済に基づいて開発コスト、製造コスト、そして在庫コストの削減を実現します。
  • システムインテグレータ:複数の市場に製品を投入しているシステムインテグレータは、複数の製品ラインに対して 1つの DRAM またはフラッシュメモリを採用して在庫するだけで済みます。これにより、在庫管理費用を削減できます。
  • メモリメーカー:可変バースト長を使用することで、メモリメーカーは 1つの DRAM またはフラッシュメモリのデザインを複数の市場に投入でき、CPU 設計者と同様なコストメリット(開発、製造、および在庫コストの削減)を享受できます。