(通信与信息系统专业论文)蓝牙底层协议hci以下的研究与仿真.pdf_第1页
(通信与信息系统专业论文)蓝牙底层协议hci以下的研究与仿真.pdf_第2页
(通信与信息系统专业论文)蓝牙底层协议hci以下的研究与仿真.pdf_第3页
(通信与信息系统专业论文)蓝牙底层协议hci以下的研究与仿真.pdf_第4页
(通信与信息系统专业论文)蓝牙底层协议hci以下的研究与仿真.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

东北大学硕士学位论文摘要 蓝牙底层( i t c i 以下) 协议的研究与仿真 摘要 蓝牙技术是一种开放性、短距离、低功耗的无线通信技术,其主要目的就是 取代连接在电子没备之间的线缆,实现设备间的语音和数据的通信。多个蓝牙设 备之问也可以根据不同的身份组成一个蓝牙的微微网p i c o n e t ,而多个p i c o n e t 又 可以根据一定的规则组成蓝牙散射网s c a t t e r n e t 。蓝牙组网的主要应用在于无线 的个人区域网w p a n ,而不同于8 0 2 1 1 的无线局域网的应用,所以说对于这两 种当今最流行无线通信技术之间不存在竞争而需要的是互补。 一个蓝牙系统从整体上来分,主要包括蓝牙主机和主机控制器两大部分。其 中主机控制器即蓝牙模块的部分,主要包括h c i 主机控制器接口,链路管理器, 链路控制器,基带和无线射频五部分。通常情况下这些部分封装在蓝牙芯片中, 并且h c i 接口和链路管理器是由固件实现;而链路控制器、基带和射频部分是 由硬件实现。由于技术及工艺原因,使得蓝牙芯片的价格一直偏高,进而影响到 蓝牙技术的普及。 本文对蓝牙模块所涉及的协议进行了系统的研究与仿真实现,设计采用通用 芯片、标准c 语言对蓝牙模块进行软件化实现。其意义在于在不影响通信性能 和效率的前提下,降低蓝牙模块的成本。本文首先介绍论文所研究部分在整个蓝 牙体系中的位置和作用,然后简要介绍了蓝牙基带所具有的资源及蓝牙射频模 块,进一步对蓝牙基带控制器进行系统的分析,还说明了对蓝牙模块的仿真过程 及结果。最后本文又专门阐述了蓝牙安全机制的问题,并提出了蓝牙的现状与发 展。蓝牙模块的通用化实现,为降低芯片价格,普及蓝牙技术提供了极大的便利, 具有广阔的实用价值。 关键词:蓝牙模块主机控制器链路管理器链路控制器蓝牙基带 东北大学硕士学位论文 a b s t r a c t r e s e a r c ha n ds i m u l a t i o no f t h eb l u e t o o t hl o w e rp r o t o c o ls t a c k a b s t r a c t b l u e t o o t h t e c h n o l o g y i s 8 1 1 o p e n i n g ,s h o r tr a n g e a n dl o wp o w e rw i r e l e s s c o m m u n i c a t i o nt e c h n o l o g y t h eg o a lo fb l u e t o o t hi si n t e n d e dt ot r a n s m i tv o i c ea n d d a t aw i t h o u th a v i n gt oc a b l ec o m p u t e ra n do t h e rs o r t so fe l e c t r o n i ce q u i p m e n t m o r e b l u e t o o t hd e v i c e s 、v i 也d i f i e r e n ti dc a nc o n s t i t u t eab l u e t o o t hp i c o n e t a n dm o r e p i c o n e t sc a nc o n s t i t u t eas c a t t e m e ta c c o r d i n gt ot h eg i v e ns p e c i f i c a t i o n b l u e t o o t h n e t w o r ki s a p p l i e di nt h ew i r e l e s sp e r s o n a la r e an e t w o r k ( w p a n ) ,i td i t i e r sf r o m 8 0 2 11w h i c hi sa p p l i e di nw i r e l e s sl o c a la r e an e t w o r k ( w l a n ) t h e r e f o r ew p a n a n dw l a na r et w o c o m p l e m e n t a r y r a t h e rt h a n c o m p e t i n gt e c h n o l o g i e s i nb l u e t o o t hw i r e l e s sc o m m u n i c a t i o ns y s t e m ,t h e r ea r et w o p a r t s :b l u e t o o t hh o s t a n db l u e t o o t hh o s tc o n t r o l l e r t h ei a t t e ri st h eb l u e t o o t hm o d u l ew h i c hi n c l u d e st h e h c ii n t e r f a c eo ft h eh o s tc o n t r o l l e rs i d e ,l i n km a n a g e al i n kc o n t r o l l e r , b a s e b a n da n d b l u e t o o t hr a d i o a sa r u l e ,a l lt h e s ep a r t sa r ee n c a p s u l a t e di nt h eb l u e t o o t hm o d u l e ,t h e h c ii n t e r f a c ea n dl i n km a n a g e ra r ef i r m w a r e p a r t s ,t h el i n kc o n t r o l l e r , b a s e b a n da n d r a d i oa r eh a r d w a r ep a r t s o na c c o u n to f t h e c h i pt e c h n i c s ,t h ep r i c eo f b l u e t o o t hc h i p i s a l w a y se x p e n s i v e ,m o r e o v e r i ta f f e c t st h e p o p u l a r i z a t i o n o ft h eb l u e t o o t h t e c h n o l o g y t h er e s e a r c ha n de m u l a t i o n a l i m p l e m e n t o ft h el o w e r p r o t o c o l s t a c ka r e d i s c u s s e di nt h i sp a p e r w er e a l i z et h eb l u e t o o t hm o d u l eu s e dt h ec u r r e n c yc h i pa n d s t a n d a r dcc o m p u t e rl a n g u a g e i tc a nr e d u c et h ec o s to fb l u e t o o t hm o d u l ew i t h o u t d e g r a d i n gt h ec o m m u n i c a t i o np e r f o r m a n c ea n de f f i c i e n c y i nt h ef i r s tc h a p t e r , w e i n t r o d u c et h e p o s i t i o na n da c t i o no ft h ep a p e rc o n c e r n e di nt h ew h o l eb l u e t o o t h p r o t o c o ls y s t e m ,a n dt h e nw ef o c u st h eb l u e t o o t hb a s e b a n dr e s o u r c ea n dr a d i om o d u l e i nc h a p t e rt h r e e ,t h eb l u e t o o t hb a s e b a n dc o n t r o l l e ri sa n a l y z e d i nc h a p t e rf i v ea n d s i x , w ef o c u sr e s p e c t i v e l yt h er e s u l to fe m u l a t i o no fb l u e t o o t hm o d u l ea n dt h eb l u e t o o t h s e c u r i t ym e c h a n i s m f i n a l l yw e c o n c e r nt h ef u t u r eo fb l u e t o o t ht e c h n o l o g y a b o v ea l l , i ti su s e f u lt or e d u c et h ec o s to f b l u e t o o t h c h i pa n dp o p u l a r i z et h i st e c h n o l o g y k e y w o r d s :b l u e t o o t hm o d u l e h o s tc o n t r o l l e rl i n k m a n a g e r l i n kc o n t r o l l e r b l u e t o o t hb a s e b a n d 声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中所 取得的研究成果除加以标注和致谢的地方外,不包含其他人已经发表 或撰写过的研究成果,也不包括本人为获得其他学位而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示谢意。 本人签名: 鞠知 日期: m 节牟,日f 日 东北大学硕士学位论文第一章概述 第一章概述 蓝雾援朱燕一嵇低成本、短距离鹃无线连接开藏缝技零标准,其篷要按术特 点是技术开放、成本低、采用2 4 g h z 无线跳频技术、组网能力强、传输速率比 较高等,因诧,是实现家庭网络或个入区域网( w p a n ) 的最瑾悲按术。 蓝牙技术包括两个方面,即蓝牙专用i c 和蘸牙通信协议栈。蓝牙专用i c 又 由罄带处理模块和射频模块两大部分组成,二者构成蓝牙通信的硬件平台,即蓝 牙收发器。整个篮牙按议找姣括蓝牙指定协议和j # 蓝牙指定协泼。设计协议鄹协 议栈的主凄原则是尽可能利用现有的各种高层协议,保证现有协议与蓝牙协议的 融合以及各耱廒鼹之溺豹互遴缝,兖分到期兼套蘩牙技术援范瓣软硬件姿瓣。蓥 牙核心协议主要有l m p 、l 2 c a p 、r f c o m m 、s d p 等部分,逡行在主机或嵌入 式产晶的主缝毽器上,主要究成链潞配萋、数器瓣装、设备或服务发现等麓髓, 主处理器与基带处理i c 之间通过h c i 接口进行通信。 1 。1 蓝牙的结构体系 蓝牙的体系结梅如圈2 1 所示。它是由底鼷硬件模块,中闻层帮高端应用 层三大部分组成。 块 圈1 1 蓝牙协议栈体系结构 f i g ,1 。1s t r u c t u r eo fb l u e t o o t hp r o t o c o l 。l 东北大学硕士学位论文 第一章概述 1 蓝牙底层模块 底层模块是蓝牙技术的核心模块,所有嵌入蓝牙技术的设备都必须包括底层 模块。它主要出b c i 主机控制器部分接口、链路管理层l m p 、基带层b b 和射频 r f 四部分组成。其功能是:无线射频层使用2 4 g t i z 无需申请的丌放性i s m 频段, 实现数掘流的过滤和传输,它主要定义了工作在此频段的蓝牙接收机应满足的需 求;基带层( b b ) 提供了两种不同的物理链路:同步面向连接路s c o 和异步无连 接链路a c l 。通过使用这两种链路实现数据和语音等多类型业务的顺利传输。同 时基带还负责跳频和蓝牙数据及信息帧的传输,且对所有类型的数据包提供了刁; 同层次的前向纠错码f e c 或循环冗余校验c r c 以及链路层数据加密;l m p 层主要 是通过协议数据单元p d u 携带协商信息,在通信的两个蓝牙单元之间完成链路建 立、链路配置、数据安全等功能。如鉴权和加密、控制和协商基带包的大小等, 它为上层软件模块提供了不同的访问入口;蓝牙h c i 主机控制器部分接口由基带 控制器、连接管理器、控制和事件寄存器等组成。它是蓝牙协议中软硬件之间的 接口,提供了一个解析上层应用数据与指令并调用下层b b 、l m 、状态和控制寄 存器等硬件的统一命令的功能,它是上、下两个模块的接口部分。h c i 层以上的 协议软件实体运行在主机上,而h c i 以下的功能由蓝牙模块来完成,二者之间通 过t t c i 传输层进行交互。 2 中i 协议层 中间协议层由逻辑链路控制与适配协议l 2 c a p 、服务发现协议s d p 、串口仿 真协议r f c o m m 和二进制电话控制协议t c s b i n 组成。l 2 c a p 是蓝牙协议栈的核 心组成部分,也是其它协议实现的基础。它位于基带和l m p 之上,向上层提供面 向连接和无连接的数据服务。它主要完成数掘的拆装、服务质量控制、协议的复 用、分组的分割和重组( s e g m e n t a t i o na n dr e a s s e m b l y ) 及组提取等功能。l 2 c a p 允许高达6 4 k b 的数据分组。s d p 是一个基于客户服务器结构的协议。它工作在 l 2 c a p 层之上,为上层应用程序提供一种机制来发现可用的设备信息和服务及其 属性,而服务属性包括服务的类型及该服务所需的机制或协议信息。r f c o m m 是 一个仿真有线链路的无线数据仿真协议,符合e t s i 标准的t s0 7 1 0 串口仿真协 议。它在蓝牙基带上仿真r s 一2 3 2 的控制和数据信号,为原先使用串行连接的上 层业务提供传送能力。t c s 是一个基于i t u tq 9 3 1 建议的采用面向比特的协议, 它定义了用于蓝牙设备之间建立语音和数据呼叫的控制信令( c a l lc o n t r o l s i g n a 】i n g ) ,并负责处理蓝牙设备组的移动管理过程。 3 高端应用层 东北大学硕士学位论文 第一章概述 高端应用层位于蓝牙协议栈的最上部分。一个完整的蓝牙协议栈按其功能又 可划分为四层:核心协议层( b b 、l m p 、l c a p 、s d p ) 、线缆替换协议层 ( r f c o m m ) 、电话控制协议层( t c s b i n ) 、选用协议层( p p p 、t c p 、t p 、 u d p 、0 b e x 、i r m c 、w a p 、w a e ) 。而高端应用层是由选用协议层组成。选用 协议层中的p p p ( p o i n t t o p o i n tp r o t o c 0 1 ) 是点到点协议,由封装、链路控制协 议、网络控制协议组成,定义了串行点到点链路应当如何传输因特网协议数据, 它要用于l a n 接入、拨号网络及传真等应用规范;t c p i p ( 传输控制协议网络 层协议) 、u d p ( u s e rd a t a g r a mp r o t o c o l 对象交换协议) 是三种已有的协议,它 定义了因特网与网络相关的通信及其他类型计算机设备和外围设备之间的通信。 蓝牙采用或共享这些已有的协议去实现与连接i n t e m e t 的设备通信,这样,既可 提高效率,又可在一定程度上保证蓝牙技术和其它通信技术的互操作性;o b e x 是对象交换协议,它支持设备间的数据交换,采用客户服务器模式提供与h t t p 相同的基本功能。该协议作为一个开放性标准还定义了可用予交换的电子商务 卡、个人r 程表、消息和便条等格式;w a p ( w i r e l e s s a p p l i c a t i o n p r o t o c 0 1 ) 是无 线应用协议,它的目的是要在数字蜂窝电话和其它小型无线设备上实现i n t e m e t 业务。它支持移动电话浏览网页、收取电子邮件和其它基于i n t e m e t 的协议。 w a e ( w i r e l e s sa p p l i c a t i o ne n v i r o n m e n t ) 是无线应用环境,它提供用于w a p 电话 和个人数字助理p d a 所需的各种应用软件。 1 2 课题提出 作为一个蓝牙产品,蓝牙技术分为蓝牙主机部分和蓝牙主机控制器部分,主 机部分主要是高层协议及应用部分,它是通过软件实现,基于高层m c u 来运行: 而蓝牙主机控制器部分则主要由固件实现,蓝牙模块中链路管理协议是通过软件 实现,而蓝牙基带资源及数据处理部分、射频收发部分则是由硬件实现。对于蓝 牙模块来说,硬件的实现固然能够提高处理速度,方便数据处理,但在成本及生 产工艺上来看,是个限制蓝牙技术普及的重要因素。基于此,本文提出在速度及 服务质量保证的情况下,以采用通用芯片使用标准c 语言来实现蓝牙模块中硬件 部分的方法,以达到降低成本,提高蓝牙模块性价比的目的。 东北大学硕士学位论文 第二章蓝牙基带协议分析 2 1 概述 第二章蓝牙基带协议分析 蓝牙作为一种开放性,短距离无线通信技术,它用于替代各种移动设备和固 定电子设备之间连接线缆,其关键技术在于低功耗和低成本。 蓝牙系统主要由两的部分构成:蓝牙模块和蓝牙主机,如下图所示: 图2 1 蓝牙系统模型 f i g 2 1b l u e t o o t hs y s t e mp r o t o t y p e 蓝牙模块在功能上主要包括三大部分:蓝牙无线射频单元,链路控制器和链 路管理器。 蓝牙无线射频单元:它作为蓝牙模块的一部分为其提供电气接口,设备通过 该接口,采用经过调制的载波频率和无线承载业务( c d m a 、g s m 和d e c t 等) 传输数据包。设备采用的无线通信频率位于2 4 g h zi s m ( 工业、科学和) 频段, 该频段只需要很小的高效天线、优良的芯片级r f 前端( l n a ,上行转换器和下 行转换器) 、电源控制器、g f s k 调节器和一个起收发器作用的发送接收开关即 可正常工作。 链路控制器:它主要包括硬件单元和软件单元两部分。目前蓝牙产品的链路 控制硬件单元包含三个方面的集成芯片:链路控制器,基带处理器以及射频发送 接收器,此外还使用了单独调谐元件。基带链路控制器负责处理基带协议和其 它一些低层常规协议。这部分硬件实现了基带协议及其功能。它执行错误检测和 归一化处理功能,并实现了基本的、重复性的寻呼、查询、寻呼扫描和查询扫描 等功能。还提供了跳频功能。同时还向主机系统提供了u s b 以及音频编解码接 口。 链路管理器:链路管理( l m ) 软件模块携带了链路的数据设置、鉴权、链 路硬件配置和其它一些协议。l m 能够发现其他远端l m 并通过l m p ( 链路管理 协议) 的p d u ( 协议数据单元) 与之通信。l m 模块提供如下服务:发送和接收 东北大学硕士学位论文g _ - 章蓝牙基带协议分析 数据、请求命名、链路地址查询、建立连接、鉴权、链路模式协商和建立、链路 类型协商等。 2 2 蓝牙物理信道 1 信道 蓝牙技术工作在2 4 2 4 8 5 g h z 的i s m 频段上,以1 m h z 的间隔分成7 9 个 频点,构成蓝牙的射频信道,而蓝牙的跳频技术正是在这7 9 个频点上,以伪随 机的方式进行跳跃。每个p i c o n e t 的跳频序列是唯一的,它由m a s t e r 的蓝牙地址 来决定,跳频序列的相位出m a s t e r 的蓝牙时钟决定。理论的跳频速率为1 6 0 0 跳 秒,在一个p i c o n e t 中,所有的蓝牙单元应保持跳频和时钟的同步。 2 时隙 蓝牙系统的主、从单元之间的通信是采用时分双工( t d d ) 的传输方式,所 以蓝牙信道被划分长度为6 2 5 1 1s 的时隙,时隙根据p i c o n e t 的m a s t e r 蓝牙时钟 来编号的,时隙编号区域为o _ 2 ”1 且循环周期是2 ”。 在一个分组发送期间射频跳频频率将保持固定。对于单时隙分组,射频频率 由当前蓝牙时钟提供;而对于多时隙分组,射频频率将与第一个时隙的频率保持 一致。 2 3 物理链路 在蓝牙的主、从单元之间可以建立两种类型的链路:面向同步连接( s c o ) 链路;异步无连接( a c l ) 链路。 1 s c o 链接 s c o 链路是蓝牙主从单元之间进行电路交换所采用的连接方式,它是一哥十 对称的,等时的点对点链接,并且采用保留时隙来传输分组。该保留时隙是通过 l m p 协议发送的s c o 设置p d u 所携带的参数如s c o 间隔t s c o 和时隙补偿d s c o 来定义的。主单元以规定的时问间隔,即所谓的s c o 间隔t s c o ,在预留的主一 从时隙向从单元发送s c o 分组,在接下来的从一主时隙中允许s c o 的从单元进行 响应。如果s c o 从单元对分组头中从单元地址解析失败,在保留的s c o 时隙里它 仍允许返回一个s c o 分组。s c o 分组不重传。 作为主单元,它能够支持3 路指向相同从单元或不同从单元的s c o 链路。而 作为从单元,它则可以支持3 个来自同一主单元的s c o 链路或2 个来自不同主单 元的s c o 链路。 2 a c l 链接 东北大学硕士学位论文 第二章蓝牙基带协议分析 a c i 链接是蓝牙p i c o n e t 中数据进行分组交换的传输方式,它可以有异步和 等时两种服务方式,在一个主单元和一个从单元之间只可以存在一个a c l 链路; 也就是,当且仅当主一从h , j 隙中指明了某个从单元的地址,这个从单元才町以在 卜一个从一主时隙中返回一个a c l 分组。如果对分组头中从单元地址解析失败, 从单元就不能在后续的时隙中发送分组。 未指定目的从单元的a c l 分组可视为广播分组,每个从单元都可以阅读。如 果在a c l 链路上没有数掘发送,也没有轮询要求,就不发送任何信息。 2 4 基带分组 蓝牙单元之间进行通信,通常使用基带分组携带消息,蓝牙基带分组采用的 是l i t t l ee n d i a n 格式,即使用如下规则: 最次要位( l s b ) 对应b o ; l s b 最先发送,即最先发送到射频接口; 在用图例表示这种格式时,l s b 位于最左边。 其通用格式如下:每个分组包括识别码,分组头和净荷三部分。 l s b m s b l塑型坐 ! 兰! i 坌丝兰【! ! !l 堡垄 ! :! 三兰三! l 4 单位:b i t 图2 2 通1 l l j 监牙分组格式 f i g 2 2b l u e t o o t hp a c k e tu n i v e r s a l 口o d e 2 4 1 识别码 识别码( a c c e s sc o d e ) 用于时序同步、偏移补偿、寻呼和查询等作用,分 为三类:信道识别码c a c ( c h a n n e la c c e s sc o d e ) 、设备识别码d a c ( d e v i c ea c c e s s c o d e ) 和查询识别码i a c ( i n q u i r ya c c e s sc o d e ) 。 i 刘2 3 识别码 f i g 2 3a c c e s sc o d e 6 东北大学硕士学位论文第二章蓝牙基带协议分析 信道识别码:用于标识一个微微网( p i c o n e t ) 。在该微网中,进行交换的分 组都含有这个识别码。在信息接收的时候,首先对其进行检验,以判断收到的信 息是否是本p i c o n e t 所需的。信道识别码是使用微微网中主单元地址的低地址部 分( l a p ) 生成。 - 设备识别码:用于寻呼( p a g e ) 和寻呼响应( p a g er e s p o n s e ) 过程。设备识 别码使用被呼设备蓝牙地址的低地址部分( l a p ) 生成。在寻呼及寻呼响应过程 中,每一个寻呼发送以及对这个发送作出的响应都要加上设备识别码。 查询识别码:用于查询( i n q u i r y ) 和查询响应( i n q u i r yr e s p o n s e ) 过程。共 有6 4 个i a c ,除了一个通用查询识别码( g e n e r a li a c ,g i a c ) 之外,其余的6 3 个i a c 被称作专用查询识别码( d e d i c a t e di a c ,d i a c ) 。g i a c 用于发现覆盖范 围内的所有蓝牙设备;而d i a c 只能用于发现覆盖范围内的专用蓝牙设备。在查 询及查询响应过程中,每一个查询发送以及对这个发送作出的每一个响应都要加 上查询识别码。 每个分组都以识别码丌始,如果后跟分组头,则识别码的长度为7 2 b i t ,否 则识别码的长度为6 8 b i t 。在蓝牙的接收机单元,使用一个滑动相关器对识别码 进行相关处理,当超过门限值就产生一个触发信号,触发信号用于判定接收定时。 2 4 2 分组头 分组头中携带了链路控制信息,它由6 个字段组成。其通用格式如图2 3 。 l s b34l118m s b l a m _ a d d r l t y p e i f l o w l a r q nis e q n l h e c l 圈2 4 分组头格式t 单位:b j t f i g 2 ,4p a c k e th e a d e r 下面介绍每个字段的功能。 ( 1 ) a m _ a d d r a m _ a d d r 字段代表p i c o n e t 中活动成员地址。在蓝牙无线通信中,接收机 可能接收到来自其它p i c o n e t 的信息,判断是否是本p i c o n e t 所应该接收的信息, 是通过信道识别码( c a c ) 来衡量;如果一条信息是本p i c o n e t 的,如何来判断 是具体哪一个蓝牙单元的,就应该根据a ma d d r 字段来区分。在每个蓝牙单 元被激活时,链路控制器将分配给它一个a ma d d r 以区别于其它已激活的蓝 牙单元。该字段有3 b i t ,其范围是0 0 0 1 1 1 ,全0 地址是f h s 分组所特有,其 它7 个地址则可标识7 个不同的从单元。也就是说,在同一时间,一个p i c o n e t 中只允许有最多7 个激活从单元。当该单元被断开或者转为省电模式时, a m a d d r 将被放弃,当重新建立连接或从省电模式返回时将再次分配。 东北大学硕士学位论文第二章蓝牙基带协议分析 ( 2 ) t y p e t y p e 字段有两个功能,其一,通过t y p e 可以判断出传输的是a c l 分组 还是s c o 分组;其二,可以判断该分组是什么类型,以决定后续分组应该等待 多少时隙才能够占用信道。它由4 b i t 组成,共有1 6 种可能。总结如表2 1 所示。 表2 1 分组类型表 类型t y p e 码名称说l 埘 携带设备访问码【d a c ) 或者查询访问码( i a c ) 。i i 据一个 通用无i d 时隙。i 科定为6 8 b i t 。 n u l l 数据包没有数据,川丁获得链路信息和流控。- i l 据一个 通用0 0 0 0n u l l 时隙,无确认,k 度i 刊定为1 2 6 b i t 。 与n u l l 分组相同但需要确认。主单元川它检查从单元是 通用0 0 0 lp o l l 否启动。l i i 据一个时隙。 表明监牙设备地址利发送方时钟的特殊控制数据包。州于寻 通用o o l 0 f h s呼主单元响应、查询响应帮i 跳频同步。l 据一个时隙。2 3f i :c 编码。 支持任何链路中的控制消息。还可以携带规则用户数据,l i 通用0 0 1 1d m l 据一个时隙。 携带1 0 个信息字:宵。通常用作语音传输。1 1 3f e c 编码。 s c o0 1 0 1h v i 1 1 i 据一个时隙。 携带2 0 个消息字节。通常州作语音传输。2 3f e c 编码。 s c 00 1 1 0h v 2 l 据一个时隙。 携带3 0 个信息字节。通常用作语音传输。无f e c 编码。o i s c 00 1 1 1h v 3 据一个时隙。 数据一语音组合数据包。语音字段没有f e c 保护。数据字段采 s c o1 0 0 0d v 川2 3f e c 编码。语音字段从不重传,数据字段可以重传。 a c l0 0 j 1d h l携带1 8 个消息字节。2 3f e c 编码。o 一据一个时隙。 a c l0 1 0 0d h l携带2 8 个信息字h 。无f e c 编码。t l f 据一个时隙。 a c l1 0 l od m 3携带1 2 3 个信息字节。z 3f e c 编码。l i 据3 个时隙。 a c l1 0 1 1d h 3携带1 8 5 个信息字仕。无f e c 编码。i i 据3 个时隙。 a c l1 1 1 0d h 5携带2 2 6 个信息字仃。2 3f e c 编码。i 据5 个时隙。 a c l1 1 1 1d h 5携带3 4 1 个信息字1 ,。无f e c 编码。i i l 据5 个时隙。 携带3 0 个信息字”饥类似d h l 但没有c r c 代码。i i i 据1 a c l1 0 0 1a u x l 个时隙。 东北大学硕士学位论文 第二章蓝牙基带协议分析 对于不同的分组类型,其数据速率也是不同的, ( 3 ) f l o w 链路控制器通过检查该b i t 对a c l 链路分组进行流量控制。当a c l 链路接 收端的r x 缓存满或没有清空时,链路控制器将置浚位为o ,以要求对方暂停发 送数据:当清空缓存时,再将该b i t 置1 ,表示对方可以继续发送数据。从而实 现了流控的作用。该位默认值为1 ,即数据无间断的发送。在f l o w = 0 时,虽 然不能再接收a c l 数掘分组,但仍能够接收链路控制指令( i d ,p o l l 和n u l l ) 和s c o 分组。 ( 4 ) a r q n a r q n 位是一个标志位,用来标识接收端是否已经j 下确接收到信息,它可以 通过反向信道信息稍带传送。如果a r q n = 1 ,则表示接收端已经正确接收信息, 发送端可以继续发送信息;如果a r q n = 0 ,则表示接收端没有正确接收信息, 发送端应该重新发送上次未成功的信息。该位默认值是0 。 ( 5 ) s e q n s e q n 位也是一个标志位,用来标志所接收的信息是否是重复信息,从而过 滤重传分组。在数掘的传输过程中,接收端已正确接收了信息,并向发送端发送 a r q n = i 标志,但是在反向信道中,a r q n 位发生误码,也就是在发送端所收 到的a r q n = 0 ,发送端误判为仍然需要重发上次数据,此时则发生了不必要的 数据重发,为了解决这个问题,接收端在每次接收到数据包时,把s e e n 位置l , 这样如果发生以上误传的时候,接收端可以进一步检测s e q n 位,如果它已经是 1 ,则将把收到的数据包丢弃。 ( 6 ) h e c 在每个数据打包的时候,都将用h e c 对分组头进行完整性校验,在接收端 进行同样的过程来检验分组头,如果没有通过验证,则整个数据包将被丢弃。 h e c 有8 b i t ,将通过h e c 生成器来产生。在对分组头进行h e c 之前,应先对生 成器进行初始化,使用值如表2 2 。 表2 - 2 初始值 t 曲l e 2 2i n i t i a l i z a t i o n 情况初始值 主单元寻呼响应 s l a v eu a p 查询响应d c i 其他m a s t e ru a p 初始化之后,h e c 对1 0 b i t 的分组头进行计算。 东北大学硕士学位论文 第二章蓝牙基带协议分析 2 4 3 净荷 净荷是所传数据的主要载体,它有两种格式:同步语音字段和异步数据字段。 a c l 分组只有数据字段,s c o 分组只有语音字段,而d v 分组既含有语音字段 有含有数据字段。 ( 1 ) 语音字段 语音字段没有分组头,并且长度固定,对于h v 分组,其长度是2 4 0 b i t ;对 于d v 分组,其长度则是8 0 b i t 。 ( 2 ) 数据字段 数据字段包含3 个部分:净荷头,净荷体和c r c 校验码。特例a u x l 分组 不包含c r c 码。 净荷头 净荷头的主要功能是指示逻辑信道、流量控制和指示净荷长度。净荷头分为 3 个部分:lc h 字段,f l o w 字段和长度字段。单时隙分组头占1 个字节,而 多时隙分组头占2 个字节,分别显示为图2 5 和图2 6 。 i ,s b2】5m s b 图2 5 单时隙分组净荷格式 f i g 2 5p a y l o a do f s i n g l es l o t l s b2194m s b lc hf l o w长度r e s e r v e d 图2 6 多时隙分组净荷格式 f i g 2 6p a y l o a d o f m u l t i - s l o t s 逻辑信道( lc 1 4 ) 分配见表2 3 所示。 表2 3 逻辑信道分配表 t a b l e 2 3l o g i c a lc h a n n e l lc h 码字逻辑信道信息 0 0n a未定义 0 1u a ,u i l 2 c a p 消息的后续分块 1 0 u a ,u il 2 c a p 消息的开始分块 1 l l ml m p 消息 f l o w 位的流控标志位,它是代表l 2 c a p 级的流控,值1 表示无限制,而 东北大学硕士学位论文第二章蓝牙基带协议分析 0 则表示控制流量。对于l m 信息,f l o w 位将固定为1 。 净荷中的长度字段值只包含有效载荷的长度,不包括c r c 码。如果是单时 隙分组,长度字段将只占用净荷头的高5 b i t ,而如果是多时隙分组,则长度将占 用第一字节的高5 b i t 和第二字节的低4 b i t ,共9 b i t 。 净荷体 净荷体是数据传送的主要载体,包括l m 数据和l 2 c a p 数据。 c r c 码 16 b i t 的循环冗余校验码( c r c ) 是使用c r c c c i t t 标准通过c r c 生成器 产生。在进行c r c 码计算之前需要对生成器进行初始化,其应用规则满足表2 - 2 。 2 5 基带数据处理 基带数据包在通过射频发送之前,应首先通过基带数据处理,以满足数据完 整性和保密性的要求,该处理过程主要包括f e c ,数掘白化和加密等过程。 ( 1 ) f e c 处理 在数据净荷中使用f e c 机制的目的是降低重传的次数,它包括1 3 码率f e c 和2 3 码率f e c 。蓝牙定义了多种分组格式,可以根据通信的应用环境的不同而 选取不同的f e c 处理,甚至不需要f e c 。其中,1 3f e c 用来处理分组头,以提 高数据传送的高可靠性;2 3f e c 则主要用来处理净荷数据。两种编码机制将分 别通过f e c 编码器产生。 ( 2 ) 数据白化 在数据分组发送之前,分组头和净荷都要进行白化处理,使分组随机化,降 低直流偏移,有利于射频数据处理,降低误码率。数据白化过程要在f e c 之前 进行。在数据接收的过程中,使用相同的白化处理过程对数据进行解扰,恢复被 随机化的数据,这一过程在f e c 解码之后进行。数据白化过程由白化器生成。 ( 3 ) 加密 为了实现对通信双方数据的保密性,蓝牙系统提供了多层安全性,加密密钥 的长度是可变的,从8 b i t 到1 2 8 b i t ,增加更大的灵活性。目前大多采用6 4 b i t 密 钥,具体过程见第六章部分。 2 6 蓝牙编址 每一个蓝牙的收、发信机都被分配一个固定的4 8 b i t 的蓝牙设备地址;并且 在主从通信及节能状念下,蓝牙链路控制器也将为蓝牙设备及数据包分配相应的 东北大学硕士学位论文第二章蓝牙基带协议分析 地址,总结如表2 4 。 表2 4 蓝牙地址 1 、a b l e 2 4b l u e t o o t ha d r e s s 4 8 侥长的监牙设备地址( i e e e 8 0 2 标准) 。该地址划分为l a p ( 2 4 b da d d r何地址低端部分) 、u a p ( 8 何地址高端部分) 平n a p ( 1 6 位无意 义地址部分) 。地址空间2 3 2 。 a ma d d r3 位氏的活动成员地址。所有的0 信息a m _ a d d r 都_ | j 丁j 捅消息。 8 位1 支的成员地址,分配给处于p a r k 状态的从单元使瑚。区别不同 p ma d d r 的处y - p a r k 状态的从单元,主单元刚它u n p a r k 从单元。 接入请求地址( a c c e s sr e q u e s ta d d r e s s ) p a r k 状态的从单元州 a ra d d r 米确定坍问窗口| i 从单元一主单元、p 时隙,通过它发送访问消息。 2 7 时钟与跳频 1 蓝牙时钟 在蓝牙设备中,都始终运行着一个内部的系统时钟,用来决定收发器定时和 跳频,它是取自一个自由运行的本地时钟,从不进行调整,也不会关闭。蓝牙时 钟与每天的时间没有任何关系,它可以设置成任何值。时钟的分辨率至少是t x 和r x 时隙的一半,即3 1 2 5us 。蓝牙技术规定,蓝牙时钟是使用一个2 8 b i t 的 计数器实现的,时钟频率为3 2 k h z ,循环周期为2 2 8 1 ,符号周期为3 1 2 5u8 。 微微网中的定时和信道的频率跳变由主单元的时钟决定。在主从单元建立连 接时,主单元的时钟传送给从单元,每个从单元给自己的本地时钟加一个偏移量, 实现与主单元的同步。因为时钟是不进行调控的,因此必须对偏移量进行周期的 更新。蓝牙单元时钟在不同的模式和状态下具有不同的表现形式:c l k n ( 本地 时钟) ,c l k e ( 估计时钟) ,c l k ( 主单元的时钟) 。c l k 和c l k e 是由c l k n 加 上一个偏移量得到的。c l k e 是主单元对从单元的本地时钟进行时钟估计,即在 主单元的c l k n 基础上增加一个偏移量来近似从单元的本地时钟,目的是主单 元可以加速连接的建立过程。c l k 是微微网中主单元的时钟,用于调度微微网 中所有的定时和所有的行为,所有从单元都使用c l k 来调度自己的接收和发送。 c l k 是由c l k n 加上一个偏移量得到的,主单元的c l k 就是c l k s 。 2 跳频选择 蓝牙系统共定义了1 0 种跳频序列,7 9 跳和2 3 跳各占5 种。 东北大学硕士学位论文 第二章蓝牙基带协议分析 ( 1 ) 寻呼跳频序列:3 2 个独立激活的频率,等概率的分布在7 9 m h z 的频带 内,序列周期为3 2 。 ( 2 ) 寻呼应答跳频序列:3 2 个独立的响应频率,与当时的寻呼跳频序列一一 对应,主单元和从单元使用不同的规则得到同一个序列。 ( 3 ) 查询跳频序列:3 2 个独立激活的频率,等概率的分布在7 9 m h z 的频带 内,序列周期为3 2 。 ( 4 ) 查询应答跳频序列:3 2 个独立的响应频率,与当时的寻呼跳频序列一一 对应。 ( 5 ) 信道跳频序列:非常长的序列周期,在短时间内没有重复,但在7 9 m h z 的频带内是均匀分布的。 对于每种情况,都需要从一主和主一从两种跳频序列。 3 通用跳频选择方案 跳频频率的产生由两部分组成:选择一个序列;将频率与该序列相对应。 跳频选择的一般性框图如图2 7 所示。 圈2 7 跳频选择方案概括图 f i g 2 ,7s c h e m eo f h o p p i t t gf r e q u e n c y 由图中可以看出,跳频频率的两部分,序列和相位分别由主单元的蓝牙地址 及本地时钟c l k 和相位偏移来决定。 在连接状态下,本地时钟由一个与主时钟相等的补偿进行修改。其中,只能 使用时钟的2 7 位m s b 。在寻呼和查询子状态下,将使用时钟的整个2 8 位。 地址输入由2 8 位组成,即整个l a p 和u a p 的4 位l s b 。在连接状态下, 使用主单元地址;在寻呼子状态下使用寻呼单元地址。在查询子状态时,将使用 和g i a c 相对应u a p l a p 。 东北大学硕士学位论文 第二章蓝牙基带协议分析 2 8 蓝牙模块的收发规则 2 8 1t x 规则 t x 缓存的功能图如图2 - 8 所示。对于a c l 和s c o 两种链路,t x 规则要分 别处理。在主单元,对每个从单元都有一个独立的t x a c l 缓冲器;对每个s c o 从单元有一个或多个t xs c o 缓冲器,多个s c o 链路既可以共用一个t xs c o 缓冲器,也可以每条链路有自己的t xs c o 缓冲器。每个t x 缓冲器包括两个 f i f o 寄存器,由蓝牙控制器读出的用于组成分组的寄存器是c u r r e n t 寄存器,而 由蓝牙链路管理器载入新信息的寄存器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论