Subversion Repositories MB01 Project

Rev

Blame | Last modification | View Log | Download | RSS feed

||      FILE:   #0166.PLD
||      PROJ:   20170501
||              FD-02 FDC/ATA/DMA BOARD
||      
||      PART:   G26CV12-#0166
||
||      DEV :   GAL26CV12
||
||      DESC:   RAM ACCESS CONTROL
||
|
|GAL26CV12
|
|| INPUT
|  1:CA0, 2:MA0, 3:CX2, 4:PHI2, 5:MW0, 6:DMA, 8:PHI0, 9:OE0, 10:OE1, 
| 11:S1M, 12:ATA0, 13:FDC, 14:ALT, 28:RW,
|| OUTPUT 
|  15:MWE, 16:MRD, 17:CEL, 18:CEH, 19:CE1, 20:OEL, 22:OEH, 23:BE0,
|  24:BE1, 25:EV, 26:ODD, 27:AEN
|
| ACTIVE-LOW: MWE, MRD, CEL, CEH, CE1, OEL, OEH, BE0, BE1, EV, ODD
|
|
| SIGNATURE: "0166    "
|
|| --------------------------------------------------------
|| common signals when dma disabled (DMA = 1 => cpu access)
||
|  MMR0  = CX2' & DMA & OE0 & RW  & PHI2        || cpu read ram
|  MMR1  = CX2' & DMA & OE1 & RW  & PHI2        || cpu read ram
|  MMW0  = CX2' & DMA & OE0 & RW' & PHI2 & MW0  || cpu read ram (02)
|  MMW1  = CX2' & DMA & OE0 & RW' & PHI0 & MW0' || cpu read ram (00)
|  MMW2  = CX2' & DMA & OE1 & RW' & PHI2 & MW0  || cpu read ram (02)
|  MMW3  = CX2' & DMA & OE1 & RW' & PHI0 & MW0' || cpu read ram (00)
|  MMRD  = MMR0 # MMR1                          || cpu read  ram strobe
|  MMWR  = MMW0 # MMW1 # MMW2 # MMW3            || cpu write ram strobe
||
|  MLC0  = CX2' & DMA & OE0 & S1M' & CA0'       || cpu access 1Mb even ram
|  MLC1  = CX2' & DMA & OE1 & S1M' & CA0'       || cpu access 1Mb even ram
|  MHC0  = CX2' & DMA & OE0 & S1M' & CA0        || cpu access 1Mb odd  ram
|  MHC1  = CX2' & DMA & OE1 & S1M' & CA0        || cpu access 1Mb odd  ram
|  MLCC  = MLC0 # MLC1                          || cpu access 1Mb even ram
|  MHCC  = MHC0 # MHC1                          || cpu access 1Mb odd  ram
|  MLCCP = (MLC0 # MLC1) & PHI2                 || cpu access 1Mb even ram
|  MHCCP = (MHC0 # MHC1) & PHI2                 || cpu access 1Mb odd  ram
|  M2C0  = CX2' & DMA & OE0 & S1M  & PHI2       || cpu access 128Kb ram
|  M2C1  = CX2' & DMA & OE1 & S1M  & PHI2       || cpu access 128Kb ram
|  M2CC  = (M2C0 # M2C1)                        || cpu access 128Kb ram
||
|| common signals when dma enabled (DMA = 0)
|  M1D0  = DMA' & OE0' & FDC                    || dma0 access 1Mb ram
|  M1D1  = DMA' & OE1' & FDC' & ALT'            || dma1 access 1Mb ram
|  M2D1  = DMA' & OE1' & FDC' & ALT             || dma1 access 128kb ram
||
|| output signals
|  MWE   = DMA ?? MMWR                          || write ram strobe 3-states
|  MRD   = DMA ?? MMRD                          || read  ram strobe 3-states
|  CEL   = MLCCP # M1D0 # M1D1                  || enable even ram 1Mb
|  CEH   = MHCCP # M1D0 # M1D1                  || enable odd  ram 1Mb
|  CE1   = M2CC # M2D1                          || enable ram 128Kb
|  OEL   = MLCC         || enable internal ram 1Mb data bus for cpu access
|  OEH   = MHCC         || enable internal ram 1Mb data bus for cpu access
|  BE0   = DMA' & OE0' & ATA0' & FDC            || ata0 data bus to 1Mb ram
|  BE1   = DMA' & OE0' & ATA0  & FDC            || ata1 data bus to 1Mb ram
|  EV    = DMA' & OE1' & FDC' & ALT' & MA0'     || fdc data bus to even 1Mb
|  ODD   = DMA' & OE1' & FDC' & ALT' & MA0      || fdc data bus to odd  1Mb
|  AEN   = DMA'                                 || cpu address enable