Zynq SDR Capture Length question!

2 vues (au cours des 30 derniers jours)
jarul
jarul le 5 Juin 2020
Commenté : jarul le 19 Juin 2020
While using Zynq SDR, the capture length can not exceed '16777216'.
I want to capture length longer than the prescribed. I get the following error.
Error using comm.libiio.AD9361.rx/capture
Requested capture length (23592960 Samples) exceeds maximum value for this number of channels
(16777216 Samples). Use 'EnableOversizeCapture' to risk compromising data contiguity in return for a
larger capture length.
How to use 'EnableOversizeCapture in order to capture longer length than the one prescribed.
Thanks.

Réponse acceptée

Jyotsna Talluri
Jyotsna Talluri le 8 Juin 2020
You can just enable the property'EnableOversizeCapture' by setting it to true.In addition to the other arguments of capture function,specify it as a name -value pair.
capture(rxsdr,'EnableOversizeCapture',true);
Refer to the below documentation link for more information
  1 commentaire
jarul
jarul le 9 Juin 2020
Thanks for your quick response. I do appreciate your help.

Connectez-vous pour commenter.

Plus de réponses (1)

jarul
jarul le 9 Juin 2020
I have another question related to the above issue.
When I tried to transfer rather large size, I get the following error.
Generating WLAN transmit waveform:
Error using comm.libiio.AD9361.tx/validateInputsImpl
The maximum samples per frame for the selected channel mapping is 16777216.
Error in comm.libiio.AD9361.tx/transmitRepeat
Error in OFDM_SIM1 (line 189)
sdrTransmitter.transmitRepeat(txWaveform);
How do I overcome the above error? It seems to me that I can not have the samples per frame more than 16777216.
  2 commentaires
Neil MacEwen
Neil MacEwen le 16 Juin 2020
Hi Jarul,
Both transmitRepeat and capture methods use on-board storage, which is size-limited. When you select "EnableOversizeCapture" you are choosing to stream data to the host, instead of capturing it on on-board storage first - this is why you are no longer guaranteed contiguity, as you may lose samples over the Ethernet link.
Likewise, on the transmit side, the only way you can send a frame of a size larger than the 16M limit is by attempting to stream in real-time from the host, instead of using transmitRepeat. Again, you will not be guaranteed contiguity, and are likely to see performance issues (dropped samples).
Thanks,
Neil
jarul
jarul le 19 Juin 2020
Thanks for your response. Appreciate very much!

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by