
10/88
ST40RA166
3 Architecture
3.3.3
EMI/MPX interface
The EMI/MPX interface contains the following blocks. For full details of the configuration options of
the EMI please see the
ST40 System Architecture Manual, Volume 2: Bus Interfaces.
EMI memory interface initiator
The EMI provides access to ROMs, SDRAM, memory mapped asynchronous external peripherals
and synchronous MPX bus peripherals. The EMI supports burst mode flash ROM and MPX for
memory-mapped device coupling. The ST40RA166 GPDMA unit accesses external devices and
two sets of DMA channels control signals are provided for this purpose.
EMPI memory interface target
The EMPI is a synchronous MPX target that allows for an external MPX initiator to access the
ST40RA166 internal memory space. The EMPI contains a general purpose control channel and
four high performance channels each of which implements a write buffer and a pair of 32-byte read-
ahead buffers able to optimize external device burst access to and from the ST40RA166 internal
memory. These buffers can be associated with memory regions within the ST40RA166 and external
DMA channels. Four sets of DMA handshake signals are provided to the EMPI to optimize long
burst transfers between the ST40RA166 and external initiators like the STi5514.
MPX bus arbiter
The ST40RA166 has an internal programmable bus arbiter to optimize utilization of the MPX bus.
The ST40RA166 MPX arbiter supports one external initiator and has programmable bus priority
(ST40RA166 or external device), bus parking (ST40RA166, external, idle or last user) and latency
timers. The internal arbiter can be bypassed if an external arbiter supporting more initiators is
required.
3.4
I/O devices
3.4.1
Mailbox
The ST40 and the external microprocessor communicate with each other and synchronize their
activities using the memory-mapped mailbox. Processes generate interrupts to either CPU, and
send and receive messages between the two CPUs. There are buffers for message queueing in
both directions and interrupt bits can be set in each direction. Access to the mailbox from external
devices is through the ST40RA166 EMPI or the PCI target interface.
3.5
Software
3.5.1
Development systems and software
The ST40RA166 supports application development, with a full range of debug features and an
emulation mode (ASE). The ASE mode has a dedicated 1-Kbyte buffer for emulator firmware,
supporting performance counters and branch trace. The ST40RA166, with its memory
management unit, supports standard operating systems including WindowsCE and Linux. The
ST40 has a wide range of development support from ST and third parties, and efficiently runs
applications written in C, C++ and Java.
ST’s own tools include:
q
C/C++ compilers,
q
debugger,
q
proprietary OS.