The Command and Data Handling (CDH) subsystem is responsible for providing onboard computer hardware that runs the flight software command and control tasks. its functional block diagram is as shown in Figure 1 below.
Figure 1: Command and Data Handling Subsystem Functional block diagram
Figure 2: CDH Model Philosophy
Prototyped and tested in phases B and C, used to evaluate major electrical components and system functionality
Hardware design
Procurement and Manufacturing of circuit boards
Design derived from engineering breadboard model. To be used as flight software testbed for software development on a finished unit
Implement any hardware changes to breadboard model
Procurement, manufacturing and assembling of circuit boards
Functional testing
Design derived from the engineering model
An engineering model (EM) FlatSat that contains EM versions of our electronics
To be used for integration and testing with other subsystems
Will persist throughout flight assembly and during on-orbit operations
Built with the automotive grade components
Will undergo all required flight acceptance readiness tests
Procurement, manufacturing and assembling of circuit boards
Functional FlatSat testing
Full Spacecraft Vibration testing
Full Spacecraft TVAC testing
The CDH hardware consists of the processor that runs the flight software command and control tasks as well as its associated peripherals. All CDH component parts are mounted on the CDH control board, forming the UMS-0077 assembly. The current design is the engineering model (EM) which will undergo rigorous functional testing in Phase C and D and provide a reference for the future flight model.
Figure 3 shows the basic electrical interfaces of the CDH control board with respect to other subsystem boards. For more details on CDH subsystem interfaces, refer to the CDH ICD and Satellite Harness systems. Figure 4 shows the block diagram of the CDH hardware, build around the SmartFusion 2 system on a chip (Soc). SoC embeds the ARM processor, FPGA fabric, Control Area Network (CAN) and Serial Peripheral Interface (SPI) modules that are used in the design.
The Altium Designer project for UMS-0077 EM can be downloaded here.
Figure 3: CDH interfaces (simplified)
The SoC is responsible for the main functionality of the CDH and is supported by memory chips, an Analog to Digital Converter (ADC), a Real Time Clock (RTC), CAN transceiver, crystal oscillators (XTAL) and DC/DC regulators . Power is provided from the POW subsystem through the distributed power bus and information is exchanged between CDH, POW and PLD subsystems over CANBUS. Finally, communication with the ADCS subsystem is achieved over SPI.
Figure 4: CDH Hardware block diagram
Microsemi's SmartFusion2 SoC is the main processing unit, this SmartFusion 2 is an ultra-low power, radiation tolerant SoC, with proven flight heritage [1]. The processing unit contains both a microcontroller subsystem (MSS) containing ARM Cortex-M3 as the hard-core processor and FPGA fabric, both of which are immune to single-event upsets.
Flight software will run on ARM Cortex M3, which is a 32-Bit processor that can execute 1.25 DMIPS/MHz. Running at 166-MHz, it can execute 207 DMIPS, which is enough for doing the satellite operations with a high margin. MSS also has a 64 KB embedded SRAM (eSRAM) as the general work memory, which has a Single Error Correction and Double Error Detection (SECDED) feature. As well as a 256 KB embedded nonvolatile memory (eNVM) as the boot Memory. The FPGA fabric provides a highly flexible platform for loading custom IP cores for SPI and CAN. The TQGI144 package allows for thermal expansion of the chip.
Based on requirement R-CDH-0002, At least 2 MB is required for image processing, so the Avalanche AS3016101 memory is designated for this purpose. For safeguard and system register memory, we use Everspin's MR25H40MDF MRAM sized at 4Mb, which is intrinsically immune to Single Event Upset (SEU) and qualified under AEC-Q100 [2]. Based on requirement R-CDH-0005, the CDH is expected to provide a mimimum of 100 MB for permanent data storage. Winbond's W25N01GVZEIG 1G-bit SPI Flash Memory is used for long term storage. 3 or 5 bitwise voting is used as a memory protection scheme and is qualified under AEC-Q100 [2].
One SPI soft-core in the FPGA fabric will interface with 8 channel ADC, MRAM, SRAM, flash memory, and RTC.
Some of the CDH computing concepts are:
Flight software is capable of disabling the Watchdog timer.
The CDH will load images from the camera modules over CAN Bus to the SRAM.
A soft decryption core will be placed in FPGA fabric.
A custom image processing soft-core will be placed in FPGA fabric.
One CAN Bus will be placed in FPGA fabric.
Based on the previously described model philosophy, three CDH models will be built. Firstly, an Engineering Breadboard Model is built, intended to test major electrical components and functionality. Secondly, an Engineering Model is built, which inherits the final form of the engineering breadboard model, and is intended to retest all components from the engineering breadboard model and give flight software a testbed for software development on a finished unit. Finally, a fight model will be built with the highest grade components and will undergo all required flight acceptance readiness tests.
Key driving requirements for the parts selection are detailed below. Followed by the complete list of the required parts and the critical components of the UMS-0077 assembly, highlighting important properties and operating temperature ranges.
The Bill of Materials for the UMS-0077 board is shown below.
It should be noted that while the material contents of some electrical hardware are unknown, all electrical components will be conformally-coated using Arathane 5750 allowing compliance with outgassing from non-metallic components and hazardous materials that may have not been identified.
Figure 5: 3D render of CDH Engineering model
The UMS-0077 Engineering model consists of 6 layers with the stack up and via configurations, shown in Figure 6. It is followed by layer configurations for each layer.
Figure 6: CDH Engineering model PCB Layer stackup and Via configurations
The test plan for the Engineering Model of CDH module is detailed below alongside the required Ground Support Equipment. Detailed progress documentation of the CDH EM tests can be found here.
The CDH FM design was derived from the CDH EM design. Upon testing the CDH EM model, some errors in the design were identified which required changes for the FM. The core of the design matches the UMS-0077 Engineering Model including the layout, communication protocols, and critical Integrated Circuits (Flash memory, MRAM, SRAM & SmartFusion SoC), however, some changes to hardware were necessary to fix errors identified while testing the CDH EM model.
These changes are outlined in the spreadsheet below. A summary of the changes includes:
Removing connectors and jumper pins not required on the FM.
Remove LEDs and physical reset switch.
Changing the footprint of U5 and U6 to match the correct dimensions from their datasheets.
Replacing the original spec'd out Avalanche SRAM (part #: AS3016101-0010X0PSAR) to that tested on the Engineering Model (Avalanche SRAM part #: AS3016204-0108X0PSAY)
Address two floating signals: VDDI3 and ADC_VREF.
Changing the pin assignments for Flash2 and ADC to allow FSW to use In-Application Programming.
The design schematics for the CDH FM model are embedded in the PDF below.
The complete list of the required parts and the critical components of the UMS-0267 FM assembly, highlighting important properties and operating temperature ranges.
Figure 7 shows the 3D render of the CDH FM assembly.
Figure 7: 3D render of CDH Flight model
Similar to the CDH EM model, the CDH FM model UMS-0267 consists of 6 layers with the stack up and via configurations, shown in Figure 8. It is followed by layer configurations for each layer.
Figure 8: CDH Engineering model PCB Layer stackup and Via configurations
Top Layer: Signal, 3V3 Power, and ground
Mid Layer 1: 1.2V Power plane, Analog ground plane and signal
Mid Layer 2: Signal
Mid Layer 3: Signal
Mid Layer 4: Signal
Bottom Layer: Ground
The CDH power budget is detailed below.
Voltage Supervisor Fails: the C&DH will have no way to turn back on
–Mitigation: Place multiple VSs in parallel and vote
–Mitigation: Keep the range of the VS as wide as possible
ADC Fails: the spacecraft may be forced into a state where there is no way to get out
–Mitigation: Add critical measurements on multiple ADC units.
–Mitigation: Perform statistical analysis on results
DC-DC Converter of FPGA Core Fails: the spacecraft will loose an entire subsystem
–Mitigation: De-Rate and monitor DC-DC converters closely
DC-DC Converter of DDR SRAM fails: the C&DH will loose high speed image processing memory.
–Mitigation: De-Rate and monitor DC-DC converters closely
–Mitigation: MRAM and un SECDED extra eSRAM can be used instead of DDR SRAM for image processing but with less performance.
Memory Fails: The C&DH will not be able to store any data
–Mitigation: Select the most reliable memory as possible
–Mitigation: Store data to multiple memory locations
–Mitigation: Use DDR SRAM and other memories only when needed
The FM CDH board will be conformally coated with Arathane 5750. The masking diagram for the CDH board is as follows:
After the CDH board is built, the subsystem itself can be assembled as follows:
Solder the harnessing connecting the CDH and COMMS boards using 4 cables of length 6 cm each (See video here).
Solder at the through-holes at CN3 for the following signals: COMM_PWR_NEG, COMMS_PWR_POS, COMMS_CAN_H and COMMS_CAN_L.
Install the COMMS board and CDH board into the COMMS/CDH module (See video here):
a. Install a threaded rod into each of the four corner mounting holes on the COMMS/CDH module.
b. Install the 5/8 inch long spacer onto the threaded rod to separate the COMMS board from the top of the module.
c. Slide in the COMMS board into the module, using the four corner mounting holes on the COMMS board and sliding board into the 4 threaded rods on the module.
d. Install the 7/32 inch long spacer onto the threaded rod to separate the COMMS board from the CDH board.
e. Slide in the CDH board into the module, using the four corner mounting holes on the CDH board and sliding board into the 4 threaded rods on the module.
f. Lock in the CDH and COMMS board into the module using 2-56 hex nuts on each of the 4 threaded rods.
Solder the CDH/COMMS data harnessing to the intermodule connector located on the upper surface of the PLD module as follows (See video here):
a. Solder 4 cables of length 6 inch each to the bottom side of the CDH board at location CN3 to account for the following signals: COMM_PWR_NEG, COMMS_PWR_POS, COMMS_CAN_H, and COMMS_CAN_L.
b. Solder 4 cables of length 3 inch each to the bottom side of the CDH board at location CN2 to account for the following signals: JTAG_TCK, JTAG_TDO, JTAG_TMS, and JTAG_TDI.
c. Solder 12 cables of length 6.5 inch each to the bottom side of the CDH board at location CN1 to account for the following signals: CDH_POW_POS, CDH_POW_POS, ADCS_SPI_MOSI, ADCS_SPI_SCK, ADCS_SPI_CS, ADCS_SPI_MISO, CDH_UART_RX, CDH_UART_TX, CDH_CAN_H, CDH_CAN_L, CDH_PWR_NEG, CDH_PWR_NEG.
d. Solder the open end of the 4 cables at CN3, 4 cables at CN2, and 12 cables at CN1 to the appropriate locations on the intermodule connectors located on the upper surface of the PLD module.
Flip over the the COMMS/CDH module onto the PLD module to complete the CDH/COMMS assembly.
Pre-Close-Up Verification Activities
Before the module is closed up, two verification activities must be performed:
Verify that CAN harness is connected.
Verify that ADCS SPI harness is connected.
Verify that CDH is mounted properly at its designated place in the structure.
[1] “Rad-Tolerant FPGAs | Microsemi.” [Online]. Available: https://www.microsemi.com/product-directory/fpga-soc/1640-rad-tolerant-fpgas#flight-heritage. [Accessed: 10-Jan-2019]
[2] “AEC-Q100 | Automotive ICs | Automotive Electronics Council (AEC) | Renesas,” Renesas Electronics. [Online]. Available: https://www.renesas.com/us/en/products/automotive/aec-q100.html. [Accessed: 10-Jan-2019]