基于ARM7的无线局域网MAC层上系统架构

发布者:MysticalGarden最新更新时间:2012-04-10 来源: 赛迪网 关键字:ARM7  无线局域网  MAC层 手机看文章 扫描二维码
随时随地手机看文章
  1、 无线局域网MAC层协议

  在IEEE推出802.11-1999和802.11b以来,无线局域网在技术上已日渐成熟。在国家863计划 SoC设计方法及其关键支撑技术专项资金的资助下,我们初步完成无线局域网MAC层控制器知识产权核(IP core)的设计和验证。设计了用ARM7TDMI实现的MAC层控制器的体系结构,同时片上总线使用先进微控制器总线架构(AMBA)。该实现结构清晰,利于设计重用且设计复杂度不大,是一种值得推荐的体系结构。

  无线局域网协议描述数据链路层MAC子层及其以下各层的规范。MAC层控制器实现的规范为IEEE 802.11-1999有关的无线局域网MAC层部分。MAC层的控制分点控制和分布控制两种,其中分布控制是CSMA/CA。802.11同时定义了可选的有线网等效加密(WEP)机制。

  2、ARM核和AMBA

  MAC层控制器是802.11 协议MAC部分的物理实现。由于协议比较复杂,一般在设计中嵌入32 位处理器,而ARM 7核就是一种选择。

  ARM7TDMI为冯诺依曼体系结构,支持ARM的Thumb两个指令集,ARM对16位的Thumb指令集的支持,使其实现了比16位体系结构更高的性能和比32位体系结构更高的代码密度。

  先进微控制器总线架构AMBA是ARM公司为高性能片上微控制器定义的一套总线标准,是一种中央多路选择器互连方案,它读数据和写数据的总线分开,完成片上数据传送。AMBA包括先进高性能总线(AHB)、先进系统总线(ASB)和先进外设总线(APB)。AHB和ASB都是高性能总线,采用高性能、高带宽系统设计,它支持多个主(Master)设备和多个从(Slave)设备,ARM公司推荐使用AHB。APB实际上是二级总线,为AHB/ASB提供一个低功耗和接口简单的扩展。它从整体上说是一个从设备。APB通过桥与AHB/ASB连接。

  3、 基于AMBA的MAC层控制器方案

  系统中共有4个主设备:ARM7核、PCMCIA接口、物理层数据接口和有线网等效加密引擎。各个模块的功能:

  ARM7TDMI核:它完成系统的核心控制功能,完成802.11MAC协议,整个系统在它的控制之下工作。

  物理层数据接口(PLDI):完成与基带处理器数据端口的通信。在接收时,缓存来自基带处理器的数据,通知ARM核收到数据需要进一步处理。ARM核首先读取包头,如果数据需要缓存,则ARM核控制该接口的DMA控制器将数据净核存储到SRAM中。在发送端,它缓存来自MAC的数据,然后送给基带处理器。

  物理层控制接口(PLCI):它通过读写基带处理器的寄存器完成基带处理器的初始化和控制功能。

  有线网等效加密引擎(WEP):完成无线局域网的加密算法和进行循环冗余校验,其内有 DMA控制器。

  PCMCIA接口(PCMCIA):完成MAC处理器与主计算机的通信功能,也可以是USB或者PCI 接口等。

  中断控制器(ICTRL):中断控制模块仲裁当前哪个模块应该产生中断,ARM通过读取它的寄存器得知中断的原因。

  存储器管理单元(MMU):ARM7TDMI-S内部没有存储器管理单元,需要单独设计。存储器管理单元完成逻辑地址向物理地址的转换和其他存储器控制功能。

  串口(UART)和定时器(timers):通过UART可以与主计算机通信,完成基本的MAC控制功能和状态监视,另外实现MAC协议需要专门的定时器。

  Arbiter、Decoder、Dummy Slave、Bridge为实现AMBA所需的功能模块。SRAM的大小为256K×16,Flash的大小为128×16。

  另外,需要设计PCMCIA接口的NDIS5 WDM网络设备驱动程序。[page]

  4、 MAC控制器工作原理

  MAC控制器的工作原理:

  系统加电并复位后,Flash处于逻辑地址的最低端。ARM核读取Flash中的指令,将核心代码存入片内RAM中,然后通过写地址映射寄存器,实现物理地址和逻辑地址的重新映射,将片内RAM映射为逻辑最低端地址,重新执行初始化程序。执行片内RAM中的指令,初始化基带处理器和PCMCIA接口的属性存储器以完成初始化。

  对于来自物理层的数据,首先缓存在PLDI中。ARM核读出PLDI中的数据,处理包头,然后将数据缓存入SDRAM。ARM核根据需要通知WEP完成解密工作。解密完成后,数据被重新存入SRAM。PCMCIA接口依设备驱动程序的需要读取数据给主机。对于来自PCMCIA接口的数据,首先缓存在SRAM中。然后执行与来自物理层的数据相反顺序的操作。

  5、 若干关键子模块的设计

  5.1 PCMCIA接口

  该接口完成MAC控制器与主机的接口,左边是PCMCIA主机接口模块,实现PC Card-1995标准;右边是DMA控制器,完成与AHB的接口。来自主机的数据首先在临时存储器中缓存。存储器被管理为以256字节为单位的首尾相接的环,可以使该存储器得到最有效的利用。

  5.2 主设备中DMA控制器的设计

  所有主设备都包含一个DMA控制器,完成存储器直接存取,以减少ARM核的数据处理压力。ARM核通过从设备设定DMA控制器的寄存器,包括起始地址、数据长度、数据读写使能和读写方向等。DMA控制器通过AHB主设备接口申请使用AHB总线、完成DMA请求和响应接口和存储器之间的DMA操作。完成操作后DMA控制器将产生中断通知ARM核任务的完成情况。通道和控制逻辑完成相应的控制功能。

  5.3 PCMCIA接口中的主机接口

  接口服从PC Card-1995标准,设计为程控IO工作模式。属性存储器存储卡相关的信息如卡的类型、IO范围和申请的中断号。功能控制寄存器完成卡的进一步控制功能。

  有线网等效加密引擎的设计:该模块由CRC模块、加密模块、数据缓存模块、DMA控制器和相关控制逻辑构成。加密模块使用的是RC4加密算法。

  6、 结论

  MAC控制器有多种实现方式,包括(1)不采用AMBA架构完成与ARM核的接口方案,(2)不使用32位处理器,而是使用微码编程,这种结构更加专门化,设计复杂度更高。基于ARM7TDMI和AMBA的无线局域网MAC层控制器片上系统,结构清晰,接口为标准接口,扩展性强,符合设计重用的要求。
关键字:ARM7  无线局域网  MAC层 引用地址:基于ARM7的无线局域网MAC层上系统架构

上一篇:基于ARM的机载电台检测控制器的设计应用
下一篇:基于ARM的局域网IP电话设计

推荐阅读最新更新时间:2024-03-16 12:57

基于ARM7软中断程序的设计
1 存储器部分原理 笔者在设计一项目时采用LPC2458。此CPU为ARM7内核,带512K字节的片内FLASH,98k字节的片内RAM,支持片外LOCAL BUS总线,可从片外NOR FLASH启动CPU。由于代码量较大,程序放在片外的NOR FLASH中。且存在片外NOR FLASH在运行程序时,需对片外的NOR FLASH擦写的需求。图1为存储部分框图。 图1 存储部分原理框图 在设计中,片外NOR FLASH的大小为16M字节。其中2M规划为存放运行程序,剩余的空间用于产品运行日志,告警灯存储空间。因此存在着在程序运行时对片外NOR FLASH擦写的需求。如果程序正在正常运行的片外FLASH中去擦写
[单片机]
基于<font color='red'>ARM7</font>软中断程序的设计
基于ARM7的无线内窥系统设计
引 言   目前微米、纳米技术的研究非常活跃,使得微小技术、微型机械电子系统(MEMS)技术得到迅速发展,从而大大促进,医用器材的微型化、微观化,出现了医用光电微传感器(如无线内窥镜)。无线内窥镜以微机电系统为基础,由感知外界信息(力、热、光、生、磁、化等)的微型传感器、控制对象的执行器、信号处理和控制电路、通信接口和电源等部件组成,将信息的获取、处理和执行集成在一起,形成一体化的、具有多种功能的微型系统。   当前,医用无线内窥镜已有产品问世。以色列GI公司早在2001年5月即推出其M2A无线内窥镜产品,并获得美国FDA认证。GI公司生产的胶囊型内窥镜长为26 mm,直径为11mm,重3.5g;采用微功耗CMOS图像传
[单片机]
基于<font color='red'>ARM7</font>的无线内窥系统设计
基于ARM7微处理器的中文液晶显示技术
1 引言 液晶显示屏LCD作为一种功耗低、体积小、无辐射的显示器件,近几年被广泛应用于各式各样的嵌入式电子产品中,LCD可分为段位式、字符式和点阵式三种,其中,段位式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求,而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动动画功能,分区开窗口、反转、闪烁等功能,用途十分广泛,为了简化液晶 显示电路的设计和应用,生产厂家通常将液晶显示单元、显示控制器,显示内存和显示驱动电路等装配在一起,做成液晶显示模块LCD Module(LCM) 。LCM对外提供标准数据和控制接口以及控制指令,本文以ATM12864C为例,
[电源管理]
基于ARM7的物流系统自动引导小车控制系统设计
1 总体方案设计   物流系统自动引导小车(AGV)控制系统由AGV智能控制模块、监视模块、及无线网络通讯模块等三大部分组成。工作过程是通过接入互联网的手机或者微型计算机客户端通过无线网络向远程的AGV发送控制指令代码,期间传输信号由发送端使用加密狗加密。当信号经互联网发送到接收终端时,AGV网络模块把接受的指令传送到处理器,处理器指示驱动模块驱动AGV执行动作。运动的同时监视模块把采集到的图像通过无线互联网传输到客户机端,其整体结构如图1所示。   1.1 智能控制模块   本部分是AGv的核心部分。采用的是嵌入式系统设计,可以准确高效地运行及处理数据。控制器通过网络组件WIFI或者GPRS与外部网络进行数
[单片机]
基于<font color='red'>ARM7</font>的物流系统自动引导小车控制系统设计
周立功lpc21xx/lpc22xx系列ARM7启动代码分析
网上已经有人做了一个周立功lpc2000(ARM7TDMI)启动代码分析的文章, 我本来想做一个s3c2410(ARM920T)的启动代码分析的, 但是看来了一下2410的启动代码,发现有些东西还不是理解的很清楚, 我ARM9的经验比较少. 所以还是做一个ARM7的启动代码分析吧, 网上那一份相比,我这个主要关注startup.s文件.网上那个startup.s几乎是一笔带过的. 红色标记的是源码. SVC_STACK_LEGTH EQU 0 FIQ_STACK_LEGTH EQU 0 IRQ_STACK_LEGTH EQU 256 ABT_STACK_LEGTH
[单片机]
周立功lpc21xx/lpc22xx系列<font color='red'>ARM7</font>启动代码分析
基于IAP的ARM7程序在线更新设计
ARM处理器是一种高性能、低成本、低功耗的RISC微处理器,是目前最为流行的微处理器之一。ARM7作为ARM微处理器系列中的一员,广泛应用于工业控制、网络应用、消费电子和安全产品等。实际应用中往往需要对产品的程序进行升级以提升性能或消除缺陷,如何对已经投入使用的产品进行方便可靠的程序在线升级,是产品设计初期必须考虑的问题。尽管目前绝大多数基于Flash结构的ARM7芯片具备ISP功能,但是这需要特定的烧写软件支持和专业人员操作。烧写软件由芯片厂商提供,不便于集成到产品的主机端软件中。在产品软件功能中添加简单易用的程序升级功能十分必要,文中以NXP公司的ARM7芯片LPC2132为例,为具有IAP功能的ARM7芯片提出一个稳定的
[单片机]
基于IAP的<font color='red'>ARM7</font>程序在线更新设计
畅学多功能ARM7实验箱LED流水灯资源详解
1. 单色流水灯测试 硬件准备:8P杜邦线1根 接线说明:使用1根8P杜邦线连接ARM核心板P019~P026接底板单色流水灯模块的JP15。 跳线说明:无 分别为:P019-I1,P020-I2,P021-I3,P022-I4,P023-I5,P024-I6,P025-I7,P026-I8. 实验现象:8个LED灯依次熄灭 源码资源如下: /*****************LPC2103 GPIO流水灯实验*************** 系统设置: Fosc、Fcclk、Fcco、Fpclk #define Fosc 12000000 #define Fcclk (Fosc * 5)
[单片机]
畅学多功能<font color='red'>ARM7</font>实验箱LED流水灯资源详解
ARM7中断设置问题
在ARM教程中许多例子都有这样的话:VICVectCntl0=0X2E; 为什么就可以EINT0通道分配到IRQ Slot0。 VICVectCntl1=0X2F;又分配到slot几呢?还有许多教程中写的是 EXTMODE = 0X00; EXTPOLAR = 0X02; VICIntSelect = 0X00000000; VICVectCntl0 = 0X20|15; VICVectAddr0 = (int)IRQ_Eint1; EXTINT = 0X02; VICIntEnable = 0X00008000; VICVectCntl0 = 0X20|15; 又是什么意思,中间|是怎么回事。0X20或15是什
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved