RAMでのトライステートvsマルチプレクサの使用


8

RAMからの出力を選択するために、マルチプレクサよりもトライステートが推奨されるのはなぜですか?私が聞いた説明では、RAMはマルチプレクサを使用するには大きすぎるとのことですが、詳細が必要です。

私たちが思いついた理論は、マルチプレクサを使用すると、バスへの信号の伝播時間を劇的に増加させる出力を選択するためにORゲートのツリーが必要になるのに対し、トライステートでは、RAMのサイズに関係なく、伝播遅延は一定です。

あれは正しいですか?

ありがとう

回答:


6

「ファンアウト」または「ファンイン」の問題です。だからあなたの理論は多かれ少なかれ正確です。ただし、バスに接続できるトライステート出力を使用することの追加の利点があります!CMOSマルチプレクサーを使用する場合、出力がオンになっているワイヤを共有できません。トライステートデバイスを使用する場合、バスを他のバス接続されたデバイスと(たとえば、アービターの制御下で)共有できます... RAMの「メモリバス」を考えてください。


この問題を詳細に説明している参照を教えてもらえますか?ありがとう!
2010


2
マルチプレクサーがRAMで使用されない理由の参照のためにもっと意味しました。大規模なファンイン/ファンアウトの現在の問題について言及している場合、cmuのリファレンスは確かにそれを示唆していますが、これを明示的に言及しているリファレンスがあればすばらしいでしょう。
2010

3

各メモリセルでトライステートドライバを使用して読み取られる長方形のメモリアレイを構築する場合、1つのデコーダ回路で行内のすべてのセルを制御できます。アレイを制御するためにアレイの周囲に回路が必要になりますが、制御回路の量はsqrt(N)* lg(N)に比例します。対照的に、すべてのメモリセルをマルチプレクサに供給しようとすると、結局、より多くの回路が必要になります。

マルチプレクサベースのアプローチには、いくつかの利点があります。双方向マルチプレクサを使用して1メガワードのメモリを構築した場合、各ビットは20のマルチプレクサを通過する必要がありますが、各マルチプレクサにラッチが含まれている場合は、非常に高帯域幅のパイプラインメモリシステムを実現できます。特定の読み取り操作を実行するには20サイクルかかりますが、100サイクルで100の異なる読み取りを開始できます。信号は各サイクルでそれほど遠くに移動する必要がなく、大きなバスを駆動しないため、サイクルレートは非常に高くなる可能性があります。

マルチプレクサまたはバスのどちらを使用するかという問題は、情報を長距離にわたって送信するときにデータリピータを使用するかどうかという問題にいくぶん似ています。一方では、データリピーターは遅延を追加します。一方、銅線の一端での信号遷移が他端で遷移を引き起こすのに必要な時間は、長さの2乗に漸近的に比例します(長さを追加すると抵抗と容量の両方が追加されるため)。長い配線の真ん中にリピーターを追加すると、長い配線が長い遅延の4分の1から半分の間にある2つの短い配線に置き換えられるため、速度が向上する可能性があります。

行と列のドライバ回路の「力」を改善せずにメモリアレイの幅と長さを2倍にすると、行と列の切り替えに必要な時間の2倍以上になります。対照的に、4つの小さなメモリアレイを使用して出力を多重化する場合、定数はアクセス時間に追加されるだけです。より高速なメモリは、マルチプレクサによって接続されたより小さなアレイに細分されます。安価なメモリはより少ないマルチプレクサを使用しますが、それほど高速ではありません。


0

バスにトライスタットすることで、システムのスケーリングが向上します。古いデバイスと新しいデバイスの両方を再構成して、新しいより大きなマルチプレクサを介して連携する必要なく、トライスタタブルデバイスを追加できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.