- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
When I try to compile in Signal Compiler I get the error: "Error (10481): VHDL Use Clause error at FIRFilter_FIRSubBlock2_AddSubsystem.vhd(28): design library "fpc" does not contain primary unit "hcc_package" File:" I saw here, http://www.altera.com/support/kdb/solutions/rd07222003_3973.html, that a VHDL Use Clause Error can occur if I compile a DSPBuilder project from quartus, but this error should not occur when compiling from signal compiler. Any help would be greatly appreciated. Thank You, rushaleLink Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
To anyone facing a similar error, I solved this problem by going to Add/Remove Files in Project... under the Project menu in Quartus II and adding all of the files in the folder D:\altera\11.0\quartus\dspba\libraries\vhdl\fpc. The files include hcc_package.vhd, math_package.vhd, and fpc_library_package.vhd.
If anyone knows how to avoid manually adding library files I would appreciate your advice. Kind Regards, rushale- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I think this should do what you want. (Steps 3+4 are required to make modelsim testbenches work as well).
1. In the import directory created by DSPB (DSPBuilder_<modelname>_import) when you compile (which will fail), create a file called aaa_add.tcl (alphabetically first so you can guarantee it gets run before others). 2. Add the following lines to that file:set quartus_dir $::env(QUARTUS_ROOTDIR)
if {
set dspba_hdl_dir $::env(DSPBA_HDL_DIR)
} else {
set dspba_hdl_dir $quartus_dir/dspba/Libraries
}
set_global_assignment -name VHDL_FILE $dspba_hdl_dir/vhdl/fpc/hcc_package.vhd
set_global_assignment -name VHDL_FILE $dspba_hdl_dir/vhdl/fpc/math_package.vhd
set_global_assignment -name VHDL_FILE $dspba_hdl_dir/vhdl/fpc/hcc_implementation.vhd
set_global_assignment -name VHDL_FILE $dspba_hdl_dir/vhdl/fpc/math_implementation.vhd
set_global_assignment -name VHDL_FILE $dspba_hdl_dir/vhdl/fpc/fpc_library_package.vhd
set_global_assignment -name VHDL_FILE $dspba_hdl_dir/vhdl/fpc/fpc_library.vhd
3. Create another file called aaa_add_msim.tcl. 4. Add the following lines: set base_dir "<path to your DSPBA rtl directory>"
set quartus_dir $::env(QUARTUS_ROOTDIR)
if {
set dspba_hdl_dir $::env(DSPBA_HDL_DIR)
} else {
set dspba_hdl_dir $quartus_dir/dspba/Libraries
}
file delete -force $base_dir/fpc
vlib fpc
vmap fpc $base_dir/fpc
vcom -quiet -93 -work $base_dir/fpc "$dspba_hdl_dir/vhdl/fpc/hcc_package.vhd"
vcom -quiet -93 -work $base_dir/fpc "$dspba_hdl_dir/vhdl/fpc/math_package.vhd"
vcom -quiet -93 -work $base_dir/fpc "$dspba_hdl_dir/vhdl/fpc/hcc_implementation.vhd"
vcom -quiet -93 -work $base_dir/fpc "$dspba_hdl_dir/vhdl/fpc/math_implementation.vhd"
vcom -quiet -93 -work $base_dir/fpc "$dspba_hdl_dir/vhdl/fpc/fpc_library_package.vhd"
vcom -quiet -93 -work $base_dir/fpc "$dspba_hdl_dir/vhdl/fpc/fpc_library.vhd"
Filling in <path to your DSPBA rtl directory> as appropriate.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi dabuk,
You're awesome, thank you so much for your reply! So far the tcl files work great. Best Regards, rushale- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I found I had to do a few other things to get the Standard Blockset Test-Bench to work:
First I had to make sure the "Turn on coverage in testbenches" option on the Advanced Blockset Control block was off. Then I had to alter the above aaa_add_msim.tcl file a little. When specifying the directory paths, make sure only forward-slashes are used - no back-slashes --- Quote Start --- set base_dir "<path to your DSPBA rtl directory>"# this is still required for elsewhere set tbbase_dir "<path to your DSPB testbench directory>"# this is the one starting tb_ 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 $quartus_dir/dspba/Libraries } file delete -force $tbbase_dir/fpc vlib fpc vmap fpc $tbbase_dir/fpc vcom -quiet -93 -work $tbbase_dir/fpc "$dspba_hdl_dir/vhdl/fpc/hcc_package.vhd" vcom -quiet -93 -work $tbbase_dir/fpc "$dspba_hdl_dir/vhdl/fpc/math_package.vhd" vcom -quiet -93 -work $tbbase_dir/fpc "$dspba_hdl_dir/vhdl/fpc/hcc_implementation.vhd" vcom -quiet -93 -work $tbbase_dir/fpc "$dspba_hdl_dir/vhdl/fpc/math_implementation.vhd" vcom -quiet -93 -work $tbbase_dir/fpc "$dspba_hdl_dir/vhdl/fpc/fpc_library_package.vhd" vcom -quiet -93 -work $tbbase_dir/fpc "$dspba_hdl_dir/vhdl/fpc/fpc_library.vhd" --- Quote End ---- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you sharkster! I'll try this if there are any further problems. So far so good. :)
Best Regards, RUSHALE
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page