What is a system? Each of us probably has a different definition. Many of us probably have more than one. Even though the term “System on Chip (SoC)” has been popular for years, we all know deep in our hearts that SoCs are not really systems. Systems are, well, bigger. After all, chips, including SoCs, always go on boards or in modules. Does that make a board a system? Well, most of our end products consist of more than one board, plus some mechanical elements like enclosures, actuators, sensors, displays, and other stuff – all connected to those boards by cabling. Then, of course, some systems are actually combinations of a variety of such boxes – interconnected by various means, including wirelessly.
In fact, for just about anything we might declare to be our “system,” there is another, higher level of hierarchy that subsumes ours. And, while this may seem like a pointless exercise in semantics, it starts to matter a lot if, say, you’re a company like Mentor Graphics, who wants to build and sell tools for system design. Then, you have to draw a box around something, call it a “system,” and say, “This is the type of thing we help you design.”
While fully acknowledging the ambiguity inherent in producing a system for designers of systems, Mentor Graphics has just launched their Xpedition Multi-Board Systems Design Solution, which, as one might guess, is aimed at teams designing electronic systems that contain more than one circuit board. While “multi-board” still carves out a vast swath of territory, it does give Mentor a strong enough hook onto which it can hang a nice collection of very important capabilities.
So, who needs a set of tools optimized for multi-board system design? Well, just about everybody who engineers in a large engineering organization. Most of the newly announced “system design” features of Mentor’s suite of tools are designed to facilitate interdisciplinary collaboration across large organizations with multiple teams of different types of engineers all working together on a large system design. These engineers already have their own design tools, optimized for their particular tasks. Mentor’s challenge was to enhance and integrate those tools – those from Mentor as well as some from third parties – in a way to facilitate the special challenges of designing a large system.
To understand what Mentor is announcing, it helps to consider what it replaces. Most of us constantly bump into the outer limits of our tool suites. We use the tools to do all the “inside” work, and then we interact with other teams and organizations using a hodgepodge of makeshift measures. We pass around spreadsheets with various project parameters. We toil over text-based files that define how our boards connect with each other. We distribute drawings in various tools that illustrate what we hope are the current versions of system architecture. We email, text, share, and even photocopy critical design details, hoping that the information forms itself into some kind of coherent formation that keeps our overall project between the rails, eventually resulting in a system that works.
As our systems become more complex, however, this collaboration becomes more critical, and our ad-hoc solutions less adequate. The non-agility of these mechanisms causes engineering change loops to become longer and riskier. The probability of errors throughout the system becomes higher, and the ability to verify that all the parts will work correctly together (before actually “trying it”) becomes almost nil.
Mentor has chosen their Xpedition enterprise-class PCB design system as the torch-holder for this system design initiative. In reality, you probably could base a “system design” system around any of a number of design tool environments. But PCB makes sense because it is already at the nexus of a wide range of electronic design tasks – from design specification and capture to layout to system simulation to signal and power integrity, and even on to cabling, thermal analysis, and 3D mechanical design. If your premise is that you’re designing an electronic system with more than one PCB, then a tool suite like Xpedition is a reasonable home base.
The most difficult thing to explain is, of course, “what does it do?” As one might expect, Mentor says that they are providing a desktop environment for “architecting, partitioning, authoring, and documenting the logical definition of electronic multi-board systems.” Think of it as design capture at the system level. Once your system design is captured, it will immediately start to change and evolve. The system manages synchronization of your system design across the various tools and teams, eliminating those spreadsheets full of interface specification changes that you’re probably emailing around right now. This has the obvious benefit of eliminating errors and simplifying management of ECOs.
Because Mentor is in the cabling design tool business as well, they can provide management of connectors across the tool flow, in addition to managing logical cable connectivity. When you make a design change, the system can make sure that all of the affected design bits are properly updated – from boards through connectors and cabling and back through connectors to boards again. There are few points in system design more fraught with peril than manually handing around interfaces that might, for example, begin with swapping around FPGA pin assignments, rolling through the corresponding PCB layout changes, through some connector pinout specifications, along various cabling bundles and connectors, and then to another PCB whose layout is also impacted. All of this mayhem can then be validated by an integrated multi-board system-level connectivity verification feature. Then, the system allows bi-directional collaboration with 3D MCAD systems, so you can be sure all those cables and connectors have a place to go in the real 3D world.
Besides creating a high-level description of your system, you can also partition the design among teams and manage and maintain the integrity of the interfaces that cross the boundaries between partitions. This allows teams to work concurrently and collaboratively, bypassing many of the typical waterfall-based project constraints. Behind the scenes, there is an integrated library that allows system-level part browsing, selection, and management.
If you’re already using Visio for some of these system-level tasks, you can import and embed Visio data into the system design and attach characteristics to system elements. This library and system-level data management encourages and facilitates multi-discipline IP re-use right up to the board/connector/cable level.
If you’re already using Mentor’s tools, many of these capabilities have slipped in quietly in the night. That’s the idea, actually. The company seems to have made an effort to enhance, rather than reinvent, the working environment in which engineers have already become proficient. The whole point is to enable and simplify collaboration, rather than causing engineers to have to retrain in a new top-down methodology.
It is interesting to watch the EDA tool chain evolve up the levels of abstraction. As the complexity of each discipline continues to rise, the need to have more diverse teams of specialists collaborating productively becomes more and more critical. This means the role of “point” tools should continue to diminish over time, in favor of integrated suites of tools with common data models and cleanly defined interfaces. Mentor’s latest incarnation of Xpedition is a perfect example of just that trend.