智能传感器的蓝牙协议栈与SoC结构解析
供了通信中的物理层,也叫作蓝牙收发器。通过2.4GHz 的微波,实现数据流的过滤和传输。蓝牙协议提供了有关蓝牙收发器的各项技术指标。
(2)基带层电路
基带层提供了基带数字信号处理硬件,其功能是提供链路控制,因此也叫作基带及链路控制层电路。通过基带层电路,可以建立蓝牙通信网络中的物理链路,从而形成微微网(piconet)。基带层中有两种物理链路,一种是面向连接的同步链路(SCO) ,另一种是异步无连接链路(ACL) 。此外,基带层还可为语音和数据分组提供不同水平的前向纠错(FEC)或循环冗余度校验(CRC)处理,并可对数据进行加密。同时,基带层电路还为不同类型的数据( 包括传输信息数据、链路管理和控制信息) 提供特定的信道。
(3)链路管理层(LMP)电路
链路管理层电路也叫作链路管理器电路,功能是提供链路管理通信协议。链路管理协议用来对链路进行设置和控制,并负责建立和撤销各蓝牙设备间的连接、功率控制以及认证和加密,同时还控制蓝牙设备的工作状态(保持hold 、休眠park 、呼吸sniff 和活动active )。链路管理层的主要功能由软件完成,链路管理器电路提供运行于蓝牙设备的处理器中的软件。链路管理器之间的通信协议称为链路管理协议(LMP) 。
蓝牙技术整体框架以HCI(Host Controller Interface)为界,区分为硬件模块以及上层软件协议两部分。蓝牙技术标准中,选择了USB、UART 或是RS232 作为硬件模块与主机间的接口。当蓝牙模块以USB、UART或RS232 中的任何一个接口与主机连接时,HCI 接口上层的通信协议由主机负责处理,而HCI 接口下层的通信协议则由模块内的基带层芯片与RF 芯片负责。根据蓝牙标准,蓝牙系统的基本组成包括天线、收发器、基带控制器。由此可知,在天线、RF 收法器和基带控制器的支持下,蓝牙系统的组成可以十分灵活,即可实现多种不同的实现方案。
嵌入式蓝牙系统是将RF 和基带部分集成在一块芯片上,单芯片蓝牙硬件模块结构如图2 所示。在嵌入式蓝牙器件中,硬件结构可分为链路管理器、链路控制器与RF 模块3 部分,负责处理LMP 层、基带层与RF 层的协议。链路管理器内包含处理器(CPU)、内存等组件。链路管理器与基带层芯片合称为链路控制器。RF 模块内含RF 射频发射组件,与主机相连接的接口位于链路控制器上。
在嵌入式方案中,蓝牙协议的上层软件协议也全部固化在芯片中,芯片通过USB 或UART 接口与应用系统相连接。由于片内嵌入了CPU ,所以,嵌入式蓝牙系统实际上是一个智能终端,适合于任何具有CPU 器件的系统。例如,智能传感器中,只要增加一个单芯片蓝牙器件,就可以组成一个以蓝牙为通信方式的传感器。
由图2 可知,它由微处理器(CPU) 、无线收发器(RF)、基带控制器(BB) 、闪存( Flash 程序存储器) 、通用异步收发器UART(Universal Asynchronous Receiver Transmitter)、通用串行接口USB(Universal Serial Bus)及蓝牙测试模块组成。其中蓝牙基带控制器是蓝牙硬件模块的关键模块。其主要功能是在微处理器控制下,实现蓝牙基带部分的所有实时处理功能,包括负责对接收的bit 流进行符号定时提取和恢复;分组头及净荷的循环冗余度校验(CRC) ,分组头及净荷的前向纠错码FEC 处理,加密和解密处理等,且能提供从基带控制器到其它芯片的接口等。CPU一般采用RISC 结构的嵌入式微处理器,如ARM7TDMI微处理器,才能满足对蓝牙核心协议的高速处理和大量数据bit 流的处理。Flash 存储器用于存放基带和链路管理层中的所有协议软件。SRAM 作为CPU 的运行空间,在工作时把Flash 中的软件调入SRAM 中处理。射频收发器负责接收或发送高频的通信信号。UART 和USB 接口提供到HCI 的主机控制器接口传输层的物理连接,是上层协议与蓝牙硬件模块进行通信的通道。蓝牙测试模块主要提供无线层和基带层的认证和一致性规范,同时还管理产品的生产和售后的测试,为可选模块。
3 嵌入蓝牙协议栈的SoC 结构设计
根据上述蓝牙协议栈硬件结构可以看出,如果使用SoC 结构设计蓝牙协议栈,则可以实现嵌入蓝牙通信模块,同时向用户开放内部CPU 的目的。在设计嵌入蓝牙协议的SoC 结构时,需要考虑如下问题。
数据处理能力与速度。数据处理能力主要体现在两个方面:一个是数据缓冲存储器的规模,另一个是对数据处理算法支持的程度。数据处理速度是一个重要的问题。数据处理速度不仅与系统时钟频率有关,还与CPU 和内部总线的结构直接相关。
通信操作与系统运行的关系。在嵌入了蓝牙通信栈的
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(5)(08-02)
- 基于精简TCP/IP协议栈的信息家电网络服务器(02-11)
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(2)(07-18)
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(1)(07-13)
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(3)(07-22)
- 由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(4)(07-25)