makeBMM

概要

Xilinx社FPGA用コンフィグ用のbitファイルのブロックRAM(BRAM)部をXilinx社Data2memプログラムで上書きする場合の制御に使われるBMMファイルを生成します。 v02r01以降では、Data2memと同様な機能を持ち、UltraScale FPGAにも対応したXilinx社updatememプログラムにも対応しました。 ただし、Data2memと異なりupdatememプログラムはXilinx社SDK環境でのみ利用可能です。

リビジョン

makeBMM.py v02r01

コマンドライン

以下のようにコマンドプロンプトから起動するか、適当なGUIランチャー等から引数を与えて起動します。

IM用BMMファイル生成例)
python makeBMM.py --SITE IM.txt
DM用BMMファイル生成例)
python makeBMM.py --DMSITE DM.txt --DMB 7

以下のようなオプションをつけて動作させることで所望の結果を得ることができます。

コマンドラインオプション

オプション 意味
-h ヘルプ表示
–SITE st IM割当のBRAMを示すファイルを指定
–DMSITE st DM割当のBRAMを示すファイルを指定
–DMB b DMブロック番号(0-7)指定(無指定=5)
–BMM fn 生成するBMMファイル名(無指定可)
-x updatemem用mmiファイルを生成
-v バーボスモード
-V バージョンのみ表示して終了
-d デバッグモード

入力ファイルフォーマット

IM)
get_sites -of_objects [get_cells -hierarchical -filter { NAME =~
*IM0/IM0*IM_LL*ramloop[0]*SIMPLE_PRIM36.ram}] RAMB36_X4Y31

DM)
get_sites -of_objects [get_cells -hierarchical -filter { NAME =~
*DM*DM0*ramloop[0]*SIMPLE_PRIM36.ram}] RAMB36_X9Y80

構造

class makeBMM.siteReader(fnam, bname)[ソース]

Site File Reader Class.

Siteファイルを読み取ってBMMを生成するためのクラス

rLine(lin)[ソース]

Read Line method

読み取った1行を処理するメソッド エラーならTrueを返す そうでない場合はFalseを返す

read()[ソース]

read method

ファイルから行をリードして処理するメソッド

writeBMM()[ソース]

Write BMM file.

BMMファイルを出力する

writeMMI()[ソース]

Write MMI file.

MMIファイルを出力する

class makeBMM.dmSiteReader(fnam, bname, blkNum)[ソース]

DM Site File Reader Class.

DM Siteファイルを読み取ってBMMを生成するためのクラス

rLine(lin)[ソース]

Read Line method

読み取った1行を処理するメソッド エラーならTrueを返す そうでない場合はFalseを返す

writeBMM()[ソース]

Write BMM file.

BMMファイルを出力する

writeMMI()[ソース]

Write MMI file.

MMIファイルを出力する