TY - GEN
T1 - Runtime-programmable pipelines for model checkers on FPGAs
AU - Patel, Mrunal
AU - Cho, Shenghsun
AU - Ferdman, Michael
AU - Milder, Peter
N1 - Publisher Copyright: © 2019 IEEE.
PY - 2019/9
Y1 - 2019/9
N2 - Software verification is an important stage of the software development process, particularly for mission-critical systems. As the traditional methodology of using unit tests falls short of verifying complex software, developers are increasingly relying on formal verification methods, such as explicit state model checking, to automatically verify that the software functions properly. However, due to the ever-increasing complexity of software designs, model checking cannot be performed in a reasonable amount of time when running on general-purpose cores, leading to the exploration of hardware-accelerated model checking. FPGAs have been demonstrated as a promising accelerator because of their high throughput, inherent parallelism, and flexibility. Unfortunately, the 'FPGA programmability wall,' particularly the long synthesis and place-and-route times, block the general adoption of FPGAs for model checking. To address this problem, we designed a runtime-programmable pipeline specifically for model checkers on FPGAs to minimize the 'preparation time' before a model can be checked. Our runtime-programmable pipeline design of the successor state generator and the state validator modules enables FPGA acceleration of model checking without incurring the time-consuming FPGA implementation stages.
AB - Software verification is an important stage of the software development process, particularly for mission-critical systems. As the traditional methodology of using unit tests falls short of verifying complex software, developers are increasingly relying on formal verification methods, such as explicit state model checking, to automatically verify that the software functions properly. However, due to the ever-increasing complexity of software designs, model checking cannot be performed in a reasonable amount of time when running on general-purpose cores, leading to the exploration of hardware-accelerated model checking. FPGAs have been demonstrated as a promising accelerator because of their high throughput, inherent parallelism, and flexibility. Unfortunately, the 'FPGA programmability wall,' particularly the long synthesis and place-and-route times, block the general adoption of FPGAs for model checking. To address this problem, we designed a runtime-programmable pipeline specifically for model checkers on FPGAs to minimize the 'preparation time' before a model can be checked. Our runtime-programmable pipeline design of the successor state generator and the state validator modules enables FPGA acceleration of model checking without incurring the time-consuming FPGA implementation stages.
KW - Accelerator
KW - Model Checking
UR - https://www.scopus.com/pages/publications/85075631069
U2 - 10.1109/FPL.2019.00018
DO - 10.1109/FPL.2019.00018
M3 - Conference contribution
T3 - Proceedings - 29th International Conference on Field-Programmable Logic and Applications, FPL 2019
SP - 51
EP - 58
BT - Proceedings - 29th International Conference on Field-Programmable Logic and Applications, FPL 2019
A2 - Sourdis, Ioannis
A2 - Bouganis, Christos-Savvas
A2 - Alvarez, Carlos
A2 - Toledo Diaz, Leonel Antonio
A2 - Valero, Pedro
A2 - Martorell, Xavier
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 29th International Conferenceon Field-Programmable Logic and Applications, FPL 2019
Y2 - 9 September 2019 through 13 September 2019
ER -