Re: TTL 6502 Here I come
Posted: Wed Aug 02, 2017 2:45 am
Dr Jefyll wrote:
But now you're getting distracted with new hardware!? 
Quote:
It'd be better to increase the address setup time seen by the peripheral by having the OE and WE pulses endure for only half of the 2-cycle period.
The whole question of the right split between address setup time and pulse width is key ...
Address Setup time is quoted as 10ns for SC26C92 UART, whereas the minimum pulse width is fully 70ns! By those figures, it seems favouring the pulse width in the tradeoff may be best here. At 20MHz, a 25/75 split feels just right (100ns cycle with a wait-state), especially considering how quickly the WDC 65C02 gets an address on the bus. But the TTL CPU is much slower on that score. It takes 21ns for it to produce an address (in theory that is) and it really needs the additional setup time that a 50/50 split affords. However, that ratio likely would put the pulse width offside for the UART (I know the UART works with a 62.5ns pulse, but 50ns seems like a stretch). I need a 50/75 split
Quote:
But I'd be happier if it also allowed extra time after OE and WE go false.
GARTHWILSON wrote:
I'd recommend putting a 22pF capacitor across that resistor
ttlworks wrote:
Downside of this approach is, that there _always_ would have to be a wait state for generating the PHI2' signal, even if the CPU is running at 1MHz in "slow mode".
Quote:
But the only peripheral which needs /OE and /WE generated from PHI2' is the UART.
Quote:
If everything but the RAM would have a wait state, the 6522\6526 would have a wait state, too... and I think this would generate two successive read cycles (or write cycles) to the same address on the chip. This probably would give us _another_ problem.
Dwight wrote:
Why not just stall the clock for both the processor and the peripheral.
But the problem with the current wait-state circuit in the SBC is that it takes too long to trigger (too many gates in series) and by then PHI2 has gone high already. It all works perfectly well at 16MHz with the 65C02. (Funny thing, a wait-state circuit that only works at slower clock rates
Dr Jefyll wrote:
Just stick in an extra half-cycle after OE and WE go false. Of course an entire extra cycle would do the trick, but that's more of a performance hit.