特权同学

【技术分享】以太网,FPGA就一定能搞定系列之概述篇

0
阅读(9274)

以太网,FPGA就一定能搞定系列之概述篇

本系列博文节选自特权同学的FPGA开发电子书《SF-CY3 FPGA套件开发指南》。

最新设计文档下载地址:http://pan.baidu.com/s/1em79m

1 概述

         如图所示,SF-NET子板围绕CH395芯片,一端通过32PINOUTTPIN连接器连接到SF-CY3核心板的FPGA上进行数字通信,另一端通过RJ45水晶头连接器连接到以太网中。CH395是一颗集成了以太网MACPHY的专用芯片,功能强大,能够进行10M/100M的以太网传输。在数字端,CH395可以使用简单的SPIUART接口和其他处理器进行数据交互。CH395I/O电压使用3.3V,由SF-CY3核心板直接供给;内核电压使用1.8V,需要通过一颗LDO转换得到。此外,CH395还需要外部30MHz的晶体时钟输入,这在图中未示意,大家可以参看电路图。

        SF-NET子板套件的全家福如图所示。

11.1 功能与原理图介绍... PAGEREF _Toc374704611 \h 747

11.1.1 主要外设芯片及电路图解析... PAGEREF _Toc374704612 \h 747

11.1.2 装配示意图... PAGEREF _Toc374704613 \h 752

11.2逻辑(Verilog)实例21——基于串口调试助手的CH395基本通信测试... PAGEREF _Toc374704614 \h 753

11.2.1 概述... PAGEREF _Toc374704615 \h 753

11.2.2 FPGA中的互联代码... PAGEREF _Toc374704616 \h 753

11.2.3 板级环境搭建... PAGEREF _Toc374704617 \h 754

11.2.4 PC端串口工具调试... PAGEREF _Toc374704618 \h 755

11.2逻辑(Verilog)实例21——基于串口调试助手的CH395基本通信测试... PAGEREF _Toc374704619 \h 762

11.2.1 概述... PAGEREF _Toc374704620 \h 762

11.3 基于Qsys NIOS II 21——CH395基本通信... PAGEREF _Toc374704621 \h 763

11.3.1 概述... PAGEREF _Toc374704622 \h 763

11.3.2 Qsys硬件工程移植... PAGEREF _Toc374704623 \h 764

11.3.3 软件设计... PAGEREF _Toc374704624 \h 770

11.3.4 板级调试... PAGEREF _Toc374704625 \h 817

11.4 基于Qsys NIOS II 实例22——MACRAW模式ARP请求... PAGEREF _Toc374704626 \h 818

11.4.1 概述... PAGEREF _Toc374704627 \h 818

11.4.2 以太网协议概述... PAGEREF _Toc374704628 \h 819

11.4.3 CH395应用概述... PAGEREF _Toc374704629 \h 821

11.4.4 MACRAW模式介绍... PAGEREF _Toc374704630 \h 822

11.4.5 ARP简介... PAGEREF _Toc374704631 \h 823

11.4.6 软件设计... PAGEREF _Toc374704632 \h 825

11.4.7 板级调试... PAGEREF _Toc374704633 \h 834

11.5 基于Qsys NIOS II 实例23——IPRAW模式收发传输实例... PAGEREF _Toc374704634 \h 839

11.5.1 概述... PAGEREF _Toc374704635 \h 839

11.5.2 IPRAW模式介绍... PAGEREF _Toc374704636 \h 839

11.5.3 IP协议解析... PAGEREF _Toc374704637 \h 840

11.5.4 软件设计... PAGEREF _Toc374704638 \h 841

11.5.5 板级调试... PAGEREF _Toc374704639 \h 852

11.6 基于Qsys NIOS II 实例24——UDP模式传输实例... PAGEREF _Toc374704640 \h 857

11.6.1 概述... PAGEREF _Toc374704641 \h 857

11.6.2 UDP协议解析... PAGEREF _Toc374704642 \h 857

11.6.3 UDP模式介绍... PAGEREF _Toc374704643 \h 858

11.6.4 TCP/UDP端口介绍... PAGEREF _Toc374704644 \h 858

11.6.5 软件设计... PAGEREF _Toc374704645 \h 860

11.6.6 板级调试... PAGEREF _Toc374704646 \h 870

11.6.7 基于labview UDP调试助手的板级调试... PAGEREF _Toc374704647 \h 874

11.7 基于Qsys NIOS II 实例25——TCP客户端模式传输实例... PAGEREF _Toc374704648 \h 879

11.7.1 概述... PAGEREF _Toc374704649 \h 879

11.7.2 TCP协议解析... PAGEREF _Toc374704650 \h 879

11.7.3 TCP连接的建立和断开... PAGEREF _Toc374704651 \h 881

11.7.4 TCP客户端模式介绍... PAGEREF _Toc374704652 \h 883

11.7.5 软件设计... PAGEREF _Toc374704653 \h 884

11.7.6 板级调试... PAGEREF _Toc374704654 \h 885

最新设计文档下载地址:http://pan.baidu.com/s/1em79m

 

2 模块电路介绍

         CH395是以太网协议栈管理芯片,用于单片机系统进行以太网通讯。

         CH395 芯片自带10/100M 以太网介质传输层(MAC)和物理层(PHY),完全兼容IEEE802.3

10/100M协议,内置了PPPOEIPDHCPARPICMPIGMPUDPTCP等以太网协议栈固件。嵌入式处理器可以方便的通过CH395芯片进行网络通讯。

         CH395支持三种通讯接口:8位并口、SPI接口或者异步串口,单片机/DSP/MCU/MPU等控制器可以通过上述任何一种通讯接口控制CH395芯片进行以太网通讯。我们使用的CH395Q封装只支持SPIUART通信。

         下图为CH395的应用框图。

         CH395芯片的主要特性如下。

● 内部自带以太网介质传输层(MAC)和物理层(PHY)

● 支持10/100M,全双工/半双工自适应,兼容802.3 协议。

● 支持多种模式的地址过滤。

● 与 802.3x 全双工流控和半双工背压流控完全兼容。

● 支持MDI/MDIX 线路自动转换。

● 内置TCP/IP协议簇,支持IPv4DHCP ARPICMPIGMPUDPTCP协议。

● 内置PPPOE(仅CH395Q)协议,支持PAPCHAP认证。

● 提供4个独立的Socket对,可以同时进行数据收发。

● 提供高速8位被动并行接口,支持连接到单片机的并行数据总线。

● 提供最高30MHz速度的SPI设备接口,支持连接到单片机的SPI串行总线。

● 提供最高3Mbps速度的异步串口,支持连接到单片机的串行口,支持通讯波特率动态调整。

● 支持低功耗模式。

● 内置24K RAM,可用于以太网数据收发。每传输通道独立拥有2KB发送缓冲区和4KB的接收缓冲区。

● 提供LQFP64MLQFP128无铅封装,兼容RoHS

        

3 装配示意图

         如图所示,SF-NET子板的P5插座连接SF-CY3核心板的P3插座,SF-NET子板的P6插座用于连接网线。

 

4 实验效果展示图

         如图所示,这是使用labview调试工具进行以太网数据收发的界面。