Interfaces & Bus Architectures#
This document describes the primary bus architectures, memory-mapped interfaces, streaming pipelines, and clock domains connecting the Programmable Logic (PL), Processing System (PS), and RF Data Converters across supported hardware platforms.
Bus & Memory-Mapped Interfaces#
The firmware integrates three distinct AXI4 protocol variants tailored for control, high-throughput bulk memory access, and continuous streaming across custom IP modules.
1. AXI4-Lite (Control & Configuration)#
Supported IPs: Generator IP, Acquisition IP, and Trigger Generator IP.
Purpose: Primary interface for control registers, acquisition parameters, trigger setups, and status monitoring.
Clock Domain: Operates directly on the PL Fabric Clock domain (
HS_axis_aclk= 583.68 MHz on ZCU216), enabling deterministic, low-latency control register access within the high-speed DSP logic domain.
2. AXI4-Full (Bulk Data & Memory Mapping)#
Supported IPs: Generator IP and Trigger Generator IP.
Purpose: High-throughput memory-mapped transfers between PS memory and IP-internal storage:
Generator IP: Used for loading arbitrary envelope waveforms into internal dual-port Block RAMs (BRAMs).
Trigger Generator IP: Used for writing sequence delays and trigger events.
Clock Domain: Operates on the PS AXI Clock domain (
LS_axis_aclk= 100 MHz), isolating memory write operations from the high-frequency DSP datapath.
3. AXI4-Stream (High-Speed Data Pipelines)#
Supported IPs: All custom IP modules (Generator, Frequency Multiplexer, Acquisition, AXIS Corssbar Matrix) and RF Data Converters.
Purpose: Continuous, point-to-point data streaming across the internal signal processing pipeline and to/from converter interfaces.
Clock Domain: Synchronous to the
HS_axis_aclk
Data Converter Stream Interfaces & Parallelism#
ZCU216 Platform#
RF-DAC Parallelism: Configured with 16 samples per clock cycle (16-way parallelism) per active channel to support the 9.33888 GSPS sampling rate at the 583.68 MHz fabric clock (\(16 \times 583.68\text{ MHz} = 9.33888\text{ GSPS}\)).
RF-ADC Parallelism: Configured with 4 samples per clock cycle (4-way parallelism) per active channel to match the 2.33472 GSPS sampling rate at 583.68 MHz (\(4 \times 583.68\text{ MHz} = 2.33472\text{ GSPS}\)).
RFSoC4x2 Platform#
RF-DAC Parallelism: Configured with 16 samples per clock cycle (16-way parallelism) per active channel to support the 9.33888 GSPS sampling rate at the 583.68 MHz fabric clock (\(16 \times 583.68\text{ MHz} = 9.33888\text{ GSPS}\)).
RF-ADC Parallelism: Configured with 8 samples per clock cycle (8-way parallelism) per active channel to match the 4,66944 GSPS sampling rate at 583.68 MHz (\( 8\times 583.68\text{ MHz} = 4,66944\text{ GSPS}\)).
Clock Configuration & Active Channel Matrix#
The clocking layout and stream topologies vary based on the targeted evaluation platform:
1. ZCU216 Reference Configuration#
Active Channels:
RF-DAC: DAC 228 (Channels 0 & 1) and DAC 229 (Channel 0).
RF-ADC: ADC 224 (Channel 0) and ADC 225 (Channel 0).
Clock Domains & Frequencies:
PL Fabric Clock: 583.68 MHz (drives AXI4-Lite registers, AXI4-Stream pipelines, and DSP core logic).
PS AXI Clock: 100 MHz (drives AXI4-Full memory-mapped transfers for Generator BRAMs and Trigger parameters).
RF Reference Clock: 491.52 MHz provided by the CLK104 daughterboard into master tiles ADC 225 and DAC 229 (PLL VCO locked at 9338.88 MHz).
PL Reference Clock: 122.88 MHz provided by CLK104 to drive the PL clocking wizards.
Multi-Tile Sync (MTS): Driven by a 7.68 MHz
PL_SYSREFsignal generated by the LMK04828 synthesizer on CLK104 and routed via a differential input buffer touser_sysref_dacto synchronize internal tile dividers.
Detailed Tile Specifications: For a complete overview of converter tiles, clock distribution topologies, and physical constraints, see the ZCU216 Overlay Documentation.
2. RFSoC4x2 Configuration#
Active Channels:
RF-DAC: DAC 228 (Channel 0) and DAC 230 (Channel 0).
RF-ADC: ADC 224 (Channel 0) and ADC 226 (Channel 0).
Clock Domains & Frequencies:
PL Fabric Clock: 583.68 MHz (drives AXI4-Lite registers, AXI4-Stream pipelines, and DSP core logic).
PS AXI Clock: 100 MHz (drives AXI4-Full memory-mapped transfers for Generator BRAMs and Trigger parameters).
RF Reference Clock: 491.52 MHz provided by LMK04828 into master tiles ADC 224 and DAC 230 (PLL VCO locked at 9338.88 MHz).
PL Reference Clock: 122.88 MHz provided by LMK04828 to drive the PL clocking wizards.
Multi-Tile Sync (MTS): Driven by a 7.68 MHz
PL_SYSREFsignal generated by the LMK04828 synthesizer and routed via a differential input buffer touser_sysref_dacto synchronize internal tile dividers.
Detailed Tile Specifications: For a complete overview of converter tiles, clock distribution topologies, and physical constraints, see the RFSoC4x2 Overlay Documentation.