Sample file for the EP900 Use with SMS PLDASM V3.0e or later counter on right side of device is synch counter on left side of device is asynch /^:= or ^:= means that the flip flop is a toggle type, not D type Device ep900 pin1 = 1 pin2 = 2 ' count enable, active low pin3 = 3 ' asynch counter clock pin5 = 5 pin6 = 6 pin7 = 7 pin8 = 8 pin9 = 9 pin10 = 10 pin11 = 11 pin12 = 12 pin19 = 19 pin21 = 21 pin24 = 24 ' active high reset pin29 = 29 pin30 = 30 pin31 = 31 pin32 = 32 pin33 = 33 pin34 = 34 pin35 = 35 pin36 = 36 pin27 = 27 turbo start ' use T type flip flop pin36 ^:= pin2 * pin36 ' reset by toggling if high + /pin2; ' count => toggle pin36.rst = pin24; ' another way to reset pin35 ^:= pin2 * pin35 ' reset + /pin2 * pin36; ' carry count from pin36 pin35.rst = pin24; pin34 ^:= pin2 * pin34 + /pin2 * pin36 * pin35; pin34.rst = pin24; pin33 ^:= pin2 * pin33 + /pin2 * pin36 * pin35 * pin34; pin33.rst = pin24; pin32 ^:= pin2 * pin32 + /pin2 * pin36 * pin35 * pin34 * pin33; pin32.rst = pin24; pin31 ^:= pin2 * pin31 + /pin2 * pin36 * pin35 * pin34 * pin33 * pin32; pin31.rst = pin24; pin30 ^:= pin2 * pin30 + /pin2 * pin36 * pin35 * pin34 * pin33 * pin32 * pin31; pin30.rst = pin24; pin29 ^:= pin2 * pin29 + /pin2 * pin36 * pin35 * pin34 * pin33 * pin32 * pin31 * pin30; pin29.rst = pin24; pin5 := /pin5; ' toggle pin5.rst = pin2; ' reset pin6 := /pin6; ' make a T type from a D type pin6.clk = /pin3; ' use pin 3 as asynch clock pin6.rst = pin2; pin7 := /pin7; pin7.clk = /pin6; pin7.rst = pin2; pin8 := /pin8; pin8.clk = /pin7; pin8.rst = pin2; pin9 := /pin9; pin9.clk = /pin8; pin9.rst = pin2; pin10 := /pin10; pin10.clk = /pin9; pin10.rst = pin2; pin11 := /pin11; pin11.clk = /pin10; pin11.rst = pin2; end