凯发app-凯发天生赢家 >关于创龙 > 新闻资讯 > 技术文章
联系凯发app
contact us公司总机:020-8998-6280
技术热线:020-3893-9437
技术邮箱:support@tronlong.com
销售邮箱:sales@tronlong.com
基于fpga的光口通信开发案例
2021/01/21
基于fpga的光口通信开发案例-凯发app
自著名华人物理学家高锟先生提出“光传输理论”,实用化的光纤传输产品始于1976年,经历了pdh→sdh→dwdm→ason→mstp的发展历程。本世纪初期,ason/oadm技术已在通信技术当中广泛应用,逐渐发展成为以骨干网络传输为介质的roadm技术。
图1
光通信技术具有如下特点:
(1) 信息容量大。
(2) 损耗低,可长距离传送。
(3) 抗电磁干扰能力强。
(4) 安全性能和保密性好。
(5) 重量轻,体积小,便于施工维护。
(6) 原材料来源丰富潜在价格低廉。
得益于以上特点,光通信在软件无线电、视频追踪、光电探测、定位导航、水下通信、电力设备等场合应用十分广泛。而10g光模块经历了从300pin、xenpak、x2、xfp的发展,最终实现了用和sfp一样的尺寸传输10g的信号,这就是sfp 。sfp凭借其小型化、低成本等优势满足了设备对光模块高密度的需求,从2002年标准推行到2010年,已经取代xfp成为10g市场主流。
创龙科技(tronlong)的kintex-7、zynq-7045/7100等处理板卡已提供2/4通道sfp 光口,可实现udp或aurora 10g光口通信。本文将为您分享基于kintex-7 fpga sfp 光口的10g udp网络通信开发案例。如需基于kinte-7 fpga或者zynq的aurora开发案例,欢迎与我们联系。
本文基于创龙科技tlk7-evm评估板进行演示
。
tlk7-evm是一款基于xilinx kintex-7系列fpga设计的高端评估板,由核心板和评估底板组成。核心板经过专业的pcb layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。
评估板接口资源丰富,引出fmc、sfp 、pcie、sata、hdmi等接口,方便用户快速进行产品方案评估与技术预研。
图2 tlk7-evm评估板
开发案例主要包括:
● cameralink、sdi、hdmi、pal视频输入/输出案例
● 高速ad(ad9613)采集 高速da(ad9706)输出案例
● ad9361软件无线电案例
● udp(10g)光口通信案例
● udp(1g)光口通信案例
● aurora光口通信案例
● pcie通信案例
案例源码、产品资料(用户手册、核心板硬件资料、产品规格书)可点击下方链接或扫码二维码获取。
图3
评估板通过sfp 光口接收上位机数据后,将数据重新发送至上位机(pc),以验证基于sfp 光口的10g udp网络通信功能。评估板作为udp server,上位机作为udp client。
图4 程序功能框图
将zbnet的万兆网卡mcx311插入pc机的pcie插槽中,并将一个sfp 多模双纤光模块接入万兆网卡,将另一个sfp 多模双纤光模块接入评估板sfp1光口。使用两根光纤线缆分别将sfp1的rx与万兆网卡的tx相连接,sfp1的tx与万兆网卡的rx相连接。sfp1光口使用gtx quad 116的mgtxrx_0、mgtxtx_0引脚。
图5
图6
评估板ip地址已通过udp_ip_10g模块配置为192.168.0.25。请设置pc机ip地址与评估板ip地址处于同一网段。此处将pc机ip地址设置为192.168.0.88,子网掩码设为255.255.254.0。
图7
请运行程序,此时pc机将会识别网络连接状态为10gbps。
图8
由于udp_ip_10g模块不支持arp(address resolution protocol)地址解析协议,因此需通过添加评估板ip地址和mac地址的静态映射关系。请以管理员身份打开windows powershell,并执行如下命令。
windows#arp -s 192.168.0.25 00-23-20-21-22-23 //添加评估板ip地址和mac地址的静态映射关系
windows#arp -a //查看添加状态
图9
双击打开产品资料“4-软件资料\tools\”目录下的网络调试工具sockettool_noad.exe,在弹出的界面中点击“udp client ->创建”,在“对方ip”中输入评估板ip地址,再点击确定。
图10
在“数据发送窗口”中输入需发送至评估板的数据,再点击“发送数据”。“数据接收及提示窗口”中将打印由pc机发送至评估板,以及由评估板发送至pc机的数据。
图11
4.1 cdcm6208_spi_cfg模块
本案例使用cdcm6208_spi_cfg模块配置cdcm6208的y7时钟管脚输出156.25mhz时钟,作为gtx quad 116的参考时钟。
更多说明可参考clkgen_cdcm6208案例相关内容。
图12
图13
4.2 10g ethernet pcs/pma ip核
本案例使用10g ethernet pcs/pma ip核实现物理层(pcs与pma)功能。
10g ethernet pcs/pma ip核开发文档为产品资料“6-开发参考资料\xilinx官方参考文档\”目录下的《pg068-ten-gig-eth-pcs-pma.pdf》,具体配置说明如下。
(1) 选中"additional transceiver control and status ports",新增并设置tx pre-cursor、tx post-cursor和tx diff swing选项值,以提高gtx信号传输质量。其中tx_pre_cursor设置为0x15、tx_pre_cursor设置为0xa、tx_diff_swing设置为0x9。
图14
图15
(2) 勾选shared logic的"include shared logic in core",配置10g ethernet pcs/pma ip核包含共享逻辑。
图16
4.3 udp_ip_10g模块
本案例使用udp_ip_10g模块实现10g udp协议栈与mac层。
udp_ip_10g模块开发文档为产品资料“6-开发参考资料\其他参考文档\”目录下的《udp_ip_10g.pdf》。udp_ip_10g模块源码为"project\udp_10g_echo.srcs\sources_1\imports\udp_ip_10g_stack\"。
图17 udp_ip_10g模块主要特性
图18 udp_ip_10g模块逻辑框架
udp_ip_10g模块具体配置说明如下。
图19
(1) 设置链路速率为10gbps。
图20
图21
(2) 设置评估板mac地址为00-23-20-21-22-23,ip地址为192.168.0.25,子网掩码为255.255.254.0。
图22
图23
图24
扫描下方二维码,即可申请tlk7-evm评估板进行快速评估,免费哦!
图25
kintex-7 fpga交流群:311416997、101245165
zynq-7000交流群:645235672、193393878
基于kintex-7 fpga、zynq的cameralink视频采集案例,下期为您揭晓,敬请期待。
图26