
TM1100 Preliminary Data Book
Philips Semiconductors
12-6
PRELIMINARY INFORMATION
File: boot.fm5, modified 7/23/99
gram can consist of up to 500 32-bit words of DSPCPU
instructions. The byte count must be a multiple of four.
Note that the bytes are stored in the EEPROM in a byte
swapped order per group of 4 compared to SDRAM, as
After the entire DSPCPU bootstrap program is loaded
into SDRAM at DRAM_BASE, the system boot logic re-
leases the DSPCPU from the reset state. At this point,
the DSPCPU begins executing the bootstrap program
starting at DRAM_BASE and TM1100 is fully operation-
al. At the same time, the boot logic releases the I2C in-
terface.
12.4
HOST-ASSISTED BOOT
DESCRIPTION
For a host-assisted bootstrap, the complete bootstrap
process consists of three distinct stages, but the system
boot hardware performs only the first stage. The other
two stages are the responsibility of the host system.
12.4.1
Stage 1: TM1100 System Boot
Hardware
In the first stage, the TM1100 hardware must be initial-
ized enough to allow the host system to query and ma-
nipulate TM1100 resources. The system boot hardware,
Subsystem Vendor ID, MM_CONFIG, and PLL_RATIOS
registers, waits for the PLLs to lock, enables the internal
highway and main-memory interface (MMI), but leaves
the DSPCPU in the reset state. After this minimal initial-
ization, the host system can finish the bootstrap process.
At the completion of stage 1, the TM1100 hardware is
ready to respond to PCI configuration space accesses,
and the boot block has released the I2C interface.
12.4.2
Stage 2: Host-System PCI
Configuration
Stage 2 is carried out either by the host-system PCI
BIOS or by a combination of the BIOS and the host op-
erating system (e.g., Windows 95). During this stage, the
host system configures all PCI-bus clients.
The PCI-bus configuration consists of querying the bus
clients to determine the following:
The number of PCI base-address registers imple-
mented by each client. For tm1100, the number of
PCI
base-address
registers
is
always
two
(MMIO_BASE and DRAM_BASE).
The size of each aperture associated with the base-
address registers. For tm1100, the size of the MMIO
aperture is always 2 MB, while the size of the
SDRAM aperture can be from 1 MB to 64 MB with
the constraint that the size must be a power of two
(seven distinct sizes).
Using this information, the host system relocates each
address aperture to eliminate overlaps in the PCI ad-
dress space. The host system accomplishes the reloca-
tion by considering each apertures size and then writing
an appropriate starting address to each base-address
register. For tm1100, the base addresses of the MMIO
and SDRAM apertures must be relocated in this way.
Note that in the case of autonomous boot, this relocation
is done statically by the system boot hardware when it
simply
copies
the
values
of
MMIO_BASE
and
DRAM_BASE from the serial EEPROM into these regis-
ters.
The steps of the PCI protocol for determining the size of
sion):
The host writes a 32-bit word of all ones (0xffffffff) to
the base-address register.
The host reads the base-address register immedi-
ately after the write. The value returned will have
zeros in all don’t-care bits and ones in all required
address bits. The required address bits form a left-
aligned (i.e., starting at the most-signicant bit) con-
tiguous eld of ones.
This left-aligned eld of ones effectively species the
size of the address aperture by indicating the bits of
the base-address register that are signicant for relo-
cation. That is, an address aperture of size 2n can
only begin on a 2n-byte-aligned boundary.
As an example, consider the case of the MMIO aperture.
The host will perform the following steps during stage 2
of the bootstrap process:
Write 0xffffffff to MMIO_BASE.
Read from MMIO_BASE, which returns the value
0xffe00000. The host sees that this value has an 11-
bit left-aligned eld of ones, which indicates that the
aperture can only be relocated on 2-MB boundaries;
thus, the aperture size is 2 MB.
Write a new value to MMIO_BASE with the top 11
bits set to relocate the MMIO aperture to a 2-MB
region of PCI address space that does not conict
with other PCI address apertures.
At the completion of stage 2, the TM1100 hardware is
ready to respond to host configuration space accesses,
host MMIO accesses and host SDRAM aperture access-
es. The DSPCPU is still in RESET state.
12.4.3
Stage 3: TM1100 Driver Executing on
the Host
During the final stage of the bootstrap process, the
TM1100 software driver executing on the host system
will write to SDRAM a program for the DSPCPU, and set
any MMIO registers as it sees fit. When the initial pro-
gram load is complete, the driver releases the DSPCPU
from its reset state by a write to the BIU_CTL register
Now, with the DSPCPU and host both running, the
TM1100 bootstrap process is complete.