新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 构建拥有自主MAC层协议的无线网卡

构建拥有自主MAC层协议的无线网卡

作者:时间:2005-02-27来源:网络收藏

摘要:阐述方法和实现过程。改进了基于Intersil公司的PRISM 2系列套片的无线局域网解决方案,使用DSP和CPLD来替代其中的层控制芯片,实现开发。

关键词:无线网卡 PRISM2 TMS320VC5402 EPM7128AE MAC

随着无线网络应用领域的增长,各种无线接入方式不断涌现,基于IEEE 802.11无线以太网标准的宽带无线接入系统凭借其高达11~54Mbps的数据传输速率及其建网速度快、运营成本低、投资成本回报快等特点获得用户的青睐。但是无线网卡芯片供应商只向用户提供套片解决方案,这对研究无线局域网MAC层协议的高校和科研单位来说极为不便。通常的作法是:首先开发出自己的MAC层协议软件,然后使用信道仿真器来仿真此MAC层协议。这种作法的缺点是不能在物理信道上实测。本文针对该问题,基于Intersil公司的PRISM2系列无线局域网套片的解决方案,去掉其中的MAC层控制芯片,使用TMS320VC5402和PEM7128AE来完成对套片其它芯片的控制和数据交换,实现的MAC层协议无线网卡。

图1

1 无线网卡解决方案

Intersil公司的PRISM2系列无线网卡套片及其主要功能如表1所列。

使用该套片,根据Intersil公司提供的无线局域网解决方案,就可以方便地IEEE802.11b的无线网卡。

参考Intersil公司的提供的无线局域网解决方案,笔者提出的自主MAC层协议的无线网卡解决方案如图1所示。

在该方案中,去掉了PRISM2系列套片中的MAC层控制芯片HFA3841,用TMS320VC5402和EPM7128AE来实现对PRISM2系列其它芯片的控制和数据交换,自主MAC层协议的无线网卡。

图2

2 无线网卡的接口分析

根据Intersil公司提供的套片数据手册及其各芯片的接口关系可知,要构建自主MAC层协议的无线网卡,替代芯片组TMS320VC5402和EPM7128AE须有以下接口能力。

①具有足够的通用I/O口,以便与套片的各个控制引脚相连接,对其进行置位或清位操作,从而使无线网卡处于正确的收发状态。

②具有SPI接口,能够对HFA3683、HFA3783和HFA3861中各个寄存器进行初始化。同时需要注意的是,对HFA3861来说应该是16位的数据传输格式,先传数据高位;对HFA3783和HFA3683来说,应该是20位的数据传输格式,先传输数据高位。

③具有连续数据传输的能力,能够与HFA3861进行连续的数据交换。需要注意的是数据接收和发送的时钟都需要由HFA3861来提供。

根据TMS320VC5402的芯片资料可知,TMS320VC5402具有2个支持多种接口标准且能高速双向数据传输的多通常缓冲同步串口(McBsp)。将DMA与McBsp相结合,在不占用CPU资源的情况下,可以构造自动收发的串行数据传输通道。同时EPM7128AE提供了足够的门阵列单元和I/O引脚,可以完成对无线卡控制引脚的置位或清位操作,同时还可以在EPM7128AE里面设计完成802.11b的部分功能(如退避、定时、设置NA位、CRC32校验等)。

由以上分析可知,使用TMS320VC5402和EPM7128AE来替代HFA3841完成对套片的设置、控制和数据交换,以实现拥有自主MAC层协议的无线网卡是可行的。替代芯片组与无线网卡套片的接口关系如图2所示。其中,TMS320VC5402的串口0负责对HFA3861、HFA3783和HFA3683的寄存器进行初始化;串口1负责与HFA3861进行数据交换;EPM7128AE的I/O引脚与套片的控制引脚相连,进行相应的控制操作。

3 无线网卡的接口实现

根据上述分析可知,利用TMS320VC5402和EPM7128AE完成对无线网卡的控制主要分以下三个步骤。

①对于无线网卡的各个寄存器的初始化。由于DSP对HFA3861、HFA3783和HFA3683寄存器初始化时的数据传输格式不同,而在本接口设计中又使用了同一个串口,所以在对寄存器进行设置前要将DSP的串口0初始化为正确的工作模式。另外,若寄存器的初始化值错误或寄存器的初始化顺序不对,则初始化工作不能正常进行,各个芯片也不能处于正确的工作状态。由于这里涉及的寄存器过多,在这里就不一一多述,请参考数据手册的说明。

图4

②对于无线网卡的控制引脚设置。套片控制引脚的配置,主要由CPLD内的“控制引脚配置模块”来完成。现对网卡发数据过程作一示例,此时要求各个相关的控制引脚状态如图3所示。当DSP要发送数据时,首先发送一个特殊的配置数据CTRL_SND,在CPLD内完成译码工作,然后启动“发送数据控制引脚配置模块”,由该模块来完成各控制引脚状态的变化,进而完成数据的发送。数据发送完毕,应第一时钟内将各控制引脚置为接收态。

③无线网卡的数据收发。无线网卡的基带数据收发波动如图4所示,它采用的是数据连续传送模式,这就要求DSP的McBsp和DMA结合起来,完成数据的连续传输。为了和通用的无线网卡兼容,需要将串口设置为8位的数据传输模式,先传数据的高位。需要注意的一点是,无论数据收发,都需要由HFA3861来提供时钟,而HFA3861本身并不提供帧同步信号,所以说帧同步需要在CPLD内由HFA3861提供的时钟来产生。但是并不能简单地由8时钟产生一帧同步的方法来产生,否则数据的错位比较严重。正确的作法是充分利用TX_RDY和RX_RDY这两个信号,由它们控制产生合适的帧同步信号。

4 无线网卡的操作

至此,按照图5的顺序来操作无线网卡,就可以正确的进行数据收发。

5 结论

通过对PRISM2系列无线网卡套片的接口时序分析,用DSP和CPLD来替换其中的MAC层控制芯片,构建拥有自主MAC层协议的无线网卡,实践证明是可行的。我们在863重大项目“无线移动自纺织互联网及其实验系统的研制”中得以成功应用,实现了增强型802.11b MAC协议。



评论


相关推荐

技术专区

关闭