( DAC'19 Item 2a ) ------------------------------------------------ [02/05/20]

Subject: Mentor BDA AFS speed/accuracy/convergence wins Best of 2019 #2a

SPEED PLUS ACCURACY WINS: In the SPICE wars, Mentor BDA AFS users came out
in force this year to report that Mentor nailed having AFS run faster than
Synopsys HSPICE/FineSim and Cadence Spectre APS -- while still maintaining
its high accuracy.  Some user comments:

   "Before AFS, I didn't think a true SPICE simulation could match
    or exceed a fast SPICE simulation like FineSim."

   "AFS gets accurate results on par with HSPICE and FineSim, but it
    runs faster for functional simulations."

   "In general, AFS runs up to 5X faster than Cadence Spectre APS,
    depending on the circuit."
PLUS CONVERGENCE: The added reputation that BDA AFS converges on simulations
that causes other SPICEs to choke was a strong bragging point, too.

   "I like AFS because Spectre APS just can't handle some circuits,
    while AFS can.  There is no choice there."

   "Since AFS can converge, at least you know where to start.
    Spectre APS chokes at a certain size."

   "Running IP IR drop simulation with 4 cores on a ~2 million
    element design only took 2 hours with AFS.  I don't think
    Spectre APS could have even converged it."

   "BDA AFS is faster than Synopsys FineSim, converges much
    better, and its accuracy is within 0.5% of FineSim."

PLUS KILLER SUPPORT: That AFS technical support *after* the Purchase Order
has been signed dwarfs these 3 other big traits.  Why?  Because what good
is fast speed + sharp accuracy + amazing convergence if you can't get the
bloody SPICE run started?  (There's an interesting write-up of Mentor
BDA AFS support vs. Cadence Spectre support in the user comments.  Find it
if you want a good laugh!)
   
And I have to tip my hat to Ravi for keeping BDA AFS support exceptionally
strong even after two mergers!

This balance of speed + accuracy + convergence + killer support easily made
BDA AFS the favorite #1 SPICE simulator with the users for their top-level,
pre/post-layout, and transient simulations.

        ----    ----    ----    ----    ----    ----    ----

OLD INTRIGUE RETURNS: In 2013, Cadence kicked the BDA AFS simulator out of
the Virtuoso ADE cockpit.  (ESNUG 521 #5)  Being clever, BDA R&D wrote their
own backdoor entrance to the Cadence OASIS interface that Virtuoso used.
In response, Cadence sued BDA and in a colossal public relations blunder,
threatened to sue the BDA customer base, too!
     
    Does Cadence-Berkeley lawsuit mean some ADE users will be sued?
    Berkeley's lawyer answers Cadence charges in U.S. District Court
    So far public opinion is strongly anti-Cadence on CDNS vs. BDA

And a year later

    SCOOP -- Judge dismisses CDNS vs. BDA lawsuit "with prejudice"

The upshot was Cadence was forced to give BDA AFS open and unfettered access
to Virtuoso ADE for a number of years.
     
But it appears that this 2014 settlement has now -- 6 years later -- timed
out because Cadence has recently started charging a "corkage fee" (i.e. an
extra license fee) to all users if they want to use BDA AFS integrated
within Virtuoso ADE.  (And, like a persistant cough that won't go away,
it's making the users pissed off against Cadence!  See the user comments
yellow highlighted below.)

        ----    ----    ----    ----    ----    ----    ----
        ----    ----    ----    ----    ----    ----    ----
        ----    ----    ----    ----    ----    ----    ----

      QUESTION ASKED:

        Q: "What were the 3 or 4 most INTERESTING specific EDA tools
            you've seen this year?  WHY did they interest you?"

        ----    ----    ----    ----    ----    ----    ----
    
    We currently use the Mentor AFS circuit simulator for pre- and post-
    layout simulation of our ADCs.  We've also used it for our PLLs.  

    In general, AFS runs up to 5X faster than Cadence Spectre APS, depending
    on the circuit.

    BENCHMARK: Mentor BDA AFS vs Cadence Spectre APS ++aps

    Performance

    Post-layout simulation (RC Coupled +Supply) of a ~2 million nodes 
    design, running each simulator on ~20 cores.

            SPICE simulator                   Runtime
            --------------------------        --------
            Spectre APS, ++aps option         ~7 days 
            AFS                               ~4 days 

    It is difficult to make a perfect 1:1 performance comparison, because
    we had different servers being used, with different loading conditions.

    Accuracy

        - BDA AFS's default accuracy option (level 4) had similar accuracy 
          to the Spectre APS (++aps option)

    Convergence

        - Both tools can converge for transient simulation for clocks up
          to 1.0 GHz, with time steps as low as 1/2 pico second.  

        - AFS converges slightly better than Spectre APS for very large 
          circuits (e.g. 2 million nodes)
 
    Virtuoso ADE-XL integration
 
        - We use Cadence Virtuoso ADE XL and Assembler.  AFS works fine 
          with it -- it's straightforward to use it.

    I'd recommend Mentor BDA AFS simulator: it's a good tradeoff between
    speed and accuracy -- better simulation times than Spectre APS,
    with basically the same accuracy.
 
    Also, Mentor has very good customer support.  If we are stuck or have 
    an issue, we get a quick feedback and usually solution to our issues.  

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS is similar to Cadence Spectre APS, but faster.  Time is
    most important to us.  

    We use both Mentor AFS and Cadence Spectre APS, as we have licenses
    for both.  Below are some comparisons.

    CAPACITY & PEFORMANCE

        - We use BDA AFS at the top level and the block level.
  
        - We usually run both AFS and Spectre on 12 threads.
  
    I like AFS because Spectre APS just can't handle some circuits, while 
    AFS can.  There is no choice there.  

        - For our typical transient simulation, BDA AFS is 2X faster.

        - If the design size is big, or it's a post-layout simulation
          with a lot of RC parasitics, the AFS speedup vs Spectre APS
          is more noticeable.

    AFS has better DC convergence.  For transient analysis, you run DC 
    convergence first.  Since AFS can converge, at least you know where
    to start.  

    Spectre APS chokes at a certain size.

    But even with AFS, we must adjust the accuracy mode if our design is 
    more than about 2M elements -- and then do our post-layout reduction.
    AFS has multiple accuracy modes, with level 5 being the highest.  We
    never use it at accuracy level 5 -- it's not needed.  

    For some large designs we use AFS level 3, and even then, it can
    take weeks.

    ACCURACY

    For similar accuracy settings, BDA AFS and Spectre APS are very close
    in accuracy -- within 0.5% to 1.0%.

    Both are our golden simulators; you just must know the right settings 
    for your design.

    It's difficult to match the two simulators exactly because the setups 
    are different.  You must play around with each of them.  

        - Our Mentor AE is very good at helping us to improve AFS accuracy
          without speed trade-off.

        - You can relax Spectre's settings, but then it takes a long time 
          to run. 
 
    CONVERGENCE

    BDA AFS converges easily.  Much better than Spectre APS.  Plus, we get
    lots of script support from MENT AE that we can use on our own.

    OTOH, Cadence Spectre has "hidden" options, and it's not convenient for
    us, as only Cadence AEs and R&D can tweak those options.  And only the
    Cadnce AE can use them; which takes a long time to get to happen
    (compared with doing it on our own with Mentor AFS).  Our Cadence AE
    is not approachable immediately.

    AFS CADENCE VIRTUOSO ADE XL & ASSEMBLER INTEGRATION

    We use AFS with Virtuoso ADE XL and Assembler.  

        - It's gotten tougher to do this lately, as Cadence is now
          trying to block AFS usage by making us users pay Cadence
          a license fee to use Cadence Virtuoso with Mentor AFS.

        - We can only run older Virtuoso versions without paying the 
          extra license fee -- Cadence's newer Virtuoso version will
          not allow it.

    Why should we pay extra to use a 3rd party SPICE simulator?

    The other option we have is to look into their all-Mentor ACE flow
    and just move away from Cadence.  (See ESNUG 524 #2)

    TRANSIENT NOISE ANALYSIS

    AFS biggest strength is speed while maintaining accuracy.  Especially 
    for transient analysis -- it is way better there.  When you do
    transient noise simulation with AFS, it includes harmonics.  With AFS,
    we don't have to be specific about it as you do with Spectre APS.  

    But our circuits are getting bigger and bigger, so we have more 
    parasitics, especially with smaller process nodes.  This makes it harder
    for CAD tools to handle, even with multi-threading.  

    So even AFS takes longer now and chokes sometimes, where we must break 
    up our design.  We'd like AFS speeded up again.  

    SUPPORT

    One very important feature that makes AFS more desirable for us than 
    Spectre is Mentor's AE and R&D support.  The Mentor AFS AE is knowledge
    and helpful.

    Cadence does not have good service -- from our experience their Spectre
    AE/R&D support is bad.  Maybe this is because we're not Apple nor Intel,
    but even smaller customers should get treated well, no?

    Here is a comparison of what happens when we have a technical issue 
    come up.

        - Cadence Spectre Support

          Our Cadence AE serves as dispatcher rather than a technical 
          expert.  When we ask for Cadence AE support, the AE files a
          ticket to the right R&D team (RF or transient), then schedule
          a WebEx with us.

          Cadence's R&D team is remotely located in India, so one 
          session is usually not enough.  So, after giving us a couple
          of ideas, we must schedule a new WebEx -- but then it's with 
          a different Cadence R&D person in India.  So, there is no
          continuity or clear ownership.

        - Mentor BDA AFS Support

          With Mentor it's easy.  The AFS AE comes to our office 3 days
          a week.  They sit here and work on it first.  If they can't 
          solve it themselves, they then press Mentor R&D to help.  

          We pack our stuff for them so that MENT R&D can duplicate the
          problem, and either get suggested workarounds from MENT R&D,
          or have BDA AFS R&D add a fix to a new release.  The MENT AE
          comes back to continue to work with us on it.  

          Sometimes we run into a problem over the weekend, and our 
          Mentor AE will still reply to us.  Good AE with engineering 
          talent -- they help us get to tape-out.

    Support matters a lot because you will always have CAD tool issues.  

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS (Analog Fast SPICE) is our golden SPICE simulator for our 
    EDA flow for silicon.  We use it on our SRAMs, ADCs, PLLs, and DACs.
 
    AFS inputs: 
 
        - A netlist consisting of transistor and passive models 
          (capacitor resister diodes), plus various stimuli such as 
          V-source and I-source devices, or VCD files.  It supports 
          SPICE, Spectre, and Verilog-A languages.

        - Parasitic formats (e.g. if you are running a simulation 
          on extracted designs, such as DSPF, SPF, SPEF)
 
    AFS outputs:
 
        - Primarily waveforms.  AFS supports multiple formats, but we
          only use PSFbin.

    The largest post-layout design we ran AFS on was 30+ million elements
    and 300K active elements.  We've used it for both pre-layout and post-
    layout simulation.

    Our custom design environment is primarily Cadence Virtuoso ADE.
 
        - AFS integration used to be *very easy* plug-and-play in 
          Virtuoso.

        - AFS is still plug-and-play, but it's not as easy.  Cadence has 
          gotten stricter about how 3rd party simulators can connect to 
          ADE.
 
    We're not happy that Cadence has enforced a "corkage fee" for us to
    use third party simulators like BDA AFS.
 
    It's worth commenting that while usually vendors have great pre-sales 
    support, which continues shortly after the sale, and then tapers off, 
    Mentor has had great AE support even way after they sold us AFS.
 
    Their great support that started at BDA and has continued following
    both the Mentor and Siemens acquisitions.
 
    AFS is a great tool, with great support.  

        ----    ----    ----    ----    ----    ----    ----

    Siemens BDA AFS

        ----    ----    ----    ----    ----    ----    ----

    For SRAM circuits, BDA AFS is still king.

        ----    ----    ----    ----    ----    ----    ----

    We REALLY do not like the "guest fee" that Cadence is requiring
    for us to use Mentor AFS in the Virtuoso environment

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS.  I run it for simulation of out analog cells and systems.

    The most common designs I run it on are data converters (ADCs, DACs).
    I also use it to simulate general analog apps using op-amps, etc. 
 
    The largest design I've run AFS on would probably be a pipelined ADC.  
    It was probably 100+ K nodes.  

    We use AFS for transient noise analysis and it performs well.  

    It's very fast -- we've run it on 16 cores, and I have not seen any 
    convergence issues.

    I also used it for periodic noise analysis.  AFS was faster than 
    Cadence Spectre-APS, though I don't have exact numbers for comparison.

    We use AFS in the Cadence Virtuoso environment.  I have not seen any
    significant problems using AFS within Virtuoso.

    The biggest benefit we see with AFS is the reduced SPICE simulation 
    time.

        ----    ----    ----    ----    ----    ----    ----

    That Cadence 3rd party license fee to run AFS in ADE is bullshit.

        ----    ----    ----    ----    ----    ----    ----

    Mentor BDA AFS is a very accurate analog SPICE simulator.  

    I've used it on an LNA (low noise amplifier), an ADC, and for analog
    top-level simulation -- both for pre-layout and post-layout designs.

    I especially like it for transient long run simulations and analog 
    top-level simulations.

    Running AFS on 8 cores for a design with ~100,000 total elements
    took 3 days.

    BDA AFS gives us:
 
        - 2X speedup over Spectre APS for our top-level analog 
          simulations

        - The same level of accuracy.

    It's top-level analog simulation speed is AFS' biggest strength.

        ----    ----    ----    ----    ----    ----    ----

    I'd rank AFS in the top 3.  It easily beat Spectre-APS in our tests.

        ----    ----    ----    ----    ----    ----    ----

    Don't like this extra license fee to run AFS inside of Virtuoso.

        ----    ----    ----    ----    ----    ----    ----

    I'd recommend Mentor AFS.  It rescues us from very long simulations
    when we are limited in time. 

    In some cases, AFS is faster by more than 10x to Spectre APS due
    to faster conversion, with the necessary accuracy.

    We've used it to simulate our SerDes and PLLs, including

        - Very top-level simulations like test chips which contain 
          our complete IP solution.

        - Pre- and post-layout simulations.

    Running IP IR drop simulation with 4 cores on a ~2 million element 
    design only took 2 hours with AFS.  I don't think Spectre APS
    could have even converged it.

    AFS' biggest strength is its fast speed with good accuracy.  Also,
    so far AFS has always converged for us on the first run.

        ----    ----    ----    ----    ----    ----    ----

    Mentor's AFS SPICE Simulator.
 
    We use it for pre- and post-layout simulation of our big designs, such 
    as the whole IP top-level (SerDes and PLL).  We only use AFS on large 
    designs because we have limited licenses.
 
    We use it for top level verification, and it is more accurate than our 
    normal simulator, which is Mentor Eldo.  

    I've run AFS on designs with up to 2 to 3 million elements.
 
    MENT BDA AFS vs. MENT Eldo

        - Running AFS on 5 cores for a 2 million element design took
          around 2 days
 
        - For normal simulations, AFS is 2x faster than Eldo

        - For some LPE cases AFS is 3x to 4x faster than Eldo due
          to its parasitic reduction option 

        - For some specific test cases:

            - Eldo typically takes 3 days

            - AFS takes only ~3-4 hours <-- the speed up in this
              test is the result of the convergence time

    I've used AFS for around a year now and all the SPICE simulations 
    converge from the 1st time.  However, I've had some problems
    with convergence while simulating Verilog and Verilog-A models.
 
    We have our own in-house custom design platform, so it wasn't
    hard to integrate AFS inside.

    One of the best options in AFS that it can take both Synopsys HSPICE
    and Cadence Spectre-APS input files and that we can mix between
    commands from each language.
 
    I recommend BDA AFS for sure.  It's really fast.

        ----    ----    ----    ----    ----    ----    ----

    Paying extra for permission to run AFS inside the Cadence environment
    pisses off my mgmt to no end.

        ----    ----    ----    ----    ----    ----    ----

    We use Mentor AFS for pre-layout and post-layout SPICE simulation of
    our PLLs, regulators, and bias circuits

    BDA AFS is faster than Synopsys FineSim, converges much better, and
    its accuracy is within 0.5% of FineSim.

    AFS is easy to use in our environment -- we use it both with Cadence 
    Virtuoso ADE and with a command-line interface.

    It is also good for mixed-signal co-sim simulation of small blocks.

    AFS is not as fast as Synopsys CustomSim fast-SPICE, and Mentor's
    Symphony mixed signal simulator (ESNUG 584 #10 and DAC'19 #2d) did
    NOT support a sandwich structure for us to use Fast-SPICE instead
    of AFS.

    But overall, AFS has a very good balance of speed and accuracy, with
    excellent field and R&D support by Mentor.

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS SPICE Simulator
 
    We use Mentor AFS, Synopsys FineSim and Synopsys HSPICE, but in the last
    year we've been using BDA AFS more than FineSim.

    AFS gets accurate results on par with HSPICE and FineSim but runs faster
    for functional simulations.  

    In 2019, I did a deep dive into comparing BDA AFS and Synopsys FineSim.

        - Beginning in its mid-2019 version, AFS had significant speedup 
          versus FineSim.

        - In a mixed-mode or semi-top level, AFS is now ~30% faster due
          to parallelism.  (8 cores). 
 
    We use AFS liberally for block level and top-level simulation and for 
    transient analysis.
  
    My approach, when designing a circuit:

        1. I run my building blocks in HSPICE first.  I then run them on 
           BDA AFS to see if the results pass in accuracy (vs HSPICE).  

           So far, AFS has passed every time. 
 
        2. I then use AFS in level #4 accuracy mode for the rest of my
           SPICE simulations.  (Although I haven't directly compared
           performance of HSPICE and AFS, I assume HSPICE would be slower.)

        3. For our top-level simulations, we use only FineSim and AFS,
           (and not HSPICE)

    Observations:
 
        - I've had no problems with convergence for AFS, HSPICE or 
          FineSim.
 
        - We use Cadence Virtuoso as our schematic and symbol editor.  
          We mostly run AFS, FineSim and HSPICE through a command line 
          script, so they work fine.  
 
        - FineSim has a feature that I'd like Mentor add to AFS: When
          I save a simulation file with FineSim to the FSDB format,
          FineSim will hierarchically save every node.  AFS can't do
          this.

        - Accuracy options

          AFS has 5 accuracy levels and we usually set it to level 4 for 
          our blocks and our top-level designs.

          FineSim has 5 accuracy settings for faster results, which you 
          need when you have more than 30,000 elements.

        - Level 5 is the most accurate <-- level 5 is still lower accuracy
          than true SPICE, so we sometimes use 4 at block level.  I use 
          setting 3, or the equivalent.  (The latest release has been 
          modified but I use something similar.) 

        - Level 1 is a functional mode simulator (pseudo Fast-SPICE).
          I do not use this mode, as I don't find it necessary as using
          setting of level 3 is usually fast enough.

    Another way we've been using AFS more is as our primary SPICE simulator
    is through Mentor Symphony (with AFS) as our mixed signal simulator.

    Whenever we engage with new tool like Symphony, we hope that options we
    had with our prior tool (Cadence AMS Designer) will still apply.  That
    happened here.  Translating our SPICE decks into Symphony was pretty
    seamless, so we could easily swap simulators (SNPS FineSim to BDA AFS).
 
    I would absolutely recommend AFS.  What most impressed me was the speed 
    up improvement at the top level.
 
    Before AFS, I didn't think a true SPICE simulation could match or
    exceed a fast SPICE simulation like FineSim.

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS.  It's a fast simulation engine that we use for block level 
    and top-level post layout simulation.

    Overall, AFS converges well for PSS (periodic steady state) analysis; 
    occasionally, the designer must change the settings.  

    AFS is usually faster than Spectre APS.  

    Transient noise analysis occasionally still has bugs in AFS; however,
    the Mentor support team is very responsive.  They gather more data if
    needed and come back with a solution or workaround fairly quickly.

    Overall, I'd recommend AFS -- it's a good simulator.

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS is part of our design and verification at the IP/block
    level for custom memory, analog front-end circuitry & data converters.

    It has a good balance of accuracy and runtime for both pre- and post-
    layout designs.  We can run a ~1 million active element design on up to 
    16 cores within 12 hours.

    AFS has advantage in terms of runtime on most analog IPs.  For single 
    device characterization or very large designs of 1+ million transistors,
    there are few other commercial SPICE simulators running faster than AFS
    with similar accuracy.  

    Before releasing AFS as a golden simulator for our projects, some option
    tuning and characterization are needed.

    AFS performs well for transient noise analysis and exhibits good 
    reliability across process.  AFS converges pretty well with the tool's 
    default option settings.

    In general, AFS is a good SPICE simulator at the analog IP block level.
    It can achieve a good balance between runtime and performance for 
    different design needs with easy option tuning.  I would recommend it.

        ----    ----    ----    ----    ----    ----    ----

    Spectre-AFS flopped in our benches against AFS.

    Why should we try Spectre-X?

        ----    ----    ----    ----    ----    ----    ----

    Mentor AFS.  (Cadence Spectre failed the simulation for a large mixed
    signal design, while Mentor AFS simulated our circuits successfully).

        ----    ----    ----    ----    ----    ----    ----

    We're an AFS house.

        ----    ----    ----    ----    ----    ----    ----

    We've been all AFS since before the Mentor BDA acquisition.

        ----    ----    ----    ----    ----    ----    ----

    Ravi has been visting us since the early days of Berkeley DA.

        ----    ----    ----    ----    ----    ----    ----

    in our (MENT) AFS v (CDNS) AFS comparison, AFS won by a lot.

    unsure how Spectre-X will fare.

        ----    ----    ----    ----    ----    ----    ----

    Since APS couldn't beat AFS, we suspect X won't beat AFS either.

        ----    ----    ----    ----    ----    ----    ----

    After watching AFS vs. Spectre-APS, we don't think Ravi will be
    out of a job with the advent of Spectre-X.

        ----    ----    ----    ----    ----    ----    ----

    The AFS guys give the best support I've ever seen in all of EDA.

        ----    ----    ----    ----    ----    ----    ----

    We buy AFS and FineSim licenses in bulk.  Same as last year.

        ----    ----    ----    ----    ----    ----    ----

    Cadence XPS, Mentor AFS, HSIM.

        ----    ----    ----    ----    ----    ----    ----

    Synopsys HSIM.  We're the last Nassda customer remaining.

        ----    ----    ----    ----    ----    ----    ----

Related Articles

    Mentor BDA AFS speed/accuracy/convergence wins Best of 2019 #2a
    Cadence Spectre-X skeptics & early sightings is Best of 2019 #2b
    Empyrean ALPS GPU crushing Cadence Spectre-APS is Best of 2019 #2c
    Mentor Symphony takes on Cadence AMS Designer is Best of 2019 #2d

Join    Index    Next->Item







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





































































 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)