Firmware functional validation using a Colored Petri Net model
Rongyang Liu, Jose G. Delgado-Frias, Doug Boyce, Rahul Khanna · 2017
The growing architectural complexity of Unified Extensible Firmware Interface (UEFI) requires a functional validation during system testing which in turn is becoming more complex and time-consuming. Unfortunately, there are few available solutions specifically designed to address this issue. We have proposed a novel technique which can automatically generate Colored Petri Net (CPN) from the UEFI firmware source code and use CPN simulation to keep track of the UEFI execution step-by-step at run-time. The simulation can indicate where the execution departs from a normal path, which in turn helps validation engineers to quickly deduct the root cause of the problem. The implemented validation tool can be incorporated into the existing validation workflow and requires no additional hardware equipment. A case study on the functional validation of UEFI USB Bus driver of a commercial embedded platform is used to demonstrate the proposed validation technique.