Hi,
I recently purchased the CW-Husky for use with the CW305 target. Considering the high processing speed of FPGAs, I hope to run Husky’s ADC at a high frequency (such as 100MHz), which is 10 times the FPGA frequency of 10MHz. However, when capturing complete cryptographic algorithm executions (total sample count exceeds 200k), I encounter “fast FIFO overflow, slow FIFO underflow” errors in stream mode.
Noticing that the CW-Lite tutorial implements large-scale capture through segmented acquisition with post-acquisition merging (as mentioned in SCA204), I would like to know whether the Husky supports the same method, or if I can use other methods to complete the capture.
I look forward to your response.
Best regards,
Li
- It’s not necessary to sample at such a high rate. Our Jupyter notebooks for the CW305 use either x1 or x4 sampling, to good results.
- Husky has a maximum buffer size of 131124 samples (see here for all its specifications). To capture beyond this you must use streaming.
- We teach how to use segments here.
Thank you for your reply. I am attempting to attack some PQC (Post-Quantum Cryptography) implementations. Due to optimized operations (e.g., NTT multiplication) that complete within a few clock cycles, I require higher sampling rates to capture sufficient data for side-channel attacks. However, even at high sampling rates, streaming mode only allows capturing approximately 190k samples. I would like to know if performing two separate captures of 130k samples each and processing them in Jupyter could achieve a combined dataset exceeding 200k samples.
Looking forward to your confirmation.
Read through the links I posted; you’ll see for example that streaming limits the sampling rate.
It is possible to do what you want to do; our tips and tricks pages have the answers you’re looking for.