HEX-Decoder fĂŒr zweistellige 7-Segment-LED-Anzeige an einem (!) GAL16V8

Diejenigen, die Retro-Computing im Bereich der Selbstorganisation von Computern auf der Basis von 8-Bit-Prozessoren (i8080 / i8085 / z80 / z180 / 6502/6809 usw.) oder Mikrocontrollern mögen, mĂŒssen normalerweise wĂ€hrend des Debuggens angezeigt werden und / oder "Betrieb" von Informationen (Inhalt von Adressbussen, Daten usw.) auf 7-Segment-Anzeigen in hexadezimaler Darstellung.





GrundsĂ€tzlich lĂ€sst sich die Aufgabe der Anzeige hexadezimaler Ziffern leicht durch die erforderliche Anzahl "intelligenter" TIL311- Indikatoren  lösen . Diese bekannten Indikatoren wurden von Texas Instruments lange vor dem Aussterben der Dinosaurier entwickelt und sind noch in Produktion. Sie sind auf Aliexpress zu finden  .





Trotz der Benutzerfreundlichkeit weisen diese Indikatoren auch erhebliche Nachteile auf, nÀmlich:





  • Relativ hohe Kosten - selbst bei Aliexpress sind diese Indikatoren ĂŒberhaupt nicht billig (im Vergleich zu herkömmlichen 7-Segment-Indikatoren), und Sie werden sie nicht fĂŒr die zukĂŒnftige Verwendung nach dem Prinzip "Vielleicht sind sie nĂŒtzlich" kaufen.





  • Mangelnder Fußweg - sie mĂŒssen speziell bestellt und gewartet werden, d.h. ĂŒberhaupt nicht der Fall, wenn Sie etwas fĂŒr eine schnelle Hand verspotten mĂŒssen;





  • — , .





, , 7- LED-  . , , (. GAL16V8) — , ( ) , , .





1 GAL16V8 1- 16- ,   16-    GAL16V8 ( ).






1: ?

/ 7- LED-   â€” A , D , , — . 





, ( )   , 4- — Æ’(A,B,C,D):





    .   MS Excel, «» , ( ).





, ,  a     3 (, ) 4 ( '═══', '───',   '−−−' - '−∙−∙').





    , .. () . , ( ), . 





:





a-g â€” F(A,B,C,D),

*  â€” '' ( , ),

+ â€” '' ( , ), 

\ â€” '' ( )





GAL16V8   7- .   7-    GAL16V8 . ?





« GAL16V8?» , 2- , , . , .






?

—  ?





. 'e'.

, 10 16- — 0  2  6  8 A  B  C  D  E  F.





, 0000  0010  0110  1000  1010  1011  1100  1101  1110  1111.









e(A, B, C, D) = \A*\B*\C*\D + \A*\B*C*\D + \A*B*C*\D + A*\B*\C*\D +

A*\B*C*\D + A*\B*C*D + A*B*\C*\D + A*B*\C*D + A*B*C*\D + A*B*C*D





(.. ,  )  .    .   (). , 10,  4 :





e(A, B, C, D) = \B*\D + C*\D +  A*B + A*C*D





   GAL4V1 ( , GAL-, , — ): 





Vereinfachte Vorrichtung von GAL-Mikroschaltungen am Beispiel einer hypothetischen Mikroschaltung GAL4V1
GAL GAL4V1

GAL4V1 :





  • ,     'X' '\X';





  • , ( 5 ) , '';





  • , '';





  • , ' ' (eXclusive OR - XOR) .





, , .   , -  e (A, B, C, D) (. ).





, , GAL4V1?  (4), (1) (5), —  , , 4- 5-.





 e(A, B, C, D) , «» , 'a' (7 ).

, ... 





))





GAL-

GAL- GAL4V1? — , GAL- / :





  • , .. , ( 8 GAL16V8 GAL20V8, 10 GAL18V10 GAL22V10, 12 GAL26V12 GAL26CV12);





  • (7-8 GAL16V8 GAL20V8, 8-10 GAL18V10, 8-16 GAL22V10 GAL26v12, 8-12 GAL26CV12);





  • , .. , ( 16 GAL16V8, 18 GAL18V10, 20 GAL20V8, 22 GAL22V10 26 GAL26V12 GAL26V12);





  • ( ) « », «-» «» ( );





  • .





GAL 1- (D-), / (GAL16V8 GAL20V8) - (GAL18V10, GAL22V10 GAL26V12/GAL26CV12). 





GAL- , , .





1- , GAL- " " (OLMC — Output Logic MacroCell).





GAL4V1

Y A (.. ). 1 :





Y(A) = A





Y A ,    B   :





Y(A, B) = A * \B





2- , 1 .





— Y A , B   , C   :





Y(A, B, C) = A * B * \C





, , .





  C , Y A,    C , Y B:





Y(A, B, C) = A * \C + B * C





. 3- , ,   2-   2 () , 1- . ? , — « ».





?

(/) 7- . 7+7=14 ( , , 16). 





, GAL, .





, 2- 7- , , — (.. ) .





GAL16V8?

 GAL16V8 , (.. , 1- ) 3- , .. Registered, Complex Simple. , .





 Simple  ( 8) GAL4V1,  8  — 10. .





 Complex  Simple,  Output Enable (\OE), .  7 . — 10.





 Registered  ( ) XOR- 1- (D-), CLK, 1 . \OE, 11 . — 8. , Complex 7 . — 8.





?

GAL16V8 , .. 4 ( 'e') 7 ( 'a') .





, .. 7- GAL16V8, , 7 ( 'a'), 2- 2 .





, ,   , 7- ,  7- GAL16V8.





  7- GAL16V8






2: - !

(.. ) , .. Simple Registered, 8 . 





, , GAL16V8 16-    4- . ? 





, 1-   , .. , .





,   ? , - , , ( ) , . 





,     , «» , «» , .





. «»     , ('\' '/'). , «» : 





, 7- \a(A,B,C,D), \b(A,B,C,D), ..., \g(A,B,C,D) 4-, !





, , GAL4V1, ;)





.





GAL16V8D

— 2 DIP- :





— 555 ( ). — PNP 100 . — 7-  .





. ,    , «»    , «». 





XOR- GAL16V8 LED-  , GAL16V8D , :





 GAL16VP8  - ( 64 ), . (  ).





2- LED- ( 200- 4- , ):





GAL16V8 WinCUPL, :





( , WinCUPL ), ...





, EN_L , . ,  -





— , (.. , ), , 2-, ( )  EN_i  ,  EN_j, :





, / , EN_L EN_H GAL16V8, «EN_L  =  ! EN_H» : 





EN_L, , ( ) ( LED1/LED2 ). 





GAL16V8D JED- ( ) MiniPro TL866A.





— , , —  GAL16V8   7- :






Bei der Erstellung dieses Artikels stieß ich auf eine gute Veröffentlichung ĂŒber HabrĂ© - PAL, GAL und eine Reise in das digitale Retro / Habr (habr.com) und dachte, dass mein Fall fĂŒr diejenigen von Interesse sein könnte, die verstehen wollen, wie es ist funktioniert tatsĂ€chlich und wer glaubt nicht, dass die Brötchen im Laden wachsen, das Wasser kommt aus dem Wasserhahn und der Strom aus der Steckdose.








All Articles