1

私は VHDL クラスの途中で、Linux で ISE と Digilent ツールチェーンを比較的うまく使うことができました... PicoBlaze プログラムを再フラッシュしようとするまでは。詳細については、私が現在実行してターゲットにしている、

  • Fedora 21 64 ビット (3.19.3-200.fc21.x86_64)
  • Digilent の Nexys2 開発ボード (Spartan3 を使用)
  • ザイリンクス ISE 14.7
  • Adept 2.16.1 ランタイム
  • Adept 2.2.1 ユーティリティ

これまでのところ、Linux で ISE を実行し、iMPACT を使用して Nexys2 ビット ファイルをプログラムできましたが、現在のプロジェクトは、PicoBlaze ソフト コア プロセッサ用のアセンブリ プログラムを記述し、実行中のベクターのメモリをコンパイルおよびアップデートすることです。 VHDL を再合成する必要があります。

Kris Chaplin の投稿の手順を使用して、PSM を HEX にコンパイルし、その HEX ファイルを dosbox で SVF に変換できます。ここから、Windows で Digilent の Adept ツールを使用して、既に合成された PicoBlaze を含む top_level.bit ファイルをプログラムできます。これは、Linux の ISE の iMPACT でも実行できます。デザインが実行された後、Adept を使用して SVF ファイルをデザインの実行中のメモリにプログラムすることができます。ただし、Linux で SVF を iMPACT にロードしようとすると、例外がスローされます。

EXCEPTION:iMPACT:SVFYacc.c:208:1.10 - データが一致しません。

そのエラーでオンラインで見つけた唯一の問題は、削除する必要がある「@」記号があることを示していますが、SVF のどこにも「@」はありません。

また、SVF を XSVF に変換しようとしました。iMPACT で XSVF をロードするとエラーは発生しませんが、XSVF をプログラムまたは実行すると、新しいプログラムが実行されずにデザインがフリーズします。

Adept には、私が見た Linux に匹敵する GUI はありません。cmd ライン ツール 'djtgcfg' だけです。iMPACT と同様に、toplevel.bit ファイルを次のコマンドで問題なくプログラムできました。

$ djtgcfg prog -d Nexys2 -i 0 -f ../../toplevel.bit

しかし、同じ呼び出しで svf ファイルをプログラムしようとしても、何の影響もないようです。数分かかると言われ、すぐに「プログラミングが成功しました」と報告されますが、デバイスに変化は見られません。

できれば、環境をすべて Linux のままにしておきたいのですが、ラップトップに 2 つの VM 間を行き来する十分なスペースがありません。

iMPACT を使用して SVF ファイルを Nexus2 に書き込むことはできますか。または、Adept ユーティリティを別の方法で使用できますか?

誰かがこれを機能させましたか?ありがとうございます!

4

2 に答える 2

1

再合成せずに PicoBlaze 命令 ROM を再構成するためのより良い方法が多数あります。

  • ザイリンクスのdata2memツールを使用
    このトールは ISE に付属しており、ビット ファイルのブロック RAM の内容にパッチを適用できます
    => FPGA の再プログラミングが必要です
  • PicoBlaze の埋め込み JTAGLoader6 を使用 テンプレート ファイルで埋め込み JTAGLoader6 デザインを有効にします。JTAG_Loader_RH_64バイナリを使用するかJTAG_Loader_Win7_64.exe、JTAG 経由で 16 進ファイルを PicoBlaze ROM にアップロードします。
    => 実行時に ROM を再構成、FPGA の再プログラミングは不要

Ken Chapmanのマニュアルには、JTAG_Loader の使用方法に関するページがいくつかあります。また、forums.xilinx.com で PicoBlaze のディスカッションを参照してください。JTAG_Loader に関するバグや問題、およびそれらの解決方法に関するいくつかの議論があります。

代替の改善された PicoBlaze アセンブラとして、Kevin Thibedeau による opbasmも参照してください。また、ROM パッチ ツールも同梱されています。

于 2015-04-10T15:29:14.347 に答える
0

元のポスターには少し遅れていることはわかっていますが、同じクラスを受講していると思われ、Linux に picoblaze コードをアップロードする解決策を見つけたと思います。

ザイリンクス IP ダウンロードから KCPSM3 zip ファイルをダウンロードし、内容を抽出して、実行可能ファイルを JTAG_loader フォルダーから作業ディレクトリに移動します。

dosbox で nexys2 ボードの hex2svfsetup.exe を実行し、メニュー オプションを選択します 4 - 0 - 1 - 8 アセンブラを使用して .hex ファイルを作成します

dosbox で hex2svf.exe を実行して svf ファイルを作成します

次に、svf2xsvf.exe -d -i < input.svf > -o < output.xsvf > を実行します。

最初の zip ファイルにある JTAG_Loader_quick_guide.pdf とは逆に、影響を使用して xsvf ファイルを開き、xsvf ファイルを使用してプログラムします。

于 2016-03-26T21:38:46.570 に答える