Abstract :
Hardware and software failures cannot be considered alone when addressing the integrity, or the availability, of programmable equipment. Software features can affect hardware reliability as in the case of auto-test software which reveals dormant hardware faults. Hardware, on the other hand, can affect the outcome of software failures on a system through its configuration and timing related features. An assessment of system integrity thus involves a review of three areas: configuration, which refers to the degree of diversity and non-programmable alternatives which have been provided in the design; hardware reliability, in order to make comparisons with non-programmable alternatives; and software quality, which involves coding standards, validation and review methods, formal methods, etc