PCI Express development board

Hi,

I'm looking for an FPGA-based PCI Express development board which is capable of transmitting data at about 1.4 GByte/sec to the host computer (PCIe Gen1 x8 or Gen2 x4/x8).

Further considerations:

  1. included IDE license
  2. included PCIe IP core license, which is also valid for other designs based on the same FPGA
  3. minimal HW complexity (i.e., the smaller the FPGA, the better)
  4. price

My current candidate is the Altera Arria II GX FPGA Development Kit (although I'm not sure if the IP core license which comes with it is not only for evaluation).

formatting link

I would appreciate some information about your development experience with this board or other boards which satisfy the above requirements. Thank you for your time!

Regards, Zsolt

Reply to
zsolt.garamvolgyi
Loading thread data ...

I'm not sure if our product Broaddown3 would worth looking at as you didn't specify other features that are needed. Broaddown3 is aimed at FPGA acceleration / HPC markets so is limited in features like I/O.

We announced this product some time ago but it has something of a concept makeover so the new version is now just going into production. This board comes in a Webpack capable version using Xilinx Virtex-6 XC6VLX75T parts and this can be a single FPGA with just the PCIe and Ethernet interfaces or the full blown version with 5 Virtex-6 FPGAs.

More information on this board and the other 2 new major products, Merrick3 and Lamachan2, that also launch this week, will appear on our website in the next few days. We are also hoping to be able to show all of these on our stand at SC11 in 10 days time for anyone attending that show.

John Adair Enterpo> Hi,

t-aiigx-pcie.html

Reply to
John Adair

Look at Lattice "ECP3 VERSA DEVELOPMENT KIT"

formatting link

$262 on their webshop.

I don't know the license cost for production - you would need to check with Lattice. They say that their chips are cheaper than Alter - but you had better check that too.

Michael Kellett

Reply to
MK

kit-aiigx-pcie.html

Thank you for your reply. I'll check out these boards on your website as soon as they're available.

Regards, Zsolt

Reply to
zsolt.garamvolgyi

Unfortunately, this kit won't fit the throughput requirements of my design (only PCIe x1). Thank you, anyway.

Regards, Zsolt

Reply to
zsolt.garamvolgyi

That is only 1 PCIe, the OP needs 8 lanes.

We have a 8x board with available soon with 4 channel 125Msps 14 Bit ADC. There is no documentation ready yet, so please contact me to discuss your detailed requirements:

formatting link

Regards,

Kolja

Reply to
Kolja Sulimma

I did a project with this eval board a couple of years ago. The IP license for the PCIe core is for evaluation only, you have to keep the programmer cable connected for the core to operate. It will run for about 20 minutes (I think) after you disconnect the cable.

Also, when we bought the eval kit, Altera had released a later version of the Quartus tool chain. Unfortunately, all of the example projects that were available were for the previous version of Quartus and would not build in the new version. We were on an aggressive schedule and the only option was to use the example project as a starting point and modify it for our project. It took a substantial amount of work from the Altera FAE to get their example project to build at all with the new tools. We got the project running and delivered. For a very expensive eval board ($2600 US) that was sold as a PCIe development system, I was very unimpressed with Altera's handling of this.

BobH

Reply to
BobH

Thank you for shar "OpenCore Plus hardware evaluation is not applicable to the hard IP implementation of the IP Compiler for PCI Express. You can use the hard IP implementation of this IP core without a separate license."

Can you tell me which Quartus version did you use for your project? I've been working on another PCI Express project with an Altera Stratix II GX eval. board using Quartus II 9.0 and setting up the example design was relatively painless. Unfortunately, that kit is no longer available.

Regards, Zsolt

Reply to
zsolt.garamvolgyi

You are correct, it was the Stratix II GX with the PCIe soft core. This project was done in the spring of 2009 and my memory is not great. I have changed jobs and have been working with Xilinx mostly in my new role.

I think, and I am not sure on this, but I think that the Quartus transition was 8.x to 9.0. Once the correct IP was obtained, the project went OK, but the demo project for the 8.x would not function with the

9.0 Quartus without significant thrashing. The demo stuff that shipped with the kit was definitely for the older version.

Sorry for the confusion,

BobH

Reply to
BobH

t-aiigx-pcie.html

In our experience Altera's hard IP PCIe core present in StratixIV GX and in ArriaII GX is broken rather badly. That is, you can find certain hosts where it appears to work most of the time, but that's exception rather than rule. Soft IP core in these devices works relatively better, but still badly violates power up timing specifications defined in the PCIe standard, so we generally prefer to plug it into slots that support hot plug, since such slots are typically more tolerant to this sort of timing violations. Unfortunately for you, you want x8 slot. x8 slots with support for hot plug are significantly rarer than x4/x1 slots.

Overall, if you decided to go with Altera, the most robust combination is old StatixII GX + soft PCIe core + Quartus 9.1 Sp1 or Sp2.

BTW, even on x8 Gen1, hitting 1.4 GB/s in the read direction will be very very hard (but it sounds like you don't need it). Hitting 1.4 GB/ s in in write direction is significantly easier, but still non- trivial, esp. if you want to work with default 256B packets size.

Reply to
Michael S

kit-aiigx-pcie.html

This is really interesting. Can you tell me, exactly which hosts (if any) did you manage to get the hard IP core work with correctly?

I would prefer using an Altera device as I have more experience with their design tools. As the Stratix II GX board is obsolete, I think I could use the Arria II GX board with the soft IP core, too, with the drawbacks of additional license cost and FPGA resource usage. The Arria II GX + hard IP combination is quite compelling (at least on paper).

Do you have experience with other vendors' PCIe boards/IP cores? Is there a more robust solution available?

Yes, I'm aware of these limitations, but

  1. downstream data transfer is not a concern,
  2. 1.4 GB/s is an absolute worst case data rate estimation, and most probably will be relaxed in the final specification. It's not impossible that even a PCIe x4 board will fit the requirements.

Regards, Zsolt

Reply to
zsolt.garamvolgyi

I still have that Stratix II GX PCI-e development kit, but the FPGA doesn't have hard PCI-e block, even if there are 4 lanes of the bus, so the core is instantiated as software mode PCI-e. If the author is interested in Stratix II GX, I am ready for negotiations :)

Reply to
scrts

Oh my bad, it's x8, not x4. The board I have is this one:

formatting link

Reply to
scrts

a/kit-aiigx-pcie.html

I recollect that we had better luck with hard IP on Altera's own Stratix IV GX FPGA Development Board (EP4SGX230KF40 device) in x8 Gen2 slot of Intel S3420GP motherboard. Still not robust enough to ship it to client, but it was handy during development (faster compilation time than soft IP core and no need for license). However combination of the same board with the same Altera device and the Hard IP core did not work at all on Terrasic DE4. The same Terrasic DE4 works pretty well with soft IP core.

As to hard IP on ArriaII-GX, I didn't try it myself. The colleges reported zero success rate.

In our experience paper and silicon are quite different. Now, soft IP PCIe cores obviously work both on StratixII-GX and on ArriaII-GX. However on StratixII-GX they work better. If all you need is 1 or 2 boards, is it so hard to find Stratix II GX dev boards?

No, I don't.

For x4 Gen1 the Gennum GN4124 is probably the most robust solution, but I am not aware of ready-to-buy development boards with GN4124 + Altera FPGA. On the other hand, I didn't look for them.

B/

Good for you.

Reply to
Michael S

s
y

I did a little more research. The situation with Altera Hard IP is not as hopeless as I presented in my previous posts. In Quartus 10.1 (and hopefully in 11, but I didn't test) Altera seems to implement a workarounds for majority of the Startix IV and Arria II hard IP silicon problems. Powerup timing is still non standard, and I'd guess, not much could be done about it, but the rest works o.k. At least so far we saw no problems with Terrasic DE4 on Intel X58-based PC.

Our problems with Hard IP on Arria2-GX could be traced back to combination of bug in Quartus 9.1. and lack of attention on part of our board developer. Hard IP in Arria2 GX requires certain fixed assignment of the PCIe lanes to FPGA GX transceivers. However, Quartus 9.1 does not properly detects incorrect assignments. We were just unlucky to fall into this pitfall. You can be 100% sure that nothing like that would happen if you buy development board from Altera or Terrasic.

Back to recommended host platform. I think, among single-CPU platforms, Intel X58 (the platform used with Core-i7 9xx series of CPUs) is still the safest. Of course, it is not as popular or easy-to-find as platforms based on Intel LGA 1156 or LGA

1155 processors, but it does feature hot plug on all PCIe slots. As a consolation for higher price and lower price/performance, X58 gives you the highest memory bandwidth and the highest memory capacity. For comparison, typical LGA 1156- based boards have just one hot-plug x4 Gen1 slot. All x8/x16 and/or Gen2 slots have no support for hot plug, so it's far more likely that non-standard powerup timing of Altera cores (both soft and hard IP variants) will cause problems, even in "cold plug" scenarios. I have no 1st hand experience with Altera PCIe solutions on the newest Intel platform, i.e. LGA 1155, a.k.a. i7 Gen2, a.k.a. Sandy Bridge. I am afraid that it is similar to LGA 1156 and is similarly unforgiving to timing violations. But test it yourself - this one is easiest to get and even if you find that it does not satisfy you as PCIe host, at least you will enjoy ass- kicking development machine ;-)

As to dual-CPU Intel platforms, IIRC, on dual-CPU chipsets all PCIe slots support hot plug, so, in theory everything should work. However, except for old and obsolete Blackford (5000 series), I didn't try it myself.

Reply to
Michael S

As to dual-CPU Intel platforms, IIRC, on dual-CPU chipsets all PCIe slots support hot plug, so, in theory everything should work. However, except for old and obsolete Blackford (5000 series), I didn't try it myself.

Hello, maybe anyone can confirm that? What's the scenario of fpga restart then? Unload the module, reflash the binary and load module again? What about development on Windows then?

Regards, Tomas D.

Reply to
scrts

Confirm what?

On Windows it is the same. Assuming you have plug&play driver (which, for PCIe, is the only reasonable option anyway) and assuming that your device is not a boot device and not a main display card:

1) disable your device in Device Manager; 2) reload FPGA; 3) re-enable device in Device Manager. Or, if PCI Vendor/Device ID of your new design differs from the previous one, you instruct device manager to scan for new devices between steps 2 and 3.
Reply to
Michael S

Dual-CPU chipsets really support PCI-e hotplug? In this case, all the current chipset systems should support that feature.

The part about image reflash is clear now, thanks.

Regards, Tomas D.

Reply to
scrts

What you mean by "all the current chipset systems"? >99% of the desktops sold are single CPU, not dual. Or do you consider dual-cores as "dual-CPU"? No, that's not what I meant. When I said "dual-CPU" I meant dual-socket. Like Dell Precision T5500 or HP Z600 or majority of servers. However, those are not the cheapest machines around.

From the cheaper things I recommend models based on Intel's relatively old X58 chipset, like, for example, any of ASUS P6T series of motherboards or Supermicro C7X58 motherboard.

Reply to
Michael S

What you mean by "all the current chipset systems"? >99% of the desktops sold are single CPU, not dual. Or do you consider dual-cores as "dual-CPU"? No, that's not what I meant. When I said "dual-CPU" I meant dual-socket.

My bad then, I thought You meant one socket multi-core CPUs.

From the cheaper things I recommend models based on Intel's relatively old X58 chipset, like, for example, any of ASUS P6T series of motherboards or Supermicro C7X58 motherboard.

So what's the procedure on single socket CPU boards? Turn off PC, load config to FPGA and start the machine again? I wonder if PCI-e standard defines PCI-e hotplug or not.

Regards, Tomas D.

Reply to
scrts

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.