第 6 回[最終回] FPGA/CPLD からのフラッシュ ROM の書き換え 細渕 憲行 連載第 3 回では,バウンダリ・スキャン機能を使って CPU の外部バスに接続したフラッシュ ROM を JTAG 経由で 書き換える方法について解説した.ここでは外部バスのピン配置が決まっていない,CPLD や FPGA に接続されたフ ラッシュ ROM を書き換える方法について解説する. (編集部) ことにします.このFPGA評価ボードには,一つのCPLD (XC95288XL)と二つのFPGA(XC3S1500とXC3S400)が搭 1.UrJTAG の初期設定 載されており,フラッシュ ROM(Am29DL640G)は,CPLD 今回は連載第 3 回(2010 年 11 月号,pp.150-155)で紹介し からもFPGA(XC3S1500)からもアクセスが可能です. た JTAG 操 作 ツ ー ル UrJTAG を 使 っ て,FPGA や CPLD BLANCA のフラッシュ ROM 周辺の構成を図 1 に示し に接続されたフラッシュ ROM を書き換えます.連載第 3 ま す.CPLD は シ ス テ ム 制 御 用 で, 標 準 状 態 で は XC3S 回で紹介した CPU に接続するフラッシュ ROM のときと 1500 側からのフラッシュ ROM へのアクセスを仲介する動 は異なり,FPGA などのプログラマブル・デバイスは,任 作となっています.よって,CPLD のバウンダリ・スキャ 意のピンにフラッシュ ROM の信号を自由に割り当てられ ンを操作すれば 8 ビット幅でフラッシュ ROM へ,CPLD ます.UrJTAG はこの対応を定義することにより,簡易的 を標準動作状態にさせて FPGA のバウンダリ・スキャン な非同期バスを実現できます.今回はこの機能を使い, を 操 作 す れ ば 8 ビ ッ ト ま た は 16 ビ ッ ト 幅 で フ ラ ッ シ ュ FPGA 評価ボードに搭載されているフラッシュ ROM を書 ROM へアクセス可能です. き換えてみます. 以上のように,複数のデバイスから 8 ビット幅または 16 なお,UrJTAG のインストールとフラッシュ ROM の基 ビット幅でアクセスできるので,今回のテストにはうって 本手順については,連載第 3 回の内容を参照してください. つけのボードといえます. ● FPGA 評価ボード ● BSDL ファイルの登録 FPGA評価ボードとしては,本誌でおなじみの組み込 ま ず BLANCA と マ ル チ JTAG ア ダ プ タ を 接 続 し, みシステム開発評価キット(通称BLANCA)を取り上げる UrJTAG から JTAG チェーンを見てみましょう.UrJTAG をインストールしただけの状態で,detect コマンドでデバ フラッシュROM ROM_nBYTE BYTE ROM_nCE ROM_nOE FPGA XC3S1500 ROM_nWE ROM_A23∼1 ROM_D7∼0 ROM_D15∼8 CE システム 制御用 CPLD XC95288XL JTAG チェーン上に三つのデバイスが存在します.その うちの二つは XC3S400 と XC3S1500 として認識されてい OE ますが,残り一つの米国 Xilinx 社のデバイス XC95288XL WE が認識できていません.UrJTAG のデータ・ベースに存在 A22∼1 していないためです.BSDL(Boundary Scan Description D7∼0 Language)ファイルを使ってこのデバイスを認識できる D15∼8 Am29DL640 図 1 システム開発評価キット(通称 BLANCA)フラッシュ ROM 周辺の 構成 174 KEYWORD イスを検出した結果を図 2 に示します. ようにします. UrJTAG に BSDL ファイルを読ませるため,サーチ・パ スを設定します.デフォルトではサーチ・パスが設定され てません.コマンドは次のようになります. FPGA,CPLD,JTAG,バウンダリ・スキャン,BSDL,XC95288XL,XC3S400, XC3S1500,Am29DL640G Apr. 2011
© Copyright 2024 Paperzz