XST duplicate register option does not work

Apr 21, 2006 1 Replies

I have an application that has 300 pins on a tri-stated bus. They have a tight offset constraint for the output time. Driving the T on the OBUFT for all those off the same line fails time spec because the fanout (of 300) stretches the time a little too long. In Synplicity, you turn on the duplicate register option, and it will duplicate the last register on the T line 300 times so that the timespec will pass. XST is clueless. It seems to not even care that it is failing timespec; it does no register duplication to fix failed OFFSET constraints. I had to duplicate the register myself by declaring a bunch of them. Anyone else seen the same issue?



I've done the same thing myself. I noticed that XST will duplicate a register to go into an IOB if it is also used internally (one register for feedback and another going out), but I haven't seen it duplicate registers to reduce fanout. If you also have a fast clock, be aware that the signal driving your 300 OBUFT D-FF's may have a tough time meeting the period spec...

Good luck, Gabor

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required