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.