( DAC 01 Item 21 ) --------------------------------------------- [ 7/31/01 ]

Subject: Averant 'Solidify', @HDL, Prover

YET ANOTHER FORMAL TOOL OR THREE:  Averant, Prover, and DAC newbie @HDL
also presented their verification tools that all seemed to basically work
by comparing your design's spec to what you've actually coded in Verilog.
Again, all three appeared to have Yet Another Set Of Proprietary Asserts
(just like Verplex, 0-in, Ketchum, and Real Intent) added more credance to
Harry Foster's warning that all these N different proprietary asserts are
more 'part of the problem' than 'part of the solution'.  Ugh.  Anyway, if
you're willing to learn each and every new special language these tools
have, they're supposed to be quite good at finding bugs you wouldn't
normally see through olde-fashioned overnight testbench regressions.


    "Here's my ten-second summary of my experiences to date with
     Averant's Solidify.  I've been using Solidify to verify mid-sized
     (1000-input, 1000-output, few hundred thousand gates) combinational
     logic.

     Positives:  it verifies RTL versus abstract properties, unlike
     netlist-to-netlist verifiers like Formality.  The properties are
     easier to create than a Specman or Verilog testbench, and of course
     once you verify the property, you have no worries about "coverage" in
     your test vectors.  When Solidify finds problems, the counter-example
     vectors it produces are nicely pruned, and they pointed me right at
     the problem areas.

     The latest version lets Solidify see into the design's hierarchy
     (earlier versions could only use top-level signals in properties), and
     this lets you write hierarchical properties to verify circuits that
     would otherwise be too complex for Solidify (or at least too complex
     for impatient designers who don't want to wait a few hours for the
     answer).

     Solidify includes some very helpful, powerful builtins, like onehot and
     onehot0 assertions.

     The documentation includes a section on "Writing Efficient Properties"
     in the "Advanced Modeling" chapter.  Maybe everything I do is
     "Advanced" (well, yes, of course, that must be it), but I'd put this
     in a special "read this right now, do not pass Go, do not collect
     Unnecessary Frustration" section.  I found the hints here extremely
     helpful.

     Negatives: it's quite possible to create properties which Solidify
     can't verify in a reasonable amount of time.  Creating good properties
     can require a little bit of ingenuity if your logic is complex.

     Solidify's found bugs for me, and I've found it much easier and faster
     than writing Verilog or Specman tests.  Obviously with a thousand or
     so inputs I can't very well run an exhaustive simulation, so it's been
     very comforting to know that the circuit passes in Solidify."

          - Martin Harriman of Tau Networks


    "Solidify by Averant
     -------------------
     1. It is a "Static Functional Verifier".  The only one in the world.
        There may be distinctions between a static functional verifier and
        a model checker.  However, such distinctions are not obvious to a
        user.
     2. Properties are written in a proprietary language.  They are kept in
        a file that is separated from the design file.
     3. Target block-level verification.  It is unclear if it can handle
        large blocks.
     4. The associated diagnostic tools appear to be weak compared to
        BlackTie and Verix.
     5. Available on Linux/Intel."

          - Henry So of Mobilygen, Inc.


    "a) Veritable: Averant static checker type deal. Looks more formal
        in nature.  Called Verity-check.  Mostly a state checker, but
        also has race detection and linting-type checks.  They had a
        2nd tool, but I seem to have lost my handout.  I remember it
        too was worth a closer look.

     b) Averant: Solidify.  Static checker.  Big news here is that the
        list of real life success stories has grown.  I think last 
        year they had one (Cisco).  Tool looks much the same with 
        some improvements in the GUI area to aid in setup, coding
        and debugging."

          - Peet James, Qualis Design


    "We are looking at Verix (Implied Intent / Expressed Intent) from Real
     Intent.  To us this looks like a strong competitor to Verplex's Black
     Tie, not so much as a competitor to Averant's Solidify.  Of course,
     the Real Intent sales people disagree, especially as we are buying 
     Solidify.  We will continue to look at tools in the "Static Functional
     Verification" arena as we believe that there is a lot of potential
     payback in this area."

          - [ An Anon Engineer ]


    "Solidify looked pretty good in the domain of single clock designs.  Too
     bad we and everyone else has a whole bunch of multi-clock designs."

          - John Szetela of AMD


    "We've done evals this year on Averant and Real Intent, and had Formal
     Check (from Cadence) in for a demo.  Averant had a lot of trouble
     parsing my chosen design, and had to code up custom memories to
     replace the LSI RAMs in the design.  It was awkward to use, since
     assertions needed to include all the control code which was already
     in the design. E.g. 'if !reset && posedge CLK && state == 1 then on
     next CLK state -> 2'."

          - Jeff Deutch, Avici Systems


    "@Verifier by @HDL
     -----------------
     1. Properties are described by Verilog PLI calls.
     2. Released 6 months ago.
     3. Automatically detect errors such as multiple state machine
        deadlocks.
     4. Available on Linux/Intel.
     5. The purchase price is in the order of $75K.
     6. Could not schedule a demo."

          - Henry So of Mobilygen, Inc.


    "At Prover, the interesting thing to me was that their approach came
     from the software world of validation and they are bringing the core
     technology to hardware side.  The discussion was centered around the
     fact that they have a proof engine that can be interfaced with a
     parser on the front end and a display tool at the back end.
     Conceptually, this appeared logical, yet the person in the booth
     could not actually show me a demo (I wasn't interested in equivalence
     checking demo he was prepared for).  The discussion of the technology
     itself was intriguing to see if there was a new business opportunity
     there."

          - Yatin Trivedi, Intrinsix


 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)