Extreme formal modeling (XFM) for hardware models

In this paper, we show the usefulness of an agile formal method (named XFM) based on extreme programming concepts to construct abstract models from a natural language specification of a complex system. Building formal models for verification purposes is being employed in the industry for two different usage modes: (i) descriptive formal models (DFM) which, are used to capture an implementation into an abstract model to submit to analysis by model checking tools, (ii) prescriptive formal models (PFM) which, are used to capture natural language specifications into a formal model to analyze consistency of the specification and also as a reference model to compare a DFM against it. We propose XFM as a methodology to incrementally build a correct PFM from a natural language specification. In this paper, using XFM, on various examples related to microprocessors, we build the models of DLX pipeline in SPIN, the ISA bus monitor and arbitration phase of the Pentium Pro bus in SMV.