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.