【SystemVerilog基础】3. 过程块和方法

本文详细介绍了Verilog和SystemVerilog中的关键概念和语句。包括module、interface、program的使用,initial和always过程块的域,以及function和task的区别。此外,还讨论了子程序的返回机制、动态数据与静态数据的生命周期,以及高级参数类型如ref和const的作用。同时,时间值的表示、时间和变量的处理也被提及,强调了在设计中如何控制仿真时间。

1、概念域:

硬件世界:module-endmodule 、interface-endinterface

软件世界:program-endprogram、class-endclass

initial的使用域:initial过程块可以在module、interface和program中使用,对于过程块的书写用begin-end包裹住

always的使用域:always过程块的是用来描述硬件时序电路和组合电路的正确打开方式,因此只可以在module或者interface中使用

2、函数function

function可以在参数列表中指定input、output、onout和ref,可以返回数值后者不返回数值(void)

 3.方法task 

task无法通过return返回结果,只能通过output、inout或者ref的参数来返回,task可以内置耗时语句,而function却不可以,常见的耗时语句有@event、wait event 、#delay等等

函数function 任务task
不消耗仿真时间 消耗仿真时间
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值