基于802.11b无线网站和EPXA1开发板的无线MAC开发平台

2007-03-09 19:03:27来源: 互联网
摘要:利用现在802.11b无线网卡的物理层部分和Altera公司的EPXA1开发板实现可以收发802.11b无线网络信号的软件无线电平台,在此平台基础上可自由开发各种无线局域网媒体访问控制协议。 关键词:802.11b网卡 媒体访问控制 EPXA1 开发平台 无线局域网媒体访问控制(MAC)协议的开发是目前各种无线应用研究的热点。同时MAC协议的开发、调试和实现离不开物理层(PHY)的支持。很多MAC协议的开发者由于没有物理层的支持,只能停留在协议仿真的阶段。本文提出了一个可以通过无线链路收发信号(可以与基于802.11b的无线局域网AP以及无线网卡通信)的无线MAC开发平台。该平台利用现有802.11b无线网卡的物理层部分(包括天线、射频芯片、中频芯片和基带处理器),再加上EPXA1开发板构成。利用该平台,可以EPXA1开发板上进行各种MAC协议的开发和调试。 1 系统架构 系统主要由三部分构成:802.11b无线网卡、EPXA1开发板以及两者之间转接PCB板,如图1所示。 系统中使用的802.11b无线网卡通过标准的PCMCIA接口与笔记本相连。该无线网卡最大的特点是MAC控制芯片和基带处理芯片以及前端中射频芯片是分离的,只有这样才能将其MAC芯片替换成EPXA1开发板。在无线网卡启动之前必须给基带处理芯片以及前端中频、射频芯片的控制寄存器设置合适的值。这是控制逻辑PLCI部分要做的工作。该网卡的主要组成芯片有: (a) HFA3841(Wireless LAN Medium Access Controller)是该无线网卡的MAC部分,在本设计中,将其替换成笔者的开发板。 (b) HFA3861B(Baseband processor)是无线网卡的基带处理器[3],在网卡启动过程中,需要通过相应的串行配置口对其进行配置。 (c) HFA3863A(RF/IF converter and synthesizer)芯片进行射频到中频的变换[4],需要通过相应配置口进行控制寄存器的配置。 (d) HFA3783 芯片进行中频到基带的变换[5],也需要通过相应配置口进行寄存器的配置(工作模式和工作频率等)。 Altera公司的EPXA1开发板集成了ARM922T嵌入式微处理器以及相应外设,其外设中拥有10万等效系统门的可编程逻辑器件以及相应的扩展I/O口,不需要再另外设计FPGA电路,更方便了软件和硬件的协同设计。同时,Altera公司提供的QnartusII软件,也提供了对硬件和软件协同设计的良好支持。 转接PCB板用于连接EPXA1开发板的扩展I/O口和802.11b无线网卡上有用的信号线。板上设计了一个PCMCIA插槽,用来固定无线网卡,转接板使用了隔离芯片SN74CBTD3384进行电平转换和保护EPXA1开发板,同时也通过该板给无线网卡供电。 2 设计过程 2.1 对802.11b无线网卡的处理 首先拿掉无线网卡的MAC芯片,然后将MAC芯片上与基带处理器、前端射频以及中频芯片相连的线引出,因为在网卡启动过程中,需要通过这些线对前端芯片进行相应配置。图2是无线网卡的MAC芯片与其他芯片之间的连接关系,在设计过程要确保将这些线引出到EPXA1开发板上。 2.2 转接PCB板的设计 可以参照PCMCIA接口标准,将其中的电源线、地线以及有用的地址线和数据线连接到EPXA1的扩展I/O口(逻辑高电平为5V),连接过程使用了SN74CBTD3384进行电平转换(5V到3.3V的转换)。另外在EPXA1的扩展I/O口中,有提供3.3V和5V电源的引脚,可以作为无线网卡的电源,PCB板上还可以加上测试引脚,方便硬件的调试。 2.3 PLCI部分的设计 整个系统的构架和PLCI所处的位置如图3所示。PLCI(物理层控制接口)和PLDI(物理层数据接口)是设计的重点,是利用EPXA1的可编程逻辑实现的,主要编程语言是Verilog HDL。PLCI是MAC与物理层的控制接口,它实现了对前端芯片(包括HFA3861B、HFA3683以及HFA3783)的控制寄存器的配置,包括产生配置所需的串行数据、时钟及片选信号。PLDI是MAC与物理层的数据接口,是MAC与PHY交换数据的通路;而ARM9嵌入式微处理器则运行C语言代码实现各种无线MAC协议。ARM9与外围设备之间通过AHB总线连接。 在写程序之前,首先要弄清楚各个控制寄存器的读写过程。 BBP(基带处理器)的控制接口是一个典型的三线接口,即只有时钟(SCLK、)数据(SD)和片选(CS_BAR)三个信号,没有单独的读/写使能信号,面临早用了地址的最高位来标识读或写操作。每次读/写操作时,数据线(SD)上先后出现串行的地址和数据,其中地址位的MSB(A7)=1时为写操作,表明将数据写入该地址对应的寄存器中;地址位MSB(A7)=0时为读操作,表面后面的数据是从该地址指示的寄存器中读取出来的。 HFA3683与HFA3783的读写时序相同,通过LE_RF和LE_I的有效(低有效)来决定对哪块芯片进行读写。 DATA线上的串行数据是在时钟的上升沿写入芯片中的一个20位的移位寄存器,然后在LE的上升沿写入根据LSB1和LSB2两位对应的地址。 上述的串行输出数据(SD)和时钟(SCLK)由PLCI逻辑产生。各前端芯片利用时钟的上升沿来采集数据的,所以数据与时钟的上升沿要严格对齐,有足够的建立时间和保持时间。 在PLCI的设计中,定义了一些寄存器与CPU通信,这些寄存器根据相应芯片读写时序的要求,有不同的宽度,例如BBP的写寄存器有17位,低8位为要写入的数据,高8位为要写入的寄存器的地址,最高位用来表明写入操作是否完成。以便启动下一次读写操作。 ESS(Excalibur Strpe Simulator)是一个Stripe仿真模型,它可以仿真CPU指令的执行,并用来观察PLD to Stripe和Stripe to PLD的总线时序。ADS 1.2带的AXD调试器可以模块CPU执行指令的情况,并观察每条指令执行之后系统的状态。 通过AXD Debugger与ESS的结合,可以观察一条PLD-to-Stripe或者Stripe-to-PLD总线操作指令执行后相应总线上的时序,再结合ModelSim进行仿真,方便了程序的调试。图4是ModelSim中对BBP进行配置时的仿真波形,该波形与要求的BBP的写入逻辑是一致的。 3 系统的启动和验证 在启动系统前,还必须写一个PLCI.C文件,在其中利用c函数对PLCI.V中定义的寄存器进行读写操作。 //BBP的写操作函数 void BBP_wr(long val) { *BBP_WRITE=vall0x8000; //val的高八位是地址,低八位为数据,最高位置1表明为写寄存器操作 while(((*BBP_WRITE)%26;amp;0x10000)==0x10000){} //读取标志位,一直到操作完成 } RF以及IF芯片的写操作函数类似。 BBP总共有49个寄存器要进行写入操作。 HFA3683有三个控制寄存器需要写入,HFA3783有四个控制寄存器。后面两个芯片共同的寄存器有:模式寄存器M(用于控制芯片的工作模式)、R counter寄存器和A/B counter(用于控制频率综合器的综合频率),R counter和A/B counter的具体值需要对无线网卡工作时的射频和中频频率进行测量得到。按照802.11b协议的规定之一,无线网卡工作时共有14个信道[2],所以得到的射频芯片(HFA3683A)工作频率共有14个(即有14种不同的R、A、B值),中频(HFA783)芯片的工作频率有一个。 使用的编程工具是Quartus II,它可以分别编译硬件部分(PLCI.V主要是或者verilog HDL语言)和软件部分(PLCI.C),然后再一起编译生成.hex文件下载到开发板上。 验证过程:将无线网卡设置成接收状态(RX_PE置高、TX_PEL置低、RADIO_PE置低,PE1置高、PE2置高、RESET置高、TR/SW置低)。另外需要设置好一个802.11b的AP(Access Point),将其设置在一个固定的工作频道上,同时设置RF/IF Converter的控制寄存器,使网卡也工作在该频道上。此时用逻辑分析仪监测来自BBP的三个信号:RXC、RXD、MD_RDY信号,可以在逻辑分析上得到如图5所示波形。 本系统提供了一条至MAC的最高速率为22Mbps的串行数据链路,结合EPAX1开发板上的嵌入式微处理器可以构建各种无线局域网演示系统。利用现有的无线网卡作为物理层,可以给那些专注于上层协议开发的人更多的方便。只要有相应的控制逻辑,这种系统构建方式也适用于其它的开发板,给想验证和实现自己开发MAC协议的人带来了一条捷径。笔者目前正在利用此平台开发802.11e媒体访问控制协议。
编辑: 引用地址:http://www.eeworld.com.cn/designarticles/rfandwireless/200703/10575.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

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