采用SystemVerilog進(jìn)行仿真則更容易生成隨機(jī)數(shù),而且對(duì)隨機(jī)數(shù)具有更強(qiáng)的可控性。對(duì)于隨機(jī)變量,在SystemVerilog中可通過(guò)rand或randc加數(shù)據(jù)類(lèi)型的方式定義。rand表明該變量為隨機(jī)變量,且在指定范圍內(nèi)服從均勻分布;randc是在rand的基礎(chǔ)上要求當(dāng)生成的隨機(jī)數(shù)已經(jīng)在指定范圍內(nèi)完成一次遍歷之后,將重復(fù)遍歷,c為cyclic(循環(huán))。聲明隨機(jī)變量后,需要通過(guò)constraint限定隨機(jī)數(shù)需要滿足的條件。這些都需要在class中聲明。
案例1:用小于號(hào)《 大于號(hào) 》 小于等于號(hào) 《= 大于等于號(hào)》=創(chuàng)建限定條件
代碼如下圖所示。代碼第6行限定了a0必須小于3,第7行限定了a1必須大于2且小于7。注意,這4個(gè)關(guān)系運(yùn)算符不能連寫(xiě),如代碼第8行是不合法的。代碼第16行對(duì)class實(shí)例化,代碼第20行為class對(duì)象分配內(nèi)存空間并完成class對(duì)象的初始化。代碼第22行用于判定隨機(jī)數(shù)是否成功生成,若成功則返回1,否則返回0。
編輯:jq
-
仿真
+關(guān)注
關(guān)注
51文章
4206瀏覽量
135024 -
Verilog
+關(guān)注
關(guān)注
28文章
1363瀏覽量
111382 -
System
+關(guān)注
關(guān)注
0文章
165瀏覽量
37479 -
代碼
+關(guān)注
關(guān)注
30文章
4876瀏覽量
69956
原文標(biāo)題:SystemVerilog仿真如何生成隨機(jī)數(shù)
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
labview輸出不重復(fù)隨機(jī)數(shù)
labview怎么輸出不重復(fù)的整數(shù)隨機(jī)數(shù)
“Quantum Origin”成首個(gè)獲NIST驗(yàn)證的軟件量子隨機(jī)數(shù)生成器
是否可以輸入隨機(jī)數(shù)據(jù)集來(lái)生成INT8訓(xùn)練后量化模型?
開(kāi)源隨機(jī)數(shù)生成器庫(kù)OpenRNG助力實(shí)現(xiàn)移植到Arm平臺(tái)時(shí)的最佳性能

《DNESP32S3使用指南-IDF版_V1.6》第三十一章 RNG實(shí)驗(yàn)
淺談加密芯片的一種破解方法和對(duì)應(yīng)加密方案改進(jìn)設(shè)計(jì)
“安徽造”量子隨機(jī)數(shù)芯片通過(guò)國(guó)家密碼管理局檢測(cè)
問(wèn)天量子和方寸微電子聯(lián)合發(fā)布量子隨機(jī)數(shù)芯片
對(duì)稱(chēng)加密技術(shù)有哪些常見(jiàn)的安全漏洞?
LuatOS開(kāi)發(fā)之4G模組隨機(jī)數(shù)(random)|實(shí)戰(zhàn)指南

解析Air780E模組LuatOS開(kāi)發(fā)的隨機(jī)數(shù)(random) 示例篇

藍(lán)牙AES+RNG如何保障物聯(lián)網(wǎng)信息安全
雅特力AT32 MCU的隨機(jī)數(shù)生成

如何在FPGA中實(shí)現(xiàn)隨機(jī)數(shù)發(fā)生器

評(píng)論