Things have turned deadly serious this week between two major players in the ESL market, Mentor Graphics and Forte Design Systems.
Both companies made significant product announcements on July 29th, and now it's a to-the-death struggle for ESL hearts and minds between Mentor's flagship product, Catapult C, and Forte's flagship product, Cynthesizer. Only one product, and possibly only one company, is going to survive.
Of course, when you talk to reps from Mentor and Forte in person, the combatants don't describe the situation quite so dramatically; their battle lines are more vaguely drawn. Short of similarly describing Catapult C and Cynthesizer as "high-level synthesis tools" Catapult C synthesizes RTL from Ansi C++, while Cynthesizer synthesizes RTL from SystemC the terminologies used by the two companies barely overlap.
When I spoke by phone to both Mentor and Forte about their latest announcements Mentor VP/GM Simon Bloch and Product Line Director Shawn McCloud on one call, and Forte VP of Sales & Marketing Brett Cline on another the messaging behind their respective tools was sufficiently distinct that it was hard to tell if these guys really compete.
But on closer inspection, Catapult C and Cynthesizer are indeed locked in mortal combat. Mentor and Forte are not just differentiating product features when they use varying vocabularies to describe their tools; they're in fact attempting to wrest control of the fundamental definitions of ESL. Win that battle, and they know they'll win the war.
For instance, Forte's Brett Cline said, "ESL is a level of abstraction that allows convergence of hardware and software. It's an increase in abstraction, moving from RTL to behavioral for hardware design, and it's also a widening of the overall space, which is why it's so confusing."
Alternatively, Mentor's Simon Bloch defined ESL simply as "TLM-based design," while Shawn McCloud was more overt: "Each company is trying to define ESL differently, but we've got the right definition and it's validated with more usage of [our tool]."
With regard to the language distinctions, Bloch said Catapult C supports Ansi C++ because it's "a widely adopted software language." McCloud added, "Mentor's had a lot of experience with high-level synthesis going back to the late 90's. We took lessons [from that period] when we embarked on Catapult. It could have been C, C++, SystemC, VHDL or a higher Verilog, but we felt that Ansi C++ had the widest adoption in terms of modeling and the software community, so it was the natural choice. We don't synthesize SystemC, because it's just C++ with a layer of class models for concurrency, which we believe we can infer [with our technology]."
Per Forte's Cline, however, "SystemC has certain properties that make it viable for high-level synthesis, where Ansi C is not. Ansi C is a serial language, A then B then C. It has no concurrency, bit accuracy, or timing in general. If I'm building a design in Ansi C, I can't include a hardware interface, or design feedback where I change the order of the processes. So the first time you can test things is when you've got RTL, but by then you can only run a very slow simulation.
"With SystemC, you can accurately model a fully-hand-shaked interface. You can accurately model your design, plus verify both the control and datapath designs. What comes out [of Cynthesizer] is fully optimized RTL that's 5 to 10 times better in area, power, and speed [than hand-coded RTL]."
Mentor's McCloud, however, said the newly released Catapult C now includes control-logic synthesis, as well as a verification flow and features for low power: "Clock gating is the principle low-power technique in use today, which is why with this Catapult [release], you can do multi-level clocking, analyze the design, and identify clock-gating conditions. The power savings here are quite substantial."
Per Simon Bloch, "One of the biggest challenges in incorporating C synthesis for control, is making sure we're clean from a verification standpoint. We've filed a patent [based on the new technology in Catapult C] that enables us to provide that innovation. We're actually enabling the flow with C++, which simplifies the verification and enables correct by construction design. Synthesis and verification now work hand-in-hand in the tool."
Back to Forte's Cline: "When the original algorithm is written in C++ or Ansi C, it's written serially, but we want to process data in parallel. You can't run parallel blocks in C++, so hardware designers have had to create interfaces for blocks to talk to each other. Interface creation is error prone, however, so our new Cynthesizer release figures out the data dependencies and builds an interface that works and is pre-verified. With automatic partitioning and interface generation, a process that normally took 4 to 5 days, now has been cut down to and hour or less."
But the PowerPoint that accompanied the Mentor phone call said, "Catapult [supports] detailed RTL block interactions that can be validated at the C level, [offering] the performance and flexibility of C++ and the accuracy of actual RTL."
Claims and counterclaims
As confusing as these claims and counterclaims may be, what is clear is that both Cynthesizer and Catapult C strive to produce maximally optimized RTL that can easily slip into the next phase of the design flow, usually Synopsys' Design Compiler. Neither Mentor nor Forte wants to upset their customers by asking them to alter their existing flow.
Not so when it comes to the other players in EDA, however. Forte's Cline said, "It pains me to say it, but Cadence has a better approach than Mentor when it comes to ESL. Our philosophies are aligned here."
Meanwhile, Mentor's McCloud said, "John Cooley and Gary Smith say we're viewed as having the technology edge in the industry. How much of it is over Forte? That's subjective, but we're very confident that we're widening the gap between our product and the competition." Bloch added: "We've done quite well with Catapult. Mentor has the largest ESL market share and the most tapeouts in this space."
Forte's Cline said, "Our main competitor is Catapult C, but does Mentor have the largest marketshare in ESL? It depends on how your choose to count your revenue."
And so the battle intensifies. Even as the technology distinctions between Catapult C and Cynthesizer remain somewhat vague, the battle lines in the war of words between Mentor and Forte are clear. ESL today is not about quality of results, it's about quantity of rhetoric with the major players in ESL coming at you until your eyes glaze over.
It's my suggestion, therefore, that if you plan to start designing at higher levels of abstraction, and you're probably going to have to soon, best to figure out ESL on your own in private contemplation away from the hue and cry of today's principle vendors. If you don't, you may become a statistic in the increasingly pitched battle between Mentor and Forte and their to-the-death struggle may become your own.
Peggy Aycinena is editor of EDA Confidential, and a contributing editor to EDA Weekly and the DACeZine.