0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何利用SystemVerilog仿真生成随机数

FPGA技术驿站 来源:TeacherGaoFPGAHub 作者:TeacherGaoFPGAHub 2021-10-30 10:33 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

采用SystemVerilog进行仿真则更容易生成随机数,而且对随机数具有更强的可控性。对于随机变量,在SystemVerilog中可通过rand或randc加数据类型的方式定义。rand表明该变量为随机变量,且在指定范围内服从均匀分布;randc是在rand的基础上要求当生成的随机数已经在指定范围内完成一次遍历之后,将重复遍历,c为cyclic(循环)。声明随机变量后,需要通过constraint限定随机数需要满足的条件。这些都需要在class中声明。

案例1:用小于号《 大于号 》 小于等于号 《= 大于等于号》=创建限定条件

代码如下图所示。代码第6行限定了a0必须小于3,第7行限定了a1必须大于2且小于7。注意,这4个关系运算符不能连写,如代码第8行是不合法的。代码第16行对class实例化,代码第20行为class对象分配内存空间并完成class对象的初始化。代码第22行用于判定随机数是否成功生成,若成功则返回1,否则返回0。

32ec4faa-38e3-11ec-82a8-dac502259ad0.png

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    55

    文章

    4567

    浏览量

    138815
  • Verilog
    +关注

    关注

    31

    文章

    1374

    浏览量

    114825
  • System
    +关注

    关注

    0

    文章

    166

    浏览量

    38907
  • 代码
    +关注

    关注

    30

    文章

    4983

    浏览量

    74533

原文标题:SystemVerilog仿真如何生成随机数

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    广东省电动汽车充电桩产品质量监督抽查实施细则(2026年版)

    1抽样方法以随机抽样的方式在被抽样生产者、销售者的待销产品中抽取。随机数一般可使用随机数表等方法产生。每批次产品抽取样品2台,其中1台作为检验样品、1台作为备样样品。2检验依据表1电动汽车交流充电桩
    的头像 发表于 04-22 10:09 2480次阅读
    广东省电动汽车充电桩产品质量监督抽查实施细则(2026年版)

    MPC5746R有真随机数模块(TRNG)吗?

    MPC5746R有真随机数模块(TRNG)吗? 如果有,请给些资料和例程,谢谢! 我的工程里没有使用SDK。
    发表于 04-08 06:20

    硅臻正式推出QRNG全系列量子随机数发生器产品

    信息安全是社会稳定的必要条件,数字时代其重要性更是愈发凸显。无论在经典还是量子加密的过程中,随机数都是安全性的基石。加密密钥由随机数生成,安全性由随机数的不可预测性保证。与伪
    的头像 发表于 03-10 16:24 486次阅读
    硅臻正式推出QRNG全系列量子<b class='flag-5'>随机数</b>发生器产品

    飞凌嵌入式ElfBoard-系统信息与资源之产生随机数

    一、rand rand可在指定范围内生成随机数。1.头文件#include 2.函数原型int rand(void);3.参数无。4.返回值rand() 函数返回一个范围在 0 到 RAND_MAX
    发表于 01-22 08:59

    如何在LTspice仿真中实现伪随机数和真随机数生成

    本文讨论如何在LTspice仿真利用flat()、gauss()和mc()函数来实现伪随机数和真随机数生成,并介绍如何使用设置面板的Ha
    的头像 发表于 01-09 14:08 4946次阅读
    如何在LTspice<b class='flag-5'>仿真</b>中实现伪<b class='flag-5'>随机数</b>和真<b class='flag-5'>随机数</b>的<b class='flag-5'>生成</b>

    德思特应用 | 前沿量子随机数研究:多特蒙德工业大学如何通过高速数字化仪保障信息安全

    在量子信息时代,生成真正随机的数字对加密与安全至关重要。多特蒙德工业大学研究人员利用高速数字化仪对量子随机数生成过程进行多通道采集与分析,成
    的头像 发表于 12-22 17:22 596次阅读
    德思特应用 | 前沿量子<b class='flag-5'>随机数</b>研究:多特蒙德工业大学如何通过高速数字化仪保障信息安全

    如何选择适合的智驾仿真工具进行场景生成和测试?

    在自动驾驶技术日益发展的背景下,选择合适的智驾仿真工具进行场景生成和测试显得尤为重要。该工具不仅需要支持高精度的场景重建,还需满足多种环境条件和传感器模型的兼容性。本文将深入探讨如何评估不同智驾仿真
    的头像 发表于 11-25 10:32 540次阅读
    如何选择适合的智驾<b class='flag-5'>仿真</b>工具进行场景<b class='flag-5'>生成</b>和测试?

    使用NucleiStudio生成tb仿真需要的.verilog文件

    project编译后生成仿真需要的.verilog文件: 1.打开一个工程,右键选择工程名,打开Properties: 2.选择C/C++ Build -&gt;setting,在
    发表于 11-05 07:07

    如何创建一个浮点立即

    在做F指令扩展时,对于一些运算模块,难免得需要进行仿真波形验证,而在这个时候就需要用到生成立即数来进行验证。生成立即的方法跟RV32I指令一样,如下: RISC-V使用I-type
    发表于 10-21 13:51

    ‌基于RNG90的真随机数生成器技术解析与应用指南

    Microchip Technology RNG90 CryptoAuthentication™器件设计用于需要安全随机数发生器的系统。RNG90即用型,无需任何定制。Microchip RNG90
    的头像 发表于 10-10 15:01 935次阅读
    ‌基于RNG90的真<b class='flag-5'>随机数</b><b class='flag-5'>生成</b>器技术解析与应用指南

    凌科芯安LCSHA204安全加密芯片介绍

    验证可移除、可更换或可消耗的客户端是否可信。通过预存共享密钥,主控芯片与加密芯片进行双向认证。主控芯片生成随机数发送至加密芯片,后者通过SHA-256算法生成信息摘要并回传,主控芯片对比本地计算结果一致则判定设备合法。
    的头像 发表于 09-24 10:16 1213次阅读
    凌科芯安LCSHA204安全加密芯片介绍

    如何利用 DDR 参数文件生成 Linux 映像?

    如何利用 DDR 参数文件生成 Linux 映像
    发表于 09-02 06:39

    随机数和伪随机数的区别

    随机数在当前程序运行环境中是一种常用参数,目前主要分为两种,伪随机数和真随机数,本期我们就来讲一下二者的区别。
    的头像 发表于 08-27 17:46 2992次阅读

    生成式 AI 重塑自动驾驶仿真:4D 场景生成技术的突破与实践

    生成式AI驱动的4D场景技术正解决传统方法效率低、覆盖不足等痛点,如何通过NeRF、3D高斯泼溅等技术实现高保真动态建模?高效生成极端天气等长尾场景?本文为您系统梳理AI驱动的4D场景生成体系及其在自动驾驶
    的头像 发表于 08-06 11:20 5487次阅读
    <b class='flag-5'>生成</b>式 AI 重塑自动驾驶<b class='flag-5'>仿真</b>:4D 场景<b class='flag-5'>生成</b>技术的突破与实践

    Onenet云网关方案应用--基于米尔瑞芯微RK3576开发板

    到云端 3. 为了看到数据变化,做了随机数生成,将Electric_val add_ele_val字段用随机数更新,在服务端以便于看到动态效果 4. 云端下发的消息最终按json格式解析后分别调用到对应字段的回调函数中,添加
    发表于 06-06 16:54