日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

数字IC验证学习(一)

發(fā)布時間:2023/12/10 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数字IC验证学习(一) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、數(shù)據(jù)類型

1、logic

logic類型只能有一個驅(qū)動。使用wire和reg的地方均可使用logic,但如雙向總線等有多個驅(qū)動的地方,則不可使用logic。

2、二值邏輯

對于二值邏輯變量與DUT中的四值邏輯變量連接時,如果DUT中產(chǎn)生了X和Z,會被轉(zhuǎn)換成雙狀態(tài)值。使用($isunknown)操作符,可以在表達式的任意位出現(xiàn)X或Z的時候返回1。用來檢查未知值的傳播。

3、定寬數(shù)組

多維數(shù)組的foreach循環(huán),以兩維數(shù)組為例:foreach(md[i,j])。

數(shù)組下標和位下標可以同時使用。

需要等待數(shù)組中的變化(@ event)時,必須使用合并數(shù)組。

4、動態(tài)數(shù)組

只要基本數(shù)據(jù)類型相同,定寬數(shù)組和動態(tài)數(shù)組之間就可以相互賦值,在元素數(shù)目相同的情況下,可以把動態(tài)數(shù)組的值復(fù)制到定寬數(shù)組。

5、隊列

隊列的常量初始化中,無需使用單引號。

對于一些非合并的數(shù)據(jù)類型(非連續(xù)存放),需要使用單引號進行標量初始化賦值;對于合并的數(shù)據(jù)類型(連續(xù)存放),不需要使用單引號進行標量初始化賦值

隊列中的元素是連續(xù)存放的,隊頭或隊尾存取數(shù)據(jù)非常方便,常用來作為FIFO。

6、數(shù)組的方法

1)縮減

sum,product,and,or,xor

對于定寬數(shù)組、動態(tài)數(shù)組、隊列和關(guān)聯(lián)數(shù)組,從其中隨機取數(shù)可以使用$urandum_range($size(array)-1);特別地,隊列和動態(tài)數(shù)組可以使用$urandum_range($array.size()-1)。

2)定位

min,max,unique

find:使用with來限定條件;還有find_index,find_first,find_first_index,find_last,find_last_index(返回索引的方法,返回值類型為int)

3)排序

改變了原始的數(shù)組,reverse,sort,rsort,shuffle,其中sort和rsort可以帶with進行條件選擇

7、結(jié)構(gòu)

可以將結(jié)構(gòu)定義為合并結(jié)構(gòu):typedef struct packed {bit[7:0] r,g,b;} pixel_p_s;

如果需要經(jīng)常對整個結(jié)構(gòu)體進行復(fù)制,那么,合并結(jié)構(gòu)的效率會高一點;但是,對于合并結(jié)構(gòu)中尺寸不規(guī)則的元素進行讀寫,需要移位和屏蔽操作,代價很高。

8、枚舉

枚舉默認值為從0開始遞增的整數(shù),默認類型為int。

可以指定枚舉值,如:typedef enum {INIT, DECODE =2 , IDLE} fsmtype_e;

9、字符串

string用來保存長度可變的字符串,結(jié)尾不帶標識符null

二、過程塊和方法

1、函數(shù)和任務(wù)

參數(shù)的默認值和方向為logic輸入。

允許不帶ref進行數(shù)組參數(shù)的傳遞,這時數(shù)組會被復(fù)制到堆棧區(qū),代價很大。

ref參數(shù)在任務(wù)里可以修改變量而且修改結(jié)果對調(diào)用它的函數(shù)隨時可見。

?

總結(jié)

以上是生活随笔為你收集整理的数字IC验证学习(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。