0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

全硬件TCP/IP协议栈学习笔记(第四天:全硬件TCP/IP协议模块学习)

学FPGA,慢慢来 2017-12-18 10:27 次阅读

做了许多天的网络协议学习,懵懵懂懂了解了点,索性打开说明书开始模块的学习

之前三天的学习都是在协议栈上,今天的学习进入以太网接入方案。

PS.我使用的野火W5500网络扩展板

我们的方案按TCP/IP协议栈的不同归类为两大类,第一类是传统的软件TCP/IP协议栈;第二类是最新硬件TCP/IP协议栈方案。

一.MAC+PHY方案

所谓的TCP/IP协议栈是一系列网络协议的统称,不仅包括我们熟知的TCP协议和IP协议,还有网络层的ICMP(Internet控制报文)协议,等....

传统的以太网接入方案由MCU+MAC+PHY再加入网络接口实现以太网的物理连接,通过主控芯片中植入TCP/IP协议代码实现通信及上层应用。由于软件协议栈操作需要主控MCU不停地响应中断,这需要很大程度上占用运算、时钟资源。而且在安全性上并没有保证。

二.硬件协议栈芯片方案

硬件协议栈方案

所谓的硬件协议栈是将传统的软件TCP/IP协议栈用硬件化的逻辑门电路来实现

以太网芯片的内核由传输层的TCP、UDP、ICMP、IGMP等协议,网络层的IP,ARP,PPPoE等协议以及链路层的MAC构成,再加上物理层的PHY和外围的寄存器,内存,SPI接口组成了这一套硬件化的以太网解决方案。这套硬件TCP/IP协议栈代替了以往的MCU来处理这些中断请求,即MCU只需要处理面向用户的应用层数据即可,传输层、网络层、链路层以及物理层全部由外围WIZnet的芯片完成。

首先模块针脚如下

W5500的Socket初始化,W5500需设置以下寄存器的参数

基本设置

1.模式寄存器

2.中断屏蔽寄存器

3.重发时间寄存器

4.重发计数寄存器

网络信息

1.网关地址寄存器

2.本机物理地址寄存器

3.子网掩码寄存器

4.本机IP地址寄存器

本机物理地址寄存器的地址是MAC层的硬件地址,MAC地址可由IEEE指定。

设置端口TX/RX存储信息,每个端口的基地址和屏蔽地址在这里确定并保存。W5500有一个通用寄存器,8个Socket寄存器去,以及对应每个Socket的收/发缓存区。每一个Socket的发送(接收)缓存区都在一个16KB的物理发送(接收)内存中,初始化分配为2KB。无论给每个Socket分配多大的收/发缓存,都必须在16位的偏移地址范围内(从0x0000到0xFFFF)W5500有一个16KB发送内存用于Socket_n的发送缓存区,以及一个16KB的接收内存用于Socket_n接收缓存区。发送初始缓存被分配给了每个Socket发送缓存(2KB x 8 = 16KB),初始化分配的2KBSocket发送缓存,可以通过使用Socket发送缓存大小寄存器重新分配。一旦所有的Socket发送缓存大小寄存器配置完成,16KB的发送内存就会按照配置分配给每个Socket的发送缓存,并按照从Socket0到7顺序分配。16KB的发送内存中分配了对应的发送缓冲区,用于为来自主机传输的数据做缓存。读取内存同理。

明天继续接下来的设置,然后开始SPI传输的简单学习。。

继续加油

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1270

    浏览量

    78282
  • FPGA器件
    +关注

    关注

    1

    文章

    22

    浏览量

    11570
  • 智能硬件
    +关注

    关注

    203

    文章

    2307

    浏览量

    106529
收藏 人收藏

    评论

    相关推荐

    Microchip TCP/IP 协议栈应用笔记

    电子发烧友网站提供《Microchip TCP/IP 协议栈应用笔记.pdf》资料免费下载
    发表于 04-17 14:16 0次下载

    tcp/ip协议包含哪几层?tcp和udp有什么区别?

    tcp/ip协议包含哪几层?tcp和udp有什么区别? TCP/IP
    的头像 发表于 11-29 17:40 563次阅读

    TCP/IP协议和OPC协议的区别

    随着计算机网络技术的飞速发展,网络通信已经成为现代工业自动化控制系统中不可或缺的一部分。在众多的网络通信协议中,传输控制协议TCP)和网际协议I
    的头像 发表于 10-20 17:34 1782次阅读

    TCP/IP协议是什么?TCP/IP参考模型的结构是怎样的?

    TCP/IP协议组在OSI模型之前流行。最初的TCP/IP有四层,显然与OSI模型的层不匹配。当OSI模型被引入时,人们相信它将在商业上压倒
    的头像 发表于 08-11 15:26 1429次阅读
    <b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>协议</b>是什么?<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b>参考模型的结构是怎样的?

    TCP/IP协议不止是两个协议

    TCP/IP(TransmissionControlProtocol/InternetProtocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的
    的头像 发表于 07-31 23:07 788次阅读
    <b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>协议</b>不止是两个<b class='flag-5'>协议</b>

    TCP/IP协议进阶课程:5、UDP协议

    电子发烧友网站提供《TCP/IP协议进阶课程:5、UDP协议.pdf》资料免费下载
    发表于 07-31 11:48 0次下载
    <b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>协议</b>进阶课程:5、UDP<b class='flag-5'>协议</b>

    TCP/IP协议进阶课程:6、TCP协议

    电子发烧友网站提供《TCP/IP协议进阶课程:6、TCP协议.pdf》资料免费下载
    发表于 07-31 11:47 1次下载
    <b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>协议</b>进阶课程:6、<b class='flag-5'>TCP</b><b class='flag-5'>协议</b>

    初级课程-tcp ip协议

    电子发烧友网站提供《初级课程-tcp ip协议.pdf》资料免费下载
    发表于 07-31 11:04 0次下载
    初级课程-<b class='flag-5'>tcp</b> <b class='flag-5'>ip</b><b class='flag-5'>协议</b>

    TCP/IP协议模型的五层处理流程简介

    TCP/IP是一种分层模型,它将通信协议分解为五个层次,每个层次都有特定的功能和任务。以下是TCP/IP五层的处理流程:
    的头像 发表于 07-21 16:31 1045次阅读

    TCP/IP协议包括哪些协议 一文详解TCP/IP协议

    TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的
    发表于 07-21 09:56 6574次阅读
    <b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>协议</b>包括哪些<b class='flag-5'>协议</b> 一文详解<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>协议</b>

    TCPIP协议详解

    此文档详细讲述了TCP-IP协议内容,有想了解的可以看看,丰富自己的知识。
    发表于 07-13 14:25 2次下载

    网络通信OSI协议TCP/IP协议

    TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的
    发表于 05-06 17:06 1796次阅读

    TCP/IP协议的特点

    可靠性和性能: TCP/IP协议的传输层TCP协议,提供了高可靠的数据传输服务,保证数据的完整性和顺序性,并且具有流量控制和拥塞控制等机制。
    发表于 05-06 15:15 7551次阅读

    TCP/IP协议的组成

    TCP/IP传输协议,即传输控制/网络协议,也叫作网络通讯协议。它是在网络的使用中的最基本的通信协议
    发表于 05-06 15:05 1800次阅读

    什么是TCP/IP协议

    TCP/IP是Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/网际互联协议,又名网络通讯
    发表于 05-06 15:01 2545次阅读