CENTRE FOR FORMAL DESIGN AND VERIFICATION OF SOFTWARE INDIAN INSTITUTE OF TECHNOLOGY, BOMBAY

Preview:

Citation preview

CENTRE FOR FORMAL DESIGN AND

VERIFICATION OF SOFTWARE

INDIAN INSTITUTE OF TECHNOLOGY, BOMBAY

Verification & Validation (V&V)

Computer Hardware and Software key component in modern automotives

Safety-critical Systems Rigorous Verification and Validation

Essential ISO/IEC Standards Guidelines MISRA Standards

Bugs are costly Pentium bug

Intel Pentium chip, released in 1994 produced error in floating point division

Cost : $475 million

ARIANE Failure In December 1996, the Ariane 5 rocket exploded 40

seconds after take off . A software components threw an exception

Cost : $400 million payload.

Therac-25 Accident : A software failure caused wrong dosages of x-rays. Cost: Human Loss.

Rigorous V&V Essential

Traditional V & V

Industrial Practices far from satisfactory Testing, Simulation, Reviews & Walkthroughs Inadequate for safety-critical systems Late Detection of bugs Detects presence of bugs not absence When to stop testing

Coverage criteria ~70% of time spent on V&V

Mission of CFDVS

Resources

R & D

V & V Ed.&Tr.

The Mission To Enable, through R&D of new tools and Techniques, to Support through external projects,

to Educate to develop skill base through courses & workshops

to Develop Resource Base of tools,

technologies,standards

RIGOROUS DESIGN, V & V PRACTICES

CFDVS Focus Area V & V based on Formal Methods Safety-critical Systems Hardware & Software Industrial Solutions

Formal Verification More rigorous approach Founded on Mathematical methods Proves correctness of Systems Increased confidence Early Detection of bugs

Design Verification Complementary to traditional

techniques

CFDVS – An R&D Centre Research Projects Case-studies New Tools Efficient Techniques and Novel Design

Methodologies

CFDVS R&D Overview Case-studies Tools

ACE TSCheck ConSDE VE-DAC EX-PERT

Research Papers and Reports

ACE – Assertion checker Assertion-checking tool for formal

verification of MISRA-C Programs Translates C functions plus assertions

to SPL and specifications Verification of SPL programs STeP – Verification Engine Tool extensively used in ADA project

Formal Verification of Flight Software:Sponsor : ADA , Bangalore Validation of software in LCA display unit Verification focused on a collection of C-

functions In house tool ACE extensively used (jointly

developed with BARC) Verification engine : STeP Verification uncovered a few bugs leading to

code revision Designers convinced of utility of FV

Verification of LV Software LV – Launch Vehicle Sponsored by VSSC, Trivandrum Signal integrity checking Complex sequence of branches Code in Ada In-house tool ACE used

CFDVS – A Resource Centre Specification & Verification Tools Academic & Commercial Tools Books, Papers & Reports Hardware & Software support V&V Expert consultancy National Centre

Resources

Hardware : Dec Alpha server Sun server Sun-Fire 280R Many access stations

Software: Formal Check: Hardware Verification Tool(Cadence

Inc.) LDRA : Static analysis tool Rose RT and Rhapsody : UML based tools Esterel Studio and SCADE Specman: Hardware Verification tool Code Surfer: Slicing tool

Resources (contd.)

Books : More than hundred books/proceedings CAV, FMCAD, CHARME

CFDVS – An Educational Centre

Education & Training Courses & Seminars Workshops & Conferences Student Projects & Case studies

Education and Training Attracted many students across different

departments (CSE,IT,EE,Rel. Engg.) Around 30 students (B.Tech and M.Tech)

completed More than 10 students currently working Two BARC staff on deputation Two workshops

Well-attended People from DAE and other organization

Tutorials in international conferences

Industry Sponsored Projects IV & V services Two projects completed Two more projects in Progress Looking forward to more Means of Resource Generation

Verification of Cache controllers

Sponsor : Texas Instruments, Bangalore

Verification using Model Checking of medium sized industrial design.

Cache controller developed at TI, FormalCheck of Cadence Inc. - verifier

Verification of In-house ASICs

Sponsor : BARC Various ASICs designed at BARC Verification of one of these Project in the initial stages

Case-Studies FV of Two Systems from BARC FV of a PCI implementation

FV of PCI implementation Understand issues involved in large hardware

design Evaluate the performance of state-of-the art

tools PCI implementation (10,000 lines of VHDL

code) The tool Formal Check used Models for environment designed Properties formalized in FQL

Design Environment for Process Control Software

ConSDE: A tool for designing process control software from high level block diagrams

A graphical editor A block definition language Code generation from blocks Simulation capabilities Verification capabilities planned

Verification Environment for distributed Control Applications

VE-DAC and EX-PERT: Tool for verification of distributed reactive applications.

State machine based language Capabilities to design concurrent and

hierarchical design Asynchronous communication Editor, simulator and verifier Efficient verification using slicing techniques

. . . And many more Projects Efficient Verification of Synchronous

Programs Model-based Verification of Object-

Oriented Software Slicing of Synchronous Programs and

HDLs

Recommended