Hardware > Hardware (Classic 16-/32-Bit)
GAL zu ppera MegaSTIDE Interface ...
Lukas Frank:
Meine Idee war das DTACK im GAL zu erzeugen, nur wie bekomme ich die TOS Ansteuerung da raus ?
----------------------------------------------------------------------------
// 16.04.93 Kai Scheffer
// 20.06.93 Kai Scheffer Pinbelegung gem c't Layout abgendert
GAL-Listing fr IDE-Platten-Adapter am ATARI ST (c't 9/93)
IDE-Register $F00000 bis $F1FFFF
ROM-Breich $E00000 bis $EFFFFF und ROM2-Select
Erzeugung von:
/DTACK zum Atari
/CS0 geht zur IDE-Platte Pin 37 gleich SELP
/CS1 geht zur IDE-Platte Pin 36 gleich SELS
/IORD geht zur IDE-Platte Pin 25
/IOWR geht zur IDE-Platte Pin 23
/G Enable-Signal fr die Datenbustreiber (2x74HCT245)
/INT Interrupt-Signal zum Atari (DMA-Port Pin 10)
*IDENTIFICATION
IDE_ST;
*TYPE
GAL20V8;
*PINS
/AS = 3,
RW = 5,
A5 = 1,
/ROM2 = 2,
A17 = 6,
A18 = 7,
A19 = 9,
A20 = 8,
A21 = 10,
A22 = 11,
A23 = 13,
/LDS = 4,
/IOCHRDY = 14,
IRQ14 = 23,
/INT.T = 19,
/TOS.T = 20,
/IOWR.T = 22,
/IORD.T = 21,
/G.T = 16,
/CS1.T = 18,
/CS0.T = 17,
/DTACK.T = 15;
*BOOLEAN-EQUATIONS
TOS.E = VCC;
IOWR.E = VCC;
IORD.E = VCC;
G.E = VCC;
CS1.E = VCC;
CS0.E = VCC;
INT.E = IRQ14;
INT = IRQ14;
DTACK = /A17 & /A18 & /A19 & A20 & A21 & A22 & A23
+ TOS;
DTACK.E = /IOCHRDY & AS & /A19 & A21 & A22 & A23;
CS0 = /A5 & /A17 & /A18 & /A19 & A20 & A21 & A22 & A23;
CS1 = A5 & /A17 & /A18 & /A19 & A20 & A21 & A22 & A23;
G = LDS & RW & /A17 & /A18 & /A19 & A20 & A21 & A22 & A23
+ /RW & /A17 & /A18 & /A19 & A20 & A21 & A22 & A23;
IORD = LDS & RW & (CS0 + CS1);
IOWR = LDS & /RW & (CS0 + CS1 + TOS); % Signal TOS wegen EEPROMs %
TOS = ROM2
+ AS & A23 & A22 & A21 & /A20 & /A19;
*END
----------------------------------------------------------------------------
tuxie:
Habe es equivalent mal in den Gal gepackt
CHIP STIDE GAL20V8 Simple_Mode
A23 A22 A21 A20 A19 A18 A17 A16 A15 A14 A5 GND
AS RW LINEA SELP SELS IORD IOWR DTACK NC NC IORDY VCC
DTACK = A23*A22*A21*A20*/A19*/A18*/A17*/A16*/AS*RW*/IORDY;
/SELP = /AS*A23*A22*A21*A20*/A19*/A18*/A17*/A16*/A15*/A14*/A5;
/SELS = /AS*A23*A22*A21*A20*/A19*/A18*/A17*/A16*/A15*/A14*A5;
/IORD = /AS*A23*A22*A21*A20*/A19*/A18*/A17*/A16*/A15*/A14*RW;
/IOWR = /AS*A23*A22*A21*A20*/A19*/A18*/A17*/A16*/A15*/A14*/RW;
LINEA = /AS*A23*A22*A21*A20*/A19*/A18*/A17*/A16*/A15*/A14;
Pinbelegung ist wie beim pperas IDE nur ohne ROM, IORDY ist Pin 23 und geht zum IDE und Pin20 ist DTACK die über eine Diode zur CPU geht, Achtung Polung beachten weil LOW Activ (Sperrichtung zur CPU, kannst natürlich auch ein Gatter des 74LS03 nehmen (nur wegen Open Collector Notwendig).
Unterschied den ich feststellen kann ist das LDS nicht ausgewertet wird und das IORD und IOWR aus den beiden Signalen SELP und SELS erzeugt wird, was nochmal zu einer kurzen Verzögerung führt.
tuxie:
Hab da was gefunden
Lukas Frank:
So ein GAL kann doch auch Open Collector, wieso noch ein Gatter oder eine Diode nehmen ?
Ich denke ich versuche das GAL original zu nutzen und lege den Eingang ROM2 einfach auf 5V ...
tuxie:
hm wohl schon ja aber die diode schadet ja nicht
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln