Name Cnt7bit; Partno 1; Date 10/23/2000; Revision 1; Designer KEH; Company RHIT; Assembly 1; Location Terre Haute, IN; Device G20V8A; /******************************************************************/ /* EC130 (KEH) CUPL Input File for */ /* Seven-Bit Binary up counter with synchronous CLR and ENABLE */ /* and Top Count (TC) output */ /* */ /******************************************************************/ /* Allowable Target Device Types: GAL20V8A */ /******************************************************************/ /** Inputs **/ Pin 1 = CLK; /* Clock Input */ Pin 2 = CLR; /* Synchronous Clear => when clock rises*/ /* Q6:0 is zeroed if CLR = 1 */ Pin 3 = EN; /* Count Enable - must be high to cause counter to advance when clock rises */ /** Outputs **/ Pin 15 = TC ; /* Top Count */ Pin 16 = !Q6 ; /* Counter MSB */ Pin 17 = !Q5 ; /* */ Pin 18 = !Q4 ; /* */ Pin 19 = !Q3 ; /* */ Pin 20 = !Q2 ; /* */ Pin 21 = !Q1 ; /* */ Pin 22 = !Q0 ; /* Counter LSB */ /** Logic Equations **/ Q0.D = ( EN & !Q0 /* Toggle Q0 */ # !EN & Q0) & !CLR; /* Hold Q0 */ Q1.D = ( EN & !Q1 & Q0 /* Toggle Q1 */ # EN & Q1 & !Q0 /* Hold Q1 */ # !EN & Q1) & !CLR; /* Hold Q1 */ Q2.D = ( EN & !Q2 & Q1 & Q0 /* Toggle Q2 */ # EN & Q2 & !Q1 /* Hold Q2 */ # EN & Q2 & !Q0 /* Hold Q2 */ # !EN & Q2) & !CLR; /* Hold Q2 */ Q3.D = ( EN & !Q3 & Q2 & Q1 & Q0 /* Toggle Q3 */ # EN & Q3 & !Q2 /* Hold Q3 */ # EN & Q3 & !Q1 /* Hold Q3 */ # EN & Q3 & !Q0 /* Hold Q3 */ # !EN & Q3) & !CLR; /* Hold Q3 */ Q4.D = ( EN & !Q4 & Q3 & Q2 & Q1 & Q0 /* Toggle Q4 */ # EN & Q4 & !Q3 /* Hold Q4 */ # EN & Q4 & !Q2 /* Hold Q4 */ # EN & Q4 & !Q1 /* Hold Q4 */ # EN & Q4 & !Q0 /* Hold Q4 */ # !EN & Q4) & !CLR; /* Hold Q4 */ Q5.D = ( EN & !Q5 & Q4 & Q3 & Q2 & Q1 & Q0 /* Toggle Q5 */ # EN & Q5 & !Q4 /* Hold Q5 */ # EN & Q5 & !Q3 /* Hold Q5 */ # EN & Q5 & !Q2 /* Hold Q5 */ # EN & Q5 & !Q1 /* Hold Q5 */ # EN & Q5 & !Q0 /* Hold Q5 */ # !EN & Q5) & !CLR; /* Hold Q5 */ Q6.D = (EN & !Q6 & Q5 & Q4 & Q3 & Q2 & Q1 & Q0 /* Toggle Q6 */ # EN & Q6 & !Q5 /* Hold Q6 */ # EN & Q6 & !Q4 /* Hold Q6 */ # EN & Q6 & !Q3 /* Hold Q6 */ # EN & Q6 & !Q2 /* Hold Q6 */ # EN & Q6 & !Q1 /* Hold Q6 */ # EN & Q6 & !Q0 /* Hold Q6 */ # !EN & Q6) & !CLR; /* Hold Q6 */ TC = Q6 & Q5 & Q4 & Q3 & Q2 & Q1 & Q0 & EN; /* Top Count */