これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド gvhdl です。
プログラム:
NAME
gvhdl - VHDL コンパイラー/シミュレーター FreeHDL のフロントエンド。
SYNOPSIS
gvhdl [オプション] ... [VHDL_FILES] ... [OBJECT_FILES]..。
DESCRIPTION
無料HDL は、ハードウェア記述言語 VHDL のコンパイラ/シミュレータ スイートです。 VHDL'93
VHDL'87 標準もサポートされています。
無料HDL 元の VHDL ソース ファイルを C++ に変換します。 次に、C++ ソースは次のようになります。
コンパイルされてカーネルにリンクされ、シミュレーション プログラムを構築します。 生成されたものを開始する
実行可能ファイルは、対応する VHDL モデルをシミュレートします。 実際のビルドプロセスは、
VHDL ソースからシミュレータを生成することは、
gvhdl スクリプト。
VHDL_FILES は、.vhdl または .vhd で終わる必要がある VHDL ソース ファイル名のリストです。 最初
VHDL ファイル名によって、シミュレータの実行可能ファイルの名前も決まります。 これが、決勝です
実行可能ファイルの名前は、最初の VHDL ファイルの後に .vhdl または .vhd 拡張子を付けずに付けられます。
オブジェクト ファイルとシミュレータは現在の環境で作成されることに注意してください。
ディレクトリにあります。
OBJECT_FILES シミュレータの実行可能ファイルにリンクされているオブジェクト ファイルのリストを指定します。
gvhdl は、.o で終わるすべてのファイルをオブジェクト ファイルとみなします。 通常、これらのオブジェクトは
ファイルは、別個の実行中に VHDL ソース コードから事前に (オプション -c を使用して) 生成されます。
コンパイルステップ。
OPTIONS
-L VHDLLIB
VHDLライブラリのルートディレクトリへのパス。 このディレクトリ内で、コンパイラは
名前の付いたファイル v2cc.libs。 マッピングファイル v2cc.libs ライブラリユニット名を変換します
ディレクトリへ。 複数のVHDLLIBが提供される場合があることに注意してください。
-g 実行可能ファイルにデバッグ情報を追加します。 詳細には、このオプションは
生成されたマシン コードが VHDL ソース ファイルの対応する行に追加されます。
-G デバッグ情報を実行可能ファイルに追加しますが、マシンコードは関連付けません。
VHDL ソース行。 このオプションは、生成された C++ コードをデバッグするために実際に使用されます。
-c シミュレータの実行可能ファイルを生成しません。 このオプションを使用すると、コンパイラは
VHDL ソースを実行可能ファイルに変換し、オブジェクト コードにコンパイルしますが、コンパイルは行いません。
最終的なシミュレータの実行可能ファイルを生成します。 このオプションはコンパイルに特に便利です
VHDL パッケージ。
-l ライブラリ名
VHDL ソース コードを VHDL ライブラリ LIBNAME に関連付けます。 デフォルトではライブラリ名
WORKが使われています。 このオプションは、複数の VHDL コンポーネントの場合に特に重要です。
VHDL ライブラリはシミュレータに組み込まれます。 そのためには、
現在動作しているライブラリ以外の VHDL コンポーネントを正常に使用できます。
対応する VHDL ファイルは、コンパイラが次のメカニズムを使用して見つける必要があります。
v2cc.libs に記載されています。 さらに、コンポーネントは適切なコードでコンパイルする必要があります。
-l LIBNAME オプション。
--relaxed-コンポーネントの可視性
からの非表示のデフォルトバインディングを許可します 作業.
--libieee
IEEE 標準ライブラリ ファイルをシミュレーション実行可能ファイルに追加します。
ENVIRONMENT 変数
V2CC_LIBRARY_PATH
変数V2CC_LIBRARY_PATHは、「:」で区切られたファイル名で構成されます。 に加えて
環境変数の場合、「-Llibdir」コマンドラインオプションを次のコマンドで使用できます。
v2cc。 「-L」で指定されたディレクトリは、指定されたディレクトリの前に追加されます
V2CC_LIBRARY_PATHによる。 最終的なライブラリパスでは、それらはと同じ順序で表示されます
コマンドラインで。
サポートされている VHDL サブセット
現在、FreeHDL は VHDL'93 標準全体をサポートしていません。 以下不完全
リストは、現在サポートされていないものの概要を示します。
- 複合タイプの形式の個別の関連付けはサポートされていません。
- 共有変数はサポートされていません。
- 属性トランザクション、静か、安定、遅延はサポートされていません。
- ユーザー定義の属性はサポートされていません。
- グループはサポートされていません。
- 保護された信号の割り当てはサポートされていません。
- 構成はサポートされていません。
- 現在、ドライバーをオフにすることはできません。
例
gvhdl -c adder.vhdl
adder.vhdl のオブジェクト ファイルを構築します。 adder.vhdl には複数の VHDL が含まれる場合があることに注意してください。
モデル。
gvhdl adder.vhdl
のシミュレータを生成します last VHDL モデルは adder.vhdl にあります。 ただし、この中では
この場合、シミュレータの構築に必要なすべての VHDL コンポーネントを
VHDL ソース ファイル。
gvhdl top.vhdl adder.o --libieee
すべてのモデルをコンパイルすることにより、top.vhdl で見つかった最後の VHDL モデルのシミュレーターを生成します。
top.vhdl および (以前に生成された) adder.o オブジェクト ファイルと IEEE 標準へのリンク
ライブラリを実行可能ファイルに追加します。
gvhdl -c -l mylib adder.vhdl
adder.vhdl で提供されるすべてのコンポーネントを含むオブジェクト ファイルを構築します。 ただし、
この場合、コンポーネントはデフォルトではなくライブラリ mylib に関連付けられます。
図書館名作品。 オプション -l は生成された C++ ソース コードにのみ影響することに注意してください。
オブジェクト ファイルまたは実行可能ファイルが保存されている場所は変更されません。
シミュレーション コマンド
シミュレータが開始されると、使用可能なコマンドの短い概要が出力されます。
画面へ:
c : サイクルの実行 = 実行シミュレーションサイクル
n : next = 次のシミュレーション サイクルを実行します
q : quit = シミュレーションを終了する
r : run = シミュレーションを実行します
d : dump = 信号をダンプします
doff : dump off = 信号のダンプを停止します
don : dump on = 信号のダンプを継続します
s : show = 信号値を表示
dv : dump var = 信号リストから信号をダンプします
ds : dump show = ダンプされた信号のリストを表示します
nds :number show = ダンプされた信号の数を表示します
dc [-f ] [-t ] [-cfg ] [-q]
: ダンププロセスを構成します
信号は VCD 形式のファイル (デフォルトのファイル名は「wave.dmp」) にダンプされることに注意してください。
このファイル形式は、各 VCD 波形ビューアで受け入れられる必要があります。 ファイル名は次のように設定されます
「wave.dmp」ですが、「dc -f」を使用して変更できます。 ただし、必ず実行してください。
「d」を実行する前に「dc -f ...」を実行してください。
SIMULATOR COMMAND LINE OPTIONS
シミュレーションはコマンド ライン パラメータ「-cmd "cmd1; cmd2; ..."」によって制御できます。
「cmd1」、「cmd2」、... は、前のセクションで説明したシミュレーション コマンドです。 注記
各コマンドは「;」で区切る必要があります。 例: 実行
./top -cmd "d;run 1000 ns;q;"
シミュレーション プログラム 'top' を開始し、すべての信号をダンプし、シミュレーションを 1000 ns 実行します。
最後に、シミュレーションが終了します。 実際には、最後のコマンド「q;」 としてオプションです
シミュレータは、最後のコマンドが実行されるとすぐに自動的に終了します。
onworks.net サービスを使用してオンラインで gvhdl を使用する