- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am designing with the EPC3C5F256C8N.
I will initially configure with the EPCS4 and then,later, configure from a serial flash via a microcontroller. I have been digging through the Altera docs and am overwhelmed. I find the document: http://www.altera.com/literature/hb/cfg/cyc_c51014.pdf But it only lists the EP1Cx devices as being compatible with the EPCS4. ????? Assuming that that is incorrect I believe that Figure 5 is what I want, to be able to program the EPCS4 via a usb byte blaster and then have the FPGA be configured from the EPCS4 on power up. It is my understanding that this AS (active serial) programming and that I would use PS from a microcontroller. Is there an app note that describes this? Thanks RichLink Copied
8 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
the EPCS devices are compatible with all the FPGAs which support Active Serial configuration. In fact, EPCS are plain serial flash. A common setup is to have AS+JTAG, without any pin headers in the AS signals, only for the JTAG signals. This requires use of JTAG indirect programming to read/write the EPCS but it's more practical than having two sets of pin headers for the ByteBlaster. The document you want is the Cyclone III handbook configuration section. http://www.altera.com/literature/lit-cyc3.jsp I don't think there's any documentation on designs which support more than one configuration scheme (other than JTAG) though.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- Hi, the EPCS devices are compatible with all the FPGAs which support Active Serial configuration. In fact, EPCS are plain serial flash. A common setup is to have AS+JTAG, without any pin headers in the AS signals, only for the JTAG signals. This requires use of JTAG indirect programming to read/write the EPCS but it's more practical than having two sets of pin headers for the ByteBlaster. The document you want is the Cyclone III handbook configuration section. http://www.altera.com/literature/lit-cyc3.jsp I don't think there's any documentation on designs which support more than one configuration scheme (other than JTAG) though. --- Quote End --- Thank you very much for the help. It looks like Figure 9-30 describes the indirect JTAG configuration, is that correct? Why would I need two connectors otherwise? Perhaps one to configure the FPGA directly (during development) and one to program the EPCS4? It also appears that the indirect method requires changes to the project in Quratus. I would rather avoid this if possible........ Thanks Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, it is correct.
I don't know of a good use case for having both the JTAG and AS connectors. Usually just having the JTAG one is enough. Read/Writing the EPCS is faster via the AS connector though. You don't need to make any changes, you can just that the .SOF file and make a .JIF file for indirect programming.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- Yes, it is correct. I don't know of a good use case for having both the JTAG and AS connectors. Usually just having the JTAG one is enough. Read/Writing the EPCS is faster via the AS connector though. You don't need to make any changes, you can just that the .SOF file and make a .JIF file for indirect programming. --- Quote End --- I am looking at this app note: and it looks more involved than what I am willing to do. I think, because I don't want to brick my first prototype, I will stick with AS programming of the EPCS device. Any use in bringing out the JTAG anyway? Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm not sure at which app note you're looking (although I suspect) but trust me on this: you just fire up the "Convert Programming File" dialog, make a .JIC from the .SOF and program it using the Programmer tool. No changes to your design are needed.
JTAG allows you to download configurations directly into the FPGA (much faster than programming the PROM), to use SignalTap for debugging, etc. Quite honestly, not having JTAG is... insane.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- I'm not sure at which app note you're looking (although I suspect) but trust me on this: you just fire up the "Convert Programming File" dialog, make a .JIC from the .SOF and program it using the Programmer tool. No changes to your design are needed. JTAG allows you to download configurations directly into the FPGA (much faster than programming the PROM), to use SignalTap for debugging, etc. Quite honestly, not having JTAG is... insane. --- Quote End --- I think I see the misunderstanding. JTAG will program the FPGA directly which is fine but if you want to program the EPCS serial flash device through JTAG then you need to go through a lot as described in this app note (I forgot the link last time): http://www.altera.com/literature/an/an370.pdf I may be able to squeeze in both connectors. In later revs perhaps I can get rid of the one for AS programming after I get the indirect programming working.. Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The app note makes it look worse than it usually is, because it's describing some of the gruesome details.
To write an EPCS through JTAG, you must first download into the FPGA a configuration which includes the SFL function. There are two options for this: a) you do not include the SFL in your design and download an Altera provided configuration which just implements the SFL into the FPGA whenever you want to program the EPCS b) you include the SFL into your design What most people do is use option "a)". Then we just apply what's described in the "Converting .sof to .jic Files in the Quartus II Software" and "Programming Serial Configuration Devices Using the Quartus II Programmer and .jic Files" parts of the app note. It just requires a few more clicks to generate the programming file.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
--- Quote Start --- What most people do is use option "a)". Then we just apply what's described in the "Converting .sof to .jic Files in the Quartus II Software" and "Programming Serial Configuration Devices Using the Quartus II Programmer and .jic Files" parts of the app note. It just requires a few more clicks to generate the programming file. --- Quote End --- +1 here. It takes a minute or two to produce the JIC the first time then you can safe the COF for the convert programming tool. I then add a script to the design flow so this happens automatically when I build the device. No extra hassle and just wiring to the JTAG header usually allows much more compact (/noise immune) routing. Nial.
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