The AXAF-I CCD Imaging Spectrometer (ACIS) Science Instrument Software (SIS) is being developed by the Massachusetts Institute of Technology, Center for Space Research (MIT-CSR) as part of the ACIS Digital Processor Assembly (DPA). The DPA resides on-board the Advanced X-ray Astrophysics Facility - Imaging (AXAF-I). The DPA Science Instrument Software is responsible for acquiring and processing image data from the ACIS CCD Imaging Spectrometer and transferring the processed data to the AXAF-I Command and Telemetry Unit (CTU), which is then responsible for sending the information to the ground.
The ACIS Science Instrument Software Preliminary Design Specification describes the approach taken by the software designers to satisfy the requirements described in the ACIS Science Instrument Software Requirements Specification.
This document applies to the preliminary design of the ACIS DPA Science Instrument Software. It does not provide information for the Ground Support Software (GSS), which is maintained separately as part of the Electronic Ground Support Equipment (EGSE).
This document supplies information applicable SDM03 from the original contract, and to DM08 from MM8075.1.
By mutual agreement, MSFC Software Management and Development Requirements Manual MM8075.1, which supersedes MA-001-006-2H, forms the basis for this document.
This specification relies on a set of existing documentation. The following table lists these documents.
-----------------------------------------------------------------------------------------
Part Number Version Title
MSFC MM 8075.1 January 22, 1991 MSFC Software Management and Develop
ment Requirements Manual
MIT-CSR 36-01103 A ACIS Science Instrument Software Require
ments Specification
MIT-CSR 36-01502 01 ACIS Technical Analyses and Models: ACIS
Hardware Specification and System Descrip
tion
NU910701 1991 Nucleus RTX Reference Manual from Accel
erated Technology, Inc.
NU910702 1991 Nucleus RTX Internals Manual from Acceler
ated Technology, Inc.
ISBN 0-8053-5340-2 1994 Object-Oriented Analysis and Design with
Applications, Second Edition by Grady
Booch, Benjamin/Cummings
NASA Reference Publication, September, 1993 Mongoose ASIC Microcontroller Program
1319 ming Guide, Brian S. Smith, GSFC
ISBN 1-55860-297-6 1994 MIPS Programmer's Handbook by Erin Far
quahar and Philip Bunce, Morgan Kaufman
Publishers
ISBN 0-13-584749-4 1989 MIPS RISC Architecture, by Gerry Kane,
Prentice Hall
-----------------------------------------------------------------------------------------
The first section of this document, "Software Architecture," describes the overall grouping of the software units. The section "Hardware Interfaces" describes the key hardware interfaces and the software units responsible for managing these interfaces. "Real-Time Executive Interfaces" discusses the interfaces provided by the purchased executive software. The sections, "Command Management," "Telemetry Management," "DEA Management," and "FEP Management" discuss the software elements used to respectively manage command processing, produce telemetry, command and acquire information from the Detector Electronics Assembly, and command and acquire data from the Front End Processors. The sections "Science Processing," "DEA Housekeeping," and "Software Housekeeping" discuss, respectively, the design approach to the Back End Process CCD science data activities, Detector Electronics Assembly housekeeping data acquisition, and software housekeeping activities.
The Appendices provide overall processor memory map information, and traceability to the ACIS Software Requirements Specification.
The ACIS SIS software uses two design approaches: object-oriented design, and top-down structured design. Due to the nature of the science requirements, the first approach, object-oriented design, is used for the bulk of the software residing on the Back End Processor. This approach allows the design to identify key software elements and interfaces, encapsulate and defer certain implementation details, and generalize certain types of data processing operations, while maintaining flexibility to handle new types of data.
For parts of the system whose requirements are well understood, or whose performance margins are tight, the software design uses a top-down, structured approach. This applies to the Boot ROMs on all processors, and to the science software running on the Front End Processors.