まごころせいじつ堂

浜町庄金 研究開発  マイコンで遊んでばっかりで

SBC6800

PLDR6502:SBC6800で6502を動かすボード

 電脳伝説さんのSBC6800をベースにCPU部分を差し替えるだけで6502にするドータボード、PLDR6502を作りました。


※PLDR6502基板配布中です。twitter経由でご連絡ください。




上記改造については各所で追試していただきました。

SBC6800で6502を(Electrelic 電子的遺物の世界へようこそ)

 PLDR6502はSBC6800上の6800を外して代わりに取り付けるだけで6502ボードにすることができます。以前行ったLS138の改造は不要です。



- PLDR6502回路図 -

PLDR6502V01L01-sch
・W65C02S-RDYはR1でプルアップ/NMOS 6502、R65C02では~HALT。J4ショートで接続可(通常オープン)
・W65C02S-VPBはJ3オープン/NMOS 6502、R6502はJ3ショートで電源接続(実際にはオープンのままでも問題ない)
・プルアップ抵抗R3はSBC6800側LS138に与えられるVMA信号の代わりで常にenableにする
・R5~R12はW65C02Sのデータバスプルアップ用。省略可
・パスコンC1は省略可


- 組み立て -

 PLDR6502は秋月電子C基板サイズ(72x47mm)です。
2020-09-28 16.08.37

必要な部品:
丸ピン40P ICソケット x1
40P ICソケット x1
40P 連結ピン x1
抵抗 3.3K〜10KΩ x4 または4素子集合抵抗


 裏面のSBC6800との接続部分に丸ピンICソケットをハンダ付け後、ソケットの桟を切断。ICソケットは脆いものもあるので注意。
IMGP3640

  基板の表側に先程ハンダ付けしたICソケットのピンがこれからハンダ付けする6502用のICソケットと干渉するので切り詰める。
IMGP3641

 40P ICソケットとプルアップ抵抗R1~R4をハンダ付け。ここでは集合抵抗を使用。
IMGP3642

 これを動作するSBC6800上の6800と交換して連結ソケットを使い取り付け。ROMも6502用のものに交換。
IMGP3644

 これは集合抵抗を使わずバラの抵抗を使った例。
IMGP3646

 連結ソケットを直接ハンダ付けして取り付けることもできますが、SBC6800のDIP部品をソケット経由で取り付けている場合少し干渉します。ハンダ面から突き出たピンをカット。
IMGP3647

 丸ピンICソケットをPLDR6502の裏面に取り付け、SBC6800との間を連結ピンで接続すれば干渉しません。
IMGP3649

連結ピンは以下のもので確認しました。(いずれも秋月電子)
【P-00269】 丸ピンIC用連結ソケット(両端オスピン・1列20P) 1×20
【P-00268】 連結ソケット(両端オスピン)40P



 設計データ一式はinventhubで公開しています(KiCad 5.1.6)。PLDR6502V01L01.zipはガーバー一式でこれをそのままpcbgogoに発注できます。

※inventhubはプリント基板の配置配線を表示できますが.jpgや.pngを今のところ直接表示できません。


 さて最後に。この基板の名前はパイルダー6502と呼ぶんじゃ。これが言いたかった……


ポピニカ魂 PX-04 ホバーパイルダー
BANDAI SPIRITS(バンダイ スピリッツ)
2009-06-27


6502のクロック調査

 6502とApple IIシステムROMの秘密を読んでSBC6800をちょっと改造すれば6502で遊べるのでは、と思いついた。クロックジェネレータ役のPICの1MHz出力を6502のφ2inに接続し、φ2outを6800のE信号代わりにすればできそうと思ったがW65C02のデータシートに気になる記述が。
PHI1O and PHI2O clock delay from PHI2 is no longer specified or tested and WDC recommends using an oscillator for system time base and PHI2 processor input clock.
φ2inとそれから生成するφ1out、φ2outのタイミングは規定せず外部からのφ2を基準にしろと書いてある。ということで手持ちの6502と65C02でφ2inとφ2outの観測を行った。

 CH1はPICの出力する1MHzで6502の37ピン、φ2in(φ0)に接続。CH2は39ピンのφ2outで受け端のLS00で観測。データシートでは下がりきった所のディレイだが、画像は立ち下がり始めの所の比較。
20206502-1

・W65C02 φ2inとφ2out間の規定なし 約50ns/25ns
20206502-2-W65C02


・R65C02 φ2in↓からφ2out↓までmax 50ns 実測値約50ns/25ns

R65C02-Tdly50ns


20206502-R65C02


・SY6502 φ2in↓からφ2out↓までmax 65ns 実測値約50ns/50ns
SY6502CLK-65ns

20206502-SY6502


・MOS6502 φ2inとφ2out間の規定なし、バスタイミングはφ2outベースで記述 約50ns/50ns
20206502-MOS6502

 1MHz動作でφ2in-φ2out間のディレイはNMOS品で約50ns/50ns、CMOS品で約50ns/25ns。NMOS品は立ち上がりがCMOS品よりもなだらか。
 この程度のディレイだと1MHz動作(有効時500ns)ではI/Oやメモリアクセスで300nsかかったとしても充分余裕がある。

 では実際のパソコンなどではどうか?回路図を探して確認してみる。

APPLE 1:φ2outを使用していない
APPLE II:φ2outを使用していない
PET2001(初代);φ2outはPIA/VIAのみ。バッファ経由で外部引き出し
PET2001N(DRAM版);φ2outはPIA/VIA/VRAMアクセスのみ

 ということで積極的には使っていない模様。MOS6502でφ2inとφ2outの規定がないにも関わらずφ2inベースで設計されているのはなぜなのか。考えられるのは:
・φ2out出力が弱く全体を駆動するのにバッファが必要だがそれをするくらいなら原発振から作ったほうがマシ
・システムクロックがMPUを経由してしまうのでビデオ出力のタイミングなどMPUを外す/故障してしまうと動かなくなる
あたりだろうか。

 さてSBC6800を改造して6502を搭載する方法だが実験で使ったPICの1MHz出力をφ2inへ、E信号の代わりをφ2outでも動きそうだが改造が非常に面倒だったのでφ2outを使わない方向で再検討する。


6502データシート一覧:




6502とApple II システムROMの秘密
柴田文彦
ラトルズ
2020-02-25



SBC6800のクロックアップ

 モトローラ6800伝説はすでにお持ちのことと思いますが、製作することで追体験ができるキットが販売されています。

SBC6800ルーズキット(スイッチサイエンス)
SBC6809ルーズキット(スイッチサイエンス)

 SRAMは32Kx8bit品を使っていますが問題ありません。
2018SBC6800

 この回路ではPIC12F1822によるクロックジェネレータがうまくMC6800用の二相クロックを生成していますが、せっかく2MHzまで動くBタイプ品を使っているのでソースをいじってサイクルアップに挑戦してみます。
 モトローラ6800伝説のp.100に掲載されているソース(CD-ROMでも提供)で以下の箇所を修正:

PR2 = 7; → PR2 = 5;
CCPR1L = 4; → CCPR1L = 3;

 これでビルドすると1.33MHzのクロックジェネレータになります。上限1.5MHz動作のAタイプでもOK。

2018MC6800clk

 すみませんが雰囲気で修正したのでこれ以上PWMで速いクロックが生成できるかはわかりません。たぶん無理。ただPIC12F1822は32MHz動作で古いマイコン用のクロック源として活用できそうなので色々調べている所です。


モトローラ6800伝説モトローラ6800伝説
鈴木哲哉

ラトルズ 2017-12-16
売り上げランキング : 42896

Amazonで詳しく見る
by G-Tools

記事検索
プロフィール

hardyboy

カテゴリ別アーカイブ
月別アーカイブ
QRコード
QRコード
  • ライブドアブログ