What's PR got to do with it?
Ed Lee has been around EDA since before it was called EDA. He cut his teeth doing Public Relations with Valid, Cadence, Mentor, ECAD, VLSI, AMI and a host of others. And he has introduced more than three dozen EDA startups, ranging from the first commercial IP company to the latest statistical … More »
Stale IP: what it is and what it ain’t
December 3rd, 2012 by Ed Lee
Over the last couple of weeks we’ve been exploring the concept of stale IP – what it is and what to do about it. I’ve gotten insights from two industry experts in IP (Harrison Beasley of GSA and Manoj Bhatnagar of Atrenta). I will wrap up my series on this topic with one final view – from IP provider, Warren Savage, founder and CEO of IPextreme. He will challenge the whole idea of stale IP in this interview.
Liz: Stale IP – what is it?
Warren: Frankly, I’ve been working in IP for seventeen years, with most of the world’s largest IP and chip companies, and I have never heard the term before. I think people who think about IP being “stale” may be confused about the difference between IP and code. IP is certainly code, but code is not necessarily IP. I have argued vociferously for years on this topic, particularly opposing those who would claim that IP is a service business (see an old blog post by me “Repeat after me: IP is Product Business…” http://blogs.ip-extreme.com/2009/07/test-page.html). I think this notion of “stale IP” is sort of a regurgitation of the idea that there are classes of IP. For me, IP is something that is reusable indefinitely and valuable as long as there is a market for it.
Liz: Can you give me some examples of what you mean?
Warren: 8051 would be one. This was a microprocessor that was invented by Intel in the 1970s and has been used in billions of devices since, mostly as IP. A search of www.design-reuse.com returns 41 entries for 8051 IP cores, reflecting a vibrant market for the venerable core. The instruction set is the same, yet it still serves a valuable purpose for simple control applications that build on a rich ecosystem of software and tools. I don’t think customers are saying, “Let’s use some stale thirty year-old technology!” Instead, they are saying. “Let’s use this proven technology—it’s a standard.”
ARM7TDMI would be another. When my team was working with ARM in the late 1990’s to create the synthesizable version of this core, the 7TDMI was the cash cow for ARM that was propelling it toward IPO. If you look at www.chipestimate.com, you will find that ARM still sells it. Newer, faster, more advanced cores are out today, but the same core, the same code, remains available for sale.
USB can be added to this list. USB, which was invented in the mid 1990s, is still used today in all of its various levels. For mice and keyboards, USB 1.1 is still used. It’s simple, low-speed, and cheap. For cameras and displays, USB 2.0 is commonplace. And for high end data-intensive applications such as storage and printing, we now have USB 3.0. The existence of new standard levels doesn’t necessarily mean that IP associated with previous standards is no longer useful. They are functionally different, which means they are different products now—each with its own specific market and each commanding different pricing.
To summarize, I think the very concept of “stale IP” is rooted in the false impression that all code is IP. When Mike Keating and I were working together at Synopsys and talking about IP reuse, Mike coined a nice word that I liked to use: “salvaging.” This is something very distinct from true IP reuse. Salvaging is basically taking code from previous designs and reworking that into new designs. While the code could be leveraged, the entire verification effort had to be repeated, more or less. In the real world, salvaging happens all the time—but it is not (or at least should not!) be confused with real IP, which, as in the examples above, can live for a very long time.
So, for the purpose of this discussion, I’d simply define “Stale IP” as: code which was written at some point in time for a specific purpose and is no longer maintained, documented, or intended for used in future products.
Liz: So what’s so bad about it?
Liz: How do we prevent this code from being stale?
Warren: That’s easy! It needs to be real IP. It needs to be designed, verified, and documented for the explicit purpose of somebody in the future reusing it. I’ve worked with a number of semiconductor companies over the years, including IBM, NEC, Panasonic, Philips, NXP, Freescale, National, TI, and many more. The objective there was to help them develop IP and tailor the associated processes to create true reusable IP that can be efficiently reused for many, many years. It turns out that there is a cost for this—it requires about two to three times the development effort to design a piece of code to be an IP, when compared to the figures for a single-use design. It becomes a simple economic question: if there is an application for this code that is greater than that initial three times investment in the entire future of the company, then it makes sense to design it to IP standards. The most dramatic example of this that I’ve seen is with NXP’s CoReUse methodology, which was driven from the CTO down into the product groups with the objective that every significant design in the company should be captured as IP.
The companies that IPextreme works with today are extremely good about reusing their internal IP and have seen incredible efficiency as a result. Furthermore, with IP in such good condition, it opens up external licensing opportunities to gain additional revenue and strategies that can be achieved through a company’s spreading its technology outside its own semiconductor products. In fact, it was this big idea concept of sharing IP across the entire semiconductor industry that was the impetus for my founding IPextreme back in 2004.
Liz: What are you supposed to do with stale IP?
Warren: Caveat emptor! The most important thing to do with stale IP is to make sure that everyone knows that’s what it is. As I’ve said, there is nothing wrong with salvaging as long as you know what you’re working with. I will say this, though – sometimes a design starts off intended for a single project, but during the course of the project, or even later, it is deemed that this code should be turned into a true reusable IP. And in this case, you start a project to “upgrade” the code to become a real IP.
Liz: Why can’t you just leave it in your library?
Warren: I think that’s a terrible idea, as it provides the illusion that it is somehow IP. It should stay in the product databases, waiting to be fished out by those open-eyed souls who know what they are getting—sort of like dumpster-diving. We recommend to our Xena customers that they only put true IP into their repositories.
Liz: Is there a secondary market for stale IP?
I want to thank Harrison Beasley, Manoj Bhatnagar and Warren Savage for taking the time to share your thoughts with me on this vital topic. It’s been an eye opener.
One Response to “Stale IP: what it is and what it ain’t”