Author
| z80 busak delay time?
|
PingPong msx professional Posts: 877 | Posted: October 04 2007, 22:36   |
Hi, all. anyone know how many t-cycles is the maximum delay in t-states, after that the z80 goes in three state mode?
|
|
Metalion msx freak Posts: 215 | Posted: October 04 2007, 22:59   |
I don't know if it will help you, but I found this in the Zilog Z80 manual :
The BUSREQ signal is sampled by the CPU with the rising edge of the last clock
period of any machine cycle. If the BUSREQ signal is active, the CPU sets
its address, data, and tristate control signals to the high-impedance state with
the rising edge of the next clock pulse. At that time, any external device can
control the buses to transfer data between memory and I/O devices. (This
operation is generally known as Direct Memory Access [DMA] using cycle
stealing.) The maximum time for the CPU to respond to a bus request is the
length of a machine cycle and the external controller can maintain control of
the bus for as many clock cycles as is required. If very long DMA cycles are
used, and dynamic memories are used, the external controller also performs
the refresh function. This situation only occurs if very large blocks of data are
transferred under DMA control. During a bus request cycle, the CPU cannot
be interrupted by either an NMI or an INT signal.
|
|
PingPong msx professional Posts: 877 | Posted: October 04 2007, 23:37   |
this change the question in : how much is long the longest machine cycle?
|
|
Metalion msx freak Posts: 215 | Posted: October 05 2007, 07:29   |
AFAIK, the M-cycle has a fixed length, which depends on the clock frequency.
|
|
[D-Tail]
 msx guru Posts: 2994 | Posted: October 05 2007, 08:28   |
Isn't the M-cycle built from instruction fetch/decode/execute/write back? That'd mean that an M-cycle would be 5 T-states (including the WAIT state). But of course, that is only when the execute phase takes 1 T-state at a time. So, if the M-cycle has a fixed length, it'd be 5/3.58M if I'm right.
|
|
PingPong msx professional Posts: 877 | Posted: October 05 2007, 20:56   |
Umh, z80 has variable cycle len i'm sure, what i do not know what is the maximum cycle len (the minimum is 3 T-STATES)
|
|
Metalion msx freak Posts: 215 | Posted: October 05 2007, 23:07   |
Quote:
| this change the question in : how much is long the longest machine cycle?
|
The longest M-cycle is 6 T-states.
It is used in various opcodes using IX or IY.
For example, "INC IY" has 2 M-cycles (4 T-states, 6 T-states)
|
|
PingPong msx professional Posts: 877 | Posted: October 07 2007, 17:52   |
thx, so the z80 at the 3.5mhz is too slow to accept and respond to a BUSREQ in 500ns only, i see  |
|
|
|
|