在IC驗(yàn)證者進(jìn)行測(cè)試點(diǎn)評(píng)審的時(shí)候,或者在和DE(數(shù)字設(shè)計(jì)工程師)、SE(系統(tǒng)工程師)進(jìn)行驗(yàn)證場(chǎng)景討論的時(shí)候,常常會(huì)聽(tīng)到“邊界”“異常”這倆詞。他倆就像是一對(duì)形影不離的好朋友,同時(shí)出現(xiàn)在驗(yàn)證者的耳畔和DE、SE的嘴邊。
就像丑媳婦早晚要見(jiàn)公婆,驗(yàn)證者也注定要面對(duì)它們,無(wú)論何時(shí)何地。
其實(shí),在每一位丑媳婦的心中,多多少少都有一些公婆的威嚴(yán)形象。對(duì)于“邊界”和“異?!保?yàn)證者也有咱們自己的理解。
其一、邊界場(chǎng)景。
“邊界”是與隨機(jī)驗(yàn)證方法強(qiáng)相關(guān)的概念。
每一個(gè)隨機(jī)參數(shù)和變量都有各自的隨機(jī)范圍,有范圍,就有邊界。此其一也。
隨機(jī)驗(yàn)證的底層邏輯是把DUT(Design Under Test)當(dāng)成一個(gè)“黑盒子”,驗(yàn)證者向其輸入隨機(jī)的激勵(lì),隨機(jī)的去撞DUT內(nèi)部的各個(gè)邏輯功能。每一次run隨機(jī)用例之前,驗(yàn)證者都不知道會(huì)撞到哪部分DUT的邏輯功能。而在DUT內(nèi),不同的邏輯區(qū)域承載不同的功能特性。分了區(qū)域,就有邊界。次其二也。
若把DUT比作一個(gè)碩大的棗樹(shù),隨機(jī)驗(yàn)證用例就是一根棍子。驗(yàn)證者仰頭望著繁茂的枝頭,要把手上這根棍子握緊。有棗沒(méi)棗,打幾桿子。
通常IC驗(yàn)證者認(rèn)為,配置變量、輸入數(shù)據(jù)的合法的取值范圍的“邊界”值,是一種邊界場(chǎng)景。這主要針對(duì)可由單個(gè)變量構(gòu)成的場(chǎng)景,對(duì)于多個(gè)變量構(gòu)成的場(chǎng)景,則要考慮每個(gè)變量的取值。通常,0x0,0xFFFF_FFFF(全F),Max-Value,Min-Value等被認(rèn)為是“邊界”值。
“邊界”場(chǎng)景的變量數(shù)據(jù)必須是合法的(合理而有效的取值)。合法的則是“邊界”,非法的則可能是“異常”。
相比于“邊界”場(chǎng)景,“異常”場(chǎng)景在驗(yàn)證者和DE、SE之間偶爾會(huì)存在一些爭(zhēng)議。
比較典型的是,軟件的錯(cuò)誤配置是否要當(dāng)做異常場(chǎng)景在數(shù)字驗(yàn)證中進(jìn)行覆蓋。
認(rèn)為“是”的人(大概率是DE/SE),通常覺(jué)得這種錯(cuò)誤配置是有可能發(fā)生的,為什么不驗(yàn)?zāi)兀?/p>
認(rèn)為“否”的人(大概率是驗(yàn)證者),回懟:汽車(chē)出廠檢驗(yàn)的時(shí)候,是不是也要在河里開(kāi)幾圈?。?/p>
竊以為:要判斷一個(gè)錯(cuò)誤配置是不是“異?!眻?chǎng)景,關(guān)鍵是要看芯片的方案和數(shù)字邏輯是否做了相關(guān)的“設(shè)計(jì)”。即,硬件電路是否支持這種軟件的錯(cuò)誤使用。若支持,則應(yīng)該作為異常,必須在驗(yàn)證中進(jìn)行覆蓋。若不支持,則不驗(yàn)證。這也是為什么非法的數(shù)據(jù)可能是異常:若支持,則是異常;若不支持,則啥也不是。
此處的“設(shè)計(jì)”,不是只在DUT中有相關(guān)的邏輯電路,而在FS中缺失相關(guān)的描述。更不是只有SE/DE的空口白牙的說(shuō)說(shuō)而已。異常場(chǎng)景必須要在FS(Feature SPEC)中進(jìn)行描述,并且數(shù)字邏輯也要支持。無(wú)文檔,不驗(yàn)證,尤其是驗(yàn)證者面對(duì)“異常”場(chǎng)景之時(shí)。
舉個(gè)例子,某芯片的一個(gè)配置參數(shù)范圍是1~127。如果在FS中寫(xiě)了:若是配置0,則認(rèn)為是軟件錯(cuò)誤配置,芯片記錄錯(cuò)誤配置信息并上報(bào)中斷。那么,配置參數(shù)=0是典型的“異?!眻?chǎng)景,驗(yàn)證者需要構(gòu)造這種激勵(lì),覆蓋該場(chǎng)景。若是FS中沒(méi)有相關(guān)的描述,則不覆蓋。若是FS沒(méi)有寫(xiě),但是SE口頭要求驗(yàn)證者構(gòu)造該場(chǎng)景,數(shù)字邏輯行為不可知,這時(shí),驗(yàn)證者可大膽的跟他說(shuō)NO。
因此,異常場(chǎng)景的關(guān)鍵所在,還是FS中的相關(guān)描述。關(guān)于該場(chǎng)景,SE們?cè)贔S中至少要說(shuō)清兩點(diǎn):
軟件對(duì)硬件不能做什么。此其一也。
軟件若是做了不該做的事情,硬件會(huì)怎樣。此其二也。
站在軟件和應(yīng)用的角度看“異?!?,它更應(yīng)該是DUT的某種業(yè)務(wù)功能在執(zhí)行期間,發(fā)生了錯(cuò)誤或非預(yù)期的情況后,硬件邏輯的一系列相關(guān)動(dòng)作,以幫助軟件更好的獲取信息,定位錯(cuò)誤,撥亂反正,恢復(fù)正常。而不是業(yè)務(wù)開(kāi)始之前就可知的配置錯(cuò)誤(軟件本身的錯(cuò)誤)。當(dāng)然,硬件邏輯針對(duì)軟件錯(cuò)誤做的這些所謂的“保護(hù)設(shè)計(jì)”,也能在某種程度提升芯片的問(wèn)題定位效率和應(yīng)用的魯棒性。但是這些“保護(hù)設(shè)計(jì)”都是實(shí)打?qū)崝?shù)字電路,會(huì)占芯片面積,也會(huì)消耗功耗。如何在提升芯片應(yīng)用的魯棒性和降低冗余設(shè)計(jì)優(yōu)化芯片整體PPA之間,尋找到最佳的平衡點(diǎn),是擺在每一位SE、DE面前的大題目。
題外話:
“認(rèn)清生活的本質(zhì)之后,依然熱愛(ài)生活?!弊罱鼘?duì)這句話有了深刻的認(rèn)識(shí)。生活之于每個(gè)人都或多或少有些許不易,不能因?yàn)檫@些而喪失對(duì)生活的熱愛(ài)。蘇軾說(shuō)他看世間無(wú)一個(gè)不好的人。那估計(jì)他看世間的事也無(wú)一件不好的事。某件事咋一看去不甚好,換個(gè)角度再看,再看,總有好的一面。諸位明公,共勉之。
審核編輯:劉清
-
硬件電路
+關(guān)注
關(guān)注
39文章
263瀏覽量
30135 -
PPA
+關(guān)注
關(guān)注
0文章
21瀏覽量
7774 -
DUT
+關(guān)注
關(guān)注
0文章
193瀏覽量
13356
原文標(biāo)題:淺談數(shù)字驗(yàn)證場(chǎng)景的“邊界”和“異?!?/p>
文章出處:【微信號(hào):Rocker-IC,微信公眾號(hào):路科驗(yàn)證】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
基于VMM驗(yàn)證方法學(xué)的MCU驗(yàn)證環(huán)境
從安防到元宇宙:RK3588如何重塑視覺(jué)感知邊界?
看不見(jiàn)的安全防線:信而泰儀表如何驗(yàn)證零信任有效性
數(shù)字設(shè)計(jì)和驗(yàn)證技術(shù)的發(fā)展
數(shù)字IC設(shè)計(jì)與數(shù)字IC驗(yàn)證哪個(gè)好?
Verification Feature獲取及其驗(yàn)證
VXI邊界掃描模塊接口電路的設(shè)計(jì)
談?wù)?/b>STM32(CM3)的Faults異常
可解決報(bào)文激增異常的BGP異常檢測(cè)方法
基于異常檢測(cè)的模型表現(xiàn)對(duì)比
醫(yī)療設(shè)備的數(shù)字驗(yàn)證
基于場(chǎng)景的自動(dòng)駕駛驗(yàn)證策略
Keithley 2400數(shù)字源表校準(zhǔn)數(shù)據(jù)異常時(shí)如何驗(yàn)證設(shè)備精度

談?wù)剶?shù)字驗(yàn)證場(chǎng)景的“邊界”和“異?!?/h1>
評(píng)論