English
Language : 

PNX1300 Datasheet, PDF (63/548 Pages) NXP Semiconductors – Media Processors
Philips Semiconductors
DSPCPU Architecture
• functional units should be ‘recovered’ from any prior
operation issues
Writeback constraint:
• No more than 5 results should be simultaneously
written to the register file at any point in time (write-
back occurs ‘latency’ cycles after issue)
Figure 3-3 shows all functional units of PNX1300, includ-
ing the relation to issue slots, and each functional unit’s
latency (e.g. 1 for CONST, 3 for FALU, etc.). With the ex-
ception of FTOUGH, each functional unit can accept an
operation every clock cycle, i.e. has a recovery time of 1.
The binding of operations to functional unit types is sum-
marized in Table 3-8. In Appendix A, “PNX1300/01/02/
11 DSPCPU Operations”, each operation lists the pre-
cise functional unit and unit latency.
Table 3-8. Functional unit operations
unit type
const
alu
dspalu
dspmul
dmem
dmemspec
shifter
branch
falu
ifmul
fcomp
ftough
operation category
immediate operations
32-bit arithmetic, logical, pack/unpack
dual 16-bit, quad 8-bit multimedia arithmetic
dual 16-bit and quad 8-bit multimedia multiplies
loads/stores
cache coherency, cache control, prefetch
multi-bit shift
control flow
floating point arithmetic & conversions
32-bit integer and floating point multiplies
single cycle floating point compares
iterative floating point square root and division
3.4 MEMORY AND MMIO
PNX1300 defines four apertures in its 32-bit address
space: the memory hole, the DRAM aperture, the MMIO
aperture and the PCI apertures (See Figure 3-4).The
memory hole covers addresses 0..0xff. The DRAM and
MMIO apertures are defined by the values in MMIO reg-
isters; the PCI apertures consist of every address that
does not fall in the other three apertures.
3.4.1 Memory Map
DRAM is mapped into an aperture extending from the
address in DRAM_BASE to the address in
DRAM_LIMIT. The maximum DRAM aperture size is 64
MB.
The MMIO aperture is located at address MMIO_BASE
and is a fixed 2-MB size.
In the default operating mode, al l memory accesses not
going to either the hole, DRAM or MMIO space are inter-
preted as PCI accesses. This behavior can be overrid-
den as described in Section 5.3.8, “Memory Hole and
PCI Aperture Disable.”
The MMIO aperture and the DRAM aperture can be at
any naturally aligned location, in any order, but should
not overlap; if they do, the consequences are undefined.
The values of DRAM_BASE, DRAM_LIMIT, and
MMIO_BASE are set during the boot process. In the
case of a PCI host assisted boot, the values are deter-
mined by the host BIOS. In case of standalone boot (i.e.,
PNX1300 is the PCI host), the values are taken from the
boot ROM. Refer to Chapter 13, “System Boot” for de-
tails. DSPCPU update of DRAM_BASE and
MMIO_BASE is possible, but not recommended, see
Section 11.6.3, “MMIO/DRAM_BASE updates.”
3.4.2 The Memory Hole
The memory hole from address 0 to 0xff serves to protect
the system from performance loss due to speculative
loads. Due to the nature of C program references, most
speculative loads issued by the DSPCPU fall in the
range covered by the hole. Activated by default upon RE-
SET, the hole serves to ensure that these speculative
loads do NOT cause PCI read accesses and slow down
the system. The value returned by any data load from the
hole is 0. The hole only protects loads. Store operations
in the hole do cause writes to PCI, SDRAM or MMIO as
determined by the aperture base address values. If the
SDRAM aperture overlaps the memory hole, the memory
hole is ignored.
The hole can be temporarily disabled through the
DC_LOCK_CTL register. This is described in Section
5.3.8, “Memory Hole and PCI Aperture Disable.”
3.4.3 MMIO Memory Map
Devices are controlled through memory-mapped device
registers, referred to as MMIO registers. To ensure com-
patibility with future devices, any undefined MMIO bits
should be ignored when read, and written as ‘0’s. Some
devices can autonomously access data memory (DMA)
and most devices can cause CPU interrupts.
The 2-MB MMIO aperture is initially located at address
0xEFE00000 on RESET; it is relocated by the PCI BIOS
0xFFFF FFFFF
PCI
2 MB
MMIO Aperture
MMIO_BASE
PCI
DRAM_LIMIT
1 MB - 64 MB
DRAM Aperture
DRAM_BASE
0x0000 0000
PCI
256byte hole
Figure 3-4. PNX1300 memory map.
PRELIMINARY SPECIFICATION
3-7