The paper shows how iterative parametric sequential circuits, which are most relevant in practice, can be verified fully automatically. Key observation is that monadic second-order logic on strings provides an adequate level for hardware specification and implementation. This allows us to apply the corresponding decision procedure and counter-model generator implemented in the Mona verification tool, which, for the first time, yields 'push-button' verification, and error detection and diagnosis for the considered class of circuits. As illustrated by means of various versions of counters, this approach captures hierarchical and mixed mode verification, as well as the treatment of varying connectivity in iterative designs.
MotivationA clear trend towards reuse of existing designs is the emergence of parametric designs in standard libraries [13]. While such "families of circuits" have been already popular in the hardware verification community for years, where they are the best examples for induction-based reasoning in the hardware application domain, industrial practice did not feature parametric designs in standard libraries because of lack of consolidated methods for their lull-automatic treatment in the design lifecycle. Thus the pressure towards fully automated methods for the analysis, verification, and fault detection of parametric circuits and their specifications grows with the increasing demand for design reuse. Unfortunately, the standard automata theoretic techniques of the hardware community fail here, because the treatment of automata of unbounded size is required. At this stage, Basin and Klarlund discovered that monadic second-order logic on strings, although 'hopeless' from the complexity point of view, is well-behaved in many practical applications, and, in particular, well-suited for the fully automatic verification of *Fakult~t f'dr Mathematik und Informatik, Universitiit Passau, Innstr. 33, 94032 Passau (D), tel: +49 851 509.3096, fax: +49 851 509.3092, ~iziana@fmi.tmi-paasau.dl