module TIMEG12A title 'Counter-based six-phase master timing generator' " Input and Output pins MCLK, RESET, RUN, RESTART pin; P1_L, P2_L, P3_L, P4_L, P5_L, P6_L pin istype 'reg'; CNT3..CNT0 pin istype 'reg'; " Definitions CNT = [CNT3..CNT0]; P_L = [P1_L, P2_L, P3_L, P4_L, P5_L, P6_L]; equations CNT.CLK = MCLK; P_L.CLK = MCLK; WHEN RESET THEN CNT := 15 ELSE WHEN RESTART THEN CNT := 0 ELSE WHEN (RUN & (CNT < 11)) THEN CNT := CNT + 1 ELSE WHEN RUN THEN CNT := 0 ELSE CNT := CNT; P1_L := !(CNT == 0); P2_L := !(CNT == 2); P3_L := !(CNT == 4); P4_L := !(CNT == 6); P5_L := !(CNT == 8); P6_L := !(CNT == 10); end TIMEG12A