这个系统函数提供了一个产生随机数的手段,当函数被调用时返回一个32位的随机数。它是一个带符号的整形数。

$random的一般用法:

$random%b,其中b>0。它给出了一个范围在(-b+1)到(b-1)的随机数。

例如:

reg[23:0]rand;

rand = $random%60;

上述例子是产生-59-59之间的随机数;

reg[23:0]rand;

rand = {$random}%60;

上述例子是产生0-59之间的随机数;

module random_pulse(dout);
output reg[9:0] dout;
integer delay1,delay2,k;
initial
begin#10 dout = 0;for(k=0;k<100;k=k+1)begindelay1 = 20*({$random}%6);//delay1的范围0-100delay2 = 20*(1+{$random}%3)//delay2的范围20-60#delay1 dout = 1<<({$random}%10);//dout的0-9位中随机出现1,并且出现的时间在0-100ns间变化#delay dout = 0;//脉冲宽度在20-69间变化end
endendmodule

verilog系统任务之$random相关推荐

  1. System verilog随机系统函数$random使用方法

    1.1 System verilog随机系统函数$random使用方法 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog随机系统函数$rand ...

  2. Verilog初级教程(11)Verilog中的initial块

    文章目录 前言 正文 语法格式 initial块是用来干什么的? initial块何时开始又何时结束? 一个模块中允许有多少个initial块? 参考资料 写在最后 前言 仿真中通常会依次执行一组Ve ...

  3. Verilog——多路选择器逻辑设计

    二选一逻辑 模块fn_sw功能: 当sel为0时y是a和b的与:当sel为1时y是a和b的异或. Verilog代码: 使用assign语句块实现二选一功能 module fn_sw(a,b,sel, ...

  4. Verilog ACC 子程序

    功能特性 ACC 子程序主要完成的功能有: 从内部数据结构中读取特定对象的相关信息 把特定对象的相关信息写入内部数据结构中 ACC 子程序可操作的对象类型有: 模块实例.模块端口.模块的端到端的路径以 ...

  5. Verilog学习笔记——入门

    Verilog学习笔记 01 基本逻辑门代码设计与仿真 Veriog基本逻辑门代码结构--以一位反相器为例 ModelSim仿真基本流程 02 组合逻辑代码设计与仿真--多路选择器 二选一逻辑--as ...

  6. Verilog如何编写一个基础的Testbench

    本文将讲述如何使用Verilog 编写一个基础的测试脚本(testbench). 在考虑一些关键概念之前,先来看看testbench的架构是什么样的.架构包括建模时间.initial块(initial ...

  7. 常用数字设计仿真工具(QuestaSim,VCS,IUS,Verdi等)使用入门

    目录 1. 前言 2. QuestaSim基本使用方法 2.1 命令行编译 2.2 命令行运行 2.3 启动GUI进行仿真 2.4 从GUI中进行编译运行 2.5 dump波形 2.6 指定随机种子 ...

  8. linux环境下vcs+verdi/Questa软件的使用

    文章目录 前言 一.vcs编译过程 二.vcs常用指令 1.常用 (1)编译文件 (2)debug选项 (3)目录 (4)使用verdi时需要在vcs里面添加的编译选项 (5)仿真选项(加在sim里面 ...

  9. FPGA的设计艺术(17)如何搭建一个简易的逻辑测试平台?

    前言 提到FPGA逻辑的仿真,一般指的是行为仿真或者功能仿真,还有人会称为前仿,不包含时间延迟信息,只验证逻辑功能.对于小模块的仿真,需要写一个测试文件,英文是testbench,即测试平台.在tes ...

最新文章

  1. 转载 Sqlerver 计算 MD5
  2. 三篇ISME讨论‘1%的微生物可培养’
  3. Jeff Dean亲自揭秘谷歌下一代AI架构:通用、稀疏且高效,网友不买帐:毫无新意...
  4. python入门经典例题-Python入门练习题(适合Python初学者做的练习题)
  5. tomcat的部署及session绑定反代
  6. js中表单验证常用到的正则表达式
  7. OSS全球传输加速开启公测,助力企业业务全地域覆盖...
  8. 配置Vlan访问控制
  9. Datawhale组队-Pandas(下)分类数据(打卡)
  10. centos 7 下 rabbitmq 3.8.0 erlang 22.1 源码编译安装
  11. vscode remote ssh_win10 下安装Vscode
  12. ubuntu 下安装ibus 中文输入法
  13. 编译原理-语法分析详解
  14. Linux下软连接(softlink)和硬连接(hardlink)的区别
  15. 实现网站访问人数统计
  16. 海航科技集团旗下易建科技构建双活云化架构 为电商保驾护航
  17. Java是什么?我们为什么要学习Java?
  18. mysql 时间盲注语句,sql注入学习记录(5)-基于时间延迟的SQL盲注
  19. [附源码]java毕业设计水库水面漂浮物WEB系统
  20. 万拓存储数字校园存储解决方案

热门文章

  1. html导航怎么跟着往下滚动,javascript,html_导航要跟着鼠标滚动向下滚动,用了jquery插件但是报错,请问大牛是什么原因?,javascript,html - phpStudy...
  2. 删掉m为后剩余的数组成的数最小
  3. vector java 复制_Java性能优化必知的40个细节(珍藏版):Jvm调优+MySQL+Tomcat
  4. 腾讯校园招聘笔试 2019-8-17 第三题
  5. 2019蓝桥杯A组:平方和(枚举,筛选)
  6. UnityShader14:透明效果实现(上)
  7. Wannafly挑战赛28: B. msc和mcc(思维)
  8. bzoj 3377: [Usaco2004 Open]The Cow Lineup 奶牛序列
  9. 2017百度之星资格赛:1005. 寻找母串(卡特兰数+分块打表)
  10. [Python] 字典 vars()函数:以字典类型提取对象的属性和属性值