Forum Discussion
Altera_Forum
Honored Contributor
17 years agoSome clarification is in order.
Beginning with Stratix II, Altera began to offer a reconfiguration controller inside the FPGA. This is a hard piece of silicon which will actually control part of the reconfiguration process. This is the component you read about with regards to Stratix IV. However, many many people perform remote configuration without the use of this controller. Here is what you need: 1 - A configuration method which supports dynamic selection of an FPGA image. In your case, you are talking about a CPLD which interfaces to flash memory, selects an image from flash memory and programs the FPGA. 2 - A method for allowing the FPGA to dynamically add/change the stored FPGA images. The easiest way to do this is to make sure the FPGA is also connected to the Flash device. 3 - Connections between the CPLD / FPGA that allows the FPGA to instruct the CPLD a) what image it wants loaded, b) when to start reconfiguration. 4 - Some method of determining whether the desired reconfiguration was successful or not. This can be done either in the CPLD or FPGA or some combination of the two. So with these things in mind, I have left one thing out. That is the method that you use to actually transfer new FPGA images to the board and store them in the flash. FvM has suggested ethernet. It could also be USB, serial, PCI Express, whatever. You are responsible for handling that part. There is no "core" that will transfer FPGA images from ethernet to your flash device. Does not exist. The point I'm trying to make is that at this point you must design the system. You've reached the separation point between mechanism and implementation. The documentation is no longer of use. If you use ethernet, you will then need to implement a TCP/IP stack. The simplest way of doing this is to use a NIOS processor and select a TCP/IP stack of your choice. Altera provides the InterNiche TCP/IP stack. Then you will have to decide how to actually transfer the files (FTP, TFTP, your own protocol, ...). Jake