0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

形式驗(yàn)證入門之基本概念和流程

芯司機(jī) ? 來(lái)源:芯司機(jī) ? 2022-12-27 15:18 ? 次閱讀

一、什么是形式驗(yàn)證?

VLSI設(shè)計(jì)的功能驗(yàn)證有兩種方法,動(dòng)態(tài)仿真驗(yàn)證和形式驗(yàn)證。形式驗(yàn)證采用數(shù)學(xué)方法來(lái)比較原設(shè)計(jì)和修改設(shè)計(jì)之間的邏輯功能的異同,而動(dòng)態(tài)仿真驗(yàn)證是對(duì)兩設(shè)計(jì)施加相同的激勵(lì)后,觀測(cè)電路對(duì)激勵(lì)的反應(yīng)異同。設(shè)計(jì)越大,為了達(dá)到100%的覆蓋率,動(dòng)態(tài)仿真驗(yàn)證所需要的矢量越多,這時(shí)形式驗(yàn)證在這方面就有優(yōu)勢(shì)了。但形式驗(yàn)證是一種功能等價(jià)驗(yàn)證,這種驗(yàn)證脫離工藝和版圖約束,無(wú)法保證時(shí)序的準(zhǔn)確性,故而,形式驗(yàn)證往往需要和靜態(tài)時(shí)序分析工具一起來(lái)完成對(duì)電路完備的驗(yàn)證。本文就以Synopsys公司的formality工具為例,來(lái)介紹形式驗(yàn)證的流程和基本概念,后續(xù)會(huì)詳細(xì)介紹使用formality做RTL2Gate流程中每一步驟的操作。

二、使用formality做形式驗(yàn)證需知的基本概念。

5398df0a-834e-11ed-bfe3-dac502259ad0.png

圖1. 形式驗(yàn)證概念圖

1. reference design 和 implementation design

reference design是golden design,即認(rèn)為是正確的標(biāo)準(zhǔn)的設(shè)計(jì)。implementation design是經(jīng)過(guò)非功能性修改的、待驗(yàn)證的設(shè)計(jì)。比如,使用綜合工具DC將RTL代碼映射成和工藝庫(kù)相關(guān)的門級(jí)網(wǎng)表,那么原RTL設(shè)計(jì)就是reference design,而DC輸出的門級(jí)網(wǎng)表就是implementation design。

2. logic cone和compare point

邏輯錐(logic cone)是由設(shè)計(jì)中的組合邏輯電路組成的,每個(gè)邏輯錐可以有多個(gè)輸入,只有一個(gè)輸出。邏輯錐的輸入為:設(shè)計(jì)輸入端口、寄存器輸出端口、黑盒子輸出端口;邏輯錐的輸出為:設(shè)計(jì)的基本輸出端口、寄存器輸入端口和黑盒子輸入端口。邏輯錐的輸出點(diǎn)就是比較點(diǎn),reference design中的比較點(diǎn)和implementation design中的比較點(diǎn)是要一一對(duì)應(yīng)的,這稱為比較點(diǎn)匹配(match)。Formality將設(shè)計(jì)劃分成一個(gè)個(gè)邏輯錐,以邏輯錐為單位,將其抽象為數(shù)學(xué)模型,然后針對(duì)每個(gè)比較點(diǎn)將implementation design和reference design進(jìn)行比較,注意邏輯錐之間是可以交疊的。

53b1d82a-834e-11ed-bfe3-dac502259ad0.png

圖2. 設(shè)計(jì)的邏輯錐劃分

3. Consistency and Equality

對(duì)于某個(gè)輸入pattern,reference design中某個(gè)比較點(diǎn)的響應(yīng)為x,即0或1都可以的一個(gè)狀態(tài),那么在implementation design 中相應(yīng)比較點(diǎn)處的響應(yīng)為0或者1,驗(yàn)證都會(huì)通過(guò),這叫做Design Consistency;而此時(shí)Design Equality要求在implementation design 中相應(yīng)比較點(diǎn)處的響應(yīng)也應(yīng)該為x??梢?jiàn),Design Equality的驗(yàn)證標(biāo)準(zhǔn)要高于Design Consistency,對(duì)這兩種驗(yàn)證,F(xiàn)ormality工具都是支持的。

4. container和library

在Synopsys工具中,container是個(gè)常見(jiàn)概念,它就是一個(gè)存儲(chǔ)空間,formality中的container內(nèi)存儲(chǔ)的是工藝庫(kù)和設(shè)計(jì)庫(kù)信息。通常,為了對(duì)兩個(gè)設(shè)計(jì)進(jìn)行比較,我們需要將reference design放到一個(gè)container中,將implementation design放到另一container中。一旦啟動(dòng)formality,工具會(huì)自動(dòng)創(chuàng)建一個(gè)名為FM_WORK的工作空間,在這個(gè)工作空間里,默認(rèn)創(chuàng)建了名為i和r兩個(gè)container,這兩個(gè)默認(rèn)的container用起來(lái)很方便,當(dāng)然,用戶也可以創(chuàng)建新的container。在向container中讀入設(shè)計(jì)的時(shí)候,如果不指定設(shè)計(jì)庫(kù)的名稱,formality會(huì)默認(rèn)創(chuàng)建一個(gè)名為WORK的設(shè)計(jì)庫(kù),并將設(shè)計(jì)讀入其中。在讀工藝庫(kù)的時(shí)候,如果不指定container,那么這些工藝庫(kù)會(huì)放到FM_WORK工作目錄下,并對(duì)所有container可見(jiàn),稱為共享庫(kù);如果指定了container,那么這些工藝庫(kù)會(huì)放到相應(yīng)的container中,庫(kù)信息只能該container內(nèi)部訪問(wèn)。這樣,如圖所示,每一個(gè)design和design object可以通過(guò)container、design library、design、design object找到,這條路徑就是designID或objectID。

53e310e8-834e-11ed-bfe3-dac502259ad0.png

圖3. Container 和 library關(guān)系圖

三、形式驗(yàn)證的基本流程

使用formality做形式驗(yàn)證的基本流程如圖4所示,1)Load guidance階段是formality提取SVF文件信息的階段;2)接下來(lái)讀入設(shè)計(jì),如果set_top聲明的設(shè)計(jì)頂層和待驗(yàn)證的設(shè)計(jì)不是同一層次,需要使用命令set_reference_design和set_implemetation_design來(lái)聲明target design;3)在setup階段提供幫助比較點(diǎn)匹配的信息,聲明約束信息。4)match階段進(jìn)行比較點(diǎn)匹配,這一步驟formality進(jìn)行邏輯錐劃分、比較點(diǎn)映射和對(duì)讀入的SVF文件的信息處理(即guide命令處理);5)進(jìn)行等價(jià)性驗(yàn)證,若不一致需要debug。在整個(gè)過(guò)程中,涉及到四種shell mode:setup mode、match mode、verify mode和guide mode,每種mode下可使用的formality command是不相同的,使用者在查看相應(yīng)命令的man page時(shí)需要注意。打開(kāi)工具默認(rèn)進(jìn)入setup mode,執(zhí)行了math命令后進(jìn)入match mode,執(zhí)行了verify命令后進(jìn)入verifymode,而guide mode不易察覺(jué),因?yàn)镾VF信息的提取雖然在這一mode下進(jìn)行,但是提取后工具又進(jìn)入setup mode了,所以使用者不以察覺(jué)。

53fdea30-834e-11ed-bfe3-dac502259ad0.png

圖4. formality 應(yīng)用基本流程圖

小結(jié):本文介紹了形式驗(yàn)證的基本概念和基本流程,有興趣的同學(xué)歡迎關(guān)注接下來(lái)對(duì)各個(gè)步驟的詳細(xì)介紹:如何恰當(dāng)使用guidance、load design注意事項(xiàng)、setup階段需要補(bǔ)充哪些信息、比較點(diǎn)匹配規(guī)則和verify失敗時(shí)基本的debug方法等。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 形式驗(yàn)證
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    5690
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4722

    瀏覽量

    68229
  • VLSI
    +關(guān)注

    關(guān)注

    0

    文章

    73

    瀏覽量

    42865

原文標(biāo)題:形式驗(yàn)證入門之基本概念和流程

文章出處:【微信號(hào):芯司機(jī),微信公眾號(hào):芯司機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Proteus涉及的基本概念

    Proteus涉及的基本概念
    發(fā)表于 08-01 20:58

    《單片機(jī)入門知識(shí)與基本概念

    本帖最后由 eehome 于 2013-1-5 10:04 編輯 《單片機(jī)入門知識(shí)與基本概念
    發(fā)表于 08-13 15:38

    Java新手入門的30個(gè)基本概念

    Java新手入門的30個(gè)基本概念
    發(fā)表于 08-16 20:02

    Fpga Cpld的基本概念

    Fpga Cpld的基本概念
    發(fā)表于 08-20 17:14

    C語(yǔ)言基本概念

    C語(yǔ)言基本概念
    發(fā)表于 08-01 02:00

    數(shù)據(jù)結(jié)構(gòu)的基本概念是什么

    數(shù)據(jù)結(jié)構(gòu)基本概念
    發(fā)表于 05-27 08:29

    讓初學(xué)者能掌握環(huán)路設(shè)計(jì)的基本概念流程,灌輸設(shè)計(jì)的理念

    主要內(nèi)容:1、環(huán)路和直流穩(wěn)壓電源的關(guān)系2、與環(huán)路相關(guān)的基本概念3、常用的補(bǔ)償控制器4、模擬環(huán)路設(shè)計(jì)流程5、數(shù)字和模擬環(huán)路的差別6、相關(guān)儀器和軟件的使用
    發(fā)表于 11-27 09:30

    阻抗控制相關(guān)的基本概念

    阻抗控制部分包括兩部分內(nèi)容:基本概念及阻抗匹配。本篇主要介紹阻抗控制相關(guān)的一些基本概念
    發(fā)表于 02-25 08:11

    CODESYS的基本概念有哪些

    CODESYS是什么?CODESYS的基本概念有哪些?CODESYS有哪些功能?
    發(fā)表于 09-18 06:52

    變頻器&逆變器工作原理基本概念

    變頻器&逆變器工作原理基本概念直流產(chǎn)生方波正弦波產(chǎn)生原理正弦波產(chǎn)生制作脈沖正弦波產(chǎn)生濾波&平均基本概念逆變器:直流電(DC)轉(zhuǎn)變?yōu)榻涣麟姡ˋC)變頻器:目的是得到特定頻率的交流電
    發(fā)表于 11-15 08:25

    STM32的中斷系統(tǒng)基本概念

    STM32 中斷系統(tǒng)概述筆記(一)中斷概述中斷相關(guān)的基本概念STM32的中斷系統(tǒng)基本概念:NVIC 嵌套向量中斷控制器中斷通道中斷優(yōu)先級(jí)優(yōu)先級(jí)分組EXTI 外部中斷控制器三種外部中斷觸發(fā)方式引腳分組
    發(fā)表于 01-07 07:32

    電磁兼容基本概念

    電磁兼容基本概念 電磁兼(相)容基本概念 電磁兼容舉例:日常生活中在同一環(huán)境下存在一臺(tái)計(jì)算機(jī)及電視機(jī),當(dāng)電視機(jī)工作時(shí)由于時(shí)鐘(序)信號(hào)及其它高次諧波存在
    發(fā)表于 10-08 08:57 ?20次下載

    主板維修入門教程:電路的基本概念

    主板維修入門教程:電路的基本概念 電流:電荷的定向移動(dòng)叫做電流,電流常用I表示。電流分直流和交流兩種。電流的大小和方向不
    發(fā)表于 05-19 21:56 ?1608次閱讀

    基于PID調(diào)節(jié)相關(guān)的15個(gè)基本概念詳解

    PID入門讀此文,必須熟透于心的15個(gè)PID基本概念
    的頭像 發(fā)表于 01-08 09:14 ?6653次閱讀
    基于PID調(diào)節(jié)相關(guān)的15個(gè)<b class='flag-5'>基本概念</b>詳解

    16nm技術(shù)的形式驗(yàn)證流程、優(yōu)勢(shì)和調(diào)試

    必須優(yōu)化正式驗(yàn)證流程中的初始網(wǎng)表,因此測(cè)試設(shè)計(jì)需要額外的邏輯。在這里,我們提供16 nm節(jié)點(diǎn)的形式驗(yàn)證流程和調(diào)試技術(shù)。
    的頭像 發(fā)表于 11-24 12:09 ?1254次閱讀
    16nm技術(shù)的<b class='flag-5'>形式</b><b class='flag-5'>驗(yàn)證</b><b class='flag-5'>流程</b>、優(yōu)勢(shì)和調(diào)試