
2-68
MPC7400 RISC Microprocessor Users Manual
Instruction Set Summary
2.3.5.4 Optional External Control Instructions
The PowerPC architecture deTnes an optional external control feature that, if implemented,
is supported by the two external control instructions,
eciwx
and
ecowx
. These instructions
allow a user-level program to communicate with a special-purpose device. These
instructions are provided in the MPC7400 and are summarized in Table 2-51.
Table 2-51. External Control Instructions
The
eciwx
/
ecowx
instructions let a system designer map special devices in an alternative
way. The MMU translation of the EA is not used to select the special device, as it is used
in most instructions such as loads and stores. Rather, the EA is used as an address operand
that is passed to the device over the address bus. Four other signals (the burst and size
signals on the system bus) are used to select the device; these four signals output the 4-bit
resource ID (RID) field located in the EAR. The
eciwx
instruction also loads a word from
the data bus that is output by the special device. For more information about the relationship
between these instructions and the system interface, refer to Chapter 8, òSignal
Descriptions.ó
Data Cache Block
Flush
dcbf
r
A
,r
B
The EA is computed, translated, and checked for protection violations:
¥ For cache hits with the tag marked modiTed (M), the cache block is
written back to memory and the cache entry is invalidated.
¥ For cache hits with the tag marked not modiTed (M), the entry is
invalidated.
¥ For cache misses, no further action is taken.
A
dcbf
is broadcast if M = 1 (coherency enforced).The instruction acts
like a load with respect to address translation and memory protection. It
executes regardless of whether the cache is disabled or locked.
The exception priorities (from highest to lowest) for
dcbf
are as follows:
¥ BAT protection violationDSI exception
¥ TLB protection violationDSI exception
Instruction Cache
Block Invalidate
icbi
r
A
,r
B
This instruction is always broadcast on the bus (independent of the M
state).
icbi
should always be followed by a
sync
and an
isync
to make
sure that the effects of the
icbi
are seen by the instruction fetches
following the
icbi
itself.
1
A program that uses
dcbt
and
dcbtst
instructions improperly performs less efTciently. To improve performance,
HID0[NOOPTI] can be set, which causes
dcbt
and
dcbtst
to be no-oped at the cache. They do not cause bus
activity and cause only a 1-clock execution latency. The default state of this bit is zero which enables the use of
these instructions.
Name
Mnemonic
Syntax
Implementation Notes
External
Control In
Word Indexed
eciwx
r
D
,r
A
,r
B A transfer size of 4 bytes is implied; the TBST and TSIZ[0:2] signals are
redeTned to specify the resource ID (RID), copied from bits EAR[28D31].
For these operations, TBST carries the EAR[28] data. Misaligned operands
for these instructions cause an alignment exception. Addressing a location
where SR[T] = 1 causes a DSI exception. If MSR[DR] = 0 a programming
error occurs and the physical address on the bus is undeTned.
Note
: These instructions are optional to the PowerPC architecture.
External
Control Out
Word Indexed
ecowx
r
S
,r
A
,r
B
Table 2-50. User-Level Cache Instructions (Continued)
Name
Mnemonic
Syntax
Implementation Notes