program与module

本文探讨了program和module在硬件描述语言中的区别。program中的变量全局可见,其时间执行在reactive区域,而module的时间可以是non-blocking或blocking。program不能例化module、interface或其他program,但可以调用module中的function和task。module则可以声明function、task、interface、module等,并支持分步或partial编译。module的port连接有多种方式,包括按order、name和.*匹配。此外,bind结构用于在特定module中例化其他module、interface、program和checker。
摘要由CSDN通过智能技术生成

program,各方面与module都类似,其中声明的变量在program中都可见

  生命周期也是static类型的,

program的结束,也是需要等待其中的所有initial块都执行结束

  与module最大的不同是,program中的时间都是在reactive的区域中执行的

  所以如果clock块写在program中,非阻塞赋值,都先发生在program中的Re_NBA中

  program中的信号的toggle变化,都是在module之后的,且当拍可以看见module中信号的变化。

共发断言也可以在program中,但是不推荐,

(concurrent assertion,采样都是在prepone中,evalution在reactive区域。

  其中的property的断言用program中的信号。)

 

program中不能例化module,interface,其他program,不能包含always模块

  可以包含initial final等。

 

module中不能调用program中的function,task,

program中可以调用module中的function,task&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值