« カイロはカイロでも | トップページ | なひたふ新聞の大改造 »

2005.01.17

玄箱をMITOUJTAGで解析

 玄人志向の玄箱を、MITOUJTAGで解析してみます。

玄箱のJTAGコネクタ

 私の手元にある玄箱は、MCP8241というCPU(PowerPC)が搭載されているタイプです。このCPUはJTAGに対応しており、基板上のCN5に、JTAGのピンが出ています。

玄箱をJTAG接続 右の写真は、玄箱をJTAGで接続した様子です。

 JTAGのピン配置は、1-TDO,3-TDI,7-TCK,9-TMS,4-TRST,6-VCC,16-GNDとなっています。CN5の横にあるチップ抵抗R67は、JTAGコネクタの6番ピンにVCC(3.3V)を供給するための抵抗で、MPC8241のデータシートによれば、1kΩを接続するようです。

プルアップ抵抗 また、RA11はチップタイプの集合抵抗で、TRSTやその他のデバッグ用の制御信号に接続されいます。データシートによれば10kΩでプルアップするようです。
 あいにく、手元に1005サイズ×4で10kΩ集合抵抗がなかったため、1005サイズの10kΩのチップ抵抗4本を縦にして半田付けしました。

MPC8241のバウンダリスキャン Mobile JTAG Cableを接続し、MITOUJTAGを起動します。MPC8241はJTAGのIDCODEを持っていないため、自動認識はできません。したがって、手動でBSDLファイルを追加することになります。MPC8241R1Bbsd.txtをMITOUJTAGに読み込ませると、数箇所でエラーが出ますが、実動作上の問題はないようです。(右の図はクリックで拡大します)
 また、MPC8241のBSDLファイルには、パッケージ名が詳しく記載されていないので、MITOUJTAGで読み込んだ後、パッケージファイルbga400.pkgを指定します。(本当はMPC8241は19*19-4のBGAなのですが、そのパッケージファイルを用意していないため、400ピンのBGAで代用しています。そのため端っこの一列に白いピンが出ています)

 玄箱の電源を入れた後、TAP RESETの操作を行い、MITOUJTAGのSAMPLEボタンを押すと、右上の図のように、MPC8241の各端子の状態をサンプルすることができます。

MPC8241のJTAGロジアナ解析 次に、JTAGロジックアナライザを起動して、信号の波形を見てみると、MDH[31:0]のバスが盛んに動いています。一方、AD[31:0]、MDL[31:0]のバスは動作していないようです。そのほか、いろいろな制御信号が観察することができます。(右の図はクリックで拡大します)

 また、データバスなどのいくつかの信号が、JTAGで自由に操作できることも確認しました。CPUとフラッシュROMとのピン接続がわかれば、フラッシュROMの書き換えができるかもしれません。

 ただし、いくつかの問題も発生しました。
 私の玄箱は、電源を入れてから10秒くらいで自動的にシャットダウンしてしまい、長期間の解析ができません。シャットダウン後はDIAGの赤LEDが6回点滅を繰り返す状態になり、電源ボタンを2回押さないと電源が入りません。

 EXTESTを行うとCPUを気絶させることができるので、EXTESTを行うと自動でシャットダウンはしなくなります。よって、CPUのプログラムにより何らかのシャットダウンモードに入ってしまっていると思われます。
(コンソールをつなげば、原因はすぐにわかるのでしょうが・・)

 玄箱って、簡単じゃありませんね。本当に玄人志向です。

|

« カイロはカイロでも | トップページ | なひたふ新聞の大改造 »