MITOUJTAGからMAX10に書き込む方法
XILINXとALTERAのデバイスが同一のJTAGチェーンにつながっている場合に、MITOUJTAGから書き込む方法を紹介します。
まず、Qualtus PrimeでMAX10のデザインを作ります。
QualtusのToolsからProgrammerを起動します。
QualtusのProgrammerが起動したら、いちど、まっさらな状態にします。
Add Fileを押して、MAX10の出力したファイルを選択します。
MAX10の内蔵ROMに書き込みたいならPOFを選び、揮発性のコンフィギュレーションをしたいならSOFを選びます。
下の図はPOFを選んだ場合の状態です。
次に、同一チェーン上にあるXILINXデバイスを追加したいのですが、当然ながらALTERAのツールはXILINXデバイスを認識しません。
そこで、Add Deviceボタンを押します。
どのデバイスを追加するかを聞かれるので、Importボタンを押します。
ファイル名を入力するダイアログが出るので...ボタンを押します。
D:\Xilinx\Vivado\2018.1\data\parts\xilinx\spartan7\public\bsdlディレクトリを指定し、中にあるxc7s25_csga225.bsdを指定します。
XC7S25が使用できるようになりました。
下の図のように、XILINXとALTERAがJTAGチェーンでつながります。
もし、順番が逆になっている場合にはUpボタンを押します。
次にMITOUJTAGから書き込むために、SVFというファイルを作ります。SVFを作るにはProgrammerのFileからCreate JAM JBC、SVF or ISC Fileを行います。
デフォルトでは、下の図のようにjamファイルになっているので、
これを選択して、
SVFファイルに変更します。また、TCKを1MHzに変更します。(これを行わないと遅くなる)
OKを押します。
これでSVFファイルができました。SVFファイルというのはこのような感じのテキストファイルです。
この中に、Spartan-6とMAX10がチェーンになった場合のMAX10書き込みシーケンスが入っていて、そのまま実行すれば書き込まれるようになっています。
そうしたら、MITOUJTAGを起動して、[ツール]→[SVFプレイヤー]を起動します。
先ほど生成したSVFファイルの中身を貼り付けます。
ここで開始ボタンを押すと、SVFが実行されて、MAX10に書き込まれます。
無事に書き込みが行われ、MAX10が起動しました。
下の図は、MAX10につないだシリアルADCを操作して、半固定抵抗の値やマイクで拾った音声を、JTAGロジアナで波形として表示しているようすです。
特にWindowsのソフトウェアを組むことなく、FPGAのピンからバイナリの値を出せば、MITOUJTAGのロジアナでそれを拾って、アナログ波形として表示できます。
このやり方は、FPGAやWindowsのソフトを作らなくてもよいので楽ですよ。
| 固定リンク
コメント