《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > Verifier提高驗證完備性
Verifier提高驗證完備性
2016年電子技術(shù)應(yīng)用第8期
林 慧1,蔣 武1,,熊 熙1,,李元祝2,,黃志榮3
1.海思半導(dǎo)體技術(shù)有限公司,廣東 深圳518129,;2.楷登企業(yè)管理有限公司深圳分公司,,廣東 深圳518129; 3.中軟國際科技服務(wù)有限公司深圳分公司,,廣東 深圳518129
摘要: 隨著集成電路設(shè)計技術(shù)的不斷發(fā)展,,電路設(shè)計中經(jīng)常出現(xiàn)一些問題。因此,,設(shè)計驗證技術(shù)成為了電路設(shè)計中不可或缺的部分,。如何提高驗證完備性,是驗證技術(shù)的難題之一,。本文介紹了Cadence最新發(fā)布的適用于模擬設(shè)計的ADE Verifier的工具使用流程,,以及根據(jù)海思業(yè)務(wù)需求定制的使用方法。該工具整合了驗證工具ADE Explorer 和ADE Assembler的特性,,完善了模擬電路設(shè)計驗證流程,,解決了模擬設(shè)計驗證完備性中的問題。
中圖分類號: TN402
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2016.08.007
中文引用格式: 林慧,,蔣武,,熊熙,等. Verifier提高驗證完備性[J].電子技術(shù)應(yīng)用,,2016,,42(8):37-40,43.
英文引用格式: Lin Hui,,Jiang Wu,,Xiong Xi,et al. Verifier-Improve the simulation verification completeness[J].Application of Electronic Technique,,2016,,42(8):37-40,43.
Verifier-Improve the simulation verification completeness
Lin Hui1,,Jiang Wu1,,Xiong Xi1,Li Yuanzhu2,,Huang Zhirong3
1.HiSilicon Technologies,,Shenzhen 518129,China,;2.Cadence Design System,,Shenzhen 518129,China,; 3.Soft International Science and Technology,,Shenzhen 518129,,China
Abstract: With the technology of the integrated circuit design developing, some problems in the circuit design also arise. The verification technology plays an important role in the circuit design. At present, it is urgent for us find solutions of improving the verification completeness. This paper describes a tool newly published by Cadence, that is, ADE Verifier. In this paper, you will get to know the usage of ADE Verifier and acquire its customized application in HiSilicon. By integrating the identities of both ADE Explorer and ADE Assemble, meanwhile, and by improving the process in a simulation verification, ADE Verifier has been fairly helpful to solve the completeness problem effectively.
Key words : circuit design;verification completeness,;ADE verifier

1 介紹

  ADE Explorer,、ADE Assembler是Cadence Virtuoso ADE一系列產(chǎn)品的重要模擬設(shè)計驗證工具,將驗證技術(shù)可視化,,能夠很好地支持工程師子模塊的模擬設(shè)計驗證,,大大提高了驗證效率。現(xiàn)有的驗證直接根據(jù)仿真結(jié)果來決定驗證設(shè)計的好壞與否,。這種驗證流程簡單有效,,但是也有其弊端——規(guī)格無標(biāo)準(zhǔn)可循、難以覆蓋更高層的設(shè)計,,導(dǎo)致難以及時發(fā)現(xiàn)并規(guī)避設(shè)計更深層的問題。在整合了ADE Explorer,、ADE Assembler強大的簡單有效的驗證功能的基礎(chǔ)上,,ADE Verifier在驗證流程上做了進(jìn)一步的優(yōu)化,,能夠有效彌補現(xiàn)有模擬設(shè)計驗證存在的不足,,很大程度上提高了模擬設(shè)計驗證的可靠性和完備性,。ADE Verifier特性如圖1所示,。

圖像 001.png

圖1  ADE Verifier特性

2 Verifier驗證流程

  Verifier支持自頂向下,、自下向上,、混合的設(shè)計方法,。本文描述Verifier自頂向下的設(shè)計方法,。根據(jù)客戶需求,、業(yè)務(wù)場景和條件等原始需求,,項目管理者(PM/PL)整合原始需求,,轉(zhuǎn)換成設(shè)計語言,,細(xì)化,、分解設(shè)計需求,。然后將整個需求分配給不同的工程師,。根據(jù)分配得到的需求,,工程師深入理解設(shè)計需求,量化相應(yīng)的設(shè)計規(guī)格,,并設(shè)計仿真用例和測試用例,,完成仿真,。然后將需求設(shè)計和規(guī)格設(shè)計進(jìn)行最后,工程師提交驗證數(shù)據(jù),,項目管理者就可以及時觀測驗證結(jié)果,,跟蹤項目驗證進(jìn)度,。ADE Verifier驗證流程如圖2所示,。

圖像 002.png

圖2  ADE Verifier驗證流程

  2.1 項目管理者建立Requirement

  需求的建立有兩種方式,,一是項目管理者在verifier里面創(chuàng)建的,,二是直接導(dǎo)入指定格式的需求表格,,包括csv文件和excel文件,。

  需求的內(nèi)容包括項目名稱,,模塊名稱,,指標(biāo)的最大值與最小值,、指標(biāo)的單位、責(zé)任人,、類型以及詳細(xì)的描述等,。指標(biāo)的最大值與最小值、指標(biāo)的單位都是作為后續(xù)規(guī)格設(shè)計的約束,。內(nèi)容可以由中文,、英文、日語,、德語,、北印度語5種語言組成。

  需求的類型包括以下幾種:Note,Spec Pass,,Ran OK,,Manual,。Note類型的需求是不需要仿真驗證;Spec Pass類型和Ran OK類型的需求是可以進(jìn)行仿真驗證的,,二者差別就是Spec Pass類型的需求要考慮需求設(shè)計的指標(biāo)值來決定需求的狀態(tài),,Ran OK類型的需求只會根據(jù)仿真結(jié)果來決定需求的狀態(tài);Manual類型的需求是指是要人為判斷設(shè)計的成功與否,,而不是直接簡單地根據(jù)仿真結(jié)果來決定,。

  需求是Hierarchy結(jié)構(gòu)的。從頂層模塊開始進(jìn)行需求設(shè)計,,細(xì)化到每個子模塊的需求設(shè)計,,直到完成整個項目的需求設(shè)計。每個需求設(shè)計都會指定一個責(zé)任人,,后續(xù)每個責(zé)任人都只需要對各自被分配到的需求負(fù)責(zé)人,。

  在現(xiàn)有的整個項目需求設(shè)計基礎(chǔ)上,可以新增需求,、刪除現(xiàn)有需求,、編輯現(xiàn)有需求。

  2.2 項目管理者分配Requirement

  根據(jù)需求責(zé)任人,,可以將master verification分成幾個不同的owner verification,。每個責(zé)任人只需要著眼于own verification,根據(jù)被分配到的需求進(jìn)行規(guī)格設(shè)計,。如圖3所示,,F(xiàn)red、Harry是master verification的責(zé)任人,,分配需求時,,會生成相應(yīng)的verification_Fred和verification_Harry。之后,,F(xiàn)red和Harry只需要分別修改,、完善verification_Fred 和 verification_Harry即可。

圖像 003.png

圖3  分配Requirement

  2.3 工程師添加Implementation

  根據(jù)需求設(shè)計,,工程師進(jìn)行相應(yīng)的Implementation,,支持adel、adexl,、maestro類型的文件,。如圖4所示。

圖像 004.png

圖4  工程師添加Implementation

  2.4 工程師建立Mapping

  工程師根據(jù)自己分配到的任務(wù),建立testbench,,和Requirement建立映射,。Requiremment與SPEC之間可以是n:1或者1:n的關(guān)系。

  需求的mapping有6種狀態(tài):Pass,,F(xiàn)ail,,No Results,Mapped,,Unmapped,,Spec check failed,。

  Pass是指在requirement的specification與implementation的specification保持一致的前提下,,requirement的specification和仿真結(jié)果保持一致。

  Fail是指在requirement的specification與implementation的specification保持一致的前提下,,requirement的specification和仿真結(jié)果不同,。

  No Results是指在requirement的specification與implementation的specification保持一致的前提下,implementation沒有仿真結(jié)果,。

  Mapped是指requirement的specification與implementation的specification保持一致,。

  Unmapped是指requirement還沒有建立mapping。

  Spec Check Failed是指如果requirement的specification與implementation的specification不能保持一致,。

  2.5 工程師加載,、提交個人Result

  Verifier提供了兩種加載結(jié)果的方式:直接跑仿真和加載仿真結(jié)果。

  Verifier呈現(xiàn)的結(jié)果包括整個項目的結(jié)果百分比,,以及每個模塊,、需求的結(jié)果。需求的結(jié)果狀態(tài)分為兩種:Requirement Status 和Specification Status,。Specification Status是根據(jù)spec的結(jié)果而定,;Requirement Status是根據(jù)spec結(jié)果以及map結(jié)果而定。加載個人Results如圖5所示,。

圖像 005.png

圖5  加載個人Results

  2.6 項目管理者查看項目Result

  等到工程師提交了個人結(jié)果之后,,項目管理者就可以查看整個項目的驗證進(jìn)展和驗證結(jié)果。如圖6所示,。

圖像 006.png

圖6  查看項目Results

3 Hisilicon Verifier

  3.1 定制化特性

  根據(jù)海思的業(yè)務(wù)需求,,在原有ADE Verifier平臺上,添加了定制化特性,,有以下兩點:

  (1)導(dǎo)入的requirement表格形式:通過新增列數(shù),,直觀地呈現(xiàn)需求之間的Hierachy結(jié)構(gòu);

  (2)結(jié)果的保存與呈現(xiàn):通過收集工程師提交的結(jié)果,,保存到數(shù)據(jù)庫,。保存結(jié)果能夠讓現(xiàn)有項目傳承歷史項目的優(yōu)良基因;展示結(jié)果從項目和owner的維度展示數(shù)據(jù),能夠讓項目管理者直觀看到整個項目的驗證進(jìn)展,,讓工程師清晰認(rèn)識到自己模塊的進(jìn)度,。Hisilicon Verifier Results如圖7所示。

圖像 007.png

圖7  Hisilicon Verifier Results 

  3.2 定制化流程

  在工程師提交verification時候,,結(jié)果數(shù)據(jù)就會被收集,。為了適配定制化特性——收集結(jié)果數(shù)據(jù),整理了使用verifier的三種流程,,這三種流程都能夠保證收集到數(shù)據(jù),。為了能夠清晰描述三種流程的特點,假設(shè)背景如下:工程P,,項目經(jīng)理是M,,工程師E1,E2,,E3,。M新建一個verification,設(shè)置result路徑為Current cellview,,這樣結(jié)果文件就在相應(yīng)的verification路徑下,。分配任務(wù),生成verification_E1, verification_E2, verification_E3,。項目經(jīng)理M check in verification,,verification_E1, verification_E2, verification_E3。如圖8~圖11所示,。

  (1)流程1(如圖8)

圖像 008.png

圖8  項目背景

  Step1:

  E1 新建maestre_E1,,搭建testbench,跑仿真,;

  Step2:

  E1 Check out verification_E1,,和maestre_E1建立Map,加載結(jié)果,,check in verification_E1,,這樣才能收集到數(shù)據(jù);

  Step3:

  E1 Check in maestre_E1,,這樣M,,E2,E3才能看到E1的結(jié)果,;

  (2)流程2(如圖9)

圖像 009.png

圖9  流程1

  Step1:

  E1 新建maestre_E1,,搭建testbench,跑仿真,;

  Step2:

  E1 Check out verification_E1,,和maestre_E1建立Map,,加載結(jié)果,check in verification_E1,,這樣才能收集數(shù)據(jù),;

  Step3:

  E1 Check out verification,load E1的結(jié)果,,check in verification,,這樣M,E2,,E3才能看到E1的結(jié)果,;

  (3)流程3(如圖10)

圖像 010.png

圖10  流程2

  Step1:

  E1 新建maestre_E1,搭建testbench,,跑仿真,;

  Step2:

  E1 Check out verification_E1,和maestre_E1建立Map,,加載結(jié)果,,check in verification_E1,;

  這三個流程都能夠達(dá)到收集數(shù)據(jù)以及呈現(xiàn)最新結(jié)果的目的,,但是流程1和流程2都有其弊端。

  流程1中,,要想工程師的結(jié)果被其他人看到,,必須提交maestre。首先,,maestre很大,,提交很費時。其次,,maestre保存的是過程配置信息,,不適合提交。

  流程2中,,整個項目組都需要操作一份文件—verification,,很容易產(chǎn)生寫沖突,不適合大項目,、異地項目的合作,。另外,工程師需要操作owner verification 和master verification,,職責(zé)不夠分明,。

  流程3,只需要選擇HISILICON_VERIFIER為yes,,這樣加載結(jié)果來源是結(jié)果的快照文件,。提交owner verification,,即可收集數(shù)據(jù),也可以保證其他人都能看到結(jié)果,。職責(zé)分明,,操作簡單。

  所以,,Hisilicon Verifier采用流程3,。

圖像 011.png

圖11  流程3

4 驗證完備性

  4.1 完備性問題

  以Hisilicon的驗證流程進(jìn)行分析,從制定原始需求開始,,到編寫測試用例,,驗證完備性的突出問題如下。

  (1)OR:遺漏,、客戶自己不清楚,;

  (2)DR:功能/隱形需求遺漏;

  (3)DS:內(nèi)部規(guī)格未細(xì)化,、規(guī)格條件不合理,、非典電路規(guī)格不全。

  4.2 Verifier方案

  基于Verifier的驗證流程,,驗證完備性問題能夠在很大程度上得到解決,。

  (1)需求設(shè)計、規(guī)格設(shè)計,、仿真等整個驗證流程都是需求驅(qū)動的,,保證了需求的可溯性。

  (2)從上至下的驗證流程,,既保證了各個模塊之間相互獨立,,互不干擾,也保證了各個子模塊之間無縫契合,。

  (3)記錄仿真結(jié)果,,自動復(fù)現(xiàn)仿真結(jié)果,將仿真過程變得更加可溯和自動化,。

  (4)當(dāng)工程師改變了某個設(shè)計模塊,,verifier具有聯(lián)想功能,能夠提示相關(guān)testbench需要重新進(jìn)行仿真,,進(jìn)一步確保驗證完備性,。

5 結(jié)語

  通過使用ADE Verifier工具,我們將在電路設(shè)計中解決由于驗證不完備性的各種問題,。這種問題在很大程度上是可以通過完善的驗證流程去規(guī)避的,。在海思的驗證設(shè)計實踐中,Virtuoso ADE驗證工具技術(shù)與Virtuoso ADE組裝工具技術(shù)具備設(shè)計規(guī)劃能力,,讓設(shè)計團(tuán)隊更加高效,,提升了模擬IP驗證效率將近30%,,驗證發(fā)現(xiàn)的問題數(shù)量減少了一半。所以,,ADE Verifier是驗證設(shè)計中不可或缺的工具之一,。

  


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。