A spectre is haunting this newsgroup, the spectre of metastability

Register duplication leads to more nets in the final design, not fewer, so it's not usually going to do much for congestion. However, for these high-fanout signals, it does make placement easier (because there are fewer rubber-bands pulling the driving element around the die).

If I had a net with a fanout greater than a few hundred, and it wasn't a clock or a reset, I'd probably do a bit of redesign at a higher level before resorting to replication. :)

Cheers,

-Ben-

Reply to
Ben Jones
Loading thread data ...

I think I should make the point, for the benfit of those of us who are long past 24, that (in my experience at least) older engineers are just as fast as younger ones at picking up new ideas. In fact, given Natural Selection, they may well be faster.

My (just constructed, contentious, and probably wrong) rule-of-thumb on logic levels is:

1 - softies who write synthesisable behavioural code are likely to end up with over 50, and maybe 100, logic levels. These chips exist; I've worked on one (85 levels). 2 - experienced logic designers who can use a synthesiser can get 10 - 15 levels without thinking about it, and their chips can run at maybe 3 times the frequency of (1) above. But, of course, it takes 3 times as long to write the code. 3 - experienced logic designers who can write behavioural code can also get 10 - 15 levels without thinking too hard about it, because they understand the language and the tools. 4 - if you want to go fast, you need to do maybe 4 - 6 logic levels. This is hard work when writing RTL code, and you'll need to put in lots of fixes. There will probably be lots of places where you're effectively drawing schematics in your RTL code. 5 - there's another way to go very fast. Write your code at as high a level as you want, use a synthesiser which can do good register balancing, and give it lots of pipeline levels to work with. This works well, and is invaluable for complex algorithms.

It would be interesting to know where your contractor fitted in - (1) who got lucky, (3), or (5)?

Evan

Reply to
Evan Lavelle

It wasn't possible in this case, unfortunately, since I didn't understand the design or have enough time. One cone actually had

10,000 endpoints.

Yes, the total number of nets increased, but not by a great deal - the ideal solution would be to turn one source register into 4 registers, each driving a cone of 2,500 endpoints.

Evan

Reply to
Evan Lavelle

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.