cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
julien.minet
Observer
Observer
517 Views
Registered: ‎05-30-2018

ZCU111 NCO Real Time Ports

Hello,

I’m working with a devboard ZCU111. I’m using 8 DAC & 2 x ADC @2Gsps MTS with Vivado &  Petalinux 2020.1. A lot of things is already working in my design but i need help to control the ADC NCO Phase.

I’m using a software function to set ADC mixer setting and it works fine (cf code SetADCMixer)

I need to reset the ADC NCO phase synchronously with the DAC output signal. In my design i have a basic logic sequencer (@250MHz) to control the DAC output wave form, some externals triggers, the start of the ADC data recording and i added an instruction to reset the NCO Phase via NCO Real Time Ports.
I read « NCO Frequency Hopping » chapter in PG269(v2.3) document and posts on this subject.

In the documentation ADC real-time NCO signals are :

inputs adcXY_nco_freq, adcXY_nco_phase, adcXY_nco_phase_rstadcXY_nco_update_enadcX_nco_update_req
output : adcX_update_busy.

All this signals are based on s_axi_aclk.

As i understand there are 2 modes : Single Converter Mode and Multi-Tile Mode. In single converter mode you said « Before a NCO update can be performed the event source must be set to Tile. » So, do i need to call XRFdc_UpdateEvent (…., XRFDC_EVNT_SRC_TILE) ; before using the real-time nco interfaces ? After that, to reset the NCO phase, can i use only adcXY_nco_phase_rst signal or do i need to use adcXY_nco_update_en[5] and adcX_nco_update_req too?

In Multi-Tile Mode, i understand that 2 options are available : one by gating externally SYSREF during NCO update and the other by using the internal gate. For this 2 options all real-time NCO interface are synchronize via DAC tile 228, so do i need to activate the mixer on this DAC and real Time NCO ports of DAC tile 228 ? I can’t use only the ADC NCO real time interface ? If i activate this option in DAC tile 228 i see 6 signals, like for the ADC, but in your documentation (figure 92) there are more signals : dac0_sysref_int_gating, dac0_sysref_int_reenable ??? It’s not easy to understand and i made some tests without any result...NCO phase never changes….

Is there someone who use this NCO Real Time Interface ?

regards,

Julien

Tags (1)
3 Replies
klumsde
Moderator
Moderator
474 Views
Registered: ‎04-18-2011

If you are updating a single tile then the update event should be the tile event. You can set this via the mixer settings. I think a GetMixerSettings should give you back the event src, fairly sure it defaults to tile.

In the multi tile case you need to have MTS enabled on the tile then you should see the sysref gating signals. 

Not sure why it isn't working for you. I think I should have an example. I'll look for it and share it here

 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Reply
tghazaany
Observer
Observer
370 Views
Registered: ‎03-26-2020

Hi @klumsde 

 

Would it be possible to share the example with me too?

 

Thanks,

Tahereh

0 Kudos
Reply
klumsde
Moderator
Moderator
356 Views
Registered: ‎04-18-2011

Sorry @julien.minet @tghazaany 

I haven't gotten round to it. 

Give me some more time here. 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Reply