メモリとプロセッサは何が違う? DRAMとフラッシュメモリの違いも
プロセッサは「計算する」もの、メモリは「覚える」ものです。プロセッサはロジックチップとも呼ばれ、プログラムに沿って一歩ずつ計算し、判断します。メモリはプログラムやデータをしまっておき、プロセッサが取りに来るのを待ちます。メモリでいちばんよく使われるのは2種類です。DRAMは速いけれど、電源を切るとすべて忘れます。スマホのスペック表にある「RAM」がこれです。フラッシュメモリはずっと遅いけれど、電源を切っても覚えています。スマホの「128GB」「256GB」という容量がこれです。スマートフォンには、この3種類のチップが全部入っています。
プロセッサとメモリは、どう分担しているのか
プロセッサを、机に向かって仕事をしているあなただと考えてみてください。
- DRAMは机:机の上に広げたものには、すぐ手が届きます。でも机はそれほど広くなく、明かりを消すと(電源を切ると)机の上はからっぽになります。
- フラッシュメモリは本棚:たくさん入り、置いておいてもなくなりません。でも立って取りに行くので、時間がかかります。
アプリを開くのは、本棚から本を1冊出して机に広げるようなものです。プログラムがフラッシュメモリからDRAMへコピーされ、プロセッサはDRAMから少しずつ取り出して計算します。チップにほかにどんな種類があるかは、「半導体チップとは?」をどうぞ。
プロセッサはなぜ「ロジック」チップと呼ばれるのか
チップの中でいちばん多いのはトランジスタです。電気で切り替える小さなスイッチで、オンが1、オフが0です(「トランジスタとは?」)。スイッチをいくつかつなぐと、「両方が1のときだけ1を出す」「どちらかが1なら1を出す」「1が来たら0を出す」といった小さな回路ができます。これを論理ゲートといいます。論理ゲートを何段も組み合わせると、足し算をしたり、大小を比べたり、条件によって次にすることを決めたりできます。「ロジック(論理)」という名前はここから来ています。パソコンやスマホのプロセッサも、グラフィックスカードで画像を描くチップも、ロジックチップです。
じつはプロセッサ自身も、少しだけメモリを持っています。机の横のメモ用紙のようなものです。SRAMといい、0か1をひとつ覚えるのにトランジスタを6個使います。リフレッシュがいらず、とても速いのですが、場所をとるので少ししか載せられません。プロセッサが次の瞬間に使うものだけを置いておきます。
DRAMは、なぜ電源を切ると忘れるのか
DRAMのセル1個は、トランジスタ1個とキャパシタ(コンデンサ)1個でできています。キャパシタは小さなコップのようなもので、電荷が入っていれば1、空なら0です。トランジスタはコップの扉で、読むときと書くときだけ開きます。
困ったことに、このコップは漏れます。電荷が少しずつ抜けていくのです。だからDRAMは、すべてのセルを読み出しては満たし直す作業を休みなく続けます。これをリフレッシュといいます。公開されている標準では、ふつうの温度で、どのセルも数十ミリ秒ごとにリフレッシュしなければなりません(標準によって64ミリ秒、32ミリ秒など)。1秒に十数回から三十数回です。DRAMのDは dynamic(ダイナミック)で、このことを指しています。電源を切れば誰もリフレッシュしないので、データはすぐに消えてしまいます。スマホの画面が消えていても、DRAMの中身を残しておくにはリフレッシュを続ける必要があり、そのぶん少し電気を使います。
その代わり、速いのが取り柄です。データを1回読むのに、数十ナノ秒(1ナノ秒は10億分の1秒)しかかかりません。
フラッシュメモリは、なぜ電源を切っても覚えているのか
フラッシュメモリのセルもトランジスタ1個ですが、ゲート(スイッチを開け閉めする扉)とその下のチャネルのあいだに、電子を閉じこめるための場所がもう1つはさまっています。まわりは絶縁膜でぴったり包まれていて、扉のない小部屋のようです。書きこむときは、高めの電圧をかけて、電子をごく薄い絶縁膜の向こうへ押しこみ、この小部屋に閉じこめます。電子は出られないので、電源を切っても残り、ふつうは何年ももちます。小部屋に電子が入っていると、そのスイッチはオンになりにくくなります。読むときはオンになりやすいかを確かめ、0か1かを知ります。
代わりに遅くなります。電子を出し入れするには時間がかかりますし、1セルだけを消すことはできず、ブロックごとまとめて消します。「フラッシュ」という名前は、まさにこの一度に大きく消すようすが、カメラのフラッシュを思わせたからだといわれています。読むだけでも数十マイクロ秒(1マイクロ秒は100万分の1秒)かかり、DRAMより数百倍から千倍ほど遅く、書きこみと消去はさらに遅くなります。また、セルごとに消して書き直せる回数には限りがあるので、制御回路が書きこみをすべてのセルに均等に散らします。
ニュースでよく聞くNANDは、スマホやSSDに入っているこの種類のフラッシュメモリのことです。セルを1列に数珠つなぎにするつなぎ方が、NANDという論理ゲートに似ていることから、この名前がつきました。スマホのスペック表で容量を「ROM」と書くことがあるのは昔の呼び方の名残で、中身はやはりフラッシュメモリです。
スマホには、なぜ2種類のメモリが両方いるのか
どちらにも、足りないものがあるからです。
- フラッシュメモリは遅すぎる:プロセッサがそこから直接データを取ると、待ってばかりになります。それに、この種類のフラッシュメモリでは、プロセッサがその上で直接プログラムを動かせません。先にDRAMへ移す必要があります。
- DRAMは忘れるうえ、高い:同じ容量なら、DRAMのほうがずっと高く、しかも電源を切るたびに消えるので、写真をしまっておけません。
だから、写真やアプリ、OSはフラッシュメモリに置き、いま使っている部分だけをDRAMにコピーします。スマホのRAMはふつう数GBから十数GBで、容量はその10倍以上あることがよくあります。再起動するとアプリが最初から立ち上がるのは、DRAMが消えて、フラッシュメモリからもう一度コピーし直すからです。
メモリチップとロジックチップは、つくり方の何が違うのか
メモリチップ:同じセルを、数十億個以上くり返し並べる。 DRAMのチップ1個には数十億から百億を超えるセルがあり、どれも同じ形です。1種類のタイルで広い床を敷きつめるようなものです。勝負は、セル1個をもう少し小さくできるかどうか。セルが小さいほど1個のチップにたくさん入り、1ビットあたりが安くなります。セルがみな同じなので、設計のときに予備の行も少し用意しておきます。テストで不良のセルが見つかった行は予備の行と入れ替え、チップ全体は使えるようにします。そのぶん歩留まりが上がります。
セルを小さくするのは、メモリの種類ごとに別の難しさがあります。
- DRAM:コップが細くなっても、十分な電荷をためなければなりません。そこで上へ伸ばし、高さが幅の数十倍もある、細くて高い柱にします。
- フラッシュメモリ:平面ではもうあまり小さくできないので、セルを1層ずつ上へ積み重ねます。いまでは百層を超え、上から深くて細い穴をエッチングで開けて、何層も貫きます。
ロジックチップ:回路がもっと入り組んでいて、スイッチの速さが勝負。 プロセッサの回路の多くは、場所ごとに形がばらばらで、くり返しの模様がほとんど見えません。配線も複雑で、最先端のものは配線を10層以上積みますが、DRAMの配線層はふつうずっと少なめです。ロジックチップはトランジスタの切り替えの速さをいちばん気にするので、新しいトランジスタのつくり方は、たいていロジックチップから使われはじめます。メモリは1ビットの安さをもっと気にするので、セルのまわりで制御を受けもつトランジスタには、あえて最新のつくり方を使わないことがよくあります。
ちなみに、ニュースの「2ナノ」「3ナノ」は、ロジックチップの世代のことです(「ニュースの「2ナノ」、いったい何が2ナノなのか?」)。メモリには独自の数え方があり、DRAMは独自の世代の呼び名を使い、フラッシュメモリは「何層積んだか」で比べることがよくあります。AI向けのチップのとなりにある特別なメモリについては、「広帯域メモリ(HBM)」をどうぞ。
fab24hrでは
ゲームに出てくる開発ライン、量産工場、後工程工場は架空のもので、メモリのメーカーはありません。チップのどの部分が計算し、どの部分が覚えるのかも、ゲームでは描いていません。メインストーリー「チップの一生」が追いかけるのは、架空の補聴器用チップ「Glowmere」です。ボタン電池1個を何日も長くもたせるためのチップなので、何もしていないときにも流れてしまう電流(リーク)は、顧客の製品エンジニアいわく、このチップでいちばん大事な数字です。第10章「待機電流」では、あなたはテストエンジニアとして、ウェーハテストでのこの電流の上限をどこに引くかを決め、テストプログラムに書きこみます。厳しくすれば歩留まりが下がり、緩めれば電池が長くもちません。ゲームに出てくる会社・チップ・人物・数字は架空です。プロセッサとメモリがどう分担しているか、DRAMとフラッシュメモリがどう覚えるかは、公開されている一般的な資料をもとに書いています。ほかの用語は「半導体工場の業界用語を、やさしく解説」へ。
ゲームのどこで出会うかメインストーリー「チップの一生」は、架空の補聴器用チップ「Glowmere」を追いかけます。ボタン電池1個を何日も長くもたせるためのチップです。第10章「待機電流」では、テストエンジニアが、チップが何もしていないときにも流れてしまう電流をどこまでなら通すかを決めます。
fab24hrでは、チップが何もしていないときにどれだけリークするかは、テストエンジニアが上限を決める数字です。
第10章「待機電流」から遊ぶほかの記事
ムーアの法則とは? なぜ減速していると言われるのか
半導体とは? なぜ「半」導体なのか
半導体チップとは? ウェーハ、IC、半導体とはどう違うのか
トランジスタとは? スマートフォンのチップに100億個以上のスイッチがある理由
このサイトのほかのページ
- fab24hrとは?:2つの遊び方、4つのシフト、よくある質問、参考にした資料
- チップの一生:チップはどうやってつくられる?テープアウト、試作、量産、ウェーハテスト、パッケージ、出荷、それぞれの段階でしていること
- 半導体工場エンジニアの一日:PE・EE・PIE・製造部の役割分担と、一日のタイムライン
- 半導体工場には誰がいる:技術員、製造部、プロセス、装置、ファシリティ、インテグレーション、品質保証、生産管理、マスク、開発、課長、メーカー、後工程のテストと組立:それぞれの一日
- 半導体工場の業界用語を、やさしく解説:MO、ホールド、Qタイム、OCAPなどの業界用語を、ひとことでやさしく
- 授業でfab24hrを遊ぶ:20/40分の授業の流れ、メインストーリーで1章1コマ、話し合いのテーマ、端末とプライバシー
- 紹介とメディア素材:プロモーション動画、ゲーム画面、紹介文と基本情報