Efficient collaboration is essential to meeting tight chip design schedules. In analog and mixed signal (AMS) design, collaboration has many facets. Design tools are usually specific to roles, and handoffs are numerous, especially when moving a design to a foundry. How can companies hope to keep design teams in sync while ensuring that time-to-market windows are met?
Many companies are discovering a design management platform that works across all types of SoC flows – AMS or digital, single or multi-site – without requiring designers to abandon their familiar tools. Describing just such an approach, ClioSoft delivered a presentation at #DAC53 entitled: “Managing AMS Designs for Successful Tapeouts.” I spent a few minutes with Karim Khalfan, ClioSoft’s Director of Applications Engineering, for a bit more detail on their view of issues in AMS design management and how their SOS7 platform handles them.
We’ve all heard the old adage that some variant of data is good, but information is better. In any AMS design environment, there are many different user roles: circuit designers, physical implementation specialists, verification engineers, architects, project managers, and more. Some are very concerned with details, while others are just interested in reviewing progress or addressing specific IP or integration issues. Users have different tools, generating data in different formats in different directory structures.
Design teams work in real-time, sharing data and making changes to both individual IP blocks and integration-level constructs, with handoffs from person to person as needed. Verification teams try to keep up with modified testbenches delivering coverage as designs change. Every time a block is modified, design constraints including layout, power, and timing need to be verified again. A design change that improves one area may impact other areas adversely, triggering a system-level search through change history. Geographic dispersal can complicate collaboration further.
Unmanaged, SoC development can descend into chaos. To quickly reuse and successfully integrate IP blocks, a complete metadata stack with design, test, and versioning data has to be more than just visible – it has to be organized. Khalfan understated things when he opened with this:
Lots of times, teams just don’t organize their data.
Individuals do usually organize their own data in a way that makes sense for their role and workflow. From a team perspective, however, that may leave other data consumers at a loss. At best, those folks have to spend time finding data; at worst, they may be unable to find what they need, and generate an interrupt to the producer asking for help. Most teams don’t consider this problem until they find themselves knee deep in it. The typical response – likely after surviving a disorganized project and before starting a new one – is to designate a data management team to go off and standardize tools, file name formats, directories, libraries, and documentation requirements in a networked repository where hopefully everyone plays by the same rules. They then charge off into the next project and bask in the glow of improved data visibility before they discover there is a lot more to data management.
Unless there’s an expert in ontology in the house, with a keen understanding of what data is needed for what role at what point in the design flow, data organization is best left to those with collaboration experience – somebody like ClioSoft with their SOS7 platform. Khalfan says that experience suggests a starting point for a repository using a structure that isn’t imposed for advanced users who can modify it, but one that gets most teams up and running in a managed platform.
With such a large number of varied roles and different types of data, organizing design data according to the designer role makes sense. Using SOS7, users can easily “populate” their workspace with a read-only version of the necessary files from the repository (often linked to a local cache). This enables the owners of design data to continue working without concern that other users may check out files into their workspaces. Every user manages data they own, while collaborating efficiently across the entire project.
Another aspect of design management is IP block tagging. This enables complex design methodologies to be implemented efficiently using appropriate handshake protocols. As designs evolve, their status is tagged allowing focused effort. A typical analog flow would involve a design team creating schematics and working on them until finalized and tagged as “design_done”; a layout engineer working with a transistor-level view would similarly proceed until “layout_done”.
Schematics and layout versions are associated with each other through a custom attribute in SOS7. Access control is enforced so limited access is provided for some groups and only authorized users can modify files. Once a stable version of the design has been completely verified and tagged, the “rel2syn” (release to synthesis) label can be used as a trigger for synthesis runs, either fully automated or as a prompt to a synthesis team for scheduling.
Since SOS7 is integrated with most analog design tools, designers can manage their work within the familiar confines of their favorite tool. For example, a screenshot shows the ClioSoft SOS7 Design Manager embedded in Cadence Virtuoso:
Khalfan points out ClioSoft also has a Visual Design Diff tool that quickly translates revision history to a highlighted representation of additions, removals, and property changes allowing multiple designers working on the same area of a design to quickly see what the other team members did. “SOS eliminates a lot of the guess work on what has changed, what has been verified, and what is ready to go to the foundry for tapeout,” he said.
ClioSoft SOS provides non-intrusive, non-side-railed design management needed for distributed AMS design teams. It’s a refreshing change from homegrown repository organization efforts that don’t tackle the whole problem. By adding workspace control, tagging, and association, designer productivity is improved considerably. When someone picks up a piece of IP, a section of a design, or the whole thing, its state is immediately understood, reducing wasted efforts and assuring that folks are working on the right version of the design.