architecture

Compute Carrier Board Architecture

The month of system architecture before schematics, for a Jetson Thor T5000 carrier in an industrial robot: consolidation map, pin budget, 48 V power tree, sequencing, memory bandwidth from first principles, stack-up, routing, thermal, safety, and bring-up.

00

The mandate: close three loops before the schematic

You own the compute carrier board: the board the Jetson Thor module plugs into. It powers and sequences the module, connects every sensor and actuator, and keeps the robot safe if the module misbehaves. In the month before schematics, a system architect closes three loops on paper:

  1. Interfaces: every sensor, actuator and peripheral lands on a real module resource with bandwidth and margin, with no pin-mux conflicts.
  2. Power: every rail has a source, a current and thermal budget, and a place in the sequence.
  3. Workload: the AI workload fits the module's fixed memory bandwidth and power envelope.

The outputs of that month: an interface control document, a pin-budget spreadsheet, a power tree with sequencing and budget, a stack-up and SI plan, a thermal budget, a safety concept, a boot and bring-up plan, and a BOM risk list (long-lead and single-source parts).

Say it this wayBefore I draw a schematic I close three loops: does every interface land on a real pin with margin, does every rail have a sequenced source with current and thermal headroom, and does the workload fit the module's fixed memory bandwidth. If any of those fail, the schematic is fiction.

01

System consolidation map

System consolidation mapSensors and actuators around the compute carrier board: eight GMSL cameras through two deserializers into Thor's CSI ports; joints and tactile hands on EtherCAT through a real-time MCU; IMU, audio and GNSS; NVMe over PCIe Gen5; 25GbE; wireless; USB debug; and a safety MCU driving STO.COMPUTE CARRIER BOARDJetson Thor T500014× Neoverse-V3AE · Blackwell128 GB LPDDR5X · 273 GB/s699-pin B2B connector40–130 WCameras ×82 MP · 30 fpsDeser ×2GMSL2 quadcoaxCSI-2 2× 4-laneMic array8 ch · 48 kHzI²S / TDMGNSSPPS + UARTUART · PPSJoints ×40+ 2 tactile handsEtherCAT slavesRT MCUEtherCAT master1–4 kHz loopsECATPCIe x1 / SPIIMUSPI · 1 kHzNVMe SSDGen5 x4 · 15.8 GB/sPCIe Gen5 x425GbE PHYor switchMGBELidar / uplinkservice portWi-Fi / 5Gfleet linkPCIe x1USB-Cdebug · recoveryUSB 3.2Safety MCUlockstepwatchdog · FSoEheartbeatheartbeat · statusDrives STOE-stop chainbrakes

The carrier is where three timescales meet:

Every arrow on this map is an impedance, sequencing, EMC and failure-mode decision on your board.

Say it this wayReflexes stay at the edge, joint control runs on a dedicated real-time MCU at 1–4 kHz, and the policy runs on Thor at tens of hertz. The carrier's job is to connect those three without letting the slow one disturb the fast ones.

02

Processor and pin budget

Module: NVIDIA Jetson T5000. 14-core Arm Neoverse-V3AE CPU at up to 2.6 GHz, 2,560-core Blackwell GPU, 2,070 TFLOPS FP4 (sparse), 128 GB 256-bit LPDDR5X at 273 GB/s, 40–130 W configurable, 100 × 87 mm with an integrated thermal transfer plate, and a 699-pin board-to-board connector.

You design to the module connector, not the SoC balls. The memory is on the module, so the hardest classic carrier task, DDR routing and byte-lane matching, is gone. Your high-speed burden is PCIe Gen5, 25GbE, CSI-2 and USB.

I/O available: PCIe Gen5 up to 8 lanes across controllers C1 (x1, root port), C2 (x1), C3 (x2, root port), C4 (x8) and C5 (x4); 4 × 25GbE; 16 lanes of MIPI CSI-2 (C-PHY 2.1 or D-PHY 2.1), up to 32 cameras with virtual channels; 3 × USB 3.2 and 4 × USB 2.0; HDMI 2.1 and DisplayPort 1.4a.

FunctionInterfaceModule resourceWidthCarrier deviceNote
StoragePCIe Gen5C5 x4 (RP/EP)4 lanesNVMe SSD, M.2 or soldered~15.8 GB/s
Real-time MCU linkPCIeC1 x1 (RP)1 laneRT MCU (EtherCAT master)Or SPI if the MCU lacks PCIe
WirelessPCIeC2 x11 laneWi-Fi 6E / 5G moduleM.2 Key E/B
ExpansionPCIeC3 x2 or C42–8 lanesFPGA or second NICKeep in reserve
CamerasMIPI CSI-216 lanes total2 × 4-lane used2 GMSL2 quad deserializers8 cameras via virtual channels
Cameras (alt.)Holoscan Sensor Bridge25GbE1 portCamera-over-Ethernet bridgeUp to 20 cameras
Uplink / lidarMGBE 25GbE4 ports available1 used25G PHY or small switchSFP or on-board PHY
USBUSB 3.2 + 2.03 + 4 ports1–2 usedUSB-C debug and recoveryRecovery strap on this port
AudioI²S / TDMaudio interface1 bus8-channel mic ADC array
GNSS / timeUART + GPIOUART, PPS input3 pinsGNSS receiverPPS for time sync
ControlI²C, SPI, UART, GPIOmany~40 pinsPMIC telemetry, EEPROM, fans, LEDs, safety linkConsole UART to header
Power and sequencingControl signalsdedicated pins~12 pinsMODULE_POWER_ON, CARRIER_POWER_ON, SYS_RESET_N, PERIPHERAL_RESET_N, POWER_BTN_N, MODULE_SHDN_N, VDDIN_PWR_BAD_N, SYSTEM_OC_N, THERM_ALERT_N, MODULE_SLEEP_N
Power inputSYS_VIN_HV / MV / SVmany parallel pins—12 V, 5 V, 3.3 VSpread current across pins
ReturnGNDmajority of pins—Ground planesEvery high-speed pair needs adjacent grounds

Build the budget as a spreadsheet: one row per connector pin (pin, module function, net name, voltage domain, carrier device). Then check two things: every function has enough lanes, and no two functions need the same shared lane. High-speed lanes (PCIe, USB 3.2, 25GbE) come from shared UPHY lanes, so confirm the pin-mux configuration supports your exact combination before committing.

Say it this wayThe memory's on the module, so I don't route DDR. My pin budget is about PCIe Gen5, 25GbE, CSI and USB, and the first pass is a lane-conflict check because those share UPHY lanes. I confirm the mux supports my combination on paper before layout.

03

48 V power tree and the interface map

Power tree from the 48 V robot bus48 V input protection feeds a 48-to-12 V bus converter. 12 V feeds a sequenced load switch to SYS_VIN_HV, an always-on 3.3 V buck for SYS_VIN_SV and the safety and real-time MCUs, a 5 V buck for SYS_VIN_MV, carrier rail regulators enabled by CARRIER_POWER_ON, and filtered power-over-coax for cameras.48 V busrobot battery/ supplyInput protectionTVS · reverse pol.hot-swap / eFuse48→12 Vbus converter 4:1~97% · 17 A maxLoad switchsequencedSYS_VIN_HV · 12 VThor module, ≤130 WBuck 12→3.3always-onSYS_VIN_SV · 3.3 VThor + safety/RT MCUBuck 12→5enabled after HVSYS_VIN_MV · 5 VThor moduleCarrier buckson CARRIER_POWER_ON3.3 / 1.8 / 1.2 / 1.0 VPHYs, deser, NVMe, miscPoC filters12 V, per cameraGMSL power-over-coax8 cameras, ~2.5 W each

Where each rail comes from

Power budget

LoadBasisPower
Thor T5000maximum power mode130 W
NVMe Gen5 SSDsustained write12 W
Cameras ×8~2.5 W each over PoC20 W
Deserializers ×2~1.5 W each3 W
RT MCU + EtherCAT PHYsMCU + 2–4 PHYs3 W
25GbE PHY / switch5 W
Wi-Fi / 5G5 W
Misc (fans, MCUs, LEDs)5 W
Total loadsum183 W
Total from 48 V183 W ÷ ~0.92 overall conversion efficiency~200 W, ~4.2 A at 48 V

Master interface map, highest bandwidth first

InterfaceTotal bandwidthPer-lane / line rateKey connection criteriaSignal-integrity strategy
LPDDR5X (on module)273 GB/s8,533 MT/s per pin × 256 bitsOn the module. Nothing to route.Not your problem; sets the workload limit (section 05).
PCIe Gen5 x4 (NVMe)15.8 GB/s per direction32 GT/s, 128b/130bRoot port C5; 100 MHz HCSL refclk; AC caps at TX; PERST#, CLKREQ#~36 dB end-to-end loss budget at 16 GHz. Low-loss laminate, stripline, backdrilled vias, ground-stitched transitions, retimer if the channel exceeds budget.
25GbE (MGBE)25 Gb/s25.78 Gbaud NRZPHY or SFP28; reference clock; magnetics-free for SFPChannel operating margin analysis, short traces, low-loss material, controlled 100 Ω, no stubs.
MIPI CSI-2 (D-PHY)up to 40 Gb/s aggregateper lane, D-PHY 2.1Deserializer to Thor, short on-board runLength-match lanes to clock, 100 Ω differential, continuous ground, keep under a few inches.
GMSL2 (camera links)6 Gb/s per link6 Gbaud forward, 187.5 Mb/s backCoax 50 Ω with power-over-coax50 Ω coax launch, PoC inductor filter sized for camera current, connector ground bonding.
USB 3.2 Gen210 Gb/s10 GbaudUSB-C with recovery strap90 Ω differential, AC caps, ESD with low capacitance at the connector.
1 GbE (service)1 Gb/s4 pairs, PAM-5PHY + magnetics100 Ω pairs, magnetics near connector, Bob Smith to chassis.
EtherCAT (to joints)100 Mb/s125 Mbaud MLT-3Dedicated MII PHYs on the RT MCU, shared 25 MHz clockMagnetics near connector, chassis-bonded shield, keep away from motor power, EEE off.
CAN-FDup to ~5–8 Mb/sdifferential busTransceiver, 120 Ω termination at endsSplit termination for EMC, common-mode choke.
SPI (IMU, safety link)10–50 Mb/ssingle-endedShort point-to-pointSeries termination at source, ground-referenced, keep short.
I²C / UART0.4–3.4 Mb/s / 115 kb/s–3 Mb/sopen-drain / single-endedPull-ups sized for bus capacitanceRise-time check, level shifting across domains.

The real engineering effort concentrates at the top of this table: PCIe Gen5 and 25GbE. Everything below 1 Gb/s is ordinary good practice.

Say it this wayThe 48 V bus comes in through protection to a 4:1 bus converter. 12 V feeds the module through a sequenced switch, 3.3 V is always-on and comes up first, 5 V follows, and the carrier rails wait for the module's CARRIER_POWER_ON. Whole board is about 200 W from 48 V, so about 4 A on the harness.

04

Power sequencing and startup

Power-up sequence timingWaveforms for 48 V input, 12 V bus, SYS_VIN_SV, SYS_VIN_HV, SYS_VIN_MV, MODULE_POWER_ON, CARRIER_POWER_ON, carrier rails, SYS_RESET_N and PERIPHERAL_RESET_N rising in order.48V_IN12V_BUSSYS_VIN_SV 3.3 VSYS_VIN_HV 12 VSYS_VIN_MV 5 VMODULE_POWER_ONCARRIER_POWER_ONCarrier rails PGSYS_RESET_NPERIPHERAL_RESET_Nt0≈60 mst2>50 ms RCmodulecarrier~19 mslastOrder and delays as observed in a published T5000 carrier bring-up; confirm against the Thor design guide (DG-12084).
  1. 48 V arrives; protection and the bus converter bring up the 12 V bus.
  2. SYS_VIN_SV (3.3 V) comes up first. Safety and RT MCUs start booting.
  3. SYS_VIN_HV (12 V) is switched on to the module.
  4. SYS_VIN_MV (5 V) follows.
  5. MODULE_POWER_ON asserts (an RC delay of more than 50 ms after 5 V in the published bring-up).
  6. The module's internal sequencer runs, then it asserts CARRIER_POWER_ON.
  7. Carrier regulators turn on; their power-goods combine.
  8. The carrier releases SYS_RESET_N (about 19 ms later in the published bring-up).
  9. PERIPHERAL_RESET_N releases carrier peripherals last.

Signals you must handle

The order and delays above come from a published T5000 carrier bring-up discussion on NVIDIA's forum. Treat them as illustrative and confirm against the Jetson Thor Series Modules Design Guide (DG-12084) before design.

Say it this wayAlways-on 3.3 V first, then 12 V, then 5 V, then MODULE_POWER_ON. The module runs its own sequencer and hands me CARRIER_POWER_ON; only then do my peripheral rails come up, and I release SYS_RESET_N on their power-goods. Peripherals never get ahead of the module.

05

Memory bandwidth, from first principles

Step 1 · Sensor ingest is not the bottleneck

Ingest per stream = bytes per sample × samples per second. Cameras dominate.

SourceDerivationRate
Cameras ×82,000,000 px × 1.5 B × 30 fps = 90 MB/s each720 MB/s
Tactile hands ×2~0.37 MB/s per hand0.7 MB/s
Joints ×40 (EtherCAT)40 × (12 + 12) B × 1,000 Hz0.96 MB/s
Microphones ×88 × 48,000 samples/s × 3 B1.15 MB/s
IMU20 B × 1,000 Hz0.02 MB/s
GNSSa few hundred bytes per second~0 MB/s
Total ingestsum~723 MB/s ≈ 0.72 GB/s

0.72 GB/s ÷ 273 GB/s ≈ 0.26%. Even if each frame is written once and read three to five times by ISP, encoder and GPU, that is about 3–4 GB/s, under 1.5% of the memory bandwidth. Sensors do not size the memory system.

Step 2 · Where 273 GB/s comes from

Check: 32 B × 4,266 MT/s would give only 136 GB/s, so the transfer rate must be 8,533 MT/s.

Step 3 · Where 9 GB of weights comes from

PrecisionBytes per parameter10 billion parameters
FP16 / BF16220 GB
FP8 / INT8110 GB
FP40.55 GB
Realistic mixFP4 bulk, some layers at FP8/FP16, scales, vision encoder≈ 9 GB

Ten billion parameters is an assumption for a large vision-language-action policy. Ask for the real model size and precision; the rest of the math follows.

Step 4 · Why it is memory-bound, not compute-bound

Step 5 · The naive rate does not fit, and what does

Fixes, all above the board level:

If it still does not fit, the answer is a different module or a smaller model. No carrier-board change creates memory bandwidth.

Say it this waySensors are about a quarter of a percent of memory bandwidth, so the model sizes the memory system. 273 is 32 bytes times 8,533 MT/s. A 10-billion-parameter policy at mostly FP4 is about 9 GB, and at batch one it's about 4 FLOP per byte against a machine balance near 7,600, so it's memory-bound. Fifty inferences a second needs 450 GB/s and doesn't fit. Action chunking at 10 Hz needs 90 GB/s and does. If that's not enough, it's a module or model decision, not a board fix.

06

Layer stack-up

Fourteen-layer stack-upLayer stack from top to bottom showing signal layers, ground planes and power planes with their use.L1SignalTop: components, short CSI breakout, connector escapeL2GNDSolid reference for L1 and L3L3Signal · HSPCIe Gen5, 25GbE stripline (low-loss)L4GNDReference; stitched to L2L5Signal · HSUSB 3.2, CSI-2, GMSL breakoutL6GNDReferenceL7Power12 V (SYS_VIN_HV) 2 oz, wide pourL8Power5 V / 3.3 V / 1.8 V split planesL9GNDReference; returns for L10L10SignalLow-speed: I²C, SPI, UART, GPIO, power controlL11GNDReferenceL12SignalEtherCAT MII, misc, escapeL13GNDReference for bottomL14SignalBottom: decoupling, test points

Say it this wayFourteen layers so every high-speed layer has a solid adjacent ground and power planes sit against ground. Low-loss laminate on the Gen5 and 25G layers, backdrilled vias, 85 Ω for PCIe and 100 Ω for Ethernet and CSI, and 2-ounce copper on the 12 V plane.

07

High-speed routing plan

Say it this wayI budget the PCIe Gen5 channel before layout and add a retimer only if simulation says the loss exceeds budget. Deserializers sit next to the module connector so CSI stays short, coax connectors on the edge, and the 48 V converter is in its own corner away from the cameras.

08

Thermal

Say it this wayModule heat goes through its transfer plate into the chassis. On the carrier, the converter, SSD and deserializers are the hot spots; each gets a short path to the enclosure and a thermistor, and the power-mode policy steps the module down before anything throttles.

09

Safety island

Say it this wayThor is never in the safety path. A lockstep MCU on the always-on rail owns STO and the E-stop, watches heartbeats from Thor and the real-time MCU, and trips the drives if either goes quiet. It has its own power, clock and reset.

10

Boot, bring-up and test

Boot and release-to-motion sequenceThree lanes: safety MCU boots first and holds STO; Thor boots through BootROM, MB1, MB2, UEFI, Linux and the robot stack; the real-time MCU boots, brings EtherCAT to Operational with drives held safe; motion is enabled only after heartbeats and self-tests pass.Safety MCUSelf-testHold STOWatch heartbeatsRelease STOThorBootROMMB1 / MB2UEFILinux + stackRT MCUBoot flashECAT Init→PreOpSafeOp (DC lock)Op
11

How to carry this in the room

Top riskHow I'd retire it
Model does not fit memory bandwidthAgree model size, precision and inference rate with the ML team in month one
PCIe and UPHY lane conflictsPin-mux check before connector assignment
Power sequencing faultsFollow the design guide; bring up with no module first
Thermal throttling in a sealed bodyThermal model with mechanical in month one
Control loop disturbed by inference loadEtherCAT on a dedicated RT MCU
Long-lead or single-source partsSecond sources for converters, PHYs and SSD

Questions to ask them: Which module and power mode are you targeting? What model size, precision and inference rate does the ML team plan? How many joints and cameras, and what control rate? Is EtherCAT the joint bus? What safety level came out of the risk assessment? What's the enclosure and cooling path?

Say it this wayI'd spend the first month closing interfaces, power and workload on paper, retire the top risks with the ML, mechanical and controls teams, and only then start schematics.

12

References