LogicLock邏輯鎖定簡(jiǎn)介
本節介紹Quartus的一個(gè)工具LogicLock,會(huì )在后面的實(shí)例里面介紹LogicLock的具體使用。
邏輯鎖定方法學(xué)
邏輯鎖定方法學(xué)(LogicLock Methodology)內容就是在設計時(shí)采用邏輯鎖定的基于模塊設計流程(LogicLock block-based design flow),來(lái)達到固定單模塊優(yōu)化的目的。這種設計方法學(xué)中第一次引入了高效團隊合作方法:它可以讓每個(gè)單模塊設計者獨立優(yōu)化他的設計,并把所用資源鎖定。
這樣在合成頂層設計時(shí)就可以保持每個(gè)模塊的性能,而且它還讓邏輯模塊可重復使用,提高了資源利用率,縮短了設計周期。邏輯鎖定的基于模塊設計流程與傳統設計流程對比如圖5.37所示。
邏輯鎖定優(yōu)勢
性能不變,而設計周期更短。使用LogicLock約束,邏輯模塊只需優(yōu)化一次。通過(guò)約束達到性能要求后,LogicLock區域的回傳機制將此性能指標保持不變。例如,設計人員可以在設計中使用一個(gè)PCI宏函數,鎖定布局和性能指標。在設計中,加入其他邏輯模塊或者在其他區域中改變邏輯都不會(huì )影響PCI核的性能。LogicLock流程減少了完成一個(gè)工程所需的設計周期數量。
更強的分層次設計流程。設計人員通過(guò)LogicLock流程,可以保持每個(gè)模塊的特性不變,通過(guò)分層次區域實(shí)施很快地達到性能指標。采用LogicLock方法學(xué),設計人員或者設計團隊可以在設計中獨立工作,完成布局布線(xiàn),優(yōu)化和對每個(gè)設計模塊的驗證。在集成階段,只需對整個(gè)系統進(jìn)行驗證。布局和每個(gè)模塊的性能保持不變。
優(yōu)化的設計重復使用流程。LogicLock約束可以由外部輸入。由于LogicLock方法允許將單個(gè)約束過(guò)的設計模塊輸入到多個(gè)設計中去,因此設計可以方便地重復使用。如圖5.38所示為工程師獨立開(kāi)發(fā)的模塊在多個(gè)工程中使用的例子,模塊在每個(gè)實(shí)施中都有相同的性能。
邏輯鎖定參數設置
LogicLock區域參數設置在LogicLock區域中,設計人員可以控制布局。這些區域為真正的分層次設計提供基本構架,設計中改變一個(gè)模塊不會(huì )影響到區域中其他模塊的性能。表5.4所示為控制LogicLock區域行為的各種參數含義。默認的選項分別是浮動(dòng)、自動(dòng)、關(guān)閉和硬區域。
邏輯鎖定流程
首先,分析整體資源利用率,如果采用的FPGA芯片容量足夠,理論上只要保證重點(diǎn)模塊的資源利用率,就能保證整體設計的性能;然后采用邏輯鎖定的基于模塊設計流程(LogicLock block-based design flow)進(jìn)行設計,步驟如下。
(1)在Quartus?中綜合單個(gè)底層模塊。
(2)優(yōu)化重點(diǎn)模塊,進(jìn)行邏輯鎖定。
(3)反標(back-annotaing)。
(4)導出模塊邏輯鎖定約束信息,包括原級網(wǎng)表(atom netlist)文件(.vqm)、布局信息(placement information)文件(qsf)和布線(xiàn)信息(routing information)文件(.rcf)。
(5)將這些約束文件導入頂層(top-level)工程中。
(6)編譯和驗證整個(gè)頂層設計。
(7)編譯完成后,查看時(shí)序分析界面是否達到要求。
以上介紹的邏輯鎖定的具體方法可以參照5.11小節。
通過(guò)應用一種新的設計方法學(xué)——邏輯鎖定方法學(xué)(LogicLock Methodology),采用了模塊化、團隊化的設計流程,對重點(diǎn)模塊進(jìn)行優(yōu)化,解決了傳統設計流程無(wú)法解決的問(wèn)題,同時(shí)對其他FPGA設計工程中類(lèi)似的問(wèn)題提供了可借鑒的思路。
評論