本文主要是介绍GTX_IP核实现SMA口发送数据(二)差分转单端的方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
使用GTX之前利用IBERT进行GTX的通信测试。IBERT的基本IP配置如下所示 在开始高速接口前,我们来试试IBERT测试吧! - 知乎 (zhihu.com)当想将GTX发出的信号通过调制器的时候,发现调制器只有一个SMA接口,而GTX发出的信号是差分信号,也就是两个GTX接口。由于IBERT只能测试一个bank(4个GTX通道),无法测试单独的一个GTX通道,所以需要利用IBUFDS原语句进行差分时钟的单端化,其语法如下
IBUFGDS
#(.DIFF_TERM("FALSE"))
u_ibufgds
(
.I(SYSCLKP_I),//输入的主时钟,通常为P
.IB(SYSCLKN_I),//输入的副时钟,通常为N
.O(sysclk_i)//输出的时钟
);
在官方例程中加入改语句连接TXN[0]与TXP[0]后实现了将其差分信号转到一个单端信号的功能,RTL图如下所示。
但是又出现了一个问题就是综合之后的布线会出现连接的驱动引脚无效报错的情况
相关的解决办法:由于IBUF语句必须由上层模块引脚才能使用,所以我们可以考虑外接的形式来进行差分信号到单端信号的转换,相关语句如上所示,IP核不动,使用物理连接,将该信号从差分的形式转换成单端的形式,
相关的连接方式如上图所示。结果如下图所示
这篇关于GTX_IP核实现SMA口发送数据(二)差分转单端的方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!