ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
Main Menu
Tweet
Facebook
Line
:-?
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
webadm
投稿日時: 2008-8-10 22:41
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
DATA I/O ChipLab DIP48-1
時々オークションで見かけるもののいずれも落札できなかった念願のDATA I/OのChipLab DIP48-1を入手。



これはとっくの昔に販売サポートとも終了しているが、未だに現場では現役で使われているのを見ることが多い。特に古いPLDとかアルテラやXilinxのコンフィグレーションデバイスもサポートしているのでROMやEPROMしか書き込めない一般のROMライターよりも重宝される。

Webを検索するとChipLab関係のメーカー提供資料やプログラミングソフトをアーカイブしている人が居て、そこから今もChipLab 2.3のWindows版とそれをWindows NT/2000/XPで使用するためにユーティリティを無償でダウンロードすることができる。

DATAIO Chiplab eprom programmer resources page

ChipLabを使用するにはパラレルポートのあるPCとChipLab純正パラレルケーブルか市販のストレート結線されたパラレルケーブルが必要。

ダウンロードした3つのChipLab 2.3ファイルをそれぞれ自己解凍するとインストール用フロッピーの作成かディスクへの展開、もしくはフロッピーイメージの作成が出来る。

今回はフロッピーを作成してインストールを行った。

当然ChipLab 2.3は16bitアプリケーションなのでそのままインストールしただけでは32bitのWindows NT/2000/XPでは起動するもののChipLabハードウェアを検出できない。

このため別途porttalk 2.2というシステムツールを併用する必要がある。porttalk 2.2はChipLab 2.3がI/Oポートをアクセスするのを検出して自動的にIO特権を与えてくれるというもの。そうすると直接I/OポートがアクセスできるのでChipLabハードウェアを無事検出できる。

このためにporttalk22をダウンロードしChiplabソフトのディレクトリに解凍する。今回はporttalk22というサブディレクトリ配下に展開した。

起動の際に毎回コマンドプロンプトから

F:\CHIPLABW\porttalk22\AllowIo.exe F:\CHIPLABW\WINCHIP.EXE /a

とすれば良いのだが、面倒なのでインストール時に作成されたChipLabのショートカットのプロパティを開いてリンク先を以下のように変更した。

F:\CHIPLABW\porttalk22\AllowIo.exe F:\CHIPLABW\WINCHIP.EXE /a

これでショートカットをクリックするだけで自動的に上記のコマンドが実行されるようになる。



最初の起動時にセルフテストが実行されDAC Calibrationでエラーが出たが、そのまま継続して使用を選択したところ、それ以降はマニュアルでセルフテストを行っても同じエラーは出なくなった。温度とかのかねあいもあるのかもしれない。試しにUVEPROMやNVRAMを読んでみた。ちょっとソケットの接触が良くないが読み書きは出来るようだ。

これでユニバーサルなデバイスプログラミング環境が出来た。
webadm
投稿日時: 2008-6-9 10:36
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
ROMライターのLOAD/COPY動作
取り外したX2816Aを別のROMライターでチェックするとエラーが出たり出なかったりするがmodel 1900でやると100%いくつかの決まったアドレスでエラーが出る。XICOR X2816Aのデバイスコードはミナトエレクトロニクスのページでデバイスコードを検索するとD116だというのが判明したのでmodel 1900に設定したらサポートされていた。

たまたまmodel 1900のconfig設定メニューを見るとプログラミングユニットの設定値に電源電圧や入力信号の閾値電圧とかの設定があった。

ROMの内容を読み出して内蔵バッファメモリにコピーするLOAD/COPY動作と言われるものは実は3種類の電源電圧でそれぞれ行っているということを知った。

標準的な5Vとその±5%の3種類でそれぞれ読み出しを行う。最初に5Vで読み出して+5%と-5%で読み出した内容と比較する。違っているとエラーになる。でもX2816Aをチェックした際にエラーが出た時に表示されるアドレスのROMとRAMの内容が違っていないのは別のROMライター側のバグだろうか。model 1900だとエラー表示はROMとRAMとで値が確かに違っている。

ということで取り外したX2816Aは動作電圧のマージンが狭くなっているか出力信号ドライバが劣化しているのかもしれない。決まったアドレスで出るので内部のフラッシュメモリが劣化している可能性もある。

実際にmodel 1900でROMに供給される電源電圧をテスターで監視していると最初に5V、次ぎに5.25V、最後に4.75Vで読み出している。書き込みをした後のベリファイ動作も同様に3種類の電源電圧で行っている。

このプログラマブルな電源を10mVの精度で生成しているのがMOSユニットというところで、DACとオペアンプやトランジスタとかのアナログ回路てんこ盛りである。幸いにして故障していないが故障するとちょっと修理がやっかいかもしれない。なにせ基板が3段重ねになっているので信号や電圧を測定しようにも無理。
webadm
投稿日時: 2008-6-8 4:07
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
Re: ZIFソケット(TEXTOOL)
しかたがないので秋葉原へ出向いてZIFソケットを探したが、やはりというかもはや絶滅危惧種であまり置いていない。

秋月とかも売れないので店頭から取り去って店員さんのコーナーの隅に追いやられてしまっていて買うに買えない。通販なら買えるのかもしれないが互換品なので形状とか心配なので今回はパス。

いろいろ置いてあるところはあっても、どこもピン数が20以下のものばかり。PICとかAVR書き込み用にはそちらが需用があるのだろうけど、ROMとかになるとやはり28ピン以上になってしまう。

ということで精密ドライバーを購入した後、いろいろ巡って最終的に千石の2Fで5700円の28pin純正TEXTOOLを購入。今まで買った中でFLEX10Kの次ぎに高いパーツだった。



早速精密ドライバーでソケットを固定しているネジを回して取り除き、古いソケットをひっこぬいて新しいものを挿入し再度ネジで固定。

試してみると今まで接触不良でエラーが出まくっていたのがすっかり無くなり。安定して読み込めるようになった。新しい方は幅広のDIPだけでなく幅の狭いPICやAVRのようなICも差し込めるように接点部分が広くなっている。古いのは幅広のROMしか刺せない。

あとはキーボードのチャッタリングを解決すればかなりましになるはず。とりあえず一歩前進。
webadm
投稿日時: 2008-6-7 15:59
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
Re: ZIFソケット(TEXTOOL)
千石でICソケットを買いにいった時にZIFソケットのTEXTOOLが置いてあるのを思い出して値段をチェック。

28ピンのものが一個数千円もするのを知って仰天。

秋月とかのコンパチZIFソケットとかは800円なのに。

オークションとかで確かTEXTOOLの28ピンが400円で出ていたが。

他の店は見てないのでここだけの値段設定なのか秋葉原協定価格なのかは謎。

このTEXTOOLの消耗部分を交換するのには精密ドラバーが必要なので揃えておかないと。

ICのピンと接触する面に酸化膜ができてしまっているのでICのピンの状態によっては接触抵抗が高かったりまったく接触しない(1MΩ近い抵抗がある)という惨憺たる状況。
webadm
投稿日時: 2008-6-7 12:52
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
Re: X2816A制御信号
とりあえずロジアナでX2816Aに対する/CEと/OEそれに/WE信号だけを観測してみた。

すると普段はリードアクセスしか行われていないことが判明。

コンフィグレーションの設定変更メニューを操作していると、今まで見落としていたのかF. Backup W.とかいう選択肢があるのを発見。

それを実行してみると初めて書き込みサイクルが観測された。



書き込み完了のタイミングはリードサイクルによるポーリングではなくソフトウェアタイマーかなにかで書き込み時間間隔を開けていると思われる。

とりあえずI/OコンフィグレーションのI-O CHANNEL設定とSRIAL PORT1,2それにPARAREL PORTの設定をしてBackupへの書き込みを行ったところ、今までは電源投入時に出ていたRECORD NO.33というのがBACKUP MEMORY ERRORでは現れなくなり、NO.14というのに変化した。これは今までも出ていたがエラーのあるレコードの数が減ったという感じ。

それとデフォルトモードという電源投入時のデフォルトのDEVICE CODEとWord modeの設定もBackupへ書き込んだところ、以降電源を入れ直してもその設定で立ち上がるようになった。以前のような文字化け表示がなくなった。

すると周辺回路には何も問題なく、NVRAMに書き込まれていた保存情報が壊れてしまって、読み出しの際のチェックでおかしいというこをを表示しているのだろう。

さて、まだ壊れているレコードが残っているのだが、これはどうしたら書き直すことが出来るものやら。

とりあえずNVRAMに残っている内容以外は何も悪くなかったという結論に至った。

相変わらずZIFソケットと押しボタンスイッチの接触が悪いのでこれをなんとかしたほうが良いかもしれない。

webadm
投稿日時: 2008-6-6 11:50
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
X2816A制御信号
WE信号は隣のSRAMと共通になっていた。SRAM自身の読み書きは出来ているのでこの信号の制御回路は正常であると思われる。

あと書き込みに関連する制御信号はOE信号。これはリード時にはアサートされるがライト時にはデアサートされなければならない。WE信号とOE信号がアサートされるとX2816Aの仕様では書き込みは行われない。

おそらくOE信号はどっかグルーロジックで生成されていてX2816Aがアドレスセレクトされリードの場合のみアサートされる専用信号なのでこれが壊れている可能性はある、例えば常にアサートされているとか。
webadm
投稿日時: 2008-6-5 20:11
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
CAT28C16Aで換装してみた結果
MOUSERに3日前に注文しておいたX2816の互換品CAT28C16Aが今朝届いた。本当は昨日外出中に既に届いていたらしく再配達。いつもながら早い。



早速差し替えて結果はというと。相変わらずBACKUP MEMORY ERRORが出まくり(;´Д`)

取り外して別のROMライターでX2816AとしてCOPYしてみたがちゃんと読み出せる。元々実装されていたX2816の方は繰り返し読み出しの際にエラーが出るが、一回は読み出せては居るようでVERIFY動作は問題無い。X2816だからタイミング的に仕方がないのか。

まっさらなメモリーだと表示が所々文字化けしているのは、NVRAMに保存されているはずの内容をそのまま出しているからだろう。そう思って元のX2816から読み出した内容をROMライターで新品に書き込んで実装してみた。

結果は元々のX2816の時と同じ表示内容になった。当たり前だが。

とすると、問題はX2816側にあるのではなくその周辺が怪しいということになる。

このROMライターのVFD表示はえらくお気に入りなのに。

また別の観点から原因を探る方策を考えよう。

P.S

後で別のROMライターでXICOR 2816Aとして読み出してみたところ最初はやはり読み返し時にエラーが出ていたが、夜中にもう一度やってみたら今度は一度もエラーが出なかった。温度とかの影響だろうか? 書き込みも新しい互換品と比べると遅いが問題無く書き込める。ということでPROMライター側の周辺回路が怪しいという結論に。書き込みサイクルがおかしいのかもしれない。というとライトイネーブル信号がアサートされていないとかそういう単純な問題なのかもしれないが、その辺の信号を生成しているグルーロジックがあればそこが故障している可能性は高い。たぶんファームウェアは書き込んだ後に読み返して書き込みの完了を判断しているので、ライトイネーブルがアサートされないと書き込みすら行われずにバスが衝突することになって大変やばいことでもある。とりあえずライトイネーブル信号ピンの状態を見てちゃんとアサートされているかどうか見てみる価値はありそうだ。
webadm
投稿日時: 2008-5-19 10:23
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
X2816をSRAMで仮換装する実験
X2816はピンアサインは普通の16Kbit(2K x 8)SRAMと同じである。

タイミングも同じで、唯一違うのは書き込みを行うと内部的にEEPROMを消去して書き込み動作が自動的に行われ、その間は書き込みが出来ないのとリードすると最後に書き込まれたデータのMSBが書き込み完了までの間は反転して出力されるというもの。おそらくソフトウェアは1バイト書き込む度に繰り返し読み返して書き込んだ値と同じ値が読み返されたら書き込み完了と見なしていると思われる。

だとすると普通のSRAMを載せても同じじゃないか?

という気がする。

とりあえず交換用のX2816を入手する前にICソケットを実装しておいてX2816の代わりにSRAMを挿してみようということになった。



撮影は今まで使っているNikonのCOOLPIX 5600なのだが動画とかの撮影につかうシーン撮影モードに誤ってした状態でMenuボタンを押したらクローズアップという選択があって接写モードがあることを発見。使ってみたらルーペとか間に入れなくても綺麗にピントのあった撮影が出来た。買って何年になるんだよ。今まで知らなかったというのが情けない。

X2816を除去した後にパターンが切れていないかループを使ってチェックしたところ、ランドの側のビアを結ぶパターンがランドのところで切れているように見えるところがあった。つながっているようにも見えるので、そのまま組んで本体に戻してみたら案の定、最初のDRAMチェック動作が始まらない。

もう一度取り出して導通を確認してみたら、やはり切れていた。

もうICソケットを実装した後なのでランド側をハンダ付けし直すことができないので、裏側からランドとビアの間をウレタン被服導線でつないでみたところDRAMチェックするようになった。

しかし普通のSRAMに代えても例のBACKUP MEMORY ERRORは依然として出る。電源投入直後は内容が壊れているので出てもしかたがないが、最初に初期化されるのでその後は出てはいけないはず。しかしその後も出る。

それと蛍光管表示内容がやたら文字化けしている。X2816の時もモードによっては書き換わらないレコードとかがあるので初期状態では正しい表示でないものがあったが、設定し直せばその値に基づいて表示が正しくなり文字化けはなかった。

どうもタイミングとかが微妙に違うのだろうか、もう一つのSRAMに交換すると余計状況が悪くなり、表示が不安定になる。



仕方がないので一端除去したX2816の足を切りそろえて丸ピンICソケットにハンダ付けして挿し直すと以前の通りに戻った。この方法を使えば、HP3456Aで除去したROMも復活できるな( ̄ー ̄)ニヤリ。

やはりX2816を入手して早く結果を見たほうが良いのかもしれない。周辺ICが壊れているという疑いもぬぐえないので。
webadm
投稿日時: 2008-5-14 18:48
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
ZIFソケット(TEXTOOL)
手持ちの27C256のROMが読めたり読み誤りしたり不安定だったのはZIFソケットのコンタクト部分が長年放置されていたため酸化膜が出来て接触抵抗が高くなっていたためだった。

ソケット基板だけを取り外してROMを挿してロックした状態でROMのリードピンと基板側のZIFソケットをハンダ付けしてある部分との間の抵抗値をテスターで測定してみた結果、特定の位置に固定する時を除いては抵抗値が異常に高くほとんど導通が無いピンも出てくることが判明。特定の位置だと全ピン数Ω程度の良好な状態となりその状態であればROMは読み出せる。

外から見ただけではROMのリードピンは全部しっかりZIFソケットにくわえ込まれているように見えるが。実はそっとコンタクトを押しつけているだけでしっかり掴み込んでいるわけではない。

別のROMだと99.9%読めない。微妙にリードピンの曲がりぐあいとかでロックレバーを倒すと微妙にROMの向きが変わったりする。

読めないROMを同様にソケットに装着した状態で導通抵抗を測定すると驚くことにまったく導通していないピンが多数あることが判明。こうもROMによって違いが出るものなのだろうか。

ZIFソケット側のコンタクトに酸化膜が出来ているに違いないと、ROMのリードピンを押さえつける方のコンタクト表面をしごいて酸化膜を削り落とす作戦に出てみた。

すると以前はある決まった位置でロックしないと読めなかった片方のROMは100%近くソケットに収まった時に偏った位置でも読めるようになった。

しかしもう片方の正常に読めない方は、以前は位置によっては誤りが多いものの読めていたのが、全く読めなくなり、しかもピン間ショートをしているという表示が常に出るようになってしまった。

このROMは別のROMライターでは問題無く読めるのでソケットとの相性というか、ソケット側が酷使されてくたびれているために接触が悪いからかもしれない。

もともとZIFソケット(登録商標TEXTOOL)は劣化する部分だけ交換できるようになっている。秋葉原とかで普通に売っているのでそれを買ってきて上側だけ交換すればよいことになる。

EEPROMが耐用書き換え回数を超えるまで使われたロムライターなのでTEXTOOLもいいかげんくたびれているに違いない。接触が悪くてまれに読み誤りや書き誤りが生じたら目もあてられないので、消耗品と考えて早めに交換したほうが良いかもしれない。

それとデバイスIDは自動識別できるものであれば現在設定されているデバイスIDが異なっていてもオペレーション時に自動識別をし一時的に対応するデバイスIDでオペレーションが実行されることを確認。良くできている。

来月になったらEEPROMとTEXTOOLを手にいれて交換してみよう。
webadm
投稿日時: 2008-5-14 0:24
Webmaster
登録日: 2004-11-7
居住地:
投稿: 3093
故障していたのはX2816だった
どうやらX2844は普段はアクセスされないようだ、使われているかさえ疑問に思えてきた。

たまたまプログラミングユニットを外した状態で本体の電源を入れてみたら、まったく同じようにメモリチェックが始まりBACKUP MEMORY ERRORが同じように出る。ということは問題のBACKUP MEMORYは本体側にあるということか?

ということでもう一度本体のCPUボードを取り出して見てみた。すると今までMASK ROMだとばかり思っていた基板上のシルクでROMと書いてある場所にあるチップを良くみると



思いこみというのは災いのもとだ、これもXicorの16kbit EEPROMだった。

ということはこれが故障していると言っていたわけか。

探してみるとMOUSERにCatalyst製のいろんなスピードグレードのものが在庫してあった。こっちを注文すべきだった。大失敗。

今月は無駄な出費をした反省として来月まで修理はお預けにしよう。
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
ページ変換(Google Translation)
サイト内検索