Remotely updating Altera FPGA configuration

Hi All,

We are developing a product which uses a Cyclone2 device from Altera. The unit is a completely sealed unit with only a RS232 link to the outside. We want to be able to update the Cyclone2 configuration files stored in a EPC device using the available RS232 link. Has anyone done something similar out there?

I have thought of writing a PC application which would serially send the configuration files from the PC to a AVR and then the AVR would program the EPC. There are a few unknows for me here.

  1. Which output file format could I use and interpret seeing that it seems as if the .pof files generated by the Quartus software must be interpreted and can only be used by Quartus?
  2. Are EPC devices the best things to use as there are numerous other flash based configuration devices out there?
Reply to
Amigo
Loading thread data ...

Try taking a look at how Parallax does this with their SmartPack development boards. They do the same thing as you're suggesting only with a PIC instead of an AVR.

Keith

Reply to
Keith Williams

Yes, with a Cyclone but I presume the same can be done with a Cyclone2.

I have a core that allows an EPCS1/4 to be accessed from the FPGA over the FPGA programming lines, ie you don't need to waste any FPGA pins to use this functionality.

It's currently driven by a SBC over a PCI interface, the SBC controls the download/verification of the config data. You would need to design in some extra control if you want to do this completely within the FPGA.

This is being used in a shipping product and so far has proved very reliable.

Nial Stewart

---------------------------------------------------------- Nial Stewart Developments Ltd Tel: +44 131 561 6291

42/2 Hardengreen Business Park Fax: +44 131 561 6327 Dalkeith, Midlothian EH22 3NU
formatting link
Reply to
Nial Stewart

You can have the Cyclone2 do ISP by controlling the JTAG port of the EPC.

Does your design include an AVR? If the RS232 is connected to the Cyclone2 and you have enough pins and some extra LEs you should be able to do this from the Cyclone.

I've done similar things using SVF files.

There are cheaper FLASH devices out there, but you will need a small PLD to load data into the FPGA.

Petter

--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?
Reply to
Petter Gustad

Hi all, Thanks so much for your replies.

I've had a look at what Parallax does and it is one of the options that I've been exploring. They use a Pic to configure a Cyclone device. They also seem save the configuration on flash which the Pic reads at startup. Other than a basic explanation they dont give much information.

The design at this stage does not contain a AVR. The thinking for the AVR is that we always want a static method for updating the configurations (a bootloader). The AVR can be programmed when the unit is installed and this never changes so even if the programming/configuration of the FPGA is interrupted for some reason, and a valid configuration is not saved, at the next reset we'll still be able to access and configure the unit. I have also considered a PLD for this purpose but I think my C/C++ is better than my VHDL at this stage :-)

Regards, Randall

Reply to
Amigo

An alternative idea might be to use USB instead of RS232. There are some nice FTDI chips like the FT2232C which are effectively UART to USB converters (with corresponding virtual comms port drivers for the PC), which also have jtag programming pins designed for just this sort of application. If you always have the device connected to a PC, you don't need any flash at all on the card - the PC software can download the FPGA design on connection.

Reply to
David Brown

Amigo ha scritto:

My thesis was about remote update of altera FPGA with an EPC configuration device (sorry but it's in italian). I do the same with a NIOS system on the FPGA with a custom block to the external EPC interface with an HAL device driver for the flash.

Another type of remote update system I made, use the jtag port of the EPC with the jamplayer software. You can find the source code from the Altera website. I modified this software to use an FTDI 2232 device.

Ask me if you want more information, source code, ecc

Matteo

Reply to
vit.matteo

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.