« Spartan-6内蔵EndPointBlockのフローコントロール | トップページ | Spartan-6 MCBを使ったPCI ExpressのDMAができた »

2011.11.29

MITOUJTAGがi.MX25のバウンダリスキャンに成功!

MITOUJTAGがi.MX25のバウンダリスキャンに成功しました。

i.MX25というのは、FreescaleのSoCで、ARM9を中心にいろいろなペリフェラルを内蔵した複合的なICです。

ARM社はコアの設計情報を提供するだけなので、SoCに組み込んだ場合にI/Oをどのようにバウンダリスキャンするかというのは、コアの外側を作るベンダーに任されることになります。ARMコアにはバウンダリスキャンでI/O端子を見たり操作したりする機能はないので、外側を作るベンダーがバウンダリスキャンの機能を入れるかどうかで、対応できるかどうかが決まるというわけです。

しかし、ARMのコア自体もJTAGのパスが通っているので、実際にはどのような構成になるかというと、デバッグ関係のモジュールが直列につながっている構成になるようです。

バウンダリスキャンができるようにしてみると・・

Imx25_bscan

i.MX25くらいの複雑なデバイスになると、中にいろいろなモジュールが入っています。なんと、1つのパッケージ内に4つのJTAGデバイスが直列に入っているようです!

最初のがバウンダリスキャン用のモジュールで、次のDAPというのはよくわからない。ETMはトレースらしい、そして最後にARM9のコアです。
DAPやETM、ARM9についてはBSDLファイルがないので、推測しながら、BYPASSとIDCODEだけをサポートしたものを作りました。

そうしたら、このように最初のモジュールに対してバウンダリスキャンができ、i.MX25のI/O端子を見たり操作したりすることができるようになったというわけです。

MITOUJTAGでは、端子の動作を波形で見ることもできます。
Imx_wave

そして、最後に基板検査機能を走らせてみました。
Imx_pcbcheck

MITOUJTAGでは、基板上にJTAGデバイスが1個しかなくても単体でオープン/ショートが検査できます。

単純なオープン/ショートテストであれば、設定ファイルを作る必要はありません。デバイスのI/Oが、浮いているか、どこかにプルアップ/プルダウンされているか、またはどこかの出力ピンとショートしているかが自動的に調べられます。デバイス単体であっても、とてもとても手軽に検査ができてしまいます。
このへんが、従来のJTAGバウンダリスキャン・テストツールとの違いだと思います。

ということで、iMX25はMITOUJTAGに対応しているといえるでしょう。

|

« Spartan-6内蔵EndPointBlockのフローコントロール | トップページ | Spartan-6 MCBを使ったPCI ExpressのDMAができた »

コメント

コメントを書く



(ウェブ上には掲載しません)




« Spartan-6内蔵EndPointBlockのフローコントロール | トップページ | Spartan-6 MCBを使ったPCI ExpressのDMAができた »