コンピューターが「0」と「1」の組み合わせで計算する仕組みと、nMOSとpMOSを一つずつ組み合わせて入力を反転させるCMOSインバーターの動きを説明する。CMOSが電力を抑えられる理由も扱う。
CMOSインバーターの動き(模式図)
- 入力が1のときnMOSが入、pMOSが切。出力は接地の側につながり、0になる
- 入力が0のときpMOSが入、nMOSが切。出力は電源の側につながり、1になる
図:上のpMOSは電源の側に、下のnMOSは接地の側につながり、二つのゲートをつないだ点が入力、二つの間の点が出力になる。入になったトランジスタを閉じたスイッチ、切を開いたスイッチで描いた。どちらか一方が必ず切なので、電源から接地へ電気が流れ続けない。模式図、本サイトで作成計算は「0」と「1」の組み合わせ
コンピューターの中では、あらゆる情報が「0」と「1」の二つの状態の並びで表されている。文字も、画像も、音も、計算の途中の数も、すべてこの二つの組み合わせである。二つの状態だけで数を表す方法を「二進法」と呼ぶ。
二つの状態は、電気で表すのが都合がよい。電圧が高い状態を「1」、低い状態を「0」と決めておけば、電気の流れを入れたり切ったりするスイッチで、0と1を作り出し、切り替えられる。
高い・低いの二つに分けるだけなので、電圧が少し揺れても、どちらの状態かを取り違えにくい。電気の信号には、周りの回路から入り込む乱れ(雑音)が付きものだが、二つの状態に分けておけば、多少の乱れがあっても正しく読み取れる。これも、二つの状態で表す方法が広く使われている理由である。
分野「デバイス」で学んだMOSFETは、ゲートの電圧で入と切が切り替わるスイッチだった。このスイッチを組み合わせると、0と1を入力として受け取り、決まった規則で0と1を出力する回路を作れる。このような回路を「論理回路」と呼び、その基本の部品を「論理ゲート」と呼ぶ。
簡単な論理ゲート:インバーター
論理ゲートの中で特に簡単なものが、入力を反対にして出力する「インバーター」である。入力が1なら0を、入力が0なら1を出す。「否定」を意味する英語から、NOTゲートとも呼ぶ。
今のチップでは、インバーターをはじめとする論理ゲートの多くが、「CMOS」という作り方で作られている。CMOSは、nMOSとpMOSの二種類のMOSFETを組み合わせる作り方である。
nMOSとpMOSのおさらい
nMOSは、ゲートの電圧が高い(1)とき入になり、低い(0)とき切になる。
pMOSは、その反対である。ゲートの電圧が低い(0)とき入になり、高い(1)とき切になる。
同じゲートの電圧に対して、nMOSとpMOSは、必ず反対の状態になる。CMOSは、この性質を利用している。
CMOSインバーターの形
CMOSインバーターは、pMOSとnMOSを一つずつ、縦に並べてつないだ形をしている。
上のpMOSは、高い電圧を与える「電源」の側につながる。下のnMOSは、電圧の低い「接地」の側につながる。二つのトランジスタのゲートはつながっていて、ここが入力になる。二つのトランジスタの間の点が、出力になる。
入力が1のとき
入力に高い電圧(1)を与えると、下のnMOSは入、上のpMOSは切になる。
出力は、入になったnMOSを通って接地の側につながり、電源の側からは切り離される。そのため、出力の電圧は低くなり、0が出る。入力の1が、0に反転したことになる。
入力が0のとき
入力に低い電圧(0)を与えると、上のpMOSは入、下のnMOSは切になる。
出力は、入になったpMOSを通って電源の側につながり、接地の側からは切り離される。そのため、出力の電圧は高くなり、1が出る。入力の0が、1に反転したことになる。
CMOSが電力を抑えられる理由
CMOSインバーターでは、入力が0でも1でも、二つのトランジスタのどちらか一方が必ず切になっている。そのため、電源から接地へ、まっすぐ電気が流れ続ける道ができない。
電気が大きく流れるのは、入力が0から1へ、あるいは1から0へ切り替わる短いあいだだけである。状態が落ち着いているあいだは、ほとんど電力を使わない。
これが、CMOSが論理回路の基本の作り方になった大きな理由である。非常に多くの論理ゲートを一つのチップに並べても、電力と熱を抑えやすい。ただし、前の分野で学んだとおり、トランジスタを小さくしていくと、切のときにもわずかに電気が漏れる。この漏れを抑えることが、微細化の大きな課題になっている。
インバーターから、ほかの論理ゲートへ
インバーターと同じ考え方で、二つ以上の入力を持つ論理ゲートも作れる。たとえば、二つの入力が両方とも1のときだけ0を出すゲートや、どちらか一方でも1なら0を出すゲートである。これらは、nMOSとpMOSをそれぞれ並べたりつないだりして作る。
こうした論理ゲートを組み合わせると、数の足し算をする回路や、0と1を覚えておく回路ができる。さらに、それらを非常に多く組み合わせたものが、プロセッサーやメモリである。チップの中の複雑な働きも、もとをたどれば、トランジスタのスイッチの入と切の組み合わせである。
このページのまとめ
コンピューターは、電圧の高い・低いで表した1と0の組み合わせで計算する。CMOSインバーターは、上のpMOSと下のnMOSのゲートをつないで入力とし、間の点を出力とする。入力が1ならnMOSが入って出力は0、入力が0ならpMOSが入って出力は1になる。どちらかのトランジスタが必ず切になるので、状態が落ち着いているあいだはほとんど電力を使わない。
- 用語:プロセスノード(微細化):半導体の製造技術の世代を表す呼び方と、回路のパターンを小さくしていく微細化の取り組みを指す用語。
理解度チェック
本文の内容から答えられる問いです。答えを選ぶと、正しいかどうかと解説が出ます。
問1
CMOSインバーターの入力に1(高い電圧)を与えたとき、正しいものはどれか。
答えと解説を見る
答え:2. 下のnMOSが入、上のpMOSが切になり、出力は0になる
入力が1のとき、nMOSは入、pMOSは切になる。出力はnMOSを通って接地の側につながるので、0になる。
問2
CMOSの論理回路が電力を抑えられる理由として、正しいものはどれか。
答えと解説を見る
答え:2. 状態が落ち着いているあいだは、pMOSかnMOSのどちらかが必ず切になり、電源から接地へ電気が流れ続けないから
入力が0でも1でも、どちらか一方のトランジスタが切になっているため、電源から接地へまっすぐ電気が流れ続ける道ができない。電気が大きく流れるのは、切り替わる短いあいだだけである。
問3
入力を反対にして出力する論理ゲートを何と呼ぶか。
答えと解説を見る
答え:1. インバーター
インバーターは、入力が1なら0を、0なら1を出す論理ゲートで、NOTゲートとも呼ぶ。