Re: Query about optimization




"Vinay Deshpande" <deshpande.vinay@xxxxxxxxx> wrote in message
news:1179892781.689864.135800@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
On May 23, 4:54 am, "KJ" <kkjenni...@xxxxxxxxxxxxx> wrote:
Second, most synthesizers have only
limited optimization across entity boundaries, so a description that
spreads a combinatorial function across many entities is less likely
to result in a nearly optimal implementation.

Do you have any code that actually demonstrates this lack of
optomization?

KJ

You can try the example which I quoted above. Create two
implementations of N-bit full adder, one with simple statement like C
<= A + B; and other using hierarchical design starting from a simple
full adder. You can see difference in logic elements consumed by both
implementations.

That's not what I was asking about. The comment that Andy made that I
questioned was directed at logic that spans multiple entities. What he said
was that the entity presented some sort of boundary that made it difficult
to optomize logic across. I've yet to see any evidence of such a barrier
and asked him for an example to back up his claim (and one would also need
to know which synthesis tool has this problem since that is the tool that
has the problem). What I've seen is that the logic gets flattened into a
netlist right at the outset, the entity 'boundaries' at that point no longer
exist and they have no such effect as claimed. It could be though that
older tools, or crappy tools, for whatever reason, did (or do) have this
limitation (maybe they optomized entities but not globally with a flattened
netlist). Hence the question.

As for your example, there are multiple n-bit adder algorithms and I suspect
that C<=A+B is implemented with a different base algorithm than the
cascading of smaller adders. Your view is that both produce the sum of two
numbers and are functionally identical but optomizers are not so smart as to
discern better algorithms from logic but what they are good at is inferring
from the top level code what the best algorithm to implement is....and then
optomize the logic for that. A crude example would be if you were to code a
discrete Fourier transform algorithm that produces frequency responses from
a set of input numbers and expect that an optomizer would be able to figure
out that an FFT would be better algorithm to use. Both would give you the
same overall function but different implementations one of which would be
'better'. Having said that, though I'll admit that I don't know just which
base algorithm your tool happened to choose and how (or if) it differed from
your hand coded version and whether the observed differences were because of
a different algorithm choice at the outset or because of an entity boundary
barrier effect. But you can't assume that just because you got different
results from different source code that it is an example of an entity
boundary barrier limitation.

KJ


.



Relevant Pages

  • Re: Numerical Recipes (Fortran) Usenet ??
    ... algorithm, see if you can multiply all input cooefficients and values ... I've looked at different optimization libraries (netlib, Neumaier, ... Miller, Burkardt, and others) with no luck in identifying a Fortran ... outside the box as those values on the box boundaries. ...
    (comp.lang.fortran)
  • Re: Query about optimization
    ... implementations of N-bit full adder, one with simple statement like C ... the entity 'boundaries' at that point no longer ... from the top level code what the best algorithm to implement is....and then ... optomize the logic for that. ...
    (comp.lang.vhdl)
  • Re: Query about optimization
    ... implementations of N-bit full adder, one with simple statement like C ... the entity 'boundaries' at that point no longer ... from the top level code what the best algorithm to implement is....and then ... optomize the logic for that. ...
    (comp.lang.vhdl)
  • Re: Inverse error function (erf)?
    ... > algorithm and lists implementations in many languages (including bc ... "Lower tail quantile for standard normal distribution function. ... This function returns an approximation of the inverse cumulative ... The algorithm uses a minimax approximation by rational functions ...
    (comp.lang.lisp)
  • Re: Damn you, FEDEX! or Nikon D40 lost in Springfield, MO blackhole.
    ... the 2 mp Mavica he had been using with a Nikon D40. ... After shopping around, he got me to order one for him. ... The shipper had it insured, but from what I have read it could take weeks to sort this crap out. ... You may get your insurance from FedEx and a couple weeks later they find it and deliver it. ...
    (alt.photography)