(通信与信息系统专业论文)蓝牙互连测试仪的研究及hcrp测试用例的设计、实现及验证.pdf_第1页
(通信与信息系统专业论文)蓝牙互连测试仪的研究及hcrp测试用例的设计、实现及验证.pdf_第2页
(通信与信息系统专业论文)蓝牙互连测试仪的研究及hcrp测试用例的设计、实现及验证.pdf_第3页
(通信与信息系统专业论文)蓝牙互连测试仪的研究及hcrp测试用例的设计、实现及验证.pdf_第4页
(通信与信息系统专业论文)蓝牙互连测试仪的研究及hcrp测试用例的设计、实现及验证.pdf_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

摘要 蓝牙技术是一种短距离无线通信技术,其工作在全球统的 2 4 g h z 的工科医( i s m ) 频段,咀取代计算机与外设及其它电子设备 之间的电缆为主要目的。虽然蓝牙技术被认为是应用广泛并且极具潜 力的通信技术之一,但作为通信产品的蓝牙产品之问的互连互通却一 直困扰着蓝牙技术的发展与应用。为此蓝牙组织( s i gb l u e t o o t hs p e c i a l i n t e r e s tg r o u p ) 为了提高蓝牙产品的互连互通以进一步促进蓝牙技术 的发展提出了蓝牙p r o m e 互连测试系统( p t s ) ,即蓝牙组织决定更改 互连性测试的过程,将产品之间的测试改为产品与测试系统之间的测 试。i v t 参加了新的测试流程的制定,并且开发出了自己的蓝牙互连 测试系统b l u e s o l e i l p t s ,在互连测试系统的开发中工作量最大且准 确度要求最高的莫属于测试脚本的设计、编写与验证,本文作者在此 测试仪的开发中完成了蓝牙互连测试仪中部分p r o f i l e 测试案例的设 计、编写及相应的验证工作。本文以硬拷贝电缆替代协议( h 甜d c o p y c a b l er e p l a c e m e n tp r o t o c o l 简称h c r p ) 为例详细介绍了其测试案例 的设计、实现及其相应案例的验证过程。 关键词:蓝牙、互连测试、硬拷贝电缆替代。 a b s t r a c t b i u e t 0 0 mi sah n do f s h o r t r a n g e w i r e l e s sc o m m 删c a t i o n s t e c 王l 芏l o l o g y a n dc o i 哪t l l l i c a t e so na 缸q u e n c yo f2 4 5g l i z ,w h j c hh a s b e e ns e t 船i d eb yi n t e m a t i o n a la g r e e m e n tf o rt 1 1 eu s eo fi n d u s t r i a l , s c i e m i f i ca n dm e d i c a ld e v i c e s ( i s m ) i ta i m s a t s i m p l i 毋i n g c o 栅w l l c a t i o n s a m o n g d e v i c e s ,a n d a l s o s i m p l i 黟i n g d a t a s y n c l l f o n i z a t i o nb e 俩e e ni n t e m c td e v i c e sa 1 1 do t h e rc o m p u t e r s t h o u g h b l u e t o o t hi sc o n s i d e r e da sa b r o a d l yu s e 如la n dp r o m i s i n gt e c h n o l o g y b u t s i n c ei t sb i r mm ei n t e r o p e r 曲i l i t yo fw h i c hb l u e t o o t hd e v i c e s a l w a y s l i m i t si t 如n h e ru s e d b l u e t o o t hs i gr e c o m m e n d st e s t i n gb l u e t o o t hd e v i c e s w i t h p r o f i l e t e s t e r s y s t c m( p t s ) u s e da sas t a n d a r dt e s t e rf o r i “t e r o p e r a b m t yt e s t i n gi n s t e a do fa g a i n s to t h e ra v a i l a b l eb l u e t o o t hd e v i c e s i v tc o i p o r a t i o nj o i n e dt h ew h 0 1 ep r o c e d u r eo fd e f i n i n gp t sa n dn o w p m v i d e sab l u c s o l e i l t m - p t sw h j c hh a sb e e nd e v e j o p e db a s e do nt h c i a t e s tb l u e t o o t hs i g r e s ts p e c i f i c a “o n o n eo f t h em a j o rd i 珩c u n i e si nt h e d e v e l o p m e n to fap r o f i l et e s t e ri sa b o u th o wt od e s i g n 、p r o g r 锄a n d v a i i d a t et e s tc a s e s ,w h i c hi sa l s ot 1 1 em o s ti m p o r t a n tp a r to ft e s t e lt h e a u t h o ro ft h i sn l e s i sp :l r t i c i p a t e di nd e v e l o p i n gt h eb l u e s o l e i l t m p t sa n d h a sd e s i g n e d、 p r o g r a i l l m e da n dv a l i d a t e dt h et e s tc a s e so fs o m ep r o f i l e s t h j s 山e s i si sa b o u th o wt o d e s i g n 、p r o g r a ma n dv a l i d a t e st e s t c a s e s 1 1 1 i sm e s i sa l s od e s c r i b e si nm o r ed e t a i lt 1 1 ew h o l ep m c e d u r eo fd e s i g n 、 p r o g r 锄a n dv a l i d a t e st e s tc a s e sf o rh c r pp m f i l e k e yw 0 r d s :b 1 u e t o o t l l 、i m e r o p e r a b i l i t y 、h c r p 。 1 1 1 北京交通大学硕士论文 第一章论文的背景及意义 1 1蓝牙技术及蓝牙技术面临的问题 现代信息社会,通信技术的发展很快,三大通信网络:传统电信 网,计算机国际互联网i n t e r n e t ,有线电视网相互融合的趋势已经 很明显。怎么把这三个网络统一起来呢? 在传输骨干网方面,人们已 经找到比较有效的手段来统一传输了,但在终端方面,目前还没有一 种比较好的统一终端。蓝牙技术就是涉及这样一种与网络终端相关的 短距离无线通信技术,有可能对网络融合在终端技术方面有所突破。 蓝牙( b l u e t o o t h ) 是由东芝、爱立信、i b m 、i n t e l 和诺基亚于1 9 9 8 年5 月共同提出的近距离无线数字通信的技术标准。其目标是实现最 高数据传输速度1 m b s ( 有效传输速度为7 2 1 k b s ) 、最大传输距离为 1 0 0 米,用户不必经过申请便可利用2 4 g h z 的i s m ( 工业、科学、医 学) 频带,在其上设立7 9 个带宽为i m h z 的信道,用每秒钟切换1 6 0 0 次的跳频扩散技术来实现电波的收发。 目前,蓝牙组织b i u e t o o t hs i g 的成员企业数已达到3 0 0 0 家以上。 除了原创的5 家厂商之外,包括康柏( c o m p a q ) 、戴尔( d e l j ) 、摩托罗拉 ( m o t o r o l a ) 、q u a l c o m 、b m w 及卡西欧( c a s i o ) 等均已加入,所有厂商 已达成知识产权共享的协议。以推广此项技术。 蓝牙技术的应用被认为非常广泛而且极具潜力。2 0 0 2 年,4 0 0 余 种蓝牙产品的销量总共达到了3 0 0 0 万件:而2 0 0 3 年的数字是2 0 0 2 年的2 倍。i n s t a t m d r 公司预测,蓝牙市场的规模在2 0 0 7 年将膨 胀到6 亿件。爱立信技术授权公司的总裁m 撕ak h o r s a l l d 表示:“在 如此艰难的经济环境下,蓝牙是少数仍在增长的产品之_ ”。 虽然蓝牙技术发展迅速,应用广泛,市场前景良好,但作为通信 产品的蓝牙设备经历了互连互通的困饶。由于生产厂家众多,且大多 数产品都是基于合作开发,即蓝牙芯片、蓝牙协议栈及应用开发来自 于不同的生产厂商,要实现不同厂家的产品互联互通,蓝牙测试、认 证作业相当复杂。而且目前的互连测试主要是基于产品对产品的测试, 即使现有的产品都进行对测仍然不能保证良好的互通而且这种产品对 北京交通大学硕士论文 产品级的测试缺乏系统性和回归性,蓝牙认证机构( b q b ) 对作为证 据的过程数据的检查也不是一件容易的工作。 1 2 蓝牙互连测试系统的研究意义 由于上述问题,使得通过了蓝牙认证的产品也可能达不到1 0 0 互 通,互连性问题一直是困扰蓝牙技术发展与应用的主要障碍。最近, 蓝牙组织决定更改互连性测试的过程,将产品之间的测试改为产品与 p r o f i l e 测试系统( p t sp r o f i l et e s t i n gs y t e m ) 之间的测试。 北京交通大学硕士论文 第二章。蓝牙技术 2 。l 蓝牙技术 蓝牙技术主要面向网络中各类数据及语音设备,使用无线的方式 将它们连成一个微微网( p i c o n c t ) ,多个p i c o n e t 之间可以互连形成 s c a t t e m e t ,从而方便快速地实现各类设备之间的无线通信【1 】。蓝牙通 信器件还可以在其通信范围内实现自动连接,从而方便地建立l 临时的 个人无线网络。 蓝牙技术采用2 4 g h z 无需授权的工业科学医学( i s m ) 频段。 为了提供对此频段其他非授权用户产生干扰的优异抵抗能力,蓝牙采 用了跳频扩谱无线信号,而不是直接频率无线信号。蓝牙协议结构简 单,使用重传等机制保证链路的可靠性,实现多层可分级的多种安全 认证机制 2 。遵循蓝牙协议的设备将能够用微波取代传统网络中错综 复杂的电缆,非常方便地实现快速灵活、安全、低代价、低功耗的数 据和语音通信。 蓝牙技术的作用是简化小型网络设备( 如移动p c 、掌上电脑、手 机) 之间以及这些设备与i n t e m e t 之间的通信,免除在无绳电话或移 动电话、调制解调器、p d a 、计算机、打印机、幻灯机、局域网等之 间加装电线、电缆和连接器【3 。而且,这种技术可以延伸到那些完全 不同的新设备和新应用中去。例如,如果把蓝牙技术引入到移动电话 和膝上型电脑中,就可以去掉移动电话与膝上型电脑之间的令人讨厌 的连接电缆而通过无线使其建立通信。打印机、p d a 、桌上型电脑、 传真机、键盘、游戏操纵杆以及所有其它的数字设备都可以成为蓝牙 系统的一部分。除此之外,蓝牙无线技术还为已存在的数字网络和外 设提供通用接口以组建一个远离固定网络的个人特别连接设备群。 蓝牙技术的无线电收发器的连接距离目前可达1 0 0 米,不限制在 直线范围内,甚至设备不在同一间房内也能相互连接;并且可以同时 连接多个设备,最多可达7 个,这就可以把用户身边的设备都连接起 来,形成一个“个人区域的网络”( p e r s o n a l 加e a n e m o r k ) 。 目前存在的无线局域网的技术主要有i e e e 8 0 2 1 1 、h o m e r f 和蓝 北京交通大学硕士论文 牙三种,它们都可以工作在2 4 g h z 频段上。i e e e 8 0 2 1 1 只规定了开 放式系统互连参考模型( o s 删) 的物理层和m a c 层,其m a c 层 利用载波监听多重访问,冲突避免( c s m c a ) 协议,而在物理层, i e e e 8 0 2 1 l 定义了三种不同的物理介质:红外线、跳频扩谱方式 ( f h s s ) 以及直扩方式( d s s s ) 。i e e e 8 0 2 1 1 支持1 1 1 m b s 较高的 数据速率,但是它只支持数据通信,为进行无线数据通信,数据设备 先要安装无线网卡。 另一种无线局域网技术h o m e r f 是专门为家庭用户设计的。 h o m e r f 利用跳频扩谱方式,通过家庭中的一台主机在移动数据和语 音设备之间实现通信,既可以通过时分复用支持语音通信,又能通过 载波监听多重访问冲突避免协议提供数据通信服务。同时,h o m e r f 提供了与t c p i p 良好的集成,支持广播、多播和4 8 位i p 地址。 与上面两种技术不同,蓝牙技术具有一整套全新的协议,可以应 用于更多的场合。蓝牙技术中的跳频更快,在接收或发送一个分组数 据后,即跳至另一频点,因而更加稳定,同时它还具有低功耗、低成 本和灵活安全等特点。另外,蓝牙所采用的前向纠错技术更是限制了 较长距离链路的无序噪声影响,而经优化的编码方式可使蓝牙技术应 用于各种恶劣的无线环境。蘸牙协议是一个完整的综合协议,其应用 模式主要是将协议固化在芯片中并内置于笔记本电脑及其他需要连 线的智能化设备中,当然也可以把无线模块直接合成到蜂窝手机或其 他设备之中,其控制则利用设备本身的芯片,应用方式相当便捷 4 。 由于蓝牙技术独立于操作系统,所以。在各种操作系统中均有良好的 兼容性。蓝牙技术对各个商业操作系统中的内嵌式支持正在发展之中。 总的来讲,8 0 2 1 1 比较适于办公室中的企业无线网络,h o m e r f 可应用于家庭中的移动数据和语音设备与主机之间的通信,而蓝牙技 术则可以应用于任何可以用无线方式取代电缆的场合。 目前这些技术还处于并存状,但是有可能引起干扰等问题。从长 远看,随着产品市场的不断发展,它们将走向融合,而其中最具竞争 力的主导技术就是蓝牙。 蓝牙是一种以安全的方式把众多的移动设备连接起来的网络技 北京交通大学硕士论文 术,它有着无限的应用前景。在它所涉及的广阔天地中,建构在这些 底层规范之上的是一个个诱入的p r o f n e 。由于有了这些精彩的p r 0 御e 以及蓝牙先进的工作机制才使得蓝牙技术具有蓬勃的生命力。 2 2 蓝牙系统 蓝牙系统由软件和硬件两部分组成。 2 2 1 硬件工作原理 ( 一) 射频 蓝牙规定的天线功率以o d b m ( 1 m w ) 为基准,最大可达到2 0 d b m ( 1 0 0 m w ) ,其工作频率符合大多数国家( 如美国、欧洲、日本等) 的i s m 频段标准,之所以选取此频段是为了能达到在全球均能运作的 目标。即系统所需之频带必须是全球各地均能很容易取得,且此频带 必须是未受法规限定及公开给无线电使用的,唯符合此项要求的便 是2 4 g h z 一称为工业、科学、医疗( i s m ) 的频带 5 】。i s m 频带是 对所有无线电系统都开放的频带,因此使用其中的任一频段都会遇到 不可预测的干扰。例如某些家电、无绳电话、汽车房开门器、微波炉 等,都可能是干扰源。为此,蓝牙特别设计了快速确认和跳频方案以 确保链路稳定。蓝牙通过跳频方式将能量扩散到起始于2 4 0 2 g h z ,终 止于2 4 0 8 g h z 的i s m 频段中,并将其划分为7 9 个跳频信道,每个信 道1 m h z 。当前,蓝牙s i gj 下试图在全世界的范围内协调这7 9 个信道, 并已促使日本、西班牙等国政府调整了相应的限制政策。蓝牙的通信 半径通常为j 0 c m 1 0 m ,但是如果增加发射功率,可以将半径扩展到 1 0 0 m 夕h 。 ( 二) 基带 如前所述,蓝牙在2 4 g h z 的i s m 频段的7 9 个信道里以跳频方式 工作。当两个蓝牙设备成功建链后,一个p i c o n e t 便形成了。两者之间 的通信通过无线电波在这7 9 个信道中随机跳转而完成。蓝牙给每个 p i c o n e t 提供特定的跳转模式,因此它允许大量的p i c o n e t 同时存在。 蓝牙既支持电路交换也支持分组交换。蓝牙基带帧保留一部分时隙用 于同步分组( 对应于电路交换) ,每个分组在不同的跳频中发射,一个 北京交通大学硕士论文 分组通常占用1 个时隙,最多能扩展到5 个时隙。蓝牙支持最大可达 3 个同步语音信道,同时也支持非同步数据信道,或者一个信道同时 支持同步语音和非同步数据。蓝牙采用时分双工( n ) d ) 方案来实现 全双工传输,因此蓝牙的一个基带帧包括两个包,首先是发送包,然 后是接收包。每个包可由1 个、3 个或5 个时隙组成,每个时隙6 2 5 us 。一个典型的单时隙帧每秒跳1 6 0 0 次。多时隙帧由于节省了头信 息开销而具有更高的数据速率。比如,单时隙帧的单向速率最大为1 7 2 k b ,s ,而一个5 1 ( 5 表示一帧内的发送包的时隙数,1 表示接收包的 时隙数) 的多时隙帧则支持发送率为7 2 l k b s 和接收率为5 7 6 k b s ( 对 m 筋t e r ,即主控设备而言) 。 ( 三) 链路管理与控制 蓝牙设备互连形成p i c o n e t ,每个p i c o n e t 包括一个且只有一个主控 设备和最多7 个从属设备 6 】。任何一个蓝牙设备既可以成为主控设备 又可成为从属设备。角色的分配是在p i c o n e t 形成时临时确定的。一般 而言,发出连接指令的设备将成为主控设备,但是蓝牙系统的“主 从转换”功能可使角色改变。 为了形成p i c o n e t ,蓝牙设备需要知道两个参数,即它希望连接到 的设备的跳转模式及其相应相位。每个蓝牙设备都有一个唯一的用于 标识自身跳转模式的全球标识符( g l o b a l i d ) 。在形成p i c o n e t 时,主 控设备先和其他设备分享自己的i d 号,再向那些设备提供自己的时 钟偏移信息,这些信息出所谓的跳频包( f h s ) 发送。 通常未连接进p i c o n e t 的设备处于旁观( s t a n d b y ) 模式。此时这 些设备监听其他设备的搜询( i n q u 时) 消息或者构建p i c o n e t 的请求 ( p a g e ) 。当某个设备发出查询命令时,接收设备将用它们的f h s 包 发送自己的i d 号和时钟偏移给询问者,以便使其形成一个完整的覆 盖范围内的设备情况表。为了形成p i c o n e t ,主控蓝牙设备会用所需设 备的i d 号寻呼这个设备( 此i d 号是在先前的i n q u 埘中得到的) 。被 呼设备将用自己的i d 号回应,然后主控设备会再发一个f h s 包( 包 括主控设备的i d 号和时钟偏移) 给被呼设备,随后被呼设备便加入 了主控设备的p i c o n e t 中。 北京交通大学硕士论文 一旦某个设备加入p i c o n e t 中,它就被分配给一个3 比特的主动成 员地址( a n 队) ,其他成员可以用其访问该设备。一旦p i c o n e t 内有8 个活动从属设备,主控设备必须把一个从属设备强制成停等( p a r k ) 模式。在p a r k 模式中,此设备仍然存在于p i c o n e t 中,但是它释放了 a m a 地址而得到一个8 比特的被动成员地址( p m a ) 。 m a 和p m a 的结合允许超过2 5 6 个设备同时存在于一个p i c o n e t 中,但是只有8 个具有a m a 地址的设备( 包括主控设备) 才能进行通信。 停等的设备以一定间隔聆听外界发给它们的指令。这就要求主控 设备有能力给所有的从属设备( 不论是停等的还是活动的) 广播信息。 处于s 胁d b y 状态的设备也监听其它设备发出的i n q u i r y 或p a g e 指令, 每隔1 2 5 s 它们就做一次这样的扫描。 在查询过程中,主控设备使用的是特别预留的全球统的i n q u 时 事件i d 标识号,并采用全球唯一的包含3 2 个信道的信道序列发送此 指令( 3 2 个回复信道也是预留的) 。进行i n q u i 巧扫描的设备每隔壁 1 2 5 s 就在这3 2 个信道中的某个信道上停留1 0 m s ,然后就跳转到序列 中的下一个信道继续监听,直到该设备的i n q u i r y 扫描功能被禁止( 可 能不止一个设备发出i n q u i r y 指令,因此要连续监听) 。在主询端,3 2 个i n q u i r y 信道被分成2 个频组,每组1 6 个信道。主询设备先在第1 频组上发布1 6 条相同的i n q u 时指令,随即每隔1 2 5 s 在反向回复信 道上监听回音。如果被询设备扫描的信道正好和主询设备发布指令的 信道重台,被询设备的监测相关器就会起较明显的反应,而后被询设 备就会用f h s 包发送自己的i d 号和时钟偏移。在下一个1 2 5 s 内主 询设备用第2 组频率重新发布i n q u i r y 指令,如此反复,直到主询设备 的覆盖范围内的所有设备都发回f h s 包。 寻呼过程也采用相似的信道序列。每个设备依据其i d 号都有唯一 的包含3 2 个寻呼频率的信道序列和包含3 2 个回复频率的信道序列。 处于s t a l l d b y 状态的设备每隔1 2 5 s 在其特有的寻呼信道序列中的某个 信道停留1 0 m s 以监听来自主呼方的寻呼i d 信息,若此i d 号不是自 己的,该设备就跳转到序列中的下一个寻呼信道继续监听。在主呼端, 欲呼口q 设备的3 2 个寻呼信道也被分成2 个频组,每组1 6 个信道。主 北京交通大学硕士论文 呼设备先根据它最近知道的被呼设备的时钟偏移作出被呼设备位置的 估计,然后调整两个频组的频率,随即主呼设备先用第l 组估计的频 率持地呼叫1 2 5 s 。如果位置估计是错误的( 即主呼设备未收到回音) , 主呼设备将在下一个1 2 5 s 内使用第2 频组。小的时钟偏移会使呼叫 过程很快完成,而大的时钟偏移却会使该过程延长到最大2 5 s ( 两个 频组总共呼叫的时间) 。一般而言,此过程的平均时延是o 6 4 s 。一旦 一个设备通过1 1 1 q u 时被发现并且通过p a g e 加入到p i c o n e t 中,p i c o n e t 就形成了。 在活动状态中,每个蓝牙设备都被分配一个a m a 地址,它指引 数据传到不同的设备中( 主控设备的地址总是默认为o ) 。为了在很低 的功率状态下也能使蓝牙设备处于连接状态,蓝牙规定了三种节能状 态,即停等( p a r k ) 状态、保持( h o j d ) 状态和呼吸( s n i f r ) 状态。 在s n i f f 状态中,从属设备降低了从p i c o n e t “收听”消息的速率,一 会儿醒一会睡,宛如呼吸一样;而在h o l d 状态中,设备停止传送数据, 但一旦激活,数据传递就立即重新开始。在p a r k 状态中,设备被赋予 p m a 地址,并以一定间隔监听主控设备的消息,主控设备的消息包括: ( i ) 询问该设备是否想成为活动设备;( 2 ) 询问任何停等的设备是否 想成为活动设备;( 3 ) 广播消息。如果我们把这几种工作模式按照节 能效率以升序排一下队,那么依次是:呼吸模式、保持模式和停等模 式。 在活动状态下,蓝牙设备能够支持两种链路类型,即面向连接的 同步链路( s c o ) 和面向无连接的异步链路( a c l ) 。每种链路支持 1 6 种不同的分组类型,其中4 种是控制分组。 s c o 数据包既可以传送话音,也可以传送数据,但在传送数据时, 只用于重发被损坏的那部分数据。s c 0 帧内的收发包结构必须是对称 的,即必须同时包含1 个、2 个或3 个时隙。s c o 数据包在保留的时 隙内发送,一旦s c o 链路建立,主从设备就直接发送s c o 分组,无 需轮询( p o l l ) 。为了建立s c o 连接,必须先建立a c l 链路以传送控 制信息。 a c l 支持对称和非对称两种帧格式。a c l 的包( 不论是收还是发) 北京交通大学硕士论文 必须包含奇数个时隙,以使整个帧的时隙数为偶数( 如1 1 、l 3 或者 1 5 等) 。主控设备负责控制a c l 链路的带宽,并决定p i c o n e t 中的每 个从属设备可以占用多少带宽及连接的对称性。从属设备只有被选中 时才能传送数据,即从属设备在发射数据前必须接受轮询。a c l 链路 也支持接收主控设备发给p i c o n e t 中所有从属设备的广播消息。 蓝牙采用三种纠错方案:l 3 前向纠错( f e c ) 、2 3 前向纠错和自 动重发( a r q ) f 7 】。前向纠错的目的是减少重发的可能性,但同时也 增加了额外开销。然而在一个合理的无错误率环境中,多余的头标会 减少输出,故分组定义的本身也保持灵活的方式,因此,在软件中可 定义是否采用f e c 。一般而言,在信道的噪声干扰比较大时蓝牙系统 会使用前向纠错方案以保证通信质量:对于s c o 链路,使用1 3 前向 纠错;对于a c l 链路,使用2 3 前向纠错。在无编号的自动请求重 发方案中,一个时隙传送的数据必须在下一个时隙得到收到的确认。 只有数据在收端通过了报头错误检测和循环冗余校验( c r c ) 后认为 无错时才向发端发回确认消息,否则返回一个错误消息。 目前蓝牙传送语音数据采用连续可变斜率增量调制( c v s d ) 编码。 这种编码可以保证很高的信噪比,它擅长处理丢失的和被损坏的语音 采样即使比特错误率达到4 ,c v s d 编码的语音还是可听的。 ( 四) 安全 蓝牙系统的移动性和开放性使得安全问题极其重要。虽然蓝牙系 统所采用的跳频技术就已经提供了一定的安全保障,但是蓝牙系统仍 然需要链路层和应用层的安全管理。在链路层中,蓝牙系统提供了认 证、加密和密钥管理等功能 8 。每个用户都有一个个人标识码( p i n ) , 它会被译成1 2 8 b i t 的链路密钥( l i l l kk e y ) 来进行单双向认证。一旦 认证完毕,链路就会阻不同长度的密码( e n c 呻t i o nk e y ) 来加密( 此 密码以8 b i t 为单位增减,最大1 2 8 b i t ) 链路层安全机制提供了大量的 认证方案和一个灵活的加密方案( 即允许协商密码长度) 。当来自不同 国家的设备互相通信时,这种枫制是极其重要的,因为某些国家会指 定最大密码长度。蓝牙系统会选取p i c o n e t 网中各个设备的最小的最大 允许密码长度。例如,美国允许1 2 8 b i t 的密码长度,而西班牙仅允许 北京交通大学硕士论文 4 8 b i t ,这样当两国的设备互通时,将选择4 8 b i t 来加密。蓝牙系统也 支持高层协议栈的不同应用体内的特殊的安全机制。比如两台计算机 在进行商业卡信息交流时,一台计算机就只能访问另一台计算机的该 项业务,而无权访问其它业务。蓝牙安全机制依赖p i n 码在设备间 建立信任关系,一旦这种关系建立起来了,这些p n 码就可以存储在 设备中以便将来更便捷的连接。 2 2 2 系统软件组成 ( 一) 蓝牙协议栈概述 蓝牙的协议结构如图1 1 所示。整个协议体系结构分三大部分: 底层硬件、中间协议栈和高层应用。 图1 1 蓝牙协议体系结构 图1 1 显示了数据经过蓝牙无线传输时,所有协议之间的相互关 系,但在某些应用中这种关系是有变化的,如在蓝牙打印机的应用中, 仅使用了连接管理协议( l i n km a i l a g e rp r o t o c o l 简称l m p ) 、逻辑链路 控制应用协议( l o g i c a ll i n kc o r 血o la i l da d a p 诅t i o np m t o c 0 1 简称 l 2 c a p ) 和硬拷贝电缆替代协议( h a r d c o p y c a b l er e p l a c e m e n tp r o t o c o l 简称h c r p ) 。 北京交通大学硕士论文 底层硬件部分包括无线射频r a d i of r e q u e n c y ( r f ) 、基带b 鹊e b a n d 和链路管理l m p 。i 强通过微波实现数据位流的过滤和传输,i 强协议 定义了蓝牙收发器在2 4 g h zi s m 频带正常工作所需满足的要求。b b 负责跳频和蓝牙数据与信息帧的传输。l m p 负责连接的建立和拆除以 及链路安全和控制 9 】。 中间协议层包括l 2 c a p 协议、服务发现协议( s e r v i c ed i s c o v e r y p r o t o c o l 简称s d p ) 、电话控制协议( t e l e p h o n yc o n t r o lp r o t o c o i 简称 t c s ) 和h c r p 协议。l 2 c a p 完成数据的拆装、服务质量和协议复用、 信道的建立与拆除等功能,是其他协议实现的基础。s d p 为上层应用 程序提供一种机制来发现可用的服务及其特性。t c s 提供蓝牙设备间 话音和数据的呼叫控制信令。 在蓝牙协议栈的最上部是各种高层应用框架( p r o f i l e s ) 。其中较典 型的有硬拷贝电缆替代( h a r d c o p yc a b l er e p l a c e m e n t ) 、拨号网络 ( d i a l ,u p n e t w o r k i n g ) 、耳机( h e a d s e t ) 、局域网访问( l a n a c c e s s ) 、 文件传输( f i i et r a n s f e r ) 等,分别对应一种应用模式。各种应用程序 可以通过各自对应的p r o n l e 实现无线通信( 图中每一个竖向的协议栈 即为一种p r 0 6 l e ,即应用模式) 。数据设备可由此接入传统的局域网: 用户通过协议栈中的a u d i o 层在手机和耳塞中实现音频流的无线传 输;多台p c 或笔记本电脑之间不用任何连线,即可快速灵活的传输 文件,共享信息,多台设备也可由此实现操作的同步。 在这些协议中,数据的传输和控制信令的传递分别构成了数据流 和控制流。 数据流:将高层应用的数据发送给硬件。或从硬件将数据上传给 高层应用: 控制流:进行信道控制命令的传递。 ( 二) 蓝牙数据流 蓝牙可以传输同步和异步数据。同步数据一般直接由硬件输出。 异步数据流则要通过软件层。 北京交通大学硕士论文 p p l i c a t i o n 鲁 s d p 。r sr f c 0 m 喜喜 il 2 c p 参 lh c i l 图1 2 蓝牙异步数据流 蓝牙协议栈为高层应用提供透明信道,完成与远端高层应用的透 明数据交换。 蓝牙异步数据的分层走向为: 发送数据:a p p r f c o m m l 2 c a p h c i 硬件; 接收数据:硬件- h c i l 2 c a p r f c o m m a p p 。 ( 三) 蓝牙控制流 p p li c 矗t io n h 一一t0 t c e n f ir m 、 s d p ii t c s ii r f c 伽m q 耳t +c o h f i m l 2 c a p r e u 一1 lt c 。n t m h c i 图l 一3 蓝牙控制流 协议栈的每一层都接收上一层的命令,并向下一层发送命令,接 北京交通大学硕士论文 收下一层提交的事件,向上一层报告事件【1 0 】。 l 2 c a p 层基于逻辑信道( l c ,l o g i cc h 锄e 1 ) 进行的包传输, 每个信道的每个端点都可以用一个信道标识符( c 【d 。c h a n n e l i d e m m e r ) 来表示。每个逻辑信道上接收到的l 2 c a p 包都会传输到相 应的上层协议。 l 2 c a p 接到上层协议s d p 、t c s 或r f c o m m 的建链请求后,通 过h c i 向远端进行建链请求,参数协商等l c 建链操作, 通过h c i 传出的信息也包括命令、事件。命令由主机端发给硬件, 事件由硬件提交给主机。由主机发给设备的命令按执行方式可分为同 步命令和异步命令。同步命令主要用于本地查询和设置参数,完成后 立即返回类似于c o m m a f l dc o m p l e t ee v e n t 的命令完成事件;异步命 令一般涉及到双方的通信,比如建立连接等,h c i 固件接收到命令后, 先返回一个命令状态事件c o m m a n ds t a t u se v e n t ,表示命令参数的j 下 确与否完成后再返回一个命令完成事件。 北京交通大学硕士论文 第三章蓝牙互连测试系统的研究 3 1 什么是互连测试 通信软件的测试主要有两种:一致性测试和互连测试。一致性测 试是验证协议实现与协议描述的符合程度,将一个协议实现与一个绝 对的测试参量进行比较,一次检查协议的一个特性;而互连测试即互 操作性测试,是一致性测试的下一步,用来验证两个或多个协议实现 体之间的互通性。图3 1 是两种测试方法的结构示意图。 t b s t 奎 s u j l e f f ih a r d w a r e 一致性测试结构图互连测试结构图 图3 1 3 2 蓝牙软件的互连测试 蓝牙产品的互连不仅需要硬件的支持而且需要软件的支持,这就 是所谓的蓝牙软件的互连性问题。作为通信产品的蓝牙软件不仅需要 与本厂家的产品能够互连互通更重要的是能否与其他生产厂家的同类 产品互相通信,为此设计一个专门的软件测试系统就显得十分的必要。 蓝牙应用规范( b l u e t o o mp r 0 6 1 es p e c i f i c a t i o n ) 详细定义了各应用 p r o f i l e 进行互连时应遵守的规范,但事实上并不是所有的应用p r o f i i e 软件实现都能够做到与其规范完全一致。所以,为了确保一蓝牙软件 产品与其他同类蓝牙产品互连互通,必须将其与相应的同类蓝牙软件 进行互测。如果不能互通,则说明此蓝牙软件或其他蓝牙软件实现不 满足蓝牙规范的要求,即在分析、设计或实现其软件过程中存在一定 北京交通大学硕士论文 问题,从而导致了无法互连,所以需要进行错误分析并进行必要的修 改。但是即使知道了被测软件产品与规范并不是完全一致,去查找这 个不一致之处也是一件非常费时的事,而且很可能查找花费的时间会 等于或超过重新开发所需的时间。除此之外,如果没有专业的软件测 试理论作为指导,只是凭借自己的产品与别的已经得到认可的产品互 连过就声称产品互连性没问题是不科学的,因为厂家不可能遍历所有 情况,即测试不可能做到完全覆盖。即使能做到所谓的完全覆盖,也 不是现有的蓝牙产品都已经实现了需要被测蓝牙产品的被测蓝牙应 用。 蓝牙互连测试系统正是根据以上问题所设计的。一方面,它以科 学的测试理论作为指导,能够准确的判断蓝牙各应用( p r o f i l e ) 软件 的互连性:另一方面,如果互连测试不通过,它将给出产品的问题所 在,并且能够把互连过程的各个步骤详细列出,例如,何时测试系统 发了什么数据包、什么命令,何时测试系统又收到了被测软件的哪个 数据包、哪个命令等等信息,以帮助用户精确定位错误。 3 3互连测试系统的模型 3 2 蓝牙互连测试系统模型 本文所研究的互连测试系统b l u e s 0 1 e i l p t s 的模型的建模是基于 北京交通大学硕士论文 c o m 组件平台的,如图3 2 所示。 测试脚本就是测试用例的代码实现,测试脚本独立于整个组件对 象,它与组件对象的交互是通过组件对象对外公开的接口来实现的。 因此,测试脚本可以完全接受测试人员的控制,用户既可以修改,也 可以增删测试用例。 组件对象对外公开的接口主要是由交互驱动器对象和界面元素对 象来提供。 界面元素对象顾名思义就是与用户界面有关的c o m 对象。这样 做的目的是,一方面,让用户( 测试人员) 可以组装自己想要的人机 界面,另一方面,整个组件模块不与具体的测试用例界面绑定在一起, 它只是提供显示的功能,具体该显示什么由测试用例来决定,也即是 出用户( 测试人员) 来决定。这样做,既有了灵活性,又保持了封装 性。 交互驱动器对象提供的则是与测试有关的功能性接口,它不仅可 以传递测试结果给测试脚本,而且也能把测试脚本中的相应消息或参 数传入组件对象。测试用例就是通过调用交互驱动器的接口运转起来 的,同时,将输出值与期望值进行比较来得到测试结果。 执行器将与被测对象进行交互,它不对外提供接口,否则将造成 系统的不稳定。执行器只是执行上层发给它的命令,它不知道结果的 正确与否完成后又将结果值全部返回。执行器对于外部来说是不可 见的。 交互驱动器、界面元素和执行器对于测试脚本来说都是透明的, 用户无需考虑它们是用何种语言实现的,只要在测试脚本里直接使用 即可。 测试结果数据库是用来管理在软件测试过程中产生的大量数据, 以及生成的相关的测试文档的。上一段提到的执行器将结果全部返回, 其中返回的所在地就包括测试结果数据库。有了测试结果数据库,使 得管理测试数据有较高的独立性,在对组件模块进行功能扩充时,无 需涉及具体的数据结构。 北京交通大学硕士论文 3 4 蓝牙测试仪的实现 3 4 1 测试脚本的实现 测试脚本就是测试用例的代码实现。由于b l u e s o l e i l p t s 采用了 c o m 中的自动化( a u t o m a t i o n ) 技术这样,测试用例就可以用非常 简单的脚本语言编写。 在b l u e s 0 1 e i l - p t s 中我们选择了v b s c r i p t 作为我们测试用例的编 写语言。因为,第一s c r i p t 是最通用,也是最流行的脚本语言,简 单地说,就是会使用s 翻p t 的人是最多的。第二v b s c r i p t 语法极 其简单,用户学起来将非常轻松,并且用户无需做什么复杂的工作, 只用知道如何在v b s c r i p t 中调用我们提供的接口即可。 同时我们在b l u e s o l e i l p t s 中嵌入了一个v b s c r i p t 解释器即 v b s c r i p te n g i n e 。用户只要把写好的测试脚本放入到指定的位置, b l u e s o l e i l - p t s 就能读取它,对它进行解释执行。所以,互连测试系 统与测试脚本可以完全分离开来,灵活的修改测试用例。 3 4 2 交互驱动器和界面元素的实现 交互驱动器是b l u e s o i e i l p t s 与测试脚本交流的窗口。一方面, b i u e s 0 1 e i l p t s 通过交互驱动器为测试脚本提供功能调用接口,另一 方面,测试脚本也可以把一些必要的信息通过某些属性值又传回给 b l u e s o l e i l p t s 。 本文中所提到的接口都不是自动化( a u t o m a t i o n ) 技术中真正意 义上的接口。它们只是自动化对象的基本特性之一方法( m e t h o d ) , 自动化对象还有另外一个特性属性( p r o p e n y ) 。方法是指自动化对 象所提供的功能服务;而属性是指自动化对象的数据特征。测试脚本 都是通过自动化对象的i d i s p a t c h 接口来访问方法和属性的。当然。这 些东西对于用户来说都是透明的,他只需在测试脚本中直接调用自动 化对象的方法和属性即可,这与真正意义的接口没有什么区别。 界面元素是另外一个自动化对象,它的使用技术与交互驱动器是 一样的。界面元素提供给测试脚本的接口即自动化对象的方法主要是 给高级用户即想要改变b l u e s o l e i l p t s 与人之间界面的用户使用的, 调用它可以生成用户所需要的界面效果。 北京交通大学硕士论文 3 4 3 执行器的实现 执行器是b l u e s o l e i l p t s 的功能实现体。它包括蓝牙协议栈代码 和蓝牙p r o f i l e 的实现代码部分。 蓝牙协议栈代码包括了蓝牙主机协议栈的所有协议的实现:t c s 、 s d p 、r f c o m m 、l 2 c a p 和h c i 。协议栈代码高效而且可靠,并且 代码量很小,可以符合一个嵌入式应用的需要。协议栈开发时,每层 协议的实现先采用了s d l 即规范描述语言进行了描述与验证,这样可 以保证可靠性;之后再用c 代码重写,保证了它的高效性;最后利用 寸u 的c 编译器将各层协议单独组装在一起,形成一个l i b 文件以供 调用。 整个协议栈代码分成四个部分: 第一部分:蓝牙系统模块。 各层协议在启动时要向蓝牙系统模块注册。蓝牙系统模块维护了 蓝牙主机协议的f s m ( 有限状态机) 实例表。一个蓝牙主机协议可以 使用这些信息和其它的蓝牙主机协议进行通信。 第二部分:蓝牙通用函数库模块 这个模块包含了为每个协议模块维护f s m 所需要的通用代码,比 如定时器的管理、进程间通信等等。除此之外它还包括了那些平台 相关的代码。如果有来自不同的蓝牙主机协议的f s m 实例对于公用 资源的请求,这个模块将会负责为这些请求进行调度。 第三部分二蓝牙协议栈中的各个协议模块 所有

温馨提示

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

评论

0/150

提交评论