07.01.2013 Views

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

446 Wolfgang Prenn<strong>in</strong>ger, Mohammad El-Ramly, and Marc Horstmann<br />

The control flow graph is searched for the transition conditions between the different<br />

states of each selected variable.<br />

The abstract FSM has the same tim<strong>in</strong>g as the orig<strong>in</strong>al processor. It encapsulates<br />

the same control behavior <strong>in</strong> terms of the movement of <strong>in</strong>structions through<br />

the processor. In complex designs, the control might consist of multiple communicat<strong>in</strong>g<br />

FSMs. In this case, the FSM that changes most frequently, its states are<br />

chosen as the primary control states. For example if the cycle of an FSM needs<br />

5 cycles of another FSM, then the control states of the later are chosen as the<br />

primary control states. Other variables or <strong>in</strong>puts, which affect the control state<br />

transition or the datapath operation at different states of the FSM, are selected<br />

and added to the FSM manually.<br />

In [FKL99], an Architecture Validation Suite (AVS) was generated for IBM<br />

PowerPC architecture us<strong>in</strong>g Genesys. Genesys is a directed-random test generator<br />

developed by IBM for verification of various processor architectures. Genesys<br />

dynamically generates tests us<strong>in</strong>g a generation-simulation cycle for each <strong>in</strong>struction.<br />

Genesys needs two models of the SUT. The first is a formal test model<br />

of the SUT. This is created manually from PowerPC architecture books. The<br />

second is an implementation description <strong>in</strong> the form of a behavioral simulator<br />

for the SUT, which is used to predict the results of <strong>in</strong>struction execution. Result<br />

prediction is done automatically by just runn<strong>in</strong>g the simulator to execute the<br />

desired <strong>in</strong>struction sequence. However, the simulator itself was built manually.<br />

Model<strong>in</strong>g from Natural Language Specifications In cases where the SUT was specified<br />

<strong>in</strong> natural language with no formal specifications, hand-built test models<br />

needed to be constructed. In [FHP02], this was done for parts of POSIX standard<br />

and Java exception handl<strong>in</strong>g facility. In both cases, the model was crafted<br />

as an FSM <strong>in</strong> GDL. At this stage, specification defects and <strong>in</strong>consistencies were<br />

discovered.<br />

In [CJRZ01], the test model was a hand crafted FSM for the part of CEPS<br />

that was tested, us<strong>in</strong>g IOSTS (Input-Output Symbolic Transition Systems).<br />

IOSTS is a model<strong>in</strong>g language for reactive programs with symbolic process<strong>in</strong>g<br />

of variables, parameters and <strong>in</strong>ter-process value pass<strong>in</strong>g. IOSTS is rather low<br />

level. So, us<strong>in</strong>g a higher level language that translates to IOSTS would ease the<br />

model<strong>in</strong>g process.<br />

In [BFdV + 99], the SUT is an implementation of the Conference Protocol<br />

described <strong>in</strong> Sec. 15.3. The purpose of this study was to study the feasibility of<br />

automatic test derivation and execution from a number of formal specifications<br />

and different test execution approaches. Test generation was done with TorX, a<br />

generic model-based test<strong>in</strong>g environment. TorX allows plugg<strong>in</strong>g <strong>in</strong> different test<br />

generation tools, which accept models of the SUT <strong>in</strong> different formal languages<br />

(cf. Sec. 14.2.11). S<strong>in</strong>ce this is a benchmark<strong>in</strong>g experiment, three formal models<br />

of the same SUT were built for this study <strong>in</strong> LOTOS , SDL and PROMELA, each<br />

to use with a different test tool. More details of this experiment were <strong>in</strong>troduced<br />

<strong>in</strong> Sec. 14.3.2.<br />

In [PPS + 03], the model<strong>in</strong>g language of AutoFocus was used to build a test<br />

model for the WAP Identity Module (WIM). AutoFocus is a tool for develop-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!