FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6355 Discussions

ALTFP_MATRIX_MULT problem in Quartus 10.0

Altera_Forum
Honored Contributor II
1,694 Views

I generated a ALTFP_MATRIX_MULT in Quartus 10.0, but there are many error when I start compilation. 

How can I fix it? 

Thanks, 

Xiyi 

 

Error: Node instance "cmp0" instantiates undefined entity "hcc_alufp1x" 

Error: Node instance "cmp1" instantiates undefined entity "hcc_alufp1x" 

Error: Node instance "cmp2" instantiates undefined entity "hcc_alufp1x" 

Error: Node instance "cmp3" instantiates undefined entity "hcc_alufp1x" 

Error: Node instance "cmp4" instantiates undefined entity "hcc_alufp1x" 

Error: Node instance "cmp5" instantiates undefined entity "hcc_castftox" 

Error: Node instance "cmp6" instantiates undefined entity "hcc_castftox" 

Error: Node instance "cmp7" instantiates undefined entity "hcc_castftox" 

Error: Node instance "cmp8" instantiates undefined entity "hcc_castftox" 

Error: Node instance "cmp9" instantiates undefined entity "hcc_castftox" 

Error: Node instance "cmp10" instantiates undefined entity "hcc_castftox" 

Error: Node instance "cmp11" instantiates undefined entity "hcc_castxtof" 

Error: Node instance "cmp12" instantiates undefined entity "hcc_delay" 

Error: Node instance "cmp0" instantiates undefined entity "hcc_mulfp1x" 

Error: Node instance "cmp1" instantiates undefined entity "hcc_mulfp1x" 

Error: Node instance "cmp2" instantiates undefined entity "hcc_mulfp1x" 

 

0 Kudos
8 Replies
Altera_Forum
Honored Contributor II
391 Views

If you generated the ALTFP_MATRIX_MULT using megawizard make sure you include the .qip file in your Quartus project that was generated.

0 Kudos
Altera_Forum
Honored Contributor II
391 Views

Thanks very much. 

 

I added the .qip file to my project but can't fix the error. 

 

When I added the altfpc_lib.v to my project refered to Quartus II Software Version 10.0 SP1 

Release Notes, other errors appeared. 

 

Error: Node instance "sd3" instantiates undefined entity "altfpc_lib".
0 Kudos
Altera_Forum
Honored Contributor II
391 Views

The altfpc_lib should have been generated by the megawizard alongside the altfp_matrix_mult file. If you don't see it try re-generating the altfp_matrix_mult (open megawizard, select edit an exisitng, find your existing altfp_matrix_mult file, keep clicking next until its finished, click ok to replace the files). Then have a look in the output directory and see if it created the altfpc_lib. If it is make sure it's included in your project (probably already included in the .qip). Now try compiling again.

0 Kudos
Altera_Forum
Honored Contributor II
391 Views

There is the altfpc_lib.v in the output directory, but the altfpc_lib isn't included in my project, so I inclede it manually. And the error is: 

 

Error: Node instance "sd3" instantiates undefined entity "altfpc_lib". 

 

The .qip reads as follows, is that right? 

 

set_global_assignment -name IP_TOOL_NAME "ALTFP_MATRIX_MULT" 

set_global_assignment -name IP_TOOL_VERSION "10.0" 

set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "altfp_matrix_mult0.v"] 

set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "altfp_matrix_mult0.bsf"] 

set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "altfp_matrix_mult0_inst.v"] 

set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "altfp_matrix_mult0_bb.v"] 

set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "altfp_matrix_mult0.inc"] 

set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "altfp_matrix_mult0.cmp"] 

 

When I commented the code  

"//altfpc_lib sd3( )", there's no error. Then I will test the function of altfp_matrix_mult.
0 Kudos
Altera_Forum
Honored Contributor II
391 Views

You can try editing you .qsf to make the altfp_lib.vh map to a library. 

 

In your project project directory there should be a .qsf file that has a line that looks like this 

set_global_assignment -name VHDL_FILE "altfp_lib.v" 

Modify this line to set the library name: 

set_global_assignment -name VHDL_FILE "altfp_lib.v" -library altfp_lib 

 

I'm not sure if this is the problem, but it might help. I'm just guess here. If your design works fine with just commenting out that line then no need to do this. 

 

I should note that there's probably a way to set the library for a file in Quartus, but I'm not sure how it would be done because I always use the qsf to modify project settings.
0 Kudos
Altera_Forum
Honored Contributor II
391 Views

Thanks very much for your answer. I will give it a try.:)

0 Kudos
Altera_Forum
Honored Contributor II
391 Views

 

--- Quote Start ---  

You can try editing you .qsf to make the altfp_lib.vh map to a library. 

 

In your project project directory there should be a .qsf file that has a line that looks like this 

set_global_assignment -name VHDL_FILE "altfp_lib.v" 

Modify this line to set the library name: 

set_global_assignment -name VHDL_FILE "altfp_lib.v" -library altfp_lib 

 

I'm not sure if this is the problem, but it might help. I'm just guess here. If your design works fine with just commenting out that line then no need to do this. 

 

I should note that there's probably a way to set the library for a file in Quartus, but I'm not sure how it would be done because I always use the qsf to modify project settings. 

--- Quote End ---  

 

 

 

I commented that line and the project can be compiled. But the simulation result is wrong. 

 

What's the funtion of that line(altfpc_lib sd3( ))?
0 Kudos
Altera_Forum
Honored Contributor II
391 Views

I was going to go try to generate a new ALTFP_MATRIX_MULT design in Quartus 10 but it seems to greyed out now that I've update to SP1 so I can't select it for generation. Perhaps Altera has found that it is buggy and has disabled it until they fix it. 

 

You could try downloading Quartus 9 and generating a new ALTFP_MATRIX_MULT design using that, it should hopefully be a bit more stable. You should still be able to compile it in Quartus 10 if you need to.
0 Kudos
Reply