一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

IP開(kāi)發(fā)時(shí)如何考慮復(fù)用覆蓋率

西西 ? 2018-02-18 12:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如何在開(kāi)發(fā)IP的同時(shí)去鞏固集成和復(fù)用覆蓋率?IP的某些功能和性能是可以配置的,需要考慮的是IP被各種合理配置后的工作是否都能夠正常,將功能覆蓋率先整理為層次化的抽象功能覆蓋率模型,稱之為cover model。

這是一篇關(guān)于IP開(kāi)發(fā)時(shí)如何考慮復(fù)用覆蓋率的論文。就硬件設(shè)計(jì)IP而言,我們無(wú)非是在實(shí)現(xiàn)IP,或者集成IP。就目前情形來(lái)看,IP的實(shí)現(xiàn)越來(lái)越多被集中在大型公司。一方面是由于他們有更多的經(jīng)驗(yàn)來(lái)保證可配置化的IP可以滿足各種用戶需求,另外一方面是由于他們的客戶基礎(chǔ)深厚,同時(shí)高質(zhì)量的IP研發(fā)成本和大量的silicon-proven可以形成良好的業(yè)務(wù)發(fā)展。目前多數(shù)公司在重要IP上面都會(huì)采用商業(yè)IP,這來(lái)自于多方面的考慮。作為Verifier可能會(huì)有更多的機(jī)會(huì)去一家SoC公司,從事于定制模塊、核心知識(shí)模塊或者IP模塊的驗(yàn)證。SoC中至少有三分之一以上的工作都屬于IP模塊的集成驗(yàn)證,SoC verifier看待IP更多的角度是從集成驗(yàn)證出發(fā)的。

這次摘錄的這篇論文的視角則是從IP開(kāi)發(fā)的角度出發(fā)的。正好借這個(gè)機(jī)會(huì),小編可以有空梳理一下IP在設(shè)計(jì)和驗(yàn)證兩方面開(kāi)發(fā)的流程。由于文章中以PCIe為例,我接下來(lái)關(guān)于IP開(kāi)發(fā)流程和集成驗(yàn)證流程的敘述也以PCIe為例吧。

對(duì)于一個(gè)成熟的PCIe IP而言,一家商業(yè)IP公司可能出售它的硬件設(shè)計(jì)IP,也可能出售它的驗(yàn)證IP,或者兩者都出售。例如Synopsys就同時(shí)出售它的設(shè)計(jì)IP和驗(yàn)證IP,也就是說(shuō)這家大型的IP百貨公司在出售給你設(shè)計(jì)方案的同時(shí),還會(huì)建議你購(gòu)買(mǎi)他家的驗(yàn)證方案。無(wú)論是設(shè)計(jì)還是驗(yàn)證,你都首先需要一個(gè)PCIe功能模式的配置。這個(gè)配置是結(jié)合SoC的架構(gòu)來(lái)制定的,從前期架構(gòu)研究中會(huì)選擇合適的功能、性能以及功耗等參數(shù)。Designer和verifier將都使用這個(gè)配置文件來(lái)生成定制化的設(shè)計(jì)IP或者驗(yàn)證IP。那么可以將配對(duì)的設(shè)計(jì)IP和驗(yàn)證IP進(jìn)行測(cè)試環(huán)境搭建,繼而進(jìn)行IP級(jí)或者SoC級(jí)的驗(yàn)證工作。但是在驗(yàn)證的過(guò)程中,我們?nèi)绾瓮瓿稍贗P級(jí)和SoC級(jí)的驗(yàn)證量化呢?這肯定離不開(kāi)覆蓋率,尤其是功能覆蓋率。但是往往功能覆蓋率不會(huì)伴隨著設(shè)計(jì)IP或者驗(yàn)證IP一并生成,這是為什么?其實(shí)還是跟高度可配置化的IP本身有關(guān)。在這篇論文中就PCIe設(shè)計(jì)IP為例,講述了針對(duì)可配置化IP定義功能覆蓋率的困難之處。

由于IP的某些功能和性能是可以配置的,比如有一些功能可能在配置之后就會(huì)被禁止(靜態(tài)的),也有一些功能可能通過(guò)仿真時(shí)的寄存器配置被禁止(動(dòng)態(tài)的),那么這些不同的配置就對(duì)定義一種通用的功能覆蓋率模型提出了挑戰(zhàn)。從文章來(lái)看,PCIe IP的開(kāi)發(fā)者在驗(yàn)證時(shí)已經(jīng)很苦惱,因?yàn)樗麄兠媾R的挑戰(zhàn)要遠(yuǎn)大于SoC verifier,前者需要考慮所有的配置可能,而后者只需要選擇有限的配置進(jìn)行集成驗(yàn)證。或者這樣說(shuō),前者需要考慮的是IP被各種合理配置后的工作是否都能夠正常,而后者需要考慮的是IP在被SoC集成后是否能夠良好地融入系統(tǒng)。

IP集成的一個(gè)問(wèn)題是,IP提供者不知道IP在被各種客戶集成時(shí),集成方式是否正確;而IP使用者也幾乎對(duì)于生成的IP其自身的可靠性、在IP系統(tǒng)級(jí)和SoC級(jí)的測(cè)試覆蓋情況抱有模糊的認(rèn)識(shí)。擋在雙方中間的障礙來(lái)自于他們?nèi)鄙僖粋€(gè)清晰的數(shù)據(jù)來(lái)表明對(duì)方的測(cè)試完成狀況。從這篇文章來(lái)看,如果IP提供商可以在生成定制IP的同時(shí)也能夠生成定制的功能覆蓋率,那么這樣的一份覆蓋率無(wú)論對(duì)于IP開(kāi)發(fā)者在驗(yàn)證IP自身,或者是IP集成者在驗(yàn)證IP的集成時(shí),都將產(chǎn)生指導(dǎo)性的幫助。

那么是否存在這樣一份伴隨著IP配置文件而可以定制生成的功能覆蓋率呢?這篇文章給出了一種解決方案。從這篇文章最后的結(jié)論部分來(lái)看,可配置化的功能覆蓋率將伴對(duì)應(yīng)著每一種配置化的IP,而在測(cè)試這么多的IP配置時(shí),開(kāi)發(fā)者可以利用這些功能覆蓋率來(lái)衡量IP的驗(yàn)證完備情況。如果這樣一份功能覆蓋率也能夠伴隨著IP一同交給SoC集成方,在IP集成時(shí)就可以綜合IP級(jí)和SoC級(jí)的驗(yàn)證情況來(lái)收集反饋在這份功能覆蓋率模型上。這樣如果IP提供方和集成方都基于同一個(gè)功能覆蓋率模型進(jìn)行交流,那么也將更容易一起回顧IP的功能測(cè)試和集成情況。

接下來(lái)小編概括這篇論文是如何實(shí)現(xiàn)高度可配置化IP的功能覆蓋率定制情況的。

將功能覆蓋率先整理為層次化的抽象功能覆蓋率模型,稱之為cover model。

抽象覆蓋率模型由多個(gè)block model構(gòu)成,這些block model所代表的某一項(xiàng)重要的功能最終合并起來(lái),就可以構(gòu)成整體的功能情況,即cover model。

對(duì)于block model各自的樹(shù)狀結(jié)構(gòu),其每一個(gè)樹(shù)狀末端構(gòu)成了一個(gè)覆蓋變量,cover variable。但是這些覆蓋變量并不指向具體的信號(hào),而仍然從抽象上來(lái)描述它所要測(cè)試的功能、關(guān)系的值域。

利用cover variable,可以將它們放置,或者交叉生成新的覆蓋率,稱之為cover group。

這些樹(shù)狀的覆蓋率模型包含的底層cover variable和cover group被收入到Excel表格中。伴隨它們的,還有配置化變量。配置化變量之所以重要是因?yàn)椴煌脑O(shè)定可能決定了某些cover variable的值域范圍,或者是否存在某些cover variable。

層次化放置的Excel表格被Perl腳本讀取,并且產(chǎn)生了層次化的SystemVerilog covergroup。這些covergroup也伴隨著block model,與各個(gè)功能一一對(duì)應(yīng),構(gòu)成了層次關(guān)系,最終作為一個(gè)定制化產(chǎn)生的cover model。

這篇論文同我現(xiàn)在做的一些在SoC級(jí)定義功能覆蓋率的方式不謀而合。首先功能覆蓋率在沉淀之前,需要有抽象的功能定義,那么不同的功能將可以作為獨(dú)立的block model。復(fù)雜的功能可以進(jìn)一步拆解為child block model,最終拆解到不能拆分為之,那么不能拆分的點(diǎn)就是cover variable。也許有的公司習(xí)慣于將功能測(cè)試點(diǎn)以平鋪的方式(plain text)展開(kāi),這對(duì)應(yīng)的也將是平鋪的SV cover group定義;如果你定義的功能點(diǎn)是抽絲剝繭,從Excel表格開(kāi)始就得到了腳本處理的保障,那么你可以一開(kāi)始將設(shè)計(jì)拆分為幾大功能,接下來(lái)利用層次化方法定義子一級(jí)的block model。

樹(shù)狀的覆蓋率模型與平鋪的覆蓋率模型相比有什么優(yōu)勢(shì)呢?它容易做測(cè)試回顧(review)和覆蓋率分析,而對(duì)于這篇論文中的IP驗(yàn)證,樹(shù)狀結(jié)構(gòu)也有利于一些變量的層次化傳遞和腳本的針對(duì)性處理。從復(fù)用角度來(lái)看,如果實(shí)現(xiàn)了Excel到SV cover group的腳本化流程,那么樹(shù)狀結(jié)構(gòu)的功能點(diǎn)拆分也有利于日后的維護(hù),例如從樹(shù)狀結(jié)構(gòu)中刪除某一個(gè)節(jié)點(diǎn)及其以下的所有子節(jié)點(diǎn)(即刪除某一項(xiàng)功能),又例如將IP級(jí)的覆蓋率樹(shù)狀結(jié)構(gòu)嫁接到SoC系統(tǒng)的覆蓋率樹(shù)狀結(jié)構(gòu)中,使其成為其中的某一個(gè)節(jié)點(diǎn),都是可行的方法。

結(jié)語(yǔ)

Excel到SV cover group的自動(dòng)化是一個(gè)合適的方向,但在實(shí)現(xiàn)過(guò)程中,還需要理清,如何將抽象的功能點(diǎn)測(cè)試具象到各個(gè)cover group。比如功能點(diǎn)測(cè)試之間可能具有包含的關(guān)系,比如某些功能點(diǎn)測(cè)試可能仍然過(guò)于抽象需要進(jìn)一步細(xì)分,這篇論文利用腳本結(jié)合Excel中的IP配置變量來(lái)生成了層次化的功能覆蓋率模型,是一個(gè)不錯(cuò)的嘗試。這個(gè)覆蓋率如果可以從IP級(jí)貫穿到SoC級(jí),那么將能夠更好地衡量IP集成測(cè)試的情況。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • IP開(kāi)發(fā)
    +關(guān)注

    關(guān)注

    0

    文章

    1

    瀏覽量

    7658
  • pcle
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    怎么用Vivado做覆蓋率分析

    在做仿真的時(shí)候往往會(huì)去做代碼覆蓋率和功能覆蓋率的分析,來(lái)保證仿真是做的比較充分完備的。
    的頭像 發(fā)表于 01-03 12:34 ?2504次閱讀
    怎么用Vivado做<b class='flag-5'>覆蓋率</b>分析

    如何改善5G覆蓋率?

    改善5G覆蓋率的方法
    發(fā)表于 12-15 07:52

    如何提高DFT設(shè)計(jì)測(cè)試覆蓋率?

    提高DFT設(shè)計(jì)測(cè)試覆蓋率的有效方法是什么
    發(fā)表于 05-07 06:37

    怎么提高非隨機(jī)圖形設(shè)計(jì)的故障覆蓋率

    怎么提高非隨機(jī)圖形設(shè)計(jì)的故障覆蓋率?為L(zhǎng)BIST設(shè)計(jì)提高故障檢測(cè)能力的技術(shù)是什么?
    發(fā)表于 05-08 07:11

    嵌入式仿真平臺(tái)SkyEye的覆蓋率分析相關(guān)資料下載

    代碼執(zhí)娜行覆蓋情況的功能,來(lái)檢測(cè)代碼中未執(zhí)行覆蓋情況。在覆蓋率分析時(shí)需要分析嵌入式軟件的指令覆蓋率、指令函數(shù)覆蓋率、指令函數(shù)分支
    發(fā)表于 12-17 07:27

    重點(diǎn)厘清覆蓋率相關(guān)的概念以及在芯片開(kāi)發(fā)流程中跟覆蓋率相關(guān)的事項(xiàng)

    中提到了100個(gè)功能特性,驗(yàn)證工程師在開(kāi)發(fā)覆蓋率模型的時(shí)候由于理解不到位或者遺漏,導(dǎo)致只針對(duì)其中90個(gè)特性編寫(xiě)了覆蓋點(diǎn),那么最后就算達(dá)成100%的功能覆蓋率,也還是有10個(gè)功能特性沒(méi)有
    發(fā)表于 09-14 11:57

    Systemverilog覆蓋率的合并和計(jì)算方式

      在systemverilog中,對(duì)于一個(gè)covergroup來(lái)說(shuō),可能會(huì)有多個(gè)instance,我們可能需要對(duì)這些instance覆蓋率進(jìn)行操作?! ≈槐4鎐overgroup type的覆蓋率
    發(fā)表于 03-21 14:24

    針對(duì)功能覆蓋率的驗(yàn)證過(guò)程

    針對(duì)功能覆蓋率的驗(yàn)證過(guò)程神州龍芯集成電路設(shè)計(jì)公司徐偉俊 楊鑫 陳先勇 夏宇聞[摘要]:本文在介紹傳統(tǒng)驗(yàn)證過(guò)程及其局限性的基礎(chǔ)上,闡述了針對(duì)功能覆蓋率驗(yàn)證(co
    發(fā)表于 12-23 16:12 ?13次下載

    Verilog代碼覆蓋率檢查

    Verilog代碼覆蓋率檢查是檢查驗(yàn)證工作是否完全的重要方法,代碼覆蓋率(codecoverge)可以指示Verilog代碼描述的功能有多少在仿真過(guò)程中被驗(yàn)證過(guò)了,代碼覆蓋率分析包括以下分析內(nèi)容。
    發(fā)表于 04-29 12:35 ?8768次閱讀

    嵌入式代碼覆蓋率統(tǒng)計(jì)方法和經(jīng)驗(yàn)

    代碼覆蓋率是衡量軟件測(cè)試完成情況的指標(biāo),通?;跍y(cè)試過(guò)程中已檢查的程序源代碼比例計(jì)算得出。代碼覆蓋率可以有效避免包含未測(cè)試代碼的程序被發(fā)布。 1. 問(wèn)題背景 代碼覆蓋(Code coverage
    的頭像 發(fā)表于 01-06 15:06 ?3430次閱讀
    嵌入式代碼<b class='flag-5'>覆蓋率</b>統(tǒng)計(jì)方法和經(jīng)驗(yàn)

    統(tǒng)計(jì)嵌入式代碼覆蓋率的方法和經(jīng)驗(yàn)

    代碼覆蓋率是衡量軟件測(cè)試完成情況的指標(biāo),通?;跍y(cè)試過(guò)程中已檢查的程序源代碼比例計(jì)算得出。代碼覆蓋率可以有效避免包含未測(cè)試代碼的程序被發(fā)布。 1. 問(wèn)題背景 代碼覆蓋(Code coverage
    的頭像 發(fā)表于 03-29 11:58 ?2276次閱讀
    統(tǒng)計(jì)嵌入式代碼<b class='flag-5'>覆蓋率</b>的方法和經(jīng)驗(yàn)

    怎么才能寫(xiě)出高覆蓋率的Verilog代碼?

    芯片前端工程中,測(cè)試驗(yàn)證的核心理念:以提高覆蓋率為核心。設(shè)計(jì)工程師需要關(guān)心的主要有行覆蓋率(Block),條件覆蓋率(Expression),翻轉(zhuǎn)覆蓋率(Toggle),狀態(tài)機(jī)
    的頭像 發(fā)表于 06-01 10:13 ?2966次閱讀

    覆蓋率的Verilog代碼的編寫(xiě)技巧

    設(shè)計(jì)工程師需要關(guān)心的主要有行覆蓋率(Block),條件覆蓋率(Expression),翻轉(zhuǎn)覆蓋率(Toggle),狀態(tài)機(jī)覆蓋率。本文從ASIC設(shè)計(jì)的角度上來(lái)討論,如何寫(xiě)出高
    的頭像 發(fā)表于 05-26 17:30 ?4649次閱讀

    SystemVerilog的覆蓋率建模方式

    為了確保驗(yàn)證的完備性,我們需要量化驗(yàn)證目標(biāo)。SystemVerilog提供了一套豐富的覆蓋率建模方式。
    的頭像 發(fā)表于 06-25 10:44 ?1564次閱讀

    代碼覆蓋率記錄

    為確保具體的產(chǎn)品(例如,醫(yī)療或航空電子市場(chǎng))質(zhì)量合格, 通常需要提供語(yǔ)句覆蓋與判定覆蓋認(rèn)證證明。對(duì)于各種嵌 入式系統(tǒng),規(guī)范要求高度優(yōu)化的代碼需要實(shí)時(shí)測(cè)試。禁止 代碼插裝和運(yùn)行時(shí)篡改。勞特巴赫代碼覆蓋率測(cè)試系統(tǒng)為 客戶提供
    發(fā)表于 11-03 11:02 ?0次下載
    代碼<b class='flag-5'>覆蓋率</b>記錄