LVDS系列46:Xilinx Ultrascale系 ADC LVDS接口参考方法(八)

 IDELAY校准模块:

idelay_ctrl是整个AFE数据接收系统的核心控制模块,工作在100MHz系统时钟域。

通过主状态机统一调度4个AFE(每个AFE有16个通道,工程有4个afe芯片,每个芯片物理通道16,两个通道共用一个物理通道,共计128通道)的IDELAY校准流程,

进入测试模式全范围延迟扫描逐步锁定最佳延迟退出测试模式正常工作;

同时负责与125MHz时钟域的idelay_lane进行跨时钟域交互。

模块端口:

端口分为两个时钟域,上图为100M时钟域的信号,连接的模块是afe同步模块,afe测试模式进入退出模块,

上图为125M时钟域的信号,连接的模块lvds_s2p模块中的hssio ip的IDELAY延时控制端口,使用的是ip输出的125M pll clkout0,在模块内部要跨时钟域使用;

输入接口:

clk:100MHz系统时钟,

rst:全局复位,

pwon_init_ok:AFE上电完成标志,

sync_status_0~315:0:每个AFE各通道的同步状态(来自afe_sync),

sync_done_0~3:每个AFE的同步完成标志(进入WORK后为1),

sync_ok_0~3:每个AFE的同步成功标志(所有通道连续匹配测试码成功),

enter_pat_ok_0~3:控制afe进入测试模式完成,

exit_pat_ok_0~3:控制afe退出测试模式完成,

clk_dly_03、rst_dly_03:各AFE的125MHz时钟和复位(来自afe_process的hssio ip),

rx_cntvalueout_0~3:各AFE的IDELAY当前值(只读,用于校准),

输出接口:

sync_start:同步启动脉冲(restart,用于触发afe_sync进入SYNC),

sync_ok:全局同步成功标志(所有AFE同步成功且锁定),

afe_soft_rst:软复位输出,用于复位AFE芯片,

enter_pat/exit_pat:控制AFE进入/退出测试模式的脉冲,

rx_cntvaluein_03、rx_en_vtc_03、rx_load_0~3:IDELAY控制信号,送到每个AFE的每个通道,控制时序与前述的IDELAYE3的time模式下的控制时序一致;

主状态机:

初始IDLE空闲状态:当设备上电pwon_init_ok1且同时没有软复位afe_soft_rst0跳转进入ENTER_PAT状态;

ENTER_PAT状态:控制AFE进入测试模式 ,当接收到外部传来的enter_pat_ok为1表示进入测试模式操作完成,可以跳转DETECT状态;

DETECT状态:对通道数据进行延时修改,扫描检测,完成512次扫描后进入LOCKING状态;

LOCKING状态:当locking_ok1,表示扫描同步成功,跳转到EXIT_PAT状态;当locking_err1表示锁定失败,触发软复位,重新开始全流程;

EXIT_PAT状态:控制AFE退出测试模式,接收到exit_pat_ok1跳转到LOCKED状态;
LOCKED状态:全部通道同步成功且延时锁定到最佳数据采样点,正常输出数据的工作状态,只有当pwon_init_ok0检测到掉电或是全局复位才会退出该状态跳转到IDLE状态重新开始;

ENTER_PAT子流程:

enter_pat脉冲:在状态进入ENTER_PAT时产生1拍脉冲,驱动外部模块afe_en_pattern驱动spi写寄存器进入测试模式,同时配置10bit测试码;当接收到外部传来的enter_pat_ok为1表示进入测试模式操作完成;

等待所有AFE完成,enter_pat_status3:0分别记录各AFE的进入测试模式的状态。当enter_pat_status==4'hf时表示全部进入测试模式,启动enter_pat_delay延迟计数;

延迟等待10us,让AFE在进入测试模式后,等待数据稳定,最后拉高一拍enter_pat_ok;

本文章由威三学社出品

对课程感兴趣可以私信联系

相关推荐
坏孩子的诺亚方舟9 天前
FPGA系统架构设计实践15_高云Arora V系列时钟体系
fpga开发·系统架构
FPGA小徐9 天前
入门 CNN 结构全解析|从流程图理论到 FPGA Verilog 硬件实现(含习题带讲解)
fpga开发
FPGA小徐9 天前
FPGA 数字信号处理:并行 FIR 与串行滤波器设计原理、对比与完整 Verilog 实现
fpga开发
Saniffer_SH10 天前
【高清视频】Gen6 服务器还没到,Gen6 SSD 怎么测?Emily 现场演示三种测试环境
人工智能·驱动开发·测试工具·缓存·fpga开发·计算机外设·压力测试
zlinear数据采集卡10 天前
双核架构深度解析:ARM+FPGA如何让数据采集卡实现500Ksps高性能?
arm开发·fpga开发·架构
9527华安10 天前
FPGA实现GTH Transceivers Wizard传输2路视频,基于aurora 8b10b编解码架构,提供4套工程源码和技术支持
fpga开发·gth·aurora 8b10b·transceivers
FPGA小徐11 天前
FPGA 数字信号处理(二):并行 FIR 滤波器的 Verilog 全流程设计与实现
fpga开发
国科安芯11 天前
基于AS32S601ZIT2型抗辐照MCU的商业航天卫星姿态确定与控制系统研究
单片机·嵌入式硬件·安全·fpga开发·架构·risc-v
ALINX技术博客11 天前
【黑金云课堂】FPGA技术教程FPGA基础:I2C 总线通信技术
fpga开发·i2c
Hello-FPGA11 天前
Xilinx KU040 FPGA Camera Link 图像采集
c++·fpga开发