DRAMの動作を調べた

DRAMの動きかたがおかしい件、テストプログラムを丹念に調べたが間違いが見当たらない。実際、SRAMをテストすると正常に終了する。これはいよいよオシロスコープで波形を調べなければならない。その準備としてDRAMボードの裏側から電線を引き出し、信号名のラベルを貼る。DRAMボードを1発で動かす才能はないけれど、こういう面倒臭い作業を愚直にやりとげる才能がある。

dram_test_view

結果を下に示す。2チャンネルのオシロスコープで測定したものを合成した。赤がE、黄がRAS、緑がMUX、青がCAS。MUXが出たあと短い間隔でCASが出ており、アドレスが切り替わる途中でラッチしている恐れがある。どこで計算を間違えたのだろう。そもそもこんなアナログっぽい回路が計算どおりに動くものなのか。

dram_timing

タイミングの修正はコンデンサか抵抗か、せいぜい2個の部品を取り替えるだけ。ただし、スルーホールから部品を引き抜くのが大仕事。そしてまた結果を調べるために電線を引き出してオシロスコープにつなげなければならない。そういう才能はあるといったが、何回も繰り返すとなると話が違う。もう無理。ああ面倒臭い。

広告
カテゴリー: 6800, DRAM パーマリンク

DRAMの動作を調べた への5件のフィードバック

  1. hirakuni45 より:

    6802、6809、6502などは、アドレスの決定は、Eの立下り後数100ns後くらいだったはずなので(グレードによる)RASは、Eの25%くらいで下げれば良いと思います。
    マルチプレクサはE信号、Eの75%でCASとすると、CPUクロックの2倍、4倍があれば、RC回路無しでも、簡単に作れます。
    リフレッシュはどうしていますか、ソフトリフレッシュ?、それともCPUを止めて?
    ※ちなみに、6809が、最もDRAMの制御が簡単にできます。

    • vintagechips より:

      hirakuni45さん、こんにちは。神頼みしている状況でコメントをいただけると神様に思えます。アドレスの確定はEの立下りから数えれば確かに数100nS後くらいですが、この製作物はEがLの期間をリフレッシュにあて、EがHの期間で通常のアクセスをする設計です。リフレッシュはEの立下り10回に1回、CAS before RASをやります。通常のアクセスとリフレッシュが連続した場合の波形をひとつ次の投稿に掲載しています。ちなみに、回路図をひとつ前の投稿に掲載しているので(リンクのみですが)よろしければご覧ください。そして、よろしければまたアドバイスをください。今取り組んでいるのが6800と6803なので6809のことは念頭にありませんが、このDRAMボードは、もしうまく動けば6809にも接続できるはずです。どうもうありがとうございました。

  2. hirakuni45 より:

    #RD、#WE 信号はR/Wから作っていると思いますが、E信号でゲートしているでしょうか?、後は、41464が、「CAS before RAS」に対応したデバイスであるか、くらいと思います。

    • vintagechips より:

      #RDと#WEはR/#WとEから作っています。41464はCAS before RASに対応しています。何しろDRAMのアドレスの下位バイトが$13、$95、$96、$FAのどれかでなければ正常に読み書きができるのです。波形も完璧でしょ。だからもう大混乱に陥っているわけです。誤動作の原因がわかったら、スッキリするだろうなぁ。ご協力ありがとうございました。

      • hirakuni45 より:

        凄く昔、DRAMのあるアドレスのデータを書き換えると、全く別のアドレスのデータが書き換わる現象がありました、なので、テストプログラムは、非常に苦労した覚えがあります、昔のDRAMは電源に敏感なので、電源ラインのインピーダンスや、パスコンの配置に気を配る必要もあるかと思います(でも、最近のDRAMなので、そんなに敏感ではないと思います、16KビットのDRAMの話です)、ガンバッテ下さい。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中