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: ?
, , 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-, , â ):
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.