基于zynq的千兆网udp项目_千兆以太网 TCP,UDP协议,FPGA实现

(注:此文为经典重发,之前在EETOP公众号已推送过,看过的可以略过)

(该文包含了比较多的代码,建议点击阅读原文前往论坛查看原帖)

目前TCP协议年夜多由cpu跑代码实现, 这次用FPGA的纯逻辑实现 , System Verilog编写,下面给年夜家粗略讲一下我的实现体例,下面是工程的示意图.

千兆以太网 TCP,UDP协议,FPGA实现-1.jpg (31.7 KB, 下载次数: 0)

2018-8-26 20:20 上传

这个工程由几部分组成, 外部使用了88e1111千兆以太网phy。FPGA内部有几个年夜的模块,

顶层模块:

//

tcpip_hw

Description

top module

Author(s):

- bin qiu, [email protected] or [email protected]

Copyright (C) 2015

//

`include "tcpip_hw_defines.sv"

module tcpip_hw(

input clk,

input rst_n,

output mdc,

inout mdio,

output phy_rst_n,

output is_link_up,

input [7:0] rx_data,

output logic [7:0] tx_data,

input rx_clk,

input rx_data_valid,

output logic gtx_clk,

input tx_clk,

output logic tx_en,

//user interface

input [7:0] wr_data,

input wr_clk,

input wr_en,

output wr_full,

output [7:0] rd_data,

input rd_clk,

input rd_en,

output rd_empty

);

。。。。

(由于微信字数限制,此处省去200多行代码,可以点击阅读原文查看)

1. 与外部phy芯片通信的模块,simple_mac模块。

主要功能是通过mdio配置phy, 给发送帧打包(加入preamble,padding和crc32),和接收帧解包。 下面是顶层代码:

//

simple_mac_top

Description

top module of simp

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值