借助物理綜合提高FPGA設(shè)計效能
隨著FPGA密度的增加,系統(tǒng)設(shè)計人員能夠開發(fā)規(guī)模更大、更復(fù)雜的設(shè)計,從而將密度優(yōu)勢發(fā)揮到最大。這些大規(guī)模設(shè)計基于這樣的設(shè)計需求――需要在無線通道卡或者線路卡等現(xiàn)有應(yīng)用中加入新功能,或者通過把兩種芯片功能合并到一個器件中,減小電路板面積,或者針對新應(yīng)用開發(fā)新設(shè)計。
本文引用地址:http://m.butianyuan.cn/article/152141.htm
這些不同的設(shè)計含有應(yīng)用程序已有代碼,或者是對延時要求較高的DSP。對于這類設(shè)計,綜合工具可能無法優(yōu)化設(shè)計,使其達(dá)到最優(yōu),導(dǎo)致關(guān)鍵通路出現(xiàn)較長的延時。關(guān)鍵通路延時較長的原因在于邏輯綜合工具依靠估算的延時來綜合設(shè)計。
這些延時較長的關(guān)鍵通路帶來了時序逼近問題,導(dǎo)致性能劣化,迫使設(shè)計人員重新編寫RTL代碼以改進這些延時較長的關(guān)鍵通路。此外,用戶在得到滿足時序規(guī)范的最佳RTL代碼之前,還需要進行多次迭代。這就進一步推遲了產(chǎn)品面市時間。
邏輯利用率較高的設(shè)計中出現(xiàn)的另一問題是布線擁塞。設(shè)計人員必須重新編寫RTL或者在布局布線工具中嘗試不同的設(shè)置,以提高這些關(guān)鍵通路的性能。這種“嘗試出錯”的方法也導(dǎo)致產(chǎn)品推遲面市,降低了效能。
設(shè)計人員在進行時序逼近時,這兩個問題的確是很大的挑戰(zhàn),時序逼近成為系統(tǒng)設(shè)計人員面臨的主要難題。能夠同時解決這兩個問題并提高性能的一種解決方案是采用物理綜合工具。物理綜合工具由FPGA供應(yīng)商提供,有時也由第三方EDA工具供應(yīng)商提供。物理綜合工具的主要功能是以盡可能少的迭代次數(shù),通過減少關(guān)鍵通路的數(shù)量來提高時序逼近(即性能),從而縮短了產(chǎn)品面市時間。
物理綜合工具的設(shè)計流程如圖1所示,按以下方式進行工作。邏輯綜合工具使用邏輯復(fù)制等算法復(fù)制扇出較多的邏輯,對較長的邏輯通路中的寄存器重新定時,以提高性能。物理綜合工具不同于邏輯綜合工具,它使用相似的算法,利用精確的延時和精確的信息來優(yōu)化關(guān)鍵通路。邏輯綜合工具更多的依靠全局延時估算,而物理綜合工具使用精確的延時。
圖1. 物理綜合工具是整個綜合設(shè)計流程的一部分。
圖1顯示了物理綜合工具也是整個綜合流程的一部分。物理綜合工具作為綜合工具的一部分在邏輯綜合之后運行,為進一步澄清概念,可以把它稱為早期物理綜合。在這一流程中,邏輯綜合之后,工具對整個設(shè)計的布局布線進行建模,再次使用重新定時和復(fù)制等算法來提高關(guān)鍵通路的性能。某些EDA供應(yīng)商開發(fā)了基于這一級精度的工具來解決時序逼近問題。
圖2顯示了另一物理綜合工具流程,在典型流程中,布局階段之后首先調(diào)用這一流程。在這一階段,對設(shè)計進行全面布局,對互聯(lián)延時進行延時估算,因此,能夠更精確地預(yù)測關(guān)鍵通路。通過使用上面介紹的算法,可以改進關(guān)鍵通路來滿足性能要求。不需要修改RTL代碼的任何一行就可以完成這些處理工作。在綜合工具中有可能以不精確的延時對寄存器重新定時,導(dǎo)致性能下降,而通過對設(shè)計進行布局,使物理工具做出智能判斷,從而有助于預(yù)測對哪些寄存器重新定時,提高性能。
評論