问如何实现单片以太网微控制器
答诀窍是将微控制器、以太网媒体接入控制器MAC和物理接口收发器PHY整合进同一芯片这样能去掉许多外接元器件这种方案可使MAC和PHY实现很好的匹配同时还可减小引脚数、缩小芯片面积单片以太网微控制器还降低了功耗特别是在采用掉电模式的情况下
问以太网MAC是什么
答MAC即MediaAccessCo
trol即媒体访问控制子层协议该协议位于OSI七层协议中数据链路层的下半部分主要负责控制与连接物理层的物理介质在发送数据的时候MAC协议可以事先判断是否可以发送数据如果可以发送将给数据加上一些控制信息最终将数据以及控制信息以规定的格式发送到物理层在接收数据的时候MAC协议首先判断输入的信息并是否发生传输错误如果没有错误则去掉控制信息发送至LLC层该层协议是以太网MAC由IEEE8023以太网标准定义最新的MAC同时支持10Mbps和100Mbps两种速率以太网数据链路层其实包含MAC介质访问控制子层和LLC逻辑链路控制子层一块以太网卡MAC芯片的作用不但要实现MAC子层和LLC子层的功能还要提供符合规范的PCI界面以实现和主机的数据交换MAC从PCI总线收到IP数据包或者其他网络层协议的数据包后将之拆分并重新打包成最大1518Byte最小64Byte的帧这个帧里面包括了目标MAC地址、自己的源MAC地址和数据包里面的协议类型比如IP数据包的类型用80表示最后还有一个DWORD4Byte的CRC码可是目标的MAC地址是哪里来的呢这牵扯到一个ARP协议介乎于网络层和数据链路层的一个协议第一次传送某个目的IP地址的数据的时候先会发出一个ARP包其MAC的目标地址是广播地址里面说到:‖谁是xxxxxxxxxxxx这个IP地址的主人?‖因为是广播包所有这个局域网的主机都收到了这个ARP请求收到请求的主机将这个IP地址和自己的相比较如果不相同就不予理会如果相同就发出ARP响应包这个IP地址的主机收到这个ARP请求包后回复的ARP响应里说到‖我是这个IP地址的主人‖这个包里面就包括了他的MAC地址以后的给这个IP地址的帧的目标MAC地址就被确定了其它的协议如IPXSPX也有相应的协议完成这些操作IP地址和MAC地址之间的关联关系保存在主机系统里面叫做ARP表由驱动程序和操作系统完成在Microsoft的系统里面可以用arpa的命令查看ARP表收到数据帧的时候也是一样做完CRC以后如果没有CRC效验错误就把帧头去掉把数据包拿出来通过标准的借口传递给驱动和上层的协议客栈最终正确的达到我们的应用程序还有一些控制帧例如流控帧也需r