![Intel IXP45X Скачать руководство пользователя страница 537](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092537.webp)
Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
August 2006
Develepor’s Manual
Order Number: 306262-004US
537
PCI Controller—Intel
®
IXP45X and Intel
®
IXP46X Product Line of Network Processors
While a particular channel is accessing the Initiator Request FIFO, accesses to the PCI
bus coming in to the AHB Slave Interface from the AHB will be retried. The access will
be flagged by the hardware to signal the DMA Controller channels that a PCI access is
pending (AHB masters must attempt retried transfers until complete). This enables the
DMA channels to permit the AHB initiated PCI access to go through to the PCI bus.
Additionally, while the AHB Master Interface is in use by a DMA channel, PCI requests
that appear in the Target Receive FIFO are flagged to allow these received requests to
gain access of the AHB bus.
Access to CSRs from the AHB bus is unrestricted while the DMA channels are operating.
ability to access the PCI Controller Control and Status Registers is provided to allow the
Intel XScale processor to set up the off-line DMA Register set while the on-line DMA
Register set is operating.
The register sets associated with the DMA channels are as follows:
1. PCI-to-AHB Transfers
a. Register Set 0
— PCI-to-AHB DMA AHB Address Register 0 (PCI_PTADMA0_AHBADDR)
— PCI-to-AHB DMA PCI Address Register 0 (PCI_PTADMA0_PCIADDR)
— PCI-to-AHB DMA Length Register 0 (PCI_PTADMA0_LENGTH)
b. Register Set 1
— PCI-to-AHB DMA AHB Address Register 1 (PCI_PTADMA1_AHBADDR)
— PCI-to-AHB DMA PCI Address Register 1 (PCI_PTADMA1_PCIADDR)
— PCI-to-AHB DMA Length Register 1 (PCI_PTADMA1_LENGTH)
2. AHB-to-PCI Transfers
a. Register Set 0
— AHB-to-PCI DMA AHB Address Register 0 (PCI_ATPDMA0_AHBADDR)
— AHB-to-PCI DMA PCI Address Register 0 (PCI_ATPDMA0_PCIADDR)
— AHB-to-PCI DMA Length Register 0 (PCI_ATPDMA0_LENGTH)
b. Register Set 1
— AHB-to-PCI DMA AHB Address Register 1 (PCI_ATPDMA1_AHBADDR)
— AHB-to-PCI DMA PCI Address Register 1 (PCI_ATPDMA1_PCIADDR)
— AHB-to-PCI DMA Length Register 1 (PCI_ATPDMA1_LENGTH)
The PCI Address Registers described above are used to specify the beginning 32-bit
word address for the PCI side of the DMA transfers. The AHB Address Registers,
described above, are used to specify the beginning 32-bit word address for the AHB
side of the DMA transfers. The least significant two bits of both addresses are hard-
wired to logic 0. Thus, all transfers are word-aligned.
The Length Registers are used for three purposes:
• Sixteen bits to define a word count
Bits 15:0 of the Length Registers define the word count.
• One bit to enable the DMA transfer
Bit 31 of the Length Registers enables the DMA transfer to execute. When bit 31 of
the Length Registers is set to logic 1, the DMA transfer executes until a word count
of zero is reached. When the word count reaches zero and bit 31 of the Length
Registers is set to logic 1, bit 31 of the Length Register is cleared to logic 0. When
bit 31 of the Length Register is set to logic 0, the register set associated with the