AXI4-Stream to Software clock frequency does not match FPGA clock frequency
3 次查看(过去 30 天)
显示 更早的评论
Dear all,
I am using SoC Blockset add-on and checking out the example "Transmit and Receive Tone Using RFSoC Device" (https://www.mathworks.com/help/soc/ug/transmit-and-receive-tone-using-RFSoC-device-simulate.html). The FPGA Clock frequency (SampleTime) is set to 128MHz, but the AXI4-Stream to Software clock is set to 200MHz. How are then all the samples written to memory if the memory clock is slower than the sample production frequency?
How does in general AXI4-Stream to Software block work? The following qustions are not answered in the documentation (https://www.mathworks.com/help/soc/ref/axi4streamtosoftware.html):
1) Does one buffer contatin multiple bursts? If yes, how many?
2) With what rate is burst written to buffer?
3) With what rate are samples saved in burst (to be written to buffer later)?
4) Are samples written to FIFO with the same rate as in the previous question?
Thank you!
0 个评论
采纳的回答
Jerome Chevalier
2025-5-28
编辑:Jerome Chevalier
2025-5-28
"The FPGA Clock frequency (SampleTime) is set to 128MHz, but the AXI4-Stream to Software clock is set to 200MHz", so the memory clock is faster than the sample production frequency, not slower.
AXI4-Stream to Software block simulates the DMA data transfer between an AXI Stream and a memory. AXI4-Stream to Software block (similar to a real DMA) is buffering multiple sample from the stream and then write those sample together in one burst in the memory.
1) A buffer can contain 1 to N burst (with N being an integer)
2) Burst are written in memory when enough sample has been received from the stream to complete a full burst (or Tlast has been raised). Assuming stream valid is always high, no tlast, no memory contention, no sample format change (bit packing) : burst rate = stream rate / burst size
3)Sample are always "Saved" for next burst by the AXI4-Stream to Software block, unless there is no more buffer available in memory and the burst buffering FIFO is full.
4)Yes, sample are written into the FIFO at the stream rate. if the the FIFO is full, ready signal will go low and any further sample will be discarted until space in the FIFO is available and ready signal go high.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!