天天看點

IP加密2.了解密鑰檔案3.加密準備4.如何運作加密工具5.文獻參考

IP加密2.了解密鑰檔案3.加密準備4.如何運作加密工具5.文獻參考

1.IP加密設計流程

基于IEEE1735-2014 第二版進行加密,将IP的密鑰檔案和IP源代碼通過Xilinx工具進行加密,然後交由客戶。

2.了解密鑰檔案

2.1 Version and agent

識别加密工具資訊

`pragma protect version = 2

`pragma protect encrypt_agent = “XILINX”

`pragma protect encrypt_agent_info = “Xilinx Encryption Tool 2015"

2.2 Common Rights

通用權限指定了适用于所有EDA工具的通用指南。這些權利适用于由IP作者在加密定義區域中指定的所有工具供應商。如果一個工具供應商不能遵守共同權利,工具供應商必須出錯并停止正在處理加密檔案。

`pragma protect begin_commonblock

`pragma protect control error_handling = “delegated”

`pragma protect control decryption = (activity==simulation)? “false” :“true”

`pragma protect end_commonblock

2.3 Vendor-Specific Rights

工具特定塊:包含Xilinx公開密鑰和Xilinx特定權限

`pragma protect begin_toolblock

`pragma protect rights_digest_method=”sha256”

`pragma protect key_keyowner = “Xilinx”, key_method = “rsa”, key_keyname =

“xilinx_2016_05”, key_public_key

...

2.4 Conditional Rights

`pragma protect control xilinx_configuration_visible = “false”

`pragma protect control xilinx_enable_modification = “false”

`pragma protect control xilinx_enable_probing = “false”

`pragma protect control decryption = (xilinx_activity==simulation)?“false” : “true”

`pragma protect end_toolblock = “”

`pragma protect begin

// Secure Data Block

// Protected IP source code is inserted here.

...

...

...

`pragma protect end

3.加密準備

兩種方式:将密鑰檔案和源代碼檔案作為輸入給Xilinx加密工具,就能生成加密源。

嵌入式模式,将嵌入式的密鑰源代碼作為輸入給Xilinx加密工具,也可以生成加密源。

IP加密2.了解密鑰檔案3.加密準備4.如何運作加密工具5.文獻參考

4.如何運作加密工具

encrypt [-key <arg>] -lang <arg>[-quiet] [-verbose] [-ext <arg>] <files>...

key是指定加密檔案

lang是加密語言

-ext是輸出檔案擴充格式

File是待加密檔案

例子:encrypt -lang verilog -ext .vp -key keyfile.txt myip.v

5.文獻參考

視訊連結:https://mp.weixin.qq.com/s/MT34xRT_Nn6P-9hi8com7w

文檔連結:

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2017_2/ug1118-vivado-creating-packaging-custom-ip.pdf