Post Go back to editing

How to synchronize the start time of tx and rx?

Category: Software

Hello,

Greeting!

We are trying to achieve FMCW radar using X-band radar platform. But the received signal varies each time in the unchanged scene. In this case, we cannot get the right beat frequency. We think it maybe because the start time of Tx and Rx are random. So we are wondering how to set the start time of tx and rx or how can we get the start time information of tx and rx so that we can calculate the time difference which represents the target range? 

We would be really appreciated if you could help us!

best,

Dongyu

Parents
  • Hi Dongyu, 

    In order to achieve the tightest time alignment between the Rx and Tx datapaths, then control and processing will need to be done on the FPGA. The best way to do this with the ADI provided HDL is in Vivado. The HDL is open source for this platform and allows you to modify for your specific application: https://github.com/analogdevicesinc/hdl/tree/main/projects/ad9081_fmca_ebz_x_band

    Here's also a link to the high speed DMA wiki for reference: https://wiki.analog.com/resources/fpga/docs/axi_dmac?s[]=dma&s[]=controller

    Regards, 
    Sam

  • Hi Sam,

    Thanks very much for your reply! I think that determining the time difference between receiving and transmitting is a basic function of the radar platform, isn't it? Otherwise, how can we get the target information from the radar? Has your team ever tried to align Rx and Tx datapaths on the FPGA? I think it might be challenge for our customers to modify this low-level control document. Additionally, I am curious if using TDD engine could solve this question? I came across a reference: https://wiki.analog.com/resources/eval/user-guides/ad9081_fmca_ebz/radar that uses TDD engine to align the time. It seems that we met the same problem but I am not sure if my understanding is right. So I would like to ask your suggestion.

    Our goal is to establish a basic radar using this platform. Could you please advise on the simplest approach to achieve this?

    Thanks again for your kind help!

    Best,

    Dongyu 

Reply
  • Hi Sam,

    Thanks very much for your reply! I think that determining the time difference between receiving and transmitting is a basic function of the radar platform, isn't it? Otherwise, how can we get the target information from the radar? Has your team ever tried to align Rx and Tx datapaths on the FPGA? I think it might be challenge for our customers to modify this low-level control document. Additionally, I am curious if using TDD engine could solve this question? I came across a reference: https://wiki.analog.com/resources/eval/user-guides/ad9081_fmca_ebz/radar that uses TDD engine to align the time. It seems that we met the same problem but I am not sure if my understanding is right. So I would like to ask your suggestion.

    Our goal is to establish a basic radar using this platform. Could you please advise on the simplest approach to achieve this?

    Thanks again for your kind help!

    Best,

    Dongyu 

Children
  • Dongyu, 

    Time alignment is indeed critical for radar signal processing. The MATLAB & Python examples are intended show basic functionality and which attributes of the hardware are exposed. For applications that require time critical signal processing applications should be implemented in firmware. GNU radio is a good alternative as the code is optimized for quick processing for minimal latency. I would recommend leveraging the OFDM project you linked as a template to build upon for your application as it also uses the same type of drivers (LibIIO) as the X-Band Platform. 

    Regards,
    Sam