移植作業メモ

bfin-elf-gccによるビルドの目処が付いたので、すこしずつ作業を進めることにしました。いまのところ、ソースコードの管理を一元化する方向で作業しています。つまり、同じソースでVisualDSP++にもgnuツールチェーンにも対応することが目標です。以下、作業記録と作業予定をふくみます。

アセンブル時のコマンドラインオプション

TOPPERS/JSPでは、アセンブリファイルの拡張子は.Sを使うことになっています。しかし、この拡張子はVisualDSP++の場合、コンパイラの中間ファイル名として使われています。そこで混乱をふせぐため、.asmをアセンブリ言語ファイルの名前とします。gccのオプションは以下の通り

$bfin-elf-gcc -x assembler-with-cpp

cdef_lpblkfn.h

cpu_config.hでVisualDSP++のcdef_lpblackfin.hを読みこんでいますが、もちろんこれはgccでは使えません。gccの場合は別に定義したファイルを読むように変更しました。

offset.h

未作業ですが、VisualDSP++用のファイル名は変更しなければなりません。gccでのビルド時にオーバーライトされてしまいます。

sys_support.h

初期化フック関数です。おそらくはSDRAMコントローラの初期化などに使えるでしょう。未実装。

スタート開始番地

最初の実装ではExecute In Placeになると思われますので、0x20000000がスタート番地です。非同期メモリバンク0の最初のアドレスです。