852005 MAPLDDesign Integrity Concepts You Mean We’re Still Working On It? Sustaining a Design.

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
1 Chapter 2: Product Development Process and Organization Introduction Importance of human resources: Most companies have similar technology resources.
July 11 th, 2005 Software Engineering with Reusable Components RiSE’s Seminars Sametinger’s book :: Chapters 16, 17 and 18 Fred Durão.
8/28/2005ECEN5543 Req Elicitation1 Targets of Requirements Engineering ECEN 5543 SW Engineering of Standalone Programs University of Colorado, Boulder.
System Design and Analysis
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
Lecture 13 Revision IMS Systems Analysis and Design.
Jump to first page 1 System Design (Finalizing Design Specifications) Chapter 3d.
Requirements Analysis Lecture #3 David Andrews
Term Project User Interface Specifications in a Usability Engineering Course: Challenges and Suggestions Laura Leventhal Julie Barnes Joe Chao Bowling.
9 1 Chapter 9 Database Design Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Systems Engineering Management
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Configuration Management
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 11 System Test Design
System Implementation
Data Structures and Programming.  John Edgar2.
Software Reengineering 2003 년 12 월 2 일 최창익, 고광 원.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Ross Brennan On the Introduction of Reconfigurable Hardware into Computer Architecture Education Ross Brennan
MAPLDDesign Integrity Concepts Letting Constraints Work For You Proportional Design.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Implementation Considerations Yonglei Tao. Components of Coding Standards 2  File header  file location, version number, author, project, update history.
Suggestions for FPGA Design Presentation
ITEC 3220M Using and Designing Database Systems
Magnetic Field Measurement System as Part of a Software Family Jerzy M. Nogiec Joe DiMarco Fermilab.
Engineering System Design
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
Chapter 1 : Introduction §Purpose of Database Systems §View of Data §Data Models §Data Definition Language §Data Manipulation Language §Transaction Management.
Database System Development Lifecycle 1.  Main components of the Infn System  What is Database System Development Life Cycle (DSDLC)  Phases of the.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
SE: CHAPTER 7 Writing The Program
Cohesion and Coupling CS 4311
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Language Concepts Ver 1.1, Copyright 1997 TS, Inc. VHDL L a n g u a g e C o n c e p t s Page 1.
The Macro Design Process The Issues 1. Overview of IP Design 2. Key Features 3. Planning and Specification 4. Macro Design and Verification 5. Soft Macro.
COMP 208/214/215/216 – Lecture 8 Demonstrations and Portfolios.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
DATABASE MANAGEMENT SYSTEM ARCHITECTURE
The Software Development Process
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Critical Design Review (CDR)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
EE694v-Verification-Lect7-1- Verification Plan & Levels of Verification The Verification Plan Yesterdays and today’s design environment Design specification.
IBM Global Services © 2005 IBM Corporation SAP Legacy System Migration Workbench| March-2005 ALE (Application Link Enabling)
Chapter – 8 Software Tools.
Use Case, Component and Deployment Diagrams University of Sunderland.
Fall CS-EE 480 Lillevik 480f06-l6 University of Portland School of Engineering Senior Design Lecture 6 Other development processes Technical documents.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Software Engineering Process - II 7.1 Unit 7: Quality Management Software Engineering Process - II.
1 Chapter 1 Basic Structures Of Computers. Computer : Introduction A computer is an electronic machine,devised for performing calculations and controlling.
Configuration & Build Management. Why Software Configuration Management ? The problem: Multiple people have to work on software that is changing More.
Coupling and Cohesion Pfleeger, S., Software Engineering Theory and Practice. Prentice Hall, 2001.
Combinational Design, Part 2: Procedure. 2 Topics Positive vs. negative logic Design procedure.
 System Requirement Specification and System Planning.
Configuration Management
ASIC Design Methodology
Coupling and Cohesion 1.
Systems Design.
Unified Modeling Language
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
Project Management Process Groups
Verification Plan & Levels of Verification
Software Requirements Specification (SRS) Template.
SDLC Phases Systems Design.
Software Re-engineering and Reverse Engineering
Presentation transcript:

MAPLDDesign Integrity Concepts You Mean We’re Still Working On It? Sustaining a Design

MAPLDDesign Integrity Concepts Agenda – Design Sustainability Definitions –Sustainable – Capable of being supported (AH) –Sustainability – The characteristic of an item that allows it to be supported Why is this important? Suggestions for sustainability Summary

MAPLDDesign Integrity Concepts Why Sustainability? Missions may be multiple decades long –Flight systems may develop anomalous behavior –Ground equivalents may need repair –An understanding of the design is necessary to ensure mission success –Original designers will not be available for debugging Other critical assignments Working in telecon Cruising the Pacific –Sustainable designs allow analysis and correction without the access to the original designers

MAPLDDesign Integrity Concepts Why Sustainability? (cont.) Many designs are derivative –Reuse of unmodified circuits essential for similar performance in modified designs –Acceptable modification depends on creative incorporation of what IS Derivation may take many years –Example – Alice UVS Design 1 – Rosetta ( ) Design 2 – New Horizons ( ) Design 3 – LRO ( ) Design 4 – Juno ( ???) –Staffing will not be constant –Human memory will not be precise Sustainability ensures an ability to efficiently build on past successes

MAPLDDesign Integrity Concepts Why Sustainability (cont.) You may not be the person who has to make it work –Staffing is dynamic You may quit You may get re-assigned Somebody with more clout may be needed to satisfy the customer –Teams produce a product and share debugging Test technician S/W designer I&T team –Self-interest and common courtesy You don’t want 18 questions per day Ethics – Do unto others –Example (ICB)*

MAPLDDesign Integrity Concepts Suggestions for Sustainability Remember the dual nature of design input –The CAD perspective Schematic => PCB layout package => circuit board HDL => Synthesizer => Fuse file => Programmed FPGA –The human perspective Schematic –Interrelationships (time, space, connection) –Debugging tool –Functionality description HDL –Describes functions and interaction –Renders constraints understandable –Ensure Readability!

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Record the design process –Keep a notebook (type not vital) –Describe everything of importance Why? –Is this bus used for this function? –Is this function implemented like this? –Etc. How? –Do these things talk to one another? –Does this sequential logic work (state diagrams)? –Is the address map decoded? –Are errors handled? –Etc.

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Record the Design Process (cont.) –Describe (cont.) What? –Signals are needed to perform this function? –Do the waveforms look like? –Timing do I expect to observe? –Changes have I made? –Etc. When? – Record chronology –Provide a way to reproduce what was done –Make part of permanent project record –Example – Radarsat 1 Notebook

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Schematics –Provide an overview of the design Schematic table of contents Block diagram (hierarchical design if available) –Provide consistent naming scheme Descriptive of signal direction / function / polarity Consistent across logic gates and within various blocks –Cluster sub-circuits on contiguous pages –Make connections between components explicit –Add comments where necessary for clarification –Remove unused circuitry (for FPGA schematics)

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Don’t:

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Do:

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Help!

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) HDL (Must be done from beginning!) –Provide overall orientation to design –Provide top-level comments on Level of use (top, intermediate, etc.) Overall purpose of function / block / module Signal function and origination (external and internal) –Provide operational comments on State machine purpose and configuration (how? why?) Transition logic (theory and reasoning) Function of particular sequences State to control signal translation –Clarify obscure references Remove superseded code (don’t comment out) and explain uncommon structures –Improve readability Create logical file names Minimize file, logic block, function sizes Include related functions together (error generation, data interface, basic function, etc.

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Comments?

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Header from same design! (After the fact documentation)

MAPLDDesign Integrity Concepts Suggestions for Sustainability (cont.) Post process documentation –Theory of Operation / Users Manual Generate One Include –Design concept / features –Operational Constraints –Appropriate Uses –Complete Engineering Documentation Update, release and correct as necessary –Create design archive Self-consistent and complete Place under revision control Control changes

MAPLDDesign Integrity Concepts Summary Useful designs will be corrected, modified and evaluated –FOR A LONG TIME! –By people besides you Sustainability measure must be implemented to make this happen efficiently Sustainability requires –Adequate conceptual documentation and records –Clear and readable implementation records –Finalized and controlled configuration records Ensuring sustainability will preserve your legacy