Veriog中的四种结构(initial,always,task,function)

一,initial

作用:initial语句用于变量的初始化。。。

注意:一个模块中可以有多个initial语句。。。所有的initial语句是并行的。

二.always

 声明格式:  always <时序控制>  <语句>

注意:1)always语句由于其不断的活动,一般与时序控制一起结合实用。

           2)always可等待与电平敏感是触感事件。

e.g

       1)

      always @(posedge arrg)

      begin   //等待当arrg变为高电平时执行下面语句

      ///

      end

    2)

     always @(A or B)

      begin   //等待当A或者B发生变化时执行下面语句

      ///

      end

  3)

     always

      wait(enable)

      begin   //等待当enable为1时执行下面语句

      ///

      end

三.task

作用:用于定义一个任务

格式 1)定义

          task<任务名>

        <端口名及数据类型声明>

       <语句1>

       ........

       <语句n>

      endtask

     2)调用

     任务名(端口1,端口2,......端口n):

四.function

作用:用于定义一个函数

格式:

     1)定义

    function<返回值的类型或者范围>(函数名)

      <端口说明语句>

     <端口变量说明语句>

     begin

     <语句>

     . ......

      end

    endfunction

     2)调用

      <函数名>  (<表达式>,。。。<表达式>)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值