1022005 maplddesign integrity concepts what’s the exit strategy? verifying a design

30
1 2005 MAPLD Design Integrity Concepts What’s the Exit Strategy? Verifying a Design

Upload: janel-watson

Post on 12-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

12005 MAPLD Design Integrity Concepts

What’s the Exit Strategy?Verifying a Design

Page 2: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

22005 MAPLD Design Integrity Concepts

Agenda – Design Verification

• Concepts and implications

• The specification connection

• Verification before test

• Test thoroughness

• Tiered verification

• Concluding the process

• Summary

Page 3: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

32005 MAPLD Design Integrity Concepts

Verification Concepts• Verification – Confirmation, through the provision of

objective evidence, that the specified requirements have been fulfilled (Q9000-2000)

• Confirmation – the act of ratifying or corroborating (AH)

Page 4: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

42005 MAPLD Design Integrity Concepts

Verification Implications• The verification process is not intended to be a “craps

shoot”– Verification is primarily intended to ratify correctness– Verification is NOT primarily intended to reveal incorrectness

• The mindset is important!– Doubt that a design will work expresses a lack of confidence in the

designer and the design process– Waiting until “verification” to guarantee correctness is an excuse

for being sloppy

• We should expect our designs to work! Verification simply puts the seal of confirmation on the expectation

Page 5: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

52005 MAPLD Design Integrity Concepts

Verification Implications (cont.)

• Verification addresses two processes– Design

• Primarily a one-time, iterative process in which the developed concept is proven sound

• Fundamental correctness can be proven analytically– Inspection confirms logical correctness in all circumstances

» Peer reviews are a manual form of inspection» Functional simulation is an automated form of inspection» Inspections must be tailored to design

– Analysis verifies correctness in the presence of variability» Reliability (WC, Derating, FMEA, etc.)» Timing over environments and age

Page 6: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

62005 MAPLD Design Integrity Concepts

Verification Implications (cont.)

• Verification addresses two processes (cont.)– Instantiation

• Particular instance must be sound• Particular correctness must be demonstrated experimentally

– Inspection confirms that instructions are followed» Correct components installed» Correct configuration selected» Correct processes performed

– Test and demonstration confirms that operation matches expectations

» Functionally and parametrically» Predicted by nominal analytical predictions

Page 7: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

72005 MAPLD Design Integrity Concepts

Verification Implications (cont.)• Verification “after the fact” is too late

– Analysis and test are NOT equivalent– Design analysis and inspection must proceed in lockstep with

design processes– Implementation tests and inspections should simply confirm what

is known

• Design efforts fail because they occur in a vacuum– Creativity takes primacy over correctness– Functionality comes first with operability being “shoehorned”

after the fact • The “monster” simulation syndrome

• Conclusion: Verify as you proceed

Page 8: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

82005 MAPLD Design Integrity Concepts

Verification Implications (cont.)

• Correctness is a matter of personal integrity for the designer– Verification is not simply externally imposed

task– Verification is something that the designer must

want to do (a part of his/her ethos)– Verification is confirmation that the designer is

“worth his/her salt”

Page 9: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

92005 MAPLD Design Integrity Concepts

The Specification Connection• “Requirements” are confirmed during verification

– The designer does not have a free hand with respect to how a design is confirmed

– Specification provides the constraint set under which verification is prosecuted

– Therefore, verification must be defined prior to start of design• Not simply in a general manner• Specifically

– Since specification is a customer and vendor document• Both customer and vendor must be involved in the verification

process• “Trust me” is not a reasonable phrase when it comes to verification

Page 10: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

102005 MAPLD Design Integrity Concepts

The Specification Connection (cont.)

• Specification contains a complete [ideally] set of requirements for the design– Some requirements are very specific

• “All discrete outputs shall have a source impedance of 2 kOhms.• An adequate test is fairly obvious

– Some requirements are not very specific• “The unit shall provide 512 kbytes of SRAM”• Note the implied requirement – The SRAM shall function correctly• What is an adequate functional test for this requirement? (walking 1’s, 0’s

addressing, etc?)– Some requirements lend themselves to quantitative analysis – “The unit

shall provide a .1° C accuracy at end of life”– Some requirements lend themselves to simple inspection – “The unit shall

provide 4 analog output channels”– When do we decide adequacy of the method of verification and the

individual verification cases? – Before we start designing

Page 11: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

112005 MAPLD Design Integrity Concepts

The Specification Connection (cont.)• Therefore, verification planning must begin with

specification creation– Each requirement must be assigned a method or

methods– Each requirement must be assigned a test or analysis

case• Must answer question – What is an adequate verification?• Must establish answer to question – When are we done?

– Each requirement must be verified at one or more levels [FPGA, board, box, sub-system, system]

– Customer must concur with decision• Note that modern verification databases make this

relatively straightforward

Page 12: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

122005 MAPLD Design Integrity Concepts

The Specification Connection (cont.)

• Advantages to this type of verification planning– More verifiable / verified designs

• Up-front focus on programmatically difficult verification can be instituted

– Earlier analysis

– Simplification of overly complex circuit designs

• Guidance for lower-level verification efforts can be established– Sub-module vs. module level

– Module vs. unit level

• Integral self-test provisions can be included in design

• Earlier simulation vector definition (FPGAs / logic)

Page 13: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

132005 MAPLD Design Integrity Concepts

The Specification Connection (cont.)

• Advantages (cont.)– More robust test sets

• Early knowledge regarding end-item function communicated

• Capability of test set matched to need– Precision (timing, voltage, current, etc.)

– Speed

– Test level (component, unit, system)

• Test flow design considerations included in test set design

– Knowing verification requirements early makes the entire development process more efficient

Page 14: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

142005 MAPLD Design Integrity Concepts

The Specification Connection (cont.)

• Defining requirements and test cases at the same time as the specification clarifies and simplifies the FPGA verification process– Allows early start to simulation vector design– Creates early knowledge of additional functional

models (SRAM, peripherals, etc.) needed– Clarifies decision regarding what can be functionally

simulated and what must be simulated with back-annotation

– Defines levels at which simulations must be run

Page 15: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

152005 MAPLD Design Integrity Concepts

Verification Before Test• It is a relatively bad thing to discover a design flaw during

test (better than nothing)– Late in the development cycle– Correction is more complicated / expensive– Personal stress is higher

• Yet … a surprising lack of verification occurs early• Types of pre-test verification

– Inspection - conformity evaluation by observation and judgment accompanied, as appropriate by measurement or testing (ISO)

• Personal self-check• Peer Review• Basic functional verification (Signal audits, functional simulation,

etc.)

Page 16: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

162005 MAPLD Design Integrity Concepts

Verification Before Test (cont.)• Types of pre-test verification (cont.)

– Analysis – Conformity evaluation of the predictions produced by realistic models of the system

• Worst case analysis (voltage, current, frequency, time) using models that incorporate real world degradation of function

• Derating analysis using models that reduce stress• Other

• Note that pre-test verification is fundamentally conceptual– Not tool dependent– Not design dependent– Can be accomplished many ways

Page 17: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

172005 MAPLD Design Integrity Concepts

Verification Before Test (cont.)• Two approaches to pre-test verification• Verify full design at once (one big peer review, code walkthrough,

analysis, simulation)– Benefits

• Complete design reduces need to develop assumptions• When proved correct, does not need to be repeated• When design is solid, less work• Reduce final documentation for verification

– Drawbacks• Allows small design flaws to propagate for a long time• Complexity reduces visibility (verification more prone to mistakes and

oversights)• When design is flawed, it increases work• Leads to corrections that are global (hard to test effectively and predict side

effects)• May take longer to execute than an aggregate of smaller verification activities

Page 18: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

182005 MAPLD Design Integrity Concepts

Verification Before Test (cont.)• Two approaches to pre-test verification (cont.)

– Verify incremental designs• Benefits

– Supports development of “known good” sub-designs– Meshes with a partitioned design approach– Facilitates visibility (fewer mistakes, clearer goals)– Allows small flaws to be fixed quickly (minimizes downstream

impact)• Drawbacks

– Is more work in the ideal case (no/few flaws)– Increases documentation if formality is vital

• Either approach can be made to work, but one or the other must be chosen and implemented

Page 19: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

192005 MAPLD Design Integrity Concepts

Test Thoroughness• Principles for test thoroughness

– Every “shall” in the specification that meets the following criteria must be tested

• Items that may be affected by the instantiation process (subject to fabrication error)

• Items for which the only extant verification is model based • Items for which the testing does not pose unacceptable risk (radiation,

overstress, etc.)– Every instance of a “shall” must be tested

• 18 interfaces require 18 specific tests– Requirements that have an exclusive character

• Must be tested for correct operation • Should be tested at some level for abnormal operation• Example: If you write a 5Ah to something to set it on, you should verify that

writing other values does not set it on– Requirements must be tested over a representative range of conditions

Page 20: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

202005 MAPLD Design Integrity Concepts

Test Thoroughness (cont.)

• A thorough test is complicated and time consuming– Requires some level of automation to be

comprehensive– Requires some level of compromise to be

practical– Requires team agreement to be acceptable

Page 21: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

212005 MAPLD Design Integrity Concepts

Test Thoroughness (cont.)• Ensuring thorough, yet practical, tests

– Define which tests require manual interaction and which can be automated

• Output impedance or analog fine precision may need to be manual• Signal level or analog coarse precision may be automatable

– Define which tests must be performed over environmental conditions and which can be performed at room temperature only

• Make decision based on character of measurement• Do not decide based purely on practicality

– Define level of complexity for all measurement sets• Example: 24 analog inputs (3 eight channel muxes)• Test full range of values for 24, or limited range for 7 of 8 mux inputs

and full range for remaining– Define need for repetition of measurement at higher level of

integration (tiered verification)• Example: voltage level / signal quality / clock jitter at board level• Repeat at box level?

Page 22: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

222005 MAPLD Design Integrity Concepts

Test Thoroughness (cont.)• Test thoroughness issues affect everything

– Customer relationship– Test set design (board, box, system)– Schedule / cost

• An adequate test program is not trivial– Cannot wait until system level– Must incorporate lowest level of design– Must be a constant background activity during design process

• All programs must balance perfect and good enough• A good test program

– Will ensure that the specification is met– Will verify everything that can be affected by fabrication– Will build on the analysis and inspection effort– Will maximize automation without sacrificing test accuracy

Page 23: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

232005 MAPLD Design Integrity Concepts

Tiered Verification• Tiered verification is the process of matching the correct type of

verification to the appropriate level of integration• Tiered verification incorporates all types of verification (before and

during testing)• Tiered verification applied to the test regime attempts to have

thoroughness with practicality– Test a requirement at the lowest conceivable level– Determine which tests must be repeated at higher levels by

• Establishing the purpose of a test at a particular level• Determining whether the next level has the potential to change previous

measured quantities• Determining what test set capabilities are

• Tiered verification cannot be retrofitted into the process– Must be planned up front– Must be implemented throughout the development process

Page 24: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

242005 MAPLD Design Integrity Concepts

Tiered Verification - Example• Need: A set of 16 high-level pulsed discretes to control

latching relays used to change the spacecraft power configuration

• Basic Requirements– Quantity: 16– Level: +30V +/- 2 V– Load: 2 kOhm, 4 mH– Duration of pulse: 50 ms– Rise / Fall time max: 1 ms– Command capability: Unique bit pattern, only one at a time,

arm first– S/W requirements: Various (beyond scope of

example)

Page 25: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

252005 MAPLD Design Integrity Concepts

Tiered Verification – Example (cont.)

• Tier 1 – Basic Verification (functional simulation)– Verify each channel fires for a specific bit pattern /

address

– Verify cannot be fired without an arm command

– Verify that other complementary patterns don’t accidentally fire the pulse

– Analyze drive capability of FPGA and input / output requirement / capability of translation chip

– Evaluate glitch hardness of logic selected

Page 26: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

262005 MAPLD Design Integrity Concepts

Tiered Verification – Example (cont.)

• Tier 2 – Board level– Test to confirm signal level between FPGA and

driver chips is compatible– Test rise, fall, duration, level with dummy load– Repeat test for all 16 outputs– Replace dummy load with relay, verify that the

relay switches for all 16 outputs– Repeat over temperature if necessary

Page 27: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

272005 MAPLD Design Integrity Concepts

Tiered Verification – Example (cont.)

• Tier 3 – Box level– Attach GSE (verifies with relays)– Functionally pulse all outputs

• Verify relay switches• Verify gross drive duration

• Tier 4 – Box and operational software level– Verify functionality commanded through software– GSE verifies correct relay switch

• Tier 5 – System– Verify gross functionality as needed for system

operation

Page 28: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

282005 MAPLD Design Integrity Concepts

Tiered Verification - Notes• Most complex and detailed functionality is verified at

lower levels– Performance– Error cases– Predictive of future operation

• Higher levels focus on functionality / operation• Lower level verification requires more manual touch• Higher level verification is more automated• STE and test procedure developed as appropriate

– Purpose is maximum test completeness– As well as “bang for the buck”

Page 29: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

292005 MAPLD Design Integrity Concepts

Concluding the Process• (“… through the provision of objective evidence…”)• The importance of traceability

– Something is only verified (formally) when it is documented– The tie between verification item and specification must be made

(verification matrix or database)• The importance of planning

– Establish the links between requirement, method, level, test case early

– Use the established structure to develop verification items• The importance of buy in

– All responsible must complete verification and report results– Systems engineers must track and close– People must keep up with the process

• Only personal commitment from all involved will ensure that the process is successful

Page 30: 1022005 MAPLDDesign Integrity Concepts What’s the Exit Strategy? Verifying a Design

302005 MAPLD Design Integrity Concepts

Summary• Verification is to prove success, not avoid failure• Verification planning is an integral part of the project lifecycle

– Must be initiated with specification (including customer buy-in)– Must be included in design effort– Must be used to develop documentation and appropriate test hardware

• Verification is more than final test– Incorporates analysis and inspection throughout design process– Begins at lowest possible level– Develops proof of compliance at all levels of operation

• A thorough test is complicated– Requires extensive work– Must trade perfect for practical (a tiered test approach can help)

• Verification processes must be tracked and documented– The whole team must buy in