HD64180Compact(その1)構想 [Z80]
X(旧Twitter)のタイムラインで日立製の Z80 系 CPU である HD64B180ROP が共立エレショップさんで販売されていることを知り2個確保できました。
パッケージは 64 ピンのシュリンク DIP なので秋月さんからシュリンク DIP のソケットと 1.778mm ピッチの汎用基板を購入しました。
かなり前に 旧Twitter のタイムラインで HD64180 はハーフピッチの汎用基板に斜めに刺さるという情報を見た覚えがあります。しかし、今回購入した基板には逆に通常の DIP IC を斜めに刺すことができます。PIC を使って使用 IC 数を少なくすれば 大きな HD64180 をきれいに収めた方が作り易いと思ったからです。秋月さんでは通常ピッチとシュリンクピッチが縦横で混在している汎用基板も販売していますが最大でC基板サイズなので HD64180 を搭載するには残念ながら小さすぎます。
今回開発するワンボードを HD64180Compact と命名します。使用 IC 数を最小限にするように設計したいと考えていて、CPU 以外の IC としては SRAM と USB 機能を有した 20 ピンの PIC(PIC18F14K50)の3チップ構成にする予定です。以前に同様の構成でほぼ Z80 のチップサイズの CP/M が動くワンボードマイコンの Z80PicCompact を開発しましたが、今回は下記の課題についても対処したいと思います(まったく同じ仕掛けではつまらないですからね)。
下表に Z80PicCompact での PIC のピンアサインを再掲します。
HD46180ROP には RTS0/ のような Z80 にはなかった出力ピンがあるので、これを PIC アクセス用のコントロール信号として利用することで PIC を I/O アクセスする時のみ、 IORQ/ で wait 状態になるようにします。
初めに考案したトランジスタを使った回路をシミュレータで検証してみました。CNT がコントロール信号です。
想定通り CNT が low の時は WAIT/ はマスクされ、CNT が high の時に IORQ/ により、WAIT/ がアクティブになります。しかし、WAIT/ の low レベルが 0.8V 程度であり、HD64180 の規格である 0.8V 以下に対してマージンがありません。
下図はベースとエミッタの抵抗を小さくした場合のシミュレーション結果です。今度は WAIT/ の low レベルは規格を満たせていますね。
別の案としてショットキーバリアダイオードを使った OR 回路構成の案もシミュレートしてみました。これも WAIT/ 信号の low レベルが高すぎますね。
プルダウン抵抗の値を小さくしてシミュレートした結果が下図です。これなら行けそうですね。
部品数から考えてまずはショットキー案2で行こうかと思います。PIC の RB7 が抵抗を介して R2 へ接続することになるかと思います。
今回はプライオリティを下げて気が向いた時に開発を進める予定なので進捗はゆっくりになりそうです。
[TOP] [ 前へ ] 連載記事一覧 [ 次へ ]
入手した HD46B180ROP |
|
パッケージは 64 ピンのシュリンク DIP なので秋月さんからシュリンク DIP のソケットと 1.778mm ピッチの汎用基板を購入しました。
HD64180 と汎用基板とソケット |
|
かなり前に 旧Twitter のタイムラインで HD64180 はハーフピッチの汎用基板に斜めに刺さるという情報を見た覚えがあります。しかし、今回購入した基板には逆に通常の DIP IC を斜めに刺すことができます。PIC を使って使用 IC 数を少なくすれば 大きな HD64180 をきれいに収めた方が作り易いと思ったからです。秋月さんでは通常ピッチとシュリンクピッチが縦横で混在している汎用基板も販売していますが最大でC基板サイズなので HD64180 を搭載するには残念ながら小さすぎます。
今回開発するワンボードを HD64180Compact と命名します。使用 IC 数を最小限にするように設計したいと考えていて、CPU 以外の IC としては SRAM と USB 機能を有した 20 ピンの PIC(PIC18F14K50)の3チップ構成にする予定です。以前に同様の構成でほぼ Z80 のチップサイズの CP/M が動くワンボードマイコンの Z80PicCompact を開発しましたが、今回は下記の課題についても対処したいと思います(まったく同じ仕掛けではつまらないですからね)。
- I/O の拡張性
Z80PicCompact では I/O 空間に PIC だけを配置していて、PIC はアドレスの A0 だけを見ており、コマンド/データのポートの識別に A0 を使っていたので I/O 空間に空きがなかった
- 割込み対応
Z80 は IORQ/ をアクティブにすると自動的に wait するようにしていたので割込み(Z80PicCompactでは未使用)時に wait してしまうので PIC が割込みの都度 wait を解除する必要がある
下表に Z80PicCompact での PIC のピンアサインを再掲します。
Z80PicCompactのピンアサイン |
|
HD46180ROP には RTS0/ のような Z80 にはなかった出力ピンがあるので、これを PIC アクセス用のコントロール信号として利用することで PIC を I/O アクセスする時のみ、 IORQ/ で wait 状態になるようにします。
初めに考案したトランジスタを使った回路をシミュレータで検証してみました。CNT がコントロール信号です。
想定通り CNT が low の時は WAIT/ はマスクされ、CNT が high の時に IORQ/ により、WAIT/ がアクティブになります。しかし、WAIT/ の low レベルが 0.8V 程度であり、HD64180 の規格である 0.8V 以下に対してマージンがありません。
トランジスタ案1 |
|
下図はベースとエミッタの抵抗を小さくした場合のシミュレーション結果です。今度は WAIT/ の low レベルは規格を満たせていますね。
トランジスタ案2 |
|
別の案としてショットキーバリアダイオードを使った OR 回路構成の案もシミュレートしてみました。これも WAIT/ 信号の low レベルが高すぎますね。
ショットキー案1 |
|
プルダウン抵抗の値を小さくしてシミュレートした結果が下図です。これなら行けそうですね。
ショットキー案2 |
|
部品数から考えてまずはショットキー案2で行こうかと思います。PIC の RB7 が抵抗を介して R2 へ接続することになるかと思います。
今回はプライオリティを下げて気が向いた時に開発を進める予定なので進捗はゆっくりになりそうです。
[TOP] [ 前へ ] 連載記事一覧 [ 次へ ]
コメント 0