ここ数回にわたり「SRAMについて知っておくべきこと」を紹介している。今回は、SRAMの書き込み動作について説明していこう。
国際会議「IEDM」のショートコースで英国ARM ResearchのエンジニアRob Aitken氏が、「System Requirements for Memories(システムがメモリに要望する事柄)」と題して講演した内容を紹介するシリーズの第15回である。
前回は、SRAMの消費電力と設計課題を解説した。今回は、SRAMの書き込み動作を説明しよう。
SRAMセルは、トランジスタ回路として見るとフリップフロップそのものである。出力として2本のビット線(「BL」と「BLB」)が存在し、入力として1本のワード線(WL)が存在する。ワード線とビット線を接続するトランジスタが2個、論理値の「高」と「低」を維持するフリップフロップ用トランジスタが4個ある。フリップフロップ用のトランジスタ回路は、2個のCMOSインバーターの出力をお互いの入力に帰還(フィードバック)する構成となっている。合計6個のトランジスタで1個のSRAMセルが完成する。
このトランジスタ回路でデータの書き換え動作を説明しよう。左右のCMOSインバーターの左側に「1」(論理値「高」)、右側に「0」(論理値「低」))を格納している状態を仮定する。始めはビット線の選択である。選択された2本のビット線(ビット線対)の電位を両方とも「1」に持ち上げる(プリチャージ、図1の左上)。ワード線は「0」(低電位、非選択)に保持しておく。
続いて書き込むデータの状態に合わせてビット線の電位を変更する。ここでは「BL」を「0」に、「BLB」を「1」にする(データアサーション、図1の右上)。具体的にはこれから、フリップフロップの値を反転させる。
それからワード線を選択する。選択されたワード線の値が「1」となる(ライトアサーション、図1の右下)。すると左側のCMOSインバーターはビット線(BL、値「0」)に電流が流れて電位が下がり、右側のCMOSインバーターはビット線(BLB、値「1」)から電流が流れて電位が上がる。そして左右の論理値が反転する(セルフリップ、図1の左下)。左側が「0」、右側が「1」となっている。
Copyright © ITmedia, Inc. All Rights Reserved.