home *** CD-ROM | disk | FTP | other *** search
- module altera flag '-f'
- title 'Controlling output macro cells
- Brian Durwood FutureNet - Data I/O 12 Jan 1986'
-
- alt1 device 'E0310';
-
- Clk,D2,D3,D4,D5,D6,D7 pin 1,2,3,4,5,6,7;
- D8,D9,D11,Q12,Q13,Q14 pin 8,9,11,12,13,14;
- Q15,Q16,Q17,Q18,Q19 pin 15,16,17,18,19;
-
- "Explicity state macro cell configuration
- Q12 IsType 'pos,reg,feed_or';
- Q13 IsType 'pos,com,feed_pin';
- Q18 IsType 'neg,reg,feed_reg';
-
- "Let equations determine resister/combinatorial and polarity
- Q14 IsType 'feed_or';
- Q15,Q16,Q17 IsType 'feed_pin';
-
- Ck,X,Z = .C. , .X., .Z.;
-
- equations
- Q12 := D2 & D3; "Feedback from the pin
- Q13 = Q12 & D4;
-
- test_vectors ([Clk,D2,D3,D4] -> [Q12,Q13])
- [ Ck, 1, 1, 1] -> [ 1 , 1 ];
- [ 0, 1, 0, 1] -> [ 1 , 0 ];
- [ Ck, 0, 1, 1] -> [ 0 , 0 ];
- [ 0, 1, 1, 1] -> [ 0 , 1 ];
-
- equations
- !Q14 := D2 & D3; "Registered Active Low
- Q15 = D3 & D4; "Combinatorial Active High
-
- test_vectors ([Clk,D2,D3,D4] -> [!Q14,Q15])
- [ Ck, 1, 1, 1] -> [ 1 , 1 ];
- [ Ck, 1, 0, 1] -> [ 0 , 0 ];
- [ Ck, 1, 1, 0] -> [ 1 , 0 ];
- [ Ck, 0, 1, 1] -> [ 0 , 1 ];
-
- equations "bidirectional buffer
- Q16 = Q17; enable Q16 = D4;
- Q17 = Q16; enable Q17 = !D4;
-
- test_vectors ([D4,Q16,Q17] -> [Q16,Q17])
- [ 1, X, 0] -> [ 0, X];
- [ 1, X, 1] -> [ 1, X];
- [ 0, 0, X] -> [ X, 0];
- [ 0, 1, X] -> [ X, 1];
-
- equations
- Q18 := D5 & !Q18;
- Q19 = Clk;
-
- test_vectors ([Clk,D5] -> [Q18,Q19])
- [ Ck, 0] -> [ 0, 0];
- [ Ck, 1] -> [ 1, 0];
- [ Ck, 1] -> [ 0, 0];
- [ 0 , 1] -> [ 0, 0];
- [ 1 , 1] -> [ 1, 1];
- end
-
-