GSFC/NGIMS-FSW-023 NGIMS FSW Release Description for v3.2.07 August 24, 2001 Thank you for choosing NGIMS FSW as the software to control your instrument, experiment or other embedded real-time system. This document describes the latest FSW build. Users are urged to read the following documents at the FSW web site (online.to/contour/FSW_Docs): GSFC/NGIMS-FSW-05, Contour/NGIMS Commanding GSFC/NGIMS-FSW-06, Contour/NGIMS Telemetry GSFC/NGIMS-FSW-11, Contour/NGIMS Software Requirements Document GSFC/NGIMS-FSW-15, Contour/NGIMS Control Tables for Dummies. GSFC/NGIMS-FSW-20, Contour/NGIMS EEPROM ICD Our current release was tested and incrementally improved using the usual download methods. The PROM image was made using the set build procedures: clean the compilation library; recompile all to re-make the download version; re-test the download version; burn and verify the firmware chips; regression test the firmware, and Tag and place source code in Configuration Control, and hand the firmware image to Ms. Tan to make the flight PROMs. Build 3.2.05 has the following bug fixes and new features, referenced by Work Request (WR) number: WR-030 & WR-058 - Ion Mode software requirements are now implemented properly WR-031 - A Setrepeat command which would have resulted in all Repeat Counts = 0 is not just ignored, it is now nacked. WR-033 - FSW is now tolerant of illegal polling table values WR-051 - "Subscan counter" in telemetry actually counted IPs; it now counts Subscans. WR-052 - MET is now checked for validity. See Appendix for bit positions of new signals in ESW2. WR-055 - Beginning mass table numbers are now 0, 25, 50, 75 WR-056 - Valid setrepeat commands were NAK'ed - fixed. WR-057 - TCNum now increments in NPTM when command sent. WR-059 - High frequency bits were set arbitrarily - fixed. WR-060 - MUX readout in NPTM was offset by 2 - fixed. WR-061 - RF DC settings in round robin mode are now working as per spec. WR-062 & WR-097- Fractional mode mass sequence now working properly. WR-065 - Tableupdate upon boot up - a flag in EEPROM 0 at address FFFC should be set to AB12h to cause FSW to automatically do a TableUpdate on bootup. There is a bit in TM which indicates tables were updated - ESW13, bit 5 (see TM document). WHEN THIS FLAG IS SET TO THE RIGHT VALUE, THE {TABLEUPDATE} COMMAND IS NO LONGER NECESSARY. ALSO NOTE THAT OLD V3.1xx PATCHES ARE NO LONGER VALID. WR-075 - NPTM ESW word 108 fixed. WR-081 - Mid Encounter reboot reaction: Autostart, Round Robin & Fils & Detector On. There is a bit in TM which indicates Autostart was done - ESW13, bit 4 (see TM document). This feature causes the FSW to look at the Encounter bit from the S/C whenever it boots up (or is powered up). If Encounter is SET, the FSW will automatically go to default Round Robin mode, and will set DCON 0 bits according to the bits set in address 2EC4 in EEPROM 0. (This is new parameter #AMB-32; refer to the EEPROM ICD). CAUTION: THE USER SHOULD ENSURE THIS WORD IS SET TO THE PROPER VALUE (or set to 0000) BEFORE USING V3.205 WITH THE FLIGHT HARDWARE. WR-084 - Added Number Of Acks counter in TM. The format for Acknowledge packets is: MET (32 bits) vNbrTCs (16 bits) vNbrNacks (16 bits) Command_Count (16 bits) Command Echoes (3 words each). An OpCode of zero indicates the end of the Command Echo block. HKF-01 and HKF-02 (see TM document) hold Command Process Count & Command Execute Count, respectively. NPTM Group 26, word #8 also holds Command Execute Count. WR-090 - Fixed Ack packet stale data. WR-092 - QB requency bits were set in wrong place - fixed. WR-93 - Changed mass switchovers to below values: HF = 0..4.8 MF = 4.9..48.5 LF = 48.6+ WR-94 - Change to HF RFMon Valid in PROM: 2.0..4.5 AMU. WR-98 - Vac Frequency Transform: new equation. Also, The hooks for an onboard SCP are in; and the state of the S/C Encounter bit upon FSW startup is reflected in the (previously unused) vPriDet slot (was useful for testing; may not stay there for next release). Upcoming Enhancements: A) WR-063 - Spacecraft Potential Compensation B) WR-083 - Alt Boot requirements change: Copytable method. New EEPROM usage: AMB-35 2F00 ETCBoot Version# 1 AMB-36 2F01 ETCBoot EEPROM Checksum computed byf LOG2CTB program 1 AMB-37 2F02 Patch "FAT" (in "Copytable" format) <256 required for load image; 5*256 added for up to 256 patches. 256 + 1280 =1536 AMB-38 3502 Load Image (in "Copytable" format) to ~E100 <44000 AMB-43 FFFD ETCBoot Load Counter: decrements to zero on each reboot/power cycle. Value of zero means don't ETCBoot. 1 C) WR-085 - NGIMS Onboard Stored Command Processor APPENDIX ESW 2 - Subsystem Fail Bit Signal Name Description MSB 0 vFatalError Set when any of the fatal error conditions occur. Causes sounding of audible alarm in breadboard configuration. 1 vTMBuffOvflw Set when the allotted memory buffer area for TM packets would have overflowed. 2 vUserException An exception occurred. The User Exception number is reported in telemetry (ESW 7). 3 vMetLate Set when FSW detects that the S/C has sent the Mode & Time message too late (later than 1.125s) 4 vMetReverseJump Set when FSW detects that the MET received from the S/C is less than the most recently received MET. 5 vMetSame Set when FSW detects that the MET received from the S/C is equal to the most recently received MET. 6 vUSeqIntLate Set when Useq misses an external interrupt 7 vUSeqiOffline Set when FSW detects that MET from the S/C was not received 8 vUSeqError Set when any Useq error is detected. 9 v1750ME Set when the 1750 Machine Error interrupt occurs 10 vCmdBufferOverflw Set when too many commands have been sent too quickly and the internal FSW command buffer has overflowed. 11 vPromChecksumFail Bootstrap has reported that the checksum on PROM has failed. 12 vMET_In_TM_Fail Set when FSW detects that the MET it is packing into the subscan portion of a TM packet is less than the previously packed MET. 13 vMetForwardJump Set when FSW detects that the MET received from the S/C is greater than 1 second more than the most recently received MET. 14 vRteError unused LSB 15 vInstrumBitFail Set when any of the tests in the bootstrap BIT fail