verilog中关于always语句嵌套task执行顺序和@(posedge clk)执行方式的问题

verilog中关于always语句嵌套task执行顺序和@(posedge clk)执行方式的问题首先明确一个事实 always posedgeclk 中的任务没有执行完的情况下是不会在下一个时钟上升沿到来的时候再次重复执行的再明确另一个事实在前面不带 always 的情况下 posedge 仅会按顺序执行一次 taskshift in output 7 0 shift begin posedgescl shift 7 sda posedgescl shift 6 sda posedgescl shift 5 sda

首先明确一个事实

always@(posedge clk)中的任务没有执行完的情况下是不会在下一个时钟上升沿到来的时候再次重复执行的

再明确另一个事实 在前面不带always的情况下,@(posedge)仅会按顺序执行一次。

task shift_in; output [7:0] shift; begin @ (posedge scl) shift[7] = sda; @ (posedge scl) shift[6] = sda; @ (posedge scl) shift[5] = sda; @ (posedge scl) shift[4] = sda; @ (posedge scl) shift[3] = sda; @ (posedge scl) shift[2] = sda; @ (posedge scl) shift[1] = sda; @ (posedge scl) shift[0] = sda; @ (negedge scl) begin #`timeslice ; out_flag = 1; //应答信号输出 sda_buf = 0; end @(negedge scl) #`timeslice out_flag = 0; end endtask

上段代码中每一次时钟上升沿到来仅会按顺序执行一行。

如果在一个always语句中嵌套如上task的时候,必须等待task执行完,always语句才会执行完,才能敏感下一次时钟信号再次执行always。

而always语句中的task任务会依次等待8次上升沿和一次下降沿后才会执行完。而此期间的时钟变化不会重复执行always语句。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231355.html原文链接:https://javaforall.net

(0)
上一篇 2026年1月16日 上午11:01
下一篇 2026年1月16日 上午11:22


相关推荐

  • Java多线程学习(吐血超详细总结)

    Java多线程学习(吐血超详细总结)本文主要讲了java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。

    2022年5月3日
    40
  • STM32与S3C2440的区别

    STM32与S3C2440的区别在学习嵌入式的路上,我们可能会接触到这两个比较典型的MCU。其中最大的区别就是S3C2440能跑linux操作系统,常常作为学习嵌入式linux的硬件平台。可能大家会问既然S3C2440能跑linux操作系统,似乎比stm32厉害多了,为什么不直接去学习S3C2440呢?下面我就大概解释一下大家遇到的困惑:1.先来说说stm32stm32是ST公司推出的基于Cortex-M3内核的

    2022年4月30日
    62
  • unity中mathf.Lerp的运用

    unity中mathf.Lerp的运用在 unity3d 中经常用线性插值函数 Lerp 来在两者之间插值 两者之间可以是两个材质之间 两个向量之间 两个浮点数之间 两个颜色之间 其函数原型如下 1 Material Lerp 插值 functionLerp start Material end Material t float void 在两个材质之间插值 nbsp 2 Vector2 Lerp 插值 staticfuncti

    2026年3月18日
    2
  • 爆火的OpenClaw,你知道如何高效养龙虾吗?

    爆火的OpenClaw,你知道如何高效养龙虾吗?

    2026年3月14日
    1
  • 前端开发必备站点汇总

    常用前端手册:http://caniuse.com/http://www.w3school.com.cn/http://www.runoob.com/http://www.css88.com/

    2021年12月28日
    44
  • 树莓派能做什么知乎_大家用树莓派做过什么实用些的东西,能否分享一下 ?…「建议收藏」

    树莓派能做什么知乎_大家用树莓派做过什么实用些的东西,能否分享一下 ?…「建议收藏」1.网站服务器在树莓派上搭建了一个博客网站,树莓派就放在家里,常年开机,使用内网穿透技术使得任何地方都可以访问我的博客,节省了服务器费用。虽然树莓派的性能比较差,但是当一个基本的服务器也足够了。树莓派安装lnmp套件搭建个人博客网站服务器|科技爱好者博客​www.lxx1.com2.做了一个广告屏蔽器用树莓派搭建了一个DNS服务器,主要用来屏蔽广告,效果非常不错,家里所有的上网设备都没有广…

    2022年5月1日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号