クロック速度を上げる代わりにDDRを使用する理由


16

クロックスピードを2倍にし、立ち上がりエッジまたは立ち下がりエッジのいずれかで読み取り/書き込みを行う代わりに、クロックの立ち上がりエッジと立ち下がりエッジごとにDDRラムと読み取り/書き込みを使用するのはなぜですか?

それぞれに賛否両論はありますか?


5
信号の整合性が高い周波数で保持されないため、クロック周波数を上げることができない場合があります。
ニックアレキセフ

回答:


33

SDRでは、ビットごとに2つのクロックエッジがありますが、データラインには最大で1つのエッジしかありません。

高周波通信では、アナログ帯域幅により、特定のワイヤでエッジをどれだけ近づけることができるかが制限されます。クロック信号がその制限に達すると、データワイヤの帯域幅の半分が無駄になります。

そのため、すべてのワイヤが同じビットレートで帯域幅制限に達するように、DDRが発明されました。


3
+1。完璧な答え。DDRは、エッジスルーレート(別名「帯域幅」)を増加させることなく、データレートを2倍にすることができます。
Ale..chenski

DDRはデータラインをクロックラインと同じ速度にするのが理にかなっています...しかし、DDR2、DDR3、DDR4はどうですか?
user253751

3
@immibis:まだ2番目、3番目、4番目の世代(異なる帯域幅、電圧、プロトコル)のddrです。おそらくここでは適用できないQDRを考えているでしょう。
PlasmaHH

私は、各世代でのクロックサイクルあたりの転送倍増について何かを読んだことを思い出したと確信していました。さらに調査すると、おそらく内部メモリクロックサイクルあたり2倍の転送を意味するように見えますが、I / OクロックはDDRの半分のデータレートで動作します。
user253751

19

本当の問題は帯域幅です。データラインが生成できる最高の周波数(スルーレートはカウントしない)は、データレートの半分で発生する101010データパターンを送信するときです。シングルデータレート(SDR)伝送では、クロックは各データビットに対して1つの完全なサイクルを生成するため、最悪の場合にデータラインに表示される周波数の2倍の周波数で動作します。ダブルデータレートは、データビットごとに1つのエッジでクロックを半分のデータレートで実行するため、最悪の場合のデータパターンはクロックと同じ周波数を生成します。

一般に、インターフェイスの速度は、チップパッケージ、ピン、ボード、コネクタなどで利用可能な帯域幅によって制限されます。クロックがデータの2倍の帯域幅を必要とする場合、クロック信号の高周波が全体の帯域幅を制限しますリンクの。DDRでは、必要な帯域幅がクロックとデータで同じであるため、リンクが利用可能な帯域幅をより効率的に利用できます。

DDRを使用することの欠点は、設計がより困難になることです。受信側でデータビットをキャプチャするために使用されるフリップフロップは、1つのクロックエッジ(立ち下がりエッジまたは立ち上がりエッジ)で動作します。データは、確実にラッチインするために、エッジの前のセットアップ時間とエッジの後のホールド時間の間、入力で安定している必要があります。SDRでは、タイミング要件を満たすためにクロックをどこかで単純に反転できます。ただし、DDRでは90度の位相シフトが必要です。これは生成が難しく、PLLまたは遅延ラインが必要です。

要約すると、

SDR

  • プロ:実装が簡単
  • 欠点:クロック信号はデータ信号の2倍の帯域幅を必要とするため、帯域幅の使用効率が悪い

DDR

  • 利点:すべての信号が同じ帯域幅を必要とするため、帯域幅を効率的に使用できます
  • 短所:実装が複雑

1
場合によっては、2相クロックを直接使用するデバイスが表示されることがあります。クロック生成側での位相シフトを使用した効果的なDDR。
TLW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.