My Digital Museum
 

■ MY COMPUTER 紀元前(1973年頃)

時間計算専用の電卓

70年代のはじめ、マイコンの元祖Intel社の4004の噂はあったものの、アマチュアの 手中にあったのは、まだTI社のTTL位でした。汎用コンピュータは無理でも電卓なら作 れるだろうと、チャレンジしたのがこれです。当時電卓は全盛期でしたが、時間計算の できるものは見あたりませんでした。


本機は、TTL(SSI,MSI) を約150個使用し、ケースから基板まで全部自作しました。回路はすべてワイヤードロジックです。電源部は、5Vでロジック部に4A、表示部に2Aを 要しました。スイッチングレギュレータはまだ高価であったため、シリーズレギュレータ 方式です。写真でご覧のようにケースの後の半分が電源部となってしまいました。 ハンダ付けの箇所は、5,000点以上ありました。


少々凝って「60進法の24時間制」として設計したためオーバーフローは"明日"、アンダーフローは"昨日"として答えがでました。その他、設定しておいたマージンデータ を自動的に計算する機能をもっていました。いまの電卓の消費税の自動計算機能のよ うなものです。数年後にはメーカー製も発売されました。もちろん電池式のスマートなハンデイタイプ であって、このような怪物ではありませんでした。

■ パソコン 紀元前 [CPU編](1975年頃)

LSI-11をコンポーネントとしたマイコンピュータ第一号


 
70年代の半ばは、NECのTK-80に代表されるワンボードマイコンの全盛期でした。ちょうどこの頃ミニコンの傑作と言われ、世界中で人気のあったDEC社のPDP-11シリーズのエントリーマシンがLSI化されワンボードになりました。これがLSI-11シリーズの始まりです。


CPUとメモリ8Kそれに、割り込みやDMAを含むバスの制御ロジックがワンボードに載って いました。あとは、シリアルインタフェースを追加し、コンソール用にTTYを用意すれば紙テープベースのコンピュータの出来上がりというわけです。この基本システムだけでも、紙テープのアセンブラやダートマスBASIC等が走りました。LSI-11ではPDP-11のUNIBUSを簡略化したLSI-BUSが採用され、後にはQ-BUSと呼ばれ各社から、多種多様なオプションカードが発売されました。


当時の自作マイコンファンの悩みは、コンソールのTTY...なにしろ約70万円というしろも の。ファミリーカー一台分でした。しかも騒音は70ホーン。だれもが我が家に 持ち込めるものではありませんでした。写真のパネル面の文字 "AMT"は、二人の息子と自分の名前の頭文字を、続く11/03は DECの型番をそのまま借用しました。なお、DECでは上位機種の11/23シリーズ、さらにはVAX-11シリーズまで多様な品揃えでした。

 

■ パソコン 紀元前 [コンソール端末編](1976-77年頃)

CRTディスプレイにPTR,PTPを組み合わせた、TTYコンパチプル端末

右手前が紙テープリーダー(PTR)、その後ろがパンチャー(PTP)。東京まで買い出しに行って見つけたRICHO製のリースバック品、値段は両方で3万円也。全体の制御ロジックは、CRT右側のボックス内に収納、大型のカード3枚に約150個のICを組み込んだ。UART,ROM以外はSSI,MSIを使用したワイヤードロジックです。
 
CRTモニターは、当初テレビ用を使用したため横幅 ANK50文字(約300dot)が限度でした。そこで、一行に50文字以上入力すると、横方向に自動的にスクロールするように制御しました。このため、アセンブラのコメントフィールドもきちんと納まりました。なお、PTRは最大約100字/秒、PTPは約25字/秒で動作
しました。これでTTYの10字/秒が、とんでも なく遅く感じました。しかし欠点はハードコピーな取れないこと。しばらくして、EPSONからTP-80, MP-80等 (約20万円、それでも当時としては破格)なプリンタが発売されこれもクリアできました。構想から約一年、我が家でもついにコンピューターが走りだしました。
 

(参考)

RICHOのPTRはパルスモータ式ではなく、クラッチ式でした。つまり常にAC100Vのモータが回転しており、電磁クラッチをオンするとテープが走る仕組みです。クラッチに連続して通電した状態が連続読み取りモードであり100字/秒で読み取れる。逆に一文字毎にクラッチに通電するのが間欠モードであり読み取りスピードは遅いし、クラッチの駆動音もうるさい。プログラムのローディングの時はCPUから待ったなしで読み取り信号が到来するため連続モードでよい。しかし、アセンブラやリンカなどの動作中は時々ストップするため具合が悪い。間欠モードだけに固定してしまえば、パルスモータと同様に制御は比較的簡単です。しかし、大半は連続でよい筈だからこれでは、効率がわるいし、せっかくのスピード性能が生かしきれない。


ベストな方法は、CPUからの読み取りに応じて間欠から連続モードまでを、無段階に自動 的に処理することです。ただし100字/秒で走っていて1文字もオーバーランしないでピタリ と止めなければならない。この条件ではクラッチの通電を止めるタイミングはクリチカルです。これらをハードロジックで制御しましたが、クラッチの通電を切った時のノイズ防止用の 逆方向ダイオードをまともに入れると、応答がなまるため間に合わない位微妙なのです。数十個のICをを使ってこれら一連の制御に挑戦しつつ、機械メカニズムの制御の面白さに感激していました。なお、80字/秒が規格ですが、50Hzのプーリーのまま60Hzの地域で使用したため2割ほどテープ走行が早くなり、その分タイミングマージンはより微妙でした。

■ パソコン 紀元前 [オプションカード編](1978-81年頃)

・8Kバイトメモリカード

リロケータブルアセンブラ、リンカーそれにI/Oモニタ等を走らせるには最低16Kのメモリが必要でした。と、いっても8Kのメモリカードが数十万円する ...結局これも自作しました。8Kから16K、絶対値こそ少ないものの、やはり倍増の威力はとにかく大きかった。今も昔も変わりません、やはりメモリあってのソフトウエアです。

・パラレル I/Oインターフェースカード

次は I/Oカードの製作です(これも購入するとウン十数万円)。これは、前々から計画していた音楽の自動演奏に使うためです。Midi音源はもちろん規格それ自体がまだありませんでした。まず和音演奏ができる楽器から作らなければなりません。詳しくは、Computer Music をご覧ください。

・高速乗除算カード

ソフトウエアによる乗除算はかなり遅い。LSI-11にはオプションの乗除算ROMがありましたが、プログラムのステップで処理するかぎり、目的にもよりますがあまりスピードは期待できそうもありません。

3Dグラフィックスの実験のため、せめて積項の和の程度は、CPUと独立して高速に処理できないものかと思っていました。そのころ、MMI社からちょうど打ってつけのLSIが発売されたことを知って早速実験してみることしました。

製作した乗除算カードとMMI社 74S516のクローズアップ

汎用のTTLシリーズのようなネーミングですが、マイクロプログラムで動作するアキュムレータやレジスタ類をパッケージにしたLSIであり、クロックに同期して、マイクロプログラムを与えてやることで、各種の演算を実行するようになっています。オペランドも同様です。クロックは最高6MHzまで可能であり、この時最も長い演算でも数マイクロ秒で完了します。いずれにしても、汎用CPUのバスに直結して動作させるわけには行きません。

本ボードでは、マトリックスで必要な積項の和の演算など、何種類かのプログラムを、適当にみつくろってパイポーラのヒューズROMに焼いておき、オペランドはCPU経由でバイポーラのFIFOに必要なだけストアーしてしまってから、演算実行コマンドを出すようにコントロールしました。演算は数マイクロ秒で終了するため、終了フラグをチェックするまでもなく、すぐに読みだしてかまわいませんがオーバーフロー等のエラーチェックのためにステイタスフラグを読むようなものです。本来ならこんな時は割り込みがかかるようにすべきですが、基板上のスペースが一杯で回路をどうやりくりしても、どうにもなりませんでした。今ならプログラマブルロジックの出番でしょう。

LSIの上面はアルミのラジエーターが付いています。写真はモノクロですが、この色がちょっとシャレていてブルーの放熱器です。電力消費はかなりのもので指を触れると火傷する位熱い。やむなく、基板の側面方向に小型のファンを取り付け空冷にしました。

■ パソコン 紀元前 [3Dグラフィックス・プロセッサ編](1982年頃)

トムソンEF9365を使用したグラフィックスプロセッサ

80年代に入ると、NECのμPD7220をはじめとする、いままでソフトウエアのステップで処理していたCRTラスタ上のグラフィックスを高速に処理する汎用LSIが出現しました。いわゆるキャラクタ表示のためのCRTCに次ぐ第二世代のコントローラです。


本機では、入手が早かったことから、トムソンのEF9365を使用しました。このLSIはラスタ625本のPAL方式専用でしたが、ベクタゼネレータ部分のみを使用し、表示部分には一般的なCRTCを用いて、NTSCのモニタに表示できるようにしました。このようにするこ とで、さらに描画と表示期間をサイクルスチールすることができ動作スピードをさらに高速化することができました。なお、しばらくしてPAL, NTSCの方式を切り替えられるタイプEF9367も発売になりました。


主な特徴は以下の通りです。

  1. 1.コントローラに Z80を用いてインテリジェント化し、コマンドによって各種の描画ファンクションを実行できるようにしたこと。例えば、3次元座標の2点間を結ぶラインの描画(透視変換、ビューポート変換)等、かなり高度な機能までをコマンド化してあることなどです。

  2. 2.追加コマンドを上位CPUからダウンロードし、実行できる機能を設けたこと。

  3. 3.上位CPUからのコマンドバッファーとしてバイポーラのFIFOを設け描画中であっても、次の コマンドを受信出来るようにしたこと。

  4. 4.ビデオメモリを2組み用意し、描画と表示を順次スイッチングするようにし高速アニュメーションに対応できるようにしたこと。

 

グラフィックスプロセッサの外観

本機の製作目的は、3Dグラフィックスでした。ただし画質の追求ではなくて、リアルタイムのインタラクティブなアニメーションを目標にしました。


ホストのCPU LSI-11のスピードだけではとても追い付きません。 そこで、 ハードウエアの高速乗除算カードを追加し、CPUと平行して マトリックスの演算処理をできるようにしました。また本機もCPUを積んでおり独立して動作します。これらを3段のパイプラインで流すことによって、設計上の最大値では、100本位の3Dベクトルの図形が10フレーム/秒でリフレッツシュできる見込みが立っていました。ショートベクトルのみならば更に高速です。


テスト的に、四角い立方体をワイヤーフレームのモデルとして作り、キーボードからの指示でインタラクティブに反応するようなソフトを作って試してみましたが、左右に方向を変えたり自由に回転したりできました。ただし、残念ながら立体画像のモデリングのソフトまでは手付かずで、処理スピードの限界を試すことまでは出来ませんでした。簡単なフライトシュユレータ位は実現出来たかもしれません。


(参考)

当時、雑誌の広告でよくみかけた有名なE&S社のマシーンに魅せられて、このアマチュア版 にトライしてみたかったのです。