System ACE CompactFlash Solution
10 www.xilinx.com DS080 (v1.4) January 3, 2002
1-800-255-7778 Advance Product Specification
R
Microproce ssor Inte rf ac e (MPU)
The MPU Interface provides a useful me ans of monitorin g
the status of and controlling the Sy ste m ACE Contro ll er, as
well as ACE Flash card READ / WRITE data. T he MPU is
not required for normal operation, but when used, it provides numerous capabilities. This interface enables communication between an MPU device and a CompactFlash
module and the FPGA target system.
The MPU interface is composed of a set of registers that
provide a means for communicating with CompactFlash
control logic, configuration control logic, and other
resources in the ACE Contro ller. Specifically, this interface
can be used to read the identity of a Compac tFlash device
and read/write sectors from or to a CompactFlash device.
The MPU interface can also be used to control configuration
flow. The MPU interface enables monitoring of ACE Controller configuration status and error conditions. The MPU interface can be used to delay configuration, start configuration,
determine the source of configuration (CompactFlash or
MPU), control the bitstream version, reset the device, etc.
Two important issues should be understood when using the
microprocessor port:
• For the controller to be properly synchronized, the MPU
must provide the clock.
• The MPU must comply with System ACE timing diagrams.
This general-pur pose microproc essor interface can update
the CompactFlash, read the ACE status or obtain direct
access to the JTAG configuration ports using the ACE
Microprocessor commands. This interface suppor ts either
8-bit (default) or 16-bit data transfers. The bus width can be
configured dynamically.
All communications between the ACE Controller and a host
microprocessor involve transfer of data to or from ACE registers. There are 128 addres sable registers in 8- bit mode
and 64 addressable registers in 16-bit mode. For easy
selection of a new configuration from CompactFlash data,
the MPU interface allows for easy reconfiguration of an
FPGA chain or capability.
The following sections describe supported operations when
using the MPU interface.
MPU Port Signal Description
MPU interface port signals are described in Table 6.
Table 6: MPU Interface Port Signal Description
Name Width Direction Active Description
MPA 7 In N/A
Synchronous address inputs. The internal address register is loaded by MPA
by a combination of the rising edge of CLK and MPCE
LOW.
MPD 16 In/Out N/A
Synchronous data input/output pins. Both the data input and output path are
registered and triggered by the rising edge of CLK.
MPCE
1InLOW
Synchronous active LOW chip enable. MPCE
LOW is used to enable the
MPU interface. MPCE
LOW is also used in conjunction with MPOE LOW to
enable the MPD output.
MPWE
1InLOW
Synchronous active LOW write enable. A high-to-low-to-high transition must
occur on MPWE
in three consecutive clock cycles in order for the write to take
place.Du ring a va lid write cycle , MPCE
must be LOW a nd MPD must be valid
during the clock cycle that MPWE
.
MPOE 1InLOW
Asynchronous active LOW output enable. Both MPOE
and MPCE must be
LOW to read from the MPU interface. When either MPOE
or MPCE is HIGH,
the MPD pins of the ACE Controller are in a high-impedance state.
MPBRDY 1 Out HIGH
Synchronous active HIGH buffer ready output. During data buffer read mode
MPBRDY is HIGH when the data in the DATABUF buffer is valid. During data
buffer write mode MPBRDY is HIGH when data can be written to the
DATABUF buffer.
MPIRQ 1 Out HIGH
Synchronous active HIGH interrupt request output. MPIRQ HIGH indicates
that an interrupt condition has occurred in the MPU interface. All interrupt
conditions must be manually cleared before MPIRQ will go LOW. MPIRQ is
always LOW when interrupts are disabled.