home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s199 / 1.img / ALTER.ABL < prev    next >
Encoding:
Text File  |  1989-06-02  |  1.4 KB  |  66 lines

  1. module alter    flag '-r3','-t3','-f','-ky' 
  2. title 'Controlling output macro cells
  3. Designer SOTEC PLD group 15 May 1989'
  4.  
  5.     Alter    device 'p16v8r';
  6.  
  7.     Clk,D2,D3,D4,D5        pin 1,2,3,4,5;
  8.     Q12,Q13,Q14        pin 12,13,14;
  9.     Q15,Q16,Q17,Q18,Q19    pin 15,16,17,18,19;
  10.  
  11.     Ck,X,Z    = .C. , .X., .Z.;
  12.  
  13. equations
  14.  
  15.     Q12    := D2 & D3;    "Feedback from the pin
  16.     Q13     = Q12 & D4;
  17.  
  18. test_vectors    
  19.  
  20.         ([Clk,D2,D3,D4] -> [Q12,Q13])
  21.          [ Ck, 1, 1, 1] -> [ 1 , 1 ];
  22.          [  0, 1, 0, 1] -> [ 1 , 1 ];
  23.          [ Ck, 0, 1, 1] -> [ 0 , 0 ];
  24.          [  0, 1, 1, 1] -> [ 0 , 0 ];
  25.  
  26. equations
  27.  
  28.     !Q14    := D2 & D3;    "Registered     Active Low
  29.      Q15     = D3 & D4;    "Combinatorial  Active High
  30.  
  31. test_vectors    
  32.  
  33.         ([Clk,D2,D3,D4] -> [!Q14,Q15])
  34.           [ Ck, 1, 1, 1] -> [  1 , 1 ];
  35.           [ Ck, 1, 0, 1] -> [  0 , 0 ];
  36.           [ Ck, 1, 1, 0] -> [  1 , 0 ];
  37.           [ Ck, 0, 1, 1] -> [  0 , 1 ];
  38.  
  39. equations    
  40.  
  41.     Q16    = Q17;        enable Q16 =  D4; "bidirectional buffer
  42.     Q17    = Q16;        enable Q17 = !D4;
  43.  
  44. test_vectors    
  45.  
  46.         ([D4,Q16,Q17] -> [Q16,Q17])
  47.           [ 1,  X,  0] -> [  0,  X];
  48.           [ 1,  X,  1] -> [  1,  X];
  49.           [ 0,  0,  X] -> [  X,  0];
  50.           [ 0,  1,  X] -> [  X,  1];
  51.  
  52. equations
  53.  
  54.     Q18    :=  D5 & !Q18;
  55.  
  56. test_vectors    
  57.  
  58.         ([Clk,D5] -> [Q18])
  59.           [ Ck, 0] -> [  0];
  60.           [ Ck, 1] -> [  1];
  61.           [ Ck, 1] -> [  0];
  62.           [ 0 , 1] -> [  0];
  63.           [ 1 , 1] -> [  1];
  64. end
  65.  
  66.