国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

對驗證的量度:何時算充分?

發(fā)布時間:2009-7-31 21:42    發(fā)布者:賈延安
關鍵詞: 量度 , 驗證
Mentor Graphics公司首席驗證科學家Harry Foster認為,今天的大多數(shù)設計經(jīng)理要依賴于某種驗證覆蓋的量度來回答三個重要問題:我在哪里?去哪里?何時到?

  但覆蓋的量度有很多,它們來自各種工具,表示不同的事情。對設計經(jīng)理來說,重要的是理解某個量度的真正含義。同等重要的是,經(jīng)理必須能夠將各種量度混合成為一幅圖像,它將能夠解答Foster的三個問題。最重要的是,經(jīng)理必須正確回答第三個問題的另一版本:何時該停止?作決策不僅需要不同量度的結合,而且有賴于一個詳盡的驗證計劃,這種計劃在架構設計的早期就已存在,并伴隨設計而成熟發(fā)展。

  代碼覆蓋的概念(設計者從軟件驗證世界中借用的同一工具)很簡單:當運行RTL(寄存器傳輸級)仿真時,只是維護一個1 bit寬的表,其表項是RTL源碼中的各個代碼行。一個仿真運行開始時,將表中的各位清零。第一次執(zhí)行某行時,表中的相應位設為1。仿真結束后,就獲得一個映像,它表示執(zhí)行了哪些代碼行,哪些行沒有執(zhí)行。如果某行沒有執(zhí)行,就能可靠地說你沒有驗證它。

  專家把代碼覆蓋的概念推廣到基于設計RTL視圖的很多其它覆蓋的隱式量度。你可以設計出有關RTL公式、分支或寄存器切換等覆蓋的報告工具。并且,多數(shù)這類報告都可從商用仿真工具中獲得,而無需設計專用的監(jiān)控器。

  代碼覆蓋量度的早期表現(xiàn)和易于使用的特點,使它們受到了大眾的歡迎。Foster稱Mentor公司的調查數(shù)據(jù)表明,大約一半設計團隊在自己驗證流中的某個地方有代碼覆蓋量度。但代碼覆蓋也有嚴重的問題。Synopsys公司研究員Janick Bergeron認為,主要問題是“結構的覆蓋量度是必要的,但不足以決定驗證覆蓋”。Bergeron指出,代碼覆蓋中多數(shù)顯而易見的問題是一種邏輯問題。你執(zhí)行了一行RTL,并不意味著它做了你期望的事。

  更精確地說,問題在于可觀察性與完備性。當你執(zhí)行這行代碼時,它的結果是否傳送到了一個你在這個仿真中實際觀察的結點?如果不是這樣,那么你就不知道代碼是否做了你希望的事。Foster說:“我們見過有100%代碼行覆蓋的設計,但事實上,在仿真中只觀察到70%代碼行的運行!

  完備性是一個獨立的問題。你執(zhí)行了代碼行。但你是否在所有可能激活的情況下都執(zhí)行了它?如果在它不工作的情況下會怎樣?

  功能量度

  這些缺點使很多團隊采用功能驗證。人們會問功能覆蓋,有多少設計中的功能做了你預期要做的事。由于這種直觀形式是經(jīng)理們用于量度驗證的最早方式,它也是很多團隊的支柱。

  Alcatel-Lucent公司光學部硬件研發(fā)技術經(jīng)理Hans Sahm描述了這種基本方案的一個現(xiàn)代版。Sahm說:“我們從一個需求文檔開始,采用內部開發(fā)的腳本,從需求生成一個驗證計劃電子表。這個表列出了功能需求,以英語表述,還有驗證團隊選來驗證每個需求的測試案例!边@個電子表為驗證團隊提供了單一的文檔,他們可以在運行仿真時用該表檢查各種測試案例,因此就有了一個有關驗證過程的逐項功能檢查表。

  這個概念構成了各種形式功能覆蓋量度的支架,但它也受到嚴重的挑戰(zhàn)。如Sahm指出的那樣,“在一個功能需求和需要驗證它的測試案例之間沒有自動的鏈接!币斫庖环N需求,并將其轉化為充分覆蓋該需求的測試,取決于驗證工程師的技能和經(jīng)驗。

  Mentor公司的Foster稱:“思想不存在自動化。 ”

  Altera公司首席驗證架構師Jeff Fox表示:“在解譯需求文檔時總會存在一個問題。不同工程師在閱讀相同文檔時,對于功能的表現(xiàn)方式會有完全不同的想法。這就是為什么我們試圖使自己的需求文檔盡可能貼近可執(zhí)行代碼。它們必須是精確的!

  Synopsys公司的Bergeron也表示同意。他評論說:“當你建立驗證一個功能的定向測試時,它是一個開環(huán)過程。你永遠不能從結果去保證測試中不存在錯誤!

  為了解決這種對人類弱點的依賴性,最常用的技術是采用斷言(assertion)和約束隨機測試(constrained random test),這是Verisity公司(現(xiàn)在歸Cadence公司所有)最初倡議的。據(jù)Mentor公司的調查數(shù)據(jù),只有大約40%的驗證團隊在使用約束隨機測試。相應地,大約40%團隊在使用功能覆蓋量度。從早期開始,出現(xiàn)了許多用于書寫斷言的專門語言,但業(yè)界現(xiàn)在似乎趨同于將System Verilog用于該目的。因此,我們正在看到一種新的形式:采用System Verilog的斷言,測試斷言的約束隨機測試,以及表述為斷言覆蓋的驗證量度。

  對很多設計團隊來說,這是個改良過程。Wipro Technologies公司半導體與解決方案業(yè)務部總經(jīng)理Giri Raju描述了他的設計團隊采用的路徑。他說:“以前,我們只使用代碼覆蓋量度,跟蹤一個手工制作的交叉參考表來管理驗證工作。我們的目標只是100%的代碼覆蓋。我們已經(jīng)分階段地轉到功能驗證工具,并繼續(xù)用手工表跟蹤驗證過程。現(xiàn)在,我們正轉向System Verilog和Open Verificaton方法!

    “現(xiàn)在仍需要大量工程技巧。驗證工程師要判斷驗證的覆蓋點,并與設計工程師一起復審,作為一次檢查。我們相信自己可以將這個過程的80% ~ 90%實現(xiàn)自動化,但總會有某些情景下必須手動完成工作。不過斷言覆蓋驗證量度確實對我們有幫助。我們的設計工程師現(xiàn)在已習慣在自己的代碼中插入斷言!

  生成斷言覆蓋量度過程的一個最大便利之處是能用FPGA(現(xiàn)場可編程門陣列)在System Verilog環(huán)境中作邏輯驗證。較新的工具都允許驗證工程師生成約束的隨機激勵模式,然后工具會在覆蓋點跟蹤采樣數(shù)。Altera公司的Fox 說,F(xiàn)PGA可以大大加速這一過程,它可以使團隊將設計與斷言綜合起來,并實時或接近實時地運行測試。這種方案可以使約束隨機測試的創(chuàng)建者涉及寬得多的網(wǎng)表,不僅能研究已知的案例,也包括未知的角落案例。

  它還實現(xiàn)了事務級覆蓋的一種物理分類。例如,通過FPGA手段,驗證工程師可以檢查一個接口的運行,只需簡單地將FPGA連接到一個良好的外部設備上,觀察事務的情況。其想法是,如果接口能與其它芯片“良好地工作”,那么它就被100%覆蓋。

  形式工具

  通過代碼、功能和斷言覆蓋的量度,驗證經(jīng)理就擁有了很多數(shù)字,能給出驗證完成的程度。當然,所有這些都留下了一些不能解答的問題。一些團隊越來越多地采用形式驗證工具,作為基于仿真技術的輔助方法。這些工具帶來了一些自己獨有的量度。

  Alcatel-Lucent公司的Sahm稱:“對那些最重要的模塊,我們正在使用特性檢查的形式工具。這種方法引入了特性覆蓋(property coverage)的概念。實際上,我們使用的工具有自身內部的完備性檢查能力,它會對特性覆蓋等作出量度,以及在一個給定場景下是否已確定了每個輸出狀態(tài)。”

  作為一種方法,形式工具給出了終極的保證。在運行結束時,你就擁有了以前違反所規(guī)定特性的全部反面實例。通過定義,可100% 地覆蓋各種特性。但也存在著特性集如何完全覆蓋設計預期的問題。于是就又回到了設計者的技能上,現(xiàn)在也許需求降低了,因為形式驗證工具的學習曲線是出了名的困難。

  融合數(shù)據(jù)

  你可以看到,驗證覆蓋不存在固定的答案。各個工具都可以告訴你如何完整地轉換 RTL代碼結構,或如何完全地檢查設計與驗證團隊編寫的斷言,或證實由形式驗證專家定義的特性。但一個人工解析和創(chuàng)建的過程會將每個量度與設計預期分離開來。因此,很多設計經(jīng)理會組合不同來源的覆蓋量度,從而構成自己對驗證過程的圖像。

  Foster說:“不同的團隊有將覆蓋數(shù)據(jù)組合為一個單一圖像的不同方式。做CPU的經(jīng)常只用功能覆蓋的量度,但他們有做這種工作的資源。沒有資源時,一些設計團隊仍然只用代碼行覆蓋。但你也可以結合不同種類的數(shù)據(jù)!

  Foster建議一個團隊可以從功能覆蓋量度起步。當功能覆蓋接近100%時,團隊可以轉向代碼覆蓋作為一種對完備性的檢查。Altera公司Fox指出,這種方案可以使團隊準確地確定功能覆蓋中的漏洞。如果一塊代碼沒有得到執(zhí)行,那么它或者是死代碼(設計團隊應能通過檢查確定),或者設計中的一些功能未得到覆蓋。Fox說:“在這個地方,編寫一些針對性測試。”

  Fox強調了擁有不同來源數(shù)據(jù)的重要性。他說:“比如,我們最近正在做一個接口IP塊。我們從三家供應商買進了第三方驗證IP,讓兩個內部團隊做驗證過程。將他們在每個方案中發(fā)現(xiàn)的數(shù)據(jù)匯集起來做一些檢查!

  尋找終點

  即使像Fox這樣有經(jīng)驗的經(jīng)理,何時可以說驗證完成了?可能有人會說驗證永遠沒有盡頭。但也有人可能回應說,當超過計劃日程后,驗證就完成了。不過,實用主義者的回答更加有趣。Bergeron說:“你永遠不會結束。但可以在功能上達到一個商業(yè)成功需要的信心等級。這是一個風險管理問題!

  因此,Bergeron和Foster都認為,有經(jīng)驗的驗證經(jīng)理會查看多個來源的覆蓋量度。商用工具可用于輔助這個過程,它按照結構塊或按功能來組織各種量度,這樣驗證工程師就可以從一個設計區(qū)域看到所有量度。并且現(xiàn)在還有減輕這些融合過程的努力(見附文《UCIS確保互操作性》)。這個水平上的差異通常指出了驗證計劃中的漏洞,團隊應用手工創(chuàng)建的專門測試加以彌補。

  但經(jīng)理還應看問題報告的頻率。如果當覆蓋量度接近100%時,問題報告頻率在下滑,則一切正常。如果問題以一種恒定速率(或更差)持續(xù)上升,那么就有一些麻煩了?墒呛螘r停止呢?大多數(shù)經(jīng)理都同意下列觀點:當你實際上確定了一些關鍵塊時就能停止了。Sahm將“關鍵”定義為那些包括全新功能的塊;不能在軟件中簡單處理的塊;以及設計者缺乏經(jīng)驗的塊。

  Foster說:“嘗試用覆蓋量度,將設計中的風險限制在某些可修復塊內,這是一種非常合理的策略。這些塊可能有明顯的軟件工作區(qū)。它們可能有一堆不受約束的門,我們過去叫它們?yōu)椤鞓烽T’,設計者可以只用一些金屬層作一些修補;蛘哌@些塊是實現(xiàn)新的算法,如果它們不工作,設計者只需簡單地把它關掉!

  Foster總結說:“覆蓋量度不能告訴你哪天完成工作。你可以看覆蓋曲線。如果它們在離100%不遠處走平,你可以改變自己的策略。如果覆蓋中有大的漏洞,可以針對它們做工作。如果有很多小漏洞,就可能需要全面改變自己的策略,并且嘗試形式方法,或針對分散區(qū)域的專門測試臺。但你從量度就能看出要去哪里,以及下一步應達目的地。”   附文:UCIS確保互操作性

  Mentor Graphics公司首席驗證科學家Hany Foster說,今天流行的驗證流程經(jīng)常會采用一組各異的驗證工具,從各種形式的仿真,到形式驗證甚至模擬。每個過程都可能生成多種覆蓋的量度,你用它們去測量一個過程的有效性,標記出那些可能需要注意的缺點。

  今天流程的問題在于,一個過程中的任何工具都可能生成不連貫、重疊的覆蓋量度,或者是一個不同工具可能生成一個量度的子集。此外,每個工具都以供應商確定的格式生成它的覆蓋數(shù)據(jù)。即使對最完備的項目團隊,要管理分析這些不同的覆蓋數(shù)據(jù)集也會是一場惡夢。

圖A來自很多工具的覆蓋量度以及消費它們的幾種客戶

  Accellera公司建立了UCIS(統(tǒng)一覆蓋互操作標準),確保在多工具的異質驗證流中收集、合并和解析覆蓋結果時的互操作性(圖A)。通過使用未來的Accellera UCIS API(應用編程接口)標準,多個驗證工具將能夠訪問一個UCDB(統(tǒng)一覆蓋數(shù)據(jù)庫),概念上可以將其看作有全部覆蓋數(shù)據(jù)的單一存儲庫。



  附文:UCIS確;ゲ僮餍

  今天流行的驗證流程經(jīng)常會采用一組各異的驗證工具,從各種形式的仿真,到形式驗證甚至模擬。每個過程都可能生成多種覆蓋的量度,你用它們去測量一個過程的有效性,標記出那些可能需要注意的缺點。

  今天流程的問題在于,一個過程中的任何工具都可能生成不連貫、重疊的覆蓋量度,或者是一個不同工具可能生成一個量度的子集。此外,每個工具都以供應商確定的格式生成它的覆蓋數(shù)據(jù)。即使對最完備的項目團隊,要管理分析這些不同的覆蓋數(shù)據(jù)集也會是一場惡夢。

  Accellera公司建立了UCIS(統(tǒng)一覆蓋互操作標準),確保在多工具的異質驗證流中收集、合并和解析覆蓋結果時的互操作性(圖A)。通過使用未來的Accellera UCIS API(應用編程接口)標準,多個驗證工具將能夠訪問一個UCDB(統(tǒng)一覆蓋數(shù)據(jù)庫),概念上可以將其看作有全部覆蓋數(shù)據(jù)的單一存儲庫。
本文地址:http://www.qingdxww.cn/thread-3161-1-1.html     【打印本頁】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據(jù)著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 想要避免發(fā)生災難,就用MPLAB® SiC電源仿真器!
  • 無線充電基礎知識及應用培訓教程3
  • 為何選擇集成電平轉換?
  • 基于CEC1712實現(xiàn)的處理器SPI FLASH固件安全彈性方案培訓教程
  • 貿澤電子(Mouser)專區(qū)

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 四虎影剧院 | 男人天堂网在线视频 | 在线观看二区三区午夜 | 欧美高清一区二区三区欧美 | 亚洲国产精品成人综合色在线婷婷 | 日本欧美一区二区三区片 | 亚洲国产第一 | 日韩精品亚洲专区在线观看 | 精品视频在线免费观看 | 天天影视综合网色综合国产 | 韩国一级特黄清高免费大片 | 国产特黄a级在线视频 | 欧美日韩一区二区三区色综合 | 九九激情视频 | 动漫精品在线观看 | 国产精品怕怕怕视频免费 | 麻豆视频免费在线播放 | 久草网视频 | 五月天婷婷色综合 | 18到20岁女人一级毛片 | 婷婷射丁香 | 日韩在线看片中文字幕不卡 | 四虎影院wwww | 亚洲精品小视频 | 伊人久久久综在合线久久在播 | 久久亚洲这里只有精品18 | 九九九色视频在线观看免费 | 亚洲日本欧美在线 | 日韩精品中文字幕在线 | 三级在线网站 | 99久久国产综合精麻豆 | 国产露出调教91 | 色噜噜狠狠色综合久 | 免费一级毛片在线播放不收费 | 一区二区三区四区免费视频 | 99福利在线观看 | 成人三级视频 | 一级毛片在线视频 | 国产美女白丝袜精品_a不卡 | 四虎网址最新 | 91国内精品久久久久免费影院 |