-
[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 옵션을 줄 수 있다.