Datasheet

18-20 MCF5307 User’s Manual
Bus Arbitration
Figure 18-23. Interrupt-Acknowledge Cycle Flowchart
18.8 Bus Arbitration
The MCF5307 bus protocol gives either the MCF5307 or an external device access to the
external bus. If more than one external device uses the bus, an external arbiter can prioritize
requests and determine which device is bus master. When the MCF5307 is bus master, it
uses the bus to fetch instructions and transfer data to and from external memory. When an
external device is bus master, the MCF5307 can monitor the external master’s transfers and
interact through its chip-select, DRAM control, and transfer termination signals. See
Section 10.4.1.3, “Chip-Select Control Registers (CSCR0–CSCR7),” and Chapter 11,
“Synchronous/Asynchronous DRAM Controller Module.
Two-wire bus arbitration is used where the MCF5307 shares the bus with a single external
device. This mode uses BG
and BD. The external device can ignore BR. Three-wire mode
is used where the MCF5307 shares the bus with multiple external devices. This requires an
external bus arbiter and uses BG
, BD, and BR. In either mode, the MCF5307 bus arbiter
operates synchronously and transitions between states on the rising edge of BCLKO.
Table 18-6 shows the four arbitration states the MCF5307 can be in during bus operation.
Table 18-6. MCF5307 Arbitration Protocol States
State Master Bus BD Description
Reset None Not
driven
Negated The MCF5307 enters reset state from any other state when RSTI
or
software watchdog reset is asserted. If both are negated, the MCF5307
enters implicit or external device mastership state, depending on BG
.
Implicit
master
MCF5307 Not
driven
Negated The MCF5307 is bus master (BG
input is asserted) but is not ready to
begin a bus cycle. It continues to three-state the bus until an internal bus
request.
SYSTEM
1. Decode address and select the appropriate slave
device.
2. Drive data on D[31:24]
3. Assert TA
for one BCLKO cycle
1. Read and store data (D[31:24])
2. Recognize the transfer is done
1. Negate TS
2. Drive TM[2:0] to indicate interrupt
acknowledge (TM[2:0] = interrupt level)
1. Drive 0x7FFFFF on A[31:5]
2. Drive 0x0 on A[1:0]
3. Drive interrupt level on A[4:2]
4. Drive R/W
to read (R/W = 1)
5. Drive SIZ[1:0] to indicate byte (SIZ[1:0] = 01)
6. Drive TT[1:0] and TM[2:0] to indicate interrupt
acknowledge (TT[1:0] = 11; TM[2:0] = interrupt
level)
7. Assert TS
for one BCLKO cycle
MCF5307
Fr
eescale S
emiconduct
or
, I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
nc...