コンピュータシステムにおけるメモリの一種
- DRAM
- SRAM
が存在する.
Volatile | R/W IO | Power | Cost | |
---|---|---|---|---|
DRAM | Volatile | Slow | Large | High |
SRAM | Nonvolatile | Fast | Small | Low |
※ volatile:揮発性
DRAMに限らず、メモリが "0", "1"の情報を蓄える部分を「メモリセル」という.
DRAMは複数のDRAMメモリセルで構成される.また,DRAMメモリセルは1個のトランジスタと1個のコンデンサから構成される.
時間経過に伴いコンデンサから電荷がリークするため再書き込みする. この再書き込みをリフレッシュといい,1秒間に数十回の頻度で行われる.
- パソコンや周辺機器などのメインメモリ
- グラフィックスカードのビデオメモリ
- ハードディスクドライブのバッファメモリ
SRAMのメモリセルは4~6個のトランジスタからなるフリップフロップ回路メモリセルがで構成される.
記憶素子として磁性体を用いる MRAM も SRAM の一種.
- CPUとDRAMの間のキャッシュメモリ
キャッシュメモリでデータを管理する際には、ブロックと呼ばれる一定長の単位にまとめる
メモリアドレスごとにキャッシュメモリの格納場所が一意に定まる
- 検索性:容易
- ヒット率:低
キャッシュメモリの空いているブロックを自由に使う
- 検索性:すべてを探索するため時間がかかる
- ヒット率:高い
キャッシュメモリを複数のグループに分け、そのグループ内で自由に使う
- 検索性:ブロックサイズに正の相関
- ヒット率:ブロックサイズに負の相関
フルアソシアティブ・セットアソシアティブ方式では連想メモリ(CAM: Content Addressable Memory)により高速化
- プロセッサがキャッシュメモリに書き込みを行うと同時に、その内容をメモリにも転送する方式
- コヒーレンシ(データの一貫性)は保たれる
キャッシュメモリのデータがメモリに追い出されるなどの条件を満たした場合にのみメモリに書き込まれる
- コヒーレンシが保たれないことがある
データを複数のメモリバンクに順番に分割して配置することにより、並列で読み出しが可能になることにより CPU とメモリのデータ転送性能を向上させる
- CPU
- Memory Controller
- Memory Bank 1
- Data1, Data3, Data 5 ...
- Memory Bank 2
- Data2, Data4, Data 6 ...
- Memory Bank 1
- Memory Controller
DRAMメモリセルは格子状に並んでおり、この位置はROWアドレスとColumnアドレスで表される.
一般に10本のアドレス線と書かれた場合には、どちらも10本を意味し、その容量は
2^10 * 2^10 = 2^20
で、1M word