# Interlacing

Interlacing is a technique to access the full sampling rate capability of Moku device in Multi-Instrument Mode. Moku devices use the FPGA system clock to process data. By default, the Custom Instrument uses one data sample per clock cycle and thus operate at a sampling rate dictated by the FPGA clock.

This sampling rate can be increased by interlacing - processing multiple samples at the same FPGA clock rate simultaneously. For example, accessing 4 samples at 31.25 MHz clock on the Moku:Go increases the effective sample rate to 125 MSa/s. This parallel processing of samples is referred to as interlacing and can be done using both Moku Cloud Compile and On-premises Moku Compile.

Subscription requirements

You need to subscribe to the Enterprise or Premium tier of Moku Compile to access the interlacing feature. Base tier users are restricted to sampling at the clock rate.

The interpolation factor defines the CustomInstrumentInterlaced entity. This is defined as per wrappers, where the interlacing factor is set by the number of samples. Depending on the hardware model and the number of slots used in Multi-Instrument Mode, the input and output interlacing factor varies.

Moku:Delta

3 slots* 5 slots* 8 slots
Core clock 312.5 MHz
Interlacing factor 16 4 2
Maximum sampling rate 5 GSa/s 1.25 GSa/s 625 MSa/s
*require purchase of Custom Instrument+ for deployment and subject to export control.

Moku:Pro

4 slots*
Core clock 312.5 MHz
Interlacing factor 4
Maximum sampling rate 1.25 GSa/s
*require purchase of Custom Instrument+ for deployment and subject to export control.

Moku:Lab

2 slots* 3 slots*
Core clock 125 MHz
Interlacing factor 4 2
Maximum sampling rate 500 MSa/s 250 MSa/s

Moku:Go

2 slots* 3 slots*
Core clock 31.25 MHz
Interlacing factor 4 2
Maximum sampling rate 125 MSa/s 62.5 MSa/s

# Output Interpolation vs Interlacing

Interlacing is different from Output Interpolation available on all devices. While both provides output samples at the higher sampling rates, the processing of the data points are different.

Output interpolation computes additional samples based on linear interpolation on the data points at the base rate. This means while the data is being generated at the higher sampling rate, the effective operating bandwidth is limited to the clock of the device.

On the other hand, interlacing would allow each data point to be individually computed based on the custom design itself.