Multiply and memory collision in Spartan 3

Joined
Feb 14, 2011
Messages
7
Reaction score
0
Cheers everybody

I am implementing some computation and some memory blocks in Xilinx Spartan 3.
and there is following collision between memory block and multipliers:

Code is OK, simulation and rough synthesis OK.

But when it comes to implementation, it crahes because for each memory component Xilinx needs to allocate 1 multiply unit (for some unknown reasons, sharing some elements, whatever)

Unfortunately I have more multiplications in the design than available. Normally it is not a problem - Xilinx allocates all hard multipliers available and the rest is created from dissipated logic.

But in this particular case Xilinx ISE tool (fool?) first allocates absolutely all multipliers available on board for the arithmetics and then says it cannot make the memories because there are no more free multiply units left.

Such stupid thing ...
The question is:

How to force Xilinx ISE to first implement the memory and then use the remaining multipliers for arithemtic action (as it should be by default).

OR perhaps

How to turn off the allocation of the hard multipliers for arithmetic

OR something ?

Is there any other way than to design these multiplying units on my own ...

Thanks in advance
 
Joined
Mar 10, 2008
Messages
348
Reaction score
0
Hi

You can turn on/off the initialization of multipliers like this.

1) Right click at the Synthesize -XST icon
2) Select Process properties
3) Select the Category - Hdl option
4) You will find the multiplier option at the button

your welcome
 
Joined
Feb 14, 2011
Messages
7
Reaction score
0
I am impressed.
I have gone through enormous list of constraints, looking for something like this, but haven't found it. Whilst it was hidden just 3 clicks away.

In desperation I have created my own multiplying unit and it helped of course.
But is is better to use the genuine optimised design

Thank you! I
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,222
Members
46,810
Latest member
Kassie0918

Latest Threads

Top