開発日記

2022年5月 真贋判定装置の試作器を作る

真贋判定装置の完成と検査実行

2022.05.31

ようやくIC真贋判定装置が完成しました。

最初のターゲットは5月6日にWinSourceという流通在庫商社で買ったALTERA MAX2「EPM1270T144C5N」です。この部品は正規市場ではまず手に入りません。流通から買うしかないのです。

中央のバーン・イン・ソケットにMAX2を挿入していよいよ検査開始です。

0531_1

なんだか、主人公が怪人に改造されてそうな絵図ですね。

 

このジャンパワイヤは何をしているのかというと、MAX2のVCCINTやVCCIOに2.5Vや3.3Vを与えるためのものです。

大量に並んだジャンパピンはソケットとCPLD間の配線を切ったりつないだりするのですが、下の図のような表をExcelで書いて、ジャンパピンのどこにVCCINTやVCCIO、GNDが来るかを整理しておきます。

Epm1270_pinout

そして、2.5Vや3.3Vを与えるべきピンにはジャンパワイヤで2.5Vや3.3Vの電源と接続するというわけです。

これで、電源とJTAGを通してスキャンしてみると・・・、ばっちり見えました!

0531_2

発見されたのはEPM1270です。

流通在庫で購入したEPM1270T144C5NのJTAG IDCODEは紛れもなくEPM1270のJTAG IDCODEを持っていました。このICは本物であることが99.99%確定です。

もし、偽物のICや空っぽのICであればJTAGを認識すらしないでしょう。

もし、EPM240やEPM540のシルクを書き換えた模造品であれば、JTAGのIDCODEはEPM240やEPM540のものを示すはずです。中身まで書き換えることはできませんから。

そういうわけで、JTAGチェーンで認識されたというだけで99.99%本物であることが確定します。

 

最後に残る不安は、中古品を再生したものでI/Oが痛んでいるのではないかという懸念です。

この不安はJTAGバウンダリスキャンで払拭します。バウンダリスキャンというのは、ICを「工場出荷時のテストモード」のようなもので、JTAGのTCK,TDI,TMS,TDOの4本の線をつなぐだけでICの端子を自由に操作することができるモードです。ほぼすべてのCPLDやFPGAに内蔵されているので、バウンダリスキャンを使えば、FPGAやCPLDの中身を書くことなく、端子の接続検査ができるというわけです。

その結果は・・・

0531_3

完璧でした。

一つのピンが欠けることもショートすることもなく、真贋判定基板上のCPLDと1対1での接続が確認されました。入力も出力も正常です。

すべての端子は活きています。

 

また、起動時の電圧・電流特性を測るため、電流の計測にINA180という便利なICを使ってオシロで記録しました。INA180はハイサイドの電流モニタ用ICで、抵抗の両端に生じる電圧を何倍かして電圧で出力してくれるというものです。本当は低い抵抗でいきたかったのですが4.99Ωの抵抗をVCC33とVCC18に挟んで、INA180B1(ゲイン20)で増幅して見ています。つまり、電圧で読んだときの100分の1が電流値[A]になります。

Epm1270vi

これが起動時の電流です。VCCINT(1.8V)への電流でチャタリングのように見えるパルス状の電流は、起動時に必ず7回起きるので、コンフィギュレーション回路なのでしょう。VCCIO(3.3V)はほとんど電流を消費していません。VCCINTのほうが電流を食うんですね。もし、偽物のICをつかまされていたらこんな電流にはならないでしょう。VCCとGNDがショートして数百mA流れているかもしれません。

 

かくして、流通在庫で購入したMAX2 CPLDは、真正なJTAG IDCODEを持っていて、かつ、すべての端子が正常に入出力できることが確認できました。


真贋判定基板の火入れ

2022.05.30

真贋判定基板はピンヘッダの塊みたいなものなので、半田付けが非常に大変でした。

0530_5

ピン数も多ければ半田のヤニもたくさんでるので、フラックスリムーバをジャブジャブ使って洗浄です。昔買ったガスマスクが役に立っています。ガスマスクしないと健康被害が出そうですわ。

0530_6

実装が終わったので、いよいよ火入れです。

0530_1

ターゲットへ行くJTAGのTDIとTDOをバイパスしてMITOUJTAGで見て見ると、基板上の4つのCPLDが見えました。

0530_7

これが見えると、すごい安心感がありますね。

 

適当なピンとピンをジャンパで接続して「シンプル基板検査」をかけてみると・・・

0530_2

下の図のように、GNDにショートさせた個所がGNDと表示され、相互に接続されたピンは相互接続が出ています。

0530_4

ここまでは大成功!

夕方、秋葉原にいってジャンパピンを大量に買ってきました。

0530_3

明日はいよいよ真ん中の黒いソケットにターゲットICを乗せて検査しますぞ。


真贋判定装置の出図と、新たな流通部品

2022.05.27

超初歩的ではありますが、ようやくFPGA真贋判定ベース基板が完成しました。

0527_1

この基板はなんと、両面基板で作られています。裏表しかない。
0527_2?

昨日からの進捗は、JTAGチェーンを通したことと、1.2Vと2.5の電源を追加したこと。それから1.8Vと3.3Vの電圧と電流も測れるようにしたことです。

0527_3

電圧・電流は同軸ケーブルで出力してオシロで見るという志の低い設計だけど、たたき台だからこれでよしとしましょう。

 

それから、流通在庫で新たに購入したCPLDなどが届きました。

XILINXのXC2C256-7VQG100Cです。今回の流通在庫は表面がすこしザラザラしているけれども、こんなものかもしれませんね。シルクはシュッとしているけど綺麗でした。

0527_r1

下の写真は2007年製の正規品です。

0527_r2

 

次の写真は流通在庫で買ったMICRELの電源IC、MIC5209です。↑が流通で↓が正規品。Mの字が塗りつぶしか vs 縁取りかという違いがありますが、印字ルールは同じです。流通のほうはつるつるしていて、外見は本物と見分けがつきません。

0527_r3?0527_r4

 

最後は超入手困難の1bitの双方向トランシーバ、SN74LVC1T45DBV。シルクの写真が取りづらいのですが正規品は「CT1R」、流通品は「CT1F」と読めます。データシートによれば刻印としてはどちらもOKで、外観で真贋判定はできません。

0527_r5?0527_r6

真贋判定装置の完成を急いで完成させなければ!!


IC真贋判定装置の設計 その7

2022.05.26

今日は全体の配線を引いています。

CPLD周りだけはコピペで済んだのですが、実際には配線を一本一本つないでいかないといけないので、大変な分量になります。

0526_1

主な配線が完成したようすです。台風が来そうな感じの渦巻きです。

0526_2

さらに電源とJTAGを追加し、ターゲットICに3.3Vと1.8Vを与えられるようにしたところで、1.2VがないとSpartan-6の検査ができないことに気が付き、急遽1.8Vと2.5Vも追加することにしました。

今日はここまで!


IC真贋判定装置 その6

2022.05.25

今日も今日とて真贋判定装置を設計しています。

まず、ソケット基板に行く配線をCPLDに通すかGNDに落とすかをジャンパで設定できるようにします。

このためのジャンパピンを2.54mmピッチで並べると60個分になるのですが、横に並べてしまうと15cmにもなってしまいますので、ここは3行に並べました。

052501

そしてCPLD側に通した配線をCPLDにつなげます。

この回路が左側1個ができたので、右側にも180°回転してコピペします。

052502

あまり大きな修正はなく、コピペ+手作業で直す程度でいけました。

 

下側もピンヘッダを3行で並べてしまうと十字型の基板になってしまうので、下側は横1列に並べます。

052503

なんだか、目がぐるんぐるんしてきましたが、うまく行っています。

 

今日は、久しぶりの回路研究会があるので作業はここまで!


IC真贋判定装置の設計 その5

2022.05.24

今日もFPGA真贋判定装置の設計を続けています。

144ピンのバーン・イン・ソケットを乗せるための基板ができました。

基板のサイズは8cm×8cmで、1.27mmのピンヘッダでベース基板につながります。

Tq144top

裏面には必要に応じてコンデンサや抵抗を付けられるようにしています。

Tq144bot

それから、100ピンのソケット用。

Tq100top

同様に、裏面です。

Tq100bot

 

それから、今日からベース基板の設計もはじめました。基板の名前は「Singan Base」で(そのままやん)

 

このベース基板はソケット基板から来た端子をジャンパピン(GNDにするかオープンにするかを決める)に通してCPLDにつなぐという設計です。CPLDはJTAGバウンダリスキャンで操作されるだけの、ただのGPIOになります。中身は空のまま使います。

?

052401

とりあえず配線を引いてみたところ、必要な基板面積が把握できるようになってきました。


IC真贋判定装置の設計 その4

2022.05.23

先日のTQFP144用基板のサイズではQFP208のソケットが乗らないことに気が付いたので、今日から全面的にソケット基板を設計し直します。

美的センスに気を付けながら・・

変更点としては、ソケット基板とベース基板をつなぐためのピンヘッダが1.27mmピッチのものにしたことと、ICのピン数に関わらずピンヘッダを8個にしたことかなと思います。ピンヘッダ1個あたり36ピン通すことができ、このソケット基板では288ピンまで対応可能です。ただ、ベース基板は240ピンまでしか対応しませんので、今後の拡張の余地を残しておきます。

 

QFP208のバーン・イン・ソケットは0.5mm間隔でコンタクトピンが並んでいるので、TOPの層1枚で配線は完結します。

Qfp208_20220526180101

ただし、ICによっては端子の近くにコンデンサや抵抗を置かなければならないようなものもあるので、そういうICに配慮して、端子の直近にコンデンサや抵抗を置けるようにパッドだけ設けました。

Qfp208bot

こうやって、QFP208ピンソケット基板ができました。

なお、基板表面に並んでいる灰色の●はただのViaで、その横にある小さな●がコンタクトピンを受けるためのパッドです。

052301

すごく小さいのです。本当に位置がぴったり合うのかどうか不安になるくらいです。


QFP100とQFP144のソケット基板

2022.05.20

ICの真贋判定をサービスを作るという目標は、どこか他社のためのサービスを開発するという感じだったのでしょう。

でも自分で使うICが入手できなくて、かろうじて見つけたICが中華流通在庫だったとき、本当にこのサービスの必要性を自分ごととして認識するようになってきました。

1週間以内にCPLDの真贋判定をしなければならないほど切羽詰まってきたので、装置の設計の速度が上がっています。ネットゲームにたとえるとブーストアイテムを使った状態です。

まず、QFP100ピンのソケット基板。

Qfp100

同じサイズで作ったQFP144ピンのソケット基板。

Qfp144

中央には山一電機のIC51シリーズのバーンインソケットが乗ります。IC51はディスコンで、これも中国の流通在庫頼みなのが悲しいですが。

 

さて、QFP100とQFP144は8cm×8cmの基板で実現できたのですが、欲をだして同じ基板で208ピンまで検査できるようにしたいな・・と思ったところ、10cm×10cmないと足りないことがわかりました。

Qfp208

3種類のソケット基板をすべて同じベースボードでコントロールできるようにするには、ソケット基板を10cm×10cmのサイズにする必要がありそうでした。今日の設計は無に帰しました。

 


IC真贋判定装置の設計 その3

2022.05.12

多数の基板を集積して半導体テスタを作るのは非常に時間がかかるので、まずは、特定のICだけでもJTAGバウンダリスキャンで検査するものが作れないかと思い、設計をシンプルに変更しました。

それが、こちらの基板。

Probeboard1

Probeboard

QFP144のソケットに検査対象デバイスを装着し、その左右にQFP100のICから信号を出して検査対象ICのピンの接続を確認するというものです。

これなら簡単にできそうですし、基板の製造費用は2~3万円くらいになるので、特定のICにのみ対応したIC検査装置ということであれば初期費用が安く作れるだろうと考えられます。

しかし、繰り返しICを抜き差しできるソケットは基板より高く納期もかかるので、検査するICごとに基板を作っているとコストがかかってしまいます。

そこでMAC8のソケット君をはじめ、何らかのソケットを使ってICソケットを抜き差しできるようにすることを考えました。

Socketkun

これなら、検査用基板にICソケットをはんだ付けすることなく使いまわせるからです。

 

ですが、ダメでした。

QFP IC用ソケットはピンの間隔が1.5mmしかないのに、基板用のソケットは1.3mmくらいの直径があるからです。さすがにギャップが狭くなりすぎです。

というわけで、1枚板のIC検査装置を作ってソケットを使いまわすというアイデアはコストがかかるという結論でボツになりました。


IC真贋判定装置の設計 その2

2022.05.10

 

昨日考えた「IC真贋判定装置」の基板は、ICのピン128本あたり1枚の基板に768個のアナログスイッチを乗せるという力技で、エレガントさがありませんでした。

一晩考えて、次の図のような構造を思いつきました。

これなら最大1024ピンまで対応できそうです。

Max1024pin

 

まず、下の図のような基板を作ります。これは16本分のテスト信号を作る基板で、アナログスイッチ96個と、その制御用のCPLDが乗っています。これを「信号基板」と呼ぶことにします。

Signal_pcb

この基板の端にはライトアングルのコネクタが出ていて、中継基板というのを作って、「信号基板」を何枚も挿せるようにしておきます。

Chuukei

この中継基板で四方から囲むようにして、最大64枚の信号基板からの信号を修正して1024pinにVCCやGND、H/Lといった信号を与えるわけです。

上から見ると、こうなります。

Topview

ちょっと無駄なスペースが多い感じなので、縦横に並べる基板の数は調整したほうがよさそうですね。

ちなみに、最大64個のCPLDと検査対象用のFPGAはすべてJTAGチェーンでつながっています。バウンダリスキャンを使ってピンだけ操作して相互接続を検査するわけです。もし、動いたら史上最長のJTAGチェーンではないでしょうか。

3D CADが欲しくなってきました。freeの3D CADで良いのないでしょうか?

 

それから、QFP144ピン検査用のICソケットが届きました。

Ic51_bot

YAMAICHIと書いてあることからもわかるようにこのソケットは山一電機、つまり日本製なのですが、悲しいことにディスコンになっているので中国から流通在庫を取り寄せました。

昨日のソケットとは違いシリンダになっているのではなく、1本1本のピンが金属ばね構造になっています。

Ic51_1

裏のピンは素直なピンでした。

Ic51_bot

中国発祥の武漢肺炎のせいで半導体不足が起きたのに、肝心の半導体も検査装置の部品も中国の流通在庫を頼らざるを得ないというのは何かが間違っています。


IC真贋判定装置の設計を始めます

2022.05.09

IC真贋判定装置の設計を始めました。

まずは任意のピンに電源とかGNDとかを与えられるような回路を考えています。

添付の図の基板は768個のアナログスイッチで128pinをコントロールする基板で、20cm角くらいのサイズになります。

Np1133_1

Np1133_2

TQFP144~240まではこの基板を2枚重ね、BGA324はこの基板を3枚重ねることになります。かなりの力技なので基板の回路図を描くだけでも大変です。

それから、QFP240用のICソケットが届きました。

Socket1

悲しいことに、このソケットも中国製なのです。

レバーがごつい。

Socket2

このレバーをくるっと回して黒い所を押すと開きます。

思っていたよりずっと精密で、白い台座の部分はセラミックスっぽい材質で、細い穴が開いています。

Socket3

この穴には直径0.2mmくらいのスプリング入りのプローブがはまっています。

Socket4

プローブは可動式になっていて、裏返すと全部引っ込んでしまいます。表にすると全部引っ込んでしまいます。

ソケットを基板に乗せるとプローブが上側に0.1mmくらい飛び出して、検査対象のICに接触するという仕組みなんだろうと思います。


流通在庫に手を出してみた

2022.05.06

Win Sourceという中国系の流通在庫商社があります。

現在、FPGAはDigikey、AVNET、Arrow、Mouserなど正規流通業者では全然手に入らないのですが、なぜかWinSourceには豊富にあります。

結構まめに連絡をくれる商社さんで、発送の時だけでなく、到着後にも2度3度と「いかがでしたでしょうか。何なりとお申し付けください」的なメールが来ます。

MAX2のEPM1270T144C5Nの在庫があったので注文してみたところ、2~3日後に発送、その後3日くらいで到着しました。

Winsource_1

中をあけると、部品のほかにスクラッチカードとかステッカーとかが入っていました。

Winsource_2

 

これが購入したMAX2の写真です。

Max2_2

このICが本物か偽物かはわかりませんが、こういう流通在庫を調べるための簡易半導体テスタを作るのが目的なのです。

?