Cyclone-II Configuration via a PCI bus


I've trawled around this group and on the web a little, but haven't found anything to suit my purposes, so I thought I'd post here...

I'm designing a board with two FPGAs, both Cylone-II devices. One will contain a PCI core and will always be programmed by a serial configuration device that never changes. The other will also be loaded by a (separate) serial configuration device, but I would like to be able to change this configuration depending on the function required for the board.

Ideally, I would implement a small core in the PCI FPGA. I would then fetch the required configuration file from somewhere via the PCI interface and store it in a local on-board memory. The PCI FPGA would then stream the configuration file to the serial configuration device for the other FPGA.

So, questions:

- Is it possible to do this in such a straighforward manner?

- Is there a core available to interface to the Active Serial interface of the configuration device?

- What format does the configuration file need to be in?

It strikes me that this should be a simple task to achieve - or am I totally wrong?



Reply to
Loading thread data ...

ColmF schrieb:


you have several options 1:

1) implement some sort of JTAG or SPI logic inside the main PCI FPGA, connect the config device of the second FPGA to that logic, the drawback is that you need to use some custom software to reflash the second config memory

2) implement LPT + byteblaster interface inside the first FPGA, then windows would load default pci driver and you can use Altera tools to access the second config memory

3) implement some other logic in the main FPGA

I have done tasks similar to 1,2 (well using Xilinx FPGAs but that doesnt matter).

the LPT+byteblaster method is simple but, you would need to make the PCI device to be either multi-function device or then dedicate BAR0 to the virutal LPT port

the 'virtual PCI LPT + jtag cable' project is soon to be added the brain-snapshot :)

and no, what you think should be simple task isnt so simple, the FPGA configuration issues are still quite often a major PITA

Antti Get my Brain

formatting link

Reply to

Hi Colm,

You can do this by using the Altera parallel configuration device for sure, simply connect the standard flash interface to your first Fpga and write the new image. If that's an option.

FYI, you might find more Cyclone traffic at

formatting link


Reply to
Alan Myler

Alan Myler schrieb:


the OP wanted

1) solution over PCI bus 2) most likely needs the PCI-FPGA ASMI interface to be used to programm the spi flash on that FPGA, so its already used and can not be connected to the SPI flash of the other FPGA

so your suggestion doesnt sound like an option for the OP


Reply to

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.