MPC563XM Reference Manual, Rev. 1
190
Freescale Semiconductor
Preliminary—Subject to Change Without Notice
8.4.3.2
Master Port Decoders
The decoders are very simple as they ensure an access request is allowed to be made and that the slave port
targeted is actually present in the design. The decoders feeding the state machine are always enabled. The
decoders that select the slave are enabled only when the master port controlling state machine wants to
make a request to a slave port. This is necessary so that if a master port is making an access to a slave port
and is being wait stated, and its next access is to a different slave port, the request to the second slave port
can be held off until the access to the first slave port is terminated.
The decoders also output a “hole decode” or illegal access signal which tells the state machine that the
master is trying to access a slave port that does not exist.
8.4.3.3
Master Port Capture Unit
The capture unit simply captures the state of the master’s address and control signals if the XBAR cannot
immediately pass the master’s request through to the proper slave port. The capture unit consists of a set
of flops and a mux which selects either the asynchronous path from address and control or the flopped
(captured) address and control information.
8.4.3.4
Master Port Registers
The registers in the master port are only those registers associated with this particular master port. The read
and write interface for the registers is a quasi-IP bus interface. It is not a full IP bus interface at this level
because not all the IP bus signals are routed this deep in the design.
There is a register control block at the same level of the master port and slave port instantiations in the
XBAR. This control block ensures that all accesses are 32 bit supervisor accesses before passing them on
to the master ports.
The register outputs are connected directly to the state machine.
8.4.3.5
Master Port State Machine
8.4.3.5.1
Master Port State Machine States
The master side state machine’s main function is to monitor the activities of the master port. The state
machine has six states:
busy
,
idle
,
waiting
,
stalled
,
steady state
,
first cycle error response
and
second
cycle error response
.
The
busy
state is used when the master runs a BUSY cycle to the master port. The master port maintains
its request to the slave port if it currently owns the slave port; however, if it loses control of the slave port
it will no longer maintain its request. If the master port loses control of the slave port it will not be allowed
to make another request to the slave port until it runs a NSEQ or SEQ cycle.
The
idle
state is used when the master runs a valid IDLE cycle to the master port. The master port makes
no requests to the slave ports (disables the slave port decoder) and terminates the IDLE cycle.