A primary market for the AD9361 is the software-defined radio market. We are graduate students implementing a simple SDR waveform on a Zed Board with the FMCOMMS3 board as the SDR tx/rx, driven by data from the ARM running Linux. We have studied the Analog Devices FMCOMMS wiki site and have synthesized the Analog Devices FMCOMMS2 reference project contained in the AD GitHub HDL repository. We cannot relate the 24 blocks contained in the Vivado block design to the high-level diagram shown in the high-level diagram shown in resources:eval:user-guides:ad-fmcomms2-ebz:cf_ad9361_zc706_bd.jpg [Analog Devices Wiki]. Although we have studied the Verilog code, it is quite low level and with very few comments. There is no documentation for the AD cores. It would be a big help to the community, and possibly reduce the number of questions you field, if you can define them as part of your reply to the questions below.
1. We are attempting to determine where within the reference implementation's 24 blocks would be the logical location for inserting our waveform blocks (e.g., symbol (de)mapper, pulse shaper, timing recovery, etc.). Our sense is that the flow of Tx data (the Rx chain has a parallel form) is the following (see figure):
- sys_ps7 --> axi_ad9361_dac_dma (via the axi_ad9361_dac_dma_axi interface connection)
- axi_ad9361_dac_dma --> util_dac_unpack (via the fifo_data net)
- util_dac_unpack --> axi_ad9361 (via the axi_ad9361_dac_data_0-3 nets).
In addition to performing the waveform functions, our IP blocks will effectively perform the unpacking. Therefore, my sense is that a likely approach would be
- Same as #1 above
- from the axi_ad9361_dac_dma block to our waveform block and finally
- from our waveform block to the axi_ad9361 block
2. The list below are the IP cores within the FMCOMMS2-EBZ reference implementation contained in the AD GitHub HDL repository. Can you provide a definition for each block in terms of the high-level diagram shown in the high-level diagram shown in resources:eval:user-guides:ad-fmcomms2-ebz:cf_ad9361_zc706_bd.jpg [Analog Devices Wiki].