国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

自主FPGA芯片軟件時序參數(shù)提取方法

2021-07-29 10:58周洋洋王新晨武亞恒
電子與封裝 2021年7期
關(guān)鍵詞:測試用例時序延時

胡 凱,虞 健,周洋洋,王新晨,武亞恒

(中科芯集成電路有限公司,江蘇無錫 214072)

1 引言

在FPGA應(yīng)用開發(fā)方面,靜態(tài)時序分析通過分析用戶設(shè)計的建立保持時間來指導(dǎo)用戶進行FPGA應(yīng)用開發(fā)。在FPGA配套軟件方面,靜態(tài)時序分析通過分析計算電路中每條時序路徑的延時,指導(dǎo)布局布線進行時序優(yōu)化,為FPGA應(yīng)用開發(fā)提供有效的技術(shù)保障[1]。

在靜態(tài)時序分析工具中算法引擎影響時序分析的效率,時序參數(shù)影響最終時序分析的正確性。FPGA每一個型號芯片針對不同的設(shè)計結(jié)構(gòu)和生產(chǎn)工藝,時序參數(shù)存在巨大差異。因此針對每一個型號芯片,軟件都會有一套相對應(yīng)的時序參數(shù)庫,作為時序分析引擎的輸入。在時序參數(shù)提取方面,由于參數(shù)數(shù)量巨大、精度要求高、仿真負載情況等原因,經(jīng)常會出現(xiàn)仿真時序參數(shù)與實際芯片時序表現(xiàn)出入比較大的現(xiàn)象[2-4]。

目前國外Xilinx公司在FPGA時序參數(shù)提取技術(shù)方面最為成熟,其準確度被大家公認。而國內(nèi)針對軟件時序參數(shù)提取方法的研究還處于起步階段,沒有形成系統(tǒng)規(guī)范性的方法論。隨著中美貿(mào)易沖突等因素影響,實現(xiàn)EDA軟件自主可控已經(jīng)迫在眉睫。

針對以上情況,本文基于自主FPGA配套軟件,提出了一種以仿真時序參數(shù)為基礎(chǔ)、選取典型路徑進行實測,并通過分析實測延時與仿真數(shù)據(jù)、進行簡單的推算和數(shù)據(jù)擬合,得到比較準確的時序參數(shù)值的方法。該方法得到的時序參數(shù)通過與Xilinx軟件時序參數(shù)進行誤差對比測試,證明該方法具有一定的有效性和可替代性。

2 軟件時序參數(shù)提取流程設(shè)計

時序參數(shù)提取流程如圖1所示,軟件時序參數(shù)提取主要分為以下步驟:(1)軟件根據(jù)硬件邏輯單元結(jié)構(gòu)構(gòu)建軟件時序模型;(2)硬件根據(jù)軟件時序模型進行時序仿真,獲得仿真時序參數(shù);(3)將芯片選定固定路徑進行實測,修正仿真數(shù)據(jù),作為最終的軟件時序參數(shù);(4)將沒有實測到的數(shù)據(jù)以模塊為單位進行數(shù)據(jù)擬合,得到相應(yīng)數(shù)據(jù)。

圖1 時序參數(shù)提取流程圖

2.1 軟件時序參數(shù)模型建立

軟件靜態(tài)時序分析根據(jù)硬件設(shè)計模型來建立軟件時序參數(shù)模型,由硬件根據(jù)相關(guān)配置進行時序仿真并提取時序參數(shù),輸入標準庫文件。以DICE模塊的CIN端口輸入到COUT輸出為例(如圖2硬件模型中紅色標記所示),根據(jù)硬件模型建立軟件模型,如圖2軟件模型所示。根據(jù)軟件模型輸入輸出端口及相關(guān)配置,可以建立一條軟件時序參數(shù)模型:

圖2 軟硬件模型轉(zhuǎn)換圖

tarc.set-name TCINCOUT combinational{(160,210)}{CIN}{COUT}-switch_cfg{COUTUSET=0}其中的(160,210)表示信號從CIN端口輸入到COUT端口輸出所需要的延時時間,160表示該段路徑最小延時時間為160 ps,210表示該段路徑最大延時時間為210 ps[5]。

2.2 時序參數(shù)仿真

軟件時序參數(shù)中的基礎(chǔ)參數(shù)由硬件仿真先提供基礎(chǔ)版本數(shù)據(jù)。根據(jù)軟件時序參數(shù)模型和配置屬性,電路設(shè)計通過后仿真方式提取指定路徑的時序參數(shù)值。時序仿真流程如圖3所示,每個模塊首先根據(jù)上文描述的模塊時序軟件模型構(gòu)建指定路徑的設(shè)計用例;然后通過Cadence工具Virtuoso建立電路仿真環(huán)境,接上電路相應(yīng)的輸入輸出負載,導(dǎo)出相應(yīng)的網(wǎng)表文件;打通需要仿真的指定路徑開關(guān)進行時序仿真;最后通過工具Wave_view測量指定路徑輸入輸出波形差來確定指定路徑延時值[6]。

通過時序仿真,在不同的溫度、電壓條件下,每條特定路徑可以得到一個不同的延時值。選取其中最大最小的2個值作為該條路徑的最小最大延時填入圖3所示的lib文件中。

圖3 時序仿真流程圖

2.3 時序參數(shù)實測修正方法

仿真數(shù)據(jù)是在理想狀態(tài)下的測量值,由于芯片生產(chǎn)工藝等因素,實際芯片門延時和線延時會有一定的差異,因此在樣品批次需要對芯片進行實測來修正仿真數(shù)據(jù),并建立芯片速度等級。

芯片內(nèi)部模塊的路徑延時值非常小,一般為皮秒級,由于測量儀器精度原因很難在開發(fā)板上進行實測且實際測量誤差會非常大,因此本文采用指定路徑多級串聯(lián)的方式進行實測,以減少測量誤差,保證延時數(shù)據(jù)的正確性。時序參數(shù)實測修正方法如圖4所示,如測量DICE中CIN-COUT的延時,首先通過測試腳本構(gòu)建2個測試用例carry_337和carry_537,carry_337含有337個DICE,carry_537含有537個DICE,保證每個DICE中都打通相同的CIN到COUT通路。每個測試用例根據(jù)布線資源使用相同的路徑將DICE進行串聯(lián),保證2個測試連接方式相同;然后分別測量carry_337和carry_537的延時數(shù)據(jù),根據(jù)d=(d537-d337)/(537-337),計算出DICE上CIN-COUT的延時數(shù)據(jù)[7-9]。

測試時,測試用例設(shè)計采用固定信號從IO端口進入,然后經(jīng)過需要測試的組合邏輯,最后從IO端口輸出的模式,如圖4所示。

圖4 延時實測示意圖

實測環(huán)境如圖5所示,主要由PC機、示波器、信號源、開發(fā)板、芯片、下載器等組成。

圖5 實測環(huán)境圖

上板測試時通過外加低頻100 kHz的波形信號,示波器測量信號經(jīng)過上述邏輯后的波形位移差來確定指定路徑的延時,測量結(jié)果如圖6、7所示,337個slice打通從CIN到COUT端口串聯(lián)的實測延時為106.20 ns,537個slice打通從CIN到COUT端口串聯(lián)的實測延時為144.47 ns。

圖6 信號延時示波器測量圖(337個slice)

圖7 信號延時示波器測量圖(537個slice)

將用來對比的2個測試用例實測延時做差,從而可以去除輸入連接線及IO的差異。將差值除以2個對比測試用例相同路徑差異個數(shù)便可以得出每一段需要測量的指定路徑延時。如上文中的2個對比測試用例carry_337和carry_537,通過做差除以2個測試用例的串聯(lián)從CIN到COUT端口的數(shù)量差,可以得出每個CIN到COUT的實測延時為191 ps。通過這個算出的實測值,就可以去修正原來仿真得出的仿真時序參數(shù)。比如原先仿真值認為該段延時為180 ps,則需要根據(jù)實測情況,將仿真值進行一定比例的擴大形成最終值,使得最終值應(yīng)該略大于最差條件下測量出來的實測值。

2.4 數(shù)據(jù)擬合

由于整個芯片路徑數(shù)量巨大,實際測試不可能做到全部覆蓋。本文主要做了DICE、DSP、IOB等主要模塊的主要通路的實測分析。每一個模塊通過實測主要通路,得出一個實測與仿真的比例系數(shù),應(yīng)用到該模塊的其他通路中。最后通過大量測試用例實測與時序分析對比,進行特定參數(shù)修正,形成最終與芯片相符合的軟件時序參數(shù),作為靜態(tài)時序分析工具的輸入。由于同一芯片不同生產(chǎn)批次生產(chǎn)的芯片具有一定的差異性,因此需要對每一批次生產(chǎn)的芯片進行重要模塊時序參數(shù)測量,并與基準參數(shù)作對比,形成大概的比例系數(shù),并以比例系數(shù)的形式導(dǎo)入軟件,軟件可以根據(jù)不同批次的芯片特點,動態(tài)選擇比例系數(shù)進行時序報告。

3 試驗結(jié)果與討論

為了證明本文提出的方法具有一定的合理性及對Xilinx軟件時序參數(shù)的可替代性,本文采用了自主芯片與Xilinx芯片軟硬件對比測試方法。采用確定性布線方式分別在自主FPGA芯片和Xilinx的XC5VLX330芯片上進行對比性測試,通過分析路徑延時值來反映相應(yīng)延時參數(shù)的準確性,測試流程如圖8所示。

圖8 對比測試流程圖

XC5VLX330芯片測試流程為:(1)XC5VLX330芯片對確定性布線測試用例進行確定路徑實測延時;(2)Xilinx ISE軟件對測試用例進行靜態(tài)時序分析,得出軟件分析延時;(3)分析Xilinx軟件時序分析結(jié)果與實測數(shù)據(jù)的誤差。

自主FPGA芯片測試流程為:(1)自主FPGA芯片對確定性布線測試用例進行確定路徑實測延時;(2)采用自主的億芯軟件對測試用例進行靜態(tài)時序分析,得出軟件分析延時;(3)分析自主軟件時序分析結(jié)果與實測數(shù)據(jù)誤差。

在做時序分析時,時序分析軟件的效率由時序分析算法引擎確定,而分析的準確性由時序參數(shù)確定,時序參數(shù)最終決定某一條確定路徑時序分析報告報多少。一般時序分析的結(jié)果都會略悲觀于實測值,但是不能過分悲觀,需要在一定的誤差范圍內(nèi)。如一個設(shè)計實際可以運行到100 MHz的運行頻率,過于悲觀的時序分析報告結(jié)果認為只能運行到20 MHz,這個結(jié)果可以確保設(shè)計沒有時序問題,可靠性可以,但是會大大影響用戶設(shè)計方案,不具備指導(dǎo)用戶設(shè)計的作用,缺乏有效性。通常時序分析原則是在芯片最惡劣條件下、時序分析結(jié)果略悲觀于最惡劣條件下的實測值[7]。本文針對自主FPGA芯片中不同模塊的主要路徑,專門構(gòu)造了22個不同路徑的測試用例。每個測試用例以邏輯串聯(lián)的方式,將需要測量的路徑以串聯(lián)方式連接起來,如測試用例carry137串聯(lián)了137個carry,專門用于測量和軟件時序分析DICE中carry模塊的CIN端口到COUT端口延時。XC5VLX330和自主FPGA芯片測試結(jié)果如表1、表2所示,其中測試用例序號1~11為DICE模塊的主要路徑測試用例;序號12~18為DSP模塊主要路徑測試用例,序號19~20為IOB模塊主要路徑測試用例[8],序號21~22為BUFG模塊主要路徑測試用例。將同樣的測試用例分別下載到Xilinx芯片和自主芯片,實際測量路徑延時值,然后將本文提出方法提取的時序參數(shù)導(dǎo)入到自主時序分析軟件,進行軟件時序分析,得出軟件時序分析結(jié)果,并與Xilinx軟件針對Xilinx芯片的軟件時序分析結(jié)果進行對比。XC5VLX330芯片實測延時與軟件報告延時的整體平均誤差在高溫條件下為47.21%,常溫條件下為56.39%,低溫條件下為45.99%。自主FPGA芯片實測與軟件報告的平均誤差在高溫條件下為37.85%,常溫條件下為46.87%,低溫條件下為42.48%。在相同測試用例條件下,自主軟件利用本文方法提取的時序參數(shù)平均誤差小于Xilinx軟件的誤差,并且每個測試用例軟件分析延時都大于芯片最差工作條件下的實測延時,從而可以保證芯片在最惡劣條件下時序分析的有效性。

表1 XC5VLX330測試表

表2 自主FPGA芯片測試表

4 總結(jié)

本文提出了一種針對自主FPGA芯片提取軟件時序參數(shù)的方法。通過測試,提取的軟件時序參數(shù)誤差在有限范圍內(nèi),可以保證時序分析的有效性,并且在芯片最惡劣條件下可以滿足芯片時序分析的需求,從而保證了時序分析的有效性。試驗結(jié)果表明,該方法在實際工程領(lǐng)域具有一定的可行性,并且具有替代Xilinx軟件時序參數(shù)分析的可行性。但是本方法也存在一定的局限,如在實測驗證方面,首先需要手動建立特定路徑的測試用例,沒有形成自動化測試流程,沒辦法滿足覆蓋整個芯片所有邏輯資源的大規(guī)模測試要求。其次,由于測量儀器的精度問題,如示波器的測量單位是納秒,而一般一段延時單位是皮秒級,因此許多沒有辦法串聯(lián)起來的路徑無法做到準確測試,只能通過所在邏輯單元其他可以測量的延時參數(shù)形成比例系數(shù),進行數(shù)據(jù)擬合,這類參數(shù)的準確度無法保證。針對上述問題,后續(xù)需要進一步提出改進方案,提高時序參數(shù)的準確度。

續(xù)表2

猜你喜歡
測試用例時序延時
清明
基于級聯(lián)步進延時的順序等效采樣方法及實現(xiàn)
基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
基于不同建設(shè)時序的地鐵互聯(lián)互通方案分析
日光燈斷電關(guān)閉及自動延時開關(guān)設(shè)計
基于混合遺傳算法的回歸測試用例集最小化研究
基于FPGA 的時序信號光纖傳輸系統(tǒng)
基于模體演化的時序鏈路預(yù)測方法
Two-dimensional Eulerian-Lagrangian Modeling of Shocks on an Electronic Package Embedded in a Projectile with Ultra-high Acceleration
基于依賴結(jié)構(gòu)的測試用例優(yōu)先級技術(shù)