ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Verilog][기초문법] 게이트 딜레이
    카테고리 없음 2022. 1. 5. 22:24

    베릴로그의 프리머티브 게이트들은 파라미터 설정을 통해서 3가지의 딜레이를 모델링 할 수 있다

     

    3가지는 각각 상승, 하강, 턴오프 딜레이 값이다.

    y

    상승 딜레이는 0, x, z 값에서 1로 변할때 걸리는 시간,

    하강 딜레이는 1, x, z 값에서 0로 변할때 걸리는 시간,

    턴오프 딜레이는 0, 1, x 값에서 z로 변할때 걸리는 시간이다. 

     

    #(상승, 하강, 턴오프) name(out, in1, in2, ... );

    형식으로 선언할 수 있다.

     

    // #() 안에 수를 적어서 딜레이를 설정함
    
    // 하나만 적으면 상승 하강 턴오프 모두 같은 값이다.
    and #(10) a1(*);
    
    
    // 두개를 적으면 각각 상승 하강 딜레이다. 턴오프 딜레이는 상승, 하강값 중 작은 값이다
    and #(10, 15) a2(*);
    
    
    // 세게를 적으면 각각 상승, 하강, 턴오프 딜레이다.
    and #(10, 15, 5) a3(*);

     

     

     

    통계적으로 더 상세하게 모델링을 하려면

    min : typical : max 의 방식으로 딜레이를 모델링 할 수 있다.

    // #() 안에 수를 적어서 딜레이를 설정함
    
    // 상승 하강 턴오프 딜레이 모두 min=3, typ=4, max=5 값을 갖는다
    and #(3:4:5) a1(*);
    
    
    // 각각 상승 하강 딜레이. 턴오프 딜레이는 상승, 하강값 중 작은 값이다
    and #(1:2:3, 3:4:5) a2(*);
    
    
    // 세게를 적으면 각각 상승, 하강, 턴오프 딜레이다.
    and #(2:3:4, 3:4:5, 2:3:4) a3(*);

    시뮬레이터에서 실행할 떄, +maxdelays, +mindelays, +typdelays 옵션을 줄 수 있다.

     

Designed by Tistory.