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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

sv队列和动态数组的区别_systemverilog学习(4)动态数组

發布時間:2025/3/19 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sv队列和动态数组的区别_systemverilog学习(4)动态数组 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本節主要內容:動態數組,隊列,聯合數組,數組基本操作,結構體類型,枚舉類型

一:動態數組

1:基礎

在run-time才知道元素個數,在compile-time不知道

可以在仿真的時候再確定元素個數

2:表示

data_type name_of_dynamic_array[];

name_of_ dynamic_array = new[number of elements];

實例:int dyn[]; dyn = new[5];dyn.delete();

3:可將固定數組賦值給動態數組,要求是元素個數相同

二:隊列(先進先出)

1:基礎知識

可插入,刪除,sort,search,push,pop,add,remove;可將固定數組或者動態數組賦給隊列

2:表示

data_type queue_name[$] = {..} //隊列賦值時大括號前面不加單引號

實例:int b[$] = {3,4}; //{3,4}

b.insert(1,1); ? //{3,1,4} 在第一個元素后面添加1

b.delete(1);? //{3,4} 刪除元素1

b.push_front(6) ; //{6,3,4}

j = b.pop.back;? //{6,3}, j = 4

三:聯合數組

1:基礎知識

充分利用內存里的離散空間,不連續空間;

索引值可以為整型,字符型,一維數組

2:表示

data_type associative_array_name[*/string]

3:示例

在內存中的存儲

說明:標準數組存儲時,所有的存儲器都用到了;聯合數組使用內存時,稀疏。

4:操作

遍歷(foreach),first,next,prev,delete,exits

四:數組的操作

1:算術運算

sum,product,and,or and xor

例如下面是sum舉例:

說明:on.sum返回on的位數,即一位,即值1(5個1相加取一位);將on.sum賦給位寬為8bit的summ,則返回值5。

2:sort,rsort(反過來排序),reverse,shuffle(打亂排序),find_first,find_first_with_index,unique(得到元素不重復的數組)

//find_index with (item > 3); //元素大于3的索引值

3:sum的擴展用法

//d.sum(x) with ((x>7)*x); //9*9+8*8

五:總結

Fixed Arrays: 在compile time時知道size;連續內存存放,支持多維

Dynamic Arrays:run time時得到size;連續內存;

Queues Arrays:FIFO/Stack

Associative Arrays:離散數據內存,索引可以為數字或者字符串;用于hash

六:結構體

將變量放在一起,比如總線協議放在結構體里;默認是unpacked存放

1:示例

使用:Instruction_Word.address = 24'hF00000;

2:packed存放(加入packed關鍵字)

第一個數據放在內存的左側。

七:枚舉類型

1:表示

enum {red,green.blue} RGB? //red = 0,green = 1,blue = 2

2:枚舉值類型

**顯式指定枚舉值 enum{one = 1, five = 5, ten = 10} state;

**部分顯式指定值

3:枚舉指定類型

enum bit {false,true} Boolean;

enum logic [1:0] {WAITE,LOAD,READY} state;

enum logic [1:0] {

WAITE=3'b001,

LOAD=3'b010,

READY=3'b100} state;? //error;因為枚舉類型是兩位,賦值超過兩位

emum logic {on = 1'b1,OFF=1'bz} out;

總結

以上是生活随笔為你收集整理的sv队列和动态数组的区别_systemverilog学习(4)动态数组的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。