- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I recently upgraded to Quartus 7.1 and went through the pain of migrating all my SOPC components to the new tcl format. The components were all in a library pointed to by the global libraries path.
I open the project in 7.2 and SOPC cannot find these components any more! My paths are something like this ..c:\branch7.2\mylib\--component1\hdl
\--component2\hdl
\--etc.
With v7.1 I placed an empty file .recurs in the c:\branch7.2\mylib directory which appeared to allow SOPC to recurs the subdirs properly. Therefore only needing one path for all my library components. But in 7.2 the SOPC tools does not find them any more. I've tried adding the paths for c:\branch7.2\mylib as well as c:\branch7.2\mylib\component1 etc. in both project and global libraries paths as well as in SOPC "tools->options->ip search path" with no joy. Can anybody help me?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I know that SOPC Builder does not like certain characters like spaces or period in the file path, try renaming your file path to "c:\branch7_2\mylib\--component1\hdl".
Cheers- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yes i have the same problem with 7.2
I found it only works if the custom components are in a sub directory of where the sopc project is located. There where no spaces or anything in my paths so that wasn't it. Anyway I now get Subversion to pull the custom components into the project directory so I can share them between projects and still maintain the one source code base.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have a project at the moment that I has custom IP in a half dozon different directories (none in the project directory) and I have no problems getting them is sopc builder.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
to be more accurate, they worked in sopc and quartus to some extent.
using the software tools build chain for the nios II it failed big time. The tools told me to set the paths in SOPC, bu they where already set.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you rmorley for the suggestion. I do not use spaces and have tried . and _ and - separators and removing these separators altogether in my paths with no success (i.e. only alphanumeric characters). How do you get your library components to work in 7.2?
My libraries appear fine in 7.1 but cannot find them in SOPC 7.2. Thank you jcn for your response. I wish to share the libraries across multiple projects and therefore having them as a subdirectory of one of the projects is not a solution unfortunately.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Add a file named "library.ipx" to your "mylib" directory.
library.ipx : <?xml version="1.0"?> <library> <index file="component1/component1_hw.tcl" /> <index file="component2/component2_hw.tcl" /> ... ... </library> Add your libray path in SOPC-Builder : Tools->Options->IP Search Path Now you should see your components !- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you very much Klaus, SOPC now finds the components but I get all kinds of extra errors I'm afraid. Any ideas why each of my components now produce the following error :
Error: TestComponent_0: Error (10670): Verilog HDL or VHDL error: cannot create XML design interface for design file TestComponent.vhd. File: C:/SCM/Branch-Quartus-v7-1/lib/sopc/TestComponent/hdl/TestComponent.vhd Line: 1 Error: TestComponent_0: Quartus II Analysis & Synthesis was unsuccessful. 1 error, 0 warnings Error: TestComponent_0: Processing ended: Mon Oct 22 16:26:15 2007 Error: TestComponent_0: Elapsed time: 00:00:04 Error: TestComponent_0: Failed to analyze port width. If I copy the components to the \ip subdir of my project I don't get this error. The library.ipx file is located in C:/SCM/Branch-Quartus-v7-1/lib/sopc- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you use HDL parameters in your TestComponent_hw.tcl ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes I use VHDL generics to set various parameters.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Disable all parameters (_hw.tcl --># add_parameter youParameter).
Sometime i get the same ERROR if i am using STD_LOGIC(_VECTOR) Parameters.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
:) My parameters are only integer and moving them from generics to constants within my code and disabling the 'add_parameter' lines in _hw.tcl fixes this problem.
This is not great as I can no longer parameterise my component! :mad: Thanks again Klaus for your help.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The parameters should have default values :
ENTITY component IS
GENERIC
(
parameter : integer := 4
);
Try to regenerate your component with the component editor. Create a new SOPC system an insert your component. Maybe it helps.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
My component parameters already have default values assigned I'm afraid. For example :
entity StreamCapture is
generic (
master_address_width : integer := 32;
master_data_width : integer := 64;
stream_data_width : integer := 32;
stream_length_width : integer := 24
);
port (
...etc.
If I edit the component again I get what seems to be incorrect tcl for the simulation files property with a dangling " :- set_module_property "simulationFiles" "
"StreamCapture.vhd"
which accounts for the error on loading the SOPC system : Error: StreamCapture_0: extra characters after close-quote where originally this was : set_module_property simulationFiles {
"PP_StreamCapture.vhd"}
reverting this removes the Error: StreamCapture_0: extra characters after close-quote Unfortunately I haven't found a combination that allows me to have generics as parameters. I tried removing the _ and capitalising the names with no success.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The correct syntax for set_module_property simulationfiles according to the manual should be :
set_module_property simulationFiles
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page