98マニアックス 掲示板
[21339]
SIMM上の不良メモリーチップ切り分け方法

EAOcf-136p226.ppp15.odn.ne.jp

 
HAMLIN さん
搭載したSIMMメモリに不具合があると、9821/9801シリーズでは起動時に
PARITY ERROR - BASE MEMORY
などとエラー表示が出ます。このようなエラー表示その他を利用して、SIMM内のどのチップに不良があるかを発見する方法は無いでしょうか?PC-9821シリーズ本体と正常なSIMM各種だけを使って調査できるとベストです。
たとえば、「正常なSIMMを1 2枚目に取り付け、テストしたいSIMMを3 4枚目に取りつけて○○するとできるよ」といった方法でも結構です。
識者の皆さまよろしくお願いいたします。
1. Reply: SIMM上の不良メモリーチップ切り分け方法

YahooBB218177172015.bbtec.net

 
ひばり さん
カウント中のメモリのいくつのところでコケるかで大よその判断材料にはなるのではないでしょうか?
2. Reply: SIMM上の不良メモリーチップ切り分け方法

EAOcf-136p226.ppp15.odn.ne.jp

 
HAMLIN さん
その方法では、SIMMの何枚目かは判りますが、どのチップかは判りません。
ご検討ありがとうございます。
3. Reply: SIMM上の不良メモリーチップ切り分け方法

h018.p494.iij4u.or.jp

 
maya さん
http://www.hardwarebook.net/connector/memory/simm72.html
をみて、理解して、チップのデータシートを眺めれば分かると思います。

JEDEC SIMMでしたらAT機を利用してmemtest86などでテストを行ったほうが精度が高いと思います
#これを通っても駄目な場合がありますが

AT機で便利な点はバスクロックを容易変えられる、メモリタイミングも容易に変えられる点があります。

あとは、SIMMの配線を眺めて判断してください。
4. Reply: SIMM上の不良メモリーチップ切り分け方法

p1239-dpb01douji.osaka.ocn.ne.jp

 
まりも さん
 メモリチップが、CPUからたどってどう配線されているかが全てわからないと(つまり回路図がひけるようでないと)、黄色の「MEMORY ERROR ######## ########」のアドレス・データ情報から故障チップを探るということは原理的にできません。チップセットとSIMMスロットの結線、実際に通電したときのチップセットのSIMMセッティングデータ、SIMMの72pinと各チップの結線、の情報全てが必要です。チップセットのデータシートのメモリ関連のところを読書百遍して完全理解すること、チップセットからSIMMスロットへのRASn CASn信号全ての結線を調べること、SIMM基板に32×32回テスターをあて(笑)コネクタとチップとのDQn結線を調べること、などを試みて下さい。

 といっても前2項目はあまり重要ではありません。それは、チェックアドレス単位はbitや1byte単位ではないということです。ITFによるテストでは、Dword単位となっていて、32bit全部を一気に調べて誤りがあるかどうかを返します。すなわちSIMMのデータの全ビットのどこかに誤りがあっても、アドレス情報だけではわからないのです。アドレスと一緒にデータも併記されるので、そこで誤りのあるbitを見つけだす必要があります。64bit境界(Pentium機なら)中のどのbitに誤りがあるかさえわかれば、チップのDQ線の結線からbit位置を割り出せるので、問題のチップにたどり着くことができます。
ただしITFテストでどんなデータをSIMMに書き込んでエラーを検出したのかを知らないと、正しいデータなのか誤りなのかはわからず、エラーbit位置すなわち不良チップのどれかを特定することはできません。チェックプログラムも自作設計すべきでしょう。

 ・・・と、ここまで書いて、そもそもなんでこんな質問をするのであろうという疑問が。もしかして普通のSIMM基板にメモリチップ用ソケットをつけて、自作の「メモリチップテスター」を作ろうというおつもりでしょうか?。面白そうなのでぜひやってみて下さい。
5. Reply: SIMM上の不良メモリーチップ切り分け方法

ohta116087.catv.ppp.infoweb.ne.jp

 
いーとん さん
> 自作の「メモリチップテスター」を作ろうというおつもりでしょうか?
作ってみようか...と思ったことは有りますけど、最大で9個張り替えれば修理は出来るので、片面の全チップ剥がしてテストするくらいなら1個ずつ張り替えた方が早いという結論に達しています(笑
6. Reply: SIMM上の不良メモリーチップ切り分け方法

YahooBB220036150024.bbtec.net

 
エマティ さん
>片面の全チップ剥がしてテストするくらいなら1個ずつ張り替えた方が早いという
できれば1回で済ませたいということなのではないでしょうか?
7. Reply: SIMM上の不良メモリーチップ切り分け方法

EAOcf-136p226.ppp15.odn.ne.jp

 
HAMLIN さん
to まりも様
詳細なアドバイスをいただきまして光栄です。また、HPで公開されていました各種の情報はありがたく活用させていただいております。
さて、今回やりたいことは、正に
>黄色の「MEMORY ERROR ######## ########」のアドレス・データ情報から故障チップを探る
ことです。原理的にできないとのことですが、機種がPC-9821Xa13/Wなどと特定され、SIMM内の配線、チップ形式が把握できている状態であれば、可能かなと思った次第です。例えば、MEMORY ERROR 00000100 00000000と表示されたら、SIMM端子のDQ20につながっているチップが故障だよという風にです。
そもそも今回の質問に至った理由は、エマティ様のご推察のとおりであります。以前より、16MB_SIMM2枚から32MB_SIMMを製作していたのですが、配線は良好でもチップが悪くて動作しないケースがあり、その特定に苦労したからです。また、チップの交換に際しても技術力が無いため、基板を損傷させてしまうケースもあり、片面の全チップを張り替えるだけの元気が出ませんでした。

>自作の「メモリチップテスター」を作ろうというおつもりでしょうか?。
それは、2年前に作りました。SIMM上に9つあるチップの一つを剥がし、メモリーソケットに交換したものです。現在でも使用しています。

人柱というほどのことは無いですが、こうなったら、人工的に特定のチップを故障させて、エラー表示との関係を見ることもしてみたいと思います。
8. Reply: SIMM上の不良メモリーチップ切り分け方法

p1158-dpb01douji.osaka.ocn.ne.jp

 
まりも さん
>MEMORY ERROR 00000100 00000000と表示されたら、SIMM端子のDQ20に
ええと、左側はアドレス、右側はデータです。既に書いたように、32bit一括チェックのため、アドレス値には32bit以下の分解能がありません。SIMMは32bit幅ですから、SIMM内のどのチップが不良かはアドレスでは特定できません。アドレスはこの目的には役立たないのです。

読み出すべき値として、仮に全bitゼロが正しいものであるすると、
<MEMORY ERROR ???????? 00800000
という表示になれば 高位bit側スロットのSIMMのDQ7(CPUのD23)に繋がっているチップが不良、という仕組みになります。ところが実際にITFがどんなデータを書いているか不明なのでこの通りにはなりません。それと、ITFでは全てのアドレスへの0 1書き込み検査を行なっていない可能性があります。やはり、テスト内容が詳しく知れていてデータ表示も行なえるプログラムを用意する必要があります。

さらにいうと、CPU側からのdata線の番号順が必ずしもSIMMスロットのDQ定義の順になっているかも保証の限りではありません。番号昇順で結線されてなくとも別に動作上は問題ないからです。というわけで、
>人工的に特定のチップを故障させて、エラー表示との関係を見る
この検証が、メモリチップテスターの作成より先に必要だったりするわけです。これによりSIMM基板の32×32ピン総当たりチェックも、チップセットデータシートの理解もしないですむようになります。
9. Reply: SIMM上の不良メモリーチップ切り分け方法

EAOcf-64p107.ppp15.odn.ne.jp

 
HAMLIN さん
>MEMORY ERROR 00000100 00000000と表示されたら、左側はアドレス、右側はデータ
これをもとに
>32×32ピン総当たりチェックも、チップセットデータシートの理解もしないですむ
検証を連休明けにでもやってみます。パリティ部分も含め、調査します。アドバイスを下さいました皆さまありがとうございます。
10. Reply: SIMM上の不良メモリーチップ切り分け方法

p107-dnb18awa.osaka.ocn.ne.jp

 
まりも さん
申し訳ありませんが、私のような素人が理屈を書くよりは、それなりのプロの方が然るべきお答えをしたほうがよいと思いますので、私の回答は削除させていただきました。というわけで識者の方よろしくお願いします。
11. Reply: SIMM上の不良メモリーチップ切り分け方法

p079-dnb46awa.osaka.ocn.ne.jp

 
まりも さん
説明に重大な間違い(Pentiumが64bitデータ幅であることを考慮してなかった)があったので削除しましたが、他に方法論を回答をなさる方が現われないので、とりあえず実験した結果を書いておきます。実際にテストプログラムを作成し、SIMMのデータ線1本を足上げプルアップ/ダウンして実験してみました(プルアップダウンは必ず抵抗を介して下さい。VssやVddに直結すると本体メモリコントローラチップを壊す恐れがあります)。

「アドレスに意味がない」と書きましたが、これが間違いです。64bit幅なのでアドレスが8の倍数か8で割って4余りとなるかは、スロットの1組のどちらかのスロットに存在するかに関わります。テストプログラムでは全ビット0と1を入れてデータが正しく読めるかテストしますので、永久に0または1を返すような不良では、どちらかのチェックの時に引っかかります。データは当該ビットが本来の値と反転していることで判明します。
詳しいことやテストプログラムのダウンロード先は↓に書いておきます。
memsetupとの絡みで440FXと430HX機限定になってます。
http://hp.vector.co.jp/authors/VA012947/memtst.html
12. Reply: SIMM上の不良メモリーチップ切り分け方法

EAOcf-64p107.ppp15.odn.ne.jp

 
HAMLIN さん
まりも様 <<< HAMLIN
このたびは有効なツールを作成していただき誠にありがとうございます。パーツ事情の悪いところにいることから、SIMMを入手して貼りかえしつつPC9821シリーズを使いつづけているため、ありがたく使わせていただきます。

追伸
このたび、転居しましたので、このようなレスをいただいていたことに気が付かず、大変失礼いたしました。今後ともよろしくお願いいたします。
13. Reply: SIMM上の不良メモリーチップ切り分け方法

p46-dnb10awa.osaka.ocn.ne.jp

 
まりも さん
追加情報です。インテルの430HX使用リファレンスマザーボードのデータシートを見ると、CPUのdata線に対応するメモリデータ線(MDn)とSIMMのデータ線(DQn)の対応が分かります。数字の通りの対応ではありません。3本しか実験では調べて見ませんが、98のマザーもリファレンスマザーどおりの対応でしたから、残りも一致している可能性は非常に高いでしょう。