應(yīng)對(duì)百萬(wàn)門級(jí)系統(tǒng)級(jí)芯片驗(yàn)證挑戰(zhàn)的可擴(kuò)展解決方案
軟件模擬是模塊級(jí)驗(yàn)證的理想選擇,因?yàn)槠渲苻D(zhuǎn)速度非常迅速,糾錯(cuò)能力較強(qiáng)。硬件/軟件協(xié)同驗(yàn)證能夠?qū)⑶度胧杰浖腧?yàn)證流程之中,為加速處理器、記憶體以及總線運(yùn)算提供途徑。它也可以作為測(cè)試平臺(tái)開展硬件驗(yàn)證。
基于處理程序的協(xié)同建模提供了大量多樣化解決方案,使系統(tǒng)驗(yàn)證成為可能。協(xié)同建模適用于在高級(jí)、抽象測(cè)試平臺(tái)與載入仿真器的 整個(gè)芯片的RTL實(shí)施之間建立鏈接。在線仿真在真實(shí)系統(tǒng)中提供高能力和高性能驗(yàn)證。仿真為設(shè)計(jì)人員帶來(lái)自信,確保他們的芯片將在實(shí)際系統(tǒng)中正確發(fā)揮功能。
形式驗(yàn)證(等效性檢查)的能力和速度能夠確保在設(shè)計(jì)流后續(xù)階段作出的修改不會(huì)改變其意圖行為。有必要指出的是,高性能、硬件協(xié)助或軟件導(dǎo)向解決方案對(duì)在系統(tǒng)級(jí)環(huán)境中實(shí)現(xiàn)驗(yàn)證完整性具有關(guān)鍵性作用。
各抽象層次之間的可擴(kuò)展性
我們非常有必要推動(dòng)某些方面的功能驗(yàn)證工作向前發(fā)展,使其成為設(shè)計(jì)流程初步階段的一部分。為了實(shí)現(xiàn)這一點(diǎn),我們必須利用更高層次模型和處理程序(圖3)使驗(yàn)證工作變得更為抽象。
在設(shè)計(jì)流中前移驗(yàn)證的好處在于:處于這個(gè)階段的模型的編寫速度較快,具有較大生產(chǎn)能力,因此可以通過(guò)建設(shè)性方式影響設(shè)計(jì)決策。抽象工作可以加速驗(yàn)證進(jìn)行,它能夠剔除無(wú)關(guān)信息,縮短開發(fā)時(shí)間,加快糾錯(cuò)進(jìn)程,并使得測(cè)試平臺(tái)更易重復(fù)使用。
就復(fù)雜的系統(tǒng)級(jí)芯片而言,如果所有事情都在RTL或門層次上完成則太過(guò)費(fèi)時(shí)和困難,我們?cè)谶@兒絕對(duì)有必要在設(shè)計(jì)中使用更為抽象的表示方法。這并不僅僅是針對(duì)設(shè)計(jì)的,也同樣有益于測(cè)試平臺(tái)。
這種多層次抽象戰(zhàn)略要想行之有效,不僅需要必要的工具支持,知識(shí)產(chǎn)權(quán)(IP)因素也同等重要。如果設(shè)計(jì)人員無(wú)法通過(guò)模型在各 個(gè)抽象層次之間切換并建立聯(lián)系的話,那么多抽象模擬就無(wú)用武之地。多抽象解決方案將技術(shù)與知識(shí)產(chǎn)權(quán)組合在一起。針對(duì)設(shè)計(jì)的主要接口使用一系列處理程序時(shí), 分層次驗(yàn)證才變得可能。它允許在各種抽象層次上混合各種設(shè)計(jì)說(shuō)明。處理程序可以組合為一個(gè)測(cè)試平臺(tái)或環(huán)境,用于檢查某項(xiàng)實(shí)施是否符合高層次模型。
本策略的優(yōu)勢(shì)是它無(wú)需在一個(gè)抽象層次上包含所有模型。這種靈活性允許設(shè)計(jì)團(tuán)隊(duì)混合并匹配在規(guī)定時(shí)間內(nèi)所能獲得的一切,提供相對(duì)于執(zhí)行時(shí)間的必要層次解析。
基于處理程序的接口可以將所有抽象系統(tǒng)模型鏈接至設(shè)計(jì),提供一個(gè)理想的系統(tǒng)層次測(cè)試平臺(tái)。例如,運(yùn)用基于處理程序的模擬,某 團(tuán)隊(duì)可以在高抽象層次上作出系統(tǒng)定義。然后,它們將在高層次系統(tǒng)定義中提取某個(gè)層次或某個(gè)模塊,運(yùn)用處理程序投入工作所必需的知識(shí)產(chǎn)權(quán),替代它們進(jìn)入更為 詳細(xì)的實(shí)施模型中。
他們可以在系統(tǒng)原位置處將模型作為即時(shí)測(cè)試平臺(tái)運(yùn)行。該團(tuán)隊(duì)就可以立即將現(xiàn)有測(cè)試平臺(tái)投入實(shí)際使用,從而向該模塊提供自然的刺激。其結(jié)果是,驗(yàn)證生產(chǎn)力提高,設(shè)計(jì)信心提高。
抽象層次
系統(tǒng)級(jí)驗(yàn)證所必需的可擴(kuò)展解決方案應(yīng)在整個(gè)電子系統(tǒng)中支持抽象:模塊、子系統(tǒng)、完整芯片以及系統(tǒng)層次。
模塊層次:在模塊層次上,設(shè)計(jì)人員的關(guān)注重點(diǎn)是功能和時(shí)序的細(xì)節(jié)情況,這樣他們就能夠保證這些模塊符合技術(shù)規(guī)范,不存在明顯 問題。其目標(biāo)是盡可能多地查找錯(cuò)誤,因?yàn)檫@在設(shè)計(jì)流程中是查找這些錯(cuò)誤的最廉價(jià)和最快速階段。模擬和數(shù)字交互作用在模塊層次上進(jìn)行驗(yàn)證。功能和代碼得到全 面演練,驗(yàn)證移交應(yīng)考慮在這一階段進(jìn)行。由于HDL仿真技術(shù)易于使用且具糾錯(cuò)能力,因而成為理想的工具。
模擬/混合信號(hào)模 塊:系統(tǒng)級(jí)芯片設(shè)計(jì)的能力在不斷提升,模擬和混合信號(hào)元器件不斷加入其中,因此要求模擬環(huán)境能夠具備與數(shù)字邏輯相同的、必需的驗(yàn)證功能。與模擬HDL行為 模擬以及模擬原始模塊的Spice模擬順利實(shí)現(xiàn)接口,允許數(shù)字和模擬元器件的模擬工作實(shí)現(xiàn)同步,并能夠在相同的糾錯(cuò)環(huán)境中查看。
子系統(tǒng)層次:所有模塊均已驗(yàn)證后,隨后進(jìn)行模塊集成,涉及對(duì)各模塊組或整個(gè)芯片進(jìn)行集成。在子系統(tǒng)階段,模塊間通信、控 制、時(shí)序和協(xié)議對(duì)功能而言具有重要意義;因此,檢查協(xié)議或應(yīng)用斷言以驗(yàn)證總線處理程序的工具就能發(fā)揮作用。硬件斷言或仿真可以運(yùn)用HDL、C或 SystemC 以及Verisity等其它高層次測(cè)試平臺(tái)語(yǔ)言布署在這一階段。
系統(tǒng)級(jí)芯片層次:系統(tǒng)級(jí)芯片層次驗(yàn)證涉及各模塊與后端流程的其余部分進(jìn)一步集成,其中包括設(shè)計(jì)的物理實(shí)現(xiàn)。在設(shè)計(jì)人員將較小模塊集成進(jìn)入越來(lái)越大模塊的過(guò)程中,需要模擬的內(nèi)容日益增多,測(cè)試時(shí)間日益延長(zhǎng),并且需要開展更多模擬來(lái)驗(yàn)證設(shè)計(jì)。
這對(duì)多種驗(yàn)證方法提出了要求,比如芯片和系統(tǒng)功能測(cè)試。它還要求驗(yàn)證布圖、時(shí)鐘樹或DFT插入會(huì)否引入意外更改。等效性檢查工具可以驗(yàn)證整個(gè)大規(guī)模設(shè)計(jì),并在每次修改設(shè)計(jì)后迅速糾錯(cuò),無(wú)需再運(yùn)行眾多漫長(zhǎng)的模擬。
除了等效性檢查之外,我們還可能在這一流程中使用硬件加速仿真器和多CPU并行仿真,以確保更改設(shè)計(jì)期間沒有造成任何破壞。 多CPU并行仿真將會(huì)縮短測(cè)試時(shí)間,獲得非常高的吞吐能力。就較長(zhǎng)時(shí)間測(cè)試而言,出于驗(yàn)證大規(guī)模芯片設(shè)計(jì)的能力考慮,硬件仿真是我們的首選方法。硬件加速 仿真器和多CPU并行仿真是互為補(bǔ)充的解決方案,可以在不同的環(huán)境中得到有效使用。
絕大多數(shù)系統(tǒng)級(jí)芯片器件都包含必須驗(yàn)證的嵌入式軟件,其中包括應(yīng)用代碼、實(shí)時(shí)操作系統(tǒng)(RTOS)、器件驅(qū)動(dòng)程序、硬件診斷以及啟動(dòng)ROM代碼。功能仍然重要,但吞吐能力以及其它系統(tǒng)級(jí)事宜可能也需要獲得驗(yàn)證。運(yùn)行大量軟件通常意味著長(zhǎng)時(shí)間模擬作業(yè)。
硬件/軟件協(xié)同仿真解決方案提供降低總體負(fù)擔(dān)的途徑,同時(shí)也提供高效能糾錯(cuò)和分析環(huán)境。即便就較長(zhǎng)運(yùn)行時(shí)間而言,該設(shè)計(jì)可能也需要部分或全部移入硬件解決方案之中,但應(yīng)該保留相同或相當(dāng)?shù)募m錯(cuò)環(huán)境,這樣就可以最大限度減少上述執(zhí)行環(huán)境中的遷移。
改進(jìn)的糾錯(cuò)解決方案
為支持可擴(kuò)展驗(yàn)證解決方案,糾錯(cuò)工具必須實(shí)現(xiàn)集成,在各個(gè)抽象層次上保持前后一致,在各個(gè)可擴(kuò)展性工具之間保持一致。其目標(biāo) 是加快速度發(fā)現(xiàn)錯(cuò)誤、跟蹤捕獲故障原因、修復(fù)故障,并最大限度縮短反饋時(shí)間,將反復(fù)回路減少到最低限度。目前,無(wú)論是設(shè)計(jì)團(tuán)隊(duì)還是驗(yàn)證團(tuán)隊(duì),都將超過(guò) 50%的時(shí)間用在糾錯(cuò)上,因此這一領(lǐng)域的改進(jìn)可能對(duì)縮短產(chǎn)品上市時(shí)間產(chǎn)生重大影響。
評(píng)論