关键词:蓝牙技术 硬件实现 链路管理与控制 跳频
蓝牙技术是一项新兴的技术。它的主要目的是在全世界建立一个短距离的无线通信标准。它使用2.4GHz~2.5GHz的ISM(Industrion Scientifc Medical)频段来传送话音和数据。运用成熟、实用、先进的无线技术来代替电缆,它提供了低成本、低功耗的无线接口,使所有固定和移动设备通过微微网PAN(Personal Area Network)连接起来,诸如:计算机系统、家庭影院系统、无绳电话系统、通信设备等,相互通信,实现资源共享。蓝牙技术支持多种电子设备之间的短距离无线通信,这种通信不需要任何线缆,亦不需要用户直接手工干涉;每当一个嵌入了蓝牙技术的设备发觉另一同样嵌入蓝牙技术的设备,它们就能自动同步,相互通信,实现资源共享。
1 蓝牙的结构体系
蓝牙协议栈的体系结构如图1所示。它是由底层硬件模块,中间层和高端应用层三大部分组成。
1.1 蓝牙的底层模块
底层模块是蓝牙技术的核心模块,所有嵌入蓝牙技术的设备都必须包括底层模块。它主要由链路管理层LMP(Link Manager Protocol)、基带层BB(Base Band)和射频RF(Rodio Fraquency)组成。其功能是:无线连接层(RF)通过2.4GHz无需申请的ISM频段,实现数据流的过滤和传输;它主要定义了工作在此频段的蓝牙接收机应满足的需求;其带层(BB)提供了两种不同的物理链路(同步面向连接路SCO Synchronous Connection Oriented和异步无连接链路ACL Asynchronous Connection Less),负责跳频和蓝牙数据及信息帧的传输,且对所有类型的数据包提供了不同层次的前向纠错码FEC(Frequency Error Correction)或循环沉余度差错校验CTC(Cyclic Redundancy Check);LMP层负责两个或多个设备链路的建立和拆除及链路的安全和控制,如鉴权和加密、控制和协商基带包的大小等,它为上层软件模块提供了不同的访问入口;蓝牙主机控制器接口HCI(Host Cntroller Interface)由基带控制器、连接管理器、控制和事件寄存器等组成。它是蓝牙协议中软硬件之间的接口,提供了一个调用下层BB、LM、状态和控制寄存器等硬件的统一命令,上、下两个模块接口之间的消息和数据的传递必须通过HCI的解释才能进行。HCI层以上的协议软件实体运行在主机上,而HCI以下的功能由蓝牙设备来完成,二者之间通过传输层进行交互。
1.2 中间协议层
中间协议层由逻辑链路控制与适配协议L2CAP(Logical Link Control and Adaptation Protocol)、服务发现协议SDP(Service Discovery Protocol)、串口仿真协议或称线缆替换协议(RFCOM)和二进制电话控制协议TCS(Telephony Control protocol Spectocol)组成。L2CAP是蓝牙协议栈的核心组成部分,也是其它协议实现的基础。它位于基带之上,向上层提供面向连接和无连接的数据服务。它主要完成数据的拆装、服务质量控制、协议的复用、分组的分割和重组(Segmentation And Reassembly)及组提取等功能。L2CAP允许高达64KB的数据分组。SDP是一个基于客户/服务器结构的协议。它工作在L2CAP层之上,为上层应用程序提供一种机制来发现可用的服务及其属性,而服务属性包括服务的类型及该服务所需的机制或协议信息。RFCOMM是一个仿真有线链路的无线数据仿真协议,符合ETSI标准的TS 07.10串口仿真协议。它在蓝牙基带上仿真RS-232的控制和数据信号,为原先使用串行连接的上层业务提供传送能力。TCS是一个基于ITU-T Q.931建议的采用面向比特的协议,它定义了用于蓝牙设备之间建立语音和数据呼叫的控制信令(Call Control Signalling),并负责处理蓝廾设备组的移动管理过程。
1.3 高端应用层
高端应用层位于蓝牙协议栈的最上部分。一个完整的蓝牙协议栈按其功能又可划分为四层:核心协议层(BB、LMP、LCAP、SDP)、线缆替换协议层(RFCOMM)、电话控制协议层(TCS-BIN)、选用协议层(PPP、TCP、TP、UDP、OBEX、IrMC、WAP、WAE)。而高端应用层是由选用协议层组成。选用协议层中的PPP(Point-to-Point Protocol)是点到点协议,由封装、链路控制协议、网络控制协议组成,定义了串行点到点链路应当如何传输因特网协议数据,它要用于LAN接入、拨号网络及传真等应用规范;TCP/IP(传输控制协议/网络层协议)、UDP(User Datagram Protocol对象交换协议)是三种已有的协议,它定义了因特网与网络相关的通信及其他类型计算机设备和外围设备之间的通信。蓝牙采用或共享这些已有的协议去实现与连接因特网的设备通信,这样,既可提高效率,又可在一定程度上保证蓝牙技术和其它通信技术的互操作性;OBEX(Object Exchange Protocol)是对象交换协议,它支持设备间的数据交换,采用客户/服务器模式提供与HTTP(超文本传输协议)相同的基本功能。该协议作为一个开放性标准还定义了可用于交换的电子商务卡、个人日程表、消息和便条等格式;WAP(Wireless Application Protocol)是无线应用协议,它的目的是要在数字蜂窝电话和其它小型无线设备上实现因特网业务。它支持移动电话浏览网页、收取电子邮件和其它基于因特网的协议。WAE(Wireless Application Environment)是无线应用环境,它提供用于WAP电话和个人数字助理PDA所需的各种应用软件。
2 蓝牙硬件的实现
蓝牙的技术规范除了包括协议部分外还包括蓝牙的应用部分(即应用模型)。在实现蓝牙的时候,一般是将蓝牙分成两部分来考虑,其一是软件实现部分,它位于HCI的上面,包括蓝牙协议栈上层的L2CAP、RFCOMM、SDP和TCS以及蓝牙的一些应用;其二是硬件实现部分,它位于HCI的下面,亦即上面提到的底层硬件模块,它已在图1中标示出。下面讨论蓝牙硬件模块的结构与性能。
蓝牙硬件模块由蓝牙协议栈的无线收发器(RF)、其带控制器(BB)和链路管理层(LMP)组成。目前大多数生产厂家都是利用片上系统技术SOC(System-On-Chip)将这三层功能模块集嵌在同一块芯片上。图2为单芯片蓝牙硬件模块结构图。它由微处理器(CPU)、无线收发器(RF)、基带控制器(BB)、静态随机存储器(SRAM)、闪存(Flash程序存储器)、通用异步收发器(UAST)、通用串行接口(USB)、语音编/解码器(CODEC)及蓝牙测试模块组成。下面分别叙述各部分的组成及功能。
(1)蓝牙基带控制器
蓝牙基带控制器是蓝牙硬件模块的关键模块。它主要由链路控制序列发生器、可编程程序列发生器、内部语音处理器、共享RAM裁器及定时链管理、加密/解密处理等功能单元组成。其主要功能:在微处理器模块控制下,实现蓝牙基带部分的所实时处理功能,包括负责对接收bit流进行符号定时提取的恢复;分组头及净荷的循环沉余度校验(CRC);分组头及净荷的前向纠错码(FEC)处理和发送处理;加密和解密处理等。且能提供从基带控制器到其它芯片的接口(诸如数据路径RAM客户接口、微处理器接口、脉码调制接口(PCM)等。
(2)无线收发器模块
无线收发器是蓝牙设备的核心,任何蓝牙设备都要有无线收发器。它与用于广播的普通无线收发器的不同之处在于体积小、功率小(目前生产的蓝牙无线收发器的最大输出功率只有100mW、2.5mW、1mW三种)。它由锁相环、发送模块和接收模块等组成。发送部分包括一个倍频器,且直接使用压控振荡器调制(VCO);接收部分包括混频器、中频器放大器、鉴频器以及低噪音放大器等。无线收发器的主要功能是调制/解调、帧定时恢复和跳频功能同时完成发送和接收操作。发送操作包括载波的产生、载波调制、功率控制及自动增益控制AGC;接收操作包括频率调谐至正确的载波频率及信号强度控制等。
(3)微处理器(CPU)
CPU负责蓝牙比特流调制和解调所的所有比特级处理,且还负责控制收发器和专用的语言编码和解码器。
(4)Flash存储器和SRAM
Flash存储器用于存放基带和链路管理层中的所有软件部分。SRAM作为CPU的运行空间,在作时把Flash中的软件调用SRAM中。
(5)语音编/解码器CODEC(Coder Decoder)
语音编/解码器CODEC由ADC(数模转换器)、模数转换口(ADC)、数字接口、编码模块等组成。主要功能:提供语音编码和解码功能,提供CVSD(Continuous Variable Slope Delta Modulation)即连续可变斜率增量调制及对数PCM(Pulse Coded Modulation)即脉码调制两种编码方式。
(6)蓝牙测试模块
它是由DUT(Device Under Test)即被测试模块与测试设备及计量设备组成。一般测试 设备被测试设备构成一个微微网,测试设备是主节点,DUT是从节点。测试设备对整个测试过程进行控制,其主要功能提供无线层和