Xilinx multiplier core instantiation for Virtex4

Discussion in 'VHDL' started by D Stanford, Mar 23, 2007.

  1. D Stanford

    D Stanford Guest

    I'm running into some unexpectedly big problems instantiating some
    multiplier cores for a Virtex4 part. I'm porting a design originally
    in a Virtex2 part over to a Virtex4, and everything has run smoothly
    except the multiplier cores. I haven't had problems with FIFO cores or
    dualport RAM cores or ROMs, but the multipliers seem to cause a ton of
    problems.

    For the Virtex4, we're using XST in ISE 8.2 for synthesis. The first
    problem was that mapping failed with an unexpected (ie unexplained)
    error. It took a while to isolate this to the VHDL files with the
    multiplier cores in them. So I regenerated the cores, using the Xilinx
    CoreGen tool.

    Still no luck. Now, the translator complains that the multiplier name
    called out in the EDN file doesn't exist.

    So I've switched to trying to instantiate them direclty, as the
    CoreGen documentation says is possible. Now the HDL compiler won't
    recognize mult_gen_v9_0 as a valid entity, even though the multiplier
    core documentation says that it should.

    So I have a couple questions from my experience

    1) Am I correct in presuming that the Virtex2 multiplier cores won't
    work with a Virtex4 part?

    2) Is there any generic advice (or more detail I can provide) on
    creating cores for XST synthesis using CoreGen?

    3) Is there any advice (or more detail I can provide) on directly
    instantiating the mult_gen_v9_0?
    D Stanford, Mar 23, 2007
    #1
    1. Advertising

  2. D Stanford

    Duane Clark Guest

    D Stanford wrote:
    > I'm running into some unexpectedly big problems instantiating some
    > multiplier cores for a Virtex4 part. I'm porting a design originally
    > in a Virtex2 part over to a Virtex4, and everything has run smoothly
    > except the multiplier cores. I haven't had problems with FIFO cores or
    > dualport RAM cores or ROMs, but the multipliers seem to cause a ton of
    > problems.


    Why not just infer the multipliers? In the past that may have been a
    problem, but XST will now infer them just fine.
    M <= X * Y; -- should be all that you need
    Duane Clark, Mar 23, 2007
    #2
    1. Advertising

  3. D Stanford

    D Stanford Guest

    On Mar 23, 2:54 pm, Duane Clark <> wrote:
    > D Stanford wrote:
    > > I'm running into some unexpectedly big problems instantiating some
    > > multiplier cores for a Virtex4 part. I'm porting a design originally
    > > in a Virtex2 part over to a Virtex4, and everything has run smoothly
    > > except the multiplier cores. I haven't had problems with FIFO cores or
    > > dualport RAM cores or ROMs, but the multipliers seem to cause a ton of
    > > problems.

    >
    > Why not just infer the multipliers? In the past that may have been a
    > problem, but XST will now infer them just fine.
    > M <= X * Y; -- should be all that you need


    That's the next plan (plan D at this point).
    D Stanford, Mar 23, 2007
    #3
  4. D Stanford

    JK Guest

    I also got similar kind of problems.
    For these cores have u added xco files or vhd file generated by xco
    files?
    I added xco file to project instead of vhd file, n problem got solved.
    U can try both options...

    Regards,
    JK
    JK, Mar 24, 2007
    #4
  5. D Stanford

    D Stanford Guest

    On Mar 24, 6:49 pm, "JK" <> wrote:
    > I also got similar kind of problems.
    > For these cores have u added xco files or vhd file generated by xco
    > files?
    > I added xco file to project instead of vhd file, n problem got solved.
    > U can try both options...
    >
    > Regards,
    > JK


    That's really surprising to me. The .xco is the coregen project file.
    When you add it to your Xilinx ISE project it gives you good results
    with the multiplier cores?
    D Stanford, Mar 26, 2007
    #5
  6. D Stanford

    JK Guest

    On Mar 26, 7:33 pm, "D Stanford" <> wrote:
    > On Mar 24, 6:49 pm, "JK" <> wrote:
    >
    > > I also got similar kind of problems.
    > > For these cores have u added xco files or vhd file generated by xco
    > > files?
    > > I added xco file to project instead of vhd file, n problem got solved.
    > > U can try both options...

    >
    > > Regards,
    > > JK

    >
    > That's really surprising to me. The .xco is the coregen project file.
    > When you add it to your Xilinx ISE project it gives you good results
    > with the multiplier cores?


    I tried all the options when this multiplier core vhd file was giving
    errors.
    When you work with Xilinx software, sometimes you need to work without
    applying mind... hahahaha
    Honestly, I haven't gone through this problem deeply, as adding xco
    file to project cleared all errors.

    Regards,
    JK
    JK, Mar 27, 2007
    #6
  7. D Stanford

    quantum_dot

    Joined:
    Nov 21, 2006
    Messages:
    31
    May be I can add some more to it. I also faced similar problem in past. When one tires to copy a whole project from one directory to another, or for that matter from one device to another. The xco file does not reflects in the source window. We need to add them manually and remove the corresponding vhdl files. Only xco file is sufficient for all the cores.
    I am told that this will not be a problem in ISE9.1 release, have not tested though...
    :driver:
    quantum_dot, Mar 28, 2007
    #7
  8. D Stanford

    self Guest

    JK wrote:
    > On Mar 26, 7:33 pm, "D Stanford" <> wrote:
    >> On Mar 24, 6:49 pm, "JK" <> wrote:
    >>
    >>> I also got similar kind of problems.
    >>> For these cores have u added xco files or vhd file generated by xco
    >>> files?
    >>> I added xco file to project instead of vhd file, n problem got solved.
    >>> U can try both options...
    >>> Regards,
    >>> JK

    >> That's really surprising to me. The .xco is the coregen project file.
    >> When you add it to your Xilinx ISE project it gives you good results
    >> with the multiplier cores?

    >
    > I tried all the options when this multiplier core vhd file was giving
    > errors.
    > When you work with Xilinx software, sometimes you need to work without
    > applying mind... hahahaha
    > Honestly, I haven't gone through this problem deeply, as adding xco
    > file to project cleared all errors.
    >
    > Regards,
    > JK
    >

    The .xco file is not the coregen project file it is just the definition
    file for the single core. Generally it is the .xco file you want to
    include in your project for implementation. The .vhd that comes out of
    coregen is just for simulation.

    If you don't want to include the .xco file in your project you can just
    add it's path to the "macro search path". Map will then find the .ngc
    netlist at map time.

    In any case, do not include the coregen .vhd output because that is not
    synthesizable code.

    Pete
    self, Apr 28, 2007
    #8
  9. D Stanford

    scottcarl

    Joined:
    May 4, 2007
    Messages:
    49
    Location:
    USA
    Virtex-4 parts contain components called DSP48s which do not exist within Virtex-II or earlier parts. That is why you must regenerate all multipliers in CoreGenerator and target your Virtex-4 device. As far as .xco and .edn files are concered, the best way to use them is to develop all Cores in the same folder and point the macro search path to them.
    scottcarl, May 10, 2007
    #9
    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. Donato Pace

    Help me with Virtex4 ML455 board

    Donato Pace, Aug 1, 2006, in forum: VHDL
    Replies:
    0
    Views:
    542
    Donato Pace
    Aug 1, 2006
  2. Replies:
    1
    Views:
    553
    Salt_Peter
    Dec 25, 2006
  3. Closter
    Replies:
    1
    Views:
    730
  4. olliH
    Replies:
    1
    Views:
    1,062
    JohnDuq
    Apr 17, 2009
  5. Ilias Lazaridis

    CORE - Object Instantiation and Location

    Ilias Lazaridis, May 26, 2011, in forum: Ruby
    Replies:
    16
    Views:
    301
    Ilias Lazaridis
    May 31, 2011
Loading...

Share This Page