基于ARM的IEEE 802.11b MAC层协议IP核设计
发布时间:2008/5/27 0:00:00 访问次数:716
1 系统硬件平台设计及功能描述
整个系统硬件平台的设计主要分mac层和物理层两部分。硬件平台的结构框图如图1所示。其中mac层部分主要围绕32位微处理器arm7tdmi和amba总线设计,其主要的单元模块和功能如下:
·pcmcia接口,此接口为硬件平台和主机的通信接口。其设计遵循pc card标准(版本5)。
·wep算法加解密模块,此模块用硬件实现ieee 802.11b mac层协议定义的有线网等效加/解密算法。
·物理层数据接口,此接口用于完成物理层与mac的数据交互操作,内部设计有发送和接收fifo,用于完成数据的接收发送缓存。
·物理层控制接口,此接口用于完成mac层对物理层的控制功能。例如无数据收发时,可以通过此接口控制物理层部分转入节能状态。
·存储器管理模块,此模块用于实现对系统所有存储器(如flash、rom、ram)的管理,处理器通过此模块对存储器进行访问。
·中断控制逻辑,此模块用于对系统中各模块产生的中断信号进行控制和管理。
·微处理器单元arm7tdmi,用于完成与主机的通信,负责整个系统的控制和管理。
物理层部分的设计主要分为四个单元:
·基带处理单元,主要用于完成基带信号的处理操作,如rake接收、均衡、数/模、模/数转换等。
·中频处理单元,主要用于完成信号的调制解调处理。
·混频处理单元,主要用于完成射频中频的变频处理。
·射频处理单元,主要完成射频信号的功率放大处理。
mac层的主要模块单元(外部存储器单元除外)用verilog硬件描述语言设计并用xilinx的fpga virtexⅱxc2v3000编程实现。物理层部分则主要用intersil公司的prism芯片组及少量外围电路设计实现。
2 sdl及软件开发平台
sdl是一种层次化的描述语言,采用结构化和自顶向下的设计原则,把系统规范分为系统、块、子块、进程、服务和过程几个层次进行描述。系统、块和子块是静态描述,用于描述系统的结构;进程、服务和过程是动态描述,用于描述系统的行为。sdl的理论模型是通信扩展有限状态机,每个进程都是一个通信扩展有限状态机。
sdl与常用的高级语言有很好的接口,如可以从sdl描述的系统规范直接导出c、chill甚至vhdl语言,以嵌入式系统和软硬件混合系统实现;在进行规范定义时,sdl又允许嵌入高级语言,如c/c++语言、omt/uml对象模型、asn.1或corba/idl数据类型定义等。因而可以在多个层次上对系统进行准确的规范和描述。因为sdl的上述特性,目前已被越来越多地用于协议软件的开发实现。
本文选用telelogic公司的sdt4.3和arm公司的ads1.2作为主要的软件开发工具。使用sdt进行协议软件的开发步骤如图2所示。
在系统行为定义阶段,要特别注意代码生成器对sdl设计的约束,例如对于c advanced生成器不支持信道子结构、信号细化等;对于c micro生成器不支持连续信号、服务、优先输入/输出等。在系统行为分析仿真调试阶段,使用c basic/c advanced代码生成器产生系统代码,与sdt提供的仿真内核一起编译链接,得到系统行为的仿真模型,然后可以使用text、sdl、msc等多种跟踪方式进行仿真调试。在系统行为验证时,使用相同的代码只不过编译链接时加入sdt提供的验证内核,可得到系统行为的验证模型,可以使用自动状态空间遍历、覆盖率分析等方式进行系统行为的验证。仿真和验证都无环境函数,由仿真器和验证器充当系统的环境,产
1 系统硬件平台设计及功能描述
整个系统硬件平台的设计主要分mac层和物理层两部分。硬件平台的结构框图如图1所示。其中mac层部分主要围绕32位微处理器arm7tdmi和amba总线设计,其主要的单元模块和功能如下:
·pcmcia接口,此接口为硬件平台和主机的通信接口。其设计遵循pc card标准(版本5)。
·wep算法加解密模块,此模块用硬件实现ieee 802.11b mac层协议定义的有线网等效加/解密算法。
·物理层数据接口,此接口用于完成物理层与mac的数据交互操作,内部设计有发送和接收fifo,用于完成数据的接收发送缓存。
·物理层控制接口,此接口用于完成mac层对物理层的控制功能。例如无数据收发时,可以通过此接口控制物理层部分转入节能状态。
·存储器管理模块,此模块用于实现对系统所有存储器(如flash、rom、ram)的管理,处理器通过此模块对存储器进行访问。
·中断控制逻辑,此模块用于对系统中各模块产生的中断信号进行控制和管理。
·微处理器单元arm7tdmi,用于完成与主机的通信,负责整个系统的控制和管理。
物理层部分的设计主要分为四个单元:
·基带处理单元,主要用于完成基带信号的处理操作,如rake接收、均衡、数/模、模/数转换等。
·中频处理单元,主要用于完成信号的调制解调处理。
·混频处理单元,主要用于完成射频中频的变频处理。
·射频处理单元,主要完成射频信号的功率放大处理。
mac层的主要模块单元(外部存储器单元除外)用verilog硬件描述语言设计并用xilinx的fpga virtexⅱxc2v3000编程实现。物理层部分则主要用intersil公司的prism芯片组及少量外围电路设计实现。
2 sdl及软件开发平台
sdl是一种层次化的描述语言,采用结构化和自顶向下的设计原则,把系统规范分为系统、块、子块、进程、服务和过程几个层次进行描述。系统、块和子块是静态描述,用于描述系统的结构;进程、服务和过程是动态描述,用于描述系统的行为。sdl的理论模型是通信扩展有限状态机,每个进程都是一个通信扩展有限状态机。
sdl与常用的高级语言有很好的接口,如可以从sdl描述的系统规范直接导出c、chill甚至vhdl语言,以嵌入式系统和软硬件混合系统实现;在进行规范定义时,sdl又允许嵌入高级语言,如c/c++语言、omt/uml对象模型、asn.1或corba/idl数据类型定义等。因而可以在多个层次上对系统进行准确的规范和描述。因为sdl的上述特性,目前已被越来越多地用于协议软件的开发实现。
本文选用telelogic公司的sdt4.3和arm公司的ads1.2作为主要的软件开发工具。使用sdt进行协议软件的开发步骤如图2所示。
在系统行为定义阶段,要特别注意代码生成器对sdl设计的约束,例如对于c advanced生成器不支持信道子结构、信号细化等;对于c micro生成器不支持连续信号、服务、优先输入/输出等。在系统行为分析仿真调试阶段,使用c basic/c advanced代码生成器产生系统代码,与sdt提供的仿真内核一起编译链接,得到系统行为的仿真模型,然后可以使用text、sdl、msc等多种跟踪方式进行仿真调试。在系统行为验证时,使用相同的代码只不过编译链接时加入sdt提供的验证内核,可得到系统行为的验证模型,可以使用自动状态空间遍历、覆盖率分析等方式进行系统行为的验证。仿真和验证都无环境函数,由仿真器和验证器充当系统的环境,产