2019年4月28日日曜日

AKI-80 CPM box の 製作 (2)

 
先回(AKI-80 CPM box 製作 (1))にひきつづき、、、、

 当初、先回ご紹介したコントロールロジックをGALにまとめてしまおうと考え、GAL16V8をELMさんの書き込みプログラム、FGAL.EXEを使ってトライしてみましたが、RS-FFがうまくいかず失敗しました。

 そこで、フリーの書き込みプログラムWinCUPLとGAL22V10Dの組み合わせでなんとかうまくいきました。

 参考のため、PLDファイルを挙げておきますがなにせ素人の事ゆえおかしな点はご容赦、、、、



 下図、配線図にあるGAL22V10Dのピンの符号は配線用のためPLDファイルとは微妙に表現は違いますが、位置は対応しています。













 

















 改めて配線図(配線絵?)を並べてみました。

 左上は、メモリとGAL関連ですが、ROMはAKI-80ボード上にあり、ROM CE(20ピン)はすでにCN1 14ピンに配線してありますので、ユニバーサル基板上のCN4 1ピンに配線するのみです。


 RAMは秋月で M68AF127B(55nS) をもとめ使いました。この128kB のメモリは安価(5個で¥400)でよいのですが、SOP-32 なのと+5V専用で、+3.3Vが使えないのが難です。

 左写真のように超薄型1.27mmピッチDIP化基板をハサミで切って使うと便利です。

 右上は、CFカードIDEで、配線するのは赤線で囲った、アドレスバス(A0 A1 A2)、データバス(D0--D7)、およびコントロール線で、/CSCFのみGALからです。もちろん+5V、GND、プルアップ抵抗、表示LEDなどは予め配線してあるものとします。

 左下はPCとの接続部で、とりあえずはポートAのみをRS232C-USB変換のCH340のサブボードを使いました。また、+5Vの電源もここから供給しています。




 これに関連して、回路図右下のAKI-80ボードのCN3 22ピンを CN2 3,6,15,18ピンに接続しておいてください。


 リセットスイッチはCN1 7ピンに1kΩの抵抗を介してGNDとの間に入れればいいと思います。


 いよいよ出来上がりです。全体のイメージは左写真以降です。

  













 CFカードホルダーの上にあるサブボードには、LEDインジケータ(左から電源ON、メモリバンク全RAM、CFカードアクセスの3個)とリセットスイッチそしてシリアル接続選択ジャンパがあります。
 次回はソフト関連です。

2019年4月27日土曜日

AKI-80 CPM box の 製作 (1)

 久しぶりの電子工作です。

 ここのところずっとZ80マイコンに取り組んでいましたが、過日のブログでご紹介したように、私の Z80 SBC に CP/M-80 を搭載できたことで一段落していました。

 しかしながら、ブログ「Z80 SBCへの CPM 搭載(3」の最後に述べているように、やはりこの分野のお手本である、Grant Searle さんの「CP/M on breadboardシステムがずっと気になっていました。

 最も興味のある部分は、CP/M のディスク・ドライブです。とは言ってもCFカードを使用しての話ですが、1セクターの512バイトをすべて使い、ドライブ容量が約8MBで、なおかつ A: から P: までの16台も搭載されているのですから。

 というわけで、ある意味非常に洗練されたその回路図を幾度と無く眺めているうちにハッと気がつきました。これは AKI-80 そのものだ!!!(右写真)

 AKI-80 というのは秋月電子の超ロングセラーのマイコンボードで、メインチップは東芝製のZ84C015BF-12です。

 このチップは Z80CPU、Z80PIO、Z80CTC、Z80SIO、Z80CGC などを搭載した複合ICなのです。しかも大きさはxcm と小さく使いやすくなっています。
 性能面では、前述の5個のチップはいづれも12 MHz の高速タイプのC-MOSで、個々に購入したいにもそのようなものは存在しません(CPU 以外では)、チップ間の配線も不要です。そのうえ廉価ですが、保守部品となっていますので、私はボードのみをいくつかストックしています。

 この AKI-80 ボードをつかって Grant Searle さんのCP/M on breadboardシステムを移植したのが今回の「 AKI-80 CP/M box 」なのです。 
 冒頭の写真に見られるように、手のひらサイズの秋月ポリカBOXに収納されており、USB ケーブルで PC と接続するだけ(電源PCから)で本体には赤いリセットボタンがひとつのみと言う、きわめてシンプルで使い心地のよいスタイルです。

 左は秋月の片面ガラスコンポジット・ユニバーサル基板(95 X 72mm)に主なパーツをマウントしたものです。  AKI-80 は CN1 ~ CN4 のコネクタで接続されます。(向きは右上写真と同じ、コネクタは必要なもののみ)

 CFカードホルダーは小型化のため、自作です。「Z80 SBCへの CPM 搭載(2」を参照ください。


 いよいよ製作にはいっていきますが、最初に AKI-80 に手を加え、改造します。(右)

① 最初、ROM用28ピンソケットを取り付ける前に、VHC00 の8ピンに接続しているプリントパターンをカッターナイフで切断します。

② VHC00 の8ピンを14ピンに接続します。

③ ROM用28ピンソケットを取り付ける前に1ピン、20ピン、22ピンを外側に折り曲げ、右下写真のように基板から絶縁しておきます。
 そして28ピンソケットを取り付けた後、1ピンを基板CN1の4ピン(GND)に接続。

④ ROM用28ピンソケットの20ピンを基板CN1の14ピンに接続。
⑤ ROM用28ピンソケットの22ピンを基板CN4の1ピンに接続。

前述の①、②はAKI-80 基板に予めマウントしてある32kB RAM を不作動にするためで、いっそのこと最初からRAM を除去しておいてもいいです。(猛者は128kB RAM に載せ換え?!)

  AKI-80 は左図のように多くの接続端子がありますが、これらすべてに接続ピンをつけるのも大変なので、私は必要なものだけにピンを立てています。
 次いで、ユニバーサル基板の配線に移ります。
  
 先ずは配線図を示します。
 
 リセットがかかると、RS-FFのPA0がLになります。このときはアドレス 0000H-3FFFH でROM、4000H-FFFFH でRAMが選択されますが、IOポート 38Hを使うと(RD、WR どちらでもよい)PA0がHとなり、0000H-FFFFHの64kB 全域がRAMとなります。

 またこの回路は 0000H-3FFFH のROM選択時でも 0000H-3FFFH のRAMに書込みができ、実用的には大変便利で、私は好んで用いています。(HEXファイルを 0100H から書き込み、CP/MのSAVEコマンドで.COMファイルを作る、など)
 右下に赤く囲ってあるのはCFカード・インターフェースのCS信号作成ロジックです。

 今回はこの部分にGAL( 22V10D )を使いますので回路はもっと簡単になります。

 、、、、ということで、以降は次回