How to specify a package in Xilinx 8.1i

Discussion in 'VHDL' started by Weng Tianxiang, Mar 12, 2006.

  1. Hi,
    I need your help.

    I have 4 vhdl source files:
    A-Package.vhd;
    A1.vhd;
    A2.vhd;
    A3.vhd;

    A-Package.vhd is a package defining all common functions and constants
    used in all other modules.

    If the 4 files are in the above order, Modelsim runs them without any
    errors.

    But with Xilinx 8.1i, errors happen.

    The following is in more details.

    In A1.vhd, it is a top module and there are generic definitions:
    generic(
    DATABITS : integer := DATA_BITS;
    MODEBITS : integer := MODE_BITS;
    );

    A2.vhd and A3.vhd are components called by A1.vhd and have the same
    generic definitions:
    generic(
    DATABITS : integer := DATA_BITS;
    MODEBITS : integer := MODE_BITS;
    );

    I specify DATA_BITS/MODE_BITS in a global package A-Package.vhd.
    constant DATA_BITS : integer := 6;
    constant MODE_BITS : integer := 3;

    In instantiations in A1, A2 and A3:
    generic map(
    DATABITS => DATA_BITS,
    MODEBITS => MODE_BITS
    )
    port map(
    ....);

    When running with ModelSim, there is no error, A-Package is first
    compiled and DATA_BITS
    and MODE_BITS are specified.

    When running with Xilinx 8.1i, there are following warning and errors:
    WARNING:Xst:616 - Invalid property "DATABITS 6": Did not attach to C0.
    WARNING:Xst:616 - Invalid property "MODEBITS 3": Did not attach to C0.
    WARNING:Xst:616 - Invalid property "DATABITS 6": Did not attach to C11.
    WARNING:Xst:616 - Invalid property "MODEBITS 3": Did not attach to C11.
    ....
    ERROR:NgdBuild:604 - logical block 'C0' with type 'ControlBlock_In_0C'
    could not
    be resolved. A pin name misspelling can cause this, a missing edif
    or ngc
    file, or the misspelling of a type name. Symbol 'ControlBlock_In_0C'
    is not
    supported in target 'acr2'.
    ERROR:NgdBuild:604 - logical block 'C11' with type 'ControlBlock_In_0C'
    could
    not be resolved. A pin name misspelling can cause this, a missing
    edif or ngc
    file, or the misspelling of a type name. Symbol 'ControlBlock_In_0C'
    is not
    supported in target 'acr2'.

    The problem is the ERROR MESSAGE DOESN'T CONTAIN THE MISSING OR
    MISSPELLING PIN NAMES so that I cannot identify what pin is wrong.

    I checked my instantiation code, and all pin names are matched. And
    ModelSim
    runs without errors.

    Thank you.

    Weng
    Weng Tianxiang, Mar 12, 2006
    #1
    1. Advertising

  2. Sorry. The problem is resolved.

    The reason is that the project file doesn't contain the lower module
    files while in its project file, lower level module names are shown.

    Weng
    Weng Tianxiang, Mar 13, 2006
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Weng Tianxiang
    Replies:
    1
    Views:
    443
    Mike Treseler
    Mar 12, 2006
  2. Parvinder
    Replies:
    6
    Views:
    728
    Thomas G. Marshall
    Feb 27, 2005
  3. Dave
    Replies:
    2
    Views:
    446
  4. George P
    Replies:
    3
    Views:
    657
    Alex Martelli
    Sep 11, 2004
  5. David Pratt
    Replies:
    4
    Views:
    318
    David Pratt
    May 13, 2006
Loading...

Share This Page