Random Access Memory(ランダムアクセスメモリ)とは、記憶装置の一種である。通称RAM(ラム)。現在用いられている物はほぼ全てが揮発性の半導体メモリである。
またPCのメインメモリを指してRAMと呼ぶこともある。
概要
入力したアドレス信号によって指定した任意の場所を読み書き(ランダムアクセス)できるメモリである。すなわち読み書きする場所が飛び飛びであっても性能は落ちない。
フラッシュメモリも見かけ上はランダムアクセス可能であるが、RAMと違って書き込み・消去をブロックごとにまとめて行わなければならない特性があり、書き換え可能なROM(EEPROM)の一種に分類される。
これとは逆にデータを読み書きを順番にしか出来ず、場所が飛び飛びであると巻戻し早送りが必要になり極端に性能の落ちるカセットテープのような記憶媒体を指す単語としてSAM(Sequential Access Memory)があるが、使用されることは今となってはほとんどない。
用途別
- メインメモリ
- CPUが直接データを読み書きできるメモリのこと。単に「メモリ」と呼べばたいていはこれを指す。高速性(高帯域・低遅延)と大容量が求められる。メインメモリの容量が足りなければOSが使用頻度が低いと判断したデータをSSDなどの二次記憶装置(ストレージ)に退避させる(スワップアウト)。これが頻繁に発生するとてきめんに性能に響く。
- VRAM(グラフィックスメモリ)
- ビデオチップ(GPU)がアクセスできるメモリのこと。基本的にメインメモリ以上の高帯域が必要。GPUはCPUに内蔵されているものもあるが、その場合はメインメモリの一部をVRAMとして使う(その分メインメモリの容量と帯域が圧迫される)
- キャッシュメモリ
- メモリのアクセス速度は、CPU(などのマイクロプロセッサ)のデータ処理速度より遅いため、メモリの読み書きが処理の足を引っ張ることになる(ノイマンズ・ボトルネック)。これを最小限にとどめるため、マイクロプロセッサは頻繁に利用するデータを一時的に保存しておく「キャッシュメモリ」という小さいが超高速なメモリを内蔵している。
- ハードディスクドライブなどの二次記憶装置はメインメモリより大幅に読み書きが遅いので、こちらにもキャッシュメモリが設けられていることがある(ディスクキャッシュ)。
主な種類
半導体でないもの
- セレクトロン管
- RCA社が開発した、静電気を用いて記憶するコンピュータ黎明期の記憶装置。
- 磁気コアメモリ
- ドーナツ型の小さなフェライトコアを磁化することで記憶するコンピュータ初期~中期にかけて使用された記憶装置。磁気で記憶するため理論上は不揮発性メモリであるが、実際には電源投入時のノイズでデータが破壊されることが多く揮発性メモリと同じように扱われていた。
半導体であるもの
- DRAM(Dynamic RAM、ダイナミックラム)
- コンデンサを用いて記憶するRAM。自然放電でデータが消えてしまわないように定期的にデータを書き直す(リフレッシュ)必要がある。そのためSRAMに比べて消費電力が多く動作も遅い。しかし1bitを記憶するのに使う素子数が少なく記憶密度(実装面積あたりの記憶容量)では圧倒的に有利であり、メインメモリやVRAMなど大容量が要求されるRAMのほとんどがDRAMである。
- 読み出しの際に元の情報を消してしまう破壊読み出しであるが、コントローラーが書き戻すため、ユーザーは特に意識する必要がない。
- かつてはCPUなどロジック回路との混載が難しく、別チップで実装する必要があったが、ロジックとDRAMを同一のチップに実装する技術が開発され(eDRAM)、大容量を生かして高性能なマイクロプロセッサのキャッシュメモリに使われることも増えてきた。
- SDRAM
- 外部からのクロック入力に同期してデータ転送するDRAM。現在のDRAMはほとんどがこのタイプである。詳しくは当該項目参照。
- DDR SDRAM
- クロックの立ち上がり立ち下り両方に同期してデータ転送することで転送速度を理論上2倍にしたSDRAM。詳しくは当該項目参照。
- RDRAM
- 米Rumbus社が独自に開発したSDRAMの一種。詳しくは当該項目参照。
- 擬似SRAM
- DRAMとその周辺回路を同じチップ上に実装することによって、SRAMが持つ回路設計の簡便さとDRAMが持つ安価大容量を両立しようとしたRAM。そのトレードオフとしてDRAMより更に少し低速で、また内部はDRAMであるため消費電力が大きい。過去にはゲーム機などに使われたが、性能を要求される用途はeDRAMに置き換えられ、近年は主にかつてSRAMが使われたような組み込み用途に用いられている。
- SRAM(Static RAM、スタティックラム)
- フリップフロップ等の順序回路を用いて記憶するRAM。DRAMのようなリフレッシュが要らないため回路を簡単にできまた省電力かつ高速に動作するが、1bitを記憶するのに使うトランジスタがDRAMの6倍にもなるため、記憶密度(面積あたりの記憶容量)では圧倒的に不利である。
- 現在では主に高速動作を生かしてマイクロプロセッサ混載のキャッシュメモリに用いられている。ロジック回路との混載が容易な点もキャッシュメモリ向きである。
- 上で「省電力」と書いたが、超高速のキャッシュメモリ用途ではSRAMの消費電力も馬鹿にならないため、場合によってはeDRAMの方が有利になることもある。
- FeRAM(強誘電体メモリ)
- 強誘電体のヒステリシスを使って記憶するRAM。記憶に磁気を用いるため不揮発性。詳しくはWikipedia参照。
以下、比較的新しい技術のRAMである。MRAM、ReRAM、PRAMの動作原理についてはこのページにもう少し詳しい解説が載っているので参照されたい。
- MRAM(磁気抵抗メモリ)
- GMR効果(巨大磁気抵抗効果)もしくはTMR効果(トンネル磁気抵抗効果)を用いる不揮発性のRAM。絶縁層を2枚の磁性の強い膜で挟んだ構造。2枚の磁性膜が同じ方向に磁化されているとき低抵抗、逆方向であるとき高抵抗であることを利用して記憶する。詳しくはWikipedia参照。
- ReRAM(抵抗変化型メモリ)
- 金属酸化物を電極で挟んだ構造。電圧を加えると抵抗値が変化し、電圧を0に戻しても高抵抗状態と低抵抗状態の2つの安定状態のどちらかを維持することを利用して記憶する。実は何故抵抗値が変化するのかがまだわかっていないらしい。詳しくはWikipedia参照。
- PRAM(相変化メモリ)
- 金属への熱の加え方によって起こる結晶相-アモルファス相間の相変化において、結晶相は低抵抗でアモルファス相は高抵抗である事を利用し情報を記憶するRAM。情報の書き込みには熱を用いる。
関連項目