Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12622 Discussions


Honored Contributor II



I always make copies of directories with projects. 


When I make a new component with "Interface to User Logic" and add it to 

the library, it generates a new directory under the project directory. 

In the component tree, I can see the correct path to the component. 

(Right click on component -> Component Details -> Location) 

When I insert this component again, because I have two identical chips, 

it uses a class file from another directory (wrong values in "project.ptf". 


You cannot see these wrong values in SOPC Builder, because you cannot edit  

the component from the library. 



I had the same problem with the flash programmer. It calls a tool 

"find_sopc_component_dir", which searches for the board_???.sof file, also 

finding sometimes a directory with the same name in an older project. 


How to handle these directory problems ???<#EMO_DIR#>/mad.gif
0 Kudos
4 Replies
Honored Contributor II

This behavior is my biggest frustration with the tools. I just ran into it again.  


I decided to re-create the flash programmer project for one of my NiosII projects in hopes it would fix the "problem with target board" issue in the flash programmer utility. I created a new flash programmer project (with a different name), and then deleted the folders for the old project. I rebuilt everything and created a new hello_world app. "Run" worked fine, but the flash programmer did not work - it still referenced the old sof file from the old flash programmer project.  


Looking around I see no dialog that would allow me to associate a specific flash programmer project with a HW or SW application. The only reference I found was in the main project ptf file. The old flash programmer project name was still being referenced in the main project ptf. It appears that these references are updated the 1st time you create a flash programmer project, but not afterwards?? I too, would like some workaround for this. Can I just edit the ptf directly? 


A better explanation of the terminology/dialogs would help too, like why is the name of my flash programmer project showing up in the "target" pulldown in SOPC for my custom board main app? Should I be selecting this name or stick with "unspecified board"?
0 Kudos
Honored Contributor II

Fisher -  

When you create SOPC Builder components, it&#39;s best to put one copy of each unique component in some repository directory which you include in your SOPC Builder search path (File -> SOPC Builder Setup). Then there is no need to copy the components around with the projects, creating multiple copies of them. Having multiple, different components of the same name in the SOPC Builder search path will definitly cause confusion. This really isnt just a problem with SOPC Builder either, any time you have different files of the same name in a search path, it&#39;s usually a recipe for confusion. 


Tns1 -  

Yes, you are supposed to pick your flash programmer project from the "Target" list in SOPC Builder when building your main system. This is the only way the flash programmer knows which flash programmer design to use to program flash on your board. If, you are leaving it as "unspecified board", that&#39;s probably the reason it&#39;s having trouble finding the proper .sof file. This is all documented in the Nios II Flash Programmer User Guide found on Altera&#39;s website at (


Hope this helps, 


0 Kudos
Honored Contributor II

Thanks Nate.  

My confusion was that the flash document says to use &#39;Unspecified Board&#39; as a target for the flash programmer project. I guess in this context it means &#39;programming&#39; target instead of &#39;execution&#39; target. This does not explain all the other times the flash utility wouldn&#39;t work for me. I am now using the tactic of closing everything, reopening and rebuilding everything whenever there is a problem like this.  


See the thread &#39;Programming EPCS via NiosII IDE&#39; (
0 Kudos
Honored Contributor II

Thanks Nate, 


I will check the the SOPC Builder Setup,I have seen that there are listed  

some old directories. 


however I think it&#39;s more save to keep a copy of the component in the  

actual project directory, because components will change with time. 


When I have a look at the SOPC Builder Setup help, 


Is the following directory search order correct ? 


1. Additionals directories in SOPC Builder Setup 

2. current project directory 

3. build in SOPC Builder component directory ("altera\kits\nios2\components") 



I think the following is not correct, 


(Right click on component -> Component Details -> Location) shows correct 

path of component in actual project, but files are taken from another directory, 

if the project is regenerated. 


It would be helpfull, if in the generation process would show the path and file 

for each component it find&#39;s. 


For the flash programmer it would be better, if the user can manually enter the 

directory and filename of the board.sof file.
0 Kudos