Hardware > Hardware (Classic 16-/32-Bit)

GAL zu ppera MegaSTIDE Interface ...

<< < (11/13) > >>

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 abge„ndert

GAL-Listing fr 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 fr 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