Verilog和SystemVerilog中的fork-join有什么不同-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

Verilog和SystemVerilog中的fork-join有什么不同

本篇内容主要讲解“Verilog和SystemVerilog中的fork-join有什么不同”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Verilog和SystemVerilog中的fork-join有什么不同”吧!

成都创新互联公司服务项目包括香河网站建设、香河网站制作、香河网页制作以及香河网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,香河网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到香河省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

Verilog中fork-join结构的主要缺点是并行结构之外的代码的执行被暂停,直到所有fork-join中的进程完成。 

例如,在下面代码中,最后一个$display语句只在10个时间单位后执行,

虽然过程1在5个时间单位完成

modulefork_join_tests;        integer out_val ;        initial begin        fork                begin  //First process        #5$display(“exit first process at t = %0d”,$time) ;endbegin //Second process        #10$display(“exit second process at t = %0d”,$time) ;end join$display(“exit fork join at t = %0d”,$time);endendmodule //fork_join_tests

上面的代码显示输出:

exit first process at t = 5exit second process at t = 10exit fork join at t = 10

SystemVerilog为并行进程添加了两个新关键字:join_anyjoin_none

当上面的代码中的join被join_any替换时,则显示输出:

exit first process at t = 5exit second process at t = 10exit fork join at t = 5

fork-join_any在第一个进程完成后退出,也就是说,在5个时间单位退出。

当join_none替换join时,则显示以下输出:

exit first process at t = 5exit second process at t = 10exit fork join at t = 0

fork-join_none不同等待其中任何一个进程完成,也就是说,在时间单位0时退出。

到此,相信大家对“Verilog和SystemVerilog中的fork-join有什么不同”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


本文标题:Verilog和SystemVerilog中的fork-join有什么不同
分享网址:http://kswsj.cn/article/jedocp.html

其他资讯