這是一個(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ù)值,類似于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ì)也開始出現(xiàn)。這就使得IP作者必須保護(hù)自己的代碼,常數(shù)如果作為參數(shù)傳遞出去,是一個(gè)非常重要的攻擊漏洞,當(dāng)然要補(bǔ)上。因此,從現(xiàn)在開始,我們要將常數(shù)封裝好,保護(hù)好自己的代碼。
-
Verilog
+關(guān)注
關(guān)注
29文章
1367瀏覽量
112299
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論