TOOLS & SOFTWAREDesign reuse – managing dataand processesBy Rob Evans, AltiumDesign reuse offers manyadvantages but the problem isguaranteeing the integrityof reusable design data.This article describes a newapproach, in which designcontent is released intoa secure storage vault asa unique, traceable revision,also containing any numberof child elements such ascomponents and sub-circuits,maintaining integrity downto the lowest level. In electronics design the need to reuse assetshas grown increasingly insistent as productdevelopment becomes more complex and projecttimelines reduce. The efficiency advantagesof reduced design time and lower costs, andthe potential safety net of harnessing designelements of a known origin and quality, makedesign reuse a compelling concept. To makepractical design reuse a reality one of the keyfactors, most difficult to achieve, is assuringthe integrity of reusable design data – withoutit, the risk is too high and we don’t have theconfidence to reuse that design data. Becauseof that doubt, designers and organizations areunderstandably reluctant to take the risk oftackling real design reuse at anything but ahigh-cost enterprise level.Yet at its most fundamental level, design engineerspractice design reuse in every hardwareproject through the use of integrated circuits –off-the-shelf ICs that have been rigorouslytested and used in countless other designs. ICsgenerally contain a complex collection of circuitry,but we have faith in the integrity ofwhat’s inside. This example points to the essentialconcepts of effective design reuse. Here,the reapplied collection of electronics and datais a known and trusted commodity. There’sno need to reinvent the wheel by designing itsinternal circuitry, since we have full confidencein the integrity of the ‘pre-assembled’ version.And secondly, we aim for a disciplined approachto establishing, storing and using thedesign data associated with that reusable element,by rigidly using a formalized source(such as company database libraries) that featuresstandardized naming conventions anddata structures. It highlights two clues to practicaland effective design reuse – maintainingdesign data integrity and a disciplined approachto how that data is created and applied.In practice, the main challenge when reusingcomponents tends to be further down the designpath where we commit to the final stagesof releasing a design for prototyping or production.At this point we need to be confidentthat the component data is up-to-date and relevant,or more specifically, that a part is stillavailable, still cost-effective in numbers required,and not superseded by a more suitablecomponent.Managing the integrity of collections of components– ensuring their reuseability in effect– can take on the form of locally approvedcomponent libraries right through to companydatabase libraries that hook into the organization’slifecycle management system. The practicaleffectiveness of these systems varies widely– higher level, more complex and intrusivedata management tends to restrict componentchoice and is disconnected from the designprocess, while an informal, local approach carriesa higher degree of risk but is an interactivepart of the environment where componentdecisions are actually made.It’s at the highest level of design reuse wherethings really become challenging and our confidenceunderstandably wanes. The ultimateaim of recycling design resources is the abilityto confidently apply whole sections of pre-existingdesign content in new design projects –reusing our hard-won and painstakingly developeddesign IP. This is design reuse at amuch higher level of abstraction, where thenumber of elements and variables included ineach saved design package can be huge. Here,each reusable section will represent the circuitryand sub-elements – components (includingmodels and parameters), nested circuitry andso on – that are needed to deliver the functionof that package.To date, this level of design reuse has beentackled using an ad hoc approach based oncopy-and-paste techniques, or at best, a systemto formally store reusable chunks of circuitry.This notional design reuse capability providesthe basic mechanisms to implement reusableelements, but does very little (or nothing atall) to mitigate the risk of using them. You justcan’t be sure that the source circuitry is the latestversion, its functionality is still viable, itApril 2013 24
TOOLS & SOFTWAREcan be fully managed as revisions, and incorporatelinks to real-time supplier data thatprovides up-to-date pricing and availabilityinformation. It means that released designpackages, and components, exist in a lockedand traceable form within the vault, wherethey can be managed and reused with accurateand up-to-date knowledge of their origin, historyand lifecycle state – in effect, their validityfor new designs.Figure 1. Formally storing a circuit diagram in a fully managed Vault allows its reuse in otherdesign projects that call for the same functionality. This applies to models of individual componentsjust as well as entire electronic devices.does not contain errors or undocumentedmodifications, or for that matter, if the componentsare still suitable, available and cost-effective.The risks of reusing design sections inthis way are cumulative and untenable, so providingthe design system features and functionsneeded to reuse design content is of little valuewhen the integrity of that content is in doubt.What’s needed is a practical and effective wayto securely store, share and manage locked revisionsof reusable design content, then managethe lifecycle of that content to define its suitabilityfor new designs. It involves separatingreleased design data from the fluidity of thedesign environment into its own fully managed,but accessible, repository. Taking this approach,design content can be released from the designspace itself into a secure storage vault as aunique, traceable revision, which can containany number of child elements (components,sub-circuits, etc). The child content will alsoexist in the vault as its own set of managed revisions,so the integrity of the parent contentis maintained down to the lowest level.A design section is released into the vault as areusable schematic sheet (or tree of sheets)and stored as a fixed revision, where its lifecyclestatus (prototype or production, for example)can be defined over time. If the design sourcedocuments are updated, a new sequentiallynamedrevision can be released to the vaultand its status set accordingly. A sheet of designcircuitry can be formally released into thevault, and then be reused in other design projectsrequiring that same functionality. In thesame way, components released to the vaultFurthermore, once all released items exist inthe vault, including full designs released forprototyping or production, the inter-relationshipsare easy to monitor and track. You canthen have an immediate view of what modelrevisions are used in a component, what componentrevisions are used in a sheet, what designsheet revision is used in a released design,and so on. When you choose a reusable vaultitem for a new design, you’ll have a full understandingof where it’s been used, as well as itsorigins and current lifecycle status.Based on server technology, the managed vaultsystem exists separately from the own projectdata storage of the design system, but can beaccessed easily through the design environmentitself or from the broader organization. Thisprovides secure, permission-based access toothers in the organization such as procurement,manufacturing and administration. Componentchoices, for example, can then become acooperative process with purchasing, and vaultbaseddesign resource data can be easily accessedby company data management systems.From a design reuse view it means that allreusable items have a high degree of data integrity.You can be sure that an item is thelatest revision, you know it has not changedsince it was released into the vault, and you25 April 2013