ec2-3-235-46-191.compute-1.amazonaws.com , 25088th 1997/03/19 UPDATED

同期切換式ロムエミュレータ

走行中に書換えのできるロムエミュレータ

Copyright(C)1994 H.Kashima 94/9/21


目的

 Synchronized Paging ROM Emulator(以下 SPRE)は次の目的の下に製作される。
  1. ほどほどの機能を持ち、最低のコストで完成すること。

  2. とりあえず動くこと。;;(^_^)


動作説明

 ターゲットの動作中にエミュレーションメモリを書換えるには、ターゲットがメモリ をアクセスしていない時に書換えを行えばよい。 しかしながら、そのような期間を検出 するのは非常に困難であるし、たとえ検出できたとしても 数百ナノ秒の時間で書換えを 完了しなければならない。

そこで、ターゲットがメモリをアクセスした直後(/CS)の立ち上がり) から、数十ナノ 秒はターゲットが計算中であるためアクセスが絶対ないと仮定し、エミュレーションメ モリを2ページ用意して、その数十ナノ秒の期間に切換えてしまおうという訳である。 切換えるだけならば、その数十ナノ秒で充分完了できる。

これならば、選択されていない方のページは低速なシステム(セントロI/Fを介したホ スト)からでも容易にアクセスが可能になる。

 ホストとのインタフェースにはセントロニクスを使用している。 セントロニクスを使 用する事により、制御用マイコンの搭載を不要とし、コストを抑えることができる。

  1. コントロールレジスタ部

     プリンタポートは出力8ビット, 入力1ビット(PC98の場合)しか無いので、SPREへ のデータ転送はビット単位とし、レジスタ番号2ビット, ビット番号3ビット, ビッ ト情報1ビットの合計6ビットを操作し、4バイトのコントロールレジスタを操作す る。 SPREからのデータ転送はシリアル転送とし、シフトレジスタをコントロールレ ジスタ上のクロック, ロード ビットにて操作し1バイトのデータをリードする。

     また、オーバーシフトしてリードする事により、ターゲット電源, カレントページ 値を得ることができる。 また、リセットSWは、全てのレジスタをクリアし、RO Mをセレクトした状態に初期化する。

     レジスタは最高 16まで増設できるので、16 BITや 128KB化にも容易に改造できる。

    [セントロ入力]
    ビット	      機能(全て反転値)
    -------------------------------------
    bit 0	データビット /d0
    bit 1	ビット番号   /b0
    bit 2	ビット番号   /b1
    bit 3	ビット番号   /b2
    bit 4	レジスタ番号 /r0
    bit 5	レジスタ番号 /r1
    bit 6	未使用
    bit 7	未使用
    /STR	データ書込み(UP edge)
    BUSY	受信データ
    
    
    [SPRE内部レジスタ]
    レジスタ番号		機能
    -----------------------------------------
      0		アドレス(a0 - a7)
      1		アドレス(a8 - a15)
      2		データ(d0 - d7)
      3		コントロール
    
    
    [レジスタ#3 コントロール]
    ビット		       機能
    ------------------------------------------
    bit 0	シフトレジスタ クロック(UP edge)
    bit 1	シフトレジスタ ロード(Lo)
    bit 2	メモリーライト(UP edge)
    bit 3	未使用
    bit 4	シフタ SER入力. 0: 電源, 1:ページ番号
    bit 5	ページ切換えクロック(DOWN edge)
    bit 6	ROM/RAM切換え 0: ROM, 1: RAM
    bit 7	ページ番号 0: PAGE#0, 1: PAGE#1
    
  2. メモリーマルチプレクサ, 制御ロジック部

     切換え関連のデバイスは遅廷を抑えるため 74AC(T)タイプを使用し、S-RAMも高速タ イプ(80ns) を使用した。 バスバッファなどの遅廷も含めて大体 120nsの ROMに相当 するスピードを得られる。

     メモリ切換えは、ターゲットの動作中に切換えるため、全て ターゲットの /CSに 同期して行なう。 ターゲットが絶えず /CSを発行する訳ではないので、ホスト側で 強制切換えができるようにしておく。


実際の製作

回路図
  1. ブロック図
  2. コントロール部
  3. レジスタ部
  4. ソケット部
  5. SRAM部
  6. パーツリスト
 なにしろ配線が多いので、部品の配置, 向きなどはよく考えなければならない。 加島 の場合は 150mm x 100mm の基板を使用したので、配線量の割には部品密度が高くなって しまい、配線がまるでモータの電磁石の様になってしまった。

 パスコン(0.1μF)は IC 2個に1つ以上必ず取り付けること。 当初、パスコンをケチ って付けないで動かしたら、見事に誤動作した。

 当初の設計では、セントロ入力はフォトカプラでカップリングしていたが(別添の写真 では TLP521 が付いていますね)、転送速度が遅くなるのと、PC98では SPREからのデー タが受信できないという事もあって、パスした(高速のカプラは高価)。


参考文献

 

E-mail to

kashima@keisei.tsukuba.ac.jp
NAG03325 in NIFTY-Serve

E-mail [豕ィ諢従荳埼←豁」縺ェ鬘悟錐縺ッ蜊ウ蠎ァ繧エ繝溽ョア縲∝錐蜑阪r蜷堺ケ励i縺ャ閠縺ク縺ョ霑比コ九ッ縺励↑縺莠九′縺ゅj縺セ縺吶ゅヵ繝ェ繝シ邉サ繝。繝シ繝ォ縺九i縺ッ閾ェ蜍慕噪縺ォ諡堤オカ縺吶k蝣エ蜷医′縺ゅj縺セ縺吶
-- LINK FREE --
 
HOME LAST