91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

學(xué)會(huì)這些System Verilog方法,芯片驗(yàn)證入門沒(méi)問(wèn)題

jf_5P3RKFtu ? 來(lái)源:于博士Jacky ? 作者:于博士Jacky ? 2022-12-09 15:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 驗(yàn)證的主流語(yǔ)言為什么是System Verilog語(yǔ)言?

9922df96-7744-11ed-8abf-dac502259ad0.jpg

一個(gè)掌握Verilog語(yǔ)言的工程師初次看SystemVerilog都會(huì)有這樣的感受,這就是Verilog啊,很容易啊,So easy啊。沒(méi)錯(cuò),確實(shí)是這樣,System Verilog的產(chǎn)生就是因?yàn)樾酒O(shè)計(jì)規(guī)模不斷增長(zhǎng),功能日趨復(fù)雜,單純的用Verilog和VHDL等硬件語(yǔ)言已經(jīng)無(wú)法滿足驗(yàn)證的需求,結(jié)合C,C++等軟件語(yǔ)言,又顯得難度太大,不容易掌握,因此產(chǎn)生了SystemVerilog,當(dāng)然也產(chǎn)生了其他驗(yàn)證語(yǔ)言,比如Vera和e語(yǔ)言,但因?yàn)镾ystemVerilog結(jié)合了來(lái)自 Verilog、VHDL、C++的概念,還有驗(yàn)證平臺(tái)語(yǔ)言(OpenVera和e語(yǔ)言)和斷言語(yǔ)言(OVA和PSL),使得SystemVerilog在驗(yàn)證界坐穩(wěn)了第一的寶座。它將硬件描述語(yǔ)言(HDL)與現(xiàn)代的高層級(jí)驗(yàn)證語(yǔ)言(HVL)結(jié)合了起來(lái)。使其對(duì)于進(jìn)行當(dāng)今高度復(fù)雜的設(shè)計(jì)驗(yàn)證的驗(yàn)證工程師具有相當(dāng)大的吸引力。這些都使得SystemVerilog在一個(gè)更高的抽象層次上提高了設(shè)計(jì)建模的能力。隨著不斷地發(fā)展,System Verilog擁有芯片設(shè)計(jì)及驗(yàn)證工程師所需的全部結(jié)構(gòu),它集成了面向?qū)ο?a target="_blank">編程、動(dòng)態(tài)線程和線程間通信等特性,作為一種工業(yè)標(biāo)準(zhǔn)語(yǔ)言,SV全面綜合了RTL設(shè)計(jì)、測(cè)試平臺(tái)、斷言和覆蓋率,為系統(tǒng)級(jí)的設(shè)計(jì)及驗(yàn)證提供強(qiáng)大的支持作用。另一方面,驗(yàn)證方法學(xué)(VMM、OVM、AVM和UVM等)的推動(dòng)也功不可沒(méi),System Verilog能夠和芯片驗(yàn)證方法學(xué)結(jié)合在一起,即作為實(shí)現(xiàn)方法學(xué)的一種語(yǔ)言工具。使用驗(yàn)證方法學(xué)可以大大增強(qiáng)模塊復(fù)用性、提高芯片開發(fā)效率,縮短開發(fā)周期。

2.出鏡率較高的數(shù)據(jù)類型

邏輯(logic)類型。

四狀態(tài)類型:interger,reg,logic,time,wire,tri

雙狀態(tài)數(shù)據(jù)類型(更好的性能,更低的內(nèi)存消耗)。

二狀態(tài)類型:bit,int,byte,shortint,longint

隊(duì)列,動(dòng)態(tài)和關(guān)聯(lián)數(shù)組(自帶搜索和分類功能)

隊(duì)列和數(shù)組的操作,常常用在reference model建?;蛘遚hecker的數(shù)據(jù)比對(duì)過(guò)程中。隊(duì)列的操作包括常用函數(shù):insert,delete,push_back, pop_back, push_front, push_back等;數(shù)組的操作(min最小值,max最大值,unique排除重復(fù),find索引相關(guān),sum求和,sort升序,rsort降序,reverse倒序,shuffle亂序等。

關(guān)聯(lián)數(shù)組(對(duì)于非常大的尋址空間存儲(chǔ)建模,我們只需要訪問(wèn)邊界值,以及中間個(gè)別一些空間進(jìn)行驗(yàn)證,關(guān)聯(lián)數(shù)組提供保存稀疏矩陣的元素)。

993dbe1a-7744-11ed-8abf-dac502259ad0.jpg

枚舉類型

類似于宏定義,或者使用參數(shù)。

typedef enum{WAIT, DECODE, READY}fsmstate_e;

fsmstate_e pstate,nstate;

995dfaf4-7744-11ed-8abf-dac502259ad0.jpg

結(jié)構(gòu)體(支持抽象數(shù)據(jù)結(jié)構(gòu))用struct建語(yǔ)句創(chuàng)建數(shù)據(jù)結(jié)構(gòu)。

typedef struct{bit[7:0] r, g, b} pixel_s;

pixel_s my_pixel;

997ba46e-7744-11ed-8abf-dac502259ad0.jpg

fork...join塊可以指定一條或多條語(yǔ)句,每一條語(yǔ)句都應(yīng)該作為并發(fā)進(jìn)程執(zhí)行。

選項(xiàng) 描述
join 父進(jìn)程會(huì)阻塞直到這個(gè)分支產(chǎn)生的所有進(jìn)程結(jié)束。
join_any 父進(jìn)程會(huì)阻塞直到這個(gè)分支產(chǎn)生的任意一個(gè)進(jìn)程結(jié)束。
join_none 父進(jìn)程會(huì)繼續(xù)與這個(gè)分支產(chǎn)生的所有進(jìn)程并發(fā)執(zhí)行。在父線程執(zhí)行一條阻塞語(yǔ)句之前,產(chǎn)生的進(jìn)程不會(huì)啟動(dòng)執(zhí)行。

9989ea2e-7744-11ed-8abf-dac502259ad0.png

Function和Task

function執(zhí)行不消耗時(shí)間,帶時(shí)間的操作如#100ns,@,wait等都不能出現(xiàn)在function。所以一般而言,function是不能調(diào)用task的,但是在fork……join_none中例外。函數(shù)可以有返回值。

消耗時(shí)間的操作用task,比如driver里面對(duì)信號(hào)的驅(qū)動(dòng)過(guò)程,一般來(lái)講是在task中完成,但是具體的算法是由function完成的,所以,task中調(diào)用function。task沒(méi)有返回值。

3. System Verilog的Interface

99a04d46-7744-11ed-8abf-dac502259ad0.jpg

這是一個(gè)比較新的概念,Interface封裝了連接性:接口可以作為單個(gè)項(xiàng)目通過(guò)端口傳遞,從而用單個(gè)名稱替換一組名稱。這減少了建模端口連接所需的代碼量,并提高了端口連接的可維護(hù)性和可讀性。封裝功能,與通過(guò)接口連接的模塊隔離。因此,通信協(xié)議的抽象級(jí)別和粒度可以完全獨(dú)立于模塊進(jìn)行細(xì)化。

可以包含參數(shù)、常量、變量、函數(shù)和任務(wù)、流程和連續(xù)分配,這對(duì)于系統(tǒng)級(jí)建模和測(cè)試應(yīng)用程序都很有用。

可以幫助構(gòu)建功能覆蓋記錄和報(bào)告、協(xié)議檢查和斷言等應(yīng)用程序。

可以用于無(wú)端口訪問(wèn):接口可以作為模塊中的靜態(tài)數(shù)據(jù)對(duì)象直接實(shí)例化。因此,可以從設(shè)計(jì)中的不同點(diǎn)調(diào)用用于訪問(wèn)接口內(nèi)部狀態(tài)信息的方法來(lái)共享信息。

靈活性:接口可以像模塊一樣參數(shù)化。此外,可以使用未指定的接口實(shí)例化(稱為泛型接口)創(chuàng)建模塊頭。這個(gè)接口可以在稍后實(shí)例化模塊時(shí)指定。

4. System Verilog的面向?qū)ο螅∣OP)

面向?qū)ο笫褂脩裟軌騽?chuàng)建復(fù)雜的數(shù)據(jù)類型,并且將它們跟使用這些數(shù)據(jù)類型的程序緊密的結(jié)合在一起。用戶可以在更加抽象的平臺(tái)上建立測(cè)試模型,通過(guò)調(diào)用函數(shù)改變信號(hào),而不是直接改變電平信號(hào)。

99c7a148-7744-11ed-8abf-dac502259ad0.jpg

從結(jié)構(gòu)體開始:程序設(shè)計(jì)=數(shù)據(jù)結(jié)構(gòu)+算法實(shí)現(xiàn)

99e90374-7744-11ed-8abf-dac502259ad0.jpg

定義一個(gè)類

類將結(jié)構(gòu)體和它相應(yīng)的函數(shù)集合在一起,成為一種新的數(shù)據(jù)組織形式。在這種新的數(shù)據(jù)組織形式中,有兩種成分,一種是來(lái)自結(jié)構(gòu)體的數(shù)據(jù)變量,在類中被稱為成員變量;另外一種來(lái)自與結(jié)構(gòu)體相對(duì)應(yīng)的函數(shù),被稱為一個(gè)類的接口。

9a0a74c8-7744-11ed-8abf-dac502259ad0.jpg

繼承一個(gè)類

分析所要解決的問(wèn)題,并找出其中的共性,用這些共性構(gòu)建一個(gè)基類(或者父類);在此基礎(chǔ)上,將問(wèn)題分類,不同的分類具有各自的共性,使用這些分類的共性構(gòu)建一個(gè)派生類(或者子類)。

9a26d172-7744-11ed-8abf-dac502259ad0.jpg

多態(tài):多個(gè)程序使用一個(gè)共同的名字的現(xiàn)象。

9a4be2e6-7744-11ed-8abf-dac502259ad0.jpg

靜態(tài)變量和方法

一個(gè)類的所有實(shí)例都共享變量的一個(gè)版本,也就是說(shuō)所有實(shí)例都共享同一個(gè)copy,該變量對(duì)所有實(shí)例都是可見(jiàn)并相同的。使用關(guān)鍵字static產(chǎn)生。

9a6b99e2-7744-11ed-8abf-dac502259ad0.jpg

類的參數(shù)化定義

9a84014e-7744-11ed-8abf-dac502259ad0.jpg

9a95d612-7744-11ed-8abf-dac502259ad0.jpg

審核編輯 :李倩

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

    關(guān)注

    30

    文章

    1374

    瀏覽量

    114520
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2123

    瀏覽量

    77110
  • 芯片驗(yàn)證
    +關(guān)注

    關(guān)注

    5

    文章

    42

    瀏覽量

    47916

原文標(biāo)題:學(xué)會(huì)這些System Verilog方法,芯片驗(yàn)證入門沒(méi)問(wèn)題

文章出處:【微信號(hào):于博士Jacky,微信公眾號(hào):于博士Jacky】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    RDMA設(shè)計(jì)35:基于 SV 的驗(yàn)證平臺(tái)

    v2 高速數(shù)據(jù)傳輸系統(tǒng)進(jìn)行功能仿真驗(yàn)證,根據(jù)設(shè)計(jì)相關(guān)特點(diǎn)搭建了基于 System Verilog 的仿真驗(yàn)證平臺(tái),結(jié)合仿真需要設(shè)計(jì)了 RoCE v2 子系統(tǒng)模型,以實(shí)現(xiàn)系統(tǒng)性的功能
    發(fā)表于 02-01 13:14

    FPGA 入門必看:Verilog 與 VHDL 編程基礎(chǔ)解析!

    很多開發(fā)者第一次接觸FPGA,都會(huì)有同樣的疑問(wèn):FPGA是硬件,不是軟件,怎么寫程序?答案就是用硬件描述語(yǔ)言(HDL),最常用的就是Verilog和VHDL。今天,我們就帶你入門,搞清楚FPGA編程
    的頭像 發(fā)表于 01-19 09:05 ?448次閱讀
    FPGA <b class='flag-5'>入門</b>必看:<b class='flag-5'>Verilog</b> 與 VHDL 編程基礎(chǔ)解析!

    軟件定義的硬件輔助驗(yàn)證如何助力AI芯片開發(fā)

    半導(dǎo)體行業(yè)正處于關(guān)鍵轉(zhuǎn)折點(diǎn)。2025 年,1927 億美元的風(fēng)險(xiǎn)投資涌入 AI 領(lǐng)域,市場(chǎng)對(duì)匹配 AI 快速創(chuàng)新周期的驗(yàn)證平臺(tái)的需求激增。隨著 AI、Multi-Die 架構(gòu)和邊緣計(jì)算推動(dòng)芯片創(chuàng)新
    的頭像 發(fā)表于 12-29 11:17 ?606次閱讀
    軟件定義的硬件輔助<b class='flag-5'>驗(yàn)證</b>如何助力AI<b class='flag-5'>芯片</b>開發(fā)

    單片機(jī)的入門準(zhǔn)備

    單片機(jī)入門篇 1、學(xué)好電子技術(shù)基礎(chǔ)知識(shí),如電路基礎(chǔ)、模擬電路、數(shù)字電路和微機(jī)原理。這幾門課程都是弱電類專業(yè)的必修課程,學(xué)會(huì)這些后能保證你看懂單片機(jī)電路、知道電路的設(shè)計(jì)思路和工作原理; 2、學(xué)習(xí)
    發(fā)表于 12-22 07:39

    淺談芯片驗(yàn)證方法的演進(jìn)過(guò)程

    從業(yè)者的核心需求僅在于掌握這些芯片的使用方法,對(duì)于其底層設(shè)計(jì)原理以及對(duì)應(yīng)的測(cè)試驗(yàn)證流程,既缺乏深入探索的條件,也沒(méi)有足夠的重視。
    的頭像 發(fā)表于 12-10 15:14 ?592次閱讀
    淺談<b class='flag-5'>芯片</b><b class='flag-5'>驗(yàn)證</b><b class='flag-5'>方法</b>的演進(jìn)過(guò)程

    西門子EDA AI System驅(qū)動(dòng)芯片設(shè)計(jì)新紀(jì)元

    芯片設(shè)計(jì)是一項(xiàng)復(fù)雜的系統(tǒng)工程,尤其驗(yàn)證和優(yōu)化環(huán)節(jié)極其耗費(fèi)時(shí)間和精力。為了有效降低錯(cuò)誤率、提升設(shè)計(jì)質(zhì)量,EDA工具的自動(dòng)化、智能化發(fā)展成為關(guān)鍵。近年來(lái),隨著AI技術(shù)在EDA領(lǐng)域的應(yīng)用逐漸成熟,為芯片設(shè)計(jì)領(lǐng)域帶來(lái)了革命性的變化。AI
    的頭像 發(fā)表于 11-17 14:14 ?2354次閱讀
    西門子EDA AI <b class='flag-5'>System</b>驅(qū)動(dòng)<b class='flag-5'>芯片</b>設(shè)計(jì)新紀(jì)元

    如何解決將e203的rtl導(dǎo)入vivado后報(bào)語(yǔ)法錯(cuò)誤的問(wèn)題

    寫的rtl, 解決方法主要有兩個(gè) 一、 shift全選這些報(bào)錯(cuò)文件,右鍵 點(diǎn)擊set file type 將這些文件的類型改為system
    發(fā)表于 10-24 09:49

    有哪些方法可以驗(yàn)證備用電源續(xù)航測(cè)試方案的準(zhǔn)確性?

    驗(yàn)證電能質(zhì)量在線監(jiān)測(cè)裝置備用電源續(xù)航測(cè)試方案的準(zhǔn)確性,需從 方案設(shè)計(jì)合理性、測(cè)試過(guò)程可控性、結(jié)果一致性、標(biāo)準(zhǔn)符合性 等維度出發(fā),通過(guò)多方法交叉驗(yàn)證,確保測(cè)試結(jié)果能真實(shí)反映裝置在斷電場(chǎng)景下的實(shí)際續(xù)航
    的頭像 發(fā)表于 09-03 17:42 ?809次閱讀
    有哪些<b class='flag-5'>方法</b>可以<b class='flag-5'>驗(yàn)證</b>備用電源續(xù)航測(cè)試方案的準(zhǔn)確性?

    為什么我選擇VHDL入門

    在群里交流提問(wèn)的時(shí)候,大家總是驚訝并疑惑:為什么我要選擇 VHDL入門?因?yàn)楹孟?99% 搞 FPGA 開發(fā)的人都在用 Verilog。 我的選擇,是通過(guò)網(wǎng)上搜索的討論而做出的,為了留存,我這里水一
    的頭像 發(fā)表于 06-25 11:18 ?1204次閱讀
    為什么我選擇VHDL<b class='flag-5'>入門</b>

    Veloce Primo補(bǔ)全完整的SoC驗(yàn)證環(huán)境

    0 1 ? 簡(jiǎn)介?? SoC 設(shè)計(jì)團(tuán)隊(duì)的任務(wù)是在創(chuàng)建昂貴的生產(chǎn)掩膜之前完成完整的系統(tǒng)級(jí)驗(yàn)證。這意味著徹底審核所有硬件模塊、這些模塊之間的所有交互以及為最終應(yīng)用創(chuàng)建的所有專用軟件,而且所有這些任務(wù)都要
    的頭像 發(fā)表于 06-12 14:39 ?1412次閱讀
    Veloce Primo補(bǔ)全完整的SoC<b class='flag-5'>驗(yàn)證</b>環(huán)境

    超大規(guī)模芯片驗(yàn)證:基于AMD VP1902的S8-100原型驗(yàn)證系統(tǒng)實(shí)測(cè)性能翻倍

    引言隨著AI、HPC及超大規(guī)模芯片設(shè)計(jì)需求呈指數(shù)級(jí)增長(zhǎng)原型驗(yàn)證平臺(tái)已成為芯片設(shè)計(jì)流程中驗(yàn)證復(fù)雜架構(gòu)、縮短迭代周期的核心工具。然而,傳統(tǒng)原型驗(yàn)證
    的頭像 發(fā)表于 06-06 13:13 ?1424次閱讀
    超大規(guī)模<b class='flag-5'>芯片</b><b class='flag-5'>驗(yàn)證</b>:基于AMD VP1902的S8-100原型<b class='flag-5'>驗(yàn)證</b>系統(tǒng)實(shí)測(cè)性能翻倍

    硬件輔助驗(yàn)證(HAV) 對(duì)軟件驗(yàn)證的價(jià)值

    生態(tài)系統(tǒng)和定制指令集開發(fā)的唯一途徑。 當(dāng)下,芯片企業(yè)正在設(shè)計(jì) RISC-V 人工智能 (AI) 與機(jī)器學(xué)習(xí) (ML) 定制加速器,以實(shí)現(xiàn)特定工作負(fù)載的加速處理,這些企業(yè)創(chuàng)建的架構(gòu)由軟件驅(qū)動(dòng),而不使用遺留數(shù)據(jù)或任何通用數(shù)據(jù)。而是,針對(duì)軟件工作負(fù)載應(yīng)用在架構(gòu)層面進(jìn)行量身定制
    的頭像 發(fā)表于 05-13 18:21 ?1987次閱讀

    System Level EOS Testing Method”可以翻譯為: “系統(tǒng)級(jí)電性過(guò)應(yīng)力測(cè)試方法

    System Level EOS Testing Method”可以翻譯為: “系統(tǒng)級(jí)電性過(guò)應(yīng)力測(cè)試方法
    的頭像 發(fā)表于 05-05 15:55 ?933次閱讀
    “<b class='flag-5'>System</b> Level EOS Testing Method”可以翻譯為: “系統(tǒng)級(jí)電性過(guò)應(yīng)力測(cè)試<b class='flag-5'>方法</b>”

    CAN芯片邏輯響應(yīng)驗(yàn)證測(cè)試

    在CAN芯片研發(fā)階段,需要做諸多涉及通訊錯(cuò)誤管理驗(yàn)證的問(wèn)題。在ISO-16845國(guó)際標(biāo)準(zhǔn)中,規(guī)定完善的測(cè)試標(biāo)準(zhǔn),如錯(cuò)誤幀檢測(cè),傳輸幀相關(guān)檢測(cè),錯(cuò)誤管理邏輯驗(yàn)證等,本文主要分享有效便捷的方法
    的頭像 發(fā)表于 04-30 18:24 ?923次閱讀
    CAN<b class='flag-5'>芯片</b>邏輯響應(yīng)<b class='flag-5'>驗(yàn)證</b>測(cè)試

    FPGA Verilog HDL語(yǔ)法之編譯預(yù)處理

    的語(yǔ)句)。Verilog HDL編譯系統(tǒng)通常先對(duì)這些特殊的命令進(jìn)行“預(yù)處理”,然后將預(yù)處理的結(jié)果和源程序一起在進(jìn)行通常的編譯處理。
    的頭像 發(fā)表于 03-27 13:30 ?1434次閱讀
    FPGA <b class='flag-5'>Verilog</b> HDL語(yǔ)法之編譯預(yù)處理