0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何對Verilog/SystemVerilog代碼加密

sanyue7758 ? 來源:處芯積律 ? 2024-01-15 09:32 ? 次閱讀

Verilog代碼

以VCS 2017為例,可以使用-autoprotect128/-auto2protect128/-auto3protect128選項,實現(xiàn)不同級別的自動代碼加密。以auto2protect128為例,可以對module內(nèi)除端口列表以外的內(nèi)容加密。

vcs -auto2protect128 -f dut_file_list.f

還有一個-protect128選項,需要先在待加密代碼前后添加“`protect128”和“`endprotect128”。

SystemVerilog代碼

我個人實際測試下來,上面的-autoprotect128/-auto2protect128/-auto3protect128選項不能對SystemVerilog代碼自動加密,只能借助于-protect128選項。如果平時寫代碼過程中就已經(jīng)添加“`protect128”和“`endprotect128”,可以直接使用vcs命令加密:

vcs-protect128-ftb_file_list.f

而如果平時寫代碼時沒有加,下面提供一個Python腳本,在給定文件列表中每個文件的首行添加“`protect128”,末尾添加“`endprotect128”,具體使用sed和echo命令實現(xiàn)文件首尾添加內(nèi)容。?

#add_protect.py


import sys
import os


def main():
  if(len(sys.argv) != 2):
print("Optionsilleagal.")
    sys.exit()
  else:
    o_file = sys.argv[1]
    add_protect(o_file)


def add_protect(o_file):
  try:
    f_obj = open(o_file)
  except FileNOtFoundError:
    print(o_file+" :no such file.")
  else:
    for line in f_obj:
      os.system("sed -i '1i `protect128' " + line)
os.system("echo'`endprotect128'>>"+line)


    f_obj.close()


main()

os模塊中的system()函數(shù)接受一個字符串參數(shù),其中包含要執(zhí)行的命令。在21-22行中,line為字符串變量,和前面雙引號中的linux命令拼接在一起,組成system()函數(shù)的字符串參數(shù)。

pythonadd_protect.pytb_file_list.f

審核編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1343

    瀏覽量

    109932
  • 字符串
    +關(guān)注

    關(guān)注

    1

    文章

    575

    瀏覽量

    20471
  • VCS
    VCS
    +關(guān)注

    關(guān)注

    0

    文章

    78

    瀏覽量

    9581
  • python
    +關(guān)注

    關(guān)注

    55

    文章

    4774

    瀏覽量

    84386

原文標(biāo)題:使用VCS進行代碼加密的方法

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    systemverilog學(xué)習(xí)教程

    systemverilog的一些基本語法以及和verilog語言之間的區(qū)別。
    發(fā)表于 04-01 14:24

    round robin 的 systemverilog 代碼

    大家好,我對一個 round robin 的 systemverilog 代碼有疑惑。https://www.edaplayground.com/x/2TzD代碼第49和54行是怎么解析呢 ?
    發(fā)表于 03-14 19:16

    請問GLCM verilog代碼不能正常工作該怎么辦?

    嗨.., 我創(chuàng)建了一個程序,用于使用for循環(huán)計算GLCM,如果系統(tǒng)verilog中的條件,但它不能正常工作,這里我附上我的代碼請參考并給我一個解決方案,有可能合成systemverilog ... ???GLCM.sv 1 K
    發(fā)表于 11-11 15:28

    保護您的 IP 內(nèi)核——第一部分軟 IP,第一節(jié):HDL 代碼加密

    代碼。 ModelSim 通過受保護的加密信封支持 VHDL、VerilogSystemVerilog IP 代碼
    發(fā)表于 02-23 12:27

    SystemC 和SystemVerilog的比較

    就 SystemC 和 SystemVerilog 這兩種語言而言, SystemC 是C++在硬件支持方面的擴展,而 SystemVerilog 則繼承了 Verilog,并對 Verilo
    發(fā)表于 08-16 10:52 ?5345次閱讀

    verilog_代碼資料

    verilog_代碼資料,非常實用的代碼示例。
    發(fā)表于 02-18 15:00 ?37次下載

    verilog代碼規(guī)范

    verilog代碼規(guī)范,學(xué)會寫代碼還不行,我們需要更加的規(guī)范。
    發(fā)表于 03-25 14:43 ?24次下載

    Verilog 入門的實例代碼

    Verilog 入門的實例代碼,有需要的下來看看
    發(fā)表于 05-24 10:03 ?20次下載

    verilog_代碼

    verilog_代碼分享,有需要的朋友下來看看。
    發(fā)表于 05-24 10:03 ?12次下載

    使用Verilog/SystemVerilog硬件描述語言練習(xí)數(shù)字硬件設(shè)計

    HDLBits 是一組小型電路設(shè)計習(xí)題集,使用 Verilog/SystemVerilog 硬件描述語言 (HDL) 練習(xí)數(shù)字硬件設(shè)計~
    的頭像 發(fā)表于 08-31 09:06 ?1632次閱讀

    Verilog PLI到SystemVerilog DPI的演變過程

    寫過Verilogsystemverilog的人肯定都用過系統(tǒng)自定義的函數(shù)$display,這是預(yù)定好的,可以直接調(diào)用的功能。
    的頭像 發(fā)表于 05-16 09:27 ?860次閱讀
    從<b class='flag-5'>Verilog</b> PLI到<b class='flag-5'>SystemVerilog</b> DPI的演變過程

    verilog/systemverilog中隱藏的初始化說明

    VerilogSystemVerilog中經(jīng)常需要在使用變量或者線網(wǎng)之前,期望變量和線網(wǎng)有對應(yīng)的初始值
    的頭像 發(fā)表于 08-25 09:47 ?994次閱讀
    <b class='flag-5'>verilog</b>/<b class='flag-5'>systemverilog</b>中隱藏的初始化說明

    verilog-2005和systemverilog-2017標(biāo)準(zhǔn)規(guī)范

    作為邏輯工程師,在FPGA和數(shù)字IC開發(fā)和設(shè)計中,一般采用verilog,VHDL或SystemVerilog等作為硬件描述語言進行工程設(shè)計,將一張白板描繪出萬里江山圖景。
    的頭像 發(fā)表于 09-04 10:10 ?2582次閱讀
    <b class='flag-5'>verilog</b>-2005和<b class='flag-5'>systemverilog</b>-2017標(biāo)準(zhǔn)規(guī)范

    SystemVerilog相比于Verilog的優(yōu)勢

    我們再從對可綜合代碼的支持角度看看SystemVerilog相比于Verilog的優(yōu)勢。針對硬件設(shè)計,SystemVerilog引入了三種進程always_ff,always_comb
    的頭像 發(fā)表于 10-26 10:05 ?868次閱讀
    <b class='flag-5'>SystemVerilog</b>相比于<b class='flag-5'>Verilog</b>的優(yōu)勢

    如何自動生成verilog代碼

    介紹幾種自動生成verilog代碼的方法。
    的頭像 發(fā)表于 11-05 11:45 ?161次閱讀
    如何自動生成<b class='flag-5'>verilog</b><b class='flag-5'>代碼</b>