第9回: DRAM

DRAMのセル

前回のSRAMは、1ビット記憶にインバータを2つ使っていました。 一方、メモリは、大容量化の要求、という宿命をもっています。 そのため、もっと簡単な回路でメモリを実現できないか、として 考えられたのが、DRAMと呼ばれる回路です。 これは、回路構成の単純化を最優先にすることで、 大容量化を目指す一方、メモリ素子としての動作・制御は、 多少複雑になってもやむをえない、という方針に基づいています。 一般に、ほおっておくと、記憶している内容が消えてしまうため、 読み書きしない場合でも、定期的に値を書き直す必要が あることから、Dynamic RAM (DRAM)と呼ばれています。


DRAMは、1個のコンデンサによって1ビットの記憶を行い、 コンデンサに蓄えられる電荷の有無によって、 1/0を記憶します。 そしてコンデンサの電荷の有無を、スイッチとして働く nMOSトランジスタによってコンデンサをデータ線DLに 接続して、電圧変化として値を読み取ります。 DRAMでは、次の図のように、SRAMよりも小さい回路で1ビットの記憶が 実現されてきています。
(「VLSI工学-基礎・設計編-」(岩田、コロナ社)p.78より)
ただし微細化・大容量化に伴い、一般に1ビット分のコンデンサの 容量が小さくなるため、後ほどみるように、記憶動作が困難に なります。 そこで、次の図のように、1ビット分のコンデンサの容量を増やす工夫が、 多く取り入れられています。
(「VLSI工学-基礎・設計編-」(岩田、コロナ社)p.79より)
主なものは、コンデンサを構成する電極を、下方向の溝に掘ったり(トレンチ セル)、上方向に積み上げる(スタックセル)ことで電極面積を稼ぐ方法や、 コンデンサの電極間の誘電体に、誘電率が高い材料を用いる方法、が 取り入れられています。

DRAMの読み出し動作

1ビット分の記憶に使うメモリセルのコンデンサの容量をC、 データ線DLに「寄生」している容量をCDとします。 そして、Cに電荷があって電圧がVCである状態を"1"、 電荷がなく電圧が0である状態を"0"としましょう。 また、読み出しに先立って、データ線DLを電圧VDPに 充電(プリチャージ)しておくことにします。 このとき、"1"を記憶しているメモリセルに対して、値を読み出すために nMOSをONにしたあとのデータ線DLの電圧vo(1)は次のように求められます。

vo(1) = (C VC + CD VDP) / (C + CD) = VDP + C (VC - VDP) / (C + CD)

メモリセルが記憶している値が"0"の場合は、この式でVC=0 とすればいいので、このときのデータ線DLの電圧vo(0)は次のように求められます。

vo(0) = (CD VDP) / (C + CD) = VDP - C VDP / (C + CD)

この両者の差が、"1"と"0"を読み出すときの差になるわけですが、 これらの式からわかるように、両者の差は、Cが小さいほど、 またCDLが大きいほど、小さくなります。 一般に、メモリの大容量化に伴い、1ビット分のセル面積は 小さくなりますので、Cは小さくなる傾向にあり、 また大容量化に伴って、1本のデータ線DLにつながるメモリセルの数は 増える傾ため、CDLも増加する傾向にあります。 すなわち、この両者の差が、大容量化に伴って、 どんどん小さくなっていくことになります。 そのため、DRAMの読み出し速度は、一般に大容量化に伴って 困難となります。

実際の読み出し動作の手順をみてみましょう。
(「VLSI工学-基礎・設計編-」(岩田、コロナ社)p.78より)
まずプリチャージ信号PREを0にして、データ線DLと、もう1本のデータ線/DLを 同電位VDPにプリチャージします。 その後、読み出しを行うセルがある行のワード線WLを1にして、 データ線DLの電位を変化させますが、 読み出す値が"1"のときはvo(1)>VDP、 読み出す値が"0"のときはvo(0)<VDPとなります。 (VC>VDPのため) また/DLは電荷の放電は起こらないので、その電位はVDPのまま 変わりません。

この両者の微小な差を、センスアンプと呼ばれる回路で 増幅します。 これは、2個のインバータを向かい合わせたSRAMのメモリセルのような 回路で、読み出し動作のときにSP=VDL、SN=0とすると、 DL, /DLで電位が少しでも高いほうが、電圧がVDLとなり、 低いほうは0に、差が増幅されます。

リフレッシュ

DRAMでは、コンデンサの電荷の有無によって1/0の記憶が 行われています。 この電荷は、理想的には、ほおっておいても消えなさそうですが、 実際にはnMOSトランジスタの漏れ電流などの要因によって、 ほおっておくと放電されて消えてしまいます。 これではメモリとしては困るので、DRAMでは、 読み書きを行わないときでも、定期的にすべてのメモリセルに対して 値を読み出して、そのまま書き込む、という動作(リフレッシュ:refresh) が必要になります。 一般には、8〜64ms程度の周期で、自動的に行うような 制御回路を併用します。 またDRAMでは、値を読み出す際に、メモリセルのコンデンサに 蓄えられている電荷が変わってしまう、すなわち 読み出しによって記憶されている情報が変化する、 いわゆる破壊読出し動作になるため、 毎回の読み出しの後には、再度、その値を書き込む、という 動作も必要になります。

DRAMの大容量化の歴史

DRAMは、以前は集積回路の微細化の代名詞でした。 すなわち、DRAMの製造技術・微細加工が、その時代での 最先端の加工技術でした。 そのため、いわゆるムーアの法則に従い、 3年で容量が4倍になる、という歴史を長い間たどってきました。 ただ、近年は微細加工技術の伸びの鈍化と、 DRAMの大容量化自体に対する機能飢餓の低迷により、 大容量化の歴史は終わりつつあり、 高速化に技術の重点は移りつつあるようです。
配布資料(第9回・第10回) (PDF形式)
戻る