- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
we have a design using hierarchical .qsys subsystems with several layers. All project files are within the same root folder. The folder structure is:
- root
- IP
- several subfolders with custom IP cores
- qsys
- top
- subsystem
- common (containing multiple .qsys files)
- subsystem 1 (containing multiple .qsys files)
- subsystem 2 (containing multiple .qsys files)
- IP
Now I have a problem referencing the .qsys files within other .qsys files. If both .qsys file (the top and the instantiated .qsys) are in the same folder everything works fine and within the .qsys file the relative path is used as reference.
But, when the top .qsys file is in a different folder, e.g. within qsys/top and instantiates a file from qsys/subsystem/common Platform Designer always write the full absolute path in the .qsys file.
It is possible to manually change this to a relative path and opening and synthesizing the project works fine. So obviously Platform Designer is capable of handling relative paths.
But whenever a .qsys file is saved, Platform Designer replaces the relative path with the absolute path. This makes it impossible to use it in multi platform environments and or on different machines.
Is there any option or trick to force Platform Designer to use relative paths?
best regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
After consulting the tool specialists:
Currently, PD references the subsystem .qsys through relative path if and only if the subsystem .qsys lives under the parent system directory If not, then use absolute path.
I agree the interpretation that the subsystem .qsys has to live under parents system is weird and plan to fix this in the Quartus future release 25.3 (version stated is subject to change).
On Windows, if the file is on a different drive, we'll continue to use absolute path.
Based on the comments provided, it seems that the subsystem cannot be placed outside the parent system directory.
As a workaround, please place the subsystem within the parent system directory until this is fixed in a future Quartus release.
Regards,
Richard Tan
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
So are you setting these paths in Tools menu -> Options -> IP Search Path? Here you can set paths for the specific project, which may be relative.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I agree with sstrell suggestion.
Please add the relative path in the IP Search Path and see if it helps to resolve your issue
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The qsys folder is already added to the IP search path:
This is in my .qsf file:
set_global_assignment -name IP_SEARCH_PATHS "../../../core/ip\\**\\*;../../../core/qsys\\**\\*"
Regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What is the error message that you are seeing currently?
Is the path reflected in the Platform Designer GUI > Tools > Options > Quartus Project IP Search Path?
Kindly share your design by archiving the project (Project > Archive Project) so that I can investigate it further.
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
1) Yes it is correctly listed in the Quartus Project IP Search path, but with its absolute path. Which is ok, IMHO. The paths also updates when the project is moved to different locations.
2) I don't get any direct errors, but
- when 2 projects are checked out to 2 different locations and each has a identical named file, e.g. flash_subsystem.qsys but with different contents, It might happen that the projects use the wrong file, if they have gotten checked in with absolute paths and not relative paths
- This causes constant changes in files, when working with a version control system like git or svn
3) I created a small basic example project. I manually changed the path in the .qsys file ""qsys\top\relativePaths.qsys" (line 2343) which instantiates the subsystem "core\qsys\subsystem\test.qsys" . Whenever I save the top level qsys file this relative path is overwritten by the absolute paths.
best regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I checked and it seems that the absolute paths are used when the tool is unable to find the subsystem’s relative path to the current level of hierarchy.
Additionally, those paths serve as a fallback—Platform Designer uses the search-path mechanism to locate the associated subsystem in the IP Catalog. As long as the subsystem exists within the tool’s search paths, it will use the located path. Otherwise, it defaults to using the absolute path.
Having said that, you can try to use the qsys-archive command with the --search_path, to archive a system, extract an archived system, and retrieve information about the system's dependencies.
Example command to use based on your design:
qsys-archive --list --search_path="$,../../../core/ip\\**\\*;../../../core/qsys\\**\\*" relativePaths.qsys --new-quartus-project=relativepaths2
For further information, you may checkout this document:
Please try and let me know if the solution works.
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The result is the same. Once I change anything with Platform Designer and save the changes in the .qsys files the relative path is replaced again by its absolute path.
regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am confused. Could you share me the screenshot of the path changes, before and after saving the qsys?
After saved the qsys, does the project able to compile successfully or the qsys able to generate HDL without error?
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Before saving any changes in .qsys
After saving in Platform Designer
best regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am consulting with the tool specialist on this.
I will inform you once there is a way.
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I yet to get a response from the tool specialist.
I will continue to follow up on this.
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, looking forward for any advice.
best regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
After consulting the tool specialists:
Currently, PD references the subsystem .qsys through relative path if and only if the subsystem .qsys lives under the parent system directory If not, then use absolute path.
I agree the interpretation that the subsystem .qsys has to live under parents system is weird and plan to fix this in the Quartus future release 25.3 (version stated is subject to change).
On Windows, if the file is on a different drive, we'll continue to use absolute path.
Based on the comments provided, it seems that the subsystem cannot be placed outside the parent system directory.
As a workaround, please place the subsystem within the parent system directory until this is fixed in a future Quartus release.
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you have further inquiries regarding this case?
Regards,
Richard Tan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the response and the explanation.
Looking forward to the fix in Quartus 25.3
best regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You're welcome.
Now, I will transitioning this thread to community support. If you have any further questions or concerns, please don't hesitate to reach out. Please login to https://supporttickets.intel.com/s/?language=en_US , view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support.
The community users will be able to help you on your follow-up questions.
Thank you and have a great day!
Best Regards,
Richard Tan

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page