PNX1300/01/02/11 Data Book
Philips Semiconductors
3-8
PRELIMINARY SPECIFICATION
for PC-hosted PNX1300 boards; its final location is de-
termined by the boot EEPROM for standalone systems.
See
Chapter 13,
“
System Boot
”
for more information.
Figure 3-5
gives a detailed overview of the MMIO mem-
ory map (addresses used are offsets with respect to the
MMIO base). The operating system on PNX1300 can
change MMIO_BASE by writing to the MMIO_BASE
MMIO location. User programs should not attempt this.
Refer to the TriMedia SDE Reference Manual for the
standard method to access the device registers from C
language device drivers.
Only 32-bit load and store operations are allowed to ac-
cess MMIO registers in the MMIO address aperture. The
results are undefined for other loads and stores. Reads
from non-existent MMIO registers return undefined val-
ues. Writes to nonexistent MMIO registers time out.
There are no side effects of accesses to nonexistent
MMIO registers. The state of the PCSW BSX bit has no
effect on the result of MMIO accesses.
The Icache tag and LRU bit access aperture give the
DSPCPU read-only access to the Icache status. Refer to
Section 5.4.8,
“
Reading Tags and Cache Status
”
for de-
tails.
The EXCVEC MMIO location is explained in
Section
3.5.2,
“
EXC (Exceptions).
”
Section 3.5.3,
“
INT and NMI
(Maskable and Non-Maskable Interrupts),
”
describes
the locations that deal with the setup and handling of in-
terrupts: ISETTING, IPENDING, ICLEAR, IMASK and
the interrupt vectors. The timer MMIO locations are de-
scribed in
Section 3.8,
“
Timers.
”
The instruction and
data breakpoint are described in
Section 3.9,
“
Debug
Support.
”
The MMIO locations of each device are treat-
ed in the respective device chapters.
3.5
SPECIAL EVENT HANDLING
The PNX1300 microprocessor responds to the special
events shown in
Table 3-9
, ordered by priority.
With the exception of RESET, which is enabled at all
times, the architecture of the DSPCPU allows special
event handling to begin only during an
interruptible jump
operation (ijmpt, ijmpf or ijmpi) that succeeds (i.e., is a
taken jump). EXC, NMI and INT handling can be initiated
during handling of an EXC or an INT, but
only
during suc-
cessful interruptible jumps.
0x00 0000
Reserved
for
Future Use
Reserved
for
Future Use
0x10 3800
0x10 3400
0x10 3000
0x10 2C00
0x10 2800
0x10 2400
0x10 2000
0x10 1C00
0x10 1800
0x10 1400
0x10 1000
0x10 0C00
0x10 0800
0x10 0400
0x10 0000
JTAG interface
I
2
C interface
PCI interface
SSI interface
VLD coprocessor
Image coprocessor
Audio Out
Audio In
Video Out
Video In
Debug support
Timers
Vectored interrupt controller
MMIO base
Main memory, cache control
0x1F FFFFF
0x10 1200
0x10 1000
data breakpoints
instruction breakpoints
0x10 0C60
0x10 0C40
0x10 0C20
0x10 0C00
systimer
timer3
timer2
timer1
0x10 08Fc
0x10 08F8
intvec31
intvec30
0x10 0888
0x10 0884
0x10 0880
intvec2
intvec1
intvec0
0x10 0828
0x10 0824
0x10 0820
0x10 081C
0x10 0818
0x10 0814
0x10 0810
0x10 0800
imask
iclear
ipending
isetting3
isetting2
isetting1
isetting0
excvec
0x10 0400
MMIO_BASE
0x10 0004
0x10 0000
DRAM_LIMIT
DRAM_BASE
0x01 0000
Icache tags & LRU (r/o)
Figure 3-5. Memory map of MMIO address space (addresses are offset from MMIO_BASE).
Table 3-9. Special Events and Event Vectors
Event
Vector
RESET
EXC
NMI,
INT
(Highest priority) vector to DRAM_BASE
(All exceptions) vector to EXCVEC (programmable)
(Non-maskable interrupt, maskable interrupt) use
the programmed vector (one of 32 vectors depend-
ing on the interrupt source)