How the Rest of Hubble works (some of it, anyway)

38
Feb. 25, 1999 1 How the Rest of Hubble works (some of it, anyway) Computers and Communications

description

How the Rest of Hubble works (some of it, anyway). Computers and Communications. Summary of on-board computers. DF-224/Coprocessor Executes spacecraft command timeline. Provides pointing control, power system control, gathers telemetry, provides routine safemode protection, and much more - PowerPoint PPT Presentation

Transcript of How the Rest of Hubble works (some of it, anyway)

Page 1: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 1

How the Rest of Hubble works(some of it, anyway)

Computers and Communications

Page 2: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 2

Summary of on-board computers

• DF-224/Coprocessor

– Executes spacecraft command timeline. Provides pointing control, power system control, gathers telemetry, provides routine safemode protection, and much more

• NSSC-I

– Executes SI command timeline. Provides safety monitoring, special purpose computing, and data interface for SIs.

• SI computers

– SI specific operations, science data formatting and processing, local health and safety monitoring.

• PSEA

– Provides safemode control for HST when DF-224 is down

Page 3: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 3

DF-224/Coprocessor• DF-224

– 3 redundant CPUs, only one used at a time

• Fixed point arithmetic

• Two’s complement representation of negative numbers

– 6 Memory Units

• Each physical memory unit has 8K 24 bit words of plated wire memory

• Only 4 units may be powered at once (32K words of available memory)

• Only 2 units are used for code (16K words)

– 3 redundant internal data busses, 2 redundant external data busses

– Programmed in DF assembly language

• Coprocessor

– Provides 8 memory modules (8K 24 bit words) addressable by both the DF and the coprocessor

– 2 redundant processors, each with a 386 and 1MB RAM (not visible to DF)

– Programmed in C

Page 4: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 4

Page 5: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 5

Page 6: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 6

DF-224 & COPROCESSOR BLOCK DIAGRAM

1 MB RAM

64 KB EEPROM 1

256 KB EEPROM 2

64 KB PROM

256 KB EEPROM 2

64 KB EEPROM 1

64 KB PROM

1 MB RAM

386386

Shared Memory

64K Words

Power Supply

386

Shared Memory

64K Words

Power Supply

Co- Processor

IDB-A

IDB-B

DF-224

Page 7: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 7

DF-224 Flight Software

• Only two executable images are on-board

– Safemode Utility(SMU) is essentially a boot mode

• memory dump, diagnostics, limited telemetry, software block load, etc.

• provides no control of HST (only used while PSEA is in control)

– Vehicle Support Software (VSS) provides all other functionality• Telemetry processing

• Command timeline execution

• Pointing control, including various safemodes

• Other support functions

Page 8: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 8

DF-224 Flight Software Structure

• Vehicle Support Software (VSS) is based on the use of 6 processing loops, executing at 6 different rates: 1kHz, 40 Hz, 10 Hz, 1 Hz, 0.1 Hz and 1/300 Hz.

• Functionality is assigned to a process based on the rate at which the task must be accomplished

• Each process has an allocated amount of time it can use

• Interrupt scheme gives high rate processes priority over lower rate processes, but design is such that no process should ever exceed its time allocation

• Executive checks on the use of time by each process, exceeding allocations will lead to a PSEA safemode entry

Page 9: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 9

ST Flight Software

kHz 40 Hz 10 Hz 1 Hz .1 Hz 1/300

Initial. kHz prc. TLM o/p Exec. msec. func. SIC&DH

Sched. Att. Control Commands Cmd. Gen. TLM u/d Safemode Veh. C.L.

Att. Ref. HGA - high SIC&DH FGS Law FGS Cmd. Gen. FGS Observer Optical Dist.

Low-rate Support to: Control Cmd. Gen. HGA Transforms Vel Aber/Par FHST Observer Safemode Sun-point Mom mgmt

null null

Page 10: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 10

Page 11: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 11

Telemetry processing

• Flight software collects data for the engineering telemetry stream

• 3 Rates are available

– 500 bps: safing only

– 4000 bps: original standard

– 32000 bps: current standard

• 1 kHz and 40 Hz processes control the collection and output of the data

– Operates on one byte quantities

– Handles both hardware and software data

– Table driven definition of telemetry format allows for changes with time

• 32000 bps format timing

– Cycles through 200 1-byte parameters in 50 msec. (one minor frame)

– Processes 4 1-byte parameters each cycle of the 1kHz process

– 1200 minor frames in a major frame (60 seconds)

Page 12: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 12

Minor frame Slot 1 Slot 2 Slot 3 Slot 4 Slot 5 Slot 6 Slot 7 Slot 8 Slot 9 Slot 10 ……… Slot 200

1 Sync Format Time Temp. 1 Volt. 1 Temp 2 Volt 2 memory1 memory1 memory1 ………. Temp. 27

2 Sync Format Time Temp. 1 Volt. 1 Temp 2 Volt 2 memory1 memory1 memory1 ………. Temp. 273 Sync Format Time Temp. 1 Volt. 1 Temp 2 Volt 2 memory1 memory1 memory1 ………. Temp. 27

etc.

Minor frame Slot 1 Slot 2 Slot 3 Slot 4 Slot 5 Slot 6 Slot 7 Slot 8 ………….. Slot 100 ……… Slot 200

1 Sync Format Time Temp. 1 Volt. 1 memory1 memory1 memory1 fgs1 status fgs1 status

2 Sync Format Time Temp. 2 Volt. 2 memory2 memory2 memory2 fgs1 status fgs1 status3 etc. etc. etc. Temp. 3 Volt. 3 memory3 memory3 memory3 fgs1 status fgs1 status

4 . . . Temp. 4 Volt. 4 memory4 memory4 memory4 fgs1 status fgs1 status5 . . . Temp. 5 Volt. 5 memory1 memory1 memory1 fgs1 status fgs1 status

6 . . . Temp. 6 Volt. 6 memory2 memory2 memory2 fgs1 status fgs1 status7 . . . Temp. 7 Volt. 1 memory3 memory3 memory3 fgs1 status fgs1 status

8 . . . etc. Volt. 2 memory4 memory4 memory4 fgs1 status fgs1 status9 . Volt. 3 fgs1 status fgs1 status

10 . etc. etc. etc. etc. . . . .

… . . . . ... . . . .

1199 Temp. 1199 Volt 5 memory3 memory3 memory3 fgs1 status fgs1 status1200 Temp. 1200 Volt 6 memory4 memory4 memory4 fgs1 status fgs1 status

1 Temp. 1 Volt 1 memory1 memory1 memory1 fgs1 status fgs1 status2 Temp. 2 Volt 2 memory2 memory2 memory2 fgs1 status fgs1 status

3

TDM telemetry format

Trivial Example

More Complicated Example

Measures 1200 temperatures each minute

Measures 6 voltages every 300 msec.

Reports 4 24-bit variables every 200 msec.

Reports FGS1 status every 25 msec.

Page 13: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 13

Command Types

• Hardware commands– Header + data word(s)

– Destination of command is encoded in header

– Header identifies type of hardware command• Low level discrete (on/off)

• High level discrete (on/off)

• Serial data

– Serial data commands include one or more data words (16 bits/word) which go to the designated hardware element

• Software commands– Header indicates which software function the command will go to

• 64 software commands are available

• Example: #51 command executes a small angle maneuver

– Variable number of data words are included, depending on the function of the command

Page 14: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 14

Executing Commands

• Real time commands are sent from the ground for immediate execution– Flight software uses checksum to validate the uplinked data

– Executive (40 Hz process) sends command to proper destination, either hardware or software

• Block loads are sent from the ground to load command data into stored command processors

– Each block load contains the address in memory to place the data

– Each block load can have up to 63 data words

– Checksum on block load is verified before block is stored in memory

– Block loads can be designated for any one of three stored command processors

– Each stored command has some timing information included with it

• Stored commands are executed by the stored command processors– Most stored commands are uplinked from the ground and executed once

– Some stored commands are procedures (e.g. guide star acquisitions) which are left on-board and reused many times

– Some stored commands are permanently resident and used to respond to safemode situations

Page 15: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 15

General attributes of command processors

• Each command packet has a time tag associated with it– Absolute execution time (in units of spacecraft clock ticks to one second accuracy)

– Delta time after previous command (in units of 1 second)

– A few commands implicitly have delta time tags of 0 seconds (immediate execution)

• Each command processor maintains a pointer to the next command to be executed– Execution time is computed based on type of time tag

– Execution time is in units of one second

– Processor can be idled by setting address pointer to 0

• Executive cycles through each of the processors each 40 Hz. cycle and checks if the current time matches the execution time

– If so, executes command by sending to appropriate hardware or software destination

– Moves pointer down to the next command and computes its execution time

• Command pointer for each processor can be moved by command in another processor or by the flight software itself

Page 16: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 16

DF-224 command processors

• Timed processor– Contains primary spacecraft timeline (slews, etc.)

– Does not support logical constructs, executes sequentially

– Pointer can be moved by software and other processes (used for safemode situations)

• Conditional processor– Supports logical constructs

• Test for success, wait for completion, time outs, limited do-loop support, etc.

• Used for guide star acquisitions

– Pointer can be moved by software and other processes• Used for loss of lock recovery

• Used for some safemode situations

• Special processor– Works just like the Timed Processor, used only occasionally for special tests

Page 17: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 17

Page 18: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 18

Physical memory Logical memory

0000

32 K

“Operational” SPC memory

Executing here

Stored Command Memory management

PMU-1

PMU-3

Cop-1

Cop-2

LMU-1

LMU-2

LMU-3

LMU-4

FuturePast

“temporal discontinuity”

Next load

Page 19: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 19

Power-on DF-224 CPU Reset OFF

Safemode Utility

Transition to VSS (to support deployment)

Drift Mode

S/W Sun Point

Pre-Normal Mode

Normal Mode (Science Operations)

S/W Inertial Hold or Reconfiguration

Deployment: Orbiter Vehicle Control

Safemode: PSEA Vehicle Control

VSS Vehicle Control Table 8.3-1

Table 8.6-1

Table 8.8-1

VSS Safemode

PSEA Vehicle Control

S/W Sun Point

Zero Gyro Sun Point

Stop Keep Alives PSEA

Spin Stabilized Sun Point

Table 8.7-1

DF-224 Vehicle control modes

Page 20: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 20

Additional DF-224 Processing

• SIC&DH Interface– Communications between DF-224 and NSSC-I is via PITs (Processor Interface Tables)

– One table goes each way each half second

– SSM PIT tells NSSC-I about DF-224 and spacecraft• Safing directions

• Spacecraft time

• Take data flag

• Maneuver request accepted

• Maneuver information

• Guide star information

– SIC&DH PIT tells DF-224 about SIs• Requests V2-V3 offsets

• Requests STR/SSR start/stop

• Indicates that a payload safing has been initiated

– Protocol indicates to each computer that the other is alive• DF-224 safes SIC&DH and SIs if it does not receive PIT

• NSSC-I safes SIs if it does not receive PIT

Page 21: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 21

Additional DF-224 Processing

• Pointing Control– Sensor data processing

– Control laws

– Outputs torque commands

• Solar Array rotations

• High Gain Antenna pointing– Spline commands to reposition HGAs

– Tracking uses HST and TDRSS ephemeris and pointing direction of vehicle to automatically track TDRSS

• Electrical Power System – Battery state of charge and trickle charge calculations (health and safety checks)

• FGS memory refresh– Fixes SAA induced errors in FGS memory

• Safemode checks

Page 22: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 22

NSSC-I Hardware

• NSSC-I is the computer that is a major element of the SIC&DH (Science Instrument Command and Data Handling System)

– SIC&DH has two redundant NSSC-Is, only one can be on at a time

– SIC&DH has two redundant STINTs (interface units), paired with the NSSC-Is

– Redundant unit has been off since launch

– SIC&DH has 8 memory units, each with 8k 18 bit words• Either NSSC-I can access full complement of memory

• SIC&DH hardware provides other standard services for SIs, under control of NSSC-I– Gathers science data from SIs and forwards on to spacecraft for recording or downlink

– Gathers and formats engineering data from SIs and forwards on to NSSC-I and spacecraft

– Provides command paths to SIs

Page 23: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 23

Page 24: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 24

NSSC-I Flight Software

• Executive functions– Scheduling of activities

• 40 Hz basic interrupt cycle

• Table indicates functions to be executed in each 25 msec window, to spread CPU load

– Engineering data collection and limit checks

– Science data collection/output

– Processes SI related stored commands

– Miscellaneous special tasks• Safing initiation

• PIT requests

• Re-use target offsets

• etc.

• Applications Processors– General facilities tuned to an SI

– SI specific software

Page 25: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 25

Engineering data collection

• NSSC-I acts as single point contact for DF-224/SSM, collecting and forwarding engineering data for all SIs.

– Small quantity of engineering data (RIU direct) bypasses NSSC-I

– NSSC-I can provide an additional level of subcommutation to the data

– Software variables can be collected as telemetry

• NSSC-I maintains a current value table in memory of all the SI engineering data.– This table is accessible to the SI specific application processors

• NSSC-I can maintain a table of up to 35 more parameters for each SI, which do not appear in the engineering telemetry

– This table is also accessible to the SI specific applications processors

– Used like the PITs, provides communication between SI computers and NSSC-I

• NSSC-I can maintain a table of up to 32 parameters per SI which are checked against allowable limits

– This table is accessible to the SI specific applications processors

– This table is typically used to provide SI health and safety checks, NSSC-I can respond to an out of limits by safing and/or error message

Page 26: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 26

Science Data Processing

• NSSC-I maintains the Standard Header Packet, and dumps it into the science stream on request

– Uplinked programmatic information for data identification

– Portions of each SIs Current Value Table

– Copies of the most recent PIT tables

– Unique data for each SI, provided by that SIs application processor

• NSSC-I can maintain the SI Unique Data Logs, and dumps them into the science stream on request

– 965 word log of data provided by an SI application processor

– Now used only by FOC

– Will not be used with future SIs (NICMOS UDL will be used for ASCS/NCS)

• NSSC-I can output science data processed by the NSSC-I– Used for GHRS target acquisitions

– Not used for any current (or future) SIs

Page 27: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 27

NSSC-I stored command processing

• Absolute time processor– Command execution times have one second resolution

– Implements basic SI timeline

– By convention, does not execute any commands which reconfigure SI hardware

– Can shut off entire processor, cannot shut off by SI

– Currently mostly populated by data which gets forwarded to SI computers

• Relative time processor– Commands have delta time specifications, no absolute specifications

– 6 different processors can run at once, one for each SI and one for SIC&DH itself

– Processors can be shut off individually (allows continuation of timeline with other SIs)

– Common Pool Command sequences (RTCSs) are routinely loaded from the ground • Some Common pool sequences are used for one-time execution (e.g. for a single exposure)

• Some Common pool sequences are permanently on-board

– SI unique sequences are part of the code and not routinely changed• Flight software can write SI-unique RTCSs which are then executed

Page 28: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 28

Page 29: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 29

SI Application Processors

• FOC– Telemetry gathering

– Health and Safety monitoring

– Thermal control

– Macro commands

• NICMOS– Communications with NICMOS CS (Control Section) via flags, etc.

– Builds MACRO commands for CS• Assembles and transmits data packet

• Sends activate command to CS

– Health and Safety monitoring

• STIS (same as NICMOS)

• COSTAR– Health and Safety monitoring

• WFPC-II– Shutter control during long exposures

– Health and Safety monitoring

Page 30: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 30

Safemode Protection Chain

• Computers pass “keep-alive” signals to one another

– Roughly at once/second or faster rates

– Value or flag which is different, at least on alternate cycles

– Positive indication that the machine is still running

• Machine higher up the chain will force a safing of machine lower on the chain if keep-alives stop

PSEA

DF-224

NSSC-I

WFPC-II NICMOS STIS FOC

Page 31: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 31

Communications

• System elements

– TDRSS

– High Gain Antennae

– Low Gain Antennae

– MA transponders

– SSA transmitters

• Block diagram– Options

– Redundancy

Page 32: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 32

Page 33: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 33

Page 34: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 34

Page 35: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 35

Page 36: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 36

Page 37: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 37

Page 38: How the Rest of Hubble works (some of it, anyway)

Feb. 25, 1999 38