ROHM – Solid Sands
Japanese semiconductor company ROHM Co., Ltd. was established in 1958 in Kyoto and has since come a long way. The company was named ‘ROHM’ after the letter ‘R’ in its original main product, resistors, plus ‘ohm’, the unit of resistance. In line with the company’s mission of ‘Quality is First’, the R now also stands for ‘Reliability’. Today, the company designs and manufactures integrated circuits (ICs), discrete semiconductors, and other electronic components for the ever-growing automotive, industrial equipment and consumer electronics markets. Having expanded its business from resistors and other passive devices to discrete semiconductors and ICs, the company provides a wide range of solutions for each of these markets.
Regarding the ICs that currently form one of its main businesses, the shift from consumer markets that require fully customized ICs to automotive and industrial markets, which require application-specific standard products (ASSPs), meant the inclusion of embedded processors was necessary to provide the required flexibility. ROHM chose to develop its own embedded processor, which meant it also needed to develop a C compiler for it. The compiler would be based on a Clang front-end and LLVM back-end, and would extensively leverage code optimization to meet the power consumption and footprint requirements of target applications. The development flow would be based around Git for version control, Redmine for project management and issue tracking, Jenkins for automation of routine software development tasks, and finally, Solid Sands’ SuperTest for compiler test and validation.
Compiler bugs registered in Redmine are fixed one by one and the resulting new source code is registered in Git. At the end of each day, a Jenkins process flow automatically extracts the latest source code from Git, builds it, and initiates an overnight SuperTest run at four different optimization levels. The following morning, the SuperTest results are checked and any newly identified defects are registered in Redmine as part of an iterative process. With most of this development environment already in place before ROHM started using SuperTest, integrating SuperTest into the toolchain was accomplished in less than a week.
“There were several good reasons for choosing SuperTest. It covers the C language specification, has a track record of ISO 26262 compliance, performs automatic testing, and it has an automatic verification report output function,” said Tetsuya Ooka, Senior Engineer at ROHM. “Another important advantage was that Solid Sands has an agent in Japan.”
With compiler development almost complete, ROHM’s compiler development team is currently working on the functional safety documentation required for ISO 26262 tool certification, something it knows is very important for its automotive customers.
“During the one and a half years we’ve been using SuperTest, it has allowed us to continuously improve the quality of our compiler so that the pass rate of SuperTest now exceeds 99.9%,” said Tetsuya.
ROHM now plans to continue using SuperTest as part of an ongoing program of tool quality improvement.
Home / Knowledge / Customer Case / ROHM’s Compiler Development – Improving Reliability with SuperTest