
TM1300 Data Book
Philips Semiconductors
3-8
PRODUCT SPECIFICATION
for PC-hosted TM1300 boards; its final location is deter-
mined 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 TM1300 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 TM1300 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
JTAG interface
0x10 3400
I2C interface
0x10 3000
PCI interface
0x10 2C00
SSI interface
0x10 2800
VLD coprocessor
0x10 2400
Image coprocessor
0x10 2000
Audio Out
0x10 1C00
Audio In
0x10 1800
Video Out
0x10 1400
Video In
0x10 1000
Debug support
0x10 0C00
Timers
0x10 0800
Vectored interrupt controller
0x10 0400
MMIO base
0x10 0000
Main memory, cache control
0x1F FFFFF
0x10 1200
data breakpoints
0x10 1000
instruction breakpoints
0x10 0C60
systimer
0x10 0C40
timer3
0x10 0C20
timer2
0x10 0C00
timer1
0x10 08Fc
intvec31
0x10 08F8
intvec30
0x10 0888
intvec2
0x10 0884
intvec1
0x10 0880
intvec0
0x10 0828
imask
0x10 0824
iclear
0x10 0820
ipending
0x10 081C
isetting3
0x10 0818
isetting2
0x10 0814
isetting1
0x10 0810
isetting0
0x10 0800
excvec
0x10 0400
MMIO_BASE
0x10 0004
DRAM_LIMIT
0x10 0000
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
(Highest priority) vector to DRAM_BASE
EXC
(All exceptions) vector to EXCVEC (programmable)
NMI,
INT
(Non-maskable interrupt, maskable interrupt) use
the programmed vector (one of 32 vectors depend-
ing on the interrupt source)