メモリのあれこれ 神戸大学 大学院 理学研究科 島津 通
Index 主記憶装置 RAM と ROM RAM ROM フラッシュメモリ メモリモジュール SSD
主記憶装置 CPUが直接アクセスできる記憶装置のこと メインメモリ、一時記憶装置とも呼ばれる 現在は一般的に半導体メモリが用いられている
RAM と ROM RAM (Random Access Memory) ROM (Read Only Memory) 電力供給を止めると記憶内容が失われる揮発性のメモリ ROM (Read Only Memory) 電力供給を止めても記憶内容を保持する不揮発性のメモリ
RAM RAM には大きく分けて以下の2つがある DRAM (Dynamic RAM) SRAM (Static RAM) コンデンサに電荷を蓄えることで情報を記憶する リフレッシュと呼ばれるデータの再書き込みが必要 PC のメモリモジュールで使用されている SRAM (Static RAM) フリップフロップ等の順序回路を用いて情報を記憶する DRAM よりも消費電力が小さく、アクセス速度も高速 キャッシュメモリに用いられる フリップフロップ(FlipFlop)は二進法の基本である1ビットの情報を一時的に"0"または"1"の状態として保持する(記憶する)ことができる論理回路で、順序回路の基本要素である。
ROM mask ROM EEPROM (Electrical Erasable Programable ROM) 製造時に記憶内容を書き込む ユーザーは中身を変更できない EEPROM (Electrical Erasable Programable ROM) 電気的に記憶されているデータを消去、変更、書き込みが複数回できる このEEPROM の一種であるフラッシュメモリがUSBメモリやSDカード、SSD(後述)などに組み込まれている マスクROM(mask ROM) 製品製造時に記憶内容を書き込む。ユーザーが変更することはできない PROM(Programmable ROM) ユーザーが一度だけデータを書き込むことができる。 EPROM(Erasable Programmable ROM) EPROMに紫外線を照射することで、記憶内容の消去ができる。 EEPROM(Electrical Erasble ROM) 電気的に記憶されているデータを消去、変更と書き込みが可能
フラッシュメモリ 書き換え可能な不揮発性の半導体メモリ フラッシュ EEPROM やフラッシュ ROM と呼ばれる http://pc.nikkeibp.co.jp/article/NPC/20061129/255245/trend_imgview1.html
ここまでのまとめ メモリ RAM ROM DRAM SRAM mask ROM EEPROM PC のメモリモジュール キャッシュメモリ フラッシュメモリ
メモリモジュール SDRAM (Synchronous DRAM) 外部クロックに同期してデータをやり取りする 現在 PC では、DDR2 SDRAM と DDR3 SDRAM の2種類が普及している メモリチップ メモリコントローラー I/Oバッファ メモリ・セル・アレイ 内部バス
DDR 2 SDRAM DDR 3 SDRAM メモリチップ メモリコントローラー I/Oバッファ 4倍速 メモリ・セル・アレイ 内部バス 8倍速 メモリ・セル・アレイ 内部バス
ECC , Unbuffered と Registered ECC (Error Checking and Correction) 64bit の元のデータにプラスしてハミングコードと呼ばれる 8bit のデータを数学的に生成して, 2bit 以上のエラーの検出および 1bit のエラーの訂正を行えるようにしたもの 信号を「整える」回路が ある→Registered ない→Unbuffered:現在の PC では主流 (安いので) *今後は変わる可能性は十分にある. *CPU の設計変更でCore iX , や Phenom といったシリーズのCPU がメモリと直結するようになったため
メモリ グラフィックス関係 ネットワーク グラフィックスボード用 ネットワークカード (PCI) スロット(PCI Express×16) MCH CPU グラフィックス関係 グラフィックスボード用 スロット(PCI Express×16) メモリ ICH HDD (Serial ATA) DVDドライブ (IDE) HDD/光学ドライブ関係 汎用インターフェイス (USB 2.0) (PCI) 拡張スロット (PCI Express×1) 汎用インターフェイス関係 オーディオ関係 ネットワーク ネットワークカード (PCI)
メモリ グラフィックス関係 ネットワーク グラフィックスボード用 ネットワークカード (PCI) スロット(PCI Express×16) IOH CPU グラフィックス関係 グラフィックスボード用 スロット(PCI Express×16) メモリ ICH HDD (Serial ATA) DVDドライブ (IDE) HDD/光学ドライブ関係 汎用インターフェイス (USB 2.0) (PCI) 拡張スロット (PCI Express×1) 汎用インターフェイス関係 オーディオ関係 ネットワーク ネットワークカード (PCI)
32bit と 64bit 32bit OS では,アドレス空間が 32bit であるため、2の32乗 B(= 約 4GB) までしかメモリを認識できない 実際には, VRAM やその他にもアドレス空間を割り当てないといけないため, さらに小さくなる 64bit OS では, 理論上 2の64乗 B (= 約 16EB)まで搭載できる. 大容量メモリが安くなった現在, 64bit OS への移行が始まっている. 「32ビットアーキテクチャ」とは、整数型、メモリアドレス、その他のデータサイズなどが、最大32ビット幅のアーキテクチャである。 「32ビットCPU」(プロセッサ、演算論理装置)とは、32ビットサイズのレジスタ、アドレスバス、データバスを持つCPU(プロセッサ、演算論理装置)である。 「32ビットオペレーティングシステム」とは、32ビットのCPUを前提に設計されたオペレーティングシステムである。 「32ビットアプリケーション」とは、32ビットのCPUおよび32ビットのオペレーティングシステムを前提に設計されたアプリケーションソフトウェアである。 「32ビットコンピュータ」とは、32ビットのプロセッサ (CPU) を標準的に搭載したコンピュータの世代である。
SSD SSD (Solid State Drive) 正確にはフラッシュ SSD と呼ばれ, 記憶素子にフラッシュメモリを用いた、外部記憶装置 (HDD などと同じもの)
SSD の利点 モーターやアームといった可動部を持たない ランダム読み出し速度が速い 耐衝撃性が高い 低消費電力・低発熱・低騒音 HDD よりも小型化・軽量化が容易 データの読み出しがメインのストレージに適している OS の boot 用 デジタルオーディオプレーヤー etc… 転送速度:HDD 100~150 MB/s :SSD 200 MB/s :EP 向けで 1.5 GB /s なんてのもある
SSD の欠点 書き換え可能回数に上限がある 断片化した際の書き込み速度が非常に遅くなる HDD と比べてバイト単価が非常に高い ランダム書き込み速度がかなり遅い 最近は割と改善されつつある OS でサポートされていない データ保持時間が有限である 長くても 2~3 年 更新の頻繁なデータファイルの保存や長期運用を想定したサーバ用途には適さない OS サポート Windows 7 or Open Solaris (ZFS) Chrome OS SSD のみ
SLC と MLC SLC (Single Level Cell) MLC (Multi Level Cell) 1つの記憶素子に1 bit のデータを保持する 書き換え可能な上限値が大きい データ保持期間が比較的長い 書き込み速度が速い MLC (Multi Level Cell) 1つの記憶素子に2 bit 以上のデータを保持する 書き換え可能回数、データ保持期間が SLC よりも短い 大容量化、低価格化が容易
まとめ PC では DDR2 SDRAM、DDR3 SDRAM が主流 32 bit OS では、通常 4 GB までしか、メモリを認識できない HDD にかわる補助記憶装置として SSD が注目されている データの読み出しがメインとなる用途に向いており、逆に更新が頻繁なものや長期運用用途にはあまり向かない SSD ないでも SLC 型と MLC 型で性能は異なる
参考文献 『Win PC』 2010年 2月号 日経BP社 IT ENGINEER’S Basicシリーズ ベテランが丁寧に教えてくれるハードウェアの知識と実務 矢沢 久雄 著 翔泳社 版