電子少年 た~さまの自叙伝・第9回 ~もう一度挑戦!16bitワンボードマイコン~

時々日記に登場する『自叙伝』シリーズ。私、た~さまの電子工作人間へ至るお話しなのです。
この辺りまで来るとマニアックすぎて、果たしてこの日記を楽しみにしている人もいるのか分らないけれど、とりあえずもう少し続けてみます。

https://…/2010/02/23/ 電子少年 た~さまの自叙伝・第1回 ~小学生高学年の出会い~
https://…/2010/09/11/ 電子少年 た~さまの自叙伝・第2回 ~一つ知れば十の疑問~
https://…/2010/09/14/ 電子少年 た~さまの自叙伝・第3回 ~私にでもできるのでは(?)(?)~
https://…/2010/10/19/ 電子少年 た~さまの自叙伝・第4回 ~趣味はマイクロプロセッサ!(?)~
https://…/2010/12/27/ 電子少年 た~さまの自叙伝・第5回 ~ついに動いた!自分設計のワンボードマイコン~
https://…/2011/01/05/ 電子少年 た~さまの自叙伝・第6回 ~高校での友人~
https://…/2011/01/20/ 電子少年 た~さまの自叙伝・第7回 ~コピープロテクトって面白い!~
https://…/2011/03/15/ 電子少年 た~さまの自叙伝・第8回 ~時代は16ビット~
https://…/2011/02/07/ 電子少年 た~さまの自叙伝番外編#1 ~アセンブラに限界を感じる~
https://…/2011/03/04/ 電子少年 た~さまの自叙伝番外編#2 ~懐かしいフロッピーディスク~

シャープ製のパソコン・X68000で触ることになったモトローラ製16ビットマイクロプロセッサ・MC68000。ソフト的に触れば触るほど練り込まれた仕様に感動しています。
そして、やはり自分の手でコイツを操ってみたい自分で一から回路を作って動かしてみたい! そんな興味が沸いてくるのです。

f:id:vfr750f2:20110131191251j:plain f:id:vfr750f2:20110131191252j:plain
・モトローラMC68000 ユーザーズマニュアル ・日立製作所68000シリーズ マイクロプロセッサ データブック

さっそく取り寄せた半導体データブック。(データブックは日立製のほうが入手しやすかった・・・・日立はセカンドソーサとして同じ物を製造していた。)
前回自作した8ビットマイクロプロセッサ・Z80の時は、データバス8ビット/アドレスバス16ビットでしたが、16ビットマイクロプロセッサ・MC68000になると、データバス16ビット/アドレスバス24ビット倍増。それだけプロセッサの信号ピンが増えるので、パッケージサイズも大きくなり、配線の手間も増大です。
メモリや周辺回路へのアクセスも、偶数アドレス8ビットと奇数アドレス8ビットが同時に行われるため、メモリも2つ用意してあげなければなりません。単純に考えて、8ビットプロセッサの2つ分を回路側で用意しなければならないのです。


バスの考え方も、Z80の時は『プロセッサはクロックに従って動くから、周辺回路もそれに併せて動け!(もしくは待ってくれ信号を返せ)』的なタカビーでしたが、MC68000の場合は『プロセッサはクロックに従って動くけど、周辺回路は都度準備ができたよ信号を返してね! それまで待つから!』的でフレンドリー・・・・と異なっています。

f:id:vfr750f2:20110402214111j:plain
・各信号の許容動作タイミングを表した図 Z80系とはちょっと違う考え方です

当然回路も考え直さなければなりません。


まだインターネットはメジャーではない頃。
サッと調べる手段は無く、いくつか技術書を買っては熟読し、バス周りの設計を参考に、そしてシンプルに練り直します。

f:id:vfr750f2:20110402214110j:plain
・自分のためになる本を見つけては読み漁ります
 註:結果的に手元にある本だけれど、68kの設計時に参考にしたのかどうか、時系列詳細は不明です。 
  • HARDWARE BOOKS・68000システム製作全科(上) ~CPUの詳細から、OS‐9移植開始まで~
  • トランジスタ技術SP 特集 ディジタル回路ノイズ対策技術のすべて
  • トランジスタ技術SP 特集 最新マイコン・メモリ・システム設計法
  • トランジスタ技術SP 特集 68000ソフト&ハードのすべて
  • トランジスタ技術SP 特集 実用電子回路設計マニュアル2

クロック周波数もZ80自作時の2MHzから、16MHzに大幅アップ。ノイズも無視できなくなり、これもお勉強。


そして、全体の回路デザインを決めました。

項目仕様
プロセッサMC68000のCMOS版 MC68HC000P-16(16MHz駆動)(DIP型)
メモリROM 64kバイト 256kビットUV-EPROM×2 27C256G-25(アクセスタイム 250nS)(偶数、奇数アドレス用)
メモリRAM 64kバイト 256kビットS-RAM×2 62256ALP-8(アクセスタイム 85nS)(偶数、奇数アドレス用)
IOポート入力16ビット(3ステートバッファ)、出力16ビット(ラッチ回路)
拡張性外部機器接続用の拡張コネクタを用意
その他可能な限りCMOS版ICを使用して、低消費電力化を狙う

ずいぶんバランスの悪い仕様だな・・・・(泣)
これだけ高性能なプロセッサだというのに、メモリがたった64kって・・・・。まあとりあえず動かすという目標のため、その辺は割り切りました。
以前なら仕様とか全て手書きで・・・・だったのですが、この頃になるとパソコン上で電子データで編集・作成し、プリントアウトする作戦です。


当時の資料が一冊のクリアファイルにまとめて残してありました。

f:id:vfr750f2:20110403114041j:plain
・自作する68000ワンボードマイコンの仕様書(の一部) LaTeXで作成

今振り返って読むと、ちょっと小恥ずかしいなぁ・・・・
こういった電子データで文書を作成すると、将来そのソフトがなくなると読み出せなくなる・・・・。そこで、現在のhtmlのようにテキストエディタで文章を作る『LaTex』を選定するなど、いろいろ苦労していましたが、電子データが記録されていたハードディスクそのものを読み出すことが出来ない時代になり、ロストしました。


そして、プリントアウトも、この当時レーザープリンタなんてあるわけもなく、インクジェットだって存在しない。感熱式/熱転写式プリンタ。インクは高すぎて勿体無いので感熱紙を使って印刷していましたが・・・・

f:id:vfr750f2:20110403114042j:plain
・ブロックダイヤグラム ほとんど文字が消えてしまっていて辛うじて何か印字されているのが判る程度

文字がほとんど消えているページもあります(泣)


対して、電子データにする前の手書きのスケッチは、今もしっかりと残っています。

f:id:vfr750f2:20110403114043j:plain
・回路設計中のスケッチ  大量のゲート回路が必要になってきました

う~む・・・・手書きのスケッチを書きながらちょっと考えただけでも論理が複雑になってしまい、論理ゲート回路が大量になってしまいます。フリップフロップもアチコチにあるから、きっとメモリアクセス要求を保持しておいて、数クロック後にデータ準備完了信号を返すようにしたのかなあ(?)(?)(?)(今更思い出せるわけが無い!)
8ビットZ80の頃は、せいぜいアドレスデコーダーだけだったのですが、MC68000だと周辺も大変!

f:id:vfr750f2:20110403114048j:plain
・ストックしてある標準ゲートICたち いろんなメーカーのが混ざっていますが、すべて型番が一緒なら仕様が一緒なのです

コレだけのゲートを74シリーズの標準論理ゲートICだけでこなすのは面積も増えるし配線も大変になっちゃうから、世の中では一つのICの中に自由に論理ゲートを書き込むことで作成できる『PAL』や『GAL』といった素子が登場しているのですが、私の財力ではそんな書き込み機材をそろえることが不可能!
標準ゲートICだけで行くことに決定!


なるべくゲート段数を減らすために論理圧縮。さらに使用するICは一つの中に数個のゲートが内蔵されているので、ゲートの種類によって余ったり足りなくなってきたりするので、論理変換して何とか数を合わせる・・・・
そうやって回路を最適化していき、最終的な設計に落とし、電子データで格好よく回路図にします。
(この辺りのページは印刷が濃く残っていました。)

f:id:vfr750f2:20110403114044j:plain
・スーパバイザ・メモリデコーダ/タイミング生成(DTACK・バスエラー) 周辺回路図

最後にもう一度タイミング計算。ゲート回路といえども遅延が無視できず、さらに低消費電力なCMOSで回路を構成するとなると・・・・CMOS4000シリーズ(遅延時間 65 nS)では遅すぎてダメ。74シリーズの『HCファミリ(High-speed CMOS)』(遅延時間 23 nS)でも速度が微妙で、更なる改善型『ACファミリ(Advanced CMOS)』(遅延時間 8.5 nS)にします。値段が倍するけれど、もともとのIC一つの単価が\30円ぐらいだから、まぁいいでしょ!
数ページにわたる回路図を元に、使用するICを決定し、そしてなるべく配線距離が短く、それぞれが交差しないように部品配置を決定します。


いままでは、アートワーク製作と合わせてレタリングで一発手作業だったのですが、プリント板のデザインやアートワークの作成は、もはや従来の紙と鉛筆&レタリングでは不可能・・・・。X68000上のドローイングソフト(今で言うVISIOみたいなものね。)で行い、プリントアウトすることに。


いままで使ったことがある両面ポジ感光基板 33KR(1.6x100x150mm)の面積が倍のサイズ、34KR(1.6x150x200mm)を選定。史上最大のサイズでの製作となります。

f:id:vfr750f2:20110403114045j:plain
・仮部品配置

ココからは、回路図とにらめっこしながら、あーでもない、こーでもないと、画面上でICの各ピンを結ぶ線を描いていきます。
既にデータはロストしているし、X68000自体も無くなってしまったのですが、画面のハードコピーを1枚だけ印刷してありました。

f:id:vfr750f2:20110403114046j:plain
・アートワーク作成中の雰囲気 ErayDraw / SX-WINDOW on X68000

しかし今更なのですがこの構想、68000プロセッサ自体の価格が下がらないことには学生の私には実現不可能・・・・


単体で数万円もしていた68000プロセッサ、やがてじわじわ値が下がり、バイト一日分の\3,000円で購入する事ができる日がやってきました。


さあ、もう一度夢に向かって製作開始です!

https://…/2011/10/29/ 電子少年 た~さまの自叙伝・第10回 ~ついに16ビットマイクロプロセッサ!~