任务与函数的声明与调用

任务

任务使用task和endtask进行声明,如果子程序满足下面任意一个条件,就必须使用任务而不能使用函数

1.子程序包含有延迟、时序或者事件控制结构;
2.没有输出或者输出变量的数目大于1;
3.没有输入变量。
根据所使用的变量类型,使用关键字input ,output, inout ,对任务端口进行声明。当任务执行完后,output类型和inout类型的变量传回给任务调用语句相应的变量。除了在模块中调用任务,也可以在其他任务中被调用,但是不能被函数调用。
task [ automatic ] task_identifier (task_port_list)
{ block_item_declaration }
statement
endtask

自动(可重入)任务

在task关键字钱添加automatic关键字,使这个任务成为可重入的,这样声明的任务也称自动任务。每次调用时,在动态任务中声明的所有模块项的存储空间都是动态分配的,
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值