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

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

3天内不再提示

Verilog的两种块语句解析

FPGA之家 来源:FPGA探索者 作者:FPGA探索者 2021-06-18 15:16 次阅读

1. 块语句有两种,一种是 begin-end 语句, 通常用来标志()执行的语句;一种是 fork-join 语句,通常用来标志()执行的语句。

答案:顺序,并行

解析:

(1)begin_end顺序块,用于将多条语句组成顺序块,语句按顺序一条一条执行(除了带有内嵌延迟控制的非阻塞赋值语句),每条语句的延迟时间是相对于由上一条语句的仿真时间而言;

(2)fork-join并行块,块内语句同时执行。

2. 块语句,下面这段语句中,第 40 时刻上,A、B 的值各是多少?

reg A;reg B;initial begin fork begin A = 1; #20 A = 0; #30 A = 1; #50 A = 0; end begin B = 1; #20 B = 0; #30 B = 1; #50 B = 0; end joinend

答案:A = 0,B = 0

解析:

块语句有两种,begin...end 和 fork...join,其中 fork...join 是并行块,begin...end 是顺序执行块,可以相互嵌套。

上面,两个 begin...end 之间是并行的,而各自 begin...end 内部是顺序执行,A 和 B 的赋值逻辑是一样的,所以要么都是 1,要么都是 0。

按照顺序执行,A 前 20 个时间单位是 1,然后持续 30 个时间单位的 0,所以 40 时刻是 0,同理 B 也是 0。

原文标题:Verilog 的块语句 fork...join 和 begin...end

文章出处:【微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

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

    关注

    28

    文章

    1327

    浏览量

    109312
  • 语句表
    +关注

    关注

    0

    文章

    8

    浏览量

    7160

原文标题:Verilog 的块语句 fork...join 和 begin...end

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    变频器的两种无速度传感器矢量控制模式有什么区别?

    在变频器控制模式中,有无速度矢量传感器模式,该模式又分为两种,无感矢量0和无感矢量1,这两种模式的本质原理是什么?对变频器的控制电机性能和系统稳定性响应什么的有什么影响?具体应用上哪种方式更好一点,或者而言这两种模式的优缺点是什
    发表于 02-22 21:45

    assign语句和always语句的用法

    Assign语句和Always语句是在硬件描述语言(HDL)中常用的两种语句,用于对数字电路建模和设计。Assign语句用于连续赋值,而Al
    的头像 发表于 02-22 16:24 492次阅读

    使用两种不同的数字签名对用户应用程序进行签名是否适用?

    我想问一下使用两种不同的数字签名对用户应用程序进行签名是否适用,安全映像将
    发表于 01-18 10:43

    AD9269数字输出电平只能是1.8V和3.3V两种吗?

    请问:AD9269数字输出电平只能是1.8V和3.3V两种吗?
    发表于 12-22 07:43

    oracle执行sql查询语句的步骤是什么

    Oracle数据库是一种常用的关系型数据库管理系统,具有强大的SQL查询功能。Oracle执行SQL查询语句的步骤包括编写SQL语句解析SQL语句、生成执行计划、执行SQL
    的头像 发表于 12-06 10:49 417次阅读

    考虑x和z在verilog条件语句中的使用情况

    首先,考虑x和z在verilog条件语句中的使用情况,然后我们再考虑在verilog中用x和z给其他reg/wire赋值的情况。
    的头像 发表于 11-02 09:40 627次阅读
    考虑x和z在<b class='flag-5'>verilog</b>条件<b class='flag-5'>语句</b>中的使用情况

    常见的ARM架构分为两种是M系列另外一是A系列,这两种有什么区别啊?

    现在市面上常见的ARM架构分为两种是M系列另外一是A系列,这两种有什么区别啊,用的时候他们一般分别用在什么地方啊。
    发表于 10-26 07:00

    verilog语句中,非阻塞赋值和小于等于均使用符号“<=”,如何区分<=所表示的含义?

    )中,\"<=\"作为非阻塞赋值的一部分。 verilog中,一个语法结构不可能同时允许“表达式”和“语句”, 如果某处可以出现表达式,那么就不允许出现语句; 如果
    发表于 08-08 09:32

    【每日一练】参与FPGA技术社区每日学习,轻松掌握Verilog语法!

    活动介绍: 每日一练活动主要针对 Verilog 入门常用语法及常用技巧的练习,30个关于语法练习的题目,每天更新一个题目及公布前一天的参考答案及相关解析 活动规则: 每日一练活动结束后,根据参与
    发表于 08-01 10:37

    条件语句/循环语句simulink的实现方法(一)

    条件语句和循环语句是计算机编程中常用的两种控制结构
    的头像 发表于 07-21 16:48 6528次阅读
    条件<b class='flag-5'>语句</b>/循环<b class='flag-5'>语句</b>simulink的实现方法(一)

    Verilog常用的循环语句及用途

    本文主要介绍verilog常用的循环语句,循环语句的用途,主要是可以多次执行相同的代码或逻辑。
    的头像 发表于 05-12 18:26 1251次阅读

    如何使用参数化编写可重用的verilog代码

    ,因为我们可以更轻松地将代码从一个设计移植到另一个设计。 我们在verilog中有两个可用的结构,可以帮助我们编写可重用的代码 - 参数化和generate语句。这两种结构都允许我们创建更通用的代码,当我们实例化组件时,我
    的头像 发表于 05-11 15:59 714次阅读

    Verilog中的If语句和case语句介绍

    我们在上一篇文章中已经看到了如何使用程序块(例如 always 块来编写按顺序执行的 verilog 代码。 我们还可以在程序块中使用许多语句来控制在我们的verilog设计中信号赋值的方式
    的头像 发表于 05-11 15:37 3140次阅读
    <b class='flag-5'>Verilog</b>中的If<b class='flag-5'>语句</b>和case<b class='flag-5'>语句</b>介绍

    请问无线局域网的两种网络结构分别是什么呢?

    请问无线局域网的两种网络结构分别是什么呢?
    发表于 05-09 16:27

    请问一下无线局域网的两种网络结构是什么?

    请问一下无线局域网的两种网络结构是什么?
    发表于 05-09 16:22