I wasn't aware that Fat Agnus was performing a RAS only refresh. Did you confirm this with your logic analyzer?
Yeah, definitely. Take a look at my main project page where I include logic analyzer traces.
http://www.techtravels.org/amiga/amigablog/?page_id=942Look at the top diagram. You can see the RAS only pulses, one for both the internal memory and external memory, with constantly increasing row addresses.
This is Agnus refreshing each row of the DRAMs.
There's no pin-1 refresh available on these chips and I've definitely not seen CAS-before-RAS in any of my work so far.
Since your de-multiplexing the address' then you need to delay your SRAM CE long enough for the SRAM address inputs to be stable.
The setup time for reading appears to be 0ns with the hold time being 3ns. For writing, the setup time is specified as 0ns and hold time is 0ns.
There was a chance I was asserting CE BEFORE the latch outputs stabilized on the input, so I slowed the gate-logic down by switching from ACT to LS on the chip responsible, and now I'm measuring 9ns timing margin between address stabilization and falling edge of CE. This should be sufficient given the datasheet.
The normal time it takes to reset a 7 MHz 68000 and then execute some Kickstart code before a Chipmem access should be more than enough time to meet the start-up time requirements of the slowest SRAM.
Yup, my thoughts were that there's plenty of time for the SRAM to come online before it needs to start performing.
Logic probe loading may correct a problem with address' (or data) being stable at latching time. Some low value in-series resistors or high value pull downs may help here but a delay in latch timing may also solve the problem. So you might want to check your SRAM CE timing again.
I'm going to take a look at the lines on a DSO today. I do have series resistors on the data lines. I can always delay the /CE more, but I think that if I consistently measure 9ns setup and the actual setup time requirement is 0ns, then I'm probably safe here.
Thanks
kamiga