吴忠躺衫网络科技有限公司

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

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

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

淺析Formality形式驗證里的案件

sanyue7758 ? 來源:艾思后端實現(xiàn) ? 2023-07-21 09:56 ? 次閱讀

在當(dāng)前的形式驗證的領(lǐng)域,主要有兩個工具,一個就是Cadence的conformal,另外一個就是Synopsys的formality(以下簡稱FM)。

通常情況下,形式驗證的工具的主戰(zhàn)場,是在RTLvsSYN這個階段,主要是由于綜合器的mapping/optimization會遇到各種各樣的挑戰(zhàn)。但是,本案有一些不同,在通常很容易的SYNvsLAY里邊,出現(xiàn)了一點小插曲。筆者整理了一下,以嗜各位讀者。

ICC的結(jié)束以后,一般都會先走一個formal檢查,保證SYNvsLAY的一致性,通常都是一鍵過的,可是,在這個案子里邊,出現(xiàn)了下邊的問題:

c3df2e16-2710-11ee-962d-dac502259ad0.png

可以看到,有1個BBnet和1個BBpin的不等。展開GUI,可以看到如下的提示:

c3fe54da-2710-11ee-962d-dac502259ad0.png

可以看到,有一個是DIODE cell的DIODE pin 不相等,另外一個是和這個DIODE cell 相連接的net 不等,這個net也是會送到對應(yīng)的output port的 ,如下圖所示

c42238b4-2710-11ee-962d-dac502259ad0.jpg

經(jīng)過按步驟排查,發(fā)現(xiàn)問題竟然出現(xiàn)在CTS的一個命令里邊,有點撲朔迷離。DEBUG 安排!

在ICC的``步驟里邊,CTS階段,為了節(jié)省面積,使用了下邊這個命令

c43bf81c-2710-11ee-962d-dac502259ad0.png

在命令結(jié)束的地方,有一些小結(jié),可以看到一些冗余的buffer/inveter被拿掉了

c44db872-2710-11ee-962d-dac502259ad0.jpg

可以看到,整個數(shù)據(jù)庫,被拿掉了235個buffers和4個inveters。看來還是有一定面積優(yōu)化的效果。

基本現(xiàn)象是:如果跳過這個命令,formal就沒有問題,反之就會有問題。總覺得哪里不太對:一個buffer removing的動作,會引起FM的問題?

為了定位問題,將上邊的remove_clock_tree命令分解,可以定位出來,如果使用下面的細化命令,是會引起這個FM的問題。

c47131f8-2710-11ee-962d-dac502259ad0.png

難道是inverter出的問題!來來來,把buffer全部dont_touch:

c496300c-2710-11ee-962d-dac502259ad0.png

FM竟讓給了一個大大的suprise:FM相等!。buffer移除出錯了?

這個時候,還是仔細看看FM的log,注意到下面有趣的信息

c4a8b286-2710-11ee-962d-dac502259ad0.png

log表明,由于DIODE_cell的DIODE pin是個INOUT,導(dǎo)致和它相連接的port被相應(yīng)轉(zhuǎn)成了INOUT方向。

通常,F(xiàn)M再比對的時候會通過IN/INOUT port給輸入port加入激勵。所以,這里的pt2out[5] port,雖然是一個輸出口,但是被FM改變成一個雙向口,會向里邊打入激勵。

但是,這個DIODE帶來的的影響,在不使用remove_clock_tree的數(shù)據(jù)庫里的情形是一樣的!看來,這個還不是root-cause。

繼續(xù)使用FM的analysis功能,

c4cfeff4-2710-11ee-962d-dac502259ad0.jpg

可以看到,這里的Cone Input有一個很奇怪的地方,這里的sar_clk在設(shè)計里邊是一個output port,怎么會成為影響到另外一個output port pt2out[5]的Unmatched Cone input呢?

c504f424-2710-11ee-962d-dac502259ad0.png

聰明的讀者一定想到了一點:是不是前邊的FM-579導(dǎo)致的問題呢?是的,你說對了,但是也只是對了一半!

還是回到ICC,通過all_fanin來看,pt2out[5]的driver都是干凈的,并沒有看到sar_clk,這個可以證明,的確是FM-579引起的問題,所以,如果移除DIODE pin的direction的問題。FM一定可以過。

但是,這么好的一個DEBUG機會,怎么可以就此放過。使用report_timing看看,就看到了另外一半的原因了。舒坦!

先出場的FM不相等的數(shù)據(jù)庫

先看一下到sar_clk的timing path:可以看到,這個port 有一個**…G4IP/Z buffer驅(qū)動。沒有什么問題。但是,請留意一下黃色高亮區(qū)域的這個net:…/inst_SAR/sar_clk (net)**

c5360afa-2710-11ee-962d-dac502259ad0.png

再看一下到pt2out[5]的timing path:可以看到,這個port 有一個…G4IP/Z buffer驅(qū)動。沒有什么異樣,但是,請注意黃色方塊高亮區(qū)域,這個net就是上邊timing report的高亮的那個net!所以,從FM的角度來看pt2out[5]的driver,在版圖的網(wǎng)表里邊,有兩個driver:…G4IP/Z 和 sar_clk。這個就是FM的根本原因。

c55484f8-2710-11ee-962d-dac502259ad0.jpg

既然都花了這么久的debug功夫,也不介意再看一下,正確網(wǎng)表:沒有使用remove_clock_tree命令的網(wǎng)表FM可以pass的原因了。

還是看一下ICC的timing report。對于FM而言,這里的sar_clk port 還是一個輸入激勵端,但是可以看到,這里的sar_clk的網(wǎng)表driver 是一個BUF/Z(place239/Z),按照lib的定義BUF是不能反向傳遞的,所以,F(xiàn)M-579的影響,到place239這里就截止了(注意到,place239/Z的負載只有一個),并不會影響其他的地方。

c57520aa-2710-11ee-962d-dac502259ad0.jpg

在沒有使用remove_clock_tree的數(shù)據(jù)庫里邊,由于place239這個buffer的保護,F(xiàn)M-579的影響并沒有傳遞到合法的比較點上,所以FM是可以過的。反之,則會影響到FM的結(jié)果。
敲黑板的時間到了,解決方案如下

剔除DIODE cell的DIODE pin的雙向口影響:導(dǎo)出netlist 的時候 ,使用write_verilog -no_diode_port選項,F(xiàn)M不會出現(xiàn)FM-579的問題

在input/output PORT 添加隔離buffer,阻斷DIODE的FM誤動作。





審核編輯:劉清

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

    關(guān)注

    3

    文章

    662

    瀏覽量

    39894
  • CLK
    CLK
    +關(guān)注

    關(guān)注

    0

    文章

    127

    瀏覽量

    17236
  • CTS
    CTS
    +關(guān)注

    關(guān)注

    0

    文章

    35

    瀏覽量

    14150

原文標(biāo)題:Formality形式驗證里的案件分析

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    芯片開發(fā)中形式化驗證的是一個誤區(qū)

    今天的形式驗證工具具有更大的容量,并且許多工具能夠在服務(wù)器或云上以分布式模式運行。形式驗證的技術(shù)和方法也得到了擴展。
    的頭像 發(fā)表于 11-29 14:31 ?2002次閱讀

    EDA形式化驗證漫談:仿真之外,驗證之內(nèi)

    “在未來五年內(nèi)仿真將逐漸被淘汰,僅用于子系統(tǒng)和系統(tǒng)級驗證。與此同時,形式化驗證方法已經(jīng)開始處理一些系統(tǒng)級任務(wù)。隨著技術(shù)發(fā)展,更多Formal相關(guān)的商業(yè)標(biāo)準(zhǔn)化會推出。” Intel?fellow
    的頭像 發(fā)表于 09-01 09:10 ?1493次閱讀

    關(guān)于功能驗證、時序驗證形式驗證、時序建模的論文

    的新方法,提高了驗證效率。論文還研究了運用形式驗證的方法對RTL級和RTL級以及RTL級和門級網(wǎng)表進行等價性驗證。為了進一步保證RTL級設(shè)計和對應(yīng)的全定制設(shè)計模塊之間功能的等價性,設(shè)計
    發(fā)表于 12-07 17:40

    Conformal和formality形式驗證svf文件問題

    formality要讀入一個svf文件,那conformal需要讀入什么文件幫助LEC呢?試了用DC生成一個vsdc文件,但讀進去并沒有解決問題,一個可能是讀的指令不對,又或者還需要發(fā)送什么指令來進行設(shè)置?
    發(fā)表于 08-11 17:51

    淺析虛擬化技術(shù)各種形式管理方案

    淺析虛擬化技術(shù)各種形式管理方案 隨著存儲網(wǎng)絡(luò)技術(shù)的成熟,大容量和復(fù)雜度較高的方案實現(xiàn)變得十分常見。不同架構(gòu)的存儲平臺大大增加了管理
    發(fā)表于 04-27 17:34 ?768次閱讀
    <b class='flag-5'>淺析</b>虛擬化技術(shù)各種<b class='flag-5'>形式</b>管理方案

    深層解析形式驗證

      形式驗證(Formal Verification)是一種IC設(shè)計的驗證方法,它的主要思想是通過使用形式證明的方式來驗證一個設(shè)計的功能是否
    發(fā)表于 08-06 10:05 ?4014次閱讀
    深層解析<b class='flag-5'>形式</b><b class='flag-5'>驗證</b>

    形式驗證成為SoC模塊驗證的主流

      以對以仿真為中心的工程師有意義的方式調(diào)試形式驗證代碼,在很大程度上已被許多形式驗證供應(yīng)商解決。大多數(shù)工具可以在斷言失敗的情況下輸出“見證”。也就是說,導(dǎo)致斷言失敗的仿真波形
    的頭像 發(fā)表于 06-13 10:25 ?1348次閱讀
    <b class='flag-5'>形式</b><b class='flag-5'>驗證</b>成為SoC模塊<b class='flag-5'>驗證</b>的主流

    形式驗證簡介

    形式驗證是一種自動檢查方法,可以捕捉許多常見的設(shè)計錯誤,并可以發(fā)現(xiàn)設(shè)計中的歧義。
    的頭像 發(fā)表于 07-28 14:04 ?2579次閱讀

    形式驗證工具對系統(tǒng)功能的設(shè)計

    形式驗證工具(Formal Verification Tool)是通過數(shù)學(xué)邏輯的算法來判斷硬件設(shè)計的功能是否正確,通常有等價性檢查(Equivalence Checking)和屬性檢查(Property Checking)兩種方法。
    的頭像 發(fā)表于 08-25 14:35 ?1564次閱讀

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

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

    形式驗證入門之基本概念和流程

    和靜態(tài)時序分析工具一起來完成對電路完備的驗證。本文就以Synopsys公司的formality工具為例,來介紹形式驗證的流程和基本概念,后續(xù)會詳細介紹使用
    的頭像 發(fā)表于 12-27 15:18 ?2344次閱讀

    Formal Verification:形式驗證的分類、發(fā)展、適用場景

    形式驗證分為兩大分支:Equivalence Checking 等價檢查 和 Property Checking 屬性檢查 形式驗證初次被EDA工具采用,可以追溯到90年代,被應(yīng)用于R
    的頭像 發(fā)表于 02-03 11:12 ?2737次閱讀

    基于形式驗證的高效RISC-V處理器驗證方法

    隨著RISC-V處理器的快速發(fā)展,如何保證其正確性成為了一個重要的問題。傳統(tǒng)的測試方法只能覆蓋一部分錯誤情況,而且無法完全保證處理器的正確性。因此,基于形式驗證的方法成為了一個非常有前途的方法,可以更加全面地驗證處理器的正確性。
    的頭像 發(fā)表于 06-02 10:35 ?1447次閱讀

    Formal Verify形式驗證的流程概述

    Formal Verify,即形式驗證,主要思想是通過使用數(shù)學(xué)證明的方式來驗證一個修改后的設(shè)計和它原始的設(shè)計,在功能上是否等價。
    的頭像 發(fā)表于 09-15 10:45 ?1282次閱讀
    Formal Verify<b class='flag-5'>形式</b><b class='flag-5'>驗證</b>的流程概述

    形式驗證及其在芯片工程中的應(yīng)用

    形式驗證不僅僅是芯片領(lǐng)域中的一個概念。正如文章開頭提到過,形式驗證強調(diào)使用嚴格的數(shù)學(xué)推理和形式化技術(shù),以確保系統(tǒng)的行為是否符合預(yù)期的性質(zhì)和規(guī)
    的頭像 發(fā)表于 10-20 10:46 ?1175次閱讀
    大发888casino组件下载| 网络篮球投注| 泌阳县| 欢乐博百家乐官网娱乐城| 百家乐官网平注法到656| 功夫百家乐的玩法技巧和规则 | 百家乐官网分析绿色版| 乐天堂百家乐官网赌场娱乐网规则| 网上百家乐作弊下载| 大发888 dafa888游戏| 广东百家乐官网扫描分析仪| 伟易博百家乐现金网| 大发888小陆| 战胜百家乐官网的技巧| 博士百家乐现金网| 大发888优惠码| 366百家乐官网赌博| 金百家乐网站| 华侨人娱乐城| 百家乐官网博百家乐官网的玩法技巧和规则 | 老虎机上分器| 正规百家乐官网游戏下载| 百家乐视频游戏冲值| 钻石国际| 百家乐官网l路单| 百家乐怎么才能| 百家乐官网网址是多少| 百家乐平台哪个比较安全| 澳门博彩| 木星百家乐官网的玩法技巧和规则 | 三星百家乐官网的玩法技巧和规则 | 百家乐赌场赌场网站| 襄城县| 介绍百家乐赌博技巧| 郑州市太阳城宾馆| 百家乐官网赌博筹码| 多伦多百家乐的玩法技巧和规则| 西平县| 百家乐澳门规矩| 百家乐官网波音平台路单| 新彩百家乐的玩法技巧和规则|