智能传感器的蓝牙协议栈与SoC结构设计
② 为了保证控制系统的安全可靠性,需要把上层处理协议变为用户层协议,由用户自行编写。
为了设计满足智能传感器的嵌入式蓝牙SoC结构,对蓝牙协议栈进行了简化处理,只使用蓝牙协议中的核心协议和替代电缆协议。SoC 中的蓝牙协议栈由软件和硬件两部分组成。核心协议中的基带协议由硬件实现,而链路管理和其它部分则使用软件实现。所有有关协议的软件存放在ROM 中,用户使用通信栈时可直接调用。需要指出的是,通信栈的设计为一个整体,因此调用时也必须整体调用。换句话说就是,把通信栈看成是一个完整的子程序模块加以调用。
根据上述结论,提出一种具有开放使用户协议的嵌入式蓝牙SoC 模块结构,如图3 所示。
图3中,RF收发器、基带控制器和蓝牙协议ROM共同组成蓝牙协议栈。蓝牙协议栈在CPU的控制下完成通信任务。简化的嵌入式蓝牙协议栈结构如图4 所示。其中用户应用协议由用户自行设计,以确保通信的安全性和可靠性。
另外,对蓝牙协议栈中的LMP进行了相应的简化。在智能传感器的应用中,通信链路一般比较简单,因此,LMP不需要对链路进行复杂的处理。本设计中,LMP的主要功能由软件完成。当需要使用蓝牙通信发送数据或接收数据时,用户程序只需调用LMP软件模块即可。LMP协议由两部分组成:
① 软件。通过CPU对链路进行设置和控制,实现蓝牙设备连接、功率控制以及认证和加密,同时还控制蓝牙设备控制器电路。
② 硬件。LMP控制器电路在LMP软件的操作下,控制蓝牙设备的工作状态(保持hold、休眠park、呼吸sniff 和活动active)。
图3中的CPU通过开放总线模块向用户开放,用户程序保存在用户程序存储器中。数据存储器采用Flash 存储电路,用来保存蓝牙通信中的发送和接收数据;同时,作为传感器数据采集系统的数据存储器。数据存储器的使用分配由用户决定,传感器的设计者可通过用户程序对数据存储器进行分块控制使用,通过用户程序设置相应的发送或接收数据存储深度和起始地址,以及数据采集系统的数据存储深度。
图3中开放总线模块提供了一个向用户开放的总线,使用户可以充分利用CPU、存储器的资源。此外,图3中的通用通信接口和测试电路向用户提供了局部连接和测试输入输出通道。
从以上模块设计的结果可以看出,这种结构的智能传感器具有完整的蓝牙通信功能,同时,为用户提供了应用处理的灵活性。例如,LMP中的认证和加密方法与算法完全由用户自行决定,从而提供了用户系统的安全性和可靠性。另外,由于通用串行通信接口和测试电路的存在
,为用户系统提供了硬件测试的硬件支持。
根据图3和上述分析,可以得到用于智能传感器的嵌入式蓝牙SoC器件的电路结构,如图5 所示。
通信栈模块调用操作流程如图6 所示。
结 语
把蓝牙协议栈嵌入到智能传感器中,将为控制系统提供十分灵活的组成方式;同时,通过采用相应的安全措施,可以提高系统的安全性和可靠性。
本文通过对蓝牙协议栈和智能传感器工作特征的分析,设计了智能传感器中嵌入蓝牙协议栈的SoC结构。为了满足智能传感器的应用,嵌入式蓝牙SoC中,CPU、存储器以及相应的总线和外部电路应向用户开放。对于用户而言,只要设计相应的传感器前置电路,即可形成具有蓝牙通信功能的智能传感器。由于蓝牙通信协议的操作功能已经保存在ROM中,所以用户只需要调用相应的软件程序即可完成蓝牙通信。同时,这种SoC中的蓝牙协议栈中有关认证和加密的部分向用户开放,具体的认证、加密方法和算法可由用户自行定义。
此外,本文对智能传感器嵌入式蓝牙SoC 中蓝牙协议栈进行了简化处理。
《智能传感器的蓝牙协议栈与SoC结构设计(第4页)》