My goal is simple, send my own data and receive it back with basic configuration, thats why I ordered this board.
How to do it, starting from the reference design?
Use No-OS to get familiarize with SDK. Follow the wiki instructions to build the elf and try it first.
Then take a look at this file-
You will see the array "const int32_t dac_dma_data". This is the data that is being written to DDR.
Trace along and you will see how it is being used and the functions that follow.
The simple solution will be to write your data to DDR in the transmit direction, and read the data from DDR in the receive direction. You will have to adjust the sampling rates to match bandwidth. This doesn't require any change in the reference design hardware, just modify the software to use your own data.
thanks for reply. The bad fact is I am not familliar with EDK/SDK enviorments. To be honest I dont know how to write data in DDR starting from the SDK.
I am trying to do a similar thing to Mr. BLECK. I have implemented the dac_dma_setup function into the code and commented out the dds_setup . Dac_dma_setup doesn't seem to be called when the code is run as it is configured when I downloaded it. If I understand it correctly, the dac_dma_data buffer is written to the DDR, and then the VDMA is configured to transfer the buffer repeatedly from the DDR to the DAC pcore. I am then using the adc_capture function to try to read the data back and using chipscope to capture it. It seems like my data in chipscope does not match up well to the dac_dma_buffer that I've plotted in an external program. The buffer is interleaved 16 bit I and 16 bit Q data right? Is there something I am missing here? Also, The DAC status is returning a 1 (VDMA_Overflow) at the end of the dac_dma_setup function. Thank you for any help you can provide.
It is strange that the VDMA is overflowing- so far it has always been an underflow.
What are the things you changed? What frequency the DAC is running at?
Retrieving data ...