在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 把HDL模塊用NGC格式加密并在其他項目中調用

            把HDL模塊用NGC格式加密并在其他項目中調用

            作者: 時間:2017-10-13 來源:網絡 收藏

            前面創(chuàng)新網網友Ricky Su發(fā)了篇博文《 說說FPGA中的黑盒子(BlackBox)》,學習了感覺很好用,最近在網上又找到一篇講該方面內容的文章,感覺寫的很好轉發(fā)來與大家共享,文章如下:
            這個方法其實非常簡單。給出一個實例。
            先用寫出該模塊,比如:

            本文引用地址:http://www.biyoush.com/article/201710/365665.htm

            module my_comp(input [3:0] i1, input [3:0] i2, output [3:0] o1 );
            assign o1 = (i1 > i2)? i1: i2;
            endmodule

            這是一個比較大小的模塊。一看便知。

            然后在ISE中建立項目,將該模塊導入,作為設計文件,復雜的設計過程也是類似的。然后運行XST進行綜合,綜合完成后,看看項目目錄,就能發(fā)現(xiàn)這個文件了。這個文件是2進制加密的,所以,你也不用費心去研究了。即便可以用ngc2edif將其轉換成edif格式,但是對于復雜設計,得到edif也是無法還原其本來的邏輯意圖的。

            到此為止,我們得到格式加密的設計文件。

            注意,在制作NGC的時候,要防止把PAD或者IOB都包括進來,因為我們的NGC是要被其他項目調用的,也就是說NGC這顆螺絲釘必須能放到任何位置去,而一旦我們把PAD和IOB也包括進來,則NGC將只能放在客戶項目的邊界接口位置,這和實際情況是相反的,實際情況我們的NGC只作為內部的一個部分,這就造成客戶項目最終PR失敗。
            防止NGC帶有IOB、PAD的方法: 找到ISE中的Synthesize-XST,然后右鍵打開屬性,在category的Xilinx Specific OpTIons中將下列兩項disable掉。
            - iobuf Add I/O Buffers
            - iob Pack I/O Registers into IOBs (這個選NO即可)

            好了,現(xiàn)在假設其他項目(我們的客戶項目)要調用這個加密模塊,怎么做呢?
            首先加密后的模塊是2進制的,無法在綜合的時候使用,我們的方法是制作一個等價的black box。所謂黑盒,其實就是一個只有接口,沒有實現(xiàn)的模塊。比如,上例的黑盒,就是這個樣子。

            module my_comp(input [3:0] i1, input [3:0] i2, output [3:0] o1 );

            endmodule

            去掉中間的實現(xiàn)部分就可以了。

            先給大家提供一個客戶項目的例子。

            module my_comp(input [3:0] i1, input [3:0] i2, output [3:0] o1 );

            my_comp u1 (
            .i1 (i1 + 4h1),
            .i2 (i2 + 4h2),
            .i1 (i1),
            );
            endmodule

            客戶項目的代碼,加上我們制作的黑盒代碼,一起載入到ISE項目中,然后運行XST綜合即可得到新項目的網表,當然,因為我們提供的是黑盒,所以對應的設計結果也仍然是黑盒。那么什么時候來替換黑盒呢?

            在這個階段,是要真正替換黑盒的時候。其實要做的很簡單。
            我們把生成的NGC文件放到客戶項目的工作目錄內——工作就完成了。
            P—R進行的時候,進行最終的黑盒替換,ISE會試圖在工作目錄或者其他指定的路徑尋找黑盒的替代,所以我們把NGC放在了工作目錄下。

            接下來運行implementaTIon,你會發(fā)現(xiàn)一路工作正常,太爽了~



            關鍵詞: NGC HDL

            評論


            相關推薦

            技術專區(qū)

            關閉