From: ilaroche on 21 Apr 2010 14:34 Hello everyone, I'm trying to synthesise my design using Synplify Pro D-2010, but I am new to this tool and encountering various problems. Here's my first one, which I'd like to solve to be able to investigate other mysterious errors I'm getting. In my design, I use a package called "types_viterbi". In my VHDL files, I access this package by using the classic "use work.types_viterbi.all" line of code. The file containing this package is added to my Synplify project. I see it under the VHDL folder in the GUI shown when accessing my .prj file. Except, when I try to do a "Synthax Check" or a "Synthesis Check" of my components, Synplify returns a warning saying it cannot find "types_viterbi". So, of course, it cannot find the constants I've declared in this package, which is the error shown below. Here's the exact warning & error returned by Synplify: @W: CD643 :"U:\Recherche\Algo_Viterbi_Parallele\VHDL\Synplify\source\decodeur_viterbi_carre.vhd":11:21:11:21|Ignoring use clause - types_viterbi not found ... @E: CD255 :"U:\Recherche\Algo_Viterbi_Parallele\VHDL\Synplify\source\decodeur_viterbi_carre.vhd":15:42:15:42|No identifier "poids_size" in scope I've read the documentation related to the compiler warning CD643, and it says nothing about user-defined packages. However, in the Synplify documentation on Libraries and Package, there's the following information : If you create your own package and compile it into the work library to access its definitions, you still need a use clause before the entity using them, but not a library clause (because work is the default library.) To access packages other than those in work and std, you must provide a library and use clause for each package as shown in the following example of creating a resource library. Is there a step I must do to compile my package into the work library? I've tried selecting the "types_viterbi.vhd" file and running the "Compile Only/F7" command, but this compiles the top_level entity. I did another Check Syntax of the top level entity after, and I still got the warning & error. Yet, the compile command worked! I haven't tried compiling my package into a separate library. It would involve changing all of my VHDL files to include this new library and I'd rather just have access to my package from the work library. Any help clarifying this problem is welcomed. Again, I'm new to this tool, so it may be a very simple solution, but I can't find anything in their documentation or on a Google search. Sincerly, Isabelle LaRoche Université Laval --------------------------------------- Posted through http://www.FPGARelated.com
From: Pontus on 21 Apr 2010 15:27 Does it simulate OK? Sometimes the files need to be added in correct order, i.e. the file with the package must be added before any library units that make use of it. IIRC you can drag them around in the gui to alter the order, or check the .prj file which should have lines such as: add_file -lib work my_pkg.vhd add_file -lib work my_ent.vhd etc. HTH -- Pontus
From: ilaroche on 26 Apr 2010 12:20 >Could you try to introduce an error in the package declaration, >just to see that the compiler/analyzer is actually looking >at the file you think its looking at?!? >-- Pontus > I removed a ";" at the end of a constant declaration in the package. The "Compile Only" process that I ran on my entity found the error in the package. --------------------------------------- Posted through http://www.FPGARelated.com
|
Pages: 1 Prev: multiboot spartan3E Next: Tutorial for C based bit-accurate hardware modeling ? |