Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
21611 Discussions

How do I store values in EPCS?

Altera_Forum
Honored Contributor II
2,221 Views

Hello! I'm finishing up a Cyclone III design and need to store a few values in non-volatile memory on the fly. The only thing I have is the EPCS16. From what I read, NIOS II is the easiest way to get to it but I am not using NIOS II in my design otherwise and I'm not familiar with it so I was looking for another way. The other options seem to be the using the MegaWizard to drop a Serial Flash Loader into my design (I think that gives me access to the EPCS pins directly but I would need to figure out how to read/write/...), or use the AN379 files (read/write functionality but does it work with Cyclone III?), or use SOPC Active Serial Memory Interface to Avalon bus to my code, or whatever the Remote System Update is, or ??? 

 

What is the best path? 

 

Thanks, 

Allison
0 Kudos
11 Replies
Altera_Forum
Honored Contributor II
1,288 Views

Well you've obviously made yourself aware of all the options. Which one looks like it best fits your design needs? 

 

Jake
0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

I think, you answered part of the question yourself. If not needing NIOS II for other purposes, you won't utilize it for EPCS access only. The SFL interface is present, if indirect JTAG programming is part of your design, otherwise yous can connect the EPCS pins as user I/Os directly. Finally a serial flash controller has to be designed. AN379 is one possible solution, but I don't know, if the reference design files are available somewhere, they seem to have vanished from Altera.com. Otherwise you can build it from the scratch, the programming algorithms are well documented in the Altera datasheets and also with compatible chips, e.g. M25P16.

0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

Gotta go here (http://www.altera.com/literature/lit-an.jsp) (updated link...sorry for typo) and hunt for 379 to get the design ZIP. It ~looks~ like everything's there. 

 

Cheers, 

 

-slacker
0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

Use this link 

 

http://www.altera.com/literature/lit-an.jsp (http://www.altera.com/literature/lit-an.jsp

 

Slacker had a typo mistake in his link.
0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

Do not use that. One altera FAE has told me that AN379 has been deprecaded in favor of the ASMI_PARALLEL megafunction. 

So use the later instead.
0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

Thanks for pointing to the AN379 sources. I should have checked the literature page instead of searching Altera.com. 

 

I agree, that ALTASMI_PARALLEL apparently replaces the AN379 reference design. It has additional features, particularly buffered page write. When needing to apply changes to the code, I would prefer the AN379 sources for the clearer style. 

 

Both designs can't coexist with a SFL instance built into the design, because the parallel AS controller as well as SFL are instantiating an ASMI_BLOCK, but only one is possible. You have to rewrite part of the code to share a single ASMI_BLOCK instance.
0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

FvM: what did you search for on Altera.com, and would the Rate This Search help Altera tweak the engine?

0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

A search for an379 retrieves only the application note but not the related reference design, although the archive file name is an379.zip

0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

got it, i've seen this before searching for the files related to an AN. i filled out a search feedback. :)

0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

Thanks for all the help! I put the altasmi_parallel in my design and will test it out, it looks straight forward... 

Allison
0 Kudos
Altera_Forum
Honored Contributor II
1,288 Views

yes, it works great here.

0 Kudos
Reply