基于ARM的IEEE802.11bMAC层协议IP核设计
关键词:ARM 802.11, IP
目前各种协议的设计实现,大多数是基于微处理器、微控制器或DSP的嵌入式系统。ARM是ARM公司推出的高性能32位RISC微处理器,具有业界领先的体系结构,被广泛6应用于各种系统设计中。基于ARM的开发通常使用C、C++或汇编语言。笔者采用了更高级的形式语言SCL,大大缩短了协议的开发周期并提高了设计的可移植性。无线局域网是目前通信领域的一个研究热点,无线局域网的协议是非常典型的协议。本文将详细讨论使用SDL进行无线局域网802.11b MAC层协议的设计以及基于微处理器ARM7TDMI的系统实现方案。其设计方法具有普遍意义。
1 系统硬件平台设计及功能描述
整个系统硬件平台的设计主要分MAC层和物理层两部分。硬件平台的结构框图如图1所示。其中MAC层部分主要围绕32位微处理器ARM7TDMI和AMBA总线设计,其主要的单元模块和功能如下:
·PCMCIA接口,此接口为硬件平台和主机的通信接口。其设计遵循PC Card标准(版本5)。
·WEP算法加解密模块,此模块用硬件实现IEEE 802.11b MAC层协议定义的有线网等效加/解密算法。
·物理层数据接口,此接口用于完成物理层与MAC的数据交互操作,内部设计有发关和接收FIFO,用来完成数据的接收发送缓存。
·物理层控制接口,此接口用于完成MAC层对物理层的控制功能。例如无数据收发时,可以通过此接口控制物理层部分转入节能状态。
·存储器管理模块,此模块用于实现对系统所有存储器(如FLASH、ROM、RAM)的管理,处理器通过此模块对存储器进行访问。
·中断控制逻辑,此模块用于对系统中各模块产生的中断信号进行控制和管理。
·微处理器单元ARM7TDMI,用于完成与主机的通信,负责整个系统的控制和管理。
图1 硬件平台结构框图
物理层部分的设计主要分为四个单元:
·基带处理单元,主要用于完成基带信号的处理操作,如Rake接收、均衡、数/模、模/数转换等。
·中频处理单元,主要用于完成信号的调制解调处理。
·混频处理单元,主要用于完成射频中频的变频处理。
·射频处理单元,主要完成射频信号的功率放大功能。
MAC层的主要模块单元(外部存储器单元除外)用Verilog硬件描述语言设计并用Xilinx的FPGA Vertex II xc2v3000编程实现。物理层部分则主要用Intersil公司的PRISM芯片组及少量外围电路设计实现。
2 SDL及软件开发平台
SDL是一种层次化的描述语言,采用结构化和自顶向下的设计原则,把系统规范分为系统、块、子块、进程、服务和过程几个层次进行描述。系统、块和子块是静态描述,用于描述系统的结构;进程、服务和过程是动态描述,用于描述系统的行为。SDL的理论模型是通信扩展有限状态机,每个进程都是一个通信扩展有限状态机。
SDL与常用的高级语音有很好的接口,如可以从SDL描述的系统规范直接导出C、CHILL甚至VHDL语言,以嵌入式系统和软硬件混合系统实现;在进行规范定义时,SDL又允许嵌入高级语言,如C/C++语音、义等。因而可以在多个层次上对系统进行准确的规范和描述。因为SDL的上述特性,目前已被越来越多地用于协议软件的开发实现。
本文选用Telel
《基于ARM的IEEE802.11bMAC层协议IP核设计》