![Intel IXP45X Скачать руководство пользователя страница 534](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092534.webp)
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors—PCI Controller
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
Develepor’s Manual
August 2006
534
Order Number: 306262-004US
no request sent to the PCI Core. The Slave Interface only issues the retry on the cycle
following the address phase on AHB, never in the middle of a burst. Bursts of 1 to 255
words are supported.
10.3.2.10.3 AHB Slave Write Accesses
An AHB Slave Write occurs when an external AHB master performs a write operation
addressing one of the PCI Controller AHB address regions (indicated by the assertion of
arbs_hsel_pcc or arbs_hsel_pcc_mmr by the AHB arbiter). When an AHB Slave Write
occurs, the Slave Interface checks the status of the Initiator Request FIFO and Initiator
Transmit FIFOs to determine the course of action:
• If a PCI read is currently pending, a retry is issued on AHB. The request is not
written to the Request FIFO.
• If the DMA Controller has been granted access to the Request FIFO, a retry is
issued on AHB for direct writes to PCI (arbs_hsel_pcc_asserted) or writes to any of
the four pci_np_xxx registers. Writes to any of the other CSRs complete
immediately. The request is not written to the Request FIFO in the direct PCI write
case.
• If the operation is a direct write to PCI and either the Request FIFO is full or the
Transmit FIFO has insufficient storage available for the entire burst (INCR bursts
are assumed to be up to 8 words), a RETRY is issued on AHB and the request is not
written to the Request FIFO.
• If the operation is a direct write to PCI and is a SINGLE, INCR with burst length of 8
or less, INCR4 or INCR8, and the Request FIFO is not full and the Transmit FIFO has
sufficient storage for all of the data in the entire burst, the request is immediately
posted in the Request FIFO, the data is written to the Transmit FIFO and the
transfer completes on AHB. In the case of an INCR write of more than eight words,
if the Transmit FIFO becomes full during the transfer, wait states will be inserted on
the AHB bus until the FIFO becomes not full again.
10.3.2.10.4 AHB Accesses of Local PCI Configuration Registers
The PCI Controller local PCI Configuration registers (listed in
) in
the PCI Core are accessed from the AHB bus via a set of configuration port CSRs:
pci_crp_ad_cbe, pci_crp_wdata, and pci_crp_rdata.
A read access is processed as follows:
1. An AHB master writes the PCI function number, PCI configuration register word
address, and read command to the PCI_CRP_AD_CBE register. Note: the PCI
Controller has one PCI function so the function number must always be 0.
2. The hardware reads the addressed register in the PCI Core and loads the data into
the PCI_CRP_RDATA register. During this operation, any access of CSR space from
the AHB will be retried.
3. The AHB master reads the pci_crp_rdata register to retrieve the data. Note that
this AHB read operation can immediately follow the write in step 1. The hardware
will retry the read until the data is valid thus making any data validity handshaking
transparent to software.
A write access is processed as follows:
1. An AHB master writes the PCI function number, PCI configuration register word
address, write command and active-low byte enables to the PCI_CRP_AD_CBE
register. Note: the PCI Controller has one PCI function so the function number must
always be 0.
2. The AHB master writes the data to be written to the PCI_CRP_WDATA register.