Table of Contents Previous Chapter

3.2 System Features

This section defines the major features of the ACIS Science Instrument Software. Each feature is described in terms of its purpose and the scenario under which it operates. Following the scenario description is a list of detailed requirements concerning the feature.

The scenario descriptions make use of Sequence Diagrams and Data Flow diagrams. Sequence Diagrams script the scenario in terms of a time-line of messages being sent between participants in the scenario. Data Flow Diagrams provide an overview of information flow within the scenario.

The following roles are used to describe the various scenarios:

The command and telemetry description tables in this and subsequent sections define the minimum required information within the described command or telemetry packet. Unless otherwise specified, the tables do not mandate the order of the fields, nor the manner in which the information is represented within the implemented command and telemetry packet formats. The exact command and telemetry formats are described in the ACIS Instrument Program List (IP&CL) software structures definitions.

3.2.1 Configurable ACIS Science Run Execution

3.2.1.1 Purpose

This document defines the term "ACIS Science Run" as distinct from an "Observation." An Observation is the time during which the instrument is pointed at a specific target and data is being taken. An ACIS Science Run is a contiguous period of time during which ACIS is observing a source using a single set of parameters. During an Observation, ACIS may be commanded to start and stop its Science Runs for a variety of reasons, such as to switch configurations or avoid running the CCDs during periods of high radiation. Several Science Runs may be performed during a single Observation.

The mode of the run and the parameters to use for the run are defined using Science Mode parameter blocks. Since there are several types of Science Modes, each with their own sets of parameters, commands and telemetry formats, this section provides simple definitions of these items. Subsequent sections will refine these definitions in the context of the particular mode being defined.

3.2.1.2 Scenario

To perform a Science Run, an observer commands ACIS to accept a set of parameters to use for the run and then instructs ACIS to execute the run. The parameters and commands define the science mode and options to use for the run. ACIS then sets up the hardware and software elements needed for the run, dumps the parameter blocks into the telemetry stream, optionally computes the pixel-by-pixel CCD bias levels or re-uses previous bias levels from the most recently computed set, and proceeds to acquire, process and telemeter event data from the selected CCDs. Aside from custom PRAM/SRAM loads, all CCDs are clocked synchronously, with the exception that parallel transfers (image to frame or frame to output register transfers) may be performed one CCD at a time (staggered) for power reasons. The observer allows ACIS to continue its data acquisition for the desired period of time and then commands ACIS to terminate the run.

Figure 15 illustrates this scenario in the form of an sequence diagram, whereas Figure 16 shows the same concept using a data flow diagram.

If, during a run, the radiation monitor signal is asserted, the instrument aborts the active science run, and disables power to the DEA's CCD-controllers. In this case, the data from the last exposure of the aborted run may be incomplete. Once the radiation subsides, power is restored to the CCD-controllers, the bias maps are recomputed and the run is resumed. The radiation monitor requirements are defined in more detail in Section 3.2.14 on page 132.

FIGURE 15. Science Run Sequence Diagram


Upon receipt of a "Load Parameter Block" command, the Command Interface (CommandIF) dispatches the command to copy the specified parameter block into a parameter block slot.

When it receives an "Execute Science Run" command, the Command Interface dispatches the command to a Science Mode (ScienceMode). The Science Mode then retrieves the parameter block specified in the command. The Science Mode then configures an Event Processor (EventProcessor) to prepare for events, tells the Detector Electronics Assembly interface (DEAIF) to setup the DEA hardware and PRAM/SRAM sequencer, and instructs the Back End's Front End Processor interface (FEPIF) to load code and parameters into the Front End Processors. The mode then dumps the parameter blocks into the telemetry stream (not shown) and instructs the Front End Processors to start executing. Finally, the Science Mode instructs the DEA Interface to start clocking the CCDs, discarding the initial charge image built up over time within the CCDs.

As the DEA clocks the CCDs, pixel data is produced and forwarded to the Front End Processors (not shown). If a bias computation is needed, the Front End Processors then proceed to use the incoming data from multiple exposures to compute the bias level (i.e. estimate the "zero" level) for each pixel in their respective CCDs. Once the bias has been computed, the Front End Processors enter their main event processing code. This code selects events from the incoming pixel data and forwards the event data to the Back End Processor via the BEP's Front End Processor interface (FEPIF). The Front End Processor interface then instructs the Event Processor to process the events. As the Event Processor selects, processes and formats the events for telemetry, it instructs the Telemetry interface (TelemetryIF) to send the packaged event data.

When the observer sends the command to terminate the Science Run, the Command Interface instructs the running Science Mode to stop the run. The Science Mode, in turn, instructs the DEA interface and Front End Processor interface to stop clocking the CCDs and stop producing events. When the Back End's Front End Processor interface receives an indication from the Front End Processor that the data is complete, it tells the Event Processor to stop. The Event Processor then completes its event processing, and tells the Science Mode that it has finished. The Science Mode then forms an Observation Report and tells the Telemetry interface to send the formed report.

FIGURE 16. Science Run Data Flow Diagram


3.2.1.3 Functional Requirements
3.2.1.3.1 Parameter Block Identifiers

All types of parameter blocks which are used to configure an ACIS Science Run shall contain a ground-assigned 32-bit identifier field. This field shall be echoed by the instrument software into key portions of the science telemetry.

3.2.1.3.2 Load Parameter Block Commands

The ACIS Science Instrument Software shall support commands to load different types of parameters blocks, which ACIS uses to control a Science Run. Table 6 describes the content of a "generic" load parameter block command. The content of each specific type of parameter block is Science Mode dependent and described in later System Features.

TABLE 6. Generic Load Parameter Block Command Packet (Continued)

------------------------------------------------------------------------------------------
Req    Field Name             Description                                                   
------------------------------------------------------------------------------------------
 6-1   Packet Word Length     This indicates the total number of 16-bit words in the com    
                              mand packet.                                                  
 6-2   Packet Identifier      This identifies the command packet.                           
 6-3   Command Opcode         "Load <type> Parameter Block" command opcode. This            
                              instructs the ACIS Science Instrument Software to store the   
                              "Parameter Block Data" contained within the packet.           
 6-4   Slot Id                This identifies the parameter block slot within ACIS to over  
                              write.                                                        
 6-5   Block CRC or Checksum  This is used to check the load.                               
 6-6   Parameter Block Data   The remainder of the packet contains the parameter block      
                              data.                                                         
                                                                                            
------------------------------------------------------------------------------------------

Upon receiving a Load Parameter Block command, the ACIS Science Instrument Software shall store the contents of the parameter block in its memory into the slot specified by "Slot Id."

3.2.1.3.3 Pre-loaded Parameter Blocks

ACIS shall be capable of storing a fixed number (at least 4) of Parameter Blocks. This allows the maintainer to build a library of commonly used Parameter Blocks (using a "Load Parameter Block Command"), thus reducing the number of commands required to configure the instrument.

NOTE: This feature is not a prerequisite on the ground systems for using ACIS. It is provided as an optional facility for medium to long-term storage of commonly used parameter blocks.

3.2.1.3.4 Launched Parameter Blocks

ACIS shall contain a set of (at least 4) Parameter Blocks in its software ROM for use during on-orbit checkout and commonly used observational modes.

3.2.1.3.5 Start Science Run Commands

ACIS shall accept and process "Start <Science Mode> Run" commands as described above. Table 7 describes the format for a generic "Start Science Run" command.

TABLE 7. Generic Start Science Run Command (Continued)

-----------------------------------------------------------------------------------------------
Req    Field Name          Description                                                           
-----------------------------------------------------------------------------------------------
 7-1   Packet Word Length  This indicates the total number of 16-bit words in the command        
                           packet                                                                
 7-2   Packet Identifier   This identifies the command packet.                                   
 7-3   Command Opcode      "Start <Science Mode> Run" command opcode. This instructs the         
                           ACIS Science Instrument Software to retrieve the parameter block      
                           indicated by "Slot Id" below, and setup and run the requested Sci     
                           ence Mode. ACIS will continue to run the mode until commanded         
                           to stop.                                                              
 7-4   Slot Id             This identifies the <Science Mode> parameter block to use for the     
                           run. This block may have been loaded just prior to the Start Run      
                           command, or may be part of either the pre-loaded library, or one of   
                           the blocks provided at launch.                                        
                                                                                                 
-----------------------------------------------------------------------------------------------

Refer to Section 3.3.6 for a description of the instrument behavior if the reference parameter block is invalid.

3.2.1.3.6 Stop Science Run Commands

ACIS shall accept and process "Stop Science Run" commands as described above. Table 8 describes the format for a "Stop Science Run" command.

TABLE 8. Generic Stop Science Run Command (Continued)

------------------------------------------------------------------------------------------
Req    Field Name          Description                                                      
------------------------------------------------------------------------------------------
 8-1   Packet Word Length  This indicates the total number of 16-bit words in the command   
                           packet                                                           
 8-2   Packet Identifier   This identifies the command packet.                              
 8-3   Command Opcode      "Stop Science Run" command opcode. This instructs the ACIS       
                           Science Instrument Software to stop the current science run.     
                                                                                            
------------------------------------------------------------------------------------------
3.2.1.3.7 Compute Bias Commands

ACIS shall accept and process "Compute <Science Mode> Bias" commands which instruct the software to compute and telemeter the CCD pixel bias values without entering its event processing code. These commands cause ACIS to configure and start a science run, as described above, but auto-terminate the run prior to processing the data. When the bias-only run terminates, it telemeters a "Science Report" record (see Section 3.2.1.3.12). Table 9 describes the format for a generic "Compute Bias" command.

TABLE 9. Generic Compute Bias Command (Continued)

-----------------------------------------------------------------------------------------------
Req    Field Name          Description                                                           
-----------------------------------------------------------------------------------------------
 9-1   Packet Word Length  This indicates the total number of 16-bit words in the command        
                           packet                                                                
 9-2   Packet Identifier   This identifies the command packet.                                   
 9-3   Command Opcode      "Compute <Science Mode> Bias" command opcode. This instructs          
                           the ACIS Science Instrument Software to retrieve the parameter        
                           block indicated by "Slot Id" below, and setup and run the requested   
                           Science Mode to the point where the bias values have been com         
                           puted. ACIS will automatically stop the run once the bias values      
                           have been computed.                                                   
 9-4   Slot Id             This identifies the <Science Mode> parameter block to used for the    
                           bias run.                                                             
                                                                                                 
-----------------------------------------------------------------------------------------------

Refer to Section 3.3.6 for a description of the instrument behavior if the reference parameter block is invalid.

3.2.1.3.8 Parameter Dump Telemetry

ACIS shall dump all parameters prior to the start of a Science Run. Dumped parameter contents shall be embedded with the ACIS telemetry packet format. To ease ground processing of telemetry, if more than one parameter block is used to configure a run (such as a Timed Exposure Parameter Block plus its 2-D Window List), they may be concatenated into a single packet when dumped to telemetry.

3.2.1.3.9 Science Time-stamping

At the start of an ACIS science run or bias run, the software shall read the ACIS time-stamp latch after issuing the command to the DEA to start clocking the CCDs, and prior to issuing any subsequent commands to the DEA. This time-stamp, in conjunction with the time-stamps inserted into the telemetry frames after each Science Header (see Section 3.1.4.3 on page 34) relates the start of the CCD clocking to the spacecraft-generated timecode in each Science Header.

ACIS shall provide this "start of run time-stamp" for both the current run, and the most recent bias computation, with each science exposure or data set, and shall provide a counter with each exposure or data set. This counter, coupled with knowledge of the data set rate, and the time-delay between the issuance of the start command and the start of the first data set, indicates the time at which a data set was acquired (NOTE: The data set rate can be measured using the Front End Processor Slave counters, or derived from the parameters used for the run. The initial time-delay is a function of the clocking mode and the run's parameters).

3.2.1.3.10 Science Data Telemetry

During a Science Run, the ACIS Science Instrument Software shall produce science data telemetry. Although the format of this telemetry is determined by the particular event processing being performed by the mode, key portions of such telemetry shall contain a code or time- stamp which uniquely identifies the ACIS Science Run.

In general, the science data telemetry for a given run contains the following kinds of packets:

3.2.1.3.11 Telemetry/Performance Saturation Behavior

ACIS software running in the Back End shall process all data generated by the Front Ends. If a Front End finds that it cannot process the incoming data fast enough, or that the Back End is unable to receive it, that Front End shall ensure that the current CCD frame is processed in its entirety and sent to the Back End, if necessary ignoring one or more subsequent image frames. This ensures delivery of complete CCD image frames, but with a dead-time equal to zero or more exposures between each complete exposure. No attempt will be made to synchronize dropped exposures between the Front Ends.

In order to maintain timing, and to track which exposures were discarded, each Front End shall increment its exposure counter when an image is generated by the Detector Electronics Assembly, whether or not that image is sent to the Back End. On the ground, discarded exposures will appear as gaps in the exposure numbers from a particular Front End. For example, if exposure number 1243 is accepted, the next exposure is dropped, and then the subsequent exposure is accepted, the ground would see exposure number 1243 followed by exposure number 1245.

3.2.1.3.12 Post-Science Run Reports

After being commanded to stop a Science Run, or after a Bias-Only run auto-terminates, the ACIS Science Instrument Software shall produce a report of the completed run. Science Run Reports shall contain at least the information described in Table 10. The exact content of a Science Run Report will be described in the ACIS Instrument Program List (IP&CL) software structures definitions.

TABLE 10. Science Run Report Information (Continued)

----------------------------------------------------------------------------------------------------------
Req      Field Name                  Description                                                            
----------------------------------------------------------------------------------------------------------
 10-1    Packet Synch                This field marks the start of the ACIS packet within the teleme        
                                     try stream.                                                            
 10-2    Packet Word Length          This field indicates the number of 32-bit words in the packet.         
 10-3    Format Tag                  This field indicates the type of data contained in the telemetry       
                                     packet.                                                                
 10-4    Packet Sequence Number      This field is used to sequentially number all ACIS telemetry           
                                     packets.                                                               
 10-5    Science Run Start Time      This contains the ACIS time-stamp sampled relative to the start        
                                     of the Science Run. All data produced by the run is relatable to       
                                     this time-stamp.                                                       
 10-6    Parameter Block Identifier  This is a copy of a Parameter Block Identifier, contained within       
                                     the parameter block used to configure the run.                         
 10-7    Termination Reason          This field is used to indicate the reason for the termination of the   
                                     run, such as a Stop Command, or a Radiation Monitor assertion.         
 10-8    Termination Time            This is the approximate time, in terms of Back End Processor           
                                     timer ticks, when the run was ended.                                   
 10-9    Data Summary                This item provides some indication of how much information             
                                     was produced by the run (such as number of exposures, events,          
                                     etc.). The intent is to provide the observer with a confirmation       
                                     that all of the run's data has been received.                          
 10-10   Discrepancy Summary         This item provides summary information of any Front End Pro            
                                     cessor crashes or protocol errors, DEA sequencer errors, and a         
                                     total count of pixel bias map parity errors uncovered during or        
                                     after the run.                                                         
----------------------------------------------------------------------------------------------------------
 

Table of Contents Next Chapter