APP下载

基于FPGA WSN轮询接入控制协议的研究

2016-11-24刘龙军丁洪伟柳虔林刘正纲

通信学报 2016年10期
关键词:轮询分组节点

刘龙军,丁洪伟,柳虔林,2,刘正纲

(1. 云南大学信息学院,云南 昆明 650091;2. 云南省军区,云南 昆明 650051)

基于FPGA WSN轮询接入控制协议的研究

刘龙军1,丁洪伟1,柳虔林1,2,刘正纲1

(1. 云南大学信息学院,云南 昆明 650091;2. 云南省军区,云南 昆明 650051)

媒体接入控制(MAC)协议是连接物理链路和网络层直接的纽带,是保证网络高效通信的关键协议之一。根据无线传感器网络汇聚节点的工作特性,首次以FPGA(field programmable gate array)对轮询机制的接入控制协议进行了设计和实现。该设计充分利用FPGA的灵活性和可重构性的特点,采用硬件描述语言Verilog HDL和原理图相结合的方法,使用QuartusⅡ8.0进行综合和布线,在DE2开发板上进行测试。该设计具有实时性好、可靠性高、可移植性强等特点,能够有效减小传输时延,提高总线利用率。可广泛应用于无线传感器网络、软件无线电网络、ad hoc网络、军用综合业务网络、移动通信网络、物联网等领域。

无线传感器网络;限定服务;排队队长;轮询周期;吞吐量;FPGA

1 引言

近年来,分簇算法在无线传感器网络(WSN,wireless sensor network)中得到了广泛应用,与ad hoc网络相比,它更偏重于保持网络整体消耗能量的均衡,避免“热点”问题出现,尽可能地使网络节点中信息分组的平均排队队长缩短[1]。文献[2]提出一种负载均衡和高效节能的分簇算法,可依据节点的具体距离,建立目标簇并调整网络运行所覆盖的区域,进而缩短节点中信息分组的平均排队队长,进一步延长网络生存时间,实现系统负载均衡。文献[3]针对快速动态系统对模型预测控制实时性和微型化需求,提出了一种现场可编程门阵列(FPGA, field programmable gate array)实现方法。文献[4]针对WSN自组网需求,提出了一种基于FPGA的高速运算处理的对等网络节点的自组网设计方法,构建了WSN专用设计IP核,以解决各种不同的WSN网络层路由协议和各类WSN应用问题。文献[5]在介绍RapidIO协议和Serial IPcore用户接口基础上,描述了 Serial RapidIO(SRIO)交换架构在 FPGA上的编程方法,并采用双缓存机制实现了位宽和数据流速的转换,实现了多SRIO节点间的高速数据通信功能。文献[6]针对恶劣环境现场数据采集难题,采用WSN设计了一种高精度数据采集系统,其网络节点以FPGA为主控芯片,采用模块化设计思想,在24 kHz采样率下实现监测区域内频率为1 kHz的不同声音信号高精度采集。

从上述研究工作中不难看出,分簇可以对WSN节点做层次划分。一个簇是由2个或2个以上的相邻传感器节点构成,每个簇要选择簇内的一个节点作为簇首。在具体组网时,各个簇的簇首节点负责对簇内的数据进行收集、融合和传输,从而减少数据通信量,当网络结构发生变化时,簇结构进行更新,以维护网络的正常运转[7]。在分簇算法中,簇首节点会根据需要作周期替换,如果当前簇首无法满足要求,则由满足的节点替换当前簇首节点成为新的簇首;选定新的簇首后,簇结构就确定了下来,相应的自组织网络也变为相对固定的簇结构,簇内各个节点由簇首节点依次对其进行查询并传输信息;部分WSN节点会在固定的时间段进入休眠状态,在信息采集时会被唤醒,因此,WSN的簇内节点也不是绝对稳定的[8]。

在无线传感器网络中,当某个节点的能量耗尽、离开所在簇或处于休眠状态时,该节点就会从轮询表中被删除,其后的节点会得到该节点的顺序号,后面节点顺序依次修改。本文对簇内节点采用限定(K=1)轮询服务控制方式[9],得到如表 1所示的 4节点的轮询表 ,簇首节点发出广播信息,再通过各节点反馈信息建立轮询表,这样便建立起一种新的基于轮询控制WSN分簇MAC协议模型(如图1所示)。这里对轮询控制机制说明如下。

1) 用1, 2, 3, …, N来标明WSN中簇首节点对簇内节点的查询顺序。

2) 采用限定(K=1)服务策略实现WSN簇首对簇内各节点中数据的收集、融合,即当某个节点获得服务时,簇首为该节点发送一个信息分组,经过一个轮询转换时间后,开始查询下一个节点。该服务策略对各节点服务是均等的,因而提高了整个系统的公平性。

3) 类似地,N取其他值的情况可以由 N=4的轮询表依次得出,这样就可构建出一个大型 WSN自组织网络,而且可以采用所提出的MAC协议模型来进行描述。

表1无线传感器网络簇首轮询

图1WSN分簇轮询控制MAC协议模型

FPGA自问世以来,在通信领域一直是其主战场。与专用集成电路(ASIC, application specific integrated circuit)相比,FPGA开发周期更短,与通用数字信号处理(DSP, digital signal processing)芯片相比,FPGA更具优势和竞争力。FPGA具有的逻辑单元是百万级的,运算速度快,灵活性高,可扩展性好,可移植性强,具有可重复编程和可完全重新配置的优良性能[10]。在通信领域,协议扮演着重要角色。目前,单一制式、单一标准的通信协议难以生存,多标准通信协议便成为演进方向,其演进时间不是同步的,传统的ASIC应用范围在缩小,而FPGA应用范围在扩大,并占据着市场的主导地位。此外,通信产品个性化需求日益突显,产品需求也是多样化的。FPGA所具有的可编程性、灵活性,使其成为通信产品应用首选。因此,基于该模型采用FPGA来设计MAC协议具有很重要的现实意义。

2 相关性能分析

基于WSN分簇轮询控制MAC协议模型,利用限定(K=1)轮询服务系统的分析方法和结果,采用PGF概率母函方法以及LST方法来建立相应的数学模型,通过研究解析,获得簇首和节点的特性参数[11]。参照图1所示的控制机制,对系统的工作条件假设如下。

1) 由一个簇首和N个节点组成的WSN网络,簇首对节点信息采集分组数的随机变量服从一个相互独立、同分布的概率分布;到达i号节点存储器内的信息分组服从泊松分布,到达率为iλ=λ。

2) 节点在获得信息传输权后,按照限定(K=1)服务规则,发送一个信息分组,其传输时间随机变量服从一个相互独立、同分布的概率分布,其传输时间随机变量的概率母函数、均值和方差分别为和

3) 在一个簇中,N个节点的轮询转换时间随机变量服从一个相互独立、同分布的概率分布,其概率母函数、均值分别为和

4) 在tn时刻,系统的概率母函数为

根据图1所示的分簇轮询控制MAC协议模型,在WSN中使用限定(K=1)服务的MAC控制协议模型的相关性能指标分别如下。

1) 在 WSN中使用限定(K=1)服务的 MAC控制协议时系统的平均循环周期为

其中,ρ=λβ为系统工作强度。

2) 在 WSN中使用限定(K=1)服务的 MAC控制协议时系统中平均存储的信息分组数为

3) WSN中使用限定(K=1)服务的MAC控制协议时系统的吞吐量为

4) 根据如图1所示的分簇轮询控制MAC协议模型,假设节点中信息分组到达过程服从到达率为λ的泊松分布;节点信息分组传输过程以及查询转换过程服从均值分别为β和γ的均匀分布,数据在传输过程中无差错,依据式(2)~式(4)便可求得节点信息分组的平均排队队长和系统的平均循环周期,采用计算机仿真实验方法可验证理论分析和计算结果的正确性。

3 系统模块化设计

根据FPGA自顶向下的设计特点,限定(K=1)服务轮询控制系统的实现需要对其分模块进行设计[12]。根据系统的原理,在设计时,以包含4个网络节点为例,把系统分为信源模块、senor node模块、轮询控制模块和接收站点模块分别进行设计。

3.1 信源模块设计

由限定(K=1)服务轮询控制策略的原理可知,信源模块需要产生具有一定到达率λ且符合泊松分布的信息分组,以此代表senor node所采集到的信息数据。FPGA是硬件电路,易产生伪随机数,但要产生符合泊松分布的伪随机序列是比较困难的。设计时,利用matlab中的poissrnd函数产生泊松分布序列,并设定λ值。利用FPGA的ROM对产生的泊松分布序列进行读取,再通过一定的映射转换关系,得到多位数据输出,即为信源产生的信息分组。便于检验,设计中输出的每一个信息分组的数据值都为10101010。

3.2 senor node模块设计

senor node模块要具备信息分组的存储功能,要能够在读、写信号的控制下,按照FCFS的顺序进行信息分组的存入和读出[13]。图2是利用4个异步FIFO设计的senor node模块。当轮询到某一节点时,首先判断该节点储器内是否有需要发送的信息分组,若“empty”为高电平,说明存储器为空,则无信息分组需要发送,就转去轮询下一个节点;若“empty”为低电平,则发送该senor node存储器内最先进入的那一个信息分组,之后转去查询下一个节点。这与senor node模块所要实现的功能是一致的。

图2senor node模块FPGA电路设计

3.3 轮询控制模块设计

轮询控制模块是系统按照限定(K=1)服务策略工作的控制中心。图3为轮询控制模块的状态转换。当服务器访问到某一节点,即该节点的服务信号c=1时,若其存储器内有需要发送的信息分组(即empty=0),则为该senor node发送一个信息分组(即K=1);若empty=1,说明该senor node无信息分组要发送,则转到下一个节点(即 K=0)。这与限定(K=1)服务策略是相符的。

3.4 接收站点模块设计

接收站点模块需要完成从总线上正确读取所对应的senor node发送的信息分组的功能。由于总线的利用率不可能达到 100%,在接收时就需要滤除总线空闲时的全零错误数据[14]。图4是接收站点模块电路。当轮询控制信号s有效,即该接收站点所对应的senor node正在接受服务器服务且总线数据不是错误数据时,把此时总线上的数据存储在FIFO内。通过始终置为高电平的读取控制信号r,在FIFO不为空(empty=0)时,读取FIFO内的数据,即为该站点接收到的信息分组。

图3轮询控制模块状态机

3.5 系统顶层设计

图4接收站点模块电路

依据限定(K=1)服务轮询系统原理,将信源模块、senor node模块、轮询控制模块和接收站点模块连接构成系统。图5为系统的FPGA顶层设计图。4个信源模块各自产生符合泊松分布的信息分组,4个senor node在轮询控制模块的控制下,按照限定(K=1)服务策略发送各自存储器内的信息分组。4个senor node发送的信息分组经或门电路后传到总线上。由于4个senor node不可能同时发送信息分组,故此处不会发生数据冲突。4个接收站点从总线上读取各自所对应的senor node发送的信息分组,以此验证所设计的系统是否完成了信息分组正确传送的控制功能。

图5系统顶层设计

4 系统评估

4.1 仿真测试

利用QuartusⅡ8.0进行综合和布线,系统工作时钟CLK周期设定为1 ns,复位信号rst低电平时系统复位,高电平时系统正常工作。对所设计的系统进行仿真,得到如图6所示的仿真结果。把所设计的系统下载到DE2 Cyclone Ⅱ2c35 F672c6开发板上进行测试,其结果与仿真结果一致。

图6系统仿真结果

图6为所设计的限定(K=1)服务轮询系统仿真结果。图中d4为4号senor node发送的信息分组,r4为4号接收站点接收到的信息分组。二者数据值完全相同,且都是10101010,这与信源所产生8位信息分组的值是一致的。与d4相比,r4在时间上有一个时隙(8 ns)的时延,这与一般的通信系统相比,延时是非常小的[15],其他3个senor node的情况与4号senor node相同。pbus为总线上传输的信息分组,pbus为0的时段非常短,且都是在senor node间轮询转换时出现的,比起一般的系统,总线的利用率是相对较高的。图6中s1、s2、s3、s4为4个senor node获得发送权的标识信号,可以看出,4个senor node是按逻辑顺序依次接受服务器轮询访问的,且获得发送权的senor node只发送了一个信息分组。比起完全服务轮询控制策略和门限服务轮询控制策略,限定(K=1)服务轮询控制策略规定了网络中每个senor node接受簇首节点服务的机会是均等的,不会因为每个senor node信息分组的到达率不同而改变,保证了系统的公平性。此外,对于一些突发业务的出现,限定(K=1)服务轮询控制策略以其稳定的服务时长和轮询周期,保证了QoS。从仿真结果中可以知道,4个senor node是轮流接受簇首节点服务的,有效防止了多个 senor node同时发送信息分组而产生的碰撞。这与设计的初衷是相符的。

4.2 统计分析

根据限定(K=1)服务轮询系统的原理,可得到该系统平均排队队长、平均轮询周期和吞吐量的统计表达式。

平均排队队长

平均轮询周期

系统吞吐量

其中,Ngro(i)为仿真过程中第i(i=1,2,3,4)号senor node在每次被访问时其存储器内的信息分组数的累加值,Ngro为总线上传输的信息分组的总数,Ncp为统计循环周期总数,Tall为仿真总时长。通过对仿真过程中的Ngro(i)、Ngro、Ncp进行统计,就可求得系统的平均排队队长、平均轮询周期和吞吐量。表 2是利用式(2)~式(7)分别计算了在分组到达率λ=0.1、服务时间β=1、转换时间γ=1和仿真时长Tall=100µs 、Tall=300µs 、Tall=400µs 、Tall=600µs 、Tall=800µs 条件下的平均排队队长、平均轮询周期和系统吞吐量的理论值和统计值。

表2统计值和理论值对比

表2中的仿真统计值和理论值是非常接近的,且随着仿真时长的增加,统计值是向着理论值逐渐收敛的,这与理论实际是一致的。

5 结束语

本文根据WSN节点的工作特点和实际需求,利用FPGA对WSN中采用限定(K=1)服务轮询控制策略的接入控制协议进行了设计。采用这种控制协议,无论各个站点的信息分组以何种到达率到达,服务器每次只对一个站点的一个信息分组进行服务,这比门限服务策略和完全服务策略更具公平性。与竞争型的MAC协议相比,该轮询控制协议能够有效避免数据冲突,以及发生冲突时造成的能量损耗。

通过对所设计的限定(K=1)服务轮询控制协议仿真测试和实验结果的统计分析,验证了所设计的协议能够较好地确保WSN节点信息分组按照相应服务规则实现无冲突、无差错发送和接收,并且在指标参数上都达到了要求,达到了系统设计目标要求。从理论与实际分析看,所设计 MAC协议能够有效避免数据冲突、减小传输时延、提高系统吞吐量和总线利用率,且具有较强的扩展性,可广泛用于无线传感器网络、软件无线电网络、ad hoc网络、军用综合业务网络、移动通信网络、物联网等领域。

[1]韩志杰, 王汝传, 凡高娟. 一种基于ARMA的WSN非均衡分簇路由算法[J]. 电子学报, 2010, 38(4): 884-893.HAN Z J,WANG R C,FAN G J. An algorithm of WSN non equilibrium clustering routing based on ARMA[J].Acta Electronica Sinica,2010, 38(4):884-893.

[2]ISHMANOV F, SUNG W K. Distributed clustering algorithm with load balancing in wireless sensor network[C]//Proceeding of WRI World Congress on Computer Science and Information Engineering.2009: 19-23.

[3]许芳, 靳伟伟, 陈虹. 一种模型预测控制器的 FPGA 硬件实现[J].吉林大学学报(工学版), 2014, 44(4): 1042-1050.XU F, JIN W W, CHEN H. FPGA hardware implementation of a model predictive controller[J].Journal of Jilin University, 2014, 44(4):1042-1050.

[4]黄茂芹. 基于FPGA的无线传感器网络自组网设计[J]. 中国新通信,2015, 38(5): 22-26.HUANG M Q. Design of wireless sensor network based on FPGA[J].China New Telecommunications, 2015, 38(5): 22-26.

[5]许树军, 牛戴楠, 王锐. 基于FPGA的Serial RapidIO协议的设计与实现[J]. 雷达与对抗, 2015, 35(4): 36-40.XU S J, NIU D N, WANG R. Design and implementation of RapidIO Serial protocol based on FPGA[J].RADAR amp; ECM, 2015,35(4): 36-40.

[6]洪万帆, 苏淑靖. 基于无线传感器网络的数据采集系统设计[J]. 电子器件,2016, 39(1): 38-44.HONG W F,SU S J. Design of data acquisition system based on wireless sensor network[J]. Chinese Journal of Electron Devices, 2016,39(1): 38-44.

[7]王瑞锦, 秦志光, 王佳昊. 无线传感器网络分簇路由协议分析[J].电子科技大学学报, 2013, 156(3): 298-304.WANG R J, QIN Z G, WANG J H. Cluster based routing protocol for wireless sensor networks[J]. Journal of University of Electronic Science and Technology of China, 2013, 156(3): 298-304.

[8]胡静, 沈连丰, 宋铁成.新的无线传感器网络分簇算法[J]. 通信学报, 2008, 29(7): 20-26.HU J, SHEN L F, SONG T C. New clustering algorithm for wireless sensor networks[J]. Journal on Communications, 2008, 29(7): 20-26.

[9]丁洪伟, 柳虔林, 赵一帆. 多级门限服务轮询系统理论及应用研究[M]. 昆明: 云南大学出版社, 2015.DING H W, LIU Q L, ZHAO Y F. Theory and application of multi level threshold service polling system[M]. Kunming: Yunnan University Press, 2015.

[10]孙岩, 唐绍炬, 罗红. 基于FPGA的多媒体传感器网络网关的设计与实现[J]. 电子学报, 2012, 40(4): 625-631.SUN Y, TANG S J, LUO H. Design and implementation of multimedia sensor network gateway based on FPGA[J]. Acta Electronica Sinica,2012, 40(4): 625-631.

[11]官铮, 钱文华, 虞美乐. 支持紧急通信的无线认知网络频谱接入方法[J]. 通信学报, 2012, 33(Z2): 182-188.GUAN Z,QIAN W H,YU M L. Wireless cognitive network spectrum access method for emergency communication[J].Journal on Communications, 2012, 33(Z2): 182-188.

[12]杨海钢, 孙嘉斌, 王慰. FPGA 器件设计技术发展综述[J]. 电子与信息学报,2010, 32(3): 714-727.YANG H G, SUN J B, WANG W. Review on the development of FPGA device design technology[J]. Journal of Electronics and Information Technology, 2010, 32(3): 714-727.

[13]王晓岩, 胡庆生, 孙荣久.基于复数基的RS译码器的FPGA优化实现[J]. 通信学报, 2003, 24(4): 85-93.WANG X Y, HU Q S, SUN R J. FPGA optimization of RS decoder based on complex number group[J]. Journal on Communications, 2003,24(4): 85-93.

[14]PEI Q Q, CHEN C, XIE W G. Dynamic polling MAC scheme considering emergency access in WSNs based on priorities[J]. China Communications,2012, 108(12): 45-54.

[15]SAIFULLAH, XU Y, LU C Y, CHEN Y X. End-to-end communication delay analysis in industrial wireless networks[J]. IEEE Transactions on Computers, 2015, 64(5): 1361-1374.

Design of polling access control protocol in WSN based on FPGA

LIU Long-jun1, DING Hong-wei1, LIU Qian-lin1,2, LIU Zheng-gang1
(1. School of Information, Yunnan University, Kunming 650091, China;2.Yunnan Military Command Region, Kunming 650051, China)

MAC(media access control) protocol is a direct link between physical and network layer, which is one of the key protocols to ensure high efficient communication. According to the characteristics of WSN (wireless sensor network)nodes, the design and implementation of polling access control protocol based on FPGA (field programmable gate array)were presented for the first time. The design made full use of the characteristics of flexibility and reconfigurability of FPGA. The method of combination of the hardware circuit description language Verilog HDL and the principle diagram was adopted, using Quartus II 8.0 to carry on the synthesis and routing, testing in the DE2. The design has the characteristics of good real-time, high reliability, strong portability, and can effectively reduce the transmission delay and improve the bus utilization. The designed system can be widely used in WSN, software radio network, ad hoc networks, military integrated service network, mobile communications networks, Internet of things as well as other fields.

WSN, limited service, queue length, polling cycle, throughput, FPGA

s:The National Natural Science Foundation of China (No.61461053, No.61461054, No.61072079), The Natural Science Foundation of Yunnan Province (No.2010CD023), The Financial Support of Yunnan University (No.XT412004)

TP393

A

10.11959/j.issn.1000-436x.2016209

2016-01-05;

2016-09-19

国家自然科学基金资助项目(No.61461053, No.61461054, No.61072079);云南省自然科学基金资助项目(No.2010CD023);云南大学基金资助项目(No.XT412004)

刘龙军(1989-),男,陕西商洛人,云南大学硕士生,主要研究方向为通信与信息系统理论、网络协议、FPGA开发等。

丁洪伟(1964-),男,江西于都人,云南大学教授、硕士生导师,主要研究方向为通信与信息系统、网络与通信工程、轮询多址通信理论、随机多址通信系统理论。

柳虔林(1966-),男,云南易门人,云南省军区高级工程师,主要研究方向为卫星通信技术、短波通信技术、轮询多址通信理论。

刘正纲(1988-),男,白族,云南昆明人,云南大学硕士生,主要研究方向为通信与信息系统理论、传感器网络、FPGA开发等。

猜你喜欢

轮询分组节点
CM节点控制在船舶上的应用
基于AutoCAD的门窗节点图快速构建
概念格的一种并行构造算法
分组搭配
基于等概率的ASON业务授权设计∗
怎么分组
分组
依托站点状态的两级轮询控制系统时延特性分析
利用时间轮询方式操作DDR3实现多模式下数据重排
抓住人才培养的关键节点