基于FPGA无线传感器网络MAC控制器的设计
媒体访问控制(Medium Access Control,MAC)协议处于无线传感器网络协议的物理层和网络层之间。用于在传感器节点间公平有效地共享通信媒介。它完成载波侦听多路访问(CSMA/CA)的信道存取、协议格式成帧或解帧、自动应答、系统多周期定时和帧校验等功能。
不同传感网络的应用有着不同MAC协议,其中IEEE802.15. 4是最具代表性的协议。本文给出了用FPGA的控制逻辑来实现无线传感器网络MAC控制器的设计方法,并最终实现了符合IEEE802.15.4协议的控制器。
1 总体设计方案
无线传感器网络控制器的FPGA设计包括无线传感器网络MAC子层的FPGA设计、MAC子层与上层协议的接口设计以及与物理层(PHY)的接口设计。该无线传感器网络的总体结构设计如图1所示。整个系统分为发送模块、接收模块、CSMA/CA协处理器模块、PHY接口模块和MCU接口模块5个部分。发送模块和接收模块主要完成MAC帧的发送和接收功能,包括MAC帧的封装和解包,它直接提供了到外部物理层芯片(PHY)的串行接口。CSMA/CA协处理器是MAC的核心,控制接收和发送状态机协调半双工收发控制,并且通过程序执行的方式完成CSMA—CA算法。
2 模块实现
2.1 MAC发送模块
发送模块可将上层协议提供的数据封装之后通过PHY接口发送给PHY。发送状态机按照帧的格式将数据进行封装,分别在数据的前端添加前导序列和帧起始分隔符以及在数据的后端添加CRC校验值,封装后的整个数据包以串行格式发送出去。因此,发送部分的功能包括前导序列和帧起始分隔符插入、CRC计算、帧发送和自动应答等功能。
发送模块包括发送FIFO(First In First Out)缓存器模块(Tx_FIFO)、发送状态机模块(Tx_FSM)、自动应答模块(Tx_Ack)、发送计数器模块(Tx_Counter)和CRC计算模块(Tx_Crc)等5个子模块。其内部结构如图2所示。
2.1.1 发送状态机Tx_FSM
Tx_FSM是整个发送模块的状态机,它是整个发送模块的核心,主要用于产生发送过程中各个模快的控制信号。发送的状态转移,如图3所示。TxCSP_en是来自MAC控制部分CSMA/CA协处理器的发送状态机控制信号。当TxCSP_en信号为高电平时,启动状态机,开始帧的发送过程。
(1)IDLE:初始状态。当发送状态机上电复位或者成功接收到数据包时,进入此状态。如果收到TxCSP_en信号时,开始数据发送过程,否则,保持此状态。
(2)Tx_Preamble:发送前导序列。当状态机将跳变到此状态,开始向数据线上发送符合特定组合的前导码序列。IEEE802.15.4协议的帧格式的前导序列是4 Byte O。
(3)Tx_SFD:发送帧起始分隔符。在这个状态下开始发送帧的帧起始符,IEEE802.15.4协议的帧格式的帧起始符为10100111。同时启动计数器,对该过程进行计数。
相关文章
- 2022-06-14基于CAN_BUS的控制器调试系统的设计
- 2023-04-26地铁列车运行引起的振动对精密仪器的影响研究
- 2023-12-06双导联输人心电采集控制系统
- 2023-05-23智能车磁导航中的信号调理电路设计
- 2022-07-15基于FPGA的2M误码测试仪设计
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。