冥界のLSI(4) AMD、Elan SC300/400 Single Chip PC/AT

さて黄昏といいつつ、SoCという言葉以前の夜明けの時代の高集積プロセッサを経めぐっている本シリーズですが、今回はx86でしぶとく生き残ってきたAMD社の高集積プロセッサへの過去の取り組みを振り返りましょう。前回は、C&T社がせっかくPC/XT互換の「シングルチップ」を作ったのにあえなく立ち消えになった話でした。であれば、次はPC/AT互換の「シングルチップ」でしょう。C&T社のPC/Chipよりは数年あと、1995年から1996年くらいにかけて実は何社かほぼ同時期にこれに取り組むのです。ただし、この時代、既にスーパスカラーのPentiumプロセッサが登場しています。そしてOSはWindows 95の時代。

(「黄昏のSoC」改題)

AMD社は、もともとIntelの正式なセカンドソース(ライセンスを受けて互換製品を製造販売する。昔、半導体の供給に不安を持つ顧客にたいして、複数のソースがありますよ、ということで普通にやられていたビジネス)として、x86系のプロセッサを製造販売していたわけです。Intelとの関係がこじれてきたのは、1980年代中盤ごろからでしょうか。80286について、AMDはIntelからライセンスを受けて製造販売していたのですが、あろうことかIntelより「クロック速度の速い」製品を作って売り始めたのです。ちょうど80286をCPUとする、PC/ATとその互換機ビジネスが立ち上がった時代。「正式」なセカンドソースということで、設計データはIntelからAMDに渡っていた筈なのですが、AMDは独自に改良(製造技術面で)を加えて速度を速くしてしまったのです。Intelにしたら軒先を貸して母屋をとられかねない事態。その後は関係悪化の一途を辿り、手切れ、訴訟となっていきます。そして、x86を売らないと会社が立ち行かないAMDは、必死に独自の互換機を開発し、Intelと対抗しつづけ、今に至っているわけです。

ただし、ここで前回もちょっと触れたx86の特殊事情が存在します。この時代、CPU、チップセット、マザーボード、PC/AT互換機メーカ、OSのマイクロソフトという一種の水平分業体制が確立していたのです。そして、PC/AT互換機といいつつ、CPUはオリジナルの80286どころか、その3世代後のPentium(インテルは586という言い方はしなかったが、番号で呼ぶなら586)が既に登場していました。

ソフトウエアの互換性上は最低80386(286では駄目)

でないとまともなソフトは動かせなくなっていました。さらにWindowsを走らせる汎用のデスクトップ機であれば高速クロックの80486かPentiumが速度的に必須になっていました。結果、高集積ではあるが、CPUもグラフィクスもちょっと「小さめ」なものでないと作り切れないPC/AT互換のシングルチップ・プロセッサ(SoCプロセッサというべきなのだが、この時代にはまだその言葉が無い)は、汎用のパソコンではなく

組み込み

に活路を見出すことになるのです。そしてまた、x86ベースの組み込みという市場もそこそこあった時代なのです。なにせ、当時もっとも普及した「パソコン」というプラットフォーム共通で開発できるのですから便利といえば便利。多少リアルタイム性に難があっても、x86ベースの自販機とか、販売端末とか、結構いろいろあったわけです。コンセプト的には

386CPU以上のコア + PC/AT互換チップセット

であるわけです。ちょうどPC/AT互換機のマザーボードを、メモリを除いてワンチップ化したイメージ。ここにAMDは実に3世代の”SoC”プロセッサを順次投入してきます。

  • 386SXベースのElanSC310 と ElanSC300
  • 486SXベースのElanSC400
  • 5×86ベースのElanSC520

ElanSC300, 310, 400の周辺はよく似ていて、オリジナルPC/ATにかなり近いイメージです。拡張バスはISAバスです。オリジナルではISAバス上に接続されていたシリアルポート(UART。310, 300は16450、400は16550と微妙に差をつけています。FIFOつきの16550の方が良い。)、パラレル(プリンタ)ポートなどもチップに含まれています。ElanSC400は、32ビットのバスも使えますが、ElanSC300、310の方が外バス16ビットの386SXベースなので32ビットバスは使えません。また、ElanSC300とElanSC400は、LCD対応グラフィクスまで集積とさらに集積度が高くなっています。ただし、対応はCGAで、当時まだLCDディスプレイの発達途上だったので、組み込み用途にはCGAで十分という判断だったのだろうと想像します。Windows95の時代に入っていることを考えると、ちょっと用途を狭める一因になったのではないかと思います。ElanSC310は、グラフィクスを外して軽くなっています。かえってこの方が良かったかもしれません。MS-DOSベースの組み込み製品を考えると386SX+CGAでもいけるという判断だったのでしょうが、Windowsベースでもイケそうな486機であるSC400がCGAというのは微妙に不釣り合いに思われます。

後から出た5×86ベースのElanSC520は、周辺が一新されていて、バスもPCIベースでより近代的になっています。また、グラフィクスなどは集積せず必要なら外付けというスタイルです。

AMDのElanシリーズはそれなりに組み込み用途を切り開き、市場に受け入れられたいたと思うのですが、その後は途絶えてしまいました。定かな理由は分かりません。想像するに、

  1. ARMベースのSoCが大量に出回り、コストや消費電力で見劣りした
  2. AMDとして、リソースを主流パソコン向けのCPUに集中したかった(組み込み用途は数が出ないし、単価も安いから)

といったところではないでしょうか。90年代も後半になるとARMコアのSoC、実際にSoCという言葉が使われるようになった、が一般化してきます。携帯電話を切っ掛けにブレークしたARMコアのSoCは、小さくて、消費電力が少なくてと組み込みに適した特徴でした。その後も現在に至るまでx86ベースの組み込みが消えたわけではないのですが、「生態系のニッチ」に追いやられて行き、x86ベースのSoCこそ存在はするのですが、パッとしない状況が続くことになります。

冥界のLSI(3) PC/Chip、最初のシングルチップPC へ戻る

冥界のLSI(5)ALI, M6117 組み込み向けPC/AT互換SoC へ進む