新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > FPGA時序收斂分析

        FPGA時序收斂分析

        作者: 時間:2012-08-01 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/148674.htm

        程序

          某些設計采用單個主時鐘的分割版本來處理反序列化數據。以下 VHDL 代碼(nibble_proc進程)舉例說明了按系統時鐘頻率的四分之一采集的數據。

          

        程序

          

        程序
        看起來好像一切都已經同步化,但是 nibble_proc 采用乘積項 divide_by_4 對來自時鐘域sys_clk_bufg 的 nibble_wide_data 進行采樣。由于路由延遲,divde_by_4 與 sys_clk_bufg 之間并無明確的相位關系。將 divide_by_4 轉移到 BUFG 也于事無補,因為此進程會產生路由延遲。解決方法是將 nibble_proc 保持在 sys_clk_bufg 域,并且采用 divide_by_4 作為限定符,如下所示。

          

        程序

          約束的重要性

          如果您希望自己的邏輯正確運行,則必須采用正確的約束。如果您已經慎重確保代碼全部同步且注冊了全部 I/O,則這些步驟可以顯著簡化。在采用上述代碼并且假定系統時鐘為100MHz 時,則只需四行代碼就可以輕松完成時序約束文件,如下所示:

          

          請注意:賽靈思 中 I/O 注冊邏輯的建立與保持時間具有很高的固定性,在一個封裝中切勿有太大更改。但是,我們仍然采用它們,主要用作可確保設計符合其系統參數的驗證步驟。

          三步簡單操作

          僅需遵循以下三步簡單操作,設計人員即可輕松實施可靠的代碼。

          • 切勿讓綜合工具猜測您的預期。采用賽靈思原語對所有 I/O 引腳和關鍵邏輯進行明確定義。確保定義 I/O 引腳的電氣特性;

          • 確保邏輯 100% 同步,并且讓所有邏輯參考主時鐘域;

          • 應用時序約束確保時序。

          只要遵循上述三個步驟,您就能夠消除綜合與時序導致的差異。掃除這兩個主要障礙會讓您獲得具有 100% 可靠性的代碼。


        上一頁 1 2 3 下一頁

        關鍵詞: 分析 收斂 時序 FPGA

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 马公市| 滦南县| 绥宁县| 曲麻莱县| 建始县| 海原县| 德钦县| 天水市| 邯郸县| 双江| 桂平市| 惠来县| 宁远县| 四平市| 绥江县| 封开县| 赤壁市| 石楼县| 桃源县| 香港 | 南昌县| 香格里拉县| 浙江省| 芮城县| 屯昌县| 调兵山市| 马尔康县| 莫力| 五河县| 临泽县| 靖远县| 博野县| 呼伦贝尔市| 资源县| 桃源县| 博罗县| 栾川县| 通山县| 社旗县| 兰西县| 西城区|