Cadence Connections partner Methodics is a company on the move. The company got its start with VersIC, a product that brings design data management into the Cadence Virtuoso cockpit. While VersIC continues to gain users today, Methodics has recently expanded its focus with ProjectIC, a system-on-chip (SoC) development and IP management tool that tracks closely with the EDA360 vision of SoC Realization. In this interview Simon Butler (right), CEO and co-founder of Methodics, discusses the company, its products, and the need for IC data management and SoC development tools.
The Cadence/Methodics partnership, VersIC, and ProjectIC will be discussed in more detail at an upcoming joint webinar set for Nov. 10, 2011.
Q: Let's start with some background about Methodics. When was it started, by whom, and why?
A: It was founded in the middle of 2006 by myself and Fergus Slorach [CTO]. Both of us had previously worked at Cadence, and we stayed in touch. After leaving Cadence, we were consulting with a customer who was interested in some data management tools, and they couldn't find what they needed in the marketplace. What started off as a conversation turned into a data management tool, and we ended up incorporating a company to sell it.
Q: VersIC provides an interface to existing data management systems such as Perforce and Subversion. Why is there a need for a specialized product, like VersIC, for IC design engineers?
A: IC design teams want an integrated solution for their design platform. Virtuoso users want to work natively in their cockpit, and they want to see configuration management happening as a natural part of the design process. They don't want it to be another tool they have to learn. They want it clearly integrated into their design environment, without having to explicitly fire up a data management or configuration management tool.
Q: Can you say more about the capabilities VersIC brings to Cadence users?
A: VersIC is a lightweight Cadence integration to Subversion or Perforce, and it provides all the standard version control capability. It also gives you some configuration management tools for creating releases and managing remote sites from the same database. You can take one depot, or one database, that's shared among multiple remote sites, and the tool takes care of all the logistics of organizing those designers off that one database.
In the VersIC model the customer "owns" the DM repository with no proprietary wrappers or access limitations via alternate clients. Typically a customer uses VersIC to enable the analog/mixed-signal engineers and one of the other preferred software clients for managing source files, such as Verilog, with all the project data residing in the same area of the repository.
We manage Subversion or Perforce proxies for distributing data to remote sites, so you're not required to go back to the master server every time you want data. Also, access control is built into VersIC and we give you an IC design-centric project management capability for managing access to objects.
Q: I've noticed that you and other data management partners focus mostly on Virtuoso. Why is that? Do custom/analog designers have different needs from digital designers?
A: We also have some digital capability, but at the moment the main focus for VersIC is Virtuoso. The digital guys are more likely to use Perforce directly; they don't need an interface as much. The analog guys, however, don't want to work from a command line, they want to stay inside their cockpit.
There are a number of methodology issues we worked out and resolved, that they [analog designers] would have to solve themselves if they worked from a command line. The way you present data, the way you collect data, what makes up an atomic set, how you make releases...you would have to go off and be a Perforce user to fully understand and implement these things. We basically give you an infrastructure that lets you stay in the Cadence environment and make generic releases, and we take care of the details under the hood.
Q: VersIC has two additional modules. Can you describe those?
A: MergeIC is a visual tool that will "diff" two different versions of the same schematic or layout, and show you graphically on the screen what has changed. It's perfect for an ECO flow. ReviewIC is a Cadence-based design review platform. The way that works is that the owner of the schematic would annotate the schematic layout with information. For example, you could attach a screen shot of a simulation to an output node on the schematic. Then you can invite people to review your circuit and create action items using the ReviewIC Cadence client.
Q: Your latest offering is ProjectIC, which I understand represents a new market for Methodics. Can you explain what this tool does?
A: ProjectIC is an SoC development platform. It gives you a mechanism for tracking all the IP for the various projects across the company and their versions. It basically tracks which versions of which IP are being used in which projects. It's an SQL database with a web front end, and it's an enterprise application that's basically laying out the mapping of your corporate IP across the company, so now you know where every piece of IP is being used and what its context is.
Once you have that information, you can overlay it with secondary levels of metadata, and there we're focusing on IP quality metrics. So perhaps you would measure the amount of power a particular IP block is generating, and annotate that. We provide a very simple API so that you can bring that information back and overlay it in the IP you're tracking in the system. So, that's the front end, the enterprise application.
Q: What's on the client side?
A: BuildIC is the client tool. We call it an "SoC assembly engine." It takes a list of IP blocks that are being used by this release of the SoC, and in that BOM [bill of materials] you define each IP block, which repository it lives in (which Perforce server and where), and which version you should be using for the release of the SoC. So, now you have a BOM that describes all the IP in the system, and when you run the BuildIC client, you're creating a workspace and assembling all that IP. You can also include tool versions, PDKs, UNIX setup scripts and so forth. The BOM really is a self-contained description of the project IP and tool configurations.
Q: What Cadence tools does ProjectIC work with?
A: It works with all Cadence tools. It assembles design data from multiple repositories, and that data could be anything you choose to manage for IP - Verilog, VHDL, place and route, test information, documentation, internal IP, external IP. It overlaps both digital and analog, and it's kind of like an umbrella on top of all the various design activities.
Q: How does ProjectIC support IP reuse?
A: For IP reuse, you need a well-defined system for managing all these moving parts, making releases, tracking variants, and formulating the process for publishing a piece of IP. That's what this tool does. We're cataloging all the IP that you're creating inside the company. You can bring over third-party IP blocks as well. We can check those into Perforce or Subversion, or if you prefer not to check third-party IP blocks in, we can also use rsync, which is a Unix operation for copying across the network.
An important part of the system is that we are completely DM agnostic. While other providers have picked a single data management platform, we support ClearCase, CVS, Subversion, Perforce, Git, and Design Sync.
Q: Does ProjectIC fit into the EDA360 vision, and if so how?
A: It really does. We see this as the perfect SoC Realization play. There are such a large number of moving parts, and this tool helps organize the chaos of managing large SoCs. ProjectIC seems to be the perfect platform for managing SoC Realization.