toms.log
2020/01/04
Quartusコマンドライン補助ツール
Quartus PrimeおよびModelSimASEをコマンドライン上から操作するためのシェルスクリプト`quartus.sh`を作った.
githubリポジトリは以下. [https://github.com/toms74209200/QuartusCLI](https://github.com/toms74209200/QuartusCLI) 以前作ったものが肥大化したという結果である. 以前作ったもの↓ [toms.log: Quartusのためにコマンドラインツールを作る](https://toms-log.blogspot.com/2019/08/quartus.html) 動作環境は以下の通り. Quartus Prime 18.0.0 Build 614 04/24/2018 SJ Lite Edition ModelSim - Intel FPGA Starter Edition 10.5b 2016.10 Altera Nios2 Command Shell 18.0 Build 614 または Windows Subsystem for Linux(WSL) Ubuntu 16.04.6 LTS 引数によって以下の7通りのコマンドが実行できる. 1. Quartus GUI起動(引数無しorプロジェクト名`
`) 1. コンパイル(`sh`) 1. シミュレーション(`sim`) 1. プロジェクト作成(`mk`) 1. アーカイブ作成(`qar`) 1. Analysis & Synthesis(`map`) 1. Block Symbol File(`bsf`)作成(`bs`) ```bash $ quartus.sh
``` ## 1. Quartus GUI起動 引数無しでスクリプトを実行するかプロジェクト名を引数で与えるとQuartusが起動する. ```bash $ quartus.sh ```
## 2. コンパイル 引数に`sh`を与えるとカレントディレクトリのプロジェクトのコンパイルが実行される. またプロジェクト名を引数に与えてプロジェクトを指定できる. ```bash $ quartus.sh sh Info: ******************************************************************* Info: Running Quartus Prime Shell ~ Info: Command: quartus_sh --flow compile
Info: Quartus(args): compile
~ ```
## 3. シミュレーション コンパイルと同様に引数`sim`を与えるとNativeLinkが動作し, ModelSim用のスクリプトファイル(`simulation/modelsim/*.do`)が生成され, シミュレーションが実行される. またすでに`*.do`ファイルが存在する場合, 以下が書き換えられる. ```diff - vsim -t 1ps -L altera ~ + vsim -msgmode both -displaymsgmode both -L altera ~ - add wave * + add wave -hex * ``` 書き換える項目は以下の3つ. - タイムスケールの設定をテストベンチファイルで行うようにする - ModelSimで使える`$messagelog`をmessagge viewerと波形ビュアーに表示 - 波形を16進で表示
すでにModelSimが起動している場合は動作しない. ## 4. プロジェクト作成 以下のように引数に`mk`とプロジェクト名を与えるとQuartusのプロジェクトが生成される. ```bash $ quartus.sh mk
``` 生成されたプロジェクトにはカレントディレクトリ以下(1階層下まで)にあるソースファイル(VHDL`.vhd`, Verilog HDL`.v`, Block Diagram/Schematic File`.bdf`)が登録される. またSystem Verilogで書かれたテストベンチファイルが`./testbench/`にあればテストベンチシミュレーションの設定を行う.
## 5. アーカイブ作成 以下のように引数に`qar`と履歴情報`
`を与えるとアーカイブを作成する. ```bash $ quartus.sh qar
Info: ******************************************************************* Info: Running Quartus Prime Shell ~ Info: Command: quartus_sh --archive -output ./archive/
_
_YYMMDD/
_
_YYMMDD PROJECT Info: Quartus(args): -qar -output ./archive/
_
_YYMMDD/
_
_YYMMDD
``` アーカイブは`./archive/`に生成される. `./archive`には生成したアーカイブファイル`
_
_YYMMDD.qar`が置かれる. またカレントディレクトリに`./src/`があればそれもコピーされ, `./archive`に置かれる. さらに`./output_files/`にある`*.sof`, `*.pof`, `*.jic`ファイルもコピーされる.
## 6. Analysis & Synthesis コンパイルと同様に動作する.
## 7. Block Symbol File(`bsf`)作成 引数に`bs`とファイル名`
`を与えると`*.bsf`ファイルを生成する.
```bash $ quartus.sh bs
```
0 件のコメント:
コメントを投稿
次の投稿
前の投稿
ホーム
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿