嵌入式Linux下网卡设备驱动与网络协议栈的设计实现

来源 :东南大学 | 被引量 : 0次 | 上传用户:fkjunjin
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
如今网络已成为人们工作生活不可分割的一部分,在嵌入式系统中实现网络功能,一方面是许多设备应用的内在需求,另一方面逐渐成为嵌入式系统开发调试的标准手段。以太网从出现至今已三十多年,由于其高性能价格比和容易普及使用,已经在企业内部互联网、外部互联网以及国际互联网中得到了广泛应用。 本文在基于 Unity805+微处理器的嵌入式系统平台上提出了嵌入式系统以太网接入的硬件和软件解决方案。Unity805+微处理器是高校自主研发的32位嵌入式应用处理器,其设计面向低成本手持设备和其它通用嵌入式设备。以太网控制器选择了NE2000 10Base-T兼容的RTL8019AS芯片,在硬件方案中采用了单RTL8019AS芯片的固定跳线连接,通过Unity805+的.EMI接口来实现对RTL8019AS芯片寄存器组、DMA的访问,通过复用GPIO口来接收芯片中断。接着在分析NE2000兼容网卡功能和RTL8019AS芯片特点的基础上提出了软件解决方案,其中包括两个部分:一部分是Bootloader级别的,另一部分是嵌入式Linux系统级别的。在Bootloadcr级别的设计中选择使用了U-Boot做为模板,在分析并充分利用其原有的网络功能框架的基础上,添加RTL8019AS芯片驱动,实现了BOOTP/DHCP、TFTP等协议功能。在嵌入式Linux系统级别的设计实现中,以设备无关层和驱动层为核心分析Linux的网络协议栈实现,提取出网络帧收发的流程,阐述了内核与网络设备交互的不同方法及其对性能的影响。然后针对netif_rx和NAPI两种不同的网络接收帧接口,提出了基于该嵌入式平台的RTL8019AS以太网控制器驱动的实现方法。在最后的章节中,总结了搭建BOOTP/DHCP、NFS、FTP等应用的服务器、客户端配置,并对各网络应用进行了验证与评测。目前基于该方案设计的Unity805+手持多媒体设备开发平台的网络功能运行稳定。在180MHz的处理器主频下,U-Boot的TFTP接收速率约为210KBps,在低背景流量下netif_rx和NAPI驱动的FTP接收速率分别约为810KBps和880KBps。
其他文献
随着微电子机械系统(MEMS)科研开发和产业化的快速发展,MEMSCAD(计算机辅助设计)的需求日益显现。MEMS表面制造加工技术中的牺牲层腐蚀技术对器件的性能有着重要影响,因此利
聚乙烯醇(PVA)浆料在经纱上浆中应用广泛,但化学结构稳定,退浆产生大量难降解的废水,对生态环境造成了极大的负担.文中以成本低廉、来源广泛富含角蛋白的废弃毛羽为原料,研发
以再生涤纶和传统涤纶为研究对象,采用差示扫描量热仪对纤维热学性能进行测试;采用单纱强力仪对纤维力学性能进行测试;并对纤维的耐碱性能及染色性能进行了研究.结果 表明,与
文中研究了有机硅改性阳离子水性聚氨酯(CPSU)的发泡体系(树脂浓度、发泡剂及稳泡剂的种类与浓度)对泡沫稳定性的影响,将所得泡沫以泡沫微涂层的形式处理在羊绒针织物表面,并