ACIS Software Requirements Specification
MIT Center for Space Research
Table of Contents
1.0 Introduction
1.1 Purpose
1.2 Scope
1.3 References
2.0 Overview
2.1 General Description
2.2 CCD Description
2.2.1 CCD Arrangement
2.2.2 CCD Description
2.2.3 Timed-Exposure Clocking Mode Description
2.2.4 Continuous Clocking Mode Description
2.3 Detector Electronics Assembly Description
2.3.1 Overall DEA Description
2.3.2 Command Decoder Description
2.3.3 Sequencer Logic Description
2.3.3.1 Program RAM (PRAM)
2.3.3.2 Sequencer RAM (SRAM)
2.3.4 Digital-to-Analog Converter (DAC) Banks
2.3.5 DEA Housekeeping Information
2.4 RCTU Description
2.5 Back End Processor Description
2.6 Front End Processor and Hardware Description
3.0 Requirements
3.1 External Interface Requirements
3.1.1 User Interfaces
3.1.2 Hardware Interfaces
3.1.3 External Software Interfaces
3.1.4 Communications Interfaces
3.1.4.1 Serial Commands
3.1.4.2 Discrete Commands and Flags
3.1.4.3 Spacecraft Telemetry Formats
3.1.4.4 Serial Telemetry
3.1.4.5 Discrete Telemetry
3.1.4.6 ACIS Science Run Timestamps
3.2 System Features
3.2.1 Configurable ACIS Science Run Execution
3.2.1.1 Purpose
3.2.1.2 Scenario
3.2.1.3 Functional Requirements
3.2.1.3.1 Parameter Block Identifiers
3.2.1.3.2 Load Parameter Block Commands
3.2.1.3.3 Pre-loaded Parameter Blocks
3.2.1.3.4 Launched Parameter Blocks
3.2.1.3.5 Start Science Run Commands
3.2.1.3.6 Stop Science Run Commands
3.2.1.3.7 Compute Bias Commands
3.2.1.3.8 Parameter Dump Telemetry
3.2.1.3.9 Science Time-stamping
3.2.1.3.10 Science Data Telemetry
3.2.1.3.11 Telemetry/Performance Saturation Behavior
3.2.1.3.12 Post-Science Run Reports
3.2.2 Timed Exposure Science Mode
3.2.2.1 Purpose
3.2.2.2 Scenario
3.2.2.3 Functional Requirements
3.2.2.3.1 Timed Exposure Parameter Block Content
3.2.2.3.2 2-D Window Lists
3.2.2.3.3 Building of DEA PRAM and SRAM Loads
3.2.2.3.4 Normal Exposure CCD Clocking Operations
3.2.2.3.5 Short Exposure CCD Clocking Operations
3.2.2.3.6 Overclock Processing
3.2.2.3.7 Pixel Bias Map Determination
3.2.2.3.8 Threshold Determination
3.2.2.3.9 Pixel Threshold Processing
3.2.2.3.10 Front End Event-finding Mode
3.2.2.3.11 Front End Raw Mode
3.2.2.3.12 Front End Histogram Mode
3.2.2.3.13 Bad Pixel and Column Map Content and Application
3.2.2.3.14 Pulse Height Bias Correction and Event Amplitude
3.2.2.3.15 Event Selection by Event Amplitude
3.2.2.3.16 Event Grade Computation
3.2.2.3.17 Event Selection by Grade
3.2.2.3.18 2-D Window Event Processing
3.2.2.3.19 Raw Mode Telemetry
3.2.2.3.20 Histogram Telemetry
3.2.2.3.21 Faint Mode Event Telemetry
3.2.2.3.22 Faint-Bias Mode Telemetry
3.2.2.3.23 Graded Event Telemetry
3.2.2.3.24 Pixel Bias Map Telemetry
3.2.2.3.25 Pixel Bias Map Parity Error Telemetry
3.2.2.3.26 Diagnostic Features
3.2.3 Continuous Clocking Science Mode
3.2.3.1 Purpose
3.2.3.2 Scenario
3.2.3.3 Functional Requirements
3.2.3.3.1 Continuous Clocking Parameter Block Contents
3.2.3.3.2 1-D Window Lists
3.2.3.3.3 Building of DEA PRAM and SRAM Loads
3.2.3.3.4 Continuous CCD Clocking Requirements
3.2.3.3.5 Overclock Processing
3.2.3.3.6 Pixel Bias Map Determination
3.2.3.3.7 Threshold Determination
3.2.3.3.8 Pixel Threshold Processing
3.2.3.3.9 Front End Event-finding Mode
3.2.3.3.10 Front End Raw Mode
3.2.3.3.11 Bad Column Map Content and Application
3.2.3.3.12 Pulse Height Bias Correction and Event Amplitude
3.2.3.3.13 Event Selection by Event Amplitude
3.2.3.3.14 Event Grade Computation
3.2.3.3.15 Event Selection by Grade
3.2.3.3.16 1-D Window Event Processing
3.2.3.3.17 Raw Mode Telemetry
3.2.3.3.18 Faint Mode Event Telemetry
3.2.3.3.19 Continuous Graded Mode Event Telemetry
3.2.3.3.20 Pixel Bias Map Telemetry
3.2.3.3.21 Diagnostic Features
3.2.4 Spectroscopy Science Modes
3.2.4.1 Purpose
3.2.4.2 Scenario
3.2.4.3 Functional Requirements
3.2.5 Diagnostic Modes
3.2.5.1 Purpose
3.2.5.2 Scenario
3.2.5.3 Functional Requirements
3.2.5.3.1 Raw Modes
3.2.5.3.2 Reverse Clocking Modes
3.2.5.3.3 Histogram Mode
3.2.6 Calibration Modes
3.2.6.1 Purpose
3.2.6.2 Scenario
3.2.6.3 Functional Requirements
3.2.6.3.1 CCD charge transfer efficiency
3.2.6.3.2 CCD dark current
3.2.6.3.3 Other Calibration Functions
3.2.7 Hardware Configuration
3.2.7.1 Purpose
3.2.7.2 Scenario
3.2.7.3 Functional Requirements
3.2.7.3.1 System Configuration Parameters
3.2.7.3.2 Change System Configuration Settings
3.2.7.3.3 Dump System Configuration Settings
3.2.7.3.4 Add Bad Pixel
3.2.7.3.5 Reset Bad Pixel Map
3.2.7.3.6 Dump Bad Pixels
3.2.7.3.7 Add Bad Columns
3.2.7.3.8 Reset Bad Column Map
3.2.7.3.9 Dump Bad Columns
3.2.8 Memory Commands
3.2.8.1 Purpose
3.2.8.2 Scenario
3.2.8.3 Functional Requirements
3.2.8.3.1 Read Back End Memory
3.2.8.3.2 Write Back End Memory
3.2.8.3.3 Execute Back End Memory
3.2.8.3.4 Read Front End Memory
3.2.8.3.5 Write Front End Memory
3.2.8.3.6 Execute Front End Memory
3.2.8.3.7 Read SRAM
3.2.8.3.8 Write SRAM
3.2.8.3.9 Read PRAM
3.2.8.3.10 Write PRAM
3.2.9 Software Housekeeping
3.2.9.1 Purpose
3.2.9.2 Scenario
3.2.9.3 Functional Requirements
3.2.9.3.1 Command Indicators
3.2.9.3.2 Status Indicators
3.2.9.3.3 Run-time Statistics and Monitoring
3.2.9.3.4 Watchdog Maintenance
3.2.9.3.5 Startup Reporting
3.2.9.3.6 Fatal Error Reporting and Recovery
3.2.10 DEA Housekeeping Runs
3.2.10.1 Purpose
3.2.10.2 Scenario
3.2.10.3 Functional Requirements
3.2.10.3.1 DEA Housekeeping Parameter Block
3.2.10.3.2 Start DEA Housekeeping Command
3.2.10.3.3 Stop DEA Housekeeping Command
3.2.10.3.4 DEA Housekeeping Telemetry
3.2.11 Post-launch Software Replacement
3.2.11.1 Purpose
3.2.11.2 Scenario
3.2.11.3 Functional Requirements
3.2.11.3.1 Add Patch Command
3.2.11.3.2 Remove Patch Command
3.2.11.3.3 Dump Patch list
3.2.12 Load from Read-Only-Memory
3.2.12.1 Purpose
3.2.12.2 Scenario
3.2.12.3 Functional Requirements
3.2.12.3.1 Copy Code/Data from ROM into RAM
3.2.12.3.2 Execute Loaded Code
3.2.13 Load from Command
3.2.13.1 Purpose
3.2.13.2 Scenario
3.2.13.3 Functional Requirements
3.2.13.3.1 Start Uplink Load Command
3.2.13.3.2 Continue Uplink Load Command
3.2.14 Radiation Monitoring
3.2.14.1 Purpose
3.2.14.2 Scenario
3.2.14.3 Functional Requirements
3.2.14.3.1 Disable CCD Power
3.2.14.3.2 Re-enable CCD Power
3.3 Miscellaneous Requirements
3.3.1 Fault Detection and Isolation
3.3.2 Self-Test
3.3.3 Redundancy Management and Hardware Re-configuration
3.3.4 Fault Management
3.3.5 Watchdog Reset and Crash Recovery
3.3.6 Bad Parameter Block Corruption Handling
3.3.7 Start or Bias Commands during a Run
3.3.8 Timer Interrupt Response Time
3.4 Design Constraints
3.4.1 General
3.4.2 Memory Types
3.5 Software System Attributes
3.5.1 Maintainability
3.5.2 Transferability/Conversion
4.0 Quality Assurance Requirements
5.0 Test Requirements
Appendix A - Software Commands
Appendix B - Parameter and Configuration Blocks
Appendix C - Telemetry Items
Appendix D - ACIS Time to S/C Time Guidelines
Appendix E - Additional Goals
E.1 Timed Exposure 5x5 Event Telemetry
E.1.1 Faint 5x5 Mode Event Telemetry
E.1.2 Faint-with-Bias 5x5 Mode Event Telemetry
E.2 Timed Exposure Event Amplitude Histograms
E.2.1 Event Amplitude Histogram Telemetry
E.3 Timed Exposure Fiducial Pixel Telemetry
E.3.1 Fiducial Pixel Telemetry