找回密码
 立即注册
搜索
查看: 2630|回复: 0

FPGA | Xilinx ISE14.7 LVDS应用

[复制链接]

346

主题

14

回帖

3万

积分

版主

Rank: 7Rank: 7Rank: 7

积分
36982
发表于 2024-6-13 16:22:49 | 显示全部楼层 |阅读模式
本帖最后由 眼镜一米二 于 2024-6-13 16:24 编辑

叁芯智能科技FPGA就业班07月开班中




        今天给大侠带来 Xilinx ISE14.7 LVDS应用,话不多说,上货。


        最近项目需要用到差分信号传输,于是看了一下FPGA上差分信号的使用。Xilinx FPGA中,主要通过原语实现差分信号的收发:OBUFDS(差分输出BUF),IBUFDS(差分输入BUF)。


        注意在分配引脚时,只需要分配SIGNAL_P的引脚,SIGNAL_N会自动连接到相应差分对引脚上;若没有使用差分信号原语,则在引脚电平上没有LVDS的选项(IO Planning PlanAhead)。


测试代码:




约束文件:





        约束文件IO Planning PlanAhead产生,原语的使用可参考:   


        E:\Xilinx\ISE\14.7\ISE_DS\ISE\doc\usenglish\isehelp\spartan6里面提供了所用器件的原语。


        同时,Xilinx器件内部信号内部还提供了100欧姆电阻匹配,可参考Spartan-6 FPGA SelectIO Resources(UG381)

补充:

        若要实现高速通信的场合,可以利用FPGA内部自带的SelectIO资源,利用ISERDESE2、 OSERDESE2,实现串-并,并-串的转换,理论速度可达到750Mbs,



        参考资料:Spartan-6 FPGA Data Sheet: DC and Switching Characteristics(UG162)













通信框图:









        因为串行转成并行的时候,输出的数据无法判断哪个 Bit 是高位,哪个 bit 是低位,因此,对于 ISERDESE2 可以利用bitslip 信号来重新对齐串行数据以获得正确的字节数据;代码实现时,也需要先进行数据对齐,才能进行数据的正常接收。









        其中,clk_div_out_1和clk_div_out_2是8分频得到的(ISERDESE2、 OSERDESE2核实现),OSERDESE2输出的LVDS 差分时钟可作为ISERDESE2的接收时钟。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|冀ICP备20011060号-2|叁芯智能

GMT+8, 2024-12-22 02:28 , Processed in 0.077972 second(s), 20 queries .

Powered by Discuz! X3.4

© 2017-2018

快速回复 返回顶部 返回列表