This project uses hls4ml to create the firmware implementation of machine learning algorithms for single qubit readout on the QICK system.
Data is directly from the ADC units of the ZCU216, prepared into npy files and can be found on Zenodo here.
There are several examples for training, the simpliest are the workflow notebooks. These notebooks start with training in (Q)Keras down to hls4ml IP generation. The scanning notebooks are useful for design space exploration, comparing traditional methods (match filtering and thresholding) with NNs of varying sizes.
The target device for the QICK system is the Zynq UltraScale+ RFSoC ZCU216 Evaluation Kit. We use Vivado 2020.1 for all synthesis results.