
Philips Semiconductors
PCI Interface
PRODUCT SPECIFICATION
11-11
while a request of similar type is in progress, the PCI in-
terface ignores the second command and sets the ap-
propriate error bit in the status register.
When the DSPCPU issues either an io_cycle or
config_cycle request while a previous request of either
type is already in progress, the PCI interface sets bit 8 in
BIU_STATUS. When the DSPCPU issues a dma_cycle
while a previous one is already in progress, the PCI in-
terface sets bit 9 in BIU_STATUS. To reset either of the
error bits 8 or 9 in BIU_STATUS write a ‘1’ to it.
RTA (Received target abort). This bit is set when
TM1300 initiated a transaction that was aborted by the
target. To reset this bit, write a ‘1’ to this bit position. This
bit is set simultaneous with the RTA bit in the configura-
tion space status register, but is cleared independently.
RMA (Received master abort). This bit is set when
TM1300 initiated a transaction and aborts it. This usually
signals a transaction to a nonexistent device. To reset
this bit, write a ‘1’ to this bit position. This bit is set simul-
taneous with the RMA bit in the configuration space sta-
tus register, but is cleared independently.
TTE (Target timer expired). In normal operation, a read
of a TM1300 data item is performed on retry basis:
TM1300 tells the external master to retry, meanwhile it
fetches the data item across the highway. This bit is set
if an external master did not retry a read of a TM1300
data item within 32768 PCI clocks. The requested data is
discarded. To reset this bit, write a ‘1’ to this bit position.
This is purely a software information bit. No software ac-
tion is required when this condition occurs, but it may in-
dicate a non-compliant or defective master on the bus.
11.7.5
BIU_CTL Register
The BIU_CTL register contains bits that control miscella-
neous aspects of the PCI interface operation. Following
are descriptions of the fields.
SE (Swap bytes enable). This bit is initialized after reset
to ’0’, which causes the PCI interface to operate in its de-
fault big-endian mode. Writing a ’1’ to SE causes access-
es to MMIO registers over the PCI interface to be made
in little endian mode.
BO (Burst mode off). This bit is initialized to ’0’, which
allows the PCI interface to support burst-mode writes as
a target on the PCI bus. Setting this bit to ’1’ disables
burst-mode writes.
With burst mode enabled, the PCI interface buffers as
much data as possible into r_buffer before issuing a dis-
connect to the PCI initiator. With burst mode disabled,
the PCI interface buffers only one data phase before is-
suing a disconnect to the PCI initiator.
IntE (Interrupt enables). The bits in the IntE field control
the signaling of interrupts to the DSPCPU for PCI inter-
face events. These events raise DSPCPU interrupt 16 if
enabled. Interrupt 16 must be set up as a level triggered
interrupt. Table 11-14 lists the function of each IntE bit.
IntE is initially set to ‘0’s (interrupts disabled).
Note that the error condition masked by bit 6 (see Sec-
tion 11.7.4, “BIU_STATUS Register”) occurs when either
a config_cycle or an io_cycle is requested and a request
of either type is already in progress. That is, the second
request need not be of exactly the same type that is al-
ready in progress.
Table 11-12. PCI MMIO registers and bus cycles
Internal Cycle
Registers Involved
mmio_cycle
(MMIO register R/W)
All registers accessible by
external PCI devices
mem_cycle
(PCI-space memory R/W)
PCI_ADR,
PCI_DATA
dma_cycle
(Block data transfer)
SRC_ADR,
DEST_ADR,
DMA_CTL
IO_cycle
(I/O register R/W)
IO_ADR,
IO_DATA,
IO_CTL
cong_cycle
(Conguration register R/W)
CONFIG_ADR,
CONFIG_DATA,
CONFIG_CTL
Table 11-13. PCI MMIO register accessibility
Register
MMIO_BASE
Offset
Accessibility
DSPCPU
External
Initiator
DRAM_BASE
0x10 0000
R/W
MMIO_BASE
0x10 0400
R/W
BIU_STATUS
0x10 3004
R/W
BIU_CTL
0x10 3008
R/W
PCI_ADR
0x10 300C
R/W
–/–
PCI_DATA
0x10 3010
R/W
–/–
CONFIG_ADR
0x10 3014
R/W
CONFIG_DATA
0x10 3018
R/W
CONFIG_CTL
0x10 301C
R/W
IO_ADR
0x10 3020
R/W
IO_DATA
0x10 3024
R/W
IO_CTL
0x10 3028
R/W
SRC_ADR
0x10 302C
R/W
DEST_ADR
0x10 3030
R/W
DMA_CTL
0x10 3034
R/W
INT_CTL
0x10 3038
R/W
Table 11-14. IntE bit functions
BIU_CTL Bit
If set to ‘1’, interrupt DSPCPU when...
2
cong_cycle done
3
io_cycle done
4
dma_cycle done
5
pci_dram write cycle done
6
second cong_cycle or io_cycle requested
7
second dma_cycle requested