aki_iic’s blog

己の欲せざる処人に施す事無かれ、狂人の真似するは即ち狂人なり

トラブルはやってる人間のレベルに応じて起きる(その3)

 トラブルはやってる人間のレベルに応じて起きる(その2)からの続き。

aki-iic.hatenablog.com

 トラ起き(その2):長いので省略:曲がりなりにもメモリ読み書きが出来る様になったので周辺回路の虫取りに進むのだが・・・

 まづは最近の虫取り写真をば:

m68030_v0_SIMM実装

 歳のせいと緑内障の影響(毎月通院してます。今月は視野検査)か目が辛くてそれでも本趣味はやりたいので作業性改善の為にAmzonでラボジャッキとLED照明(Web会議用)調達しました↓

 

 

 上記写真はそのラボジャッキで25cm程ジャッキアップ(というのでしょうか?)してその上にPICKIT5が入っていたRSの箱を敷いてその上にターゲットボードとロジアナ等のツール類を配置した図であります。虫取り真っ最中でプローブ塗れなっております(懐かし)。

 モニターライトはオーム電機秋葉原に店舗がある企業さん・・・でしたっけ?)さんの製品で色と調光可能でか弱い三脚も付いているので目の悪い者として大変役立っております(感謝)。

 30年程昔仕事で虫取りしてた頃(MPUは68EC020FGだった)はHPのロジアナとLecroyのDSOとCompaqの486DX(当時はXACTが動く最新環境でありました:)で夜な夜なFPGAのROM書き(OTPだったので当然使い捨て)でROMの死骸を量産しておりました(遠い目)。

 話を戻して30年後の現在、個人が道楽で100Msps/16CHのUSBロジアナが1万前後で入手出来、Xilinx互換(自称)の中華ISP書込ツールが1万以下で入手出来、PCの驚異的な進歩(この点はIntel/AMDさんを祝福します、無論PCメーカさんも)でストレス無く30年前のチップを使った開発が手元のノートPC(A285、x1t)で出来るので老後の道楽にもってこいでありました:)

 与太話はこの辺にして、

m68030_v0 DRAM timing(その1)

 昔なつかし非同期型DRAMのタイミングであります。例のtoolで0x80004000番地に0x00をライトした物で/cas3(SIMMはLittle endianなので)のみassertされています。

m68030_v0 DRAM timing(その2)

 時間軸を広げた物で画面左端が/cas3(UUに相当)がassertされています。以後/cas2,/cas1,/cas0と順にassertsれています。途中に入っているのはCBR Refreshサイクルです。16usのrefclkは例のPIC12F1501で生成しております(XC95108PC84に収まらなかったので)。この手の周辺回路モジュール化はPICマイコンの得意分野なので140円分を超える効果がありますな(柔軟な対応が可能だし)。

m68030_v0 DRAM timing(その3)

 こちらはDRAM read timingでm68030UMのP186のPLA通りreadでは全てのCASがassertされています。実は紙のマニュアルはとうの昔に無くしているのでPDFからverilogコードを生成するのですが回路図の線が見づらい(目の老化の為ですが30年前も鉛筆で添え書きしながらチェックした気がする)のでスクショを撮ってGIMPで添え書きしました(窮すればという奴です)↓

MC68030UM P186

 まあ、そうこうして準備を進めた訳ですが(何回CPLDISPした事か・・・)、DRAM timingは主観的には大丈夫そうな気がするのにデータが読めない(涙)

m68030_v0 tool v0.02でメモリダンプ

 おかしいなぁ・・・と思ってあちこち調べていたのですがSIMMの仕様を再確認すると・・・EDOなのでありました(しょんぼり)。CPLDには大昔からのDRAMのread/write/CBRしか組み込んでいないので・・・昔FPMのSIMMも買った気が・・・いや判らん(忘れた)。

 もっともFPM(はread/writeもサポートしてるらしいので)なら動作するかと言われると確認・検証するしか無いので物色するとAmazonで8千円(サーバ用)でちと高い。

 Googleさんに訊ねたらeBayで16MB SIMM(Mac/Unix用72PIN SIMM メモリはTC514400(FPM))を写真で確認し、データシートも確認して数枚PayPalで決済しました@2.5USDぐらい。

 という訳でトラブルはやってる人間のレベルに応じて起きる。

のでありました。何か様式美の予感:)

20250514 03:48追記:HY5117404AのデータシートにもREAD/WRITE cycleが記載されているので非Page mode のread/write cycleはサポートされているのでは?と・・・確認中

20250514 04:59追記:すみません本件当方の勘違いの様で撤回します(恥ずかし)。FPMでもEDOでも従来のread/write(非ページモード)はサポートしてる(その意味ではWikiもGemini2.0も間違い)とデータシートを読んだ限りにおいては理解しております。FPMとEDOの違いはPage modeでEDOはdata latchがついているのでデータ出力中にcasを更新出来る点だけで従来通りCASをassertしていれば従来のread/write(非page mode)として動作すると理解。

 

20250516 08:56追記:上記SIMMの件なのですが・・・念の為のSIMMのピン配列を確認しようとSIMMのシルクで左からP01・・・P72右端と確認した上でPT板のSIMMソケットのピン番が・・・右からP01になっている!・・・つまりはSIMMソケットの逆実装でありました(穴があったら入りたいレベル:)SIMMソケット逆実装可能だったんですねぇ(遠い目)・・・

 そういえばこのSIMM冷たいくらいに熱持たないし(VCCが繋がってないので当たり前)変だなーとは思っておりました(消費電流も0.4A以下と非常に少ないし)

 で、SIMMのコーナ(パタンが無い部分)をニッパーで切り抜いて(逆)実装出来る様にして電源ONしたら↓

SIMMソケット逆実装の為SIMMを加工して逆実装(恥ずかし)

 そうしたら上図の如く何かデータらしきモノが出てくる様になりました(お仕置きだな:)DRAM領域は0x80000000から16MB(32bit)を想定してます。

 

DRAM SIMM timing

 とはいえ書込が妙(アドレスMPXの入力を要確認)だったり書込データが不安定な場合がある様なので/ras,/cas,/weのダンピング抵抗やSIMM周り(電源系)をチェックするつもりです。

 やはり(私にとっては)トラブルはやってる人間のレベルに応じて起きる・・・のでありました(自分にお仕置きだな:)

 

20250516 16:45追記:(逆)実装の正しいSIMMの実装で再撮影(とほほ)。

正しいSIMMの実装方向(失敗に学ぶ:)

 eBayで落札したSIMM(FPM)は発送されたらしいので届いたら教訓として神棚に飾っておこう(失敗に学ぶ)・・・