3.VHDL=>Verilog 変換

VHDLのソースファイルをVerilogのソースファイルに変換します。
変換作業は、一般的には次のステップを踏みます。一般に信じられているほど簡単ではありません。

  1. 「VHD->Verilogトランスレータ」[新規プロジェクトの作成」でプロジェクトファイルを作ります。また、VHDLソースファイルを指定します。
  2. Translateを実行します。VHDL上の文法エラーはここでチェックされます。また、変換不能でなければ、
    • Single Fileの場合は”translated.v"を生成
    • プロジェクトファイルの場合は、プロジェクト名前.vを生成
  3. Verilog プロジェクトとしてコンパイルします。ここで、Verilog上の構文エラー等がチェックされるので、エラーが発生した場合は、手修正します。また、必要に応じVHDLソースファイルを修正し、Aからやり直します。
  4. Verilogシミュレーションで動作を確認します。
  5. Veritakは、なるべくVerilogStandardを使って変換を試みます。最新のVerilog2001構文を使っても表現できない場合は、Verilog上の外部Call Functionである VPIを使います。(内部はC で記述) それでも表現不能の場合には、独自拡張構文を使います。これにより、従来は変換不能だったBehaviorコードも変換してしまう場合があります。そのため、Veritakで通っても、他シミュレータ、または、論理合成を行う場合は、エラーが発生する事があります。また、論理合成用の記述としては不適切な場合もありえます。なお、今後のVersionUpではSystem Verilogの変換に順次切り替えて行きます。
  6. その場合は、エラーメッセージに従って手修正を行ってください。
<Option>
  

Single Fileの変換例として、http://japanese.sugawara-systems.com/opencores.htmをご参照ください。
また、論理合成まで行った高度な例としてhttp://www.sugawara-systems.com/opencores/plasma.htmをご参照ください。少し複雑な例では、ユーザ介入は必須になります。Verilog/VHDL双方の専門知識の有る方の変換補助ツールと考えた方がよいかもしれません。