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

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

3天内不再提示

简述阻塞赋值和非阻塞赋值的可综合性

电子工程师 来源:FPGA设计论坛 作者:FPGA设计论坛 2021-05-12 09:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

阻塞赋值和非阻塞赋值的可综合性

Blocking Assignment阻塞赋值和NonBlocking Assignment非阻塞赋值,原本是软件进程管理的术语。由于Verilog团队是从C语言发展,所以基于的C的术语和概念出现在EDA中,原本是一个“误打误撞”,但历史造成的现实则是:必须理解和正确掌握它们的用法。

软件中阻塞进程,是指调用返回之前,应用进程一直等待:

395df0f8-b2a3-11eb-bf61-12bb97331649.png

为了保证应用进程的效率,不至于被子程序的运算过程“挂起”。非阻塞进程得到应用:

3968d040-b2a3-11eb-bf61-12bb97331649.png

在非阻塞赋值进程中,无论子程序是否返回,不影响应用进程的正常运行。C语言的阻塞和非阻塞概念被Verilog团队引用,Verilog的阻塞赋值:

39747fe4-b2a3-11eb-bf61-12bb97331649.png

Verilog的非阻塞赋值:

3984bb34-b2a3-11eb-bf61-12bb97331649.png

关于阻塞和非阻塞争议中,有一个辩论双方都引用的电路模型:反馈震荡器:

398e8ede-b2a3-11eb-bf61-12bb97331649.png

其中,复位信号rst_n初始化RA(a)为0, RB(b)为1。观察其物理连接,在时钟沿作用下,两个寄存器将互相交换数据。(同时交换)

为以上电路模型进行验证,在循环行为体并分别使用阻塞赋值和非阻塞赋值。并验证其前仿和后仿,观察对比真实性。

应该得到的结论:

使用阻塞赋值:前仿不真实(没有发生两个寄存器的交换),后仿真实(发生交换)

使用非阻塞赋值:前仿真实(交换),后仿真实(交换)

基于以上结论:

“倒阻派”认为,没有使用阻塞赋值的必要,必须在行为语句赋值中全部使用非阻塞。

“挺阻派”认为,基于电平敏感赋值用阻塞,沿敏感赋值用非阻塞,阻塞语句是必要的。

2000年以后,进入从“综合为王”进入“验证为王”的时代。同样的Verilog代码需要回到电脑中,用于非综合目的。验证代码中的赋值驱动与软件编写概念相同,带来非常大的便利。这就是“阻塞”赋值的反转。

编辑:jq

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

    关注

    0

    文章

    11

    浏览量

    10136
  • 阻塞
    +关注

    关注

    0

    文章

    24

    浏览量

    8468

原文标题:FPGA学习:阻塞赋值和非阻塞赋值的可综合性

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    合肥综合性国家科学中心人工智能研究院与大华股份达成战略合作

    近日,合肥综合性国家科学中心人工智能研究院(以下简称“人工智能研究院”)与大华股份“IAI-Dahua视频物联智能体联合实验室”签约及揭牌仪隆重举行。中国科学技术大学党委常委、副校长、中国工程院院士
    的头像 发表于 05-21 16:37 161次阅读

    比斯特综合性能测试机提升电池组性能验证效率精度

    深圳比斯特自动化设备有限公司推出的综合性能测试机,凭通过技术创新重新定义了电池性能测试的标准,在保证测试精度的同时,提升了验证效率。
    的头像 发表于 02-06 16:37 1215次阅读
    比斯特<b class='flag-5'>综合性</b>能测试机提升电池组性能验证效率精度

    电信接收机 IF/RF 前端 SAW 滤波方案:70–300MHz 选择提升 + 阻塞防护 + 匹配验证全流程(FSF-5050 系列)

    电信接收机 IF/RF 前端易受强带外干扰引发压缩、互调与阻塞,DSP 难补救。本方案以 SAW 滤波器为“门禁”,覆盖 70–300MHz IF 规划,给出放置位置、IL/阻带/群时延取舍、匹配与 PCB 要点,并提供 VNA+阻塞测试验证流程,适配 FSF 5×5mm
    的头像 发表于 01-29 14:00 1354次阅读
    电信接收机 IF/RF 前端 SAW 滤波方案:70–300MHz 选择<b class='flag-5'>性</b>提升 + <b class='flag-5'>阻塞</b>防护 + 匹配验证全流程(FSF-5050 系列)

    比斯特电池组综合性能测试机的一站式解决方案

    在新能源快速发展的浪潮中,电池组作为电动汽车、储能系统的“心脏”,其综合性能直接决定了整个系统的安全、续航与寿命。面对日益复杂的应用场景和严苛的国际标准,传统的分散化、多设备测试模式已难以满足产业
    的头像 发表于 01-19 16:19 444次阅读
    比斯特电池组<b class='flag-5'>综合性</b>能测试机的一站式解决方案

    解析SN65LVDS125A和SN65LVDT125A:4x4阻塞交叉点开关的卓越性能

    解析SN65LVDS125A和SN65LVDT125A:4x4阻塞交叉点开关的卓越性能 在电子设计领域,高速信号处理和灵活的信号路由是许多应用的关键需求。德州仪器(TI)的SN65LVDS125A
    的头像 发表于 12-29 17:40 831次阅读

    探索SN65LVDS125A和SN65LVDT125A:4x4阻塞交叉点开关的卓越性能

    探索SN65LVDS125A和SN65LVDT125A:4x4阻塞交叉点开关的卓越性能 在当今高速发展的电子领域,数据传输和信号处理的速度和效率至关重要。而SN65LVDS125A
    的头像 发表于 12-29 17:40 1038次阅读

    具有阻塞总线恢复功能的 TCA4307 热插拔 I²C 总线和 SMBus 缓冲器介绍

    具有阻塞总线恢复功能的 TCA4307 热插拔 I²C 总线和 SMBus 缓冲器介绍 在电子设计领域,热插拔 I²C 总线缓冲器是实现系统灵活扩展和维护的重要组件。今天,我们就来深入了解一下
    的头像 发表于 12-17 15:40 654次阅读

    综合性能检测机选型要点深度解析及参考

    在工业制造、新能源等领域,综合性能测试仪是保障产品质量、提升生产效率的重要设备。其选型的科学将直接影响企业的测试精度、生产流程适配与长期运营成本。随着工业智能化升级,本文将从测试仪的功能集成度
    的头像 发表于 12-09 16:50 1430次阅读

    飞凌嵌入式ElfBoard-文件I/O的深入学习之阻塞I/O与阻塞I/O

    可能会使程序阻塞等待,直到有数据可读时才会被唤醒返回。 普通文件的读写操作是不会阻塞的,不管读写多少个字节数据,read或 write一定会在有限的时间内返回,所以普通文件一定是以阻塞
    发表于 12-01 13:07

    请问rt_kprintf会影响RT-Threat系统的实时吗?

    有人说频繁调用rt_kprintf可能阻塞实时任务,影响系统响应,是这样吗?
    发表于 09-23 07:06

    CH32V307 串口发送阻塞的原因?怎么解决?

    */ modbus_set_rx_mode(master); modbus发送,不知为何阻塞在rt_device_write,初始化 find open 正常
    发表于 09-18 06:06

    【HZ-RK3568开发板免费体验】基于 Select Poll的TCP发服务器

    ,一般分为网络IO(本质就是socket读写)和磁盘IO。 IO模型大致可以分为:同步阻塞、同步阻塞、异步、信号驱动。 细分为5种I/O模型: 1)
    发表于 08-19 22:01

    matlab appdesigner 表格组件赋值问题,求助

    如上图所示,我在用matlab2021Ra APP模块进行编程的时候,想在表格中调入自己编写的结构数组,我从网上AI了一个程序语句,看着没问题,但是就是给表格赋值不了,还请各位大神帮忙看一下这个是怎么回事,我是初学者,请各位帮忙看看
    发表于 07-12 11:45

    合肥综合性国家科学中心能源研究院与宏微科技达成合作

    为深化产学研协同创新,推动科技创新和产业升级,近日,合肥综合性国家科学中心能源研究院与江苏宏微科技股份有限公司在智慧电力中心隆重举行“功率器件可靠评测方法和寿命预测联合实验室”签约揭牌仪式。江苏宏
    的头像 发表于 06-14 14:22 1179次阅读

    CH32V307串口发送阻塞的原因?如何解决?

    */ modbus_set_rx_mode(master); modbus发送,不知为何阻塞在rt_device_write,初始化 find open 正常
    发表于 06-11 08:05