2011-07-28 4 views
1

시계의 첫 번째 상승 에지에서만 이벤트를 방출하고 싶습니다. 예Specman (e) Questions

event clkr_e is rise ('pll_clk') @ sim; 

clkr_e위한

마다 상승 클럭에서 방출된다.

하지만 pll_clk의 첫 번째 상승 에지에서만 이벤트를 방출해야합니다. 어느 누구도이 점을 밝힐 수 있습니까?

감사합니다.

답변

1

사용 플래그 :

clk_has_risen : bool; 
keep clk_has_risen == FALSE; 

event first_clk_rise_e is true(clk_has_risen == FALSE) @ clkr_e; 
on first_clk_rise_e { 
    clk_has_risen = TRUE; 
}; 

는 또한,이 성능을 아니 노 :

event clkr_e is rise ('pll_clk') @ sim; 

당신은 Specman을 simple_port 구조를 사용해야합니다.하지 틱 액세스 대신 포트로 전환했을 때 시뮬레이션 속도가 두 배가되었습니다. 당신의 Specman 문서에서 찾아보십시오.