基本情報技術者 学習ページ|科目A・コンピュータ構成要素

メモリの仕組みと性能

コンピュータでは、速度・容量・価格の異なる複数の記憶装置を組み合わせて利用します。DRAMとSRAMの違い、キャッシュメモリの効果、アクセス時間やメモリインタリーブを確認します。

記憶階層の考え方

記憶装置には、CPUに近く高速だが容量当たりの価格が高いものと、低速だが大容量で安価なものがあります。これらを階層的に組み合わせる考え方が記憶階層です。

一般に、レジスタ、キャッシュメモリ、主記憶、SSDやハードディスクなどの補助記憶という順にCPUから遠くなります。高速な小容量記憶と低速な大容量記憶を組み合わせて性能とコストを両立することが目的です。

記憶階層は速度・容量・価格の異なる記憶装置を組み合わせる。

DRAMとSRAM

DRAMは記憶内容を保持するため定期的なリフレッシュが必要な揮発性メモリで、高密度化しやすいため主記憶に広く用いられます。SRAMは、通電中であればリフレッシュを必要とせず、DRAMより高速ですが、一般に1ビット当たりの回路規模が大きく高価です。

そのためSRAMはキャッシュメモリ、DRAMは主記憶という使い分けが代表的です。どちらも通常は電源を切ると内容を失う揮発性メモリです。

DRAMは主記憶、SRAMは高速なキャッシュに適する。

フラッシュメモリ

フラッシュメモリは、電源を切っても記憶内容を保持できる不揮発性半導体メモリです。SSD、USBメモリ、メモリカードなどに利用され、機械的な可動部分を必要としません。

書換え回数には上限があるため、SSDでは書込みを特定の記憶領域へ集中させないウェアレベリングなどが利用されます。フラッシュメモリはSRAMやDRAMとは異なり不揮発性です。

フラッシュメモリは電源断後も内容を保持する半導体メモリ。

キャッシュの性能

キャッシュメモリは、CPUと主記憶の速度差を埋めるための高速な記憶装置です。プログラムは、最近使ったデータやその近くのデータを続けて使いやすいという参照の局所性をもつため、それらを保持しておくと主記憶へのアクセスを減らせます。必要なデータがキャッシュに存在する割合をヒット率といいます。

実効アクセス時間を求めるときは、ヒット時とミス時に何時間掛かると問題文が定義しているかを確認します。例えばミス時にも先にキャッシュを調べる条件なら、ミス時の時間にはキャッシュ参照時間と主記憶参照時間の両方を含めます。

実効アクセス時間はヒット時とミス時を確率で加重平均する。

アクセスとインタリーブ

記憶装置へのアクセス方式には、記録順に読み書きする順次アクセスや、目的の位置を指定してアクセスする方式があります。主記憶ではアドレスを指定して目的の記憶場所へアクセスします。

メモリインタリーブは、主記憶を複数のバンクに分け、連続するアドレスを異なるバンクへ配置するなどして、複数バンクへのアクセスを重ね合わせる方式です。一つのバンクのアクセス完了を待つ時間を利用して別バンクへアクセスし、実効的な転送性能を高めることができます。

メモリインタリーブは複数バンクを並行的に利用して性能を高める。

本番の形で解いてみる

科目Aの形: 四肢択一(計算)(このページのために作った問題)

キャッシュメモリのアクセス時間が10ns、主記憶のアクセス時間が100ns、キャッシュのヒット率が0.95である。最初にキャッシュを参照し、ミスした場合はその後に主記憶を参照するとき、実効アクセス時間はどれか。

  1. 14.5ns
  2. 15ns
  3. 19.5ns
  4. 20ns
答えと解説を見る

正解: 15ns

ヒット時は10ns、ミス時はキャッシュ10nsと主記憶100nsを合わせて110ns掛かります。したがって0.95×10+0.05×110=15nsです。

まちがえやすい点: ミス時にも最初のキャッシュ参照時間10nsが掛かる条件を見落とさない。

科目Aの形: 四肢択一(計算)(このページのために作った問題)

あるキャッシュメモリでは、ヒット時のアクセス時間が20ns、ミス時のアクセス時間が120nsであり、実効アクセス時間が30nsであった。ヒット率はどれか。ここで、ミス時の120nsにはキャッシュの確認に要する時間も含まれているものとする。

  1. 0.80
  2. 0.85
  3. 0.90
  4. 0.95
答えと解説を見る

正解: 0.90

ヒット率をhとすると、20h+120(1-h)=30です。これを解くと100h=90となり、h=0.90です。

まちがえやすい点: ミス時アクセス時間が120nsと定義済みなので、さらに20nsを加えない。

科目Aの形: 四肢択一(このページのために作った問題)

DRAM、SRAM、フラッシュメモリについて、最も適切な記述はどれか。

  1. DRAMはSRAMより高速なため、一般にキャッシュメモリに用いられる。
  2. SRAMは記憶内容の保持にリフレッシュが必要で、一般に主記憶に用いられる。
  3. フラッシュメモリは不揮発性であり、SSDやメモリカードなどに利用される。
  4. フラッシュメモリは書換え回数に上限がないので、ウェアレベリングは不要である。
答えと解説を見る

正解: フラッシュメモリは不揮発性であり、SSDやメモリカードなどに利用される。

フラッシュメモリは不揮発性で、SSDやメモリカードなどに利用されます。DRAMはリフレッシュが必要で主記憶に、SRAMはリフレッシュ不要で高速なキャッシュなどに利用されます。

まちがえやすい点: DRAMとSRAMはいずれも揮発性だが、リフレッシュが必要なのはDRAMである。

基本情報の学習ページ

ほかの学習ページの一覧と、2択の用語カード(750語)は、基本情報技術者のページにあります。

基本情報技術者のページへ →

このページの内容は、IPA「基本情報技術者試験 シラバス Ver.9.2」(2026年1月公表)と試験要綱Ver.5.6の範囲にもとづきます(2026年10月確認)。IPAは2027年度春ごろから新しい試験制度に移る予定です。