Verilog中#的使用与理解

这篇具有很好参考价值的文章主要介绍了Verilog中#的使用与理解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

我在verilog中test_bench中遇到这样的问题,记录一下。

timescale 1ns / 1ps

基本知识:1ns=1000ps
含义为:时延单位为1ns,时延精度为1ps。

简而言之,前面是总时间,后面是每个单元的时间间隔。

#的使用

#是延时的意思,跟timescale中的时延单位有关。

`timescale 1ns / 1ps

module top_add5_tb(

    );
	reg				a=0;
	reg				b=0;
	
	wire			c;
	top_add5 top_add5_inst(
		.a(a),
		.b(b),
		.c(c)
    );
	
	initial	begin
		a=0;
		b=0;
		#1
		a=0;
		b=1;
		#1
		a=1;
		b=1;
		#1
		a=1;
		b=0;
		#10;
		$stop;
	end
endmodule

这里的#1就是时延1ns,跟timescale后面之前的数字单位保持一致。文章来源地址https://www.toymoban.com/news/detail-506339.html

到了这里,关于Verilog中#的使用与理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 记录我在stable diffusion中遇到的坑

    纯python新人,跟着教程走,主要参考的是知乎的这篇:https://zhuanlan.zhihu.com/p/626006585,但是在安装gfpgan的时候,还是遇到了这个bug,报错如下: 试过以下几种方法都没能解决: 回退版本 https改http 科学上网 使用国内代理 手动安装,我的stable diffusion 放在d盘,所以我的安装命

    2024年02月12日
    浏览(24)
  • 如何使用Verilog生成随机数

    输入:时钟信号,复位信号,重新加载信号,种子 输出:随机数 输入一个种子32位,输出16位随机数;选取时钟,复位,重新加载种子。 // 使用32个逻辑单元用于D触发器/加法器和8个DSP块用于32x18=32位乘法 module c_rand (   input clk,         // 时钟输入   input rst,        

    2024年02月03日
    浏览(30)
  • Verilog inout 端口使用和仿真

    inout端口是Verilog中一种特殊的端口类型,它可以实现双向的数据传输,既可以作为输入,也可以作为输出。inout端口通常用于实现管脚复用、三态缓冲器、总线驱动等功能。inout端口的使用需要注意以下几个方面: inout端口必须声明为wire类型,不能声明为reg类型,因为reg类型

    2024年04月14日
    浏览(20)
  • verilog实例-近期最少使用算法(LRU)

    LRU算法 用于cache管理或任何其他需要对访问权进行周期更新的场合。 基于时间和空间考虑,cache中存储着近期将会用到的数据项。当cache被用满后,如果有新的数据项到来,需要将某个现有的数据项从cache中清除,为新进入者提供空间。此时通常使用的算法被称为LRU(Least Rece

    2024年02月08日
    浏览(41)
  • Verilog中的`define与`if的使用

    一部分代码可能有时候用,有时候不用,为了避免全部编译占用资源,可以使用条件编译语句。 语法          条件编译可以通过Verilog的  `ifdef 和 `ifndef 来实现。 这些可以出现在设计中的任何地方,并且可以相互嵌套。  它通常和预编译指令`define配套使

    2024年02月16日
    浏览(23)
  • Verilog基础:task和function的使用(二)

    相关文章 Verilog基础专栏 https://blog.csdn.net/weixin_45791458/category_12263729.html 目录 4.function的声明和调用 4.1 function的声明 4.2 function的返回值 4.3 function的调用 4.4 function的规则 4.5 常数函数 4.function的声明和调用         function的用途就是返回一个值,然后把他用在表达式中(即作为

    2024年02月08日
    浏览(24)
  • Verilog基础:task和function的使用(一)

    相关文章 Verilog基础专栏 https://blog.csdn.net/weixin_45791458/category_12263729.html 目录 1. 前言 2. task和function之间的不同点 3. task的声明和使能 3.1 task的声明 3.2 task的使能和参数传递 3.3 task的内存使用和并发进程          任务(task)和函数(function)即提供了从不同位置执行公共过程

    2024年02月05日
    浏览(28)
  • Verilog实现FPGA倍频:使用第二种方法

    Verilog实现FPGA倍频:使用第二种方法 在FPGA设计中,时钟频率的提高是一个重要的问题。为了解决这个问题,我们可以使用FPGA的PLL模块来实现倍频,将原本的低频时钟转换成更高的时钟频率。在Verilog语言中,有两种方法可以实现倍频,本篇文章将会介绍使用第二种方法实现倍

    2024年02月08日
    浏览(34)
  • Verilog基础:避免混合使用阻塞和非阻塞赋值

    相关阅读 Verilog基础 https://blog.csdn.net/weixin_45791458/category_12263729.html?spm=1001.2014.3001.5482         “避免在一个always块中混杂阻塞赋值和非阻塞赋值”,这条原则是著名的Verilog专家Cliff Cummings在论文SUNG2000中提出的,这个观点在公众讨论时受到了广泛的质疑。有人认为可以在时钟

    2024年02月05日
    浏览(32)
  • MATLAB生成Verilog代码——HDL Coder使用初探

    有关用HDL Coder生成Verilog的资料实在太少,且大多是由Simulink搭建模块生成。笔者经过初步探索,将MATLAB代码直接通过HDL Coder生成Verilog代码的过程总结于此。 以一个最大值为15可加减计数器为例 在MATLAB上方的APP里找到HDL Coder,HDL Coder需要MATLAB Function和MATLAB Testbench两个文件,第

    2024年02月06日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包