使用SystemVerilog進行模擬更容易生成隨機數,對隨機數的可控性更強。對于隨機變量,可以在SystemVerilog中用rand或randc plus數據類型定義。Rand表示變量是隨機變量,在指定范圍內服從均勻分布。在rand的基礎上,randc要求當生成的隨機數在指定范圍內完成一次遍歷時,它會重復遍歷,C是循環的。聲明隨機變量后,需要通過約束來限制隨機數需要滿足的條件。這些都需要在類中聲明。
案例1:創建小于數字《大于號》小于或等于數字《= 大于等于號》=
代碼如下圖所示。代碼的第6行定義a0必須小于3,第7行定義a1必須大于2且小于7。請注意,這四個關系運算符不能連接在一起。例如,代碼的第8行是非法的。第16行代碼實例化類,第20行代碼為類對象分配內存空間,完成類對象的初始化。代碼的第22行用來判斷隨機數是否生成成功,如果生成成功則返回1;否則,它將返回0。