使用forever和always语句

2023-12-26

以下两个代码都会生成一个时钟。我需要知道除了时钟生成之外,永远循环是否还有其他用途?我只在时钟一代中遇到过永远。如果只是为了这个目的,那岂不是毫无用处?

initial begin
clk = 0;
forever begin
#5 clk = ~clk;
end
end

initial begin
clk = 0 ;
always begin 
# 5 clk = ~clk;
end
end

你的第二个代码片段实际上是一个语法错误。和...之间的不同forever and always就是它always可以作为“模块项”存在,这是 Verilog 规范为可以直接编写在模块内而不包含在某些其他构造中的构造提供的名称。initial也是一个模块项。always块被重复,而initial块在模拟开始时运行一次。

forever是一个只能在程序上下文中使用的程序语句。所以这样写是合法的initial forever or always forever,但不仅仅是forever.

情况在哪里forever在任务中变得非常重要,任务是程序上下文,因此使用always不允许。 (函数也是程序上下文,但可能不包含延迟,这使得不太可能forever会派上用场的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用forever和always语句 的相关文章

  • [从零开始学习FPGA编程-24]:进阶篇 - 基本组合电路-编码器与译码器(Verilog语言)

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 125247358 目录 前言 Veri
  • [从零开始学习FPGA编程-38]:进阶篇 -语法-函数与任务

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 目录 前言 第1章 什么是函数Function 1 1 什么是函数 1 2 函
  • 在verilog中使用for循环生成

    我试图理解为什么我们在verilog 中使用generate 和for 循环 一起使用生成和 for 循环 reg 3 0 temp genvar i generate for i 0 i lt 3 i i 1 begin always p
  • Spartan-3E 上的随机数生成

    我需要在 Spartan 3E FPGA 上为我的遗传算法生成伪随机数 并且我想在 verilog 中实现它 您能给我任何关于此的指示吗 当然 Adam 的随机生成器是不可合成的 您必须显式创建一个LFSR 以下示例可能会有所帮助 它是一个
  • Quartus Prime 中的“多个常量驱动程序”Verilog 错误

    我正在致力于用 Verilog 设计一个有限状态机来表示堆栈 该模块如下 module state machine s Enable Clock Resetn c OF Err UF Err input 2 0 s input Enable
  • [Verilog] Verilog 基本格式和语法

    主页 元存储博客 全文 3000 字 文章目录 1 声明格式 1 1 模块声明 1 2 输入输出声明 1 3 内部信号声明 1 4 内部逻辑声明
  • 「Verilog学习笔记」游戏机计费程序

    专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点 刷题网站用的是牛客网 timescale 1ns 1ns module game count input rst n 异位复位信号 低电平有效 input clk 时
  • 为什么这个 verilog 关系语句返回 true?

    我有一条名为 sin hall2 的 9 位签名线 该语句返回 true sin hall2 8 0 gt 9 d1 当我查看模拟时 sin hall2 169 我假设这是 verilog 处理比较负数的方式 但我做错了什么 当我执行 si
  • 如何在verilog中逐行读取文本文件?

    我有一个 SREC 文件 它是一个简单的文本文件 我想在 verilog 中逐行读取它 我怎样才能做到这一点 以下读取文件 每个时钟周期 1 行 预期的数据格式是每行一个十进制数 integer data file file handler
  • 修改后的 baugh-wooley 算法乘法 verilog 代码不能正确乘法

    以下 verilog 源代码和 或测试平台可以很好地工作商业模拟器 iverilog https www edaplayground com x 3TuQ也形式化验证工具 yosys smtbmc https gist github com
  • 在逻辑中使用单端端口期待差异对?

    我使用的逻辑被设置为需要一个差分对时钟端口 然而 对于一个特定的应用程序 我只能输入一个单端时钟 由于硬件限制 修改逻辑以接受单端时钟不是一种选择 因为涉及许多文件和代码行 有没有办法可以输入单端端口并以某种方式将其馈送到模块的差异对端口
  • 如何获取值数组作为 plusargs?

    如何获取值数组作为参数 我需要从命令行获取一组未定义大小的命令 如何将这些参数放入数组或队列中 Eg CMDS READ WRITE READ N WRITE 它应该被带到一个数组中 value plusargs不支持数组 但支持字符串 看
  • if 语句导致 Verilog 中的锁存推断?

    我正在编写用于合成算法的 Verilog 代码 我对哪些情况可能导致推断锁存器有点困惑 下面是这样的一段代码 虽然它在模拟中工作得很好 但我担心它可能会导致硬件问题 always b1 or b2 b1 map b2 map m1 map
  • 如何将时钟门映射到技术库单元

    我的设计中有以下时钟门 module my clkgate clko clki ena Clock gating latch triggered on the rising clki edge input clki input ena ou
  • 如何在 Verilog 中综合 While 循环?

    我尝试设计一个 Booth 乘法器 它在所有编译器中运行良好 包括 Modelsim Verilogger Extreme Aldec Active Hdl 和 Xilinx Isim 我知道模拟和综合是两个不同的过程 而且只有少数Veri
  • 始终块中的 Veriloggenerate/genvar

    我试图让一个模块通过 ISE 12 4 中的语法检查 但它给了我一个我不明白的错误 首先是代码片段 parameter ROWBITS 4 reg ROWBITS 1 0 temp genvar c generate always pose
  • 对象 <名称> 未声明

    这是我的代码 据我所知 LEDs被定义为 module sevenseg LEDs in output reg 6 0 LEDs input 3 0 in always in begin case in 0 LEDs 7 b1000000
  • Verilog 中的 If 语句和分配连线

    我试图弄清楚基于组合逻辑分配电线的基础知识 I have wire val wire x wire a wire b always begin if val 00 I want to assign x a if val 01 I want
  • verilog 中的案例陈述

    我遇到了优先级编码器设计 并找到了一种使用 case 语句来实现它的新方法 唯一令人困惑的是 case语句是否优先考虑case 例子 case 1 b1 A 3 Y lt 4 b1000 A 2 Y lt 4 b0100 A 1 Y lt
  • 系统 verilog 中没有类型的输入

    我在一个系统 verilog 代码的输入和输出的示例中遇到过module没有说明它们的类型 例如logic wire module mat to stream input 2 0 2 0 2 0 a b input newdata inpu

随机推荐

  • 如何将 uint256 变量转换为 int256 变量?

    我试图打印uint timeStamp通过输入return timeStamp 就在下面return price 从这段代码 pragma solidity 0 6 7 import chainlink contracts src v0 6
  • 如何为 Spring Web Flow 定义自定义消息源?

    spring webflow 文档提到 他们将消息添加到流的方法是在流内的文件 messages properties 中定义与该流相关的所有消息 国际化消息在 Spring MessageSource 访问的消息束中定义 要创建特定于流的
  • 在 Java 中确定运行时的 AWS lambda 名称

    我真的很喜欢从 Java 中调用 AWS lambdas 的方法这篇博文 https java awsblog com post Tx2J2LPKTTVU93H Invoking AWS Lambda Functions from Java
  • 字符串操作没有内存泄漏?

    我想进行一系列字符串替换来删除 xml 转义字符 例如 amp 1 是否有现有的 UIKit 函数可以做到这一点 2 如果没有 在不泄漏内存的情况下最好的方法是什么 想法是这样的 NSString unescape NSString str
  • 如何在 contenteditable 元素中使用 ngControl?

    我该如何使用ngControl in contenteditable元素 例如 我想要 td td 通过绑定 将其绑定到模型驱动的 表单 表 我创造了他formBuilder基于模式 从服务器检索 目前我认为这不起作用 因为 td 和其他
  • htmltextwriter 和跨站点脚本

    只是一个简单的问题 我被要求浏览一个 vb 应用程序并修复所有可能发生跨站点脚本的地方 我将 是的 它确实可以保护您在写入 HTML 文档时免受 XSS 侵害 但是HtmlTextWriter WriteEncodedText https
  • C# Func(T) 不接受 ref 类型输入参数

    Can Func lt gt 接受 C 中通过引用传递的参数 static void Main Func
  • Heroku:ModuleNotFoundError:没有名为“请求”的模块

    我正在尝试将 Django 程序部署到 Heroku 该应用程序在我的本地计算机上成功运行 该计算机使用 Anaconda 和 Python 3 5 我无法让它推送到 Heroku 根据命令 gt git push heroku maste
  • 使用多设备混合应用程序构建 Visual Studio Cordova 应用程序时发生错误

    我收到 3 个致命错误 我也安装了android SDK 19 有任何想法吗 An error occurred while listing Android targets C Project AngularJS ToDo Sample f
  • 不是 JAX-WS 中的有效服务异常

    我正在参考http www mkyong com webservices jax ws jax ws hello world example http www mkyong com webservices jax ws jax ws hel
  • 使用 sqlplus 命令行隐藏纯文本密码

    我希望使用 sqlplus 命令 并在视图中隐藏密码 这样它就不会显示在 ps ef 命令中 我知道互联网博客上提供了很多解决方案 但大多数似乎都需要管理员权限 并且我对此服务器的访问受到限制 其余的似乎对我不起作用 我当前使用的命令如下
  • 在附加到 Refit 客户端的 Polly 策略中使用 ILogger

    我一直在尝试遵循以下指示这篇博文 https www stevejgordon co uk passing an ilogger to polly policies将 ILogger 传递到我的重试策略 以便记录有关重试错误的信息 博客中的
  • ember-data 作为 d3 的数据

    我想使用我的 emberdata 作为在 d3 中创建对象的数据 我尝试将控制器模型中的项目转换为新的 javascript 对象 并将这个新数组提供给 d3 数据 这是代码 App GraphicsView Ember View exte
  • smart-table - 如何重置过滤器集合?

    Angular 和智能表新手 此智能表设置可以正常工作并正确过滤 但尝试重置或清除过滤器不会重新过滤表 为什么不 使用 ng model 绑定更新输入是否不会触发 smart table 正在寻找的监视 Plunker 可以在这里找到 ht
  • h1 和跨度

    在我的 html 中使用 h1 h6 标签时 我不断收到 w3c 验证器上的错误消息 我对此很陌生 我已经尝试了很多次来解决这个问题 但我不能 该文本在我的网站上显示得很好 但无法验证 我该如何解决这个问题 错误信息如下 第 34 行 第
  • 如何在CodeIgniter中获取表的最后一条记录?

    如何在Codeigniter中获取表的最后一条记录 我的表名称是 post 我想获取该表中最后一条记录的最后一个 id 或下一个 id recommended don t use from getting rows insted of pl
  • 如何使用 Web API 2 + AspNet Identity 2 扩展 IdentityRole

    我正在尝试扩展最新版本的 Visual Studio 2013 中的 Web API 2 包含个人帐户 模板中提供的 AspNet IdentityRole 类 当我点击 api roles 时 它返回一个空数组 身份模型 namespac
  • python 中不可散列对象的集合

    有没有相当于python的东西set对于不可散列的对象 例如可以相互比较但不能散列的自定义类 如果你的值不可散列 那么就有no point在使用set 只需使用一个list反而 如果您的所有对象所能做的就是测试相等性 那么您必须扫描每个元素
  • WC_Checkout 挂钩中订单行项目和订单元之间的差异

    我正在创建一个正在使用的插件woocommerce checkout update order meta用于添加订单项元数据的钩子 我有一个插件叫WooCommerce TM 额外产品选项安装 这个插件使用woocommerce check
  • 使用forever和always语句

    以下两个代码都会生成一个时钟 我需要知道除了时钟生成之外 永远循环是否还有其他用途 我只在时钟一代中遇到过永远 如果只是为了这个目的 那岂不是毫无用处 initial begin clk 0 forever begin 5 clk clk