| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 通信接口设计,千兆以太网,光纤通信 -> 正文阅读 |
|
[网络协议]通信接口设计,千兆以太网,光纤通信 |
1 千兆以太网设计1.1 以太网结构????????FPGA?得到?204B?解帧后的数据,共?6?路需通过千兆网传送至上位机完成数据的存储同时给出性能分析。 ????????其中应用层、传输层与网络层,可由软逻辑实现,由用户完成。 ????????数据链路层多为模数组合电路,该层协议在?FPGA?上可由XILINX?官方提供的三态以太网?MAC?核来完成设计。 ????????物理层可采用外挂的物理层芯片来构建。 ????????传输层可以走?TCP?或?UDP?协议,TCP?协议基于三次握手机制,是可靠稳定的传输协议,但该协议开销较大,不便于设计。由于本次设计不要求实时性,因此,为了便于设计采用?UDP?协议。 ????????数据链路层交由?MAC IP?核来完成,发送端口主要是完成基于?AXI4-Stream?的以太网帧的构建,而接收接口主要是将来自于?MAC?核的以太网帧进行解析,剥离出用户真正需要的数据。发送引擎会将用户的待发送数据转换成?GMII?帧格式,并添加相应的填充字段,而后由?GMII/MII?模块进行组帧发送给外挂的?PHY?芯片。 ?1.1.1发送接口?????????正常的发送帧传输时序如图?4.2?所示。当用户要发送帧时,将数据加载在tx_axis_mac_tdata?端口上,并拉高?tx_axis_mac_tvalid?信号。MAC?核将通过拉高tx_axis_mac_tready?信号来接受数据的前两个字节,然后等待直到?tx_axis_mac_tready再次拉高,发送数据帧的其余部分。通过在帧的最后字节上拉高?tx_axis_mac_tlas?信号,从而将帧的结束信号发送给MAC?内核。同时,为了校验发收双方以太网帧参数(目标地址?DA,源地址?SA,长 ?1.1.2 接收接口????????图?4.3?显示了正常接收帧的传输的时序。用户必须随时准备接受数据,因为?MAC核内没有缓冲以允许接收逻辑中存在延迟。帧接收开始后,数据将在连续的有效周期内传输到接收逻辑,直到完整帧接收完成时,MAC?核拉高?rx_axis_mac_tlast?信号以指示传输已完成中?rx_axis_mac_tuser? ?1.1.3管理接口????????管理接口用于配置?MAC?内核,配置地址/帧过滤器,管理中断及访问统计信息等,配置过程基于?AXI4-Lite?协议,通过将配置参数加载到?s_axi_wdata[31:0]信号上,而后被读到?MAC?核中。 ????????绍物理层的设计,在基于?XILINX的?FPGA?的?MAC?与?PHY?之间的连接方式主要有两种方案,一种是基于并行传输的GMII?和?RGMII?接口,时钟频率较低,工作时钟为?125MHz,由?PHY?芯片连接至?RJ45完成传输。另一种是?SGMII?接口,该接口基于高速串行协议,工作时钟频率较高,为?625MHz,可不接?PHY?芯片,通过走?GTX?来完成传输,但需要连接至光模块来完成设计。 1.2 控制接口设计????????将?6?路的?AD?降采样数据发送至上位机,时钟为?180MHz,单通道位宽?32bit,每路发送点数为?32768?点。?UDP?帧的数据区域最大为?1500?字节,为了方便设计定每帧的数据长度为?1024?字节。?RGMII?的工作时钟为?125MHz,发送数据位宽为?8bit,ADC?降采样的采样频率为?180MHz ????????需作跨时钟域处理。处理方法为将?6?路数据以?180MHz?写入?6?个深度为?32768?的双口?RAM ????????写入操作为并行操作,即?6?路数据以?start?信号上升沿为基准,同时写入到?RAM。 ?????????FIFO?是先进先出的存储器,有数据线,无地址线,有单独的空满标志信号,控制较为简单,但其容量不如双口?RAM,由于先进先出这一特点,其更适合用来做数据缓冲。双口?RAM?的控制复杂些,其数据线和地址线分开需做单独控制,且有两套地址线,较?FIFO?来说更为复杂,但其容量较大,可做小批量数据的存储。 ?2 光纤通信? ? |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 23:29:05- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |