最新 RSS

tips@free BLOG

レトロなマイコン、電子工作、PCやフリーソフト関係のTipsと私的備忘録

2012/11/05

[z80]自作Z80 CP/Mマシン(22)

ブレッドボードZ80マイコンのCPUをZ84C0020に換装しました。 もちろんそのままで動きましたが、折角なのでクロックを12MHzに上げてみることに。 FT232Rモジュールからクロックを供給しているのでFT-Progで設定変更できますので簡単です。

ダメモトで以前使ったLチカプログラムを少し変更してみると普通に動いてしまったので、アクセスタイムを計算してみたメモです。(間違ってたら指摘希望っす^^;;)

Z80と言えば元々クロック2.5MHz〜4MHzの感覚でしたし、AKI-80ゴールドキットのTMPZ84C015-12(12MHz)の取説にもデータだけでなくプログラムを収納するのには40ns以下のアクセスタイムのRAMが必要となっているので、設計が古いだけに高クロックにするとアクセスタイムが厳しくなるって思っていましたが意外でした。

  • Z80はM1サイクルだけは2.5クロックで後は3クロックアクセスなので、M1サイクルのリードが一番厳しい
  • 仕様の以下のパラメータで計算
    • (1)TcC クロック周期
    • (2)TwCh クロックHiレベル幅
    • (13)TdCf(RDf) クロック立ち下がりからRD#=Loまで(Max)
    • (15)TsD(Cr) クロック立ち上がりに対するデータセットアップ時間(Min)
  • アクセスタイムはRD#立ち下がりからデータが出力されるまでの時間なので、1クロックめの立ち下がり+TdCf(RDf) から 3クロックめ-TsD(cr)
12MHzクロックのZ84C0020の時 TcC=83.3ns、TwCh=41.7ns、TdCf(RDf)=40ns、TsD(Cr)=12ns
アクセスタイム = (TcC * 2) - TsD(Cr) - (TwCh + TdCf(RDf))
= (83.3 * 2) - 12 - (41.7 + 40)
= 72.9ns

デコード回路なしなら70nsのRAMでOKなようです、今回74HC32の遅延は入りますがメモリ(μPD431000A-85)のCEをイネーブル固定にしているのでアクセスタイムは45nsらしいので余裕みたいです。

さらに実測してみると74HC32の遅延込みでアクセスタイム100nsくらいまで大丈夫かも。(あくまでも参考値です)

拡大IMG_0445-2.JPG

おまけ、出力ポートをON-OFFするテストプログラムのリストと波形

  1                            ;
  2                            ; lo-hi test
  3                            ;
  4    0000                    	org	0000h
  5                            
  6    0000                    START:
  7    0000  3E 00             	ld	a,0
  8    0002                    LOOP:
  9    0002  D3 00             	out	(00h),a
 10    0004  2F                	cpl
 11    0005  C3 0002           	jp	LOOP

一番上がON-OFFしている出力ポートで、240KHzでON-OFFしてます。

拡大IMG_0441-2.JPG

関連エントリ: Z80に関するエントリ、 動画(ニコニコ)はこちら

コメント
お名前 コメント