PARTNO U802 ; NAME U802 ; DATE March 3, 1992 ; REV 1 ; DESIGNER Haynie ; COMPANY Commodore ; ASSEMBLY Nyx ; LOCATION West Chester ; DEVICE g22v10 ; /************************************************************************/ /* */ /* Nyx Net/SCSI Interface */ /* */ /* This device generates proper interface controls for the network */ /* chip, and a bit of glue required by the SCSI chip as well. */ /* */ /************************************************************************/ /* Allowable Target Device Types: 22V10-10 */ /************************************************************************/ /* Clock: !CPUCLK */ /************************************************************************/ /* Free Pins: 11(I),13(I) */ /************************************************************************/ /* HISTORY */ /* DBH Oct 26: All new. */ /* DBH Mar 3: Changed STERM from active to simulated O.D. */ /************************************************************************/ /** INPUTS: **/ PIN 1 = !CPUCLK ; /* 25MHz System clock */ PIN 2 = !TXEN ; /* Network transmit enable */ PIN 3 = !NETINT ; /* Network interrupt */ PIN 4 = !NET ; /* Basic network chip select */ PIN 5 = !DS ; /* 68030 data strobe */ PIN 6 = RW ; /* 68030 data direction strobe */ PIN 7 = !SLACK ; /* SCSI slave access acknowledge */ PIN 8 = !MASTER ; /* The SCSI chip is bus master */ PIN 9 = !DSACK1 ; /* 68030 asynchronous termination */ PIN 10 = !NCRINT ; /* SCSI interrupt */ /** OUTPUTS: **/ PIN 14 = !DSSYNC ; /* Sampling of STERM */ PIN 15 = !STERM ; /* 68030 synchronous termination */ PIN 16 = !DSACK0 ; /* 68030 asynchronous termination */ PIN 17 = !NS1 ; /* Network cycle counters */ PIN 18 = !NS0 ; PIN 19 = !NETDS ; /* Data strobe for network chip */ PIN 20 = !NETCS ; /* Address strobe for network chip */ PIN 21 = !NSGI ; /* Net or SCSI interrupt gate */ PIN 22 = !INT2 ; /* Low priority interrupt output */ PIN 23 = TXENB ; /* Transmit enable out to RS-485 driver */ /** INTERNAL TERMS: */ /** OUTPUT TERMS: **/ /* The network chip select is generated here. */ NETCS.D = NET & DS & !DSACK0 # NETCS & DS; /* The network data strobe is done here. */ NETDS.D = NET & DS & !DSACK0 & NETCS; /* The network chip counter ./ NS0.D = DS & !NS0 & NETCS # DS & NS0 & DSACK0; NS1.D = DS & !NS1 & !NS0 # DS & NS1 & NS0 # DS & NS1 & NS0 & DSACK0; /* The DSACK0 strobe is driven to terminate network chip accesses. */ DSACK0.D = !DSACK0 & NETCS & NETDS & NS0 & NS1 # DSACK0 & NETCS; DSACK0.OE = NETCS; /* The transmit enable single is just a simple inversion. */ TXENB = TXEN ; /* I generate an interrupt output for an input generated by either SCSI or Network. The input output is an open drain device, so I use two pins. */ NSGI = NETINT # NCRINT; INT2 = 'b'1; INT2.OE = NSGI; /* The SCSI end-of-cycle is pretty simple. The SCSI chip generates a SLACK signal, I generate an STERM from it. It doesn't appear to need any synching, but I have a synchronization pin available if necessary (DSSYNC). */ STERM = 'b'1; STERM.OE = SLACK; DSSYNC = 'b'0;