![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
systemverilog
小白蒋博客
这个作者很懒,什么都没留下…
展开
-
systemverilog中random用法-有符号数和无符号数-四值逻辑
作者:小白蒋所有的努力都是为了做个小白,单纯且快乐~本文内容一、系统函数`$random`二、系统函数`$random`的用法1、$random % b2、{$random} % b三、有符号数和无符号数、四值逻辑一、系统函数$random产生随机数,当函数被调用时,返回一个32位的随机数;二、系统函数$random的用法1、$random % b$random % b,其中b > 0,它给出了一个范围在 -b+1 ~ b-1中的随机数。代码演示:random_exercise.sv原创 2020-07-24 17:41:24 · 6880 阅读 · 0 评论 -
systemverilog中静态变量、local和protected的区别、多态virtual的理解及代码演示
作者:小白蒋所有的努力都是为了做个小白,单纯且快乐~本文内容1、静态变量static的含义2、local和protected的区别3、多态、virtual的理解及代码演示1、静态变量static的含义关键词:static,代码static int count=0;就是把count变成实参,可以全局调用;跟形参不一样,不会用完就释放掉;2、local和protected的区别(1)local就是本地变量,代码local int DONE,比如在父类中定义DONE,那么在子类中就不能调用DONE;原创 2020-07-22 16:09:40 · 8403 阅读 · 1 评论 -
systemverilog中浅复制和深复制copy的理解以及代码演示
作者:小白蒋刚开始接触,如果不对之处,恳请交流指正;浅复制和深复制:浅复制就是另外开辟内存空间,复制一样的东西,但是里面嵌套的不会开辟内存,只是用句柄指向;// shallow copyBusT b1,b2;b1 = new;b2 = new b1;深复制,就是完全复制,开辟内存空间,完全复制过来,包括嵌套的一层,深复制需要自己写copy;深复制代码演示:copy_eample.svprogram class_t; class A; integer j; endclass原创 2020-07-22 13:50:09 · 2275 阅读 · 1 评论 -
systemverilog中task和function的解释以及引用(reference)的理解
作者:小白蒋,本人刚开始学习,如果错误,大家留言交流task和function区别:1、function不消耗仿真时间:也就是不能有仿真时间延迟(#100)、不能有阻塞语句(@posedge clock)或者wait(ready)、不能有事件event,不能调用task,task可以消耗仿真时间;2、void function没有返回值(output和inout形式参数可以为void function提供了传递变量的途径),Verilog function必须要有一个返回值;注意点:使用引用(ref原创 2020-07-20 21:48:17 · 5604 阅读 · 0 评论