![Intel IXP45X Скачать руководство пользователя страница 502](http://html1.mh-extra.com/html/intel/ixp45x/ixp45x_developers-manual_2073092502.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
502
Order Number: 306262-004US
A PCI bus can have up to 32 devices (logically but there are loading restrictions that
limit this number) per segment and up to 256 segments.
shows the address
makeup for Type 0 PCI bus configuration cycles and
shows the address
makeup Type 1 PCI bus configuration cycles.
Configuration cycles will be produced by the IXP45X/IXP46X network processors using
four 32-bit Configuration and Status Registers referred to as the Non-Pre-fetch
Registers. These registers are:
• PCI Non-Pre-fetch Access Address (PCI_NP_AD) Register
• PCI Non-Pre-fetch Access Command/Byte Enables (PCI_NP_CBE) Register
• PCI Non-Pre-fetch Access Write Data (PCI_NP_WDATA) Register
• PCI Non-Pre-fetch Access Read Data (PCI_NP_RDATA) Register
The Non-Pre-fetch Register accesses can also be used to produce memory and I/O PCI
bus cycle. However, these cycles can only be single cycle accesses.
Non-Pre-fetch Read Cycles will be implemented by placing a 32-bit PCI address in the
PCI Non-Pre-fetch Access Address (PCI_NP_AD) Register and then placing the PCI
Command Type and Byte Enables for the desired read cycle in the PCI Non-Pre-fetch
Access Command/Byte Enables (PCI_NP_CBE) Register. The PCI Controller then will
initiate the proper transaction on the PCI bus to read the requested data. Then the
returned data is placed in the PCI Non-Pre-fetch Access Read Data (PCI_NP_RDATA)
Register.
To avoid incorrect data from being read by the initiator of this transaction, retries will
be issued to any AHB master that attempts to read the PCI Controller Configuration and
Status Registers prior to the Non-Pre-fetch PCI read data being placed into the PCI
Non-Pre-fetch Access Read Data (PCI_NP_RDATA) Register. This action assures that the
next read of the PCI Non-Pre-fetch Access Read Data (PCI_NP_RDATA) Register does
not contain stale data.
Non-Pre-fetch Write Cycles will be implemented by:
• Placing a 32-bit PCI address in the PCI Non-Pre-fetch Access Address (PCI_NP_AD)
Register
Figure 78.
Type 0 Configuration Address Phase
31
20
11
10
8
7
2
1
0
(Reserved)
Function
Number
Register Number
Cycle
Type
Cycle Type=00 for Type 0 Configuration Cycles
Register Number=Defines one of 64 PCI defined 32-bit registers
Function Number=Decodes 1 of 8 possible functions per PCI device.
Figure 79.
Type 1 Configuration Address Phase
31
24
23
16
15
11
10
8
7
2
1
0
(Reserved)
Bus Segment Number
Device Number Function
Number
Register Number
Cycle
Type
Cycle Type =01 for Type 1 Configuration Cycles
Register Number =Defines one of 64 PCI defined 32-bit registers
Function Number=Decodes one of eight possible functions per PCI device (only Function 0 supported for the
IXP45X/IXP46X network processors)
Device Number =Decodes one of 32 possible devices per PCI bus segment (may be limited by loading
restrictions, refer to the PCI Local Bus Specification, Rev. 2.2)
Bus Segment Number = Decodes one of 256 possible bus segments per PCI Bus (refer to the PCI Local Bus
Specification, Rev. 2.2)