西安邮电学院 计算机系,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2020-12-24,page,ARM9,高级功能部件,以太网控制器,第,11,章,2024/11/16,1,西安邮电学院 计算机系,ARM9高级功能部件以太网控制器 第11章2023/,11.1,以太网控制器概述,11.2,特性,11.3,结构和操作,11.4 DMA,引擎功能及操作,11.5,以太网包格式,11.6,管脚描述,11.7,以太网,MAC,、控制等寄存器定义,11.8,中断,11.9,使用示例,ARM9,高级功能部件,以太网控制器,2024/11/16,2,西安邮电学院 计算机系,11.1 以太网控制器概述ARM9 高级功能部件以太网控,11.1,以太网控制器概述,10M,100M,速率。,以太网使用,DMA,硬件加速访问,分担操作,.,以太网模块连接到,AHB,矩阵。,以太网使用,MII(Media Independent Interface)or RMII(reduced MII),协议,.,片上,MIIM(Media Independent Interface Management),总线连接到片外的,PHY.,2024/11/16,3,西安邮电学院 计算机系,11.1 以太网控制器概述10M,100M速率。2023/9,以太网概述,以太网模块包含一个功能齐全的,10Mbps,或,100Mbps,以太网,MAC,(媒体方位控制器),这个以太网,MAC,通过使用,DMA,硬件加速功能来提供优化的性能。,以太网模块的功能:,包括大量的控制寄存器、半双工或全双工操作、流控制、控制帧、用于重新发送的硬件加速功能、接收包过滤以及,LAN,上的唤醒。,利用分散,-,集中式,DMA,进行自动的帧发送和接收操作,分担了来自,CPU,的大量操作。,2024/11/16,4,西安邮电学院 计算机系,以太网概述以太网模块包含一个功能齐全的10Mbps或100M,以太网模块,以太网模块,:一个连接到,AHB,矩阵的,AHB,主机,用于访问内部,SRAM,和连接到以太网控制器的存储器来获得以太网数据、控制和状态信息。,LP3200,系列,ARM,系列,ARM,中的其他,AHB,通信可使用其他主机进行,从而有效地将以太网活动与系统的其他部分分开。,以太网模块使用,MII,(媒体独立接口)或,RMII,(简化的,MII,)协议以及,MIIM(,媒体独立接口管理,),串行总线来连接片外的以太网,PHY,。,2024/11/16,5,西安邮电学院 计算机系,以太网模块以太网模块:一个连接到AHB矩阵的AHB主机,用于,以太网缩写词及定义,2024/11/16,6,西安邮电学院 计算机系,以太网缩写词及定义2023/9/286西安邮电学院 计算机系,2024/11/16,7,西安邮电学院 计算机系,2023/9/287西安邮电学院 计算机系,特性:,P261,以太网标准支持:10M或100M PHY器件,存储器管理:独立的发送和接收缓存,DMA管理,通过缓存和预取通信。,增强的功能:过滤、多播、广播、CRC,物理接口:MII 或RMII连接外部PHY芯片,软件可选,通过MIIM独立接口管理访问PHY寄存器。,2024/11/16,8,西安邮电学院 计算机系,特性:P261以太网标准支持:10M或100M PHY器件2,结构和操作,2024/11/16,9,西安邮电学院 计算机系,结构和操作2023/9/289西安邮电学院 计算机系,结构框图的组成,主机寄存器,与发送、接收通道MAC连接,到AHB的DMA 接口,通过该接口可访问IRAM或EMC;,以太网MAC和RMII适配器;,发送通道:发送DMA管理器、重试模块、发送流量控制模块等;,接收通道:接收DMA管理器、以太网MAC、接收滤波器、接收缓存;,2024/11/16,10,西安邮电学院 计算机系,结构框图的组成主机寄存器,与发送、接收通道MAC连接2023,以太网包格式:,2024/11/16,11,西安邮电学院 计算机系,以太网包格式:2023/9/2811西安邮电学院 计算机系,管脚描述:,2024/11/16,12,西安邮电学院 计算机系,管脚描述:2023/9/2812西安邮电学院 计算机系,寄存器简介,以太网,MAC,寄存器:,MAC,配置寄存器,1,(,MAC1),、,MAC,配置寄存器(,MAC2,)、最大帧寄存器(,MAXF),、,PHY,支持寄存器(,SUPP),、,MII Mgmt,配置寄存器、,MII Mgmt,命令寄存器、,MII Mgmt,地址寄存器、,MII Mgmt,写数据寄存器、,MII Mgmt,读数据寄存器、,MII Mgmt,指示寄存器,模块控制寄存器:,中断状态寄存器、中断使能寄存器、中断清零寄存器、中断置位寄存器、掉电寄存器。,2024/11/16,13,西安邮电学院 计算机系,寄存器简介以太网MAC寄存器:MAC配置寄存器1(MAC1),寄存器简介,控制寄存器,:命令寄存器(,Command,)、状态寄存器(,Status,)、接收描述符基址寄存器、接收状态基址寄存器、接收描述符数目寄存器、接收产生索引寄存器、接收消耗索引寄存器、发送描述符基址寄存器、发送状态基址寄存器,接收滤波器寄存器,:接收滤波器控制寄存器、接收滤波器,WoL,状态寄存器、接收滤波器,WoL,清零寄存器、,Hash,滤波器表,LSBs,寄存器、,Hash,滤波器表,MSBs,寄存器。,2024/11/16,14,西安邮电学院 计算机系,寄存器简介控制寄存器:命令寄存器(Command)、状态寄存,寄存器和软件接口:,寄存器地址映像,MAC配置寄存器,MAC相关;,控制寄存器,命令、状态,接收、发送、流量控制等;,滤波寄存器,接收滤波,HASH滤波,模块控制寄存器,中断等,2024/11/16,15,西安邮电学院 计算机系,寄存器和软件接口:寄存器地址映像2023/9/2815西安邮,MAC,配置,2024/11/16,16,西安邮电学院 计算机系,MAC配置2023/9/2816西安邮电学院 计算机系,控制寄存器,2024/11/16,17,西安邮电学院 计算机系,控制寄存器2023/9/2817西安邮电学院 计算机系,接收滤波寄存器:,2024/11/16,18,西安邮电学院 计算机系,接收滤波寄存器:2023/9/2818西安邮电学院 计算机系,模块控制寄存器,2024/11/16,19,西安邮电学院 计算机系,模块控制寄存器2023/9/2819西安邮电学院 计算机系,以太网DEMO:,基于,C/OS-II,模板,VIC,管理接口,基于,TCP,基于,UDP,基于,WEB,2024/11/16,20,西安邮电学院 计算机系,以太网DEMO:基于C/OS-II模板VIC管理接口202,基于,C/OS-II,模板,VIC,管理接口,标准驱动API总共提供了7个函数给用户使用,其中vicIrqFuncSet()、vicIrqFuncClr()、vicIrqStatusGet()、vicIrqEnable()、vicIrqDisable()五个函数用于向量IRQ中断模式的管理;vicFiqSet()、vicFiqClr()两个函数管理FIQ中断资源。,2024/11/16,21,西安邮电学院 计算机系,基于C/OS-II模板VIC管理接口标准驱动API总共提供,宏定义说明,中断触发类型定义,LPC3200,系列,ARM,向量中断有四种触发类型,分别为高电平、低电平、上升沿和下降沿,在模板中已经定义如程序清单,1.1,所示。相关定义在模板的,vicControl.h,文件中找到。,2024/11/16,22,西安邮电学院 计算机系,宏定义说明中断触发类型定义 2023/9/2822西安邮电学,向量号宏定义,LPC3200,系列,ARM,的中断控制器由一个主中断控制器和两个子中断控制组成,在模板中,为方便函数接口设计,将三个中断控制器的中断号依次排列,在模板的,vicControl.h,的文件中可以查找到,具体定义如程序清单,1.2,所示。,2024/11/16,23,西安邮电学院 计算机系,向量号宏定义LPC3200系列ARM的中断控制器由一个主中断,2024/11/16,24,西安邮电学院 计算机系,2023/9/2824西安邮电学院 计算机系,向量,IRQ,函数接口,设置并使能向量,IRQ,中断函数,vicIrqFuncSet,,如表,1.1,所示。,2024/11/16,25,西安邮电学院 计算机系,向量IRQ函数接口设置并使能向量IRQ中断函数vicIrqF,禁止,IRQ,中断资源函数,vicIrqFuncClr,,如表,1.2,所示。,2024/11/16,26,西安邮电学院 计算机系,禁止IRQ中断资源函数vicIrqFuncClr,如表1.2,2024/11/16,27,西安邮电学院 计算机系,2023/9/2827西安邮电学院 计算机系,禁止相应通道,IRQ,中断函数,vicIrqDisable,,如表,1.4,所示。,2024/11/16,28,西安邮电学院 计算机系,禁止相应通道IRQ中断函数vicIrqDisable,如表1,重新使能,IRQ,中断函数,vicIrqEnable,,如表,1.5,所示。,2024/11/16,29,西安邮电学院 计算机系,重新使能IRQ中断函数vicIrqEnable,如表1.5所,基于TCP实验,使用TCP协议,完成HTTP连接,实现web网页的访问,上位机和开发板配置为同一网段,当在web浏览器中键入开发板程序设置的IP地址时,即可打开开发板中存储的web网页。用网线将开发板与电脑相连,然后运行下面的程序。当程序运行后,在电脑上打开IE浏览器,输入开发板的IP地址,就可以打开一个写好的网页脚本。,2024/11/16,30,西安邮电学院 计算机系,基于TCP实验使用TCP协议,完成HTTP连接,实现web网,基于,ucos-ii,的网络设计的思想(,C/S,模式):,面向连接的,TCP,:,编程方式:,服务器程序:需要监听连接,只有在与客户机建立连接后才能进行数据处理。,客户机程序:主动连接服务器,它也是在连接成功后才进行数据处理。,基于,TCP,的程序编程流程如下图:,2024/11/16,31,西安邮电学院 计算机系,基于ucos-ii的网络设计的思想(C/S模式):面向连接,socket(),bind(),listen(),accept(),recv(),send(),close(),socket(),connect(),send(),close(),recv(),应答数据,请求数据,建立连接,阻塞,等待客户数据,处理服 务请求,服务器,客户机,closesocket(),删除套接字,2024/11/16,32,西安邮电学院 计算机系,socket()bind()listen()accept(),无连接的UDP:,编程方式:,服务器程序:先接收到数据再进行处理。,客户机程序:先发送数据然后等待回应处理。,相同点:它们所用到的,Socket,API,函数是相同的。,基于,UDP,的程序的编程流程如下图:,2024/11/16,33,西安邮电学院 计算机系,无连接的UDP:编程方式:2023/9/2833西安邮电学院,socket(),bind(),recvfrom(),sendto(),closesocket(),删除套接字,socket(),bind(),sendto(),recvfrom(),服务应答,服务请求,阻塞,等待客户数,处理服务请求,服务器端,客户端,closesocket(),删除套接字,2024/11/16,34,西安邮电学院 计算机系,socket()bind()recvfrom()sendto,安全生产日日好,员工生活步步高。,11月-24,11月-24,Satur