1. 程式人生 > >編譯流程之模擬

編譯流程之模擬

模擬

  1. 1.        功能模擬(前模擬)

從邏輯分析HDL程式碼所描述電路的正確性,因為不涉及到考慮門延時和線延時,所以模擬速度很快,其主要測試點在邏輯,如使用testbench檔案進行模擬,就是功能模擬。

  1. 2.        時序模擬(後模擬)

考慮門延時引數和單元連線線後的模擬,模擬更接近真實應用情況。

注意:

在進行HDL程式碼編寫的時候,我們要有這樣的認識,功能模擬才是整個FPGA開發中程式碼輸出量最大的環節,對於所編寫的每一個模組。可能需要很多的testbench檔案。

使用者約束

1.綜合約束

指導編譯器將HDL程式碼轉化為門級網表結構

2.管腳約束

將設計中的輸入、輸出、及雙向IO和FPGA晶片物理I/O建立一一對應的聯絡。並且為每一個已分配的物理I/O管腳指定特定的介面電平,從而保證通訊,如LVDS等

3.位置約束

針對特殊邏輯版塊要求特殊的邏輯塊資源

4.時序約束

將網表佈局到FPGA晶片並完成連線操作時,如果我們指定了時序約束,編譯器會考慮約束關係,進行合理的佈局佈線,因為佈局佈線會影響線延時的引數

時序約束是針對佈局佈線環節

²  書序約束的重要意義在於保證設計的電路具有優良的效能,沒有經過時序約束的電路,佈局器和佈線器的操作過於鬆散和隨意!!!

時序分析

時序分析,也稱之為:靜態時序分析(簡稱STA),之所以進行時序分析,因為在實際中存在傳輸延時,尤其當時鍾頻率很高的時候,數位電路的類比電路特性就會顯現出來,如感抗,容抗這些因素的產生會導致較為嚴重的傳輸延時。

編譯流程之綜合

編譯器一般會採用預設的設定進行邏輯綜合。但實際上編譯綜合設定是可以修改的,可以考慮速度優先,或者面積優先,或者功耗優先的準則。通常的在選擇IP核設計的時候,很多IP核會提供給選項是速度優先還是面積優先。

關於FPGA開發,需要形成一種意識:速度和麵積的權衡是十分重要的。