While mature IPs promise simplicity and low engineering cost, the reality isn’t that straightforward.
Semiconductor design houses are in a race to differentiate themselves by integrating and delivering more functionality in their SoCs while addressing the common concerns of power, performance and cost.
This global race has led to a steep rise in the number of design IPs integrated in any given SoC. As generations of SoCs are churned out, some of the design IPs repeatedly used in them reach a state of nirvana. They are still useful and required for current SoCs, but from a development point of view they have transitioned to a mature state, as their specifications have stabilized and aren’t changing much. These class of design IPs are now commonly being referred to as low touch IPs.
The low touch design IPs are typically integrated into the generation of SoCs with very few changes. Changes are in the form of updating few configurable parameters, editing of control/status registers, address space allocations or number of instances changes to meet the requirements of the target SoC. Some examples of low touch IPs are timers, legacy interrupt controllers, general purpose IOs (GPIO) and real time clocks (RTC) etc.
SoC manager’s challenge: Engineering resource allocation
Ideally, SoC managers would wish to invest a minimum number of engineering resources on low touch IPs. That’s because of two reasons. First, low touch IPs do not have sufficient work to warrant dedicated engineering resources and, second, those valuable engineering resources could be doing differentiating work for the active design IP developments.
Low touch design IPs based on their design complexity and configurability take varied time for sanitization and integration. Due to a lack of data on accurate effort required, and the necessary design documentation, owing to the fact that they have been used for a number of SoCs, almost all low touch design IPs gets classified as simple and easy to close. A number of designers will vouch that making this assumption can be risky.
Assigning a bare minimum of a single design and verification engineer to these low touch design IPs quickly adds up to a sizable number. Consequently, it becomes painful for an SoC manager to justify these numbers to the upper management who are looking at design complexity and the rigors of IP integration and verification from ten thousand feet above the ground.
Engineer’s challenge: Trapped in the “simple and easy” bias
On the other hand, in order to optimize engineering resources, engineers are convinced to own and support multiple low touch design IPs by saying there are not many changes required. They are told, “All that is required is few very easy changes, do quick integration and run a few sanity tests to show that design IP is healthy. That’s all!” But unfortunately, that is never the case.
In reality, engineers end up facing the following challenges:
Finally, when engineers make it all work after several months of hard work, they would still be busy justifying why “simple and easy” design IP took so long. All we had to do was just change few configuration parameters. Why did it take so long? Additional engineering resources pulled in to maintain the schedule causes heartache to the SoC manager.
At the end, engineers are just afraid to touch the “low touch design IPs.”
How to address this lack of context challenge?
We cannot arbitrarily call a design IP a low touch design IP. We need to define the process to qualify a design IP as a low touch IP. This process has to be:
The context of low touch design IPs should be able to provide the following documentation, metadata and metrics.
What do I gain by investing in process to qualify and maintain context?
Sounds like extra work?
Yes, there is some work but it has high ROI. How?
First of all, it makes sense to perfect the process of sanitization and integration for key low touch design IPs because the future churn in these IPs is limited. So your uncertainties with these design IPs should be minimized. The last thing you want is SoC schedules slipping due to these low touch IPs.
The SoC design manager can then optimize engineering resources for the low touch design IPs by creating a shared pool of engineers for a group of low touch design IPs instead of allocating dedicated engineers. Engineers from the pool can quickly jump into any of the low touch design IPs, load the context about it, get it integrated in an SoC, sanitize it and move on to the next action. This can directly translate into cost savings on the engineering resources.
Also, it does not tie down engineers to specific low touch design IPs. It creates flexibility to rotate engineers across design IPs allowing redundancy for companies and excitation of something new to learn for engineers.
How to go about it?
Either you can reinvent the wheel to solve this problem in sub-optimal way or look at the designHUB from ClioSoft.
designHUB supports defining the custom workflows needed to qualify low touch design IPs by matching criteria and benchmarks of your organizations and teams. It provides an “IP Reuse ecosystem” which enable designers within an enterprise to share all the metadata and collaterals about the design IP making it easy to discover. Design data can be stored in different places – SOS, Git, Perforce, SVN or NAS. Since designHUB is agnostic to where the design data is stored, it serves as the single portal within the company to access all design information for any IP or SoC.
designHub’s “Unified dashboard” allows easy and central location to track both the design and verification metrics. Metrics provides the clean baseline status at the start of design IP reuse.
Not only you will be able to enhance the IP reuse productivity, save costs on engineering resources, and improve the quality of IPs, but also sustain it throughout the life cycle of the design IP.
—Anand Shirahatti wrote this blog on behalf of ClioSoft.
Leave a Reply