People have been talking about hardware/software co-development for years. IBM is actually doing it - right now - and has managed to reduce overall development times by as much as 50 percent, according to Martin Bakal, marketing manager for the electronics industry at IBM Rational.
Bakal gave a brief but fascinating talk at the Cadence booth at the recent Design Automation Conference about IBM's efforts, and also participated in the video interview embedded towards the end of this blog posting. "We need to get hardware and software people working in tandem," he said during his talk. "Traditionally, the different teams have worked separately. How to bring those teams together is what the EDA360 paper is all about."
How It's Done
IBM's Server and Technology Group (STG) is using IBM Rational and Cadence tools to make hardware/software co-development a reality. Here are some crucial aspects of the development system that's deployed there:
- Common storage for both hardware and software data artifacts
- A single tool (IBM Rational Doors) for hardware and software requirements
- Requirements traceability throughout the entire design process
- A common overall systems model initially captured in SysML, then brought to both software and hardware development tools (SysML to SystemC translation is available through a third party provider, ExperMeta)
- Common change management ("defect tracking" in the software world) across hardware and software
- Configuration management and revision control
- A common dashboard that reports defects and tracks fixes
These capabilities all come together in an infrastructure with open APIs, providing "a complete lifecycle solution for systems development," according to Bakal. It realizes, he said, "the complete dream of parallel development."
A Collaborative Effort
I should add a bit of background at this point by mentioning the Enterprise Verification Management Solution (EVMS), a hardware/software co-development environment developed by IBM and Cadence. Available to external customers through IBM, it includes IBM Rational tools for software development and debugging, IBM Tivoli tools for load balancing, and the Cadence Incisive Enterprise platform for hardware simulation. With Incisive, it is possible to have a single, metric-driven verification plan for both hardware and software, along with a dashboard that tracks tests, metrics, and defects.
I blogged about EVMS earlier this year and called it an example of "next generation" EDA because it comprises both hardware and software development, and because it reaches beyond engineering groups to project and corporate managers. Today, I would say that EVMS is an excellent example of application-centric System Realization as described in the EDA360 vision paper.
In the short video interview below, Bakal talks about what makes IBM's parallel hardware/software development possible, the value of EVMS, results and benefits seen by IBM's STG, and how IBM's hardware/software development environment fits with the EDA360 vision.
If video fails to open, click here.
Amid all the talk about system-level design, here's something real. IBM is pioneering a methodology that could dramatically reduce costs, speed time-to-market, and boost quality for next-generation SoCs and systems. The industry would do well to take notice.