cho Posted July 17, 2020 Share Posted July 17, 2020 i have been developing oscilloscope using ADC1410 in vivado2019.1. i'd like to get 50,000,000 / 4bytes data from ADC1410 in trigger mode. but in ADC Baremetal Demo program TRANSFER_LEN is 0x400(1024bytes). so i changed TRASFER_LEN to 0x100000 to test it. and in zmodadc1410.h ZMODADC1410_MAX_BUFFER_LEN changed 0x100000. but it's not working. i think ZmodADC1410 IP supports that maximum buffer length is 0x3fff. in ZmodADC1410AxiAdapter AXI-Stream S2MM Transfer Length is available to 2^26(approximately 64MBytes). why is maximum buffer length 0x3fff? how can i get 50,000,000 / 4bytes from ADC1410? Link to comment Share on other sites More sharing options...
zygot Posted July 17, 2020 Share Posted July 17, 2020 You will have to use a different platform in which logic has access to its own DDR memory. The maximum number of samples that Digilent's AXI controller for the ZmodADC1410 can handle is 16383. See: https://forum.digilentinc.com/topic/20153-capture-4-channels-of-120-million-adc-samples/ [Edit] I'm going to walk back on that statement a bit. You can write your own AXI master DMA IP to collect samples in the PS DDR. Your PS application will either have to be small enough to run out of PS internal RAM or share the DDR with the AXI master with PS code. It is possible to stream 4 channels of 16-bit ADC data at a 100 MHz sample rate to the PS DDR but there will be issues to resolve. Everything gets much easier on a non-ZYNQ platform. Link to comment Share on other sites More sharing options...
Question
cho
i have been developing oscilloscope using ADC1410 in vivado2019.1. i'd like to get 50,000,000 / 4bytes data from ADC1410 in trigger mode.
but in ADC Baremetal Demo program TRANSFER_LEN is 0x400(1024bytes).
so i changed TRASFER_LEN to 0x100000 to test it. and in zmodadc1410.h ZMODADC1410_MAX_BUFFER_LEN changed 0x100000.
but it's not working.
i think ZmodADC1410 IP supports that maximum buffer length is 0x3fff.
in ZmodADC1410AxiAdapter AXI-Stream S2MM Transfer Length is available to 2^26(approximately 64MBytes).
why is maximum buffer length 0x3fff?
how can i get 50,000,000 / 4bytes from ADC1410?
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Archived
This topic is now archived and is closed to further replies.