〜 〜 〜 Z80の過去と未来 〜 〜 〜 #60 大石 伸彰  1976年にZ80が発表されてから、18年になる。この間、パソコンの黎明期から16/ 32bitの台頭、RISCの登場までいろいろなことがあったが、その前半にZ80は欠かすこと のできない存在であったし、その後の出来事のトリガであったと言えるだろう。  そしてパソコンの表舞台から静かに消えたちいさなCPUは、その後目立たない所で劇 的な進化をとげている。ここではZ80の進化の足跡や現状を探ってみようと思う。 [1] Z80(ザイログ)  もともとザイログという会社はインテルからスピンアウトしてできた会社である。半 導体製品の進化の過程において、スピンアウトは時に突然変異的な変化をもたらす。  Z80も例外ではない。そしてその成功はスピンアウトのメンバーに世界初のマイコン 4004、及び8080の設計を担当した嶋正利(現ブイ・エム・テクノロジー副会長)が名を連 ねたことで約束されたとも言える。  Z80の特徴を挙げてみよう。  (1)8080命令互換で高速動作  (2)デイジーチェインによる割り込みの強化  (3)5V単一電源  (4)強力な命令、わかりやすいニーモニック  今時8080を使用している人などいなくなったのでわかりにくいと思うが、当時の8080 は破竹の勢いというか、それはもう大変な普及率であった。モトローラの6800、モス テック(これもTIからスピンアウトしてできた会社)の6500と共に「パーソナルコン ピュータ」の誕生の礎を築いた石である。その8080の普及と共に、OSという役割で広 まったのがCP/Mであった。  移植性の高さ(当時CP/Mの導入はBIOSを自分で作ることから始めた)と要求される資源 の少なさから、CP/Mが動いていなければパソコンでないとまでいわれ、あのApple IIに までCP/Mカードと称して80系CPUの載ったボードが提供される始末であった。このよう なCP/Mの寡占状態にあって、ザイログが開発しようとする新しいCPUのコンセプトに 8080命令互換が挙がるのは当然だったといえる。  また、当時はまだまだ3電源のICが大勢を占めてはいたが、5V単一に向かうのは当然 の流れと考え始められていた。今で言う3.3Vがどうのという議論によく似ている。8080 は3電源式(±5V,+12V。世の常として+5V以外の電力はたいして必要ない。但しECLデバ イスは別格)であり、この点でも優位に立ちたいと開発者達は考えた。  こうして発表されたZ80は性能的な優位さが一般に認められるところとなったが、 すでに8080の独占的ともいえる米国市場において既製品を設計しなおすほどの動きは見 られなかった。ただし新規設計ではZ80に切り替える会社が多く、有名どころではコモ ドール、シンクレアが採用した。インテルが対抗CPUとして発表した8085が失敗したの も影響が大きかった。  日本市場はそのころ、パソコンがやっと立ち上がろうかというところであった。ザイ ログにはこれが幸いした。Z80は8080のソフトの資産を受け継ぐことができてもハード の資産までは受け継げなかったからである。新規に設計するなら、Z80の方がシンプル になるし性能も高い。日本のパソコンンメーカー製の製品に8080マシンがないのはこの ためである。また、半導体事業をこれから本格化しようとしていたシャープとセカンド ソース契約をしたのも普及に拍車をかけた。  だが、逆にザイログがユーザに影響を与えたということもある。Z80普及の要因のひ とつにわかりやすいニーモニックというのがある。転送命令はLDのみであるとか、ア キュムレータを使用する命令と他の命令の差異がないとか、初心者からスムースに入っ て行ける手軽さがうけたのであるが、同時にプログラマーに「アドレシング」という概 念を欠落させる結果となった。ニーモニックは直交性が高いのに命令が少ないとか、ス トアとロードがごちゃまぜとか、その後他のCPUの勉強に差し障った人も少なくなかっ たといわれている。  デイジーチェィンを採用し、重要なロジックを周辺LSIに内蔵したことで割り込み関 係の部品を大幅に縮小できたが、それは同時に周辺LSIの汎用性がなくなるということ も意味していた。SDLCをサポートし、将来を約束されたはずのZ80SIOはZ80との組み合 わせ以外に採用されない。8080時代に登場した8251などのアプリケーションが今でも健 在なのを見るにつけ、残念に思われてならない。ザイログもCPUで稼げなくなった現 在、より汎用性を増したZ8000I/FによるLSI、Z8530(SCC)を登場させて挽回を図ってい る。SCCは現在、モトローラの16550と双璧をなす通信プロセッサとして高い評価をうけ ている。  さて、Z80のパソコンでの最後は御存知のとおり、X1turboZIIIである。2.5MHzの ノーマルバージョンを皮切りとして4MHzのAバージョン、6MHzのBバージョン、10MHzの Hバージョン、8MHzのEバージョン(登場順)とバリエーションを増やしていったZ80であ るが、16ビット機の台頭、CPUの速度に対応した周辺がリリースされない、メモリの速 度が思う以上に上がらないなどの理由でついにパソコンへの採用が皆無となった。しか しザイログは完全スタティック動作の20MHz動作バージョンを発表するなど、全く見切 りをつける様子は感じられない。 [2] μPD780(NEC)  PC-8001に採用されることで認知されたZ80。しかしNECはザイログとセカンドソース 契約を締結しておらず、はっきり言ってデッドコピーである。  噂の受け売りなので信憑性に欠けるが、こんな話がある。  NECが互換Z80を開発するにあたって、参考にできたのはスペック表と命令表だけで あったという。著作権の問題から、Z80そのものを直接解析することは避けられた。Z80 が8080の開発チームによるものであるという情報も、独自技術による開発の自信を後押 ししていただろう。NECは8080のセカンドソーサであり、10進補正命令を拡張した 8080AFを発表したりもしている。  しかし、Z80拡張命令に関わる部分の開発は困難を極めた。結局ワイアードロジッ クによる実現をあきらめ、拡張部分についてはマイクロコード化して対応したという。  NECは完成したLSIをザイログに送りつけセカンドソース契約を迫ったが、内部構造の 違いにより断られ、しかも「製造の自粛」を求められた。しかし新しいパソコンに採用 が決っていたため、製造を断行したという。(この辺は記憶があやふや。アンチNEC派の たわごとだと思われるが・・・)  著作権の絡みでいえば、この話が本当であったほうが幸せである。実際にはTTL等は まるっきりのコピー品が横行しており、CPUについても富士通の6809はやはりコピー品 だという。NECも当時のインテルとの関係からすれば正式にザイログと契約できるかど うか、しかも開発期間から考慮してTK80BS COMPO発売時点でZ80採用が決っていただろ うし(PETを触ったTK80ユーザならばZ80採用を強力に叫ぶだろう)、ザイログから買えな いとなればコピーしか手は残っていない。  なお、μPD780はZ80完全互換ということなので、カタログ上の違いや機能アップなど の点はない。 [3] NSC800(ナショナルセミコンダクタ)  NSといえば16032であるとか32032などの16/32ビットマイコンで名を馳せたメーカー であるが、もちろん8ビットの製品もある。  NSC800の特徴は次のとおりである。  (1)CMOSプロセス  (2)Z80命令互換  (3)8085インタータフェイス  NMOSプロセスのZ80をCMOS化しようという試みはこれだけではないから、主な開発意 図はここにあったと思われる。NSC800では*PSという端子をアクティブにすることで低 速動作での低消費電力モードに入ることができた。当時のZ80互換チップにはCMOSタイ プでもこのような機能を持ったものはなかった。明らかに電池駆動の用途を睨んでの製 品である。  次のZ80互換は当然として、問題は(3)のインターフェイス方法である。後で述べる 64180が登場当初は68系I/Fを採用していたのと好対称である。  まず、ピン配列が8085と酷似している。アドレスバスのA0〜7とデータバスのD0〜7が マルチプレクスされていて、丁度8086のようである。バスインターフェイスの信号も 8085と同じ信号が出ている。  また、割り込み入力が増えている。これはZ80でいうモード1割り込みが拡張されたも ので、8085には搭載されているものである。しかし、Z80のモード2割り込みもサポート している。これによってZ80周辺LSIの接続も可能になっている。  つまり、8085とZ80のあいのこである。8085にZ80を取り込んだと表現した方が正確だ ろうか。現在はこのCPUの生産・販売は行なわれていないが、総合カタログの最後の ページの登録商標一覧にNSC800がある。  なお、昔のI/Oをあたってみたら、このCPUはキヤノンのX-07というハンドヘルドに採 用された実績があった。得体の知れないCPUの採用に、「このマシンは売れない」と直 感したような記憶がある。  CMOS化されたZ80は他にもLH5080(シャープ)、TMPZ84C00(東芝)がある。 [4]MSXエンジン(東芝)  正確な型版は不明である。MSX向けのカスタムCPUということだけがわかっている。お そらく、MSX特有の周辺LSIを取り込んで製品化されたものと思われる。この辺りの事情 は昔のアスキーをあたれば見つかりそうだが、残念ながら手持ちの資料にアスキーがな い。 [5] Z800(ザイログ)  Z80互換の8/16ビットCPU。旧来のZ80に対して多くの機能アップがある。  (1)Z80命令アッパーコンパチ  (2)MMU内蔵、512K/16MBのメモリ空間  (3)ユーザー・システムの2つのスタックポインタ  (4)8/16ビットデータバス  (5)16ビットタイマ・カウンタ内蔵  (6)DMA,UART内蔵モデル  「Z800?Z8000の間違いじゃないの?」とか、全然聞いたことがないという会員も多い と思う。発表されながら、結局発売されなかったCPUである。この発表が83年4月であ り、Z8000がそのもっと前であったことを考えると、Z800という企画はそれなりに前か らあったと思われる。時期的に見ても非常に先進的であり、登場しなかったのが惜しま れる。  Z800には4種類のファミリーがあって、それぞれMMUの大きさとバス幅で区別される。 16MB MMU搭載チップには4チャンネルDMAとUARTが追加される。また、8ビットバスタイ プはZ80I/F、16ビットバスタイプはZ8000I/Fとなりそれぞれの周辺ハードを活用できる ように設計されている。  拡張された命令としては、HLレジスタの完全アキュムレータ化や乗除算の追加、コプ ロセッサ対応命令、SPリラティブ、HL+IXなどのインデックス命令がある。 [6] HD64180(日立)  拡張Z80の本命ともいうべき、ベストセラーCPU。特徴は以下のとおり。  (1)Z80命令アッパーコンパチ  (2)512K/1M/16MBのMMU内蔵  (3)高速動作  (4)68系バスインターフェース  (5)ASIC(シリアルポート)、タイマ、DMAC内蔵  登場した当初は単なる「高速Z80」として捉えられ、どうにかして自分のパソコンに 搭載できないかと考える人がたくさん現れたが、実際には内部I/Oが0000〜007Fまでを 占めて元々のI/Oとバッティングするのでその調整を起動時にしなくてはならず、容易 ではないと思われる。  64180の命令では、従来構造上動いて当然だった64KI/O,IX・IYの分割使用が公式にサ ポートされた。また、アドレス直接指定のI/O命令ではAレジスタが上位アドレスに現れ るので、内部I/Oアクセス用にAレジスタが影響しないIN0/OUT0命令を追加している。  MMU内蔵も初めてのことである(さきのZ800は商品化されなかったので除外)。Z80用の MMUはジーニックのZEN1101Pがあったが一般的でなく、64180の登場で8ビットで大容量 メモリの時代を予感させるものとなった。  64180には多数のシリーズがあるが、登場時はいわゆるR0マスクと呼ばれる68系バス I/Fのシリーズでスタートした。これはMMUが512KBという仕様の他にいくつかの不具合 を抱えていたので、それを改善すると共にMMUを1MBに拡張したR1マスクがリリースされ た。現在64180RといえばR1マスクだけである。  が、R1マスクでもZ80と互換性のない部分が残ってしまった。なんといっても、割り 込みまわりの動作に互換性がなく、そのままZ80専用周辺LSIが接続できなかった。そこ で、その点について改良を施した64180Zがリリースされた。ただ、Zバージョンでも内 部I/Oにデイジーチェィンが接続されないのでプログラムに注意が必要である。  その後内蔵ペリフェラルを強化した648180W,64180S2やシングルチップ化した641180X ,643180X,647180Xをリリースするなどシリーズの強化に勤めてきたが、93年半ばにMMU を16MBに強化し、内蔵する周辺も強化した64180Fが登場した。これはRTCを内蔵した り、元々あったDRAMリフレッシュをRAS/CASコントロールに変更したりと他のZ80互換 CPUを睨んだ機能アップを図っている。  ザイログは64180シリーズについてセカンドソース契約を行ない、Z64180として商品 化した。その後改良してZ80180シリーズをリリースしているのだが、これは64180Zのセ カンドソース品である。さらに完全スタティック・20MHz動作のZ8S180をリリースして いるところなどは本家の面目躍如といったところである。 [7] Z280(ザイログ)  Z64180とは別のアプローチから生まれた超高機能Z80。Z800の生まれ変わりである。  (1)16MB MMU搭載、仮想記憶もサポート  (2)大幅に拡張された命令  (3)256バイトキャッシュメモリ内蔵  (4)DMA,UART内蔵  (5)特権モード  (6)Z80,Z8000バスを選択して使用  (7)10MHz動作  Z800ではバスの仕様とMMUのサポートサイズによって4つのファミリが存在したが、 Z280ではMMUは16MBのみになりバスは設定ピンによる選択となった。そのMMUは64180と は違い設定によってアクセス時のトラップの発生が可能になっていて、単なるアドレス 変換を超えた真のMMUとなっている。なお64180と違いI/O命令でもMMUが使用でき、I/O アクセスを特権に設定できる。  その他キャッシュメモリや特権モード(スタックポインタやMMUが二重化されている) を備えるなど、規模はともかく最近のMPUの特徴を持っているとろこに先進性が感じら れる。  現行のカタログにも名前があるので製造そのものは中止していないようであるが、ザ イログの主力は後述するZ380へ移行しており、Z80/Z180/Z380というラインアップの表 記に変わっている。こうなった原因はいくつかあるだろうが、最大の原因は「遅い」と いうことである。キャッシュがOFFの時は同クロックの64180より遅いのである。まぁ キャッシュONにすれば数倍の性能が出せるので致命的とは言えないが、それでも256バ イトそこそこのキャッシュでは複雑なプログラムになるとすぐ溢れてしまうだろう。 キャッシュ、仮想記憶、特権モードなど、魅力一杯のCPUだっただけに残念である。 [8] μPD70008A(NEC)  μPD780のCMOS版というのが正しい捉え方であるが、命名法がVシリーズそのまんまな のがおもしろい。私は密かにV10と呼んでいる(V20が70108であるから)。  本当は項を分けるほど特色があるわけではないが、強いて挙げるならQFPモデルがあ ることだろう。東芝のZ84C00は表面実装用のフラットパッケージはSOP(普通のDIPが小 さくなったような形)なので、用途に応じて選択が可能になっている。  このCPUの動作速度はMAX8MHzである。 [9] TMPZ84Cxxx(東芝)  最も売れているZ80マイコンである。市販のボードは大抵東芝製品になってしまっ た。  製品構成は次のとおり。  (1)TMPZ84C01/02・・・CPU + CGC  (2)TMPZ84C011・・・CPU + CGC + CTC + I/O(8bit×5)  (3)TMPZ84C013・・・CPU + CGC + CTC + SIO + ウオッチドッグタイマ  (4)TMPZ84C015・・・CPU + CGC + CTC + SIO + PIO + ウオッチドッグタイマ  (5)TMPZ84C112・・・CPU + 256ByteRAM+ I/O(8bit×2,7bit×1) + フリーランタイマ + クロックジェネレータ  (6)TMPZ84C810・・・CPU + CGC + CTC + SIO + DMA + I/O(8bit×1) + OUTPORT(5bit×1) + ウオッチドッグタイマ + MMU  作り方の方向が日立とは異なるのがおもしろい。日立はもともとザイログのセカンド ソーサではなかったこともあってかCPUコアはもとよりDMA、SIOなどもオリジナルのも のを使用している。それに対して東芝のこのシリーズはできるかぎり本物の周辺LSIを チップ内に取り込む努力がはらわれており、既存プログラムの移植がスムースに行なえ る。但し内部I/Oアドレスは固定である。  CPUコアはRAMの大容量化に伴うリフレッシュアドレスの増加を除けば変更を加えられ ていない。  TMPZ84C810のMMUは2MBである。ただ普通のMMUとは使い方が異なり、論理メモり空間 を2分割した32KBのエリアが上位下位各々32バンクあるという構成となっている。これ はメモリの上位と下位でプログラムとデータに使い分けなければならないためである。 なお命令デコード機能によりスタック関連の操作は固定エリアに対して行なわれるよう になっている。  なおこれらの製品もザイログがセカンドソーサとなっており、Z84C13などの型版で入 手できる。 [10] LZ84xxシリーズ(シャープ)  後述するASIC製品を自社で企画・開発したもの。開発意図はTMPZ84シリーズと同じと 思われる。  (1)LZ8415M・・・CPU+SIO+MMU+カウンタ+割り込みコントローラ+I/O  (2)LZ8420M・・・CPU+512バイトRAM+I/O  ポケコンPC-E200/G800シリーズに搭載のCPUがLZ8413Mという名前なので、このシリー ズの一種であると思われる。なお見ればすぐわかるが、東芝製品と型版が似ていても全 くの別物である。 [11] μPD9002(NEC)  このCPUを覚えている方がどれくらいいらっしゃるだろうか。これは一世を風靡した パソコン、PC-88VAに採用されたCPUである。88といいながらVAは16ビットパソコンで あったが、88という限りは8ビットでないとならない。そういうコンセプトのCPUで ある。  μPD9002は基本的にV30互換のCPUである。V30には8080エミュレーションモードとい うのがあって、登場当時優勢だったCP/M86上で簡単なBIOS/BDOSパラメータコンバータ のようなプログラムを走らせることで多くのCP/M80用プログラムを実行することができ た。9002は同じ原理でZ80エミュレーションモードを装備しているのである。  ただ、このCPUは一般には市販されなかったので、88VAシリーズ以外に採用された実 績がない。データブックを調べても載っていない。従って、ハード的にどの程度互換が あったのかなど詳しいことはわからない。VA4が出ないことになってVAの歴史が途切れ てしまった今では、ほとんど謎である。 [12] R800(アスキー三井物産セミコンダクタ)  MSXturboRのCPUとして有名である。シャープの高速動作Z80CPUコアの発表と同時 期だったのでR800はその応用製品またはそのものではないかと考える人もいたが(かく 言うわたしもその一人)、違うようである。  特徴は、次の通り。  (1)16MB MMU搭載  (2)DRAMコントロール回路内蔵  (3)DMA内蔵  (4)28MHz高速動作  (5)割り込み強化  ALU(CPU内部で実際に計算を行なうところ)バスが16ビットであるためにturboRの宣 伝には16ビットCPU採用と書かれていたが、詐欺のようなものである。実際「何をもっ てCPUのビット数を定めるか」という問題は難しい。8088と68000を共に16ビットと定め るための定義はどこにあるのか。  それはさておき、R800の最大の魅力はその高速性だろう。メーカーが定めるCPUク ロックが外部から入力される28.63636MHzを4分周して得られる7.15909MHzとなっている ところから公称の動作クロックは約7MHzとなっているのだが、実際にはタイムチャート 上では外部のクロックを基準にして動作しているので、28MHz動作と言っても差し支え ないように思う。  DRAMのコントロールはZ80から装備されていた機能ではあるが、これはリフレッシュ のみであって実際のアクセスとは関係がなかった。R800ではRASやCAS端子を装備すると 同時にCASビフォアRASリフレッシュをサポートした。この機能は後発の64180FやZ380に も影響を与えるものである。R800ではそれだけではなくDRAM専用アドレスバスを設けて 外付け回路を省略している。さらにバス解放時には通常のアドレスバスが入力となり、 外部CPUに対して単なるDRAMコントローラとして機能するようにもできている。これは MMUについても同様である。  このように強力なCPUもMSXturboRの不発(ソニーが採用しなかった)や製品への採 用がほとんど皆無であったためにメジャーになることなく製造中止となっている模様で ある。  ちなみに、ニーモニック表記がザイログと異なる表現があるのだがZ80に完全上位互 換である。またかけ算命令があるのだがこのマシンコードはZ280と同じものである(動 作も同じだが2乗となる計算、結果を収納するレジスタを使用する計算は結果を保証さ れていない)。 [13] Z380(ザイログ)  パフォーマンスは32ビット並といえるCPUである。究極のZ80。  (1)25MHz,40MHzの高速動作  (2)32ビットアドレスバス、16ビットデータバス  (3)4バンクのレジスタセット  (4)ネィティブモードと拡張モードの2つのモード  (5)拡張された機能に柔軟に対応する命令セット  (6)DRAMコントロール回路を内蔵  (7)プログラマブルなウェイト挿入  最大の特徴が32ビットアドレスバスであろう。これはMMUではなく、セグメントでも なく、リニアな4Gバイトの空間である。もちろん、プログラムカウンタはFFFFHの次に 10000Hへと桁上がりする。これは拡張モードでの動作でありネイティブモードの時には 0000Hへ戻るのだが、拡張された命令により64Kバイトオーバーのエリアにもアクセスが 可能である。またMMUではないので、I/Oエリアも4Gバイトである。  この「拡張された命令」というのもミソである。Z380ではあまりの拡張のために命令 セット数の増加が懸念された。今までの16ビットアドレスの他に24,32ビットアドレス が加わったのであるから、アドレスが絡む命令(殆どがそうであるが)の数が3倍になっ てしまう。  そこで、ザイログではデコーダ・ディレクティブと呼ぶ一種のプリフィックスを採用 した。IX,IY関係の命令がHL関係の命令の頭にDDH,FDHを付加した形であるのを押し進め たとも言えよう。ネィティブモードでの命令の動作は普通のZ80と同様なので例えば       LD (mn),A        32 n m は従来通りの動作をするのであるが、例えばDDIR IBという命令を付加すると       DDIR IB LD (lmn),A   DD C3 32 n m l となって24ビットアドレスが、そしてDDIR IWを付加すると       DDIR IW LD (klmn),A  FD C3 32 n m l k となって32ビットアドレスが扱えるようになる。  Z80の裏レジスタという考え方は特徴的であったが、Z380ではIX,IYを含めて4バンク のレジスタセットを持つようになった。しかもそれぞれ裏レジスタを持つのであり、さ らにネィティブモードで上位16ビットと下位16ビットを交換するような使い方をすれば さらに倍の16ビットレジスタを持てるのである。最後の使い方は凝りすぎとしても、裏 表と4バンク、BC,DE,HL,IX,IYで計40本のアドレスにもデータにも使える汎用32ビット レジスタというのはあの68000を陵駕するレジスタの量である。なお、Rレジスタは汎用 8ビットレジスタとなり64180のようにリフレッシュレジスタをエミュレートするような ことはない。  リード・ライトサイクルは通常2クロックで行われるが、3つある立ち上がり・立ち下 がりのどこにでもウェィトが挿入できる。  このように革新的と言えるアーキテクチャのCPUであるが、問題がないわけではな い。まず誰もが挙げるのがモードの問題である。Z380は80286のように拡張モードに入 るとリセットしない限りネィティブモードに戻れない。ザイログは拡張モードの時に割 り込みが入ってネィティブで書かれた処理ルーチンに飛び込むようなことを恐れたため と説明している。解決方法はいくらでもあるだけに、惜しまれる。  メモリ空間が4Gもありながら、仮想記憶などのMMU機能が全く提供されていないのも もったいない。現実的にそれだけのメモリを積む人はいないわけで、それならばその空 間を効率良く利用できる機構が必要となるであろう。但し、他品種のMMUを接続すると いう手も残っているが、こちらは未確認である。  MMUの話とつながることであるが、Z280で採用された幾つかの機能が受け継がれてい ない。それはコプロ制御命令とシステム保護機能である。コプロ制御命令は未定義命令 のトラップでなんとかなりそうだが、システム保護機能だけはどうにもならない。しか し、パソコン用CPUへの未練が感じられたZ280とは違いZ380はあくまで組込み用として のメジャーを目指しているので、必ずしもそういった機能は必要としていないかもしれ ない。  総じて、Z380は拡張モードで動かさないと魅力が半減するし、そのためにはZ80とは 少し違うプログラミングスタイルを要求されることから、これまでのZ80からの置き換 えという使い方は難しいと言えるだろう。 [14] KL5C8012(川崎製鉄)  神戸製鋼はトランスピュータボードの開発・販売で画像処理分野における地位を確立 したが、川崎製鉄も負けてはいない。  まずは特徴を挙げてみよう。  (1)10MHz高速動作  (2)512KB MMU内蔵  (3)タイマ、シリアル・パラレルポート内蔵  (4)512バイトの高速RAM内蔵  (5)専用デバッグ端子装備  10MHzのどこが速いのかと思われるかもしれない。このCPUは、なんとほとんどの命令 を1クロックで実行してしまうのである。内部構造は限りなくRISCに近くなっている。 RISC化されたZ80と形容しても差し支えないだろう。比較表にもあるのだが、例えば ADD HL,DEはZ80では11クロック要するところをこのCPUコアであるKC82は1クロックしか 時間がかからない。メモリアクセスもノーウェイトならば1クロックである。平均では 同クロックのZ80の3〜4倍の動作速度となる。メーカー公称では10MHzのKC82は8MHzの Z80の5倍、40MHz相当になるという。  メモリエリアもMMU内蔵で512KBに拡大されている。物理アドレスは1MBなのであるが 出力されているアドレスバスが19本なのでこうなる。  512バイトRAM内蔵というのがワンチップマイコンとしての性格を物語るような感じが するが、こと高速CPUでは話が変わってくる。実際ノーウェイト動作であると55ns動作 のRAMを用意しなければならないが、そんな高速RAMはなかなかないしあっても超高価で ある。この内蔵RAMはノーウェイト動作保証なので(容量は小さいし最上位のアドレスに 固定されているが)性能維持に一役買っている。  最も特徴とされるのが専用デバッグ端子である。これはシリアルポートになってい て、モニターするパソコンとCPUの間にバグファインダと呼ぶ専用のアダプタを取り付 けるだけでICEに迫るデバッグ環境が完成する。モニターからのコントロールにより、 2箇所まで設定できるブレークポイントとトリガ条件により任意の場所でCPUを止めてメ モリの内容、レジスタの内容、逆アセンブルなどが参照できる。ROMデバッグと異なり CPU内部からのコントロールなので単なるトレース以上の情報が得られる。またリモー トデバッグのようにターゲットにあらかじめデバッガを載せる必要がなく、プログラム の最初でバグファインダモードに入るようにしておきモード設定端子を切り変えれば使 用可能になる。Z80が本来持つ割り込みやメモり、レジスタ、信号などは一切使用しな いので、NMIなどのデバッガでは検証が難しい機能にも対応し資源を食わない。ICEの 10分の1程度の値段なので(個人ベースでも買えなくもない)安価にシステムを組める。  もちろんICEも横河電気が対応する製品を出荷するので両方の選択が可能である。  このCPUは生い立ちが他のメーカーと異なっている。シャープにしてもNECにしても 先にCPUの製品があってその応用としてASIC(後述)製品が現れて来たのだが、こちらは まずASICの製品展開があってその一環でCPU製品が生まれてきたのである。川崎製鉄と してはASICでのソフト開発が念頭にあったためにバグファインダという製品が登場した のであるし、ICEにおいても変換基板だけで対応できるようになっている。  このCPUについてはボードコンピュータメーカーが早くから目をつけており、 田中電子(043-258-1116)とユニテク電子(0255-74-4124)からCPUボードが発売されてい る。  最後に難点だけは挙げておこう。内蔵周辺機能はインテル系とコンパチである。従っ てディジーチェインには対応していない。もちろんRETIによって割り込みシーケンスの 終了を認知するように改良されている。そして、内蔵I/Oのアドレスは固定である。ま た、リフレッシュ機能は一切内蔵されていない。外部に持つ必要がある。ちなみにRレ ジスタはカウントアップしつづけるタイプである。  ザイログは技術供与を受けており、セカンドソースを発売する可能性がある。実際、 ザイログ内でもZ380とKL5C8012の支持で意見が分かれているという。  川崎製鉄では廉価版として周辺機能を絞ったもの等2品種を94年度中に開発する予定で ある。他方、ユーザーからはCPU機能しかないチップの要望が高く、これについても今後 検討するとのことである。 [15] ASIC用CPUコア  ASICとはApplication Specific ICの略である。パーツ店の店頭で購入するようなIC が市場の動向を見極め需要を予測しながらメーカーサイドで企画して設計・製造するの に対して、ASICは先に顧客の要求があって初めて設計し、少量しか生産しないものであ る。普通のICの設計がいわゆるトランジスタレベルでの設計なので開発費用は莫大なも のとなる。これをメーカーでは大量生産でしのいでいるのだが、汎用向けの設計だけに 余分な機能や足らない部分が生じる場合がある。そこでマクロセルと呼ぶ論理回路の 「部品」を使用してオーダーメイドのICを設計することで開発費を安く抑え、製造のロ スを補う手法が開発されたのである。マクロセル自体メーカーによる既製品であるため に無駄が多く必然的に集積度が下がってしまうのであるが、開発はTTLを組み合わせて 設計する普通の回路設計と同じレベルになるため非常に易しくなり専門職でなくとも設 計できるほどである。これによりメーカーはASICの設計を請け負うだけでなく顧客から の回路をLSIに起こすという「下請け」的な業務も行なうようになっている。  現在ASICの部品としてZ80CPUコアを供給しているのはシャープ、NEC、川崎製鉄であ る。'93年のエレクトロニクスショー当時の資料では東芝も同様の製品を供給していた が、'94年4月の資料では見あたらないところを見ると、Z80ASICから撤退したもようで ある(但しこういう製品は強く要求すれば供給してもらえる)。  シャープはCPUコア内蔵ゲートアレイとセルベースICにてZ80CPUコアを提供してい る。最高動作周波数は8MHzとなっている(昔アナウンスされた27MHz動作のCPUコアが姿 を消している)。  NECはセルベースICでZ80CPUコアを供給している。但し、セカンドソーサでない弱み か同時に内蔵できるペリフェラルにZ80周辺が存在しない。  川崎製鉄は全てのASICでZ80CPUコアを供給できる。但し周辺はNECと同じ状況であ る。  なお、きりがないので各ASICのシリーズの詳細は割愛させて頂く。搭載可能ゲート数 など詳しいことはメーカーに問い合わせていただきたい。  以上、Z80の過去と現在を追ってみた。HD64180登場以後、「枯れた技術」ゆえの優位 さによって思いもかけない変貌を遂げたCPUであるが、果たしてあなたの目に将来は安 泰と見えたであろうか、それとも不安に映っただろうか。  CPUそのものの主力は32bitやRISCに移っている。他方で、組み込み用途の4bitチップ にまだ充分な需要がある。汎用から特殊用途へ、他にはない転身を図ったZ80の身の置 き所は今どこにあるのだろうか。