23.08.2013 Views

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

1.1 Objectives 5<br />

Informal and Formal Approaches<br />

<strong>Specification</strong> methods that are introduced and accepted by industry are all, at least<br />

partially, informal. This has the advantage <strong>of</strong> making descriptions readable for a broad<br />

audience. A disadvantage is that informality makes specifications imprecise. Methods<br />

that are industrially accepted may seem to be mature in some way. From our point <strong>of</strong><br />

view, however, industrially accepted methods are not yet mature at all. They will never<br />

be able to close the gap to lower level automated design tools, because their informality<br />

severely complicates automation. Future tools must <strong>of</strong>fer:<br />

functional simulation;<br />

formal verification;<br />

behaviour-preserving structure transformation.<br />

<strong>Specification</strong>s must be readable, precise, unambiguous and robust system descriptions.<br />

A method should therefore be built upon a language with formal mathematical semantics.<br />

As many requirements as possible must be unified into in a formal system<br />

description. A formal representation <strong>of</strong> the system to be developed should be verified<br />

against various properties. Design tools should <strong>of</strong>fer procedures for restructuring a<br />

model according to architectural and implementation constraints. Formal semantics<br />

<strong>of</strong>fer a solid base for further development <strong>of</strong> various tools such as compilers, design<br />

entry tools, structure transformations tools, and compilation tools.<br />

Besides the world <strong>of</strong> informal methods there is a world <strong>of</strong> formal specification techniques.<br />

Research that has the objective to develop a new specification language, must<br />

take into account results achieved in this area. The state <strong>of</strong> the art in formal specification<br />

is not yet mature in the sense <strong>of</strong> being widely accepted. Current formal specification<br />

languages are in general difficult to understand. They tempt to avoid overspecification<br />

and imperative descriptions. Formal approaches do in general not fit the designer’s<br />

experience and intuition. Designers are in general familiar with one or more imperative<br />

programming languages. The imperative way <strong>of</strong> thinking also matches the controller<br />

approach that is <strong>of</strong>ten used by hardware designers. Local behaviour is described as<br />

sequences <strong>of</strong> commands. An imperative specification language will therefore have a<br />

greater chance <strong>of</strong> acceptance.<br />

Method Design<br />

The design <strong>of</strong> a specification language for complex reactive information processing<br />

systems that is able to describe (physical or logical) structure is not trivial. History has<br />

shown that even the design <strong>of</strong> a simple language is a difficult task. Coalescing concepts<br />

into a language <strong>of</strong>ten leads to unexpected counterintuitive effects. The development <strong>of</strong><br />

a formal semantics can prevent a lot <strong>of</strong> problems.<br />

The design <strong>of</strong> a complex reactive system is as complex as the real world is. There are<br />

a lot <strong>of</strong> aspects that play a role, but that cannot be formally specified. Furthermore,<br />

a formal description is not suitable as a communication medium for everybody in the

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

Saved successfully!

Ooh no, something went wrong!