本技術(shù)涉及集成電路設(shè)計(jì)領(lǐng)域,特別是針對(duì)芯片驗(yàn)證平臺(tái)的增量開(kāi)發(fā)方法、系統(tǒng)及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著集成電路設(shè)計(jì)規(guī)模的不斷擴(kuò)大和復(fù)雜度的日益提高,芯片驗(yàn)證面臨著巨大的挑戰(zhàn)。驗(yàn)證工作量呈指數(shù)級(jí)增長(zhǎng),而驗(yàn)證時(shí)間窗口卻不斷縮短,這就要求驗(yàn)證方法和工具必須不斷革新以提高效率。在這種背景下,業(yè)界目前有兩種主要的驗(yàn)證平臺(tái)開(kāi)發(fā)方法:
2、第一種是采用手動(dòng)開(kāi)發(fā)方法。這是最傳統(tǒng)的方法,驗(yàn)證工程師完全依靠手動(dòng)編碼來(lái)構(gòu)建驗(yàn)證環(huán)境。雖然靈活性高,但效率低下,難以應(yīng)對(duì)復(fù)雜芯片的驗(yàn)證需求。
3、第二種是采用基于模板和通用驗(yàn)證方法學(xué)(universal?verificationmethodology,uvm)技術(shù)的自動(dòng)化驗(yàn)證環(huán)境生成方法。這是目前業(yè)界廣泛采用的方法。該方法通過(guò)預(yù)先定義包含通用或自定義驗(yàn)證知識(shí)產(chǎn)權(quán)(verification?intellectualproperty,vip)等驗(yàn)證組件描述的模板,利用uvm的階段(phase)、生成機(jī)制(factory)、事務(wù)級(jí)建模(transaction?level?modeling,tlm)等技術(shù),快速生成符合uvm規(guī)范的基于硬件描述和驗(yàn)證語(yǔ)言(如systemverilog語(yǔ)言)的驗(yàn)證框架,并集成模板中預(yù)定義的vip。
4、這種基于模板的自動(dòng)化驗(yàn)證環(huán)境生成方法加速了驗(yàn)證環(huán)境的初始搭建過(guò)程,避免了重復(fù)的通用工作。然而,盡管這種方法在初始驗(yàn)證環(huán)境構(gòu)建方面取得了顯著進(jìn)展,但在后續(xù)的增量開(kāi)發(fā)過(guò)程中仍然存在明顯的局限性:
5、首先,缺乏智能化的增量更新能力。現(xiàn)有方法無(wú)法自動(dòng)化地在已生成的驗(yàn)證環(huán)境中進(jìn)行變更、補(bǔ)充等修改。特別是對(duì)于與待測(cè)設(shè)計(jì)(design?under?test,dut)密切相關(guān)的核心邏輯,如信號(hào)驅(qū)動(dòng)邏輯、參考模型等,仍然需要芯片驗(yàn)證工程師手動(dòng)編寫代碼并反復(fù)迭代測(cè)試。
6、其次,難以應(yīng)對(duì)快速迭代的需求。在現(xiàn)代芯片開(kāi)發(fā)過(guò)程中,設(shè)計(jì)變更頻繁,驗(yàn)證需求也隨之快速演變。現(xiàn)有方法在響應(yīng)這些變化時(shí)靈活性不足,難以滿足快速迭代的需求。
7、這些局限性導(dǎo)致驗(yàn)證平臺(tái)的增量開(kāi)發(fā)效率低下,無(wú)法滿足現(xiàn)代芯片設(shè)計(jì)快速迭代的需求。特別是在復(fù)雜系統(tǒng)芯片(system?on?chip,soc)的開(kāi)發(fā)中,驗(yàn)證往往成為整個(gè)開(kāi)發(fā)周期的瓶頸,嚴(yán)重影響了產(chǎn)品的上市時(shí)間。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)所要解決的技術(shù)問(wèn)題在于,提供一種芯片驗(yàn)證平臺(tái)的增量開(kāi)發(fā)方法、系統(tǒng)及存儲(chǔ)介質(zhì),通過(guò)自動(dòng)化和智能化的手段,能夠提高驗(yàn)證效率,縮短驗(yàn)證周期,可以應(yīng)對(duì)快速迭代的需求。
2、為解決上述技術(shù)問(wèn)題,作為本技術(shù)的一方面,提供一種芯片驗(yàn)證平臺(tái)的增量開(kāi)發(fā)方法,其包括以下步驟:對(duì)芯片驗(yàn)證平臺(tái)的存量代碼進(jìn)行解析,并提取代碼拓?fù)湫畔ⅲ?/p>
3、根據(jù)輸入模版填寫需求信息;
4、將填寫好的需求信息以及所述拓?fù)湫畔⒆鳛檩斎雮鬟f給大語(yǔ)言模型,并獲取所述大語(yǔ)言模型按照指導(dǎo)模板格式輸出的代碼變更信息;
5、將所述代碼變更信息應(yīng)用到所述存量代碼中,獲得更新后代碼;
6、根據(jù)所述需求信息對(duì)更新后代碼進(jìn)行驗(yàn)證,獲得與所述需求信息對(duì)應(yīng)的驗(yàn)證平臺(tái)。
7、其中,所述對(duì)芯片驗(yàn)證平臺(tái)的存量代碼進(jìn)行解析,包括:
8、采用代碼解析工具對(duì)芯片驗(yàn)證平臺(tái)的存量代碼進(jìn)行解析,包括:識(shí)別存量代碼中systemverilog語(yǔ)法,獲得所述存量代碼中的文件層級(jí)結(jié)構(gòu)、類定義、類成員以及uvm特有結(jié)構(gòu)內(nèi)容。
9、其中,所述輸入模板采用yaml格式,包含組件類型、接口定義、功能描述、參數(shù)配置、約束條件、uvm特性、依賴關(guān)系字段。
10、其中,所述llm輸出指導(dǎo)模板包括:變更摘要、文件變更詳情、操作指令類型、注意事項(xiàng)和后續(xù)步驟字段,用于結(jié)構(gòu)化地描述代碼變更。
11、其中,將所述代碼變更信息應(yīng)用到所述存量代碼中包括:
12、解析大語(yǔ)言模型生成的代碼變更信息;
13、將代碼變更信息轉(zhuǎn)換為可執(zhí)行操作指令,所述操作指令為添加代碼操作、修改代碼操作和刪除代碼操作中至少之一;
14、將轉(zhuǎn)換獲得的操作指令應(yīng)用到原有代碼中。
15、其中,根據(jù)所述需求信息對(duì)更新后代碼進(jìn)行檢查,包括:
16、采用代碼解析工具對(duì)更新后的代碼進(jìn)行解析,獲得更新后代碼的代碼拓?fù)湫畔ⅲ?/p>
17、將更新后代碼的代碼拓?fù)湫畔⒁约八鲂枨笮畔ⅲ斎氪髷?shù)據(jù)模型中,進(jìn)行如下檢查:語(yǔ)法檢查、接口一致性檢查、功能完整性檢查、命名規(guī)范檢查和uvm特定檢查;
18、如果在檢查過(guò)程中發(fā)現(xiàn)問(wèn)題,則生成詳細(xì)的代碼修改建議供用戶進(jìn)行人工審核和修正。
19、作為本技術(shù)的另一方面,還提供一種芯片驗(yàn)證平臺(tái)增量開(kāi)發(fā)系統(tǒng),至少包括:
20、代碼解析模塊,用于對(duì)芯片驗(yàn)證平臺(tái)存量代碼進(jìn)行解析,并提取代碼拓?fù)湫畔ⅲ?/p>
21、需求信息填寫單元,用于根據(jù)輸入模版填寫需求信息;
22、代碼變更信息獲得模塊,用于將填寫好的需求信息以及所述拓?fù)湫畔⒆鳛檩斎雮鬟f給大語(yǔ)言模型,并獲取所述大語(yǔ)言模型按照指導(dǎo)模板格式輸出的代碼變更信息;
23、代碼應(yīng)用模塊,用于將所述代碼變更信息應(yīng)用到所述存量代碼中,獲得更新后代碼;
24、代碼驗(yàn)證模塊,用于根據(jù)所述需求信息對(duì)更新后代碼進(jìn)行驗(yàn)證,獲得與所述需求信息對(duì)應(yīng)的驗(yàn)證平臺(tái)。
25、其中,所述代碼解析模塊進(jìn)一步包括代碼解析工具,用于識(shí)別存量代碼中systemverilog語(yǔ)法,以獲得所述存量代碼中的文件層級(jí)結(jié)構(gòu)、類定義、類成員以及uvm特有結(jié)構(gòu)內(nèi)容。
26、其中,所述輸入模板獲得模塊中的輸入模板獲得模塊采用yaml格式,包含組件類型、接口定義、功能描述、參數(shù)配置、約束條件、uvm特性字段。
27、其中,所述輸出模板獲得模塊中的輸出指導(dǎo)模板包括變更摘要、文件變更詳情、操作指令類型、注意事項(xiàng)和后續(xù)步驟字段,用于結(jié)構(gòu)化地描述代碼變更。
28、其中,所述代碼應(yīng)用模塊包括:
29、解析模塊,用于解析大語(yǔ)言模型生成的代碼變更信息;
30、轉(zhuǎn)換模塊,用于將代碼變更信息轉(zhuǎn)換為可執(zhí)行操作指令,所述操作指令為添加代碼操作、修改代碼操作和刪除代碼操作中之少之一;
31、應(yīng)用模塊,用于將轉(zhuǎn)換獲得的操作指令應(yīng)用到原有代碼中。
32、其中,所述代碼檢查模塊包括:
33、重新解析模塊,用于采用代碼解析工具對(duì)更新后代碼進(jìn)行解析,獲得更新后的代碼拓?fù)湫畔ⅲ?/p>
34、檢查模塊,用于將更新后的代碼拓?fù)湫畔⒁约八鲂枨笮畔?,輸入大語(yǔ)言模型中,進(jìn)行如下檢查:語(yǔ)法檢查、接口一致性檢查、功能完整性檢查、命名規(guī)范檢查和uvm特定檢查;
35、修改建議獲得模塊,用于當(dāng)檢查模塊在檢查過(guò)程中發(fā)現(xiàn)問(wèn)題后,生成詳細(xì)的代碼修改建議供用戶進(jìn)行人工審核和修正。
36、其中,所述系統(tǒng)還包括:
37、輸入模板設(shè)置模塊,用于設(shè)置用于描述驗(yàn)證組件的輸入模板,供用戶根據(jù)需求進(jìn)行填寫;
38、輸出模板設(shè)置模塊,用于設(shè)置指導(dǎo)大語(yǔ)言模型輸出的輸出指導(dǎo)模板。
39、作為本技術(shù)的再一方面,還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如前述的方法的步驟。
40、實(shí)施本實(shí)施例,具有如下有益效果:
41、本技術(shù)提供一種芯片驗(yàn)證平臺(tái)增量開(kāi)發(fā)方法、系統(tǒng)及存儲(chǔ)介質(zhì)??梢詫?shí)現(xiàn)芯片驗(yàn)證平臺(tái)的高效增量開(kāi)發(fā),大幅提升了驗(yàn)證環(huán)境構(gòu)建的效率和質(zhì)量。本技術(shù)提供的方法及系統(tǒng)特別適用于復(fù)雜芯片設(shè)計(jì)的迭代驗(yàn)證過(guò)程,能夠顯著減少人工編碼工作量,加速驗(yàn)證平臺(tái)的演進(jìn)和完善。