ModelSimコマンドラインのサンプル・データを使って、Verilog-HDLとVHDLの記述を比較しました。このサンプル・データは、シミュレータの実行スクリプトの動作確認を目的としているため、設計データは次のように非常に単純です。mod_b記述比較サブ・モジュール:mod_aVerilog-HDLVHDLサブ・モジュール:mod_bVerilog-HDLVHDLトップ・モジュール:mod_topVerilog-HDLVHDLまとめ設計データの概要トップ・モジュールはmod_topmod_top内部は2つのモジュールmod_aとmod_bで構成される。mod_aとmod_bは直列に接続され、パイプラインを構成する。mod_a内部は8ビットの非同期リセット付きレジスタ。入力がそのまま出力される。mod_a内部は8ビットの非同期リセット付きレジスタ。入力の反転が出力される。mod_bmod_bモジュール記述比較サブ・モジュール:mod_aVerilog-HDLクロック同期のレジスタはalwaysで記述しています。i_in;endendmoduleVHDLクロック同期のレジスタはprocessで記述しています。rtl;サブ・モジュール:mod_bVerilog-HDLmod_aとの違いは、入力データの反転部分です。反転は~演算子で行っています。~i_in;endendmoduleVHDLmod_aとの違いは、入力データの反転部分です。反転はnot演算子で行っています。rtl;トップ・モジュール:mod_topVerilog-HDLmod_aとmod_bをそれぞれu_mod_a、u_mod_bとしてインスタンス化しています。w_out_aで接続しています。(.clk(clk),.rst_x(rst_x),.i_in(w_out_a),.o_out(o_out));endmoduleVHDLmod_aとmod_bをそれぞれu_mod_a、u_mod_bとしてインスタンス化しています。w_out_aで接続しています。rtl;まとめ論理合成を意識したデザインの記述については、どちらの言語を使ってもあまり大きな違いはありません。記述量だけで言えば、Verilog-HDLの方が少ないでしょう。最近は高位合成が手軽に試せるようになったので、低レベルのHDL自体を記述することが少ないかもしれませんが。PLIで浮動小数点の値をバイナリ値に変換する方法を紹介します。シミュレータはModelSim、動作環境はWindows上のcygwinです。手順は次の4ステップです。Cverはオープンソースのインタプリタ型Verilogシミュレータです。10年位利用していますが、CVerのシミュレーションで問題が起きた記憶はありません。VerilogのVPIVPIを使うと、自作のC関数をVerilog環境にtaskとして追加できます。VerilogにVPIでtaskを追加してシミュレーションを実行する手順は次の通りです。Verilogコードのコ...設計GTKWaveのコンパイルエラーVivadoやQuartusにも波形ビューワが付属していますが、ツールを起動するのに時間がかかるため、RTLのデバッグにはGTKWaveを多用しています。Verilogをインストールしました。License)のVerilogシミュレータです。Editionは、ライセンス不要のVerilog/VHDLシミュレータです。ディジタル技術資料タイトルとURLをコピーしました。