Knowledge Base Article

Why does my synthesis fail on the floating-point library blocks?

Description

Synthesis may fail with designs that include floating point library blocks. This issue affects all designs that use floating-point library blocks. The design fails.

Resolution

To work around the issue, perform the following steps:

  1. In the import directory that DSP Builder creates (DSPBuilder_<modelname>_import), when you compile (which fails), create a file called aaa_add.tcl (alphabetically first so it runs before other files).

Add the following lines to that file: set quartus_dir $::env(QUARTUS_ROOTDIR) if [info exists ::env(DSPBA_HDL_DIR)] { set dspba_hdl_dir $::env(DSPBA_HDL_DIR) } else { set dspba_hdl_dir /dspba/Libraries } set_global_assignment -name VHDL_FILE /vhdl/fpc/hcc_package.vhd set_global_assignment -name VHDL_FILE /vhdl/fpc/math_package.vhd set_global_assignment -name VHDL_FILE /vhdl/fpc/hcc_implementation.vhd set_global_assignment -name VHDL_FILE /vhdl/fpc/math_implementation.vhd set_global_assignment -name VHDL_FILE /vhdl/fpc/fpc_library_package.vhd set_global_assignment -name VHDL_FILE /vhdl/fpc/fpc_library.vhd

  • Create another file called aaa_add_msim.tcl.
  • Add the following lines:

set base_dir "<path to your DSPBA rtl directory>" set quartus_dir $::env(QUARTUS_ROOTDIR) if [info exists ::env(DSPBA_HDL_DIR)] { set dspba_hdl_dir $::env(DSPBA_HDL_DIR) } else { set dspba_hdl_dir /dspba/Libraries } file delete -force /fpc vlib fpc vmap fpc /fpc vcom -quiet -93 -work /fpc "/vhdl/fpc/hcc_package.vhd" vcom -quiet -93 -work /fpc "/vhdl/fpc/math_package.vhd" vcom -quiet -93 -work /fpc "/vhdl/fpc/hcc_implementation.vhd" vcom -quiet -93 -work /fpc "/vhdl/fpc/math_implementation.vhd" vcom -quiet -93 -work /fpc "/vhdl/fpc/fpc_library_package.vhd" vcom -quiet -93 -work /fpc "/vhdl/fpc/fpc_library.vhd"

  • Rerun the complation.

This problem is fixed in DSP Builder v13.1.

Updated 6 days ago
Version 4.0
No CommentsBe the first to comment