這是一個(gè)Verilog中有爭(zhēng)議的問(wèn)題,即Parameter即作為常數(shù),也作為參數(shù)使用是否合理合法的問(wèn)題。在IEEE 2005標(biāo)準(zhǔn)之前,Verilog就是這樣做的。但常數(shù)不僅需要安全的封裝,而且還涉及知識(shí)產(chǎn)權(quán)(IP),常數(shù)參數(shù)不區(qū)分帶來(lái)很多質(zhì)疑,隨這EDA規(guī)模發(fā)展,IP意識(shí)加強(qiáng),常數(shù)更需要安全,因此IEEE在2005之后,加入localpara保留字,用于定義常數(shù)。常數(shù)用于定義當(dāng)前工程和文件中那些固定不變的變量。而參數(shù)則是可以用作LPM交換的數(shù)值,類(lèi)似于C語(yǔ)言中的形式參數(shù)。Verilog中的代碼模型被重復(fù)引用時(shí),使用LPM可以根據(jù)現(xiàn)場(chǎng)需要,修改這些參數(shù)進(jìn)行定制。顯然常數(shù)是不需要被傳遞出去,不需要也不允許被現(xiàn)場(chǎng)定制的。在2005版Verilog之前,常數(shù)參數(shù)不分的情況下,重用代碼的使用者和重用代碼的設(shè)計(jì)者可能不是同一個(gè)人(或團(tuán)隊(duì)),這樣,很容易造成不明內(nèi)部細(xì)節(jié)的使用者,不經(jīng)意的修改常數(shù),使得原本穩(wěn)定的系統(tǒng)出問(wèn)題,并反饋給該重用代碼的設(shè)計(jì)者。另外一種情況,或更嚴(yán)峻的情況是,IP核的復(fù)雜性和成本都在增加。保護(hù)IP的意識(shí)在爭(zhēng)強(qiáng),而攻擊破解IP的人和團(tuán)隊(duì)也開(kāi)始出現(xiàn)。這就使得IP作者必須保護(hù)自己的代碼,常數(shù)如果作為參數(shù)傳遞出去,是一個(gè)非常重要的攻擊漏洞,當(dāng)然要補(bǔ)上。因此,從現(xiàn)在開(kāi)始,我們要將常數(shù)封裝好,保護(hù)好自己的代碼。
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
相關(guān)推薦
這是一個(gè)Verilog中有爭(zhēng)議的問(wèn)題,即Parameter即作為常數(shù),也作為參數(shù)使用是否合理合法的問(wèn)題。在IEEE 2005標(biāo)準(zhǔn)之前,Verilog就是這樣做的。但常數(shù)不僅需要安全的封裝,而且還涉及知識(shí)產(chǎn)權(quán)(IP),常數(shù)參數(shù)不區(qū)分帶來(lái)很多質(zhì)疑,隨這EDA規(guī)模發(fā)展,IP意識(shí)加強(qiáng),常數(shù)更需要安全,因此IEEE在2005之后,加入localpara保留字,用于定義常數(shù)。常數(shù)用于定義當(dāng)前工程和文件中那些固定不變的變量。而參數(shù)則是可以用作LPM交換的數(shù)值,類(lèi)似于C語(yǔ)言中的形式參數(shù)。Verilog中的代碼模型被重復(fù)引用時(shí),使用LPM可以根據(jù)現(xiàn)場(chǎng)需要,修改這些參數(shù)進(jìn)行定制。顯然常數(shù)是不需要被傳遞出去,不需要也不允許被現(xiàn)場(chǎng)定制的。在2005版Verilog之前,常數(shù)參數(shù)不分的情況下,重用代碼的使用者和重用代碼的設(shè)計(jì)者可能不是同一個(gè)人(或團(tuán)隊(duì)),這樣,很容易造成不明內(nèi)部細(xì)節(jié)的使用者,不經(jīng)意的修改常數(shù),使得原本穩(wěn)定的系統(tǒng)出問(wèn)題,并反饋給該重用代碼的設(shè)計(jì)者。另外一種情況,或更嚴(yán)峻的情況是,IP核的復(fù)雜性和成本都在增加。保護(hù)IP的意識(shí)在爭(zhēng)強(qiáng),而攻擊破解IP的人和團(tuán)隊(duì)也開(kāi)始出現(xiàn)。這就使得IP作者必須保護(hù)自己的代碼,常數(shù)如果作為參數(shù)傳遞出去,是一個(gè)非常重要的攻擊漏洞,當(dāng)然要補(bǔ)上。因此,從現(xiàn)在開(kāi)始,我們要將常數(shù)封裝好,保護(hù)好自己的代碼。
發(fā)表于 04-27 11:49
1.1 parameter與localparam使用區(qū)別1.1.1 本節(jié)目錄1)本節(jié)目錄;2)本節(jié)引言;3)FPGA簡(jiǎn)介;4)parameter與localparam使用區(qū)別;5)結(jié)束
發(fā)表于 07-26 07:55
好的靈感以及文章隨筆,歡迎投稿,投稿請(qǐng)標(biāo)明筆名以及相關(guān)文章,投稿接收郵箱:1033788863@qq.com。今天帶來(lái)的是paramter 、localparam的小“秘密”,話不多說(shuō),上貨
發(fā)表于 05-17 16:26
鋰亞電池 鋰電池有什么區(qū)別?
發(fā)表于 10-30 08:51
?3236次閱讀
現(xiàn)在的有線連接一般都是利用HDMI和VGA這兩種接口,但HDMI和VGA接口到底有什么區(qū)別呢?
發(fā)表于 01-24 13:58
?3.9w次閱讀
RTOS和TSOS有什么區(qū)別?
發(fā)表于 03-12 11:22
?4525次閱讀
榮耀50和p50有什么區(qū)別?
發(fā)表于 08-26 17:54
?1.4w次閱讀
單片機(jī)和PLC有什么區(qū)別?
發(fā)表于 11-13 19:21
?11次下載
單片機(jī)和PLC有什么區(qū)別?
發(fā)表于 11-23 16:21
?79次下載
Vivado Schematic中的實(shí)線和虛線有什么區(qū)別?
發(fā)表于 06-16 16:53
?1130次閱讀
DML和EML有什么區(qū)別?該如何選擇?本文將回答這些問(wèn)題。
發(fā)表于 06-30 10:43
?2342次閱讀
FPC與傳統(tǒng)PCB到底有什么區(qū)別
發(fā)表于 03-01 15:37
?4次下載
pcb軟板和硬板有什么區(qū)別
發(fā)表于 12-19 10:01
?1840次閱讀
hdi板與普通pcb有什么區(qū)別
發(fā)表于 12-28 10:26
?2729次閱讀
線路板的層和階有什么區(qū)別?
發(fā)表于 02-23 17:27
?670次閱讀
評(píng)論