|
This page summarizes the functionality included in FSW Release
B0-6-12 and lists the JIRA issues resolved
in the Release.
User procedures for B0-6-6 are described in the LAT Flight Software User Guide.
A cumulative list of procedure changes since that Release is provided below. Users of B0-6-12 should
also review the entries for the JIRA items
resolved in B0-6-12.
Additional files, materials, and release documentation for B0-6-12 (including complete
0-6-12 command and telemetry interface reference documentation) are available on the B0-6-12 Release Page.
I. Functionality of B0-6-12
B0-6-12 supports end-to-end operation of the LAT using the SIU and EPUs.
0-6-12 has the following capabilities:
- Full support for LAT internal hardware interfaces and the LAT external interfaces with the Spacecraft.
- Full boot capabilities on the SIU and EPUs
- CPU watchdog management
- Command and telemetry processing and a complete set of commands and telemetry to support end-to-end operations, as well as handle Spacecraft ancillary messages
- Processing of all time signals and messages from the Spacecraft, and drift-corrected timekeeping
- CPU memory and EEPROM file system management
- Delivery of event data from the hardware to the Spacecraft Solid State Recorder
- Configurable Gamma filtering of event data
- Collection of charge injection calibration data
- Operational mode control to manage pointed observations, sky survey observations, and target of opportunity observations
- Load shed management and operations during SAA transit
- Thermal control system
- Instrument configuration by file and readback of instrument configuration
- Compression of event data
- Special event filters for use in
collecting CR calibration data and trigger diagnostic data
B0-6-12 does
not implement the LAT GRB
detection algorithm.
II. Changes Affecting Procedures Since Release 0-6-6
- B0-6-7: At the end of a physics data taking run using LPA,
on receipt of the LPASTOP command, FSW checks whether the detector configuration changed during the run.
If the configuration did change, the detector register configuration data is dumped to the
SSR in telemetry with APID 1021.
- B0-6-7: The contents of various hardware error and status (ESR)
registers are now sent with other LAT detector configuration dump telemetry
to the Solid State Recorder. If the LPALATCCNSFLG of the LPASTART
command is set to instruct FSW to dump the LAT configuration to the SSR
at the start of the data collection run, a separate telemetry
packet of ESR data is sent along with the configuration register
dump data. The ESR packet is sent any time the detector configuration is
dumped - in response to an LPASTOP command (see the
previous note) or in response to the LIMLATCRECORD command. The ESR data packet has the same APID (1021) as the
other configuration data telemetry; within the telemetry packet, the ESR data is
organized as a single LSFdatagram with TypeID = 0x900 wrapping a single
LSFcontribution with TypeID = -1. The ESR data packet is always the
last telemetry packet in any sequence of packets with APID 1021 dumped in response to LPASTART, LPASTOP,
or LIMLATCRECORD. See FSW-594 for the list of
ESR registers dumped.
- B0-6-8: New status information was added to thermal
control telemetry, both in the LTC diagnostic telemetry packet (DiagLTC,
APID 730) and in the housekeeping LtcData0 packet (APID 558). Both
packets contain a new field, LTCHTRREG, recording the current state of
the LTC system (running or stopped, active or passive) and the current
state of the SIB heater control register for each heat pipe reservoir
heater, 0-11. See the 0-6-8 command and telemetry handbooks (Cmd_Tlm_*.pdf) on the B0-6-8 Release Page
for the layout and encodings of the new field.
- B0-6-8: The ITOS definition for the Slew-Request command (APID
1536) sent by FSW to the spacecraft as part of the ARR response sequence
was added to the ITOS database. The command definition had previously
been hard-coded into the LAT Instrument Manager application code, but
not "published" as part of FSW's ITOS products (database and command and
telemetry handbook) .
- B0-6-8: When performing "fast boot", the boot code now takes
secondary boot flags from the Boot Diagnostics Area in RAM instead of
using hard-coded defaults. Operators wishing to use fast boot can issue
the LBTRTOSEXEC telecommand (APID 1600), setting the secondary boot
flags as desired; later reboots with the LBTRESET telecommand (using the
fast boot option settings) will then use the pre-set secondary boot flags. Alternatively,
operators may set the secondary boot flags directly in RAM using the LMEMLOADMEM command.
The secondary boot flags start at address 0000FF84
and occupy 4 bytes. The encoding of the secondary boot flags is
documented in the Primary Boot Code Design Document on the
FSW Traveler
Documents page, and various CPU boot use cases are described in the
FSW User Guide .
- B0-6-10: In anticipation of closing GRB-related
requirements, the behavior of the LPA system during ARR mode has
been enhanced. In ARR mode, LPA can adopt different filter/event
handler configurations and perform different message exchange
sequences with the spacecraft and GBM during different phases of
GRB detection. The LPA application has 3 new operating states -
GRB0, GRB1, and GRB2. In GRB0, a potential GRB has been
detected, but the spacecraft has not been repointed; In this
state, "looser" LPA filter and LAT trigger settings can be
configured to optimize GRB science data collection. GRB1 is
nearly identical to GRB0, with the exception that messages have
been exchanged leading to a repoint of the spacecraft . In GRB2,
the spacecraft is still repointing, but the LPA filter and
trigger settings can be set such that they are no longer
designed for GRB science data collection. As before, the LAT
Instrument Manager handles transitions from PHYSICS/NORMAL or
TOO mode observations to ARR and back. The LPACONFIGURE and
LPACHANGE commands allow different event processing
configuration to be set up for each of these 3 new states.
- B0-6-10: The LCILATCIGN field of the LCICALIBRATE
telecommand (APID 1660, fc 1) is no longer used.
- B0-6-10: Three new event filters were added to FSW. These filters
can be selected and tuned for data taking activities using the
LPACONFIGURE, LPACHANGE, and TOOSTART telecommands. The minimum
ionizing particle filter can configured with a set of parameters
appropriate to do intra or inter-tower track alignment or ACD MIP
calibration. The heavy ion filter can be configured to select a
sample of CNOs or (heavier) particles. The diagnostic filter is
provided for testing environments where one wishes to externally trigger
the LAT with a high rate of random triggers super-imposed on the normal
flux of muons. A set of software configuration files for the LPA
application are provided that provide access to all 6 FSW filters and
also allow the LAT to be run using external triggers.
- B0-6-11: Event datagrams now contain the file identifier of the
secondary boot script used to put the LAT CPUs in Application Mode to
allow offline systems to determine the complete configuration of FSW
during data taking.
- B0-6-11: The number of allowed LAT Physics Acquisition configuration
instances was increased from 8 to 32 to allow for greater
configurability in the future. Currently, 3 instances are provided with
the FSW installation.
- B0-6-11: A new utility application, the LAT Software Watchdog (LSW),
has been introduced. FSW manages the CPU watchdog timer on each RAD750
CPU by defining a routine that is executed each time the RTOS switches
tasks; this service routine resets the CPU watchdog. As long as the CPU
is in a state in which the RTOS can perform task switching at a rate
high enough to lead to a watchdog reset before the watchdog timer has
run down, a CPU reboot is avoided. There are no configuration files or
operational interface to the LSW sub-system, and no telecommanding
involved in controlling it or modifying its watchdog control behavior.
However, LSW, in addition to managing the watchdog timer, also maintains
a diagnostic memory buffer which contains a record of task switching
activity (CPU timestamp for each task switch, the identity of the task
going to sleep, the identity of the task waking up). The address and
size of this buffer are recorded in the Boot Diagnostics Area of RAM.
Should an unexpected reboot occur, once the CPU returns to the boot
shell, operators should dump the BDA and deliver the data to the FSW
Development Team for analysis (see Section 6.7 of the
FSW User Guide).
- B0-6-11: The LPAASSOCIATE command (APID 1653, fc 0) replaces the
LPACHANGE command. With a single operation, this new command sets the
configuration for multiple event handlers (Gamma filter, heavy ion
filter, etc) in all 5 available observation modes. Use this command if
the default configuration for a handler is not appropriate for the
current observation. For each of the 5 modes, an individual
handler can take data using one of its 32 available internal
configurations. This command associates one of these 32 configuration
IDs with a specific mode. Each of the 5 available handler masks maps to
a mode. A set bit in any of these 5 masks will take the handler
corresponding to that bit position and create an association between the
specified configuration ID and the mode. Essentially, this command
allows operators to specify, for instance, “use configuration 9 for
these 3 handlers in NORMAL mode, these 4 handlers in TOO mode, and this
handler in GRB0 mode.”
- B0-6-11: Two new LPA telecommands, LPASETOUTPUT (APID 1653, fc 2)
and LPASETGRB (APID 1653, fc 3), affect the way in which observation
runs are conducted. These two commands allow operators to control
whether event data is sent by the EPUs to the SIU or SSR (LPASETOUTPUT),
and whether the LPA application on the SIU will process any GRB summary
packets from the EPUs or commands from the GBM (LPASETGRB). By default,
SIU processing of GBM commands is disabled. Use the LPASETGRB command to
enable. By default, SIU processing of EPU GRB summary packets is
disabled. Use the LPASETGRB command to enable. By default, EPU posting
of GRB summary packets to SIU is disabled. Use the LPASETOUTPUT command
to enable.
- B0-6-12: The RAD750 active memory scrubber on each CPU has been
configured to run by default every five minutes following successful
secondary boot. This default memory scrubber configuration can be
overridden using the LCMSCRUBCFG command (APID 1684, fc 1).
- B0-6-12: LATp command/response traffic counters recorded in the
Event Builder Module for each LATp node (SIU, EPUs, CRU, etc) are now
streamed in the Application Mode Lrs0 housekeeping packet (APID 551)
- B0-6-12: The FileStats, MemStats, and CpuMetr
packets in Application Mode housekeeping telemetry have been replaced
with separate, CPU-specific housekeeping packets: SiuStats,
Epu0Stats, Epu1Stats, Epu2Stats (APID 554, 555, 556,
557). Appearance of the Epu*Stats packets in the telemetry stream
can be used as an indication that a particular EPU has successfully
completed secondary boot and is now operating in Application Mode.
- B0-6-12: The LCMMSGOCFG has been replaced by the LCMMSGOUT command.
The new command allows operators to set FSW, on a per CPU basis, to
output a more verbose MSG system stream to the SSR over the science data
interface, but only send MSGs of a certain severity level (e.g., ERROR)
out over the 1553 interface. This can be used to conserve 1553
bandwidth. On startup, the LCM application is configured to send MSG
system messages of Information level or greater out over the 1553
interface; the SDI interface is disabled. The three fields of the
LCMMSGOUT command allow this default behavior to be modified: (a)
LCMNODEID: ITC node ID. ITC_NID_SIU = 0, ITC_NID_EPU0 = 1, ITC_NID_EPU1
= 2, ITC_NID_EPU2 = 3; (b) LCMMSGINTER: MSG Output Interface to
Configure. 1553/CTDB = 1, SDI/SSR = 2; (c) LCMMSGLEVEL: MSG system
severity level. LCM will output MSG system messages with a severity
level greater than or equal to the level set in this field. INFORMATION
= 1, WARNING = 2, ERROR = 3, DISABLE = 4.
- B0-6-12: If operators attempt to dump an empty directory using
LFSDIRDUMP, FSW returns a new telemetry packet, LFSDIREMPTY (APID 796).
- B0-6-12: Telecommand field and parameter consistency were improved
in accordance with JIRA items FSW-692, FSW-691, and FSW-690.
- B0-6-12: No-op telecommands were added for several FSW
applications. These no-op commands allow operators to send a
consequence-free command to a FSW task solely for determining whether
that task is able to transmit command confirmation telemetry packets. If
the task cannot return such packets, it may be "hung."
- B0-6-12: The Lrs0 Application Mode housekeeping telemetry packet
now contains several new LAT Instrument Manager counters and flags that
can be used as a constant report of the LAT's current operations mode.
III. FSW Packages Changed or Added in B0-6-12
B0-6-12 provides “flight” code modules, which are loaded and executed on LAT CPUs, and the corresponding source code. In addition, B0-6-12 contains unit tests, test support code, ground support utilities, and qualification test documents and scripts.
- FSW packages that were changed or added since B0-6-11 are
itemized here.
- All FSW packages in B0-6-12 are itemized here.
IV. JIRA Items Resolved in B0-6-12
Bug
- [FSW-341] - LPA Mode Change/Flush Behavior is Incorrect
- [FSW-369] - MSG needs to disable reports from within the MSG task
- [FSW-628] - LATC dump errors
- [FSW-667] - LCAT-generated CCSDS Header Mnemonics named incorrectly
- [FSW-668] - LCAT includes onboard limit definitions in DBX output
- [FSW-680] - Swap LHKPnxHP3DSIT and LHKPnxHP5DSIT to address miswiring of thermal sensor
- [FSW-706] - CSIUENUM enumeration not associated with an LIM command
- [FSW-710] - LIM Should Disable GBM Interrupt Processing in TOO Mode
- [FSW-719] - FILE package initialization fails on MV2304 targets
- [FSW-720] - Fix GRB Simulation State Variable
- [FSW-731] - Invalid LHK EBM Response List
- [FSW-733] - EDS has a couple of obscure errors, mainly dealing with multi-packet events that needed fixing
- [FSW-736] - LHK Diagnostic APID Mapping Table Is Incorrect
- [FSW-737] - Fix Linux Byte Swap in LHK Limit Configuration File Builder
- [FSW-741] - Bug in LHK PID Stats Packet Addressing
Improvement
- [FSW-167] - LTC telemetry packets contain one 16-bit word that contains both the status and the raw value instead of two words
- [FSW-180] - ISOC request for additional status info in housekeeping
- [FSW-270] - mnemonics in telemetry packet 720/0x2D0 do not begin with ?L?
- [FSW-490] - EPU State Monitoring Required by LHK and THS
- [FSW-567] - Add DEAD_ZONED counter to HSK
- [FSW-654] - ITC enums for task ID are out of date
- [FSW-682] - LTC estimation filter timescale is too short
- [FSW-685] - Expand LHKDIAGAPID argument range for LHKREQDIAGPKT
- [FSW-686] - Mnemonic LHKSMEM0MPTID should be LHKSMEMDMPTID
- [FSW-687] - LHKT0TEM28V0ST and LHKT0TEM28V1ST et al are missing conversion
- [FSW-688] - LMEMPAD re-use
- [FSW-690] - Standardize on LATUNIT to identify SIU and EPU
- [FSW-691] - Standardize transaction ID command parameter
- [FSW-692] - Split LCMUNIT parameter
- [FSW-694] - LLFSSYSMOUNT (Command 1609 FC1) should be "LFSSYSMOUNT" (delete extra L)
- [FSW-698] - Separate LTC master config files into fof, data
- [FSW-700] - Add positive feedback in telemetry for dumps of empty directories.
- [FSW-701] - Add flexibility to MSG level output based on destination
- [FSW-702] - EPU secondary boot indication
- [FSW-707] - Modify LTC built-in RES filter to moving average
- [FSW-715] - QLATC_report and QLATC_print should display register names
- [FSW-717] - Expose LAT reset command to Telecommand
- [FSW-718] - Expose LookAtMe in telecommands
- [FSW-722] - CLONE -EPU State Monitoring Required by LHK and THS
- [FSW-727] - Identify memory scrubbing strategy and update default setting accordingly
- [FSW-728] - Update memory detection action configuration setting
New Feature
- [FSW-168] - Add LIM mode status to regular housekeeping packet
- [FSW-684] - There need to be general no-op commands for each task.
- [FSW-721] - Add EBM Statistics To LHK
- [FSW-734] - Enhancements to LDT to support data compression
- [FSW-735] - Expose a piece of the LSE datagram context for semi-public consumption
- [FSW-738] - QSE additions to support data compress
- [FSW-740] - In preparation for data compression, the various calibration database files needed some extra information
Task
- [FSW-726] - Add identifier for LRA datagrams
|