本帖最后由 mdyfpga 于 2022-4-14 07:57 编辑
《光纤项目》基于FPGA光纤接口接收与发送大数据传输,深度学习领域、数字信号处理等民用和军事领域的常用技术,技术要点:1.4点3.125G光纤传输、4片800M时钟DDR3缓存、高速PCIE通信,整个功能演示,光纤架构和数据流概述、模块设计与解析、DDR3/光纤IP、光纤接口、GTX接口模块以及上板验证。
【问题1】光纤项目主要是培训内容是哪些接口?
答:主要是培训DDR3/GTX接口(着重培训的是用户接口逻辑设计,也就是接口代码,而非单纯的IP核使用),本项目的工程也包括PCIE接口内容,但不会详细教授。
【问题2】GTX接口使用的是什么协议?
答:本项目是点对点通信,所以MDY使用GTX IP核后,封装了一层用户协议,这个用户协议是自定义的,参考了UDP协议的思想。
【问题3】光纤项目包含PCIE吗?
答:本项目的工程包括PCIE代码,但注意的是,虽然有PCIE代码,但文档资料以及教学内容都不包含此部分,即不教授PCIE的内容。
如果需要PCIE的学习内容,可以参考MDY的PCIE教程(注意,PCIE教程与光纤项目是完全独立的,内容没有任何相关性)。
【问题4】光纤ip 核的输入时钟是156.25M hz,输出时钟是多少呢?
答:光纤的IP核,有一个从外部时钟芯片过来的时钟,本项目中使用的是156.25M。通过该时钟,IP核产生给“用户侧”的时钟gtx_tx_clk,频率为156.25M。
同时,IP核会从LANE中恢复出接收时钟gtx_rx_clk,频率为156.25M。 注意,LANE那边是没有时钟线的。
【问题5】pcie(pcie_usr_clk) 用户侧的输出时钟是多少呢?
答:该时钟是150Hhz。 【问题6】ddr3(ui_clk )用户侧的输出时钟是多少呢? 答:该时钟是200M。 【问题7】光纤最大可以跑多少G?
答:单独从光纤接口来说,光纤接口最多可以跑10G。但如果是4条光纤都跑10G的话,总带宽是40G,PCIE则只能跑20G,即进来的数量多,送给PC的少,这样是不行的。
【问题8】现在这个光纤是跑2.5G 吗?是按16bit 数据乘以156.25Mhz 得来的吗?
答:首先是项目需要2.5G的速率,所以光纤要跑2.5G。
其次,根据2.5G,从而推算出你的用户侧时钟和数据位宽,位宽*时钟频率=2.5G。例如,位宽为1,则意味着用户侧时钟2.5G,这不现实。
位宽为16位,则时钟频率是156.25M,这是比较正常的时钟;当然,你可以选位宽为32位,时钟频率则为78.125M,也是可以。
【问题9】课程说使用的是用户自定义的协议,难道不是使用aurora协议吗?
答:本项目的IP核,其内部是使用了aurora协议的,IP核已经实现了该协议的内容。
这里所说的“自定义协议”,是指IP核之外,由用户定义的用户层协议。例如接收侧,用户从IP核收到数据后,这里数据的定义是什么,则由用户确定的。
【问题10】老师您好,高速光纤通信项目通过光纤接口进来的数据量是多大的?DDR中需要存放多少数据呢?
答:每路是2G左右
【问题11】每一路是2G,四路就是8G,那DDR可以放的了吗?
答:DDR是边存边读的,写满就丢弃。
【问题12】老师您好,高速光纤通信项目通过光纤接口进来的是什么数据,出去的又是什么数据呢?
答:项目背景是高速AD数据,出去的也是此数据。但其他我们不关心
【问题13】老师您好,想问一下光纤项目的光纤接口模块传输速率是多少,是怎么计算出来的?
答:请看问题11.7的答疑
【问题14】光纤通信项目代码是串口控制模块的,但是说明文档基本上没有讲解这一块,请问MDY有没有更详细的说明文档呢?
|