誰が言い出したのか、まことしやかに流布される謎の解釈。
今回のIT都市伝説はこれだ!
1bit CPU? そんなものは酒の席での馬鹿話のネタだよ §
CPUは一般的に、ビット数で分類されます。
世界最初のマイクロプロセッサは、Intel 4004とされていますがこれは4bit。
いわゆるマイコンブームを支えたZ-80や6809などは8bit。
パソコンが実用の道具として普及し始めた時代の8086は16bit。
現在主流のPentiumなどは主に32bit。
そして、更に64bit CPUの普及も始まりつつあります。
こういう状況だと、酒の席の馬鹿話で、「じゃあ、次は128bit CPUだ」「いや、いっそ256bitにして性能4倍だ!」といった話題が飛び出すことも珍しくありません。
そして、酒がまわってくると、大きくするだけでは飽きたらず、小さくするネタも飛び出します。
「それじゃ、1bit CPUってのはありですかね?」
「おもしれぇ。1bit CPUか! 性能が低そうだ!」
「ってか、実際にあっても、何の仕事もできないだろう。何せ、1bitだぜ!」
「あり得ないか、1bit CPUは……」
「うん、あり得ねぇな」
ちゃんちゃん。
楽しい酒宴もお開きのようで。
いや、そうではないのだ §
この楽しい酒宴の結論は実は誤りです。
2005年5月13日16時50分頃追記
真面目に突っ込んでくる人がいるので補足しますが、うろ覚えの漠然とした記憶によれば、128bit CPUも256bit CPUも既に実在するはずです。ただし、一般的なパソコン用で使われるPentiumのような製品カテゴリの範疇ではないと思われます。
kkamegawaさんの[Web]ICコレクションで紹介されたIC collectionを見ていて、その内容の充実ぶりと的確さに感心しながら斜め読みしながら、まさか「アレ」は無いよなと思っていたらありました。
「アレ」とは、以下のチップです。
これは、紛れもなく1bitのCPU(を構成するための主要ロジックを提供するチップ)です。
なぜ、1bit CPUに存在価値があるのか、その理由を上記ページから引用します。
1 bitで何ができるかと思われるかもしれませんが、たとえばあるスイッチが押されたらモータに電源を供給するけれどもその最中に別のあるスイッチがONになったら停止させなくてはならない、といった種類の作業なら、1 bitの論理演算と条件分岐と1 bit単位の入出力機能があればなんとかなります。工場の自動加工装置なんかでも、単純なものならこの程度の処理ができれば充分なのです(人がボタンを押すと、台が移動して指定位置にきたら何かして元の状態に台を戻す程度のシーケンス制御などは結構あります)。そこでマルチチップのマイクロコンピュータは高価すぎるとか、マスクROMの1チップコンピュータを発注するほど生産量がないなんて場合に、このICUとメモリと10 - 20個のCMOS ICで実現したらどうかというわけです。
もう少し説明すれば §
ちなみに、もう少し補足しておきます。
厳密に言うと、CPUのビット数というのは、扱えるデータ量とは何ら関係ありません。
ビット数が少ないと、同時に処理できるデータ量が少ないため、相対的に処理に時間が掛かります。ただそれだけの話です。
ビット数が少ないと、扱えるメモリ量が少ないと言うわけでもありません。このチップには、アドレスを処理する機構が含まれておらず、外付けで設計しなければなりません。裏を返せば、1bit CPUでありながら、最先端CPU並の64bitのメモリアドレスを与えることも理論上は可能と言うことになります。
また、ビット数が少ないと使用できる命令数が少なくなる、と言うこともありません。CPUの命令を表現するビット数は、CPUのビット数とは必ずしも一致しないからです。このチップでは命令を4bitで表現しており、外部回路で任意に拡張できるアドレス情報を付け加えます。これは「アドレスビット数+4bit」という表現力に拡大します。
そこから考えれば、おそらくは以下のように言うことがでるでしょう。
無制限のメモリ空間およびメモリと、無制限の時間を与えられれば、1bit CPUであっても、計算可能なあらゆる処理は1bit CPUでも実行できる。
そして、この文章は、なぜ1bit CPUがリーズナブルではなく、実際に使われることがないかも示しています。現実のシステムでは、無制限のメモリも無制限の時間も与えられません。与えられた資源で、効率よくかつ安価に処理を実行するために、1bit CPUはけして有利ではないのです。1bit CPUに存在意義が生まれるのは上記引用文にあるような限定的なシチュエーションだけだと言えます。そして、その存在意義も、よりビット数の多いCPUの低価格化によって消滅したと言えます。
余談: MC14500の思い出 §
MC14500は思い出深いチップです。
といっても使ったことはありません。
このようなチップがあると知った時の衝撃。
まるでNANDなどのロジックICのような見慣れた型番。
16ピンプラスチックDIPパッケージという慣れ親しんだ姿。
チップの紹介記事(雑誌不詳。トラ技だったかな?)を眼にした時、ぜひとも玩具にして遊びたいと思いました。
しかし、当時分厚い広告雑誌であったトラ技などを見ても、このチップを扱っている店は見あたらず、悶々とさせられました。
そのあとの経緯はよく覚えていません。しかし、結局このチップを入手することはなく、いつの間にか忘れていました。
しかし、1つだけ間違いないことは、このチップには面白さという魅力があることです。上記ページに筆者も以下のように書いています。
でもねぇ、遊びで設計して作ってみたら、命令体系の決定とかの自由度が設計者に残されているし、結構楽しかったですけどね。