Those who have driven with children know the familiar refrain “Are we
there yet?” Sometimes the child will ask this even before you have left
the driveway. The promise of electronic system-level (ESL) design has
been largely that, a promise. The value proposition is compelling. The
questions are “When will the promise be fulfilled?” and “What are the
remaining obstacles to overcome?”. At DAC I had a chance to interview
A. K. Kalekos, VP of Marketing and Business Development for CoWare.

Would you give us a brief bio.

I am Vice President of Business Development at CoWare. Prior to that I
spent some time as a venture capitalist partner at Telos Venture
Partners. This was the venture arm of Cadence. Before that I was at
Cadence for quite a few years. I was Senior VP for Corporate Strategy,
Senior VP for Professional Services and Development and held a number
of other positions.

When you were a venture capitalist were you looking for something that
would simply provide a good ROI or were you looking for something that
might be of benefit to Cadence?
Cadence set up a standalone independent venture firm called Telos
Venture Partners with Bruce Bourbon and myself as the two partners.
Bruce has been in EDA quite a long time. We were making investments in
high tech but not to meet strategic objectives for Cadence. They also
made strategic investments directly as Cadence. We were the general
partners and Cadence was the limited partner in the fund. We invested
in high tech companies. That was our investment focus. It was an
indirect window for Cadence to see what was happening in the world but
not a vehicle for them to make strategic investments. ROI was our
motivation and that was how we got paid.

How long have you been at CoWare?
Three years now.

Would you give us an overview of CoWare these days.
We think we are really the leader as measured by revenue, as measured
by the size of our installed base and also by the breadth and depth of
technology. To any individual customer that is probably the most
important thing. The CEO of a major European semiconductor company said
“I have heard enough about your successes with other companies. Tell me what I am going to get out of this.”
That’s one thing. We have been at this for quite a while now. But in
the last two or three years, things have been turning in a very fast
way. ESL looks like design automation but it is not exactly your
typical EDA. The mindset is different. It requires people to think
about the problem in a different way. That’s why the mindset is
different. While we anticipated that there was a real need for ESL
design, it was not until recently that people recognized as they go
into multiprocessor SoC design, as the designs become really complex
and as software has increased dramatically, exponentially over the last
few years that ESL design has become a necessity. At the same time they
have also done the initial proof of concept for this. Now the
interesting thing for CoWare is that in the last year or so that the
focus of major customers or of major electronic companies is not in
proving the concept of ESL design but really in figuring out the best
ways to deploy the technology in production. To me the most interesting
and most exciting thing is that the quality of meetings that we are
having today not only here at DAC but in general these days is very
different. The topic is very different from two or three years ago when
it was more of a missionary sale. Today, everybody knows what ESL is,
at least the general idea of what ESL is. That’s what is happening with
us. We have a lot of new technology.

You said you viewed CoWare as the industry leader in terms of revenue
and number of customers. How much revenue and how many customers?
Our public statement is that we have over 160 customers. These are real
live active customers. The revenue in 2006 exceeded $30 million. The
CAGR for the last four years since 2003 was a combined 34%. Our plans
call for similar kind of growth in 2007.

You said that most people have some understanding of ESL but based upon
what I have read and the panel discussion today at DAC there are
different opinions on what ESL is. What is CoWare’s definition?
That’s fair. Our observation on that is that when you look at emerging
markets, even when there is consensus on the technology, on what the
technology is the marketing people like me take over. We have a mission
to differentiate. Part of the differentiation is to say that their
definition of ESL is a little bit different than ours or a lot
different. Then you create a lot of confusion in most cases. That’s not
unusual. That panel does not necessarily prove that there is real
differentiation, that there are real differences as such. For CoWare it
is relatively simple. ESL touches three things: the design or the
architecture of a new SoC product or the environment around that
product, the system, a SoC that go would go into a cell phone and the
cell phone itself. So defining the architecture of that product,
assisting in the hardware implementation of that product through
providing a functional verification testbench for the hardware
implementation and assisting in the software development for that
product by providing a virtual model of the hardware so that software
development can be done on the virtual hardware or the virtual platform
we actually call it. It can start a lot sooner and be more effective.
You can continue even after the physical hardware is delivered because
the virtual hardware platforms (and that goes to my comment on SoC or
multicore designs) virtual hardware platforms give you more capability
to debug software in a multiprocessor architecture, a lot better than
the physical hardware. The controllability and observability of the
virtual hardware platform is far superior to having the physical
hardware there. These are the three elements: architectural design,
hardware implementation and software development that ESL design is
focused on. Another definition that also describes ESL design from a
different perspective is basically modeling at a higher level of
abstraction. RTL is a well understood methodology. It has been around
over 20 years. It has its purpose but today because of the complexity
of things you need to be able to model at a level higher than RTL in
order to get the software performance and in order to be able to run
software on top of your hardware models and so on. ESL is design at a
higher level of abstraction.

Do you provide tools to enable designers to create models, a catalog of existing models, or both?
Simple enough! The backbone of the technology we have, the flagship
product is called Platform Architect. This is a tool that enables you
to put together any size platform that contains complex interconnect
architectures, multiple processors, memory subsystems and any kind of
peripherals. You may construct a simple subplatform of your overall
system or the platform of the entire system depending on what your
objectives are. Platform Architect is a key tool for us. In this tool
we have a library of IP models that can be used inside this tool. We
have models for all the standard off-the-shelf processors from the
major vendors like ARM, MIPS, ARC and you name it. Some we get from the
IP vendors. Others we create ourselves depending on the circumstances.
We have models for interconnect like AMBA and OCP buses and for the
newer companies like Sonics and Arteris. We have models of this
interconnect that can be used in Platform Architect, along with any
number of different types of peripherals.

In addition to the standard IP models that we have in our library we
also provide three distinct tools that enable you to create models you
want to use in your libraries in Platform Architect. If you are
designing an algorithm for video decoding/encoding for wireless
communication, the transmitter/receiver, whatever you can use the
Signal Processor Designer tool to design your algorithm and then you
can export the block so that it will be incorporated into the Platform
Architect. If you have your own custom processor that you want to
design, we have a tool called Processor Designer that you can design it
with. It is a highly productive tool for processor design. It will
generate the instruction set simulator model for the processor that
will work inside the platform. The last tool is a SystemC modeling
tool. If you want to create interconnect models or peripheral models or
custom hardware you create that at the SystemC transactional level. You
can incorporate them into the Platform Architect. Four tools: Platform
Architect, Signal Processing Designer, Model Designer and Processor
Designer.

In addition to that we have an additional capability, an option on
Platform Architect, when you have captured you platform, the architect
has designed your part and analyzed it, optimized it, and measured its
performance, then it is a very simple process, truly a kind of push
button type of process, that guides you through the packaging of this
platform so that it can be distributed as a single binary like a simple
application to the software developers who can then use the platform
for software development. We call that a virtual platform. CoWare
Application Platform is the product name. In the Application Platform
is the packaged model that contains all the IP and everything that the
software developer receives and can use in development. They can not
rewire the platform, they can not replace the processor, change the
memory or the basic interconnect architecture or anything like that.
But they can use it to install software, run it and debug it.