一种无线协议栈及其实现方法技术

技术编号:16219560 阅读:71 留言:0更新日期:2017-09-16 02:00
本发明专利技术实施例提供了一种无线协议栈及其实现方法,其中,无线协议栈包括:应用层协议栈、核心协议栈和物理层;核心协议栈包括主机协议栈和控制器,控制器包括链路层,链路层包括以下功能模块:管理模块、控制模块、公共模块、调试模块和驱动模块;主机协议栈和控制器之间通过主机控制器接口连接;所述方法包括:获取无线协议栈的任务数据;根据任务数据中的标识信息确定任务数据的执行函数或者执行模块;采用确定的执行函数或者执行模块对任务数据进行处理。本发明专利技术实施例通过对链路层进行有效合理的模块划分,基于自定义的交互接口进行软件功能模块间的信息交互,针对任务数据的调度策略的实现不依赖于特定的操作系统,可以移植到任意操作系统中。

Wireless protocol stack and implementing method thereof

The embodiment of the invention provides a wireless protocol stack and its realization method, the wireless protocol stack includes application layer protocol stack, core protocol stack and physical layer; the core protocol stack including host protocol stack and controller, controller includes a link layer, link layer includes the following modules: management module, control module, public module, debug module and driver module; between host protocol stack and the controller through the host controller interface; the method comprises the following steps: task data acquisition wireless protocol stack; according to the identification information task in data to determine the task execution function or data execution module; the execution of task execution module function or data processing. The embodiment of the invention is divided into modules of effective link layer, information interaction between software modules of interactive interface based on the custom, to achieve the task of data scheduling strategy does not depend on the specific operating system, can be ported to any operating system.

【技术实现步骤摘要】
一种无线协议栈及其实现方法
本专利技术实施例涉及通信
,尤其涉及一种无线协议栈及其实现方法。
技术介绍
随着设计制造及集成电路产业的发展,通过IP核(IntellectualPropertyCore)集成方式来进行复杂通信系统设计和实现,极大地缩短了产品开发周期,加速了产品面世进程。BLE无线通信技术是目前发展较快,使用较为普遍的一种短距离无线通信技术,使用IP核集成方式开发BLE无线设备能够很大程度上加速产品上市,目前BLE协议版本已经更新到了5.0版本,该协议版本的发布很大程度上促进了BLE设备在物联网领域的应用,如何将符合BLE5.0协议的通信IP核快速集成到系统从而实现相关功能,是整个通信系统开发的关键环节。复杂无线通信系统的实现包括了硬件的实现和软件的实现,软件通常实现了对硬件的管理和调度及大部分上层通信协议的实现,通过软硬件协同实现整个通信系统的功能。硬件往往通过标准的系统总线接口实现集成,但是软件的实现业界并没有也无法通过定义标准的实现接口来完成功能的实现和系统的集成。集成IP核的目标系统往往是运行嵌入式操作系统来完成这个系统的复杂功能,目前常用的嵌入式操作系统有Nucleus,uCoS,FreeRTOS,WindowsCE等,分别提供了丰富的API给用户来使用,完成内存管理、任务调度及任务间通信功能。现有的无线协议栈的实现需要完成复杂调度和处理过程,但是如果基于某个特定的嵌入式操作系统实现,将会导致无法在其他嵌入式平台进行移植,限制协议栈使用范围,降低了IP核的授权范围,不利于系统的推广和应用。
技术实现思路
本专利技术实施例提供了一种基于无线协议栈及其实现方法,以解决现有的无线协议栈依赖于特定的操作系统,无法在其他操作系统上运行的问题。根据本专利技术实施例的一方面,提供了一种无线协议栈的实现方法,所述无线协议栈包括:应用层协议栈、核心协议栈和物理层;其中,所述核心协议栈包括主机协议栈和控制器,所述控制器包括链路层,所述链路层包括以下功能模块:管理模块、控制模块、公共模块、调试模块和驱动模块;所述主机协议栈和所述控制器之间通过主机控制器接口连接;所述方法包括:获取所述无线协议栈的任务数据;根据所述任务数据中的标识信息确定所述任务数据的执行函数或者执行模块;采用所述确定的执行函数或者执行模块对所述任务数据进行处理。根据本专利技术实施例的另一方面,还提供了一种无线协议栈,包括:应用层协议栈、核心协议栈和物理层;其中,所述核心协议栈包括主机协议栈和控制器,所述控制器包括链路层,所述链路层包括以下功能模块:管理模块、控制模块、公共模块、调试模块和驱动模块;所述主机协议栈和所述控制器之间通过主机控制器接口连接;所述无线协议栈还包括:核心调度模块,用于获取所述无线协议栈的任务数据,根据所述任务数据中的标识信息确定所述任务数据的执行函数或者执行模块,采用所述确定的执行函数或者执行模块对所述任务数据进行处理。根据本专利技术实施例提供的一种无线协议栈及其实现方法,无线协议栈主要包括三大部分,分别为:应用层协议栈、核心协议栈和物理层;其中,核心协议栈包括主机协议栈和控制器,控制器包括链路层,链路层按照功能可以划分为以下模块:管理模块、控制模块、公共模块、调试模块和驱动模块。无线协议栈的完整功能实现是通过在运行过程中模块间的相互协作来完成的,模块间信息交互协作是保证无线协议栈有效稳定运行的基础。主机协议栈和控制器之间通过主机控制器接口连接,控制器和和物理层之间采用基于链表的软硬件接口完成数据及信息交互。本专利技术实施例的无线协议栈实现方法中,链路层负责实现软硬件接口管理、协议核心帧成帧、链路状态管理和维护、硬件设备管理、硬件调度等功能,同时提供从主机协议栈到底层硬件设备的控制接口及数据收发通路。本专利技术实施例的无线协议栈实现方法包括:获取无线协议栈的任务数据,任务数据用于指示无线协议栈的各项功能;根据任务数据中的标识信息确定任务数据的执行函数或者执行模块;采用确定的执行函数或者执行模块对任务数据进行处理。本专利技术实施例通过对链路层进行有效合理的模块划分,基于自定义的交互接口进行软件功能模块间的信息交互,针对任务数据的调度策略的实现不依赖于特定的操作系统,可以移植到任意操作系统中。附图说明图1是根据本专利技术实施例一的BLE5.0协议栈的整体架构和层次划分示意图;图2是根据本专利技术实施例一的一种无线协议栈的实现方法的步骤流程图;图3是根据本专利技术实施例二的BLE5.0协议栈的链路层的结构示意图;图4是根据本专利技术实施例二的BLE5.0协议栈的消息结构示意图;图5是根据本专利技术实施例二的BLE5.0协议栈的消息的传送及处理流程示意图;图6是根据本专利技术实施例二的一种BLE5.0协议栈的实现方法的步骤流程图;图7是根据本专利技术实施例二的一种BLE5.0协议栈的任务调度的流程示意图;图8是根据本专利技术实施例三的一种无线协议栈的结构框图。具体实施方式下面结合附图(若干附图中相同的标号表示相同的元素)和实施例,对本专利技术实施例的具体实施方式作进一步详细说明。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。本领域技术人员可以理解,本专利技术实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。实施例一本实施例中,以BLE5.0协议栈为例进行说明,其他无线协议栈的实现可以参照本实施例中的说明。本实施例中的BLE5.0协议栈包括了主机(Host)和控制器(Controller),Host和Controller的之间通过主机控制器接口(HostControllerInterface,HCI)实现信息交互,Host和Controller既可以集成在同一个处理器中,也可以分别运行在不同的处理器上。BLE5.0协议栈实现过程中对功能进行了模块划分,模块之间有效协同工作实现了整个协议功能,模块间高效的交互方式是保证BLE5.0协议栈有效运行的基础,如何在不依赖任何操作系统的基础上实现模块间的信息交互是整个BLE5.0协议栈实现过程中需要重点考虑的地方。本实施例中的BLE5.0协议栈主要由三大部分组成,分别为:应用层协议栈、核心协议栈和物理层(PhysicalLayer);其中,核心协议栈包括主机协议栈(LEHostStack)和控制器。图1为BLE5.0协议栈的整体架构和层次划分示意图,其中,由下向上分别有物理层、控制器、HCI、主机协议栈以及应用协议栈(Profile)共5五个层次。物理层包括基带和射频。控制器包括调试模块和链路层。HCI包括主机控制器接口(主机侧)和主机控制器接口(控制器侧)。主机协议栈包括安全管理协议、属性协议和逻辑链路控制和适配层协议。应用协议栈包括通用访问规范,通用访问规范包括应用规范。主机协议栈和控制器之间采用协议规定的HCI接口协议进行通信,控制器和物理层之间采用基于链表的软硬件接口完成数据及信息交互。各层依据功能需求进行功能模块划分,模块间采用消息传递机制完成信息传递,提高系统工作效率。本实施中的控制器包括链路层(LinkLayer),链路层通过HCI标准接口实现与主机通信,通过共享内存(ShareMemory)实现与硬件的交互,链路层包括以下模块:管理模块、控制本文档来自技高网...
一种无线协议栈及其实现方法

【技术保护点】
一种无线协议栈的实现方法,其特征在于,所述无线协议栈包括:应用层协议栈、核心协议栈和物理层;其中,所述核心协议栈包括主机协议栈和控制器,所述控制器包括链路层,所述链路层包括以下功能模块:管理模块、控制模块、公共模块、调试模块和驱动模块;所述主机协议栈和所述控制器之间通过主机控制器接口连接;所述方法包括:获取所述无线协议栈的任务数据;根据所述任务数据中的标识信息确定所述任务数据的执行函数或者执行模块;采用所述确定的执行函数或者执行模块对所述任务数据进行处理。

【技术特征摘要】
1.一种无线协议栈的实现方法,其特征在于,所述无线协议栈包括:应用层协议栈、核心协议栈和物理层;其中,所述核心协议栈包括主机协议栈和控制器,所述控制器包括链路层,所述链路层包括以下功能模块:管理模块、控制模块、公共模块、调试模块和驱动模块;所述主机协议栈和所述控制器之间通过主机控制器接口连接;所述方法包括:获取所述无线协议栈的任务数据;根据所述任务数据中的标识信息确定所述任务数据的执行函数或者执行模块;采用所述确定的执行函数或者执行模块对所述任务数据进行处理。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:采用所述链路层中的功能模块处理所述主机协议栈和所述控制器之间的命令或者事件;其中,每个所述命令或者事件设置有唯一的识别编号;每个所述识别编号与一个处理函数相关联。3.根据权利要求2所述的方法,其特征在于,所述采用所述链路层中的模块处理所述主机协议栈和所述控制器之间的命令或者事件,包括:采用所述链路层中的功能模块接收包含所述命令或者事件的识别编号的消息,所述消息包括消息源识别编号、消息目的识别编号、消息识别编号、消息参数长度和消息内容,所述消息内容用于指示所述命令或者事件;根据所述消息中的消息识别编号查找与所述消息识别编号关联的处理函数;根据所述查找到的处理函数处理所述消息中的消息内容。4.根据权利要求1所述的方法,其特征在于,所述根据所述任务数据中的标识信息确定所述任务数据的执行函数或者执行模块,包括:对所述任务数据中的标识信息进行置位;轮询所述无线协议栈的全部任务的标识信息,所述全部任务包括:数据加密处理任务、消息处理任务、超时处理任务、事件处理任务、数据收发处理任务;当轮询到所述置位的标识信息时,查询与所述置位的标识信息对应的执行函数或者执行模块,将查询到的执行函数或者执行模块确定为所述任务数据的执行函数或者执行模块。5.根据权利要求1所述的方法,其特征在于,所述采用所述确定的执行函数或者执行模块对所述任务数据进行处理,包括...

【专利技术属性】
技术研发人员:马越涛
申请(专利权)人:北京萤芯科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1