Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
18 years ago

Multi source problem

When I am designing a booth multiplier, while adding the partial products it is showing multisource problem. the partial products being stored in array.

4 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    You will need to provide a little more detail to this in order for someone to help you.

    Perhaps a chunk of the code?

    What do you mean by the term "it" is showing multisource?

    Is "it" the array that the partial product is begin stored in?

    Is the Array a block Memory, or a register set?

    More details please.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I have used a radix4 booth algorithm and generating 4partial product which is stored in the array and then it is left shifted according to possition to be added together. i am attaching the main code for your reference. this problem occurs when I am using adders.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I am not really a wizard with you coding style, and I do not see the component code pieces but my guess is that you are not registering certain outputs, or indexing certain items into registers to temporarilly hold the partial products.

    Something like this is resulting in the error message about multi sourcing.

    Rather than using all the generate statements, try building a much simpler version with maybe 2x2 or 3x3 first and work out the issue.

    Once that is figured out, then you can add the generate functions to get the language to help you out.

    Avatar
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    I have used a radix4 booth algorithm and generating 4partial product which is stored in the array and then it is left shifted according to possition to be added together. i am attaching the main code for your reference. this problem occurs when I am using adders.

    --- Quote End ---

    Solution to multisource: The problem is being solved by starting the array row headers from 1 instead 0;