.. BramMan documentation. BramMan ======= 概要 ---- Xilinx社FPGA用をコンフィグするbitファイルのブロックRAM(BRAM)部に書き込むデータファイル(.MEMファイル)をアセンブラ出力のHEXファイルから生成するためのツールです。 逆にbitファイルをダンプした結果を解析することも可能です。書き込みにはXilinx社Data2memプログラムと、BMMファイル(makeBMM.pyなどで生成)が必要となります。 主としてXilinx社Virtex7 FPGAをその対象としています。 リビジョン ---------- BramMan.py v01r03 コマンドライン -------------- 以下のようにコマンドプロンプトから起動するか、適当なGUIランチャー等から引数を与えて起動します。 .. code-block:: none IM用MEMファイル生成例) python BramMan.py -a --BMM IM.BMM --HEX A.HEX --SADR 40000000 --EADR 40010000 --MEM IM.MEM DM用MEMファイル生成例) python BramMan.py -a --BMM DM.BMM --HEX A.HEX --SADR 600E0000 --EADR 60100000 --MEM DM.MEM 以下のようなオプションをつけて動作させることで所望の結果を得ることができます。 **コマンドラインオプション** +-----------+------------------------------------+ |オプション | 意味 | +===========+====================================+ |-h | ヘルプ表示 | +-----------+------------------------------------+ |--DMP dump | 解析対象dumpファイルを指定 | +-----------+------------------------------------+ |--HEX hex | アセンブラ出力HEXファイルを指定 | +-----------+------------------------------------+ |--MEM mem | 結果MEMファイル名を指定 | +-----------+------------------------------------+ |--BMM bmm | 書き込み先BRAMを示すBMMファイル指定| +-----------+------------------------------------+ |--SADR s | 変換開始アドレス(HEX) | +-----------+------------------------------------+ |--EADR e | 変換終了アドレス+1(HEX) | +-----------+------------------------------------+ |-a | 短い(4/5桁)下位アドレスで出力 | +-----------+------------------------------------+ |-L | 32ビットデータとしてdumpを解釈 | +-----------+------------------------------------+ |-n | dumpファイル中ノンゼロ行全出力 | +-----------+------------------------------------+ |-p | dumpファイル中BRAM情報の出力 | +-----------+------------------------------------+ |-e | dumpファイルから対象BRAMデータ抽出 | +-----------+------------------------------------+ |-v | バーボスモード | +-----------+------------------------------------+ |-V | バージョンのみ表示して終了 | +-----------+------------------------------------+ |-d | デバッグ用オプション | +-----------+------------------------------------+ 構造 ---- .. automodule:: BramMan .. autoclass:: BramMan.dmpReader :members: .. autoclass:: BramMan.HexFileRWriter :members: .. autoclass:: BramMan.bmmReader :members: