KCPSM3アセンブラが吐き出すMEMファイルを使って,
BITファイル中のPicoBlazeの命令BRAMブロックのみを
更新する方法が記載されていたので,自分自身も忘れないようここに紹介する.
まず次のフォルダにパスを通しておく.
C:\Xilinx\12.4\ISE_DS\ISE\bin\nt
このフォルダに,PicoBlazeの開発ツールの下記フォルダにある
bp_bmm.exeを上記フォルダにでもコピーしておく.
KCPSM3\DATA2MEM_assistance
ここでPicoBlazeのアセンブリファイルをprogram.psmとし
ISE Navigatorのプロジェクト名がsampleだとすると
次のコマンドを実行する
kcpsm3 program.psm pb_bmm program.bmm sample.ncd data2mem -bm program.bmm -bd program.mem -bt sample.bit -o b new_sample.bit
出来上がったnew_sample.bitをFPGAにアップロードすればよい.
data2memを実行途中でPicoBlazeの命令を収めたメモリブロックを選択する
プロンプトが表示される.1つしか無いなら迷わず1を押してリターン.
複数ある場合は,確認する必要がある.
ひとまず,これでPicoBlazeのマシン語を修正したときに
論理合成とインプリメントの時間待たされずにすむので大助かり.
出来上がったBITファイルをJTAGケーブルでダウンロードすれば
新しいプログラムの実行を確認できる.