← メディア一覧

CPUの仕組み:3ステップのベルトコンベア

6分17秒 | FECPU

基本情報技術者試験の頻出テーマを解説した動画コンテンツです。

トランスクリプト(字幕テキスト)

どうも。 さて、皆さんが毎日使っているパソコンとかスマホ、その中にある脳みそ、つまりCPUがどうやって動いているのか、考えたことありますか? なんだかすごく難しそうですよね。 でも実はこれってあるものにそっくりなんです。そう、まるでシンプルな工場みたいになってるんですよ。 今回はその秘密を一緒に覗いてみましょう。 ねえ、いきなりですが、考えたことあります? コンピューターの脳って一体どうやって考えてるんでしょうか? 僕らがマウスをカチってやったり、この動画を見てたり、ゲームで遊んだり、その裏でとてつもない量の処理が走ってるわけですけど、その仕組みって気になりませんか? 一体どうなってるのか、ちょっと深掘りしてみましょうよ。 はい、というわけで、この謎を解くためのとっておきの鍵があるんです。 それが今回のテーマでもあるCPUを工場として見てみるっていう考え方なんですね。 そうなんです。 あの小さなチップをものすごく速いベルトコンベアが動いているちっちゃな工場だって考えてみてください。 そうすると分かりやすいですよ。 そこではなんか難しいデータとかじゃなくて、具体的な荷物がベルトコンベアに乗ってどんどん流れて処理されていく、そんなイメージです。 どうですか? こう考えるだけでなんだかCPUがぐっと身近に感じられませんか? じゃあ早速その工場の心臓部、組み立てラインを覗いてみましょうか? で、ここが面白いところなんですけど、こんなに高性能な工場なのに、やってることは実はたった3つのシンプルなステップ。 これをただただひたすら繰り返してるだけなんですよ。 たったそれだけって思いますよね。 その3つのステップっていうのがこれです。 まず読み込み、次に実行、そして最後に書き戻し、この3つ。 まあ、専門用語だとそれぞれフェッチエグゼキュートライトバックなんて呼ばれたりもしますね。 さあ、このベルトコンベアの流れ、1つずつ具体的に見ていきましょう。 まずステップ1の読み込みですね。 これは工場で言うと棚から作業指示が入った荷物を取ってくるイメージです。 この棚がコンピューターのメモリに当たります。 で、その荷物、つまり命令を1つベルトコンベアの上にポンと載せる。 よし、仕事開始って感じですね。 そしてステップ2、実行。 ベルトコンベアで運ばれてきた荷物をいよいよ工場の作業員が上げます。 この作業員がいわゆるCPUコアってやつですね。 彼らが荷物の中身、つまり指示書を見てその通りに作業をするわけです。 足し算したり、データを並べ替えたり。 まさにこの工場の1番大事な仕事、処理のど真ん中がここです。 で、最後のステップ3、書き戻しです。 作業が終わって出来上がった完成品、つまり計算結果ですね。 これをまた元の棚、つまりメモリにちゃんと戻してあげる。 はい、これで1つの荷物の処理が完了です。 この結果がまた次の命令で使われたり、あるいは僕らが見てる画面に何かを表示させたりする元になるわけですね。 さて、この読み込み実行書き戻しっていう一連の流れ。 これがとんでもないスピードで繰り返されてるわけですけど。 ここで疑問が湧きますよね。 一体誰が、何がこの工場の弁当コンベアを動かすペースを決めてるんでしょうか? どんな工場でもみんながバラバラに動いたら大惨事ですよね? 必ずペースメーカーが必要なんです。 CPUの工場ではその役割を果たしているのがクロック信号っていうもの。 これ本当に音楽で使うメトロノームみたいなもんなんですよ。 カチ、カチってすっごく正確なリズムを刻み続けて工場全体の動きをピタッと合わせているんです。 このクロック信号っていうのは、まあ定期的に送られてくる電気のサインみたいなものですね。 このカチっていう1回の合図でベルトコンベアが1段階進む。 つまり読み込みが終わるとか、実行が始まるみたいな。 要するにこのリズムに合わせて工場の皆が一斉に次の作業に移るわけです。 これがなかったらもう工場はめちゃくちゃになっちゃいますからね。 本当に大事な役割です。 じゃあそのカチカチっていうリズム、一体どれくらいの速さだと思います? これがですね、とんでもないんですよ。 なんと今のCPUだと1秒間に30億回以上。 聞き間違いじゃないですよ。 1秒間に30億回もあの読み込み実行書き戻しのサイクルが回ってるんです。 いや、もうちょっと想像つかないレベルのスピードですよね。 さて、ここまで見てきたようにやってることは本当にシンプルな3ステップの繰り返しなんですよね。 でも、じゃあなんでこんな単純作業の繰り返しで僕らが使ってるようなあの複雑なゲームとかアプリが動くんでしょうか? 最後にその点を繋ぎ合わせてみましょう。 ここでの1番のポイントは、結局圧倒的な数が複雑さを生み出してるってことなんです。 ものすごく単純な3ステップ、でもそれをとてつもない速さのリズムに乗せて1秒間に何十億回も繰り返す。 この膨大な積み重ねが結果的にすごく複雑なことを可能にしてるんですね。 だから皆さんが今マウスカーソルをすっと動かす、そのほんの少しの動きでさえ、この小さな工場の中では何百万、何千万回っていうレベルの作業が瞬時に行われた結果なんです。 そう考えるとすごくないですか? このものすごくシンプルだけど信じられないくらいパワフルな繰り返しの力、これが今のデジタル社会の全ての土台になってるわけです。 じゃあこの基本原則の上にこれから先一体どんな未来が作られていくんでしょうか? そう考えると、なんだかすごくワクワクしてきませんか?

このコンテンツは Web society で視聴・学習できます。