I'm a software developer and new in digital communication field. Now I'm working in project design a streaming video system based on SDR using AD9361 and Zynq with co-working hardware and software.
I have some confuse about some terminology "sampling rate", "Sample", "Data frame", "libiio buffer".
As far i know, please correct me:
Sampling rate is the Tx/Rx Sampling rate of ad9361 and this is one clock domain. We using a fifo and DMA to transfer data between RF clock domain and Zynq clock domain let say (512kHz and 100MHz)?
Sample is user data. Data frame is a collection of Sample ?
libiio buffer is a linux DMA pool in kernel which will be mapping to user space and contain a collection of Data frame default is 4 ?
I meet some problem when trying to find a relationship between these terminology. I using the matlab example
In this example the Tx flow have some parameter sample size is 200, Data frame is 10000 (repeating sample 50 times), the libiio buffer is 40000 and Sampling Rate is 512k.
When I trying to reduce the Data frame to 1000 (repeating sample 5 times) the libiio buffer also reduce to 4000 and the fifo underrun and receiver can not receive any data. I don't know why can anyone explain to me the relationship between them ?
I attached a picture to demonstrated.