This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AFE7950:将 zcu102_64b66b FPGA 参考设计从8通道设计重新配置为2通道设计时出现问题

Guru**** 2468460 points
Other Parts Discussed in Thread: AFE7950

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/rf-microwave-group/rf-microwave/f/rf-microwave-forum/1284933/afe7950-problem-reconfiguring-the-zcu102_64b66b-fpga-reference-design-from-a-8-lane-design-to-a-2-lane-design

器件型号:AFE7950

我在将 zcu102_64b66b 参考设计从8通道设计移植到2通道设计时遇到了问题。  用于评估 EVM7950上的 AFE7950的具有8个 JESD 通道的 TI xzcu102 64/66位参考设计在提供8个通道时能够可靠地 运行、但在重新配置为通过2个通道运行时由于移植更改而无法正常工作。 TX 侧、即 DAC 侧正在发送音调、但 RX 侧始终未演示 FPGA 中的有效数据处于活动状态 、以指示 FPGA 收发器正在锁定到来自 AFE7950的有效 JESD 流。 以下是使用与该设计集成的 Vivado 硬件调试工具捕获的 RX 端行为。 我还包含了一个文档、详细说明了我根据参考设计随附的说明确定的必要更改。 如果能提供任何帮助,说明为什么它不起作用,我将不胜感激。 谢谢

e2e.ti.com/.../Debug_5F00_2_5F00_Lane.docx

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Joseph:

    除了在 JESD_LINK_PARAMS 文件中进行的更改之外、还需要进行三处更改。

    这些更改说明如下:

    1.更新收发器向导以选择 AFE 使用的通道并设置正确的通道速率

    2.更新数据打包, refdesign_tx。 有关全新 LMFS

    reg [3:0] sine_count;
    
    always @(posedge tx_sys_clock or negedge master_reset_n)
    begin
    	if (!master_reset_n)
    	 sine_count <= 4'd0;
    	else
    	 if (tx_lane_data_ready)
    	  sine_count <= sine_count + 1;
    end
    
    assign tx_lane_data[0][63 -: 16] = sine_i[0][63 - sine_count*4];
    assign tx_lane_data[0][47 -: 16] = sine_i[0][62 - sine_count*4];
    assign tx_lane_data[0][31 -: 16] = sine_i[0][61 - sine_count*4];
    assign tx_lane_data[0][15 -: 16] = sine_i[0][60 - sine_count*4];
    
    assign tx_lane_data[1][63 -: 16] = sine_q[0][63 - sine_count*4];
    assign tx_lane_data[1][47 -: 16] = sine_q[0][62 - sine_count*4];
    assign tx_lane_data[1][31 -: 16] = sine_q[0][61 - sine_count*4];
    assign tx_lane_data[1][15 -: 16] = sine_q[0][60 - sine_count*4];
    
    assign tx_lane_data[2][63 -: 16] = sine_i[1][63 - sine_count*4];
    assign tx_lane_data[2][47 -: 16] = sine_i[1][62 - sine_count*4];
    assign tx_lane_data[2][31 -: 16] = sine_i[1][61 - sine_count*4];
    assign tx_lane_data[2][15 -: 16] = sine_i[1][60 - sine_count*4];
    
    assign tx_lane_data[3][63 -: 16] = sine_q[1][63 - sine_count*4];
    assign tx_lane_data[3][47 -: 16] = sine_q[1][62 - sine_count*4];
    assign tx_lane_data[3][31 -: 16] = sine_q[1][61 - sine_count*4];
    assign tx_lane_data[3][15 -: 16] = sine_q[1][60 - sine_count*4];
    

    3.在 refdesign_rx 中为新的 LMFS 更新数据解包。 下面给出了新的解包。  

    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch1_I_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch1_Q_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch2_I_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch2_Q_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch3_I_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch3_Q_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch4_I_sample;
    (*dont_touch = "true"*) wire [ADC_RES-1:0] ch4_Q_sample;
    
    assign ch1_I_sample = rx_lane_data[0][63-16*0 -: ADC_RES];
    assign ch1_Q_sample = rx_lane_data[0][63-16*1 -: ADC_RES];
    assign ch2_I_sample = rx_lane_data[0][63-16*2 -: ADC_RES];
    assign ch2_Q_sample = rx_lane_data[0][63-16*3 -: ADC_RES];
    
    assign ch3_I_sample = rx_lane_data[1][63-16*0 -: ADC_RES];
    assign ch3_Q_sample = rx_lane_data[1][63-16*1 -: ADC_RES];
    assign ch4_I_sample = rx_lane_data[1][63-16*2 -: ADC_RES];
    assign ch4_Q_sample = rx_lane_data[1][63-16*3 -: ADC_RES];

    此致、

    大卫·查帕罗