Artifacts

Published Reports and Visuals

Central access point for antenna simulations, implementation summaries, timing baselines, and board-day artifact references.

Current FPGA implementation status

Build 24 — 15-Point Engineering Report

Status: PASS — Production-safe bitstream generated

Date: 2026-03-20  |  Commit: 0745cc4  |  Device: XC7A200T-2FBG484I  |  Vivado 2025.2

1. Timing Summary

Clock DomainPeriod (ns)WNS (ns)WHS (ns)WPWS (ns)Status
clk_100m10.000+0.287+0.056+3.870PASS
clk_mmcm_out0 (400 MHz)2.500+0.179+0.092+0.684PASS
adc_dco_p+0.904+0.361PASS
ft601_clk_in10.000+0.347+0.094+4.500PASS
clk_120m_dac+1.755+0.056+3.666PASS

TNS = 0.000 ns, THS = 0.000 ns across all domains. Zero failing endpoints.

2. Utilization (Post-Route)

ResourceBuild 21 (baseline)Build 24AvailableUtil%Delta
Slice LUTs6,1928,558134,6006.36%+2,366 (+38%)
Slice Registers (FFs)9,06410,384269,2003.86%+1,320 (+15%)
Block RAM Tiles16173654.66%+1
  RAMB36E1123653.29%
  RAMB18E1107301.37%
DSP48E113914274019.19%+3
Bonded IOBs17828562.46%
BUFGCTRL53215.63%
MMCME2_ADV11010.00%

CFAR added +1 BRAM18 (magnitude buffer, 2048×17), +3 DSP48E1 (alpha multiply + cross-multiply for GO/SO), +2,366 LUTs (sliding window logic, state machine, mode mux), +1,320 FFs (pipeline registers, counters, window sums).

3. DSP48E1 Breakdown by Module

ModuleDSP48E1Notes
DDC (FIR I + FIR Q + CIC + NCO)117Dominant consumer: 47+47 FIR taps + 10+10 CIC + 2 DDC + 1 NCO
Matched Filter Processing Chain128 FFT butterflies + 4 freq-domain multiply
Doppler Processor + FFT108 FFT butterflies + 2 magnitude
CFAR Detector3alpha*noise multiply + GO/SO cross-multiply (pipelined)
System Top + Other0
Total14219.19% of 740 available

4. BRAM Breakdown by Module

ModuleRAMB36RAMB18TilesNotes
Doppler Processor404Range-Doppler accumulation buffers
Matched Filter (mf_dual)2107Coefficient + I/Q data BRAMs
CFAR Detector101Magnitude buffer (2048×17 bits)
Transmitter (chirp mem)101Chirp waveform storage
FFT Engines (2×)404Twiddle factor + butterfly BRAMs
Total1210174.66% of 365 tiles

5. Power Estimate

CategoryBuild 21Build 24
Dynamic Power0.591 W
Device Static0.163 W
Total On-Chip0.732 W0.754 W
Junction Temperature26.9°C
Max Ambient (TJA)83.1°C

+22 mW (+3%) from CFAR logic. Well within thermal budget.

6. Critical Path Analysis

The tightest path (WNS = +0.179 ns) is in the clk_mmcm_out0 (400 MHz) domain: NCO sine LUT index register → LUT6 → sin_abs_reg. This is the same path that was critical in Build 21 and is unrelated to CFAR.

The clk_100m domain (where CFAR operates) has +0.287 ns slack. The Build 23 critical path (cfar_inst/leading_sum → cross-multiply → alpha*noise DSP, WNS = -0.309 ns) has been completely eliminated by the pipeline fix.

7. Post-Synthesis vs Post-Route Comparison

MetricPost-SynthPost-Route (final)
WNS (setup)+0.123 ns+0.179 ns
WHS (hold)-0.076 ns (29 violations)+0.056 ns (0 violations)
LUTs8,6718,558
FFs10,43310,384

Post-route phys_opt resolved all 29 hold violations and improved setup slack by 56 ps. LUT/FF count reduced slightly by optimization passes.

8. DRC (Design Rule Checks)

184 checks performed. 0 errors, 0 critical warnings. Advisory/warning breakdown:

9. Methodology Report

10. Congestion

No congestion windows found above level 5. The design is well-placed with no routing pressure. XC7A200T provides ample routing resources at 6.36% LUT utilization.

11. Route Status

12. Logic Level Distribution (Top 1000 Worst Paths)

ClockPeriodLvl 0Lvl 1Lvl 2Lvl 3Lvl 4Lvl 5
clk_100m10.000 ns2500000
clk_mmcm_out02.500 ns80810831983
ft601_clk_in10.000 ns0002123

The clk_100m domain has only level-0 paths in the top-1000 worst — CFAR pipeline fix reduced logic depth to register-to-register transfers. The 400 MHz DDC domain remains the most timing-critical area.

13. Build-Over-Build Comparison

MetricBuild 21 (baseline)Build 23 (CFAR, failed)Build 24 (CFAR + pipeline)
WNS (ns)+0.156-0.309+0.179
WHS (ns)+0.064+0.056
LUTs6,1928,668 (post-synth)8,558
FFs9,06410,411 (post-synth)10,384
BRAM Tiles1617 (post-synth)17
DSP48E1139142
Power (W)0.7320.754
BitstreamSafeUnsafe (timing fail)Safe

14. CFAR Integration Resource Cost

ResourceCFAR Module Only% of DeviceNotes
LUTs2,2291.66%Sliding window sums, GO/SO cross-multiply, state machine, mode mux
FFs1,2810.48%Pipeline registers, window counters, sum accumulators, noise_sum_reg
RAMB36E110.27%Magnitude buffer: 2048 entries × 17 bits
DSP48E130.41%alpha×noise, leading cross-multiply, lagging cross-multiply

Total CFAR cost: 2.82% of device LUTs, 0.48% of FFs, 0.27% of BRAM, 0.41% of DSPs. Minimal impact on headroom.

15. Verification Summary

Test SuiteTestsChecksStatus
FPGA regression (run_regression.sh)2222/22 PASS
CFAR standalone (tb_cfar_ca.v)142323/23 PASS
Digital gain (tb_rx_gain_control.v)3232/32 PASS
Threshold fallback (tb_threshold_detector.v)2222/22 PASS
System E2E (tb_system_e2e.v, Group 14)136767/67 PASS
Real-data co-sim: Range FFT11,0241024/1024 exact
Real-data co-sim: Doppler12,0562056/2056 exact
Real-data co-sim: Full-chain12,0572057/2057 exact
MCU regression2020/20 PASS

5,281 individual data checks across all RTL test suites. Zero failures. Real-data co-simulation confirms bit-exact match with Python golden reference across the entire signal processing chain.

Build 24 Artifacts

Note: TCL crashed at step 13/15 (extract_files missing parameter) after all reports were generated. Non-critical scripting bug; all implementation, optimization, and bitstream generation completed successfully.

Board-day artifact inventory

Artifact Source path Day-0 use Status / note
Production-target XDC9_Firmware/9_2_FPGA/constraints/xc7a200t_fbg484.xdcConstraint source of truth for the production FPGA targetTracked and validated after Build 16 cleanup port
FPGA programming flow9_Firmware/9_2_FPGA/scripts/program_fpga.tclPrograms the device and reports DONE / INIT_COMPLETE / probes presencePrimary operator-facing programming script
Debug probe insertion flow9_Firmware/9_2_FPGA/scripts/insert_ila_probes.tclUsed when generating or refreshing debug-capable imagesKeep matched with the selected debug bitstream
FPGA regression runner9_Firmware/9_2_FPGA/run_regression.shPre-arrival regression evidence for the tracked FPGA baseline22 / 22 passing on the current tracked branch (includes CFAR + E2E tests)
MCU regression harness9_Firmware/9_1_Microcontroller/tests/MakefilePre-arrival firmware regression evidence before flashing hardware20 / 20 passing on the current tracked branch
Bring-up logging macros9_Firmware/9_1_Microcontroller/9_1_1_C_Cpp_Libraries/diag_log.hDefines the main first-power-on log vocabulary used over USART3Observation-only instrumentation layer
Board-day worksheetdocs/board-day-worksheet.htmlRecord pass/fail, measurements, and blockers during first sessionsUse with this page and the bring-up plan
Bring-up execution plandocs/bring-up.htmlOperator checklist, abort criteria, observability targets, and open risksPrimary readiness document

Antenna Simulation Report

Status: Mostly current (historical Phase-0 context)

File: AERIS_Antenna_Report.pdf

Notes: Valid for 10.5 GHz patch-element simulation and array projection context. Treat as element-level evidence, not full current hardware bring-up sign-off.

Open PDF Download

Python Simulation Report

Status: Legacy (needs refresh)

File: AERIS_Simulation_Report.pdf

Notes: Contains older architecture assumptions (e.g., XC7A100T-centric narrative). Use as historical reference only until Simulation Report v2 is published.

Open PDF Download

FPGA implementation analysis

Status: Current engineering baseline — Build 24 (CFAR + pipeline fix)

Build 24 is the current production baseline. Includes CA-CFAR detector integration (CA/GO/SO modes) with pipelined noise computation for timing closure. Full 15-point report above. WNS +0.179 ns (improved from Build 21's +0.156 ns due to phys_opt improvements). DSP count 142 (+3 for CFAR alpha and cross-multiply). BRAM 17 (+1 for CFAR magnitude buffer).

Build 23 failed timing (WNS -0.309 ns) due to combinational critical path in CFAR noise computation. Root-caused and fixed by pipelining noise_sum_comb into a registered intermediate (noise_sum_reg), splitting the path across two clock cycles.

Build 21 (v0.1.4-build21) retained as pre-CFAR reference. Build 20 (v0.1.3-build20) and earlier retained for historical reference.

Latest Simulation Report (Recommended)

Status: Current baseline (v2)

File: AERIS_Simulation_Report_v2.pdf

Aligned to the active project baseline: XC7A200T target, firmware regression closure, FPGA regression/timing gates, USB range-profile integration, and TE0712/TE0713 split-target flow.

Open PDF Download

Report Currency Notice

Antenna concept snapshot

Antenna array concept