VxWorks实时操作系统下MPC8260ATM驱动的实现
文件大小: 90k
源码售价: 10 个金币 积分规则     积分充值
资源说明:本文介绍了PowerPC MPC8260工作在ATM模式的原理,给出了在VxWorks实时操作系统下的END模式的ATM驱动程序设计及实现,实验证实该驱动通过Mux层在IP层与链路层之间建立了数据传输通道。 VxWorks实时操作系统是WindRiver公司开发的一种专为嵌入式系统设计的高效实时操作系统,它在IP层和链路层之间引入了Mux层,目的是为了简化网络编程,屏蔽底层硬件的复杂性。在VxWorks下实现MPC8260ATM驱动涉及到的关键知识点包括PowerPC MPC8260处理器的ATM模式工作原理、VxWorks的END(Enhanced Network Drivers)框架以及ATM驱动程序的设计和实现。 PowerPC MPC8260是飞思卡尔(现NXP半导体)的一款基于PowerPC架构的微处理器,其通信处理模块(CPM)支持多个快速串行通信控制器(FCC)。在ATM模式下,FCC通过UTOPIA接口与物理层设备交互,处理ATM信元的接收和发送。ATM信元由53字节组成,包含VPI/VCI信息,用于映射到逻辑通道。接收时,FCC将接收到的信元地址映射到逻辑通道,并使用缓冲描述符存储数据。发送时,通过ATM步长控制器调度信元,然后通过FCC发送到物理层设备。 VxWorks的END程序框架设计是实现IP层与链路层间数据传输的关键。END驱动程序提供了一个END_OBJ数据结构,包含了驱动程序的信息和指向NET_FUNCS的指针,NET_FUNCS定义了一系列标准的入口函数,使得IP层可以通过END驱动与链路层进行数据交换。END驱动程序的主要功能包括初始化、数据发送、数据接收和中断处理。 在实现ATM驱动程序时,需要定义关键的数据结构,如DRV_CTRL,它包含了MPC8260的FCC基地址、设备编号、中断号和内存管理相关的信息。此外,AtmConnectionData结构用于存储ATM连接的参数,如逻辑地址、信元速率等,并管理与每个通道相关的BD链表。在建立连接时,每个通道都会有一个独立的BD表,采用循环链表结构提高缓冲效率。 驱动程序的实现过程主要包括四个部分:控制器初始化、中断处理、内存管理和数据帧的收发。初始化阶段需要配置设备并加载END驱动,这涉及对END_OBJ的分配和初始化,以及对MUX接口的设置。中断处理部分负责处理来自ATM控制器的中断事件,内存管理则涉及BD表的分配和管理。数据帧的接收和发送是驱动的核心功能,它们通过END驱动程序提供的接口与IP层交互。 实现VxWorks实时操作系统下的MPC8260ATM驱动,需要深入理解PowerPC MPC8260的ATM操作模式,熟悉VxWorks的网络架构特别是END驱动模型,以及掌握ATM协议栈中的数据处理机制。通过这样的驱动程序,可以实现IP层与ATM链路层之间的高效通信,从而在嵌入式系统中构建可靠的ATM网络服务。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。