アイデアひとつ

| | コメント(3) | トラックバック(0)

思いついたアイデアをひとつ。

Tiny2313あたりを1個積んで、メモリバス(拡張ROM1の部分)をハンドルします。 いわゆるIPL ROM代わりで、CS2/MREQ/RD/D0-D7/A0-A5あたりを入出力させます。

本体に読み込まれるコードはmega88(I/Oバス)を経由してSDカードからブートプログラムを読み込むものです。 このコードを実行中は読み込みはTiny2313から、書き込みはSRAMに行くようにしておいて、いったん初期化が終わったらTiny2313を完全に切り離してSRAMのみアクセスするようにします。

これだとPLDを使わずとも、現在の実装の延長線上でもできそうな気がします。

問題は、データをバスに載せるのがタイミング的に間に合うかどうかですね。 Z80のデータシートを見ると、メモリリクエストが開始されてからデータを乗せるまでは3クロック程度のようです。 ROMエリアなので、おそらくWAITが入って4クロックくらいになるのかな? AVR/20MHzでは20クロック分くらいです。 別にUV-EPROMを使っても似たようなことは可能ですが、Tiny2313は書き換えが楽なのと、値段が安いのがアドバンテージかと思います。


トラックバック(0)

このブログ記事を参照しているブログ一覧: アイデアひとつ

このブログ記事に対するトラックバックURL: http://www.markn.org/cgi-bin/mt/mt-tb.cgi/137

コメント(3)

なるほど、2313で間に合いそうですか?
I/O よりメモリのほうが余裕があるのかな?
良いアイデアですね!

Tiny2313を積んだテストカードを作ってあるので、試してみます。
うまくいくようだったら、それをベースにデコード部分をCPLDか汎用ロジックで設計しますので、また基板をお願いしてもいいですか?

もちろん!
商品化目指して頑張ってみましょう。

コメントする