• ベストアンサー

SRAMのデータの書き出し読み出しの仕組み

SRAMのメモリーセルへのデータの書き出し、読み出しの仕組みが分かりません。色んなサイトを参考にしたのですが、どれも理解には至りませんでした。添付してある図のA,Bに1,0が書き込み読み込みがされるみたいなのですが、どの様な仕組みなのか分かりません。初心者でも分かる様に、書き込みと読み込みそれぞれの流れを教えて下さい!!

質問者が選んだベストアンサー

  • ベストアンサー
  • shintaro-2
  • ベストアンサー率36% (2266/6245)
回答No.2

>初心者でも分かる様に 仕組みは非常に単純ですが、 理解できるかはどのレベルの初心者か次第です。 M2,M3で1つのインバータ M4,M5で1つのインバータを構成するのは理解できますか? 理解できない場合は、まず論理回路のインバータというものを調べてください。 次に、インバータの入出力が互いに接続されていますので、 何も変化が無ければデータが保持されます。 これがラッチ回路(メモリセルの本体)です。 M1とM6はトランスミッションゲートと呼ばれるもので メモリセルにデータ線のデータを書き込んだり、 メモリセルからデータをデータ線に読み出すためのものです。 今、点AがH(3V)、点BがL(0V)としましょう。 データを読み出すためには、 まずビット線1、2を1.5VぐらいのHとLとの中間ぐらいの同じ電圧にしておきます。 これは読み出しを高速にするための技術で、ビット線のイコライズとプリチャージと呼ばれます。 その後ワード線の電位を変化させて、FET M1M6をオンにします。 ラッチ回路の能力が有る程度あれば(それが大前提)、 そのビット線の電圧は接続された点A,点Bの電圧に一致するよう変化します。 結果として、ビット線1、2の電圧はメモリセルの内容に応じた値となり、それをビット線に接続されたセンスアンプで検出し、メモリICの外に出力します。 次に書き込みですが 先ほどと同じメモリセルの内容は先ほどと同じであるとして まずビット線1,2の電圧を書き込みたい電圧にします。 ビット線1をL、ビット線2をHとしましょう。 この状態でM1,M6とをオンにすると ビット線と、点A,Bとの電位が一致しないのですが、 この時、ビット線に電流を供給する回路の能力が メモリセルのインバータを構成するFETの能力よりも高ければ(それが大前提)、 点Aの電位はHからLに、 点Bの電位はLからHに 強制的に反転させられます。 これが書き込みの原理です。 もしインバータを構成するFETの能力が高すぎると、メモリセルのデータがビット線のデータと一致するように変化しなくなります。 昭和50年代のSRAM関連の特許を探せばいくらでも解説されていますが、 一般人には探すのは難しいでしょう。

benkyoganbaru
質問者

お礼

詳しい説明ありがとうございます。全てを理解は出来ませんでしたが、理解が進んだと思います。

その他の回答 (1)

回答No.1

この図が何を表しているかまず、わかりますか? 基本から行くと、 フリップフロップ https://ja.wikipedia.org/wiki/%E3%83%95%E3%83%AA%E3%83%83%E3%83%97%E3%83%95%E3%83%AD%E3%83%83%E3%83%97 そこから、RS-Flip-flopになって、 図解すると、 http://blog-imgs-32.fc2.com/l/i/m/limonex/Flipflop_RS_type.png (勝手に直接リンクすいません) AND回路の片方を反転(NOT)して、戻す。 そうすると、1だという情報と0だという情報を覚えるよ~って 理屈ではあります。 #ちなみ、この図、とてもわかりにくいですね。 なぜ知りたいのか、不明ですが、 もう少しわかりやすい図で書いてあるサイトを見つけるほうが 理解が早いかもしれません。。 フリップフロップか RS-フリップフロップ などで、検索すると、答えが近くなると思われますが、 どんなもんでしょうか?

benkyoganbaru
質問者

お礼

回答ありがとうございます。この図分かりにくいんですね。それすら分かりませんでした。

関連するQ&A