Title :
Refining assembly code static analysis for the Intel MCS-51 microcontroller
Author :
Reinbacher, Thomas ; Brauer, Jörg ; Horauer, Martin ; Schlich, Bastian
Author_Institution :
Inst. of Embedded Syst., Univ. of Appl. Sci. Technikum Wien, Vienna, Austria
Abstract :
Embedded systems are ubiquitous and their software is in most cases the elaborate part of the system. The use of formal verification methods such as model checking was proposed to verify these software systems. One disadvantage of model checking is that it suffers from the state-explosion problem. [mc]square combines model checking and static source code analysis at assembly code level to alleviate this downside. This approach allows considering particular features of the targeted microcontroller. In this paper, a novel data-flow analysis termed register bank analysis is presented. This analysis is an extension of a reaching definitions analysis to cope with register bank switching as performed by the Intel MCS-51 target. An informal and a formal description of the register bank analysis is given and an example to highlight the effectiveness of our approach is presented. Moreover, four remaining challenges in assembly code static analysis are pointed out.
Keywords :
data flow analysis; embedded systems; formal verification; microcontrollers; ubiquitous computing; Intel MCS-51 microcontroller; assembly code level; assembly code static analysis; data-flow analysis; embedded systems; formal verification; model checking; register bank analysis; software systems; state-explosion problem; static source code analysis; ubiquitous systems; Assembly systems; Data analysis; Embedded software; Embedded system; Formal verification; Microcontrollers; Performance analysis; Software systems; State-space methods; Testing;
Conference_Titel :
Industrial Embedded Systems, 2009. SIES '09. IEEE International Symposium on
Conference_Location :
Lausanne
Print_ISBN :
978-1-4244-4109-9
Electronic_ISBN :
978-1-4244-4110-5
DOI :
10.1109/SIES.2009.5196212