2.4.20 ソースのプロテクト (Veritak-Pro Only)

Vendorに自身のIPソースを見せたくないときがあります。自身のIP、VendorのIPを合体させたシミュレーションをしながら開発を共に進めたいときに有用なオプションです。他のシミュレータとは互換が全くありませんので、双方Veritak−Proライセンスを有している必要があります。プロジェクトを共有すれば、見ている波形も同じになり、より便利になるでしょう。

2.4.20.1 暗号化ソースの生成
プロジェクト設定Encrypt をチェックすると暗号化したソースを生成します。ファイル名はそのまま、拡張子をvpp としています。ファイルは、プロジェクトフォルダに生成されます。
暗号化は、ソースレベルです。暗号化は、プリプロプロセス処理後に行っていますので、include やifdef、define等は、展開済みです。

下図は、sampleフォルダにあるalu_test.vtakprj です。EncryptをチェックしてSaveします。その後、
Reloadでコンパイルするとプロジェクト中のソースファイルがvppファイルとして生成されます。





2.4.20.2 暗号化プロジェクトを作成する

2.4.20.1 で作成したvppファイルで新しくプロジェクトを組みます。(暗号化したいファイルのみvppファイルを使えばよいです。)なお、波形フォーマットを維持したまま作成する場合は、波形が出ている状態で、プロジェクトの名前をつけて保存を行ってから編集するとよいでしょう。

名前をつけて保存します。



alu.vを暗号化したalu.vppと取替えて(alu.vをCutします)Saveします。




暗号化した方のソースのコンパイルでは、ファイル情報はXXXX.になります。ScopeTreeViewでは、暗号化の有無によらず全波形を観測できます。しかし暗号化モジュールでは、Editorに飛べません。



TIPS:
・プロジェクト中の全ソースファイルに対応したvppファイルが生成されますが、ライブラリ中のモジュールについては生成されません。
・暗号化したソースは、VeritakVersionの影響を受けません。将来のVersionでも読み込み可能です。
・暗号化は、AES256ビットを使用しています。同じファイルでも生成毎にエンコードの内容は違います
・vppファイルをさらにもう一度、暗号化することはできません。vppファイルのupdateは、元の(2.4.20.1の)プロジェクトで行ってください
・Defineマクロをプロジェクト全体に伝播するオプションは使用できません。