PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

PCI Resource conflict using PLX9054

Solved!
Go to solution

We use a PLX9054 PCI chip in our PXI designs. We have found that for some computers, only four modules can be used per PCI bus segment -- the fifth module reports a resource conflict. Looking at the detailed resource usage, there does not seem to be any conflict in the address range or IO address range. On some computers, all five (or more) modules work without a problem.

The problem may be in what addresses are assigned to the modules -- some debugging suggests that the conflicted module has been assigned addresses reserved for the ISA bus, and are not carried across the PCI bridge we use to run the PXI crates.

 

Has anyone else seen this? PLX tech support has not provided any insight. 

0 Kudos
Message 1 of 9
(4,950 Views)

Can you give a few more details, such as what hosts you've tried, what chassis and controller you're using, OS, memory, and what resources each module is requesting?

 

Some systems have trouble if the modules request too much memory space.  A single module requesting 128 MB can break a lot of systems.

 

- Robert

Message 2 of 9
(4,930 Views)

I (and my customers ...) have tried several hosts, primarily commodity computers (Dell Dimension, etc). We typically connect through an MXI-4 optical PCI bridge. In our labs, we have an HP4000 series workstation which shows the problem, while an HP 8000 series workstation can communicate with all modules in the crate. The problem does not depend on OS -- XP and Vista both show the same issue. The problem seems related to the BIOS; we have updated the BIOS of the 4000 series workstation to no effect. The problem seems related to the specific address range that is assigned to the module -- I do nopt see any conflicts in the actual memory or I/O range assignments when I look in detail at the resource list.

 

The module's required resources are 256 words of I/O space, one 4 kB memory space, and another 256B memory space. The amount of memory requested is definitely not the issue.

0 Kudos
Message 3 of 9
(4,927 Views)
Solution
Accepted by topic author pmgxia

I agree that the problem is the BIOS, not the OS.  From the resources requested, though, I suspect that the problem is I/O space.  Can you change the resource requests to eliminate the I/O space requirement?  It's a scarce resource that's likely to cause problems, and I'd recommend not using it even if it's not the cause of this particular problem.

 

A bridge's minimum I/O allocation is 4kB, and there are only 16 allocations (64 kB) available.  While that sounds like plenty for what you're doing, it's complicated by ISA mode aliasing, which essentially limits you to 256 bytes of every 1024 bytes.  And the BIOS might not allocate I/O space well (I've seen it before).

 

For your memory space requests, you might as well make them both 4kB.  The minimum increment for a bridge is 1 MB, so all boards in your chassis can use up to 128 kB without using any more system resources.

 

Let me know if using only memory space fixes it.

 

- Robert

Message 4 of 9
(4,897 Views)

Your description of the I/O space allocations and the ISA aliasing make it very clear that this is an I/O space issue.

 

We figured out how to set up the PLX9054 not to request any I/O space, and that solved the problem.

 

Thank you! 

0 Kudos
Message 5 of 9
(4,870 Views)

Dear Friends,

                    I am using plx9054 for DMA Transfer hereh I am facing problems while reading the data.
Its getting hang when at the time of read operation. Can anyone help me out to sort my issue.

Expecting the Suggesstions.

0 Kudos
Message 6 of 9
(3,825 Views)

PLX,

 

We would love to help you sort out your issue.  However, we need more information than it just hanging up on read.

 

What is your application? What type of environment are you in?

 

 

Daniel

Applications Engineer
National Instruments
0 Kudos
Message 7 of 9
(3,812 Views)

Hello Mr.Daniel,

                      Thanks for your Reply....

 

                      I have developed the application in VC++, which is used to transfer data from DMA to local bus, Actually this i have developed as a patch. Compu Serve SBC is using for this, Data has transfered from DMA to local bus using PLX9054 card, while writing into DMA it working good and while reading from there only hanging. I am confused beacuse the application ios working excellent in the demo card which they provided. But it is not working with our custom card. Need to know whether it may beacause of H/W or the application. Unfortunately i could not use Labview due to the memory in the SBC.

                     

 

0 Kudos
Message 8 of 9
(3,799 Views)

plx9054,

 

Do you mind elaborating on where you are using National Instruments products in your application? Currently, it is vague on where we fit into the picture. If you can provide this information, we are happy to help you with issues or understanding involving our products.

 

Thank you!

Aaron

National Instruments
0 Kudos
Message 9 of 9
(3,767 Views)