SV刷题Day 6

197 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路!


image.png

A. 代码存在问题,function非void却没有返回值
B. c代表一个8bit的数组
C. 这个类的定义是正确的
D. 其他都不对

本题答案选C. 但是我觉得其实这个类的定义也不是很严谨,就是这个class niuniu;需要加上分号才对。
new函数是系统预定义函数,不需要void也不需要指定返回值函数会隐式的返回例化后的对象指针

image.png

流操作符 >>,<<的使用很灵活,可以用在等号的右侧,也可以用作等号的左侧。>>表示顺序,数据的高位低位保持不变,<<表示倒序,byte表示按字节倒序,字节内部的数据顺序保持不变

image.png property中可以例化其他property和sequencesequence中也可以调用其他的sequence,但是不能例化property;
只有在property中才能使用蕴含操作符(|->和|=>);sequence不能使用蕴含操作符

image.png data_a = N 表示data_a为高重复N个周期,但不要求连续。
data_a * N 表示data_a连续N个周期为高。
##1 表示下一个时钟周期
##[1:3] 表示1个或者2个或者3个时钟之后 \

  1. 观察下面的代码。请问,disable fork停止的是哪几个线程?
parameter TIME_OUT=1000;
initial begin
    check_trans(tr0);              //线程0
    fork                           //线程1
        begin
            check_trans(tr1);      //线程2
            fork                   //线程3
                check_trans(tr2);  //线程4
            join
            #(TIME_OUT/2) disable fork;
        end
    join
end
A. 0~4
B. 1~4
C. 2~4
D. 34

image.png disable fork 可以停止从当前线程中衍生出来的所有子线程

image.png 驱动器(driver)驱动了待测设计的输入,所以A选项是驱动器的概念。
代理(在VMM中称为事务处理器)接收到来自上层的事务,所以C选项是代理的概念。
断言穿过命令层和信号层,负责监视独立的信号以寻找穿越整个命令的信号变化,所以D选项是断言的概念。
计分板用于预测事物结果

image.png

s_b.tolower() 将 中的字符转换成小写形式并返回该字符串;s_b不会发生变化.
s_a.compare(s_b);将s_a,s_b进行比较,区分大小写
s_a.icompare(s_b);将s_a,s_b进行比较,不区分大小写