Systemverilog中array的记录

1. dynamic arrarys

Dynamic arrary是unpacked array,它的size是在run time时是可以改变的。动态数组的大小是通过new或者assignment来获得的。

2. Associative arrarys

动态数组适用于连续且size动态变化的情况。而关联数组(associative arrarys)可以用于需要存储的数据是分散的。

3. Queue

queue是size可变,并且有order的数组。Index=0表示第一个element,index=$表示最后一个element。在定义时,可以选择queue的最大个数。

对Queeu[$+1]进行读写是可以的,也就queue有这个例外,其它arrary的话,如果没有提前搞好size,直接这样会报错的。

queue的内置方法:

  size()/insert()/delete()/pop_front()/pop_back()/push_front()/push_back()

4. arrary的查询函数

system functions:$left, $right, $low, $high, $increment, $size, $dimensions, and $unpacked_dimensions

5. arrary操作方法

sv提供了几个内建方法,用于对arrary进行searching、ordering和reduction。

1) array locator methods

用于对unpacked array操作,包含find()/find_index()/find_first()/find_first_index()/find_last()/find_last_index()。这几个方法后面必须带有with (xxx)。Min()/max()/unique()/unique()后面的with关键字可以被省略。

2)arrary ordering methods

用于对unpacked array的reorder操作,有reverse()/sort()/rsort()/shuffle()。

3)array reduction methods

用于对unpacked array的操作,有sum()/product()/and()/or()/xor()。

 

SystemVerilog文手册是一本详尽介绍SystemVerilog编程语言的指南。这本手册提供了关于SystemVerilog语法、数据类型、控制流、函数、模块等方方面面的详细解释和示例。无论是初学者还是有一定经验的开发人员,都能从这本手册获得丰富的知识和指导。 SystemVerilog是一种硬件描述语言,被广泛应用于数字电路设计、验证和仿真领域。它在Verilog HDL的基础上扩展了许多新的特性,使得开发人员能够更轻松地实现复杂的数字电路功能。 这本文手册首先介绍了SystemVerilog的基本语法,包括模块定义、端口声明、信号赋值等。然后详细讲解了SystemVerilog的数据类型,如整型、浮点型、数组、结构体等,以及如何进行类型转换和运算。接着介绍了控制流语句,包括条件语句、循环语句和分支语句,以及如何使用宏定义和函数。 此外,手册还介绍了SystemVerilog常见的面向对象编程概念,如类、对象、继承和多态性。这些概念可以帮助开发人员更清晰地组织和管理复杂的设计。 手册还提供了大量的示例代码,让读者能够更好地理解和运用SystemVerilog语言。通过这些示例,读者可以学习如何编写和调试SystemVerilog代码,并能够快速上手实际项目。 综上所述,SystemVerilog文手册是学习和使用SystemVerilog的一本重要参考资料。它适用于各种层次的开发人员,提供了全面而详尽的SystemVerilog语言知识,帮助读者成为一名熟练的SystemVerilog开发人员。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谷公子的藏经阁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值