ACIS Users Guide, Rev. A |
This section describes how to modify the ACIS software system configuration table, including controlling the power to the Front End Processors and the Detector Electronics Assembly Video Boards.
The System Configuration Table consists of a table of various settings. These settings are broken into the following components:
FEP and DEA Power
DEA Interface Board Settings
DEA Video Board Settings
The values in the table are modified using a "Change System Configuration" command packet, whose contents identify a set of items and their values to load into the table.
The instrument's System Configuration Task polls this table once per second to see if any thing has changed in the FEP/DEA Power, or DEA Interface Board settings since the last time the table was polled. If anything has changed, the task updates the corresponding power item, or item in the DEA interface board.
The DEA Video board settings, on the other hand, are only used at the start of a Science Run. At that time, they are used to configure the various Digital-to-Analog settings in the video board.
Description
The Front End Processors (FEPs) are split into two groups, FEPs 0, 1, 2 are pow ered by the Side-A DPA Power Supply, and FEPs 3, 4 and 5 are powered by the Side-B DPA Power Supply (refer to Section 3.1.1 for a description of powering the DPA Power supplies). Prior to enabling the power to a specific FEP, the appropri ate supply must be on. Once the FEPs supply is on, its power must be enabled by the BEP using an entry in the Change System Configuration software command.
The FEP Power entry of the Change System Configuration command consists of a bit-map, where bit 0 (lsb) corresponds to FEP 0, bit 1 corresponds to FEP 1, etc. If the bit in the map is 0, then the corresponding FEP is powered off. If the bit is a 1, then the FEP is powered on.
In order to avoid exceeding possible power limitations (there are currently no such limitations, but things change), the System Configuration task within ACIS always first powers off those FEPs which are to be off, and then powers on the FEPs which should be running. There is a 1 second delay between each power off command. There will never be less than a 1 second delay between each power on. However, it currently takes 7 to 10 seconds to load the current FEP software into each FEP, so it can take up to 1 minute to power on all 6 FEPs. If the FEPs are already in their desired states (i.e. off or on), the System Configuration task takes no action.
The Side-A and Side-B BEPs can both enable and disable power to the FEPs. In order to prevent a failure on one BEP from preventing the other being able to pow er on a FEP, the power enable outputs of the BEPs are logically OR'd. This can lead to confusion when selecting between BEPs. If both BEPs are powered (which they would have to be if you were using all 6 FEPs), and the previously selected BEP has power enabled to some of the FEPs, the currently selected BEP will not be able to power-off those FEPs. To avoid this condition, always issue a command to power off FEPs on the active BEP prior to selecting the other BEP.
An attempt to enable power to a FEP which does not have its corresponding power-supply on will generate a memory bus error exception on the BEP, which is trapped and handled by the BEP ONLY when the FEP is commanded on. In this situation, the System Configuration task will repeat its attempts to power on the FEP once a second. However, if a FEP is already on, and its power-supply is turned off, the next access to the FEP will cause a non-recovered bus error exception, resulting in a Fatal Error telemetry message, and watchdog reset of the BEP. Also note that, even when handled by the BEP, these bus errors will disrupt the transmission of a telemetry packet being sent to the RCTU, causing fill-pattern gaps in middle of the telemetry packets.
An un-handled memory bus exception (and resulting Fatal Error and watchdog re set) will also be caused if a FEP's power is disabled in the middle of a BEP to FEP memory access. In order to avoid this, disable FEP power only when there are no science runs active, and no commanded FEP memory loads or dumps in progress.
Commands
Change System Configuration
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_FEP_POWER itemValue = FEP power bit-map, where bits 0 - 5 correspond to FEPs 0 - 5, respectively, and bits 7 - 15 are unused. } }For example, to power-on all 6 FEPs:
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_FEP_POWER itemValue = 0x3f } }To power on FEP 0 only (and power off FEPs 1 .. 5, if they were on):
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_FEP_POWER itemValue = 0x1 } }
Engineering Telemetry
The only engineering telemetry items which indicate whether or not FEPs are up and running are the electric current channels. These can give an indication as to how many FEPs are on and in what state they are in, but do not give very specific information beyond that. Refer to Appendix A for a table of power levels under dif ferent instrument configurations.
Science Telemetry
Command Echo
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK (other values indicate an error) changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_FEP_POWER itemValue = FEP power bit-map } } }Software Housekeeping Statistics (may be spread across two consecutive reports)
swHousekeeping: TTAG_SW_HOUSE { startingBepTickCounter = varying endingBepTickCounter = startingBepTickCounter + 640 statistics[] = { swStatisticId = SWSTAT_VERSION count = 1 value = 11 (if not, System Patched, SEU or hardware) } { swStatisticId = SWSTAT_TIMERCB_INVOKE count = 1 value ~= 640 (~10 timer ticks/second) } { swStatisticId = SWSTAT_FEP_EXECMEM count = count of FEPs being powered on value = FEP Id of last FEP powered on } { swStatisticId = SWSTAT_FEP_WRITEMEM count = count of FEPs being powered on value = FEP Id of last FEP powered on } { swStatisticId = SWSTAT_FEPMAN_POWERON count = count of FEPs being powered on value = FEP Id of last FEP powered on } { swStatisticId = SWSTAT_FEPMAN_POWEROFF count = count of FEPs being powered off value = FEP Id of last FEP powered off } { swStatisticId = SWSTAT_FEPMAN_STARTLOAD count = count of FEPs being powered on value = FEP Id of last FEP powered on } { swStatisticId = SWSTAT_FEPMAN_ENDLOAD count = count of FEPs being powered on value = FEP Id of last FEP powered on } }If there were errors during the execution of the command, or an activity was using one of the FEPs which was being powered off, the Software Housekeeping statis tics may also include entries:
SWSTAT_FEPLOCK_TIMEOUT - FEP Wait: Wait for lock timed out SWSTAT_FEPLOCK_POWEROFF - FEP Wait: FEP has no power SWSTAT_FEPLOCK_RESET - FEP Wait: FEP is reset SWSTAT_FEPLOCK_NOIO - FEP Wait: FEP has no mailbox/ringbuffer SWSTAT_FEPREPLY_TIMEOUT - FEP Reply: FEP timed out SWSTAT_FEPREPLY_POWEROFF - FEP Reply: FEP has no power SWSTAT_FEPREPLY_RESET - FEP Reply: FEP is reset SWSTAT_FEPREPLY_NOIO - FEP Reply: FEP has no mailbox/ringbuffer SWSTAT_FEPCMD_MBOXSTATE - FEP Mailbox not empty (protocol error)If an attempt is made to enable FEP power, but its corresponding power supply is off, the following Software Housekeeping entry will be reported:
SWSTAT_INTR_FEPBUS - FEP access causes bus error exception on BEPIf power is removed while the FEP is being used during a run or memory load, a Fatal Error and Watchdog Reset may result:
Fatal Error
fatalMessage: TTAG_FATAL { bepTickCounter = BEP 10Hz Tick at time of report fatalCode = FATAL_INTR_FEP_BUS_ERROR fatalValue = Contents of R3000 Bad Virtual Address Register }
Warnings
Each FEP draws a certain amount of current. The current draw is different when the FEP is held in a reset state, versus when it is fully up and running. Refer to Appendix A for a table of power levels, given certain configurations.
If a FEP is powered off while its memory is being accessed, it will generate an un-han dled BEP memory bus exception, resulting in a Fatal Error message and BEP Watch dog reset.
If a FEP's power-supply is off when a command is issued to enable the FEP's power, the hardware will generate BEP memory bus exceptions, which will interfere with telemetry packet transmission (fill-bytes, 0xb7, in the middle of telemetry packets). The System Configuration task will retry the power enable once per second, which may continue to interfere with telemetry.
The FEP science 100KHz timestamp counters are synchronized to the BEPs 100KHz timestamp counter. They are reset to 0 whenever the BEPs counter's least significant 25 bits are 0. This occurs about once every 7 minutes. After a FEP is powered on, its counter is initially out-of-synch with the BEPs counter, and sometime within 7 minutes of being powered on, the FEP's counter will be set to 0. From then on, the reset of the FEP counter is synchronous with its rolling-over. This can lead to confusing initial FEP timestamps if a science run starts taking data within 7 minutes of a FEP being powered on.
Description
The Detector Electronics Assembly (DEA) consists of two interface boards, and 10 video boards, one for each CCD. Each interface board is powered separately, one from the DEA Side-A Power Supply, and the other from the DEA Side-B Pow er Supply. Only one interface board may be powered at a time. The video boards are powered in pairs via a set of latching relays on the primary interface board, and enabled via the active interface board. These relays operate from the current active power supply, and, whenever the supplies are switched, must be commanded to switch to the active supply.
Like the DPA Power Supplies, the DEA Power Supplies are commanded using hardware pulse commands, consisting of enable, on, off and disable. The video board relays and power enables, however, are set using the BEP's System Config uration Table, which is modified with a "Change System Configuration" command packet.
The following table indicates the relationships between the CCDs, relays and video boards:
Table 9. CCD, Video Board and Power Relay Relationships CCD CcdId Value Video Board Relay Set I0 CCD_I0 = 0 1 0 I1 CCD_I1 = 1 3 1 I2 CCD_I2 = 2 5 2 I3 CCD_I3 = 3 7 3 S0 CCD_S0 = 4 2 0 S1 CCD_S1 = 5 4 1 S2 CCD_S2 = 6 8 3 S3 CCD_S3 = 7 6 2 S4 CCD_S4 = 8 9 4 S5 CCD_S5 = 9 10 4 Because the ACIS software internally translates references to CCDs into DEA vid eo board ids, all command and telemetry references identify video boards using the corresponding CCD identifier. The DEA Video Power entry of the Change System Configuration command consists of a bit-map, where bit 0 (lsb) corresponds to CCD I0, bit 1 corresponds to CCD I1, etc. If the bit in the map is 0, then the corre sponding video board is powered off. If the bit is a 1, then the video board is pow ered on. Once the table entry is modified, the System Configuration Task first powers off all of the video boards which were indicated to be off, and then powers on the boards which were requested to be powered on. To avoid stressing the pow er supply, the System Configuration Task ensures at least a 1 second delay between each power command. Assuming that the power settings to all 10 boards are being modified, the entire power switch should take between 10 and 20 seconds.
The relays are set to point to the current power supply using the "Relay Set" entries of the Change System Configuration command. If an entry is set to a non-zero val ue, a command is issued to the DEA interface board to switch the corresponding relay, and the associated pair of video boards, to the currently active power supply. If an entry is set to 0, no action is taken. Since the relays are latching, they remain switched across power-cycles. The only way to "unswitch" a relay is to switch from one DEA Power Supply to the other.
Commands
To power on Side-A DEA Power Supply (and the primary DEA interface board) (NOTE: The Side-B DEA Power Supply must be off prior to issuing these com mands):
1DEPSAEN - High-level Pulse - Enable DEA Side-A Power Supply 1DEPSAON - High-level Pulse - Power On DEA Side-A Power SupplyTo power off the Side-A DEA Power Supply:
1DEPSAOF - High-level Pulse - Power Off DEA Side-A Power Supply 1DEPSADS - High-level Pulse - Disable DEA Side-A Power SupplyTo power on the Side-B DEA Power Supply (and the redundant DEA interface board) (NOTE: The Side-A DEA Power Supply must be off prior to issuing these commands):
1DEPSBEN - High-level Pulse - Enable DEA Side-B Power Supply 1DEPSBON - High-level Pulse - Power On DEA Side-B Power SupplyTo power off the Side-B DEA Power Supply:
1DEPSBOF - High-level Pulse - Power Off DEA Side-A Power Supply 1DEPSBDS - High-level Pulse - Disable DEA Side-A Power SupplyTo switch all of the video relays to the currently active interface board:
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_RELAY_SET_0 - CCD I0/S0 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_1 - CCD I1/S1 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_2 - CCD I2/S3 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_3 - CCD I3/S2 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_4 - CCD S4/S5 itemValue = 1 - Issue switch command } }Note that if "itemValue" is 0, then the entry has no effect on the relay setting.
To power on and off the DEA Video Boards ( NOTE: Either A or B side DEA Power must be on, but not both, and the relay corresponding to the desired CCDs must be switched to the active supply):
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_DEA_POWER itemValue = DEA power bit-map, where bits 0 - 9 correspond to CCDs I0 - S5, respectively, and bits 10 - 15 are unused. See Table 9. } }
Engineering Telemetry
DEA Power Supply Verifiers
1DEPSAEN Verifies DEA Power Supply Side-A enabled state 0 - disabled 1 - enabled 1DEPSAON Verifies DEA Power Supply Side-A powered state 0 - not powered 1 - powered 1DEPSBEN Verifies DEA Power Supply Side-B enabled state 0 - disabled 1 - enabled 1DEPSBON Verifies DEA Power Supply Side-B powered state 0 - disabled 1 - enabledThe only engineering telemetry items which indicates whether or not DEA Video boards (and by induction, their relay states) are up and running are the electric current channels. These can give an indication as to how many video boards are on and in what state they are in, but do not give very specific information beyond that. Refer to Appendix A for a table of power levels under different instrument configurations.
Science Telemetry
Command Echo from Relay Command
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK (other values indicate an error) changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_RELAY_SET_0 - CCD I0/S0 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_1 - CCD I1/S1 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_2 - CCD I2/S3 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_3 - CCD I3/S2 itemValue = 1 - Issue switch command } { itemId = SYSSET_CNTL_RELAY_SET_4 - CCD S4/S5 itemValue = 1 - Issue switch command } } }Command Echo from DEA Video Board Power Enable
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK (other values indicate an error) changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_DEA_POWER itemValue = DEA Video Board power bit-map } } }Software Housekeeping Statistics
swHousekeeping: TTAG_SW_HOUSE { startingBepTickCounter = varying endingBepTickCounter = startingBepTickCounter + 640 statistics[] = { swStatisticId = SWSTAT_VERSION count = 1 value = 11 (if not, System Patched, SEU or hardware) } { swStatisticId = SWSTAT_TIMERCB_INVOKE count = 1 value ~= 640 (~10 timer ticks/second) } { swStatisticId = SWSTAT_DEACCD_POWEROFF count = count of Video boards being powered off value = CCD Id associated with last Video turned off } { swStatisticId = SWSTAT_DEACCD_POWERON count = count of Video boards being powered on value = CCD Id associated with last Video turned on } }If an error is encountered while commanding the DEA, either to switch the relays, or control power to the video boards, the following housekeeping entry will be supplied:
SWSTAT_DEABOARD_ERROR - Error issuing command to DEA interfacewhere the 16 least significant bits of reported "value" field contain an internal software error code, and the most significant 16 bits of the "value" field contain the video board slot index (as opposed to the CCD Id), or "11" if the command was directed to the interface board.
If DEA Housekeeping is running (see Section 3.4.6) and is querying the state of the relays, it will be indicated as follows:
deaHousekeepingData: TTAG_DEA_HOUSE { deaBlockId = Id of parameter block used for the DEA Run commandId = Id of the command which started the DEA Run bepTickCounter = BEP Interrupt Count (10Hz tick) at start of DEA housekeeping acquisition entries[] = { query = { ccdId = CCD_DESELECT (selects the interface board) queryId = DEAHOUSE_CNTL_RELAY (reads state of relays) } value = state of relays (where bit 0 corresponds to relay set 0, bit 1 to relay set 1, etc. If a bit is 0, the relay set is not switched to the active supply. If a bit is 1, then the relay set is switched, and the corresponding video boards can be powered). } }While the video boards are not powered (or if errors occur), any active DEA Housekeeping queries to the video boards will result in a "value" field of 0xffff.
If errors occur in queries to the interface board, the "value" field will contain 0xffff (for example, if there's no DEA power supply turned on).
Warnings
Although there are protections against damage to the system, the DEA is not designed to operate with both DEA Power Supplies powered.
The DEA video relays stay switched to the most recent side across power-cycles. For example, if one powers DEA Side-B, switches the relays over, and then powers off the system, if one later powers DEA Side-A, all of the relays will remain switched to Side- B until a set of Change System Configuration entry commands are issued to switch them to the now active Side-A.
The Analog-to-Digital converters on the DEA video boards may be subject to radiation-induced latch-up. The current limiter circuits on the video boards protect the boards from any damage, but the ADCs will not recover without intervention. To recover from a latch-up, the user must issue a Change System Configuration command to power off the video boards, wait, and then issue another to re-power the video boards (NOTE: Alternatively, a warm-boot of the BEP could be used). Currently, it is not expected to be a problem. If latch-ups become a problem in-flight, the ground may want to include power-cycles of the video boards as part of the science run start-up and shutdown procedure.
Description
The DEA Video boards contain a set of option settings and Digital-to-Analog Converter (DAC) voltage settings, for use when clocking the CCDs. All of these settings, with the exception of four Analog-to-Digital Converter (ADC) video offset values, are maintained using the System Configuration table, and are modified using "Change System Configuration" command packets. Since the values used for the video offsets may have to be varied to accommodate changes in Science Run parameters, the four ADC video offset parameters for each configured video board are supplied with the parameter blocks for a given science run (see Section 4.1). The setting values are loaded into their respective video boards during the setup stage of a science run (i.e. after a "Start Science" command is received). Refer to the MIT 36-02205 DPA/DEA Interface Control Document for detailed descriptions of the DEA register options and conversion formulae.
Each item has a limit value (see Table 10). If an entry within a "Change System Configuration" command attempts to set a value beyond its limit, the command echo will report the condition and the offending item will be set to its maximum allowed value. The limits values are listed in Section 3.3.5 and can only be changed via Write Memory or Patch commands.
NOTE: There is currently a reasonable set of defaults for all values, which was used during the High-Resolution Mirror X-ray Calibration and Flat-Field X-ray Calibration activities at Marshall Space Flight Center. It is expected that the DEA setting values will rarely be changed.
Commands
Change System Configuration Video Board Register Options:
X := (CCD Id * (SYSSET_CCD_END - SYSSET_CCD_BASE + 1); changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CCD_SEQ_OFFSET+X - Video Sequencer Offset itemValue = 0..63 - Sequencer Cycle Number }, { itemId = SYSSET_CCD_ADC_OFFSET+X - Video ADC Offset itemValue = 0..63 - Sequencer Cycle Number }, { itemId = SYSSET_CCD_VIDEO_ENABLE+X - Video Channel Mask itemValue = selection bitmap - Bit 0 corresponds to channel A, bit 1 to channel B, etc. If 0, output from the channel is enabled, if 1, then the output from the channel is driven to 0. This is intended as a diagnostic tool only. }, { itemId = SYSSET_CCD_BJD+X - Back-Junction Diode itemValue = 0 or 1 - O = Off, 1 = On } }Change System Configuration Video Board DAC Levels:
X := (CCD Id * (SYSSET_CCD_END - SYSSET_CCD_BASE + 1); SYSSET_DAC_PIA_P+X - Image Array Parallel High Level SYSSET_DAC_PIA_MP+X - Image Array Parallel Low Level Positive SYSSET_DAC_PIA_M+X - Image Array Parallel Low Level Negative (actual low-level is SYSSET_DAC_PIA_MP - SYSSET_DAC_PIA_M) SYSSET_DAC_PFS_P+X - Framestore Parallel High Level SYSSET_DAC_PFS_MP+X - Framestore Parallel Low Level Positive SYSSET_DAC_PFS_M+X - Framestore Parallel Low Level Negative (actual low-level is SYSSET_DAC_PFS_MP - SYSSET_DAC_PFS_M) SYSSET_DAC_S_P+X - Serial Register High Level SYSSET_DAC_S_M+X - Serial Register Low Level SYSSET_DAC_R_P+X - Reset Gate High Level SYSSET_DAC_R_MP+X - Reset Gate Low Level Positive SYSSET_DAC_R_M+X - Reset Gate Low Level Negative (actual low-level is SYSSET_DAC_R_MP - SYSSET_DAC_R_M) SYSSET_DAC_SCP+X - Scupper SYSSET_DAC_OG_P+X - Output Gate High Level SYSSET_DAC_OG_M+X - Output Gate Low Level SYSSET_DAC_RD+X - Reset Diode SYSSET_DAC_DR0+X - Drain Output for Channel A SYSSET_DAC_DR1+X - Drain Output for Channel B SYSSET_DAC_DR2+X - Drain Output for Channel C SYSSET_DAC_DR3+X - Drain Output for Channel D
Engineering Telemetry
None
Science Telemetry
Command Echo if all settings within limits
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK (other values indicate an error) changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CCD/DAC_+X - Selected item itemValue = as sent - Commanded value }, ... } }Command Echo if one or more settings beyond limits
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_ITEM_CLIPPED changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CCD/DAC_+X - Selected item itemValue = as sent - Commanded value }, ... } }Software Housekeeping Statistics
swHousekeeping: TTAG_SW_HOUSE { startingBepTickCounter = random endingBepTickCounter = startingBepTickCounter + 640 statistics[] = { swStatisticId = SWSTAT_VERSION count = 1 value = 11 (if not, System Patched, SEU or hardware) } { swStatisticId = SWSTAT_TIMERCB_INVOKE count = 1 value ~= 640 (~10 timer ticks/second) } }If an entry within the command exceeded its limit value, the following software housekeeping entry will be supplied:
SWSTAT_SYSCFG_IN_CLIP - Configured setting beyond limit, where the reported "value" field is the last offending entry "itemId" field in the command packet.NOTE: Since the CCD Video Board parameters are loaded into the DEA when a science run is started, a SWSTAT_DEABOARD_ERROR won't be reported as an immediate result of the Change System Configuration command.
These parameters, once loaded into the DEA at the start of a science run, will affect the following DEA Housekeeping values:
DEAHOUSE_CCD_REG_0 - Register 0 Sequencer Control Contents DEAHOUSE_CCD_REG_1 - Register 1 Video ADC Control Contents DEAHOUSE_CCD_REG_2 - Register 2 Test Aid Contents DEAHOUSE_CCD_REG_3 - Register 3 Miscellaneous Contents DEAHOUSE_CCD_PIA_P - Image Array Parallel Voltage + Level DEAHOUSE_CCD_PIA_M - Image Array Parallel Voltage - Level DEAHOUSE_CCD_PFS_P - Framestore Parallel Voltage + Level DEAHOUSE_CCD_PFS_M - Framestore Parallel Voltage - Level DEAHOUSE_CCD_S_P - Serial Register Voltage + Level DEAHOUSE_CCD_S_M - Serial Register Voltage - Level DEAHOUSE_CCD_R_P - Reset Gate Voltage + Level DEAHOUSE_CCD_R_M - Reset Gate Voltage - Level DEAHOUSE_CCD_OG - Output Gate Bias Level DEAHOUSE_CCD_SCP - Scupper Voltage Level DEAHOUSE_CCD_RD - Reset Diode Voltage DEAHOUSE_CCD_DR0 - Drain Output Channel A Voltage DEAHOUSE_CCD_DR1 - Drain Output Channel B Voltage DEAHOUSE_CCD_DR2 - Drain Output Channel C Voltage DEAHOUSE_CCD_DR3 - Drain Output Channel D Voltage
Warnings
Although the settings are loaded into the instrument with a Change System Configuration command, the Video Board settings aren't actually loaded into the DEA hardware until a Start Science Run or Start Bias Only Run command is received, and the BEP starts setting up for the run.
During X-ray Calibration testing, it was discovered that it is necessary to "jitter" some of the video board voltages prior to starting to take science data. This action causes the CCDs to flush out built-up residual charge more effectively, leading to shorter start-up times. The most recent version of the instrument software now contains code which, when setting up for a science run, sets the necessary video board DACs to their "jitter" value, parallel clocks the CCDs for up to 11 seconds, and then restores the DACs to the values configured in the System Configuration Table. For more detail of Jitter DAC, see TBD.
Although the Video Board ADC Offset parameters are listed in the System Configuration Table, they are overridden by the corresponding parameters in a science run's parameter block, and as such, the values stored in the System Configuration Table never make it into the DEA.
Items whose values exceed their respective limits are clipped to the limit value.
Description
All items in the System Configuration Table have upper limits (no lower limits were required). If a "Change System Configuration" command is received which contains one or more entries whose value exceeds its limit, the system stores the maximum values for these items in their corresponding locations, and reports the occurrence in the "result" field of the "Command Echo" telemetry packet, as well as in an entry of the next "Software Housekeeping" telemetry packet.
Table Values
The following contains the limit values for the System Configuration Table entries:
Table 10. System Configuration Table Value Limits Change System Configuration: itemId Limit Value Effect SYSSET_DEA_POWER 0xffff no limit SYSSET_FEP_POWER 0xffff no limit SYSSET_CNTL_MASTER_CLK 0xffff no limit SYSSET_CNTL_FOCAL_TEMP 0xffff no limit SYSSET_CNTL_BAKE_TEMP 0xffff no limit SYSSET_CNTL_BAKE_ENABLE 0 cannot enable bakeout heater without patch or write-memory command SYSSET_CNTL_LED_ENABLE 0xffff no limit SYSSET_CNTL_HOUSE_HOLD 0xffff no limit SYSSET_CNTL_SIGNAL_PATH 0xffff no limit SYSSET_CNTL_CMDCLOCK_DISABLE 0xffff no limit SYSSET_CNTL_CMDDATA_DISABLE 0xffff no limit SYSSET_CNTL_RELAY_SET_0 0xffff no limit SYSSET_CNTL_RELAY_SET_1 0xffff no limit SYSSET_CNTL_RELAY_SET_2 0xffff no limit SYSSET_CNTL_RELAY_SET_3 0xffff no limit SYSSET_CNTL_RELAY_SET_4 0xffff no limit SYSSET_CCD_SEQ_OFFSET 0xffff no limit SYSSET_CCD_ADC_OFFSET 0xffff no limit SYSSET_CCD_VIDEO_ENABLE 0xffff no limit SYSSET_CCD_HOLD_HOUSE 0xffff no limit SYSSET_CCD_BJD 0xffff no limit SYSSET_CCD_HIGH_SPEED_TAP 0xffff no limit SYSSET_DAC_PIA_P 255 limited to 12.775V SYSSET_DAC_PIA_MP 255 limited to 12.775V SYSSET_DAC_PIA_M 140 limited to -7.025V SYSSET_DAC_PFS_P 255 limited to 12.775V SYSSET_DAC_PFS_MP 255 limited to 12.775V SYSSET_DAC_PFS_M 140 limited to -7.025V SYSSET_DAC_S_P 255 limited to 12.775V SYSSET_DAC_S_M 140 limited to -7.025V SYSSET_DAC_R_P 255 limited to 12.775V SYSSET_DAC_R_MP 255 limited to 12.775V SYSSET_DAC_R_M 140 limited to -7.025V SYSSET_DAC_SCP 255 limited to 12.775V SYSSET_DAC_OG_P 255 limited to 12.775V SYSSET_DAC_OG_M 140 limited to -7.025V SYSSET_DAC_RD 233 limited to 11.7V SYSSET_DAC_DR0 177 limited to 20.6V SYSSET_DAC_DR1 177 limited to 20.6V SYSSET_DAC_DR2 177 limited to 20.6V SYSSET_DAC_DR3 177 limited to 20.6V SYSSET_DAC_A_OFF 0xffff no limit SYSSET_DAC_B_OFF 0xffff no limit SYSSET_DAC_C_OFF 0xffff no limit SYSSET_DAC_D_OFF 0xffff no limit
Telemetry
If an entry in a "Change System Configuration Table" command exceeds its limit value, the result field of the corresponding Command Echo telemetry packet will be set to "CMDRESULT_ITEM_CLIPPED", and the next Software Housekeeping telemetry packet will contain a "SWSTAT_SYSCFG_IN_CLIP" entry, whose "count" field indicates the number of clipped entries, and whose "value" field indicates the last "SYSSTAT_" item which was clipped.
Description
The ACIS Focal Plane thermal controller uses coarse and fine temperature set-points to control the focal plane temperature. These set-points are maintained in the System Configuration Table, and are modified using entries within a "Change System Configuration" command. Within about 1 second of being modified, the System Configuration task relays the change into the DEA interface control board.
In addition to the normal 4 watt (maximum) heater provided to control the focal plane temperature to the commanded set-point, a bake-out 40 watt (maximum) heater may be switched on to operate in parallel with the normal heater. The bake-out enable command provides this switching function. The circuitry controlling the focal plane temperature is entirely separate from the choice of maximum heater power available.
In order to heat the focal plane up enough to bake off contaminants, the bakeout heater must be enabled. The desired state of this heater is also maintained in the System Configuration Table. Currently, the limit for this setting is set to 0, preventing a "Change System Configuration" command entry from enabling the heater. If the system is patched or poked (write-memory) to change the setting limit, the heater can be enabled through a subsequent "Change System Configuration" command. Once enabled, when the desired focal plane temperature is greater than the actual temperature, the heater will be turned on.
Refer to TBD for the conversion formulae from set-point values to resulting temperatures.
Commands
Change System Configuration to modify temperature set-points:
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_TEMP - Coarse Temp. Set-Point itemValue = temperature setting - Desired coarse temp. }, { itemId = SYSSET_CNTL_FOCAL_TEMP - Fine Temp. Set-Point itemValue = temperature setting - Desired fine temperature } } NOTE: For historical reasons, SYSSET_CNTL_BAKE_TEMP is badly named. It is not the "bake-out" temperature, but rather the coarse temperature set-point.Change System Configuration to disable the bake-out heater
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_ENABLE - Bakeout Enable itemValue = 0 - Disable heater } }Change System Configuration to enable bake-out heater
changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_ENABLE - Bakeout Enable itemValue = 1 - Enable heater }, } NOTE: Unless the limit table is modified, this command will result in a CMDRESULT_ITEM_CLIPPED, and the heater will not be enabled.
Engineering Telemetry
Temperature Measurements TBD
Commands to change the temperature set-points and enable or disable the Focal Plane bakeout heater will affect the overall power consumption of the system. Refer to Appendix A for a list of the various power configurations.
Science Telemetry
Command Echo for temperature set-points
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_TEMP itemValue = temperature setting }, { itemId = SYSSET_CNTL_FOCAL_TEMP itemValue = temperature setting } } }Command Echo for Bakeout Heater Disable
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_ENABLE itemValue = 0 } }Command Echo for Bakeout Heater Enable if limit table is as-launched
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_ITEM_CLIPPED changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_ENABLE itemValue = 1 } }Command Echo for Bakeout Heater Enable if limit table modified to allow Bakeout Enables
commandEcho: TTAG_CMD_ECHO { arrival = time command arrived (BEP 10Hz Ticks) result = CMDRESULT_OK changeConfigSetting: CMDOP_CHANGE_SYS_ENTRY { entries[] = { itemId = SYSSET_CNTL_BAKE_ENABLE itemValue = 1 } }Software Housekeeping
swHousekeeping: TTAG_SW_HOUSE { startingBepTickCounter = varying endingBepTickCounter = startingBepTickCounter + 640 statistics[] = { swStatisticId = SWSTAT_VERSION count = 1 value = 11 (if not, System Patched, SEU or hardware) } { swStatisticId = SWSTAT_TIMERCB_INVOKE count = 1 value ~= 640 (~10 timer ticks/second) } }If a Bakeout Enable entry is present, and the limit table had not been modified to allow it, the following software housekeeping entry will be supplied:
SWSTAT_SYSCFG_IN_CLIP - Configured setting beyond limit, where the reported "value" field is "SYSSET_CNTL_BAKE_ENABLE".If DEA Housekeeping is running (see Section 3.4.6) and is monitoring the Focal Plane temperature, the set-point changes and Bakeout Enable will affect the resulting temperature of the focal plane:
deaHousekeepingData: TTAG_DEA_HOUSE { deaBlockId = Id of parameter block used for the DEA Run commandId = Id of the command which started the DEA Run bepTickCounter= BEP 10Hz Tick at start of DEA housekeeping acquisition entries[] = { query = { ccdId = CCD_DESELECT (selects the interface board) queryId = DEAHOUSE_CNTL_ADC_FPTEMP_12 } value = Focal Plane temperature (board 12) } { query = { ccdId = CCD_DESELECT (selects the interface board) queryId = DEAHOUSE_CNTL_ADC_FPTEMP_11 } value = Focal Plane temperature (board 11) } }
Warnings
At the time of this writing, it is uncertain if one can turn on the Bakeout heater while running 6 FEPs and 6 CCDs without incurring the risk of blowing the fuses to ACIS. To ensure that this doesn't happen, prior to patching or modifying the Bakeout Enable's limit value:
First, power off the FEPs and Video Boards
Check the DPA and DEA electrical current draw to ensure that the FEPs and Video boards are off (see Appendix A for a list of current draws under various conditions).
Once the Bakeout Heater is enabled (NOTE: it may not actually be drawing current -this occurs only when the temperature set-point is greater than the current focal plane temperature), NEVER issue a command to power on the FEPs or Video Boards.
Ensure that prior to removing the patch:
Always disable the Bakeout Heater, restore the limit value to 0 and re-boot (warm or cold) the BEP prior to powering the FEPs and Video Boards. NOTE: Just restoring the limit table and performing a warm-boot is NOT SUFFICIENT to disable the Bakeout Heater. One must explicitly disable the Bakeout Heater (a cold-boot will disable the heater, however).
Note that, since the DEA has an independent power supply, once the heater is enabled and on, it will remain on even if the DPA is powered off.
Since contaminants tend to migrate to the coldest object, when baking out the focal plane, always heat the focal plane prior to enabling the Detector Housing heater.
Description
In addition to the settings described in the previous sections, the following DEA settings are maintained in the System Configuration table. These settings are intended for maintenance and diagnostic activities only, and should not be modified from their defaults without assistance from the ACIS software maintenance team. These settings will be loaded into the instrument with a "Change System Configuration" command, and loaded into the DEA by the System Configuration Task within 1 second of being modified in the System Configuration Table. They include:
SYSSET_CNTL_MASTER_CLOCK - Disable Signal clock to DEA during science SYSSET_CNTL_LED_ENABLE - LED to check for holes in filter (requires careful ground analysis of CCD images) SYSSET_CNTL_HOUSE_HOLD - Hold Housekeeping address control SYSSET_CNTL_SIGNAL_PATH - Select alternate signal path SYSSET_CNTL_CMDCLOCK_DISABLE - Disable Command Clock to video boards during science SYSSET_CNTL_CMDDATA_DISABLE - Disable data line to video boards during scienceThe following settings are loaded into the DEA's video boards during the setup stage of a science run:
SYSSET_CCD_HOLD_HOUSE - Hold Video Housekeeping address control (overridden by instrument software behavior) SYSSET_CCD_HIGH_SPEED_TAP - Enable high-speed tap (not useful in flight)
Commands
These items are modified as described in earlier sections above using entries within a "Change System Configuration" command packet.
Engineering Telemetry
none
Science Telemetry
The commands to modify these items are echoed as described in earlier sections, and can produce similar Software Housekeeping reports. Only the SYSSET_CCD_HIGH_SPEED_TAP entry will affect the DEA Housekeeping entries, by controlling bit 3 of the DEAHOUSE_CCD_REG_3 register read-back.