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

?

FPGA驗(yàn)證流程綜述

2024-05-21 13:43:17張勇陳逸韜
科技資訊 2024年4期

張勇 陳逸韜

摘要:現(xiàn)場可編程門陣列(Field-Programmable?Gate?Array,F(xiàn)PGA),也被稱為FPGA芯片。在通信、安防、工業(yè)等領(lǐng)域有著舉足輕重的作用。隨著FPGA芯片的規(guī)模不斷擴(kuò)大、性能不斷提升,其模塊數(shù)量、電路網(wǎng)表規(guī)模、連接復(fù)雜度也隨之增加。在此趨勢下,如何有效地提升大規(guī)模FPGA電路的驗(yàn)證效率與驗(yàn)證完備性變得更為重要。一個(gè)完整的、有針對性的、結(jié)構(gòu)性的驗(yàn)證流程方法,能更全面地對電路設(shè)計(jì)情況進(jìn)行覆蓋性檢查,確保FPGA芯片功能的正確性。詳細(xì)敘述從底層到頂層(模塊級、子系統(tǒng)級、全芯片級)的FPGA芯片驗(yàn)證方式,包括它們各自的驗(yàn)證方法、流程與側(cè)重等細(xì)節(jié),探討了這種方式是如何幫助FPGA驗(yàn)證工作進(jìn)行的。

關(guān)鍵詞:FPGA芯片???驗(yàn)證效率???驗(yàn)證流程方法??????全芯片級驗(yàn)證

中圖分類號:TN40;TN791

An?Overview?of?the?FPGA?Verification?Process

ZHANG?Yong???CHEN?Yitao

Shenzhen?State?Microelectronics?Co.,?Ltd.,?Shenzhen,?Guangdong?Province,?518000?China

Abstract:?The?field-programmable?gate?array?(FPGA)?is?also?known?as?the?FPGA?chip,?and?it?plays?a?crucial?role?in?fields?such?as?communications,?security?and?industry.?As?the?scale?of?FPGA?chips?continues?to?expand?and?their?performance?continues?to?improve,?their?number?of?modules,?size?of?circuit?netlists?and?connection?complexity?also?increase.?In?this?trend,?how?to?effectively?improve?the?verification?efficiency?and?completeness?of?large-scale?FPGA?circuits?has?become?more?important.?A?complete,?targeted?and?structured?verification?process?method?can?comprehensively?check?the?coverage?of?circuit?design?and?ensure?the?correctness?of?the?function?of?FPGA?chips.?This?paper?detailedly?describes?the?verification?method?of?FPGA?chips?from?the?bottom?layer?to?the?top?layer?(module-level,?subsystem-level,?full?chip-level),?including?details?such?as?their?respective?verification?methods,?processes?and?emphases,?and?explores?how?this?method?helps?FPGA?verification?work.

Key?Words:?FPGA?chip;?Validation?efficiency;?Validation?process?method;?Full?chip-level?validation

1?FPGA分層級驗(yàn)證

1.1驗(yàn)證層級分類

根據(jù)驗(yàn)證側(cè)重點(diǎn),驗(yàn)證分為三個(gè)層級:模塊級、子系統(tǒng)級與全芯片級。其中模塊級側(cè)重模塊功能的驗(yàn)證,子系統(tǒng)級側(cè)重模塊間交互的驗(yàn)證,而全芯片級側(cè)重子系統(tǒng)間交互的驗(yàn)證。

1.1.1模塊級驗(yàn)證

模塊級驗(yàn)證是相對底層的驗(yàn)證層級,其最終驗(yàn)證收斂目標(biāo)是各模塊功能與代碼的全覆蓋。其中功能覆蓋率包含配置的獨(dú)立與組合覆蓋以及配置和激勵(lì)的組合覆蓋,而代碼覆蓋率則實(shí)現(xiàn)針對設(shè)計(jì)代碼信號翻轉(zhuǎn)的覆蓋檢查[1]。

模塊級內(nèi)部對應(yīng)設(shè)計(jì)抽象層次的劃分,分為軟件模型、硬件模型和網(wǎng)表三個(gè)層次。其中,軟件模型用于軟件建模,硬件模型為與硬件電路端口對應(yīng)的功能模型,網(wǎng)表為利用電路設(shè)計(jì)工具提取出的電路網(wǎng)表[2]。對應(yīng)這三種模型層次的驗(yàn)證,模塊級驗(yàn)證分為軟件模型驗(yàn)證、硬件模型驗(yàn)證與網(wǎng)表驗(yàn)證。

模塊級軟件模型驗(yàn)證的每一個(gè)驗(yàn)證用例中,包含一組對應(yīng)功能需求的軟件參數(shù)組合。該層次驗(yàn)證通過軟件參數(shù)對模型直接配置,同時(shí)輸入激勵(lì)并檢查響應(yīng),保證軟件參數(shù)配置模塊指定功能的正確性。

模塊級硬件模型驗(yàn)證由硬件參數(shù)進(jìn)行模式配置,硬件參數(shù)為復(fù)用軟件模型驗(yàn)證用例中的軟件參數(shù)組合,根據(jù)軟硬件參數(shù)轉(zhuǎn)換文件轉(zhuǎn)換而來[3]。該層次驗(yàn)證在保證軟件參數(shù)至硬件參數(shù)轉(zhuǎn)換正確性的同時(shí),保證由硬件參數(shù)配置模塊,能夠?qū)崿F(xiàn)Spec中描述的硬件模型全部功能。模塊級軟件模型和硬件模型驗(yàn)證的驗(yàn)證結(jié)構(gòu)示意如圖1所示。

模塊級網(wǎng)表驗(yàn)證為針對電路網(wǎng)表的驗(yàn)證。此層次驗(yàn)證復(fù)用模塊級硬件模型的驗(yàn)證環(huán)境,只是替換描述模塊的硬件模型為網(wǎng)表,配置方法不發(fā)生改變。相較前述兩種驗(yàn)證層級對應(yīng)的驗(yàn)證模型,網(wǎng)表最接近電路實(shí)際,故模塊級網(wǎng)表驗(yàn)證層級可最接近地仿真電路實(shí)際情況[4]。將圖1下半部分模塊級硬件模型驗(yàn)證結(jié)構(gòu)中的硬件模型替換成網(wǎng)表即可進(jìn)行模塊級網(wǎng)表驗(yàn)證。

從上述驗(yàn)證細(xì)節(jié)可以看出,模塊級軟件模型與模塊級硬件模型驗(yàn)證環(huán)境之間復(fù)用了驗(yàn)證用例,而模塊級硬件模型與模塊級網(wǎng)表驗(yàn)證之間復(fù)用了整個(gè)驗(yàn)證結(jié)構(gòu),只是需要將模型相互替換。這種驗(yàn)證抽象層次對應(yīng)驗(yàn)證環(huán)境間的相互復(fù)用,可以在驗(yàn)證中保證電路和代碼模型在功能上的一致性[5]。

1.1.2子系統(tǒng)級驗(yàn)證

FPGA電路子系統(tǒng)級中包括若干功能模塊和CRAM單元等基本模塊[6]。子系統(tǒng)層級結(jié)構(gòu)中存在內(nèi)部功能模塊之間、功能模塊到頂層、CRAM到功能模塊、CRAM到頂層(地址和數(shù)據(jù)端口)這幾種連接關(guān)系。子系統(tǒng)層級連接檢查,需要保證上述幾種連接關(guān)系的正確性,從而確保功能模塊之間、功能模塊到頂層的信號傳遞正常,同時(shí)確保位流從頂層輸入,通過CRAM與各模塊SC端口間的連接,能正確配置到功能模塊的各個(gè)具體配置點(diǎn)[7]。

子系統(tǒng)級驗(yàn)證通過依據(jù)連接關(guān)系編寫的斷言文件進(jìn)行上述連接檢查。連接關(guān)系由設(shè)計(jì)人員提供的Spec提取獲得,驗(yàn)證人員根據(jù)獲得的各連接關(guān)系編寫斷言文件,分別對各子系統(tǒng)級軟件模型與網(wǎng)表進(jìn)行連接檢查。

子系統(tǒng)級驗(yàn)證收斂目標(biāo)為代碼覆蓋率中Toggle的全覆蓋,這其中包括軟件參數(shù)端口的Toggle覆蓋,模塊端口信號的Toggle覆蓋與子系統(tǒng)端口信號的Toggle覆蓋[8]。

1.1.3全芯片級驗(yàn)證

全芯片級為各子系統(tǒng)連接構(gòu)成的結(jié)構(gòu)層級。在此層級驗(yàn)證中,驗(yàn)證人員將驗(yàn)證用例生成的位流加載進(jìn)全芯片電路,并往芯片頂層端口施加激勵(lì)進(jìn)行仿真,模擬實(shí)際全芯片工作過程,驗(yàn)證系統(tǒng)功能是否能在軟硬件協(xié)同下正常工作[9]。仿真中可以對連線資源、時(shí)鐘數(shù)、core模塊等進(jìn)行驗(yàn)證,確保芯片頂層功能的正確性[10]。

根據(jù)功能需求生成用于仿真的位流,其配置方式分為PLI與PROG兩種[11]。PLI配置方式將位流直接force到配置所對應(yīng)子系統(tǒng)級CRAM對應(yīng)位置,對配置過程的模擬關(guān)注的是進(jìn)入用戶模式后的功能[12],其示意圖如圖2所示。PROG配置方式模擬用戶實(shí)際使用芯片時(shí)的配置過程,使用CCS模塊進(jìn)行配置[13],其配置方式的示意圖如圖3所示。

全芯片級收斂目標(biāo)為全芯片頂層連接的Toggle全覆蓋,根據(jù)仿真類型相應(yīng)類型連接需全覆蓋[14],覆蓋情況使用腳本統(tǒng)計(jì)。

2?結(jié)論

隨著FPGA芯片的更新迭代,設(shè)計(jì)的復(fù)雜度日漸增加,驗(yàn)證工作將很快將成為設(shè)計(jì)過程中的瓶頸。為了驗(yàn)證復(fù)雜的設(shè)計(jì),完備的驗(yàn)證流程,搭配強(qiáng)大的驗(yàn)證工具,將幫助一些繁瑣的驗(yàn)證過程的完成,并第一時(shí)間發(fā)現(xiàn)設(shè)計(jì)中的錯(cuò)誤,以避免昂貴的重復(fù)設(shè)計(jì)耗時(shí)與費(fèi)用損失。

傳統(tǒng)的驗(yàn)證流程已形成驗(yàn)證的標(biāo)準(zhǔn)步驟,以分層級的體系結(jié)構(gòu)模型來分析設(shè)計(jì)方案的仿真驗(yàn)證方法,配合UVM方法學(xué)與隨機(jī)測試、異常測試的補(bǔ)充以及驗(yàn)證環(huán)境與IP的復(fù)用,已經(jīng)能較完整與高效率地滿足驗(yàn)證覆蓋目標(biāo),減少重復(fù)設(shè)計(jì)的風(fēng)險(xiǎn)。

在可預(yù)期的未來,產(chǎn)品市場化的速度要求日益加快,驗(yàn)證效率需要在現(xiàn)有基礎(chǔ)上得到提高,滿足與市場化速度相適應(yīng)的項(xiàng)目研發(fā)周期需求。可以預(yù)見的是,小到文件處理方式的腳本自動(dòng)化,大到新穎而完善具體的驗(yàn)證策略與流程,搭配專門為集成電路驗(yàn)證設(shè)計(jì)的硬件仿真器,輔以先進(jìn)的EDA工具和智慧的IT資源分配乃至AI人工智能的支持等,將會(huì)進(jìn)一步減少驗(yàn)證耗費(fèi)的人力和時(shí)間。

參考文獻(xiàn)

[1] 閆愛.覆蓋率驅(qū)動(dòng)的交換芯片驗(yàn)證方法研究[D].西安:西安電子科技大學(xué),2016.

[2] 朱倩,田甜,趙歡.基于FPGA中狀態(tài)機(jī)的邏輯等價(jià)性驗(yàn)證方法[J].南通大學(xué)學(xué)報(bào)(自然科學(xué)版),2016,15(3):45-49.

[3] 徐文豐.FPGA芯片TILE單元建模以及故障覆蓋率分析[D].上海:復(fù)旦大學(xué),2011.

[4] 黃盈.統(tǒng)一驗(yàn)證方法的實(shí)現(xiàn)[D].成都:電子科技大學(xué),2007.

[5] 艾俊偉.芯片驗(yàn)證平臺(tái)設(shè)計(jì)與自動(dòng)化測試[D].武漢郵電科學(xué)研究院,2022.

[6] 崔鵬.高速FPGA配置結(jié)構(gòu)的設(shè)計(jì)與研究[D].上海:復(fù)旦大學(xué),2011.

[7]?李睿婷,萬江華,劉衡竹,等.一種基于PLI技術(shù)的系統(tǒng)級驗(yàn)證方法[C]//第十七屆計(jì)算機(jī)工程與工藝年會(huì)暨第三屆微處理器技術(shù)論壇論文集(上冊).2013:390-394.

[8]?王立平,姚程寬,陳向陽,等.IC驗(yàn)證三種不同方法的分析比較[J].太原師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2019,18(1):67-69,75.

[9]?王婷婷,吳會(huì)祥,葛秀梅.一種可多功能應(yīng)用的芯片測試驗(yàn)證平臺(tái)設(shè)計(jì)[J].集成電路應(yīng)用,2023,40(5):36-37.

[10]?黃超.基于UVM的驗(yàn)證平臺(tái)可重用性和自動(dòng)化研究[D].杭州:浙江大學(xué),2020.

[11]?朱巖巖,方建勇,許壽全.基于VCD波形的FPGA驗(yàn)證平臺(tái)[J].指揮控制與仿真,2019,41(5):121-125.

[12]?張梅娟,張明月,楊楚瑋,等.SoC芯片的RomCode設(shè)計(jì)與FPGA驗(yàn)證研究[J].電子設(shè)計(jì)工程,2023,31(21):76-80,86.

[13]?WAFAA?S.?SAYED,?MERNA?ROSHDY,?LOBNA?A.?SAID,?et?al.?Design?and?FPGA?Verification?of?Custom-Shaped?Chaotic?Attractors?Using?Rotation,?Offset?Boosting?and?Amplitude?Control[J].?IEEE?Transactions?on?Circuits?and?Systems?II:Express?Briefs,2021,68(11):3466-3470.

[14]?HAN?K,LEE?J-J,LEE?W,et?al.A?Diagnosable?Network-on-Chip?for?FPGA?Verification?of?Intellectual?Properties[J].Design?&?Test?of?Computers,?IEEE,2019,36(2):81-87.

襄城县| 田林县| 博湖县| 河北省| 诸暨市| 西乌| 崇义县| 广宗县| 涪陵区| 忻州市| 武汉市| 当雄县| 清涧县| 东丽区| 呼伦贝尔市| 大化| 阿拉善盟| 鄢陵县| 洞口县| 吴川市| 灵宝市| 尚志市| 秦皇岛市| 客服| 郁南县| 青冈县| 德格县| 高密市| 阳高县| 舞钢市| 西藏| 明溪县| 固安县| 施甸县| 洛浦县| 玉龙| 云霄县| 徐闻县| 南昌县| 肥东县| 沧州市|