国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

如何又快又好的梳理和利用驗證feature文檔

sanyue7758 ? 來源:杰瑞IC驗證 ? 作者:Jerry ? 2022-10-09 09:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前面我們探討了接到驗證任務后的行動以及前期如何進行高效的學習,當有了對驗證對象的充分理解和學習之后,我們就可以進行驗證feature(即驗證的測試點)的提取了。

凡事預則立,不預則廢,眾所周知,驗證feature文檔決定驗證的內容、側重點、質量,是驗證工程師最重要的文檔和指導工具。

本文的側重點不在于大而全的探討諸如”不同類型的驗證對象哪些點可以作為驗證feature”等內容(以后在別的文章中有機會再討論),而是繼續遵循“高效”的主題,一起探討如何又快又好的梳理驗證測試點這個文檔?怎樣在驗證過程中充分使用這個文檔?

杰瑞IC驗證給出一種答案,圍繞一個口訣來作為今天探討的線索和綜述:

“先粗再細、先全再剃、不斷迭代、定期反思”

1

先粗再細

對于驗證feature來說什么叫粗?什么叫細?

我們舉個簡單的例子,如一條驗證feature可以這樣寫:

“需要覆蓋中斷功能的測試。”

也可以把這一條驗證feature細化成多條驗證feature,這樣寫:

“覆蓋不同中斷信號使能打開、關閉測試”

“覆蓋中斷正常清除測試”

“覆蓋延遲清除中斷測試”

“覆蓋不同中斷來源的中斷測試” “覆蓋中斷有效后相關中斷狀態寄存器正確性檢查” “覆蓋中斷不同來源同時有效的優先級測試”

“覆蓋多中斷次數測試場景”

……

當然,還可以寫的更細致:

例如上面“覆蓋不同中斷信號使能打開、關閉測試”可以繼續分解:

“覆蓋不同中斷信號隨機打開關閉以及不同信號間的交叉場景”

“覆蓋中斷信號使能全關閉,通過輪詢寄存器方式處理中斷場景”

……

例如“覆蓋延遲清除中斷測試”可以繼續分解:

“覆蓋延遲清中斷,延遲時間小范圍隨機”

“覆蓋延遲清中斷,延遲時間等到下一個中斷來之后再清除” ……

我們不再繼續細化贅述,相信大家從舉例中已經有點感覺了,什么叫“粗”,什么叫“細”,這里說到的粗細,其實就是指的是驗證feature的顆粒度。

杰瑞IC驗證認為,一個好的驗證feature文檔,一定是全面且顆粒度很細的文檔。只有顆粒度很細,借助這個驗證feature文檔才能更好的幫助你把需要覆蓋的測試點思考清楚,更好的衡量你的驗證工作量制定驗證計劃、更好的幫你構造定向或隨機case和編寫功能覆蓋率代碼、更好的保證你的驗證完備性。

可想而知,如果你只寫一句這么“博大精深”的驗證feature:“需要覆蓋中斷功能的測試。”,你看到這條驗證feature也許很難會想到還需要:“覆蓋延遲清中斷,延遲時間等到下一個中斷來之后再清除” 這種測試場景,這樣就有可能會埋下風險。

我們回到“高效戰斗”的主題,怎么又好又快的把這個文檔搞定呢?

從高效的角度杰瑞IC驗證建議一定要“先粗再細”。

一方面:

“粗”可以讓我們站在一個宏觀的角度,不漏掉大的功能點,例如先涵蓋各種需求點、各種設計文檔核心功能點、應用場景、性能點、功耗測試點、壓力測試點、注錯點等等

另一方面:

我們是不可能一蹴而就的。如果一開始就鉆進某一個點,把某個功能的所有細節驗證feature寫清楚再寫別的,效率顯然會低于先寫的粗一點,再多輪迭代進行細化。正如前面的舉例,每一次的細化都在上一輪細化的思考基礎之上進行的,這樣也會想的更清楚全面。

2

先全再剃

通過剛才講的先粗略提取再不斷細化的方式,相信大家可以高效提取出來一個比較全面的驗證feature文檔。

前面我們提到:“一個好的驗證feature文檔,一定是全面且顆粒度很細的文檔。”但是僅僅的全面和顆粒度小,就可以叫一個好的驗證feature文檔嗎??

答案是否定的,全面和顆粒度小,只是提取驗證feature的第一步。如果說第一步細化是做加法,第二步更為重要和有難度,那就是做減法。就像本節的小標題“先全再剃”,這里的“剃”,講的就是“剃刀原則”的“剃”,關注的是驗證的執行層面,“剃”就是學會取舍,就是抓驗證重點和主要矛盾,就是高效的體現。

(1)“剃”,刪除掉不必要的驗證feature。

有時候,我們需要刪除和精簡一些沒有必要的驗證feature。

最簡單的例如,對于已經多次流片實踐驗證穩定的ip,沒有必要覆蓋非常細致的驗證feature,這部分完全可以舍去不驗證。

再舉一個例子:如針對某個參數我們通過確定邊界值、典型值、劃分等價類等方式進行驗證feature細化:

“A參數取值[0:1000],需要覆蓋邊界值0,1000,典型值200、500、600、900……(例如100個),隨機覆蓋a模式[0:200),b模式[200:700),c模式[700:1000]”

“B參數取值[0:8880],需要覆蓋邊界值0,8880,典型值200、500、600、900……(例如300個),隨機覆蓋a模式[0:1000),b模式[1000:300),c模式[3000:8880]”

……

這樣的參數有20個,然后有一條:

“需要覆蓋這20個參數取值的所有交叉場景”

這個“交叉場景”是很全面了(當然你如果想“修身養性”可以用一整天時間進一步具體細化出來怎么交叉的)。但是這條有意義嗎?

對于EDA仿真驗證來說,這條可以說是沒有意義的,因為這個需要覆蓋的驗證空間太大了,大到不能執行,即使你通過腳本交叉參數一鍵生成批量case,這么大的case量大概率不能在有限的時間跑完,就算能跑完,這樣的參數交叉測試是否真的有意義,是否在浪費測試時間?我們有這樣的時間,放在更重要的測試點上努力是否更有價值?

所以,對于這樣的驗證feature我們一定要做以權衡。是否可以通過深入分析實際應用場景和設計思路,精簡這些驗證feature,是不是哪些點可以刪除?是不是哪些點不需要交叉覆蓋?當然也可以思考是不是我們可以嘗試啟用形式驗證工具?

(2)“剃”,給驗證feature選擇一個更好的歸宿。

舉一個例子,有這樣一條驗證feature:“需要覆蓋連續不間斷運行10000次場景的壓力測試”。

這條驗證feature考慮的沒有問題,顆粒度很細,需求也很明確。但是對于EDA驗證來說,又是一個不可能完成的任務,這么一個case可能跑幾個月都結束不了。對于這樣的驗證feature,不需要從文檔中刪除,因為FPGA測試是可以辦到的,這種情況可以增加備注,指明在FPGA測試的時候進行覆蓋,并且負責跟蹤這個點是否在FPGA驗證計劃中列出以及測試時候是否確實落實。

同理,例如有的驗證feature可能不適合在單元級驗證時候測試,適合在更高層次的驗證階段中測試,都可以像上面的例子給驗證feature一個更好的測試“歸宿”,用最適合的方式覆蓋,從而提高項目總體的驗證效率。當然了,給驗證feature更好的歸宿前提是需要驗證者了解和把握驗證的不同驗證階段以及不同驗證層次的側重點和優劣勢,有一個驗證的全局觀念。

(3)“剃”,給驗證feature刮骨,設置不同的優先級。

有這么兩條驗證feature:

“需要覆蓋中斷功能的測試”

“覆蓋用于debug的狀態寄存器”

很明顯,第一個驗證feature是核心功能,第二條重要程度遠遠不如第一條。如果我們的驗證時間有限,那我們至少要通過完備的激勵和檢查機制保證第一條核心功能,而不是先編寫大量的checker去自動化檢查各種debug狀態寄存器。

也就是說,不同的驗證feature含金量和優先級也是不一樣的,我們在提取驗證feature的時候,要想清楚和標注不同驗證feature的優先級。

3

不斷迭代

驗證feature列表在驗證開始前就是寫好固定死了不能變的嗎?

不是的,驗證feature文檔是動態變化迭代的

在正式驗證開展之前,我們會出一個當時認為最完善的版本,但是在驗證過程中我們還是要定期迭代我們的驗證feature文檔,例如:

當需求和設計的變更,我們需要相應的修改和增刪驗證feature;

當功能應用場景、典型參數增加或改變時,及時增加驗證feature;

性能功耗的場景驗證feature也可能常常需要修改文檔;

隨著驗證過程中對設計理解更加深入,也需要及時的記錄和補充細化驗證feature。

4

定期反思

驗證feature需要定期反思,有兩層含義,一方面是對已有驗證feature的不斷反思,其實類似于上面說的迭代,定期反思之前提取出的驗證feature是否合理或有缺少,這里不過多解釋;另一方面,是要利用好我們的驗證feature文檔,定期反思驗證進度和質量。

a. 依據我們的驗證feature列表和優先級等信息來制定我們的驗證計劃,并且不斷的修改更正我們的驗證計劃。

b.定期的把測試用例與驗證feature列表做一個對應和反標,心里清楚哪些驗證feature已經有case覆蓋住了,哪些還沒有,在驗證項目最后要保證所有驗證feature都有定向或隨機case可以對應。

c. 功能覆蓋率覆蓋點的規劃和收集工作,也需要定期利用驗證feature文檔進行規劃和反思,確定哪些點是一定需要寫功能覆蓋率收集代碼的,也是驗證完備性和質量的保證。

結語

今天我們用了一句口訣來回答“如何又快又好的梳理和利用驗證feature文檔?”

這個問題,即“先粗再細、先全再剃、不斷迭代、定期反思”。

驗證feature文檔的地位絕對是驗證過程中金字塔的頂端,篇幅有限,這其中很多的細節還希望各位進一步探索、感悟、交流~





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA設計
    +關注

    關注

    9

    文章

    431

    瀏覽量

    28149
  • EDA工具
    +關注

    關注

    5

    文章

    276

    瀏覽量

    34036
  • 中斷
    +關注

    關注

    5

    文章

    918

    瀏覽量

    43777

原文標題:驗證feature文檔梳理

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    利用NVIDIA Nemotron開放模型構建智能文檔處理系統

    基于 NVIDIA Nemotron 開放模型的 AI 驅動文檔智能,增強科學研究、金融和法律等領域工作流。
    的頭像 發表于 02-25 11:21 ?446次閱讀

    京東關鍵詞 API 場景的需求梳理模板

    京東關鍵詞 API 場景需求梳理模板 本模板適用于 聯盟推廣、商家運營、工具開發、市場分析 等基于京東關鍵詞 API 的業務需求梳理,可直接用于需求文檔撰寫、API 對接方案評審。 核心模塊 填寫項
    的頭像 發表于 01-08 13:45 ?171次閱讀

    【社區之星】向愨——通過文檔梳理自己的思路,讓自己思維更細致,更規范

    是在第二份工作,也讓我在機器人,工控行業扎了根,確定了自己的方向。第三份工作是雖然技術沒有太多的更新,但是卻得到了沉淀以及項目管理經驗。讓我有了寫文檔的習慣,通過文檔梳理自己的思路,讓自己思維更細致
    發表于 12-19 10:35

    E203 代碼結構梳理

    一、隊伍介紹 本篇為蜂鳥E203系列分享第五篇,本篇介紹的內容是E203 代碼結構梳理。 二、層次圖 三、模塊具體功能
    發表于 10-30 06:56

    利用蜂鳥E203搭建SoC【2】——外部中斷擴展與驗證

    在SoC設計中一個重要通信方式就是中斷,中斷可以避免輪詢方式造成的cpu空轉消耗,可以更好利用cpu資源。蜂鳥e203中提供了plic外部中斷總線進行中斷的控制與配置,但在demo中已經被外設全部
    發表于 10-29 07:14

    e203 DDR擴展功能驗證

    將vivado設計的DDR擴展工程生成bitstream燒入到DDR200T中,利用芯來官方提供的Nuclei Studio編譯相應的C語言程序進行驗證。C語言程序主要完成對地址空間
    發表于 10-21 09:24

    利用事務級加速實現高速、高質量的RISC-V驗證

    引言RISC-V架構以其開放性和高度可定制的特性,正在重塑處理器設計格局。然而,這種靈活性也帶來了顯著的驗證挑戰,使其驗證復雜度遠超傳統固定架構處理器。RISC-V的驗證難點主要體現在四個方面:首先
    的頭像 發表于 09-18 10:08 ?2042次閱讀
    <b class='flag-5'>利用</b>事務級加速實現高速、高質量的RISC-V<b class='flag-5'>驗證</b>

    如何利用外部校驗工具驗證電能質量在線監測裝置的準確性?

    利用外部校驗工具驗證電能質量在線監測裝置(以下簡稱 “監測裝置”)準確性的核心邏輯是:通過 “標準信號源” 或 “高精度參考設備” 提供已知的、準確的電能參數,將監測裝置的測量值與標準值進行對比
    的頭像 發表于 09-11 17:24 ?828次閱讀
    如何<b class='flag-5'>利用</b>外部校驗工具<b class='flag-5'>驗證</b>電能質量在線監測裝置的準確性?

    如何利用技術實現裝置數據驗證的全生命周期管理?

    裝置數據驗證的全生命周期管理,需覆蓋 需求規劃、數據采集、自動化驗證、存儲歸檔、應用迭代、退役審計 6 大核心階段。利用技術實現這一閉環,需針對各階段的痛點匹配工具與方案,同時兼顧數據準確性、流程
    的頭像 發表于 09-05 15:23 ?765次閱讀
    如何<b class='flag-5'>利用</b>技術實現裝置數據<b class='flag-5'>驗證</b>的全生命周期管理?

    開芯院采用芯華章P2E硬件驗證平臺加速RISC-V驗證

    學,基于開芯院昆明湖4核設計,預期實現倍數級的效率提升,解決RISC-V CPU設計在驗證中用例運行時間長和調試難度大的雙重挑戰。 復雜的RISC-V處理器設計驗證,往往存在用例運行時間長和調試難度大的雙重挑戰,因此?CPU 設計團隊通常
    的頭像 發表于 07-18 10:08 ?2492次閱讀
    開芯院采用芯華章P2E硬件<b class='flag-5'>驗證</b>平臺加速RISC-V<b class='flag-5'>驗證</b>

    如何配置和驗證Linux內核參數

    在Linux系統運維和性能優化中,內核參數(sysctl)的配置至關重要。合理的參數調整可以顯著提升網絡性能、系統穩定性及資源利用率。然而,僅僅修改參數是不夠的,如何驗證這些參數是否生效同樣關鍵。
    的頭像 發表于 05-29 17:40 ?1167次閱讀

    西門子利用AI來縮小行業的IC驗證生產率差距

    Questa One將集成電路(IC)驗證從被動反應流程重新定義為智能的自優化系統。 西門子數字化工業軟件推出了Questa? One智能驗證軟件組合,將連接性、數據驅動方法和可擴展性與人
    的頭像 發表于 05-27 14:34 ?574次閱讀

    硬件輔助驗證(HAV) 對軟件驗證的價值

    硬件輔助驗證 (HAV) 有著悠久的歷史,如今作為軟件驅動驗證的必備技術,再度受到關注。 RISC-V 可能是說明這一點的最好例子。HAV 能夠執行多個周期的軟件驅動驗證,是加速 RISC-V
    的頭像 發表于 05-13 18:21 ?2044次閱讀

    為什么無法通過demo_feature_L2_bridge_vlan上的PFE轉發VLAN標記的以太網數據包?

    的 demo_feature_L2_bridge_vlan 演示,它基本上展示了以下內容: 1. 同一網絡中 2 臺設備之間的無標簽通信(PC0_NOVLAN 和 PC1_NOVLAN) 2. 同一網絡中 2
    發表于 03-25 08:05

    技術分享 | AVM合成數據仿真驗證方案

    AVM 合成數據仿真驗證技術為自動駕駛環境感知發展帶來助力,可借助仿真軟件配置傳感器、搭建環境、處理圖像,生成 AVM 合成數據,有效加速算法驗證。然而,如何利用仿真軟件優化傳感器外參與多場景
    的頭像 發表于 03-19 09:40 ?3744次閱讀
    技術分享 | AVM合成數據仿真<b class='flag-5'>驗證</b>方案