一种基于ARM和FPGA的可重构MAC协议bob综合体育官方
  • 时间:2022-06-13
  • 点击率:

为了研究实际信道条件下的Ad Hoc网络MAC协议,克服商用网卡芯片和理论仿真带来的局限性,搭建了基于ARM和FPGA的硬件平台,设计并实现了基于CSMA/CA的可重构MAC协议。仿真测试验证了协议设计的正确性。为MAC协议在Ad Hoc网络中的实际应用提供了有益的参考。关键词:媒体访问控制;带碰撞避免的载波侦听多路访问:FPGA0简介基于CSMA/CA的MAC协议的优势在于简单性和健壮性,适用于分布式网络。每个节点可以独立地决定何时接入信道,而无需维护和动态更新其邻居节点的状态信息。只要上层有数据要传输,MAC层就会争夺信道,所以这个协议的应用相当广泛。嵌入式技术的发展也为MAC协议的实现提供了良好的技术支持。本文构建了基于ARM和FPGA的嵌入式开发平台,设计并实现了基于CSMA/CA的MAC协议。由于ARM和FPGA都是可重构器件,FPGA中的一些协议参数是由ARM设置的,所以通过修改ARM的代码就可以实现FPGA中协议功能的调整,方便快捷,不再需要重新生成位文件进行下载,有利于MAC协议重构的实现。1协议功能描述1.1消息结构本设计实现了基于CSMA/CA的MAC协议的基本接入方式,节点间的通信只有数据帧(DATA)和确认帧(ACK)。图1显示了消息结构,其中ACK没有净数据部分。考虑到一跳范围内的无线通信,没有中继节点,所以只有源节点号和目的节点号。

本文引用地址:http://www.eepw.com.cn/article/148811.htm

a.JPG

1.2组网设计本文设计的MAC协议不仅满足物理载波侦听和虚拟载波侦听相结合检测信道忙闲的基本机制,还包括帧间间隔、随机退避、确认和重传机制。有数据要发送的节点会先监听媒体,如果忙,会继续等待。如果空空闲时间大于或等于DIFS或EIFS,它将进入退避过程。在退避过程中,节点会随机产生一个退避时间来设置退避定时器,同时继续监听媒体。如果空的空闲时间达到一个时隙,退避定时器将减去一个时隙。如果介质在此期间变得繁忙,回退过程将被暂停,并且回退过程将不会继续,直到介质空的空闲时间再次到达DIFS或EIFS。当退避定时器变为0时,节点被允许开始发送数据,同时,超时重传机制将被启动。如果在指定时间内没有收到所需的ACK,将会重新传输数据帧。当节点的重传次数超过重传阈值时,数据帧将被丢弃,或者数据帧的最长允许传输时间也将被丢弃。当节点接收到ACK时,它将开始准备下一次数据传输。当接收节点收到发送给自己节点的正确数据帧时,它将立即回复源节点的ACK。如果节点没有接收到正确的数据帧,则EIFS;将被使用;如果接收到正确的数据帧,但是它不是寻址到该节点,则该节点将解析持续时间,更新NAV,并且认为该信道被占用。1.3功能划分本设计充分利用ARM灵活方便的优势,实现对随机退避算法和协议参数的管理,如重传次数、帧间间隔的设置等。随机退避算法使用第I个退避从2i个时隙中随机选择一个值作为节点需要退避的值。协议的参数设置由ARM完成,主要是考虑到FPGA不利于参数修改,这样也可以增强协议的可重构性。FPGA凭借其出色的实时信号处理优势,用于管理MAC帧的发送和接收控制。2协议设计中MAC层的工作状态主要由物理载波侦听和虚拟载波侦听决定(即MAC_flag=CS_flag或NAV_flag)。当两者都显示为空 idle时,MAC层就会进入发送数据帧的状态。同时,协议还需要时钟计数。IFS_time是每个节点进入退避过程前需要等待的时间,实现了帧间间隔的功能。Back _ time是退避过程中每个节点的退避时间;NAV_time是在通信节点没有预留信道的时间。这三个时间也和整个协议的状态有关。图2给出了具体的实现流程图,具体的实现过程步骤如下:

b.JPG


客服QQ: 点击这里
地址:台州市寨金路899号电子时代广场5116室 客服QQ:329435596
Copyright © 2022 bob综合体育官方入口 版权所有

08980-89895656

服务时间:7X10小时