在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

SoC的功能驗證

sally100 ? 來源:數字ICer ? 作者:數字ICer ? 2022-11-29 16:15 ? 次閱讀

隨著設計的進行,越接近最后的產品,修正一個設計缺陷的成本就會越高。

e70bcbf8-6fbc-11ed-8abf-dac502259ad0.png

不同設計階段修正一個設計缺陷所需費用示意圖

1.功能驗證概述

IC設計與制造領域,通常所說的驗證(Verification)和測試(Test)是兩種不同的事

驗證

在設計過程中確認所設計的正確性

通過軟件仿真、硬件模擬和形式驗證等方法進行

在流片之前要做的。

測試

檢測芯片是否存在制造或封裝過程中產生的缺陷。

采用測試設備進行檢查

功能驗證

功能驗證一般是指設計者通過各種方法比較設計完成的電路和設計文檔規定的功能是否一致,保證邏輯設計的正確性。

通常不包括面積、功耗等硬件實現的性能檢測。

SoC功能驗證的挑戰

系統復雜性提高增加驗證難度

設計層次提高增加了驗證工作量

e7197474-6fbc-11ed-8abf-dac502259ad0.png

發展趨勢

2.功能驗證方法與驗證規劃

e72ebfbe-6fbc-11ed-8abf-dac502259ad0.png

仿真為基本出發點的功能驗證方法

功能驗證開發流程制訂驗證計劃

功能驗證需求

激勵產生策略

結果檢測策略

驗證開發

提高驗證的效率

e74e2f5c-6fbc-11ed-8abf-dac502259ad0.png

功能驗證開發流程

3.系統級功能驗證

行為級功能驗證

測試數據控制流,包括初始化和關閉I/O設備、驗證軟件功能、與外界的通信,等等

性能驗證

通過性能驗證可以使設計者清楚地知道整個系統的工作速度、功耗等性能方面的指標。

協議驗證

根據總線協議對各個模塊的接口部分進行驗證

系統級的測試平臺

邊界條件

設計的不連續處

出錯的條件

極限情況

系統級的測試平臺標準

性能指標

覆蓋率指標

e761d142-6fbc-11ed-8abf-dac502259ad0.png

4.仿真驗證自動化

e779fef2-6fbc-11ed-8abf-dac502259ad0.png

激勵的生成

直接測試激勵:檢測到測試者所希望檢測到的系統缺陷

可以快速、準確地產生大量的與實際應用一致的輸入向量

隨機測試激勵:

檢測到測試者沒有想到的一些系統缺陷帶約束的隨機測試激勵是指在產生隨機測試向量時施加一定的約束,使所產生的隨機測試向量滿足一定的設計規則。

帶約束的隨機激勵生成的例子

x1和x2為系統的兩個輸入,它們經過獨熱碼編碼器編碼之后產生與被驗證設計(DUV)直接相連的輸入

輸入約束:in[0] + in[1] + in[2] <= 1

e7a47ea2-6fbc-11ed-8abf-dac502259ad0.png

這樣產生的隨機向量就可以保證它們的合法性。

用SystemVerilog語言寫的帶約束隨機激勵生成例子

輸入data的數量限制在1~1000

programautomatictest; //defineconstraint classTransaction; randbit[31:0]src,dst,data[];//Dynamicarray randcbit[2:0]kind;//Cyclethroughallkinds constraintc_len {data.sizeinside{[1:1000]};}//Limitarraysize Endclass //instantiation Transactiontr; //startrandomvectorgeneration initialbegin tr=new(); if(!tr.randomize())$finish; transmit(tr); end endprogram

響應的檢查

可視化的波形檢查:直觀,但不適用于復雜系統設計

自動比對檢查:通過相應的檢測模型或驗證模型來自動完成輸出結果的比對

e7b8bac0-6fbc-11ed-8abf-dac502259ad0.png

覆蓋率的檢測

覆蓋率數據通常是在多個仿真中收集的.

覆蓋率的模型由針對結構覆蓋率(Structural Coverage)和功能覆蓋率(Functional Coverage)兩種目標而定義的模型所組成。

可細化為:

限狀態機覆蓋率(FSM Coverage)
表達式覆蓋率(Expression Coverage)
交叉覆蓋率(Cross Coverage)
斷言覆蓋率(Assertion Coverage)

用SystemVerilog語言寫的覆蓋率檢測的例子

programautomatictest(busifc.TBifc); classTransaction; randbit[31:0]src,dst,data; randenum{MemRd,MemWr,CsrRd,CsrWr,I oRd,IoWr,Intr,Nop}kind; endclass covergroupCovKind; coverpointtr.kind;//Measurecoverage endgroup Transactiontr=new();//Instantiatetransaction CovKindck=new();//Instantiategroup initialbegin repeat(32)begin//Runafewcycles if(!tr.randomize())$finish; ifc.cb.kind<=?tr.kind;???//?transmit?transaction???????? ??????ifc.cb.data?<=?tr.data;???//???into?interface???????? ??????ck.sample();??????????????//?Gather?coverage??????? ??????@ifc.cb;??????????????????//?Wait?a?cycle??????? ???end????? end endprogram

5.形式驗證

形式驗證(Formal Verification)

靜態形式驗證(Static Formal Verification)和半形式驗證(Semi-Formal Verification)

靜態形式驗證不需要施加激勵,也不需要通過仿真來驗證。目前,SoC設計中常用的靜態形式驗證方法是相等性檢查。

半形式驗證是一種混合了仿真技術與形式驗證技術的方法。常用的半形式驗證是混合屬性檢查或模型檢查,它將形式驗證的完整性與仿真的速度、靈活性相結合。

相等性檢查(Equivalent Check)

對設計進行覆蓋率100%的快速驗證

主要是檢查組合邏輯的功能相等性

不需要測試平臺和測試矢量,不需要進行仿真

可用于比較RTL與RTL、RTL與門級、門級與門級的功能相等性,被廣泛應用于版圖提取的網表與RTL代碼比較,特別是做完ECO后要進行網表和修改后的RTL的相等性檢查。

半形式驗證(Semi-Formal Verification)

仿真和形式驗證形結合,如混合模型檢查(Model Checking)或屬性檢查(Property Checking)的方法。

e7cef51a-6fbc-11ed-8abf-dac502259ad0.png

6.基于斷言的驗證

仿真驗證面臨的問題:可觀測性和可控制性

合適的輸入矢量能夠激活錯誤

錯誤要能夠以某種預期的形式輸出

采用斷言描述設計的行為,在仿真時起到監控作用,當監控的屬性出現錯誤時,立刻觸發錯誤的產生,增加了設計在仿真時的可觀測性問題。

也可以用在形式屬性檢查中作為要驗證的屬性。屬性檢查(Property Check)時,是對整個狀態空間進行搜索,能夠控制到每一個信號并能指出錯誤的具體位置,解決了設計驗證時的可控制性和可觀察性問題。

e7e77266-6fbc-11ed-8abf-dac502259ad0.png

驗證實現所花費的時間與驗證的質量

斷言的作用

e808a03a-6fbc-11ed-8abf-dac502259ad0.png

e829515e-6fbc-11ed-8abf-dac502259ad0.png

斷言語言及工具的使用

斷言語言

C or SystemC
SystemVerilog Assertion (SVA)
Property Specification Language (PSL) (IBM, based on Sugar)
Open Verification Library (OVL)
Verilog, VHDL

SVA(SystemVerilog Assertion)例子

用Verilog實現的檢查器:

always@(posedgeA) beginrepeat(1)@(posedgeclk); fork:A_to_B begin@(posedgeB) $display(“SUCCESS:Barrivedintime ”,$time); disableA_to_B; end begin repeat(1)@(posedgeclk) @(posedgeB) display(“SUCCESS:Barrivedintime ”,$time); disableA_to_B; end begin repeat(2)@(posedgeclk) display(“ERROR:Bdidn’tarriveintime ”,$time); disableA_to_B; end end

用SVA實現的檢查器:

assertproperty (@(posedgeclk)A|->##[1:2]B);

基于斷言的驗證

在屬性檢查中使用斷言

在屬性檢查中,最重要的就是屬性描述。

e852af04-6fbc-11ed-8abf-dac502259ad0.png

在仿真中使用斷言

e867a256-6fbc-11ed-8abf-dac502259ad0.png

審核編輯 :李倩

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

    關注

    38

    文章

    1297

    瀏覽量

    104086
  • 封裝
    +關注

    關注

    127

    文章

    7947

    瀏覽量

    143099
  • soc
    soc
    +關注

    關注

    38

    文章

    4180

    瀏覽量

    218486

原文標題:SoC的功能驗證

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

收藏 人收藏

    評論

    相關推薦

    Xilinx ZYNQ 7000系列SoC功能特性

    本文介紹下Xilinx ZYNQ 7000系列SoC功能特性、資源特性、封裝兼容性以及如何訂購器件。
    的頭像 發表于 10-24 15:04 ?999次閱讀
    Xilinx ZYNQ 7000系列<b class='flag-5'>SoC</b>的<b class='flag-5'>功能</b>特性

    SoC的數字簽名加解密過程

    SoC的數字簽名驗證是指在系統啟動或固件更新等關鍵時刻,對加載的固件或軟件進行數字簽名的驗證過程。通過驗證數字簽名,系統可以確保所加載的固件或軟件是經過授權和信任的,從而防止惡意代碼的
    的頭像 發表于 10-21 14:52 ?268次閱讀

    解鎖SoC “調試”挑戰,開啟高效原型驗證之路

    引言由于芯片設計復雜度的提升、集成規模的擴大,以及產品上市時間要求的縮短,使得設計驗證變得更加困難。特別是在多FPGA環境中,設計調試和驗證的復雜性進一步增加,傳統的調試手段難以滿足對高性能、高效率
    的頭像 發表于 10-09 08:04 ?767次閱讀
    解鎖<b class='flag-5'>SoC</b> “調試”挑戰,開啟高效原型<b class='flag-5'>驗證</b>之路

    炬芯科技低功耗藍牙SoC通過Apple授權第三方測試機構合規性驗證

    近期,炬芯科技ATB1113系列低功耗藍牙SoC成功通過Apple授權第三方測試機構的各項合規性驗證,已全面兼容Find My network accessory的最新規格和功能要求,可為第三方硬件
    的頭像 發表于 08-07 09:46 ?524次閱讀

    SoC芯片是什么?它有哪些功能和應用?

    SoC芯片,全稱為System on Chip(片上系統),是一種高度集成的電子元件,它將多個功能模塊(如處理器、內存、外設接口等)集成在一個單一的芯片上。這種集成方式不僅減少了系統的復雜性和成本
    的頭像 發表于 08-05 15:54 ?9618次閱讀

    SoC布局中各種IC簡介

    SoC中各種IP簡介IP核(IntellectualPropertyCore),即知識產權核,在集成電路設計行業中指已驗證、可重復利用、具有某種確定功能的芯片設
    的頭像 發表于 07-17 08:28 ?389次閱讀
    <b class='flag-5'>SoC</b>布局中各種IC簡介

    大規模 SoC 原型驗證面臨哪些技術挑戰?

    方法被稱為原型驗證。原型驗證在EDA流程中起到了至關重要的作用。一方面,它可以對芯片進行功能驗證,確保設計的基本功能符合預期。在基本
    的頭像 發表于 06-06 08:23 ?1195次閱讀
    大規模 <b class='flag-5'>SoC</b> 原型<b class='flag-5'>驗證</b>面臨哪些技術挑戰?

    CYW54907 SoC是否具有IEEE 802.11 mc功能

    IEEE 802.11 ac 標準的應用處理器的 CYW54907 SoC。 在我看來,它是一款很棒的芯片,不知道是否具有 IEEE 802.11 mc 功能?謝謝。
    發表于 05-20 06:32

    瑞薩如何利用Synopsys VSO.ai將SoC驗證生產率提高30%

    了芯片復雜性的增加和片上系統(SoC)設計要求的變化,例如重新架構(特別是傳統控制器局域網(CAN)的車載電氣/電子(E/E)架構)、車載以太網的引入、更高的速度以及與各種標準兼容的實時控制。驗證這些復雜的SOC可能會占用高達7
    的頭像 發表于 04-08 18:38 ?1863次閱讀
    瑞薩如何利用Synopsys VSO.ai將<b class='flag-5'>SoC</b><b class='flag-5'>驗證</b>生產率提高30%

    fpga原型驗證流程

    FPGA原型驗證流程是確保FPGA(現場可編程門陣列)設計正確性和功能性的關鍵步驟。它涵蓋了從設計實現到功能驗證的整個過程,是FPGA開發流程中不可或缺的一環。
    的頭像 發表于 03-15 15:05 ?1620次閱讀

    我們該如何應對SOC中越來越龐大和復雜的SDC約束?

    SOC設計變得越來越復雜,成本越來越高,設計和驗證也越來越困難。
    的頭像 發表于 03-13 14:52 ?1211次閱讀
    我們該如何應對<b class='flag-5'>SOC</b>中越來越龐大和復雜的SDC約束?

    ECC功能開啟后如何驗證這個功能是否正常開啟呢?

    各位大佬,現在我這邊一個項目,代碼層面開啟ECC監控和中斷后,如何驗證當真實應用環境下,Ram區或者Flash區某個位被打翻后,會正常觸發中斷,實現讀和回寫的功能呢?
    發表于 03-11 06:39

    怎樣才能驗證ADAS功能的抗干擾能力?

    來自一位客戶的咨詢,麻煩幫忙解答,越詳細越好,有圖有真相,可以適當提供一些英飛凌解決方案和產品推薦。 現如今無線通信設備這么多,怎樣才能驗證ADAS功能的抗干擾能力?
    發表于 02-02 07:20

    請問如何通過AURIX輔助其他SOC實現功能安全設計?

    請問如何通過AURIX輔助其他SOC實現功能安全設計?
    發表于 01-24 07:05

    什么是FPGA原型驗證?FPGA原型設計的好處是什么?

    FPGA原型設計是一種成熟的技術,用于通過將RTL移植到現場可編程門陣列(FPGA)來驗證專門應用的集成電路(ASIC),專用標準產品(ASSP)和片上系統(SoC)的功能和性能。
    發表于 01-12 16:13 ?1254次閱讀
    主站蜘蛛池模板: 38pao强力打造永久免费高清视频| 国产婷婷| 白浆喷射| 黄色在线视频网| 亚洲一区毛片| 国产精品久久久久免费| 有码日韩| 亚洲 成人 欧美 自拍| 色老头影视| 精品你懂的| 97人人人人| 奇米视频7777| 欧美三级在线| 国产热视频| 四虎看黄| 激情五月五月婷婷| 亚洲午夜久久久久影院| 免费一级牲交毛片| 啪啪午夜视频| 综合色吧| 人人爱爱人人| 高清人妖shemale japan| 天天拍天天干| 亚洲欧美国产视频| 特黄三级| 久草老司机| 亚洲va中文va欧美va爽爽| 免费大片av手机看片| 中文字幕区| 午夜啪视频| 久久综合色婷婷| 午夜看片在线观看| 1024国产欧美日韩精品| 国产人人看| 婷婷久久精品| 色偷偷综合| 色视频观看| 国产一线在线观看| 神马午夜98| 在线中文字幕一区| 色狠狠一区二区|