- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We made our custom board with CYCLONE III FPGA (EP3C16Q240) and memories [SdRam, Nand flash and serial flash (ST's MT25P16)] with only few interfaces [VGA, SD Card and Ethernet] The board has two JTAGs. Viz., 1> JTAG_1 connects to the JTAG pins of FPGA - (JTAG mode of programming the FPGA) 2> JTAG_2 connects to the Serial flash Memory - (Active Serial device programming) PFA the schematics of the JTAG circuitry. P6 and P5 are the JTAG_1 and JTAG_2 respectively. We have two options to program the board 1: configuring fpga with .sof file via jtag We generated a .sof file which performs a simple operation of toggling a GPIO pin in the FPGA. We programmed the .sof file through JTAG_1 and the Quartus II programmer says "Ended Programming successfully". But FPGA didn't function as intended. But, we see the following things a) conf_done pin of FPGA is becoming high after the successful configuration as expected. Meaning, the configuration of the FPGA is successful. b) init_done pin of FPGA is not becoming high. The FPGA will enter into user mode for executing user code only after making this pin high. There were couple of instances we saw the init_done pin going high and the intended GPIO was toggling as expected. But this scenario happens rarely and also the time it takes to enter into the user mode is too high [it takes around 4 mins] 2: configuring the fpga from the serial flash We have two methods to achieve this (i) Loading the serial flash with a .pof file via JTAG_2. (ii) Loading the serial flash via FPGA with a .jic file using JTAG_1. In both the above cases, FPGA picks up the configuration from the flash and boots up after a hard restart. (i) loading the serial flash with a .pof file via jtag_2. We haven't succeeded in this method yet. The programmer tool [Quartus II] says "Can't recognize the Silicon ID". In parallel, we are doing a custom board only with the serial flash for flashing. (ii) loading the serial flash via fpga with a .jic file using jtag_1. In this case, we use JTAG_1 to flash the serial device. JTAG configures the FPGA to write the configuration into the serial flash device. We are able to successfully write the data into the serial device. After the data is written into the flash, we performed CRC verification. The tools says no CRC errors. We understand that the tool verifies the data inside the serial flash by reading it via the FPGA. We also have instances, where we get CRC errors. But the probability is less. After successful [no CRC error] write of serial flash, we hard reset the board, so that the FPGA can read the configuration data from the serial flash to configure itself. But we see the conf_done pin toggling [in the "re-configure after error" mode]; meaning configuration not successful, so it retries configuring. When writing the data into the flash, we see a clean signal on the oscilloscope on the ADSI pin. We tapped the signal at P5 pin 7. When the FPGA reads data from the flash, we see the waveform with lot of ripples. Tapped signals on both the flash pin and on the P5 pin 9. With the above scenarios, we understand (a) When directly configuring the FPGA, the FPGA is getting configured but rarely enters user mode after a long time. (b) When configuring the FPGA via the serial flash, the FPGA is never getting successfully configured. What are we missing here? Please advice. Let me know if you need any further details reg this.Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I'm currently studying on configuration of cyclone 3 device.Regarding to serial flash programming, 1.Does jif.file generated by quartus2 tool? 2.How do I perform CRC checking? Besides,do you have any experience on active parallel configuration?Thanks in advance.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Quartus II tool will generate the .sof file. You can convert the .sof file into .jic file. CRC errors can be enabled in the device and pin options before compiling. Regards, Vinod- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
have you looked at the configurations app notes for the cyclone III
http://www.altera.com/literature/an/an478.pdf http://www.altera.com/literature/an/an523.pdf- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
conf_done FPGA pin of my custom board is connected to the base of NPN transistor via 1K resistor, After connecting this via 10K resistor , FPGA entered User mode and FPGA is working as expected. Regards, Jagadeesh.B
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page