本發(fā)明涉及芯片驗(yàn)證,尤其涉及一種片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)、系統(tǒng)及構(gòu)建方法。
背景技術(shù):
1、隨著摩爾定律的持續(xù)推進(jìn),芯片制造工藝越來(lái)越先進(jìn),芯片的規(guī)模也從從最初的幾千個(gè)晶體管到如今的數(shù)百億個(gè),為此soc(片上系統(tǒng))可以集成更多的功能,包括處理器核心(cpu、gpu)、存儲(chǔ)器(ram、rom)、高速接口(pcie)、高速存儲(chǔ)控制器(ddr)、復(fù)雜總線網(wǎng)絡(luò)、安全處理等,但這些模塊的復(fù)雜性和多樣性就給驗(yàn)證環(huán)境和平臺(tái)的搭建和維護(hù)效率提出了更高的要求。
2、對(duì)于規(guī)模不大的soc芯片,傳統(tǒng)芯片公司往往有兩種處理方式。一種是僅配置一套st平臺(tái)(系統(tǒng)測(cè)試平臺(tái)),以mcu芯片舉例,不需要開(kāi)發(fā)多套u(yù)t驗(yàn)證平臺(tái)(單元測(cè)試平臺(tái)),因?yàn)橹饕目刂贫伎梢杂蒫pu?core完成,總線和接口都比較簡(jiǎn)單和標(biāo)準(zhǔn)化,集成不太復(fù)雜,同時(shí)又不涉及到額外的自研功能開(kāi)發(fā),所以一套平臺(tái)驗(yàn)證風(fēng)險(xiǎn)不大;另一種是配置多套平臺(tái)環(huán)境,還是以mcu舉例,如果涉及到比較關(guān)鍵且比較多的自研功能開(kāi)發(fā),那就不僅需要一套st環(huán)境來(lái)實(shí)現(xiàn)對(duì)功能集成覆蓋,還需要開(kāi)發(fā)多套u(yù)t的平臺(tái)環(huán)境來(lái)專門(mén)對(duì)自研模塊做驗(yàn)證覆蓋,才能保證更好的完備性。這兩種方式的處理都是簡(jiǎn)單直接的,沒(méi)有特別考慮平臺(tái)對(duì)驗(yàn)證效率的重要性,能用就行,這正是因?yàn)橥ǔF湓O(shè)計(jì)規(guī)模不大,對(duì)驗(yàn)證人員的要求不高,eda驗(yàn)證軟件速度足以在交付周期內(nèi)快速收斂整套設(shè)計(jì)。
3、但隨著芯片設(shè)計(jì)的復(fù)雜性和規(guī)模不斷增加,soc設(shè)計(jì)一般集成多種異構(gòu)組件,這些異構(gòu)組件通常都有不同的設(shè)計(jì)規(guī)范和驗(yàn)證要求,這增加了整體驗(yàn)證的復(fù)雜性。對(duì)于目前的動(dòng)不動(dòng)上百億門(mén)的大芯片來(lái)說(shuō),eda仿真速度已經(jīng)到達(dá)瓶頸,迭代的仿真周期都是按小時(shí)、按天計(jì)算,對(duì)于仿真所需服務(wù)器和license等資源的需求指數(shù)級(jí)增加,如果仍然按照傳統(tǒng)單一且直接的驗(yàn)證平臺(tái)結(jié)構(gòu)的這種小芯片驗(yàn)證思維去處理如此大規(guī)模的設(shè)計(jì),按異構(gòu)或模塊組件拆分成多個(gè)或十幾個(gè)大的子系統(tǒng)平臺(tái)驗(yàn)證的話,不僅會(huì)讓平臺(tái)開(kāi)發(fā)因開(kāi)發(fā)多樣性、仿真資源局限性等難以統(tǒng)一維護(hù),也會(huì)大大增加驗(yàn)證人力成本,同時(shí)在整個(gè)驗(yàn)證周期內(nèi)需要投入大量的時(shí)間去解決和優(yōu)化平臺(tái)問(wèn)題,這必然會(huì)導(dǎo)致驗(yàn)證人力和機(jī)器等資源的浪費(fèi),進(jìn)而降低了大規(guī)模soc的驗(yàn)證交付效率。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的是提供一種可對(duì)具有多異構(gòu)子系統(tǒng)的片上系統(tǒng)進(jìn)行全方位驗(yàn)證,且多種驗(yàn)證平臺(tái)通過(guò)統(tǒng)一和標(biāo)準(zhǔn)化環(huán)境復(fù)合在一起,以提升大規(guī)模片上系統(tǒng)驗(yàn)證效率的片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)、系統(tǒng)及構(gòu)建方法。
2、為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)構(gòu)建方法,所述復(fù)合驗(yàn)證平臺(tái)包括至少兩個(gè)分別用于對(duì)所述片上系統(tǒng)中不同對(duì)象進(jìn)行驗(yàn)證的驗(yàn)證平臺(tái),所述構(gòu)建方法包括:
3、配置統(tǒng)一的目錄結(jié)構(gòu),所述目錄結(jié)構(gòu)用于存放所述復(fù)合驗(yàn)證平臺(tái)運(yùn)行所需的全部要素文件;
4、根據(jù)功能和用途對(duì)所述復(fù)合驗(yàn)證平臺(tái)運(yùn)行所需的全部要素文件進(jìn)行分類,并將不同類別的要素文件分別存入不同的標(biāo)準(zhǔn)目錄中;
5、在每一所述標(biāo)準(zhǔn)目錄中,配置有若干分別與所述復(fù)合驗(yàn)證平臺(tái)中每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的子目錄,所述子目錄用于存儲(chǔ)與相應(yīng)所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的個(gè)性化要素文件,所述子目錄中還可存儲(chǔ)與所述復(fù)合驗(yàn)證平臺(tái)中所有所述驗(yàn)證平臺(tái)相關(guān)的公共要素文件;
6、根據(jù)統(tǒng)一規(guī)則對(duì)各個(gè)所述子目錄中的文件分別進(jìn)行差異化命名;
7、在控制面,配置位于底層的公共控制層和位于頂層的個(gè)性化控制層;
8、在所述公共控制層,存放所有所述驗(yàn)證平臺(tái)共同所需的頂層選項(xiàng)約束和流程控制類要素文件;
9、在所述個(gè)性化控制層,存放用戶根據(jù)任一所述驗(yàn)證平臺(tái)需求自定義的配置類要素文件;
10、所述個(gè)性化控制層能夠覆蓋或約束所述公共控制層中的默認(rèn)設(shè)置,以使得,所述個(gè)性化控制層提供對(duì)所述驗(yàn)證平臺(tái)進(jìn)行切換的操作接口
11、較佳地,所述標(biāo)準(zhǔn)目錄中包括有八個(gè)所述子目錄,分別為配置目錄、環(huán)境目錄、列表目錄、寄存器目錄、仿真目錄、測(cè)試目錄、測(cè)試代碼目錄以及系統(tǒng)目錄;
12、所述配置目錄,用于存放所述復(fù)合驗(yàn)證平臺(tái)的配置文件,所述配置文件包括所有所述驗(yàn)證平臺(tái)共同所需的公共配置文件和與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的個(gè)性化配置文件;
13、所述環(huán)境目錄,用于存放若干分別與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的環(huán)境文件;
14、所述列表目錄,用于存放若干分別與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的列表文件,所述列表文件記載仿真時(shí)指定設(shè)計(jì)文件和庫(kù)文件的列表;
15、所述寄存器目錄,用于存放若干分別與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的寄存器模型、生成寄存器模型的腳本文件以及寄存器輸入文件;
16、所述仿真目錄,存放用于切換各所述驗(yàn)證平臺(tái)的調(diào)度文件,以及不同所述驗(yàn)證平臺(tái)環(huán)境變量的source目錄;
17、所述測(cè)試目錄,用于存放若干分別與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的用于仿真的測(cè)試用例;
18、所述測(cè)試代碼目錄,用于存放若干分別與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的用于仿真的與預(yù)設(shè)開(kāi)發(fā)語(yǔ)言相對(duì)應(yīng)的測(cè)試用例;
19、所述系統(tǒng)目錄,用于用于存放若干分別與每一所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的用于仿真的環(huán)境頂層文件。
20、較佳地,在所述公共控制層,對(duì)與所有的所述驗(yàn)證平臺(tái)相對(duì)應(yīng)的共性配置設(shè)置變量參數(shù),通過(guò)所述個(gè)性化控制層修改該變量參數(shù),以切換所述驗(yàn)證平臺(tái)。
21、較佳地,所述片上系統(tǒng)至少具有一個(gè)子系統(tǒng),所述復(fù)合驗(yàn)證平臺(tái)包括主驗(yàn)證平臺(tái)和至少一個(gè)子驗(yàn)證平臺(tái),所述主驗(yàn)證平臺(tái)用于對(duì)所述片上系統(tǒng)進(jìn)行集成化驗(yàn)證,所述子驗(yàn)證平臺(tái)用于對(duì)所述子系統(tǒng)進(jìn)行驗(yàn)證。
22、較佳地,所述片上系統(tǒng)包括至少兩個(gè)項(xiàng)目模塊,所述復(fù)合驗(yàn)證平臺(tái)包括至少兩個(gè)分別與所述項(xiàng)目模塊相對(duì)應(yīng)的所述驗(yàn)證平臺(tái),所述驗(yàn)證平臺(tái)與所述項(xiàng)目模塊一一對(duì)應(yīng)。
23、本發(fā)明還提供一種片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái),所述復(fù)合驗(yàn)證平臺(tái)包括至少兩個(gè)分別用于對(duì)所述片上系統(tǒng)中不同對(duì)象進(jìn)行驗(yàn)證的驗(yàn)證平臺(tái),所述復(fù)合驗(yàn)證平臺(tái)基于如上所述的片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)構(gòu)建方法構(gòu)建。
24、本發(fā)明還提供一種片上系統(tǒng)復(fù)合驗(yàn)證系統(tǒng),其包括:
25、一個(gè)或多個(gè)處理器;
26、存儲(chǔ)器;
27、以及一個(gè)或多個(gè)程序,其中一個(gè)或多個(gè)程序被存儲(chǔ)在所述存儲(chǔ)器中,并且被配置成由所述一個(gè)或多個(gè)處理器執(zhí)行,所述程序包括用于執(zhí)行如上所述的片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)構(gòu)建方法的指令。
28、本發(fā)明還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序可被處理器執(zhí)行以完成如上所述的片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)構(gòu)建方法。
29、與現(xiàn)有技術(shù)相比,本發(fā)明上述技術(shù)方案提供的片上系統(tǒng)復(fù)合驗(yàn)證平臺(tái)構(gòu)建方法,首先,通過(guò)統(tǒng)一的目錄結(jié)構(gòu)和命名規(guī)則,將不同驗(yàn)證平臺(tái)的要素文件進(jìn)行規(guī)范化管理,避免了傳統(tǒng)方式下環(huán)境雜亂、文件難以查找的問(wèn)題,為分層控制提供了基礎(chǔ)。同時(shí),分層的控制機(jī)制將公共部分與個(gè)性化部分分離,簡(jiǎn)化了平臺(tái)的維護(hù)工作,降低了對(duì)維護(hù)人員專業(yè)技能的要求;其次,該方案支持在一個(gè)復(fù)合平臺(tái)下集成多個(gè)驗(yàn)證平臺(tái),并通過(guò)公開(kāi)控制層實(shí)現(xiàn)對(duì)仿真資源的統(tǒng)一調(diào)度和管理。不同的驗(yàn)證平臺(tái)可以共享資源調(diào)度機(jī)制,避免了資源沖突和浪費(fèi),提高了資源利用率;另外,標(biāo)準(zhǔn)化的目錄結(jié)構(gòu)和控制機(jī)制,使得創(chuàng)建新的驗(yàn)證平臺(tái)變得更加容易。新平臺(tái)的搭建只需關(guān)注個(gè)性化配置,無(wú)需從頭開(kāi)始構(gòu)建整個(gè)環(huán)境,從而降低了對(duì)驗(yàn)證工程師的技術(shù)門(mén)檻,提高了平臺(tái)環(huán)境搭建效率。