HDL的基本语法

一、三种电路结构

(1)组合逻辑

always@(*)begin

  语句

end

(2)时序逻辑

a) 同步复位的时序电路                                           b)异步复位的时序电路

always@(posedge clk )begin                                  always@(posedge clk  or negedge rst_n )begin

  if(rst_n == 1*60)begin                                         if(rst_n == 1*60)begin

    语句                                                                     语句

  else begin                                                                 else begin

    语句                       语句

  end                        end

end                       end

例子:

1.组合逻辑

always@(*)begin

  if(a ==1'b1)

  b= 1'b0 ;

  else

  b=1'b1;

end

2. a) 同步复位的时序电路                                           b)异步复位的时序电路

always@(posedge clk )begin                                  always@(posedge clk  or negedge rst_n )begin

  if(rst_n == 1*60)begin                                         if(rst_n == 1*60)begin

    b<= 1'60;                                                                     b<= 1'60;  

  else begin                                                                 else begin

       if(a==1'b0)                                                            if(a==1'b0)   

      b<=1'b1;                        b<=1'b1; 

    else                     else

      b<=1'b0;                   b<=1'b0;

  end                      end

end                       end

1.一个always只产生一个信号 优点:降低复杂度,方便分析调试,方便修改

2.一个信号只能在一个always中产生

3.always是描述一个信号产生的方法

posted @ 2022-11-02 11:58  平凡的柳先生  阅读(134)  评论(0)    收藏  举报