Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
The Intel sign-in experience has changed to support enhanced security controls. If you sign in, click here for more information.
16008 Discussions

Library use with files with the same name


I have multiple modules with the same name and hence have assigned them to different design libraries using: assignments -> settings -> files -> properties

However during compilation I get the following error:

Error (10703): SystemVerilog error at can't resolve aggregate expression in connection to port 18 on instance "my_module_i" because the instance has no module binding

I assume this means the compiler can't find that entity when it searches the design libraries. How can I get Quartus to look for that entity in the correct place?


main_project is in the default 'work' library and is library which I specified the name for. Both files are SystemV.

0 Kudos
8 Replies

Hi, I found a workaround for the error you are seeing:

Please try this and let me know if the error still exists? 


Sorry that link doesn't help.

I have added all files to the design, however this has to do with the design libraries they are built into. Since two files (and the modules inside them) have the same name, they cannot be built into the same library. If they are, I get an error about duplicate entities. I can get around that error by building each one into different design libraries. The libraries are 'work' and 'my_lib'.

Therefore 'main_project' is in 'work' and 'my_module_i' is in 'my_lib'. When Quartus compiles 'main_project' it treats 'my_module' as if it doesn't exist - I assume it searches work, can't find it and gives up with the error no module binding. 

In VHDL the solution would be to add library my_lib; refer to my_lib at the instantiation but this isn't possible in SysV. 

Honored Contributor III

Can you post some code and list file names?  It might be easier to diagnose if you show what's involved.


I have to limit code and file names protect IP. This is a large design with many files so it would get complicated to list everything anyway.


The simplest way of explaining the issue is: if a source file (.sv) is assigned to any design library, other than work, it cannot be seen by the Quartus compiler.

As shown below; if anything is in the box circled then Quartus doesn't know that file exists and gives an error. 

Screenshot from 2020-12-23 09-31-29.png

This box is in: assignments -> settings -> files -> properties


My question is, how do I tell Quartus to go and look in my_lib to find that design unit?


Have you try to include design files libraries in your project?
You may checkout 2.4.1. Including Design Libraries in the document below.

You may also checkout the 5.4.3. Ensure Distinct VHDL Namespace for Each Library. It could be one of the reason the Quartus could not find the file. Try to change to unique file name and check if you are able to solve the error. 


If you have any more information than section 2.4.1 that would be great. I've tried various things there without success.


5.4.3 is the solution for VHDL but I am using System Verilog. 


I search and found similar case. Perhaps you could try to specify the Project Library name with the -library option to the <language type>_FILE assignment in the Quartus Settings File (.qsf).

If the issue still persists, knowing that the original design is large, but could you help share a simplified design file that could duplicate the issue? 



We do not receive any response from you to the previous question/reply/answer that I have provided. Please post a response in 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 with your follow-up questions.