FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
5881 Discussions

NCO IP uses far too many M10K blocks

HypeInst
New Contributor I
455 Views

When I add one (1) NCO from Intel's IP Catalog to my design, the M10K-block usage increases by 576, exceeding the capacity of the Cyclone V device.

The Intel NCO IP Core User Guide states that M10K-block usage for the Cyclone V in the multiplier-based configuration is only 2!

I am using 32-bit phase-accumulator precision and angular resolution, and 24-bit magnitude resolution.  Output configuration is dual.

Why is this happening?  Thank you.

0 Kudos
11 Replies
Nurina
Employee
413 Views

Hi,


I suspect that this is happening because the utilization of the memory block is not efficiently used. Can you attach your .qar file so I can reproduce the error? To generate .qar file, go to Project->Archive Project


Can you also let me know which version of Quartus you're using?


In the meantime this thread might help you: https://community.intel.com/t5/Intel-Quartus-Prime-Software/Why-does-infer-Quartus-so-many-M10k-bloc...


Thanks,

Nurina


HypeInst
New Contributor I
392 Views

Hi Nurina,

     thank you for your response and assistance.  I am using Quartus Prime Version 20.1.1 Build 720 11/11/2020 SJ Lite Edition.  I have attached the associated *.qar file here.  Please provide further guidance.

Thanks again,

HypeInst

Nurina
Employee
362 Views

Hi,


Apologies for the late reply, I'm still trying to investigate your problem here. Is there any files/scripts excluded from the file you attached?


Regards,

Nurina


HypeInst
New Contributor I
350 Views

Hi Nurina,

     there are no scripts, but there are excluded Verilog files that are not related to the NCO.  The NCO fails fitting under the package that I provided to you, so you'll be able to reproduce the issue with that package.

Regards,

HypeInst

Nurina
Employee
329 Views

Hi,


I'm able to see that the NCO IP is using 576 M10K blocks.


Can you try using CORDIC generation algorithm instead of multiplier-based to see if it satisfies your requirement even though it has lower FMax.


Can you let me know why you want to use multiplier-based?


Regards,

Nurina


Nurina
Employee
327 Views

Hi, 

 

So I tried using the CORDIC generation algorithm and it uses an expected amount of M10K memory blocks, but with a lower Fmax (also expected). Would this satisfy your design needs?

 

Regards,

Nurina

HypeInst
New Contributor I
311 Views

Hi Nurina,

     I prefer to use a multiplier-based NCO due to application performance requirements.  I'll be happy for this issue to be reported to the correct department to be corrected in a future Quartus Prime release.

Thank you and regards,

HypeInst

Nurina
Employee
293 Views

Hi,


I've informed engineering about this issue and I'll let you know what they come back with.


Regards,

Nurina


Nurina
Employee
286 Views

Hi,


The user guide numbers are only for a particular (unspecified) configuration of the NCO.


In multiplier-based architecture, every two bit increment of the angular resolution doubles the required depth of the memories. At 16 bits, only 2 M10Ks are required. So you'll have to reduce the angular resolution to reduce the M10K usage.


Let me know if you have any more querries.

Regards,

Nurina


HypeInst
New Contributor I
246 Views

Hi Nurina,

     I understand.  Thank you for your research time and response!

Regards,

HypeInst

Nurina
Employee
265 Views

Hi,

We did not receive any response to the previous answer that I have provided, thus I will put this case to close pending. 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.

Regards,
Nurina

PS: If you find any comment from the community or Intel Support to be helpful, feel free to give Kudos.

Reply