Verilog中if /else嵌套的典型用法

   if(B_count==B_count1)
     begin  
          state<=state_!;

          C_count<=C_count+1;
          B_count<=0;  
       
      end
   else 
           if(A_count==A_count1)
           begin 
                A_count<=0;
                B_count<=B_count+1;
              end
           else
              begin                               
                   A_count<=A_count+1;
                   B_count<=B_count;
              end 

        FPGA的开发中可以利用if/else语句的嵌套,实现阶梯式递进逻辑。这种用法是比较通用化,使用场景也是比较多的,顾做一个简单总结记录。

        上图代码中,就是它的典型嵌套模型。原理非常简单,形象来解释,好比有三个连通的容器A,B,C,他们上下连通。往里面倒水,首先水灌入A中,当灌满后就往B中倒;水在B中灌满后,再往C中灌。原理上可以无限嵌套,层层递进,宛如一个又一个阶梯。所以我把他称为阶梯式递进逻辑。

         阶梯式递进逻辑其实在逻辑控制中应用很广泛。A,B换成X,Y坐标,再加上点其他逻辑就可以应用在工业控制上的X,Y轴的扫描控制上;A换成计数器,则可以变成任何逻辑控制里的一个定时器。

        如果在多case中应用上本嵌套语句,更是能增加控制逻辑的复杂性。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值