首页> 中国专利> 多数票决错误校正技术领域

多数票决错误校正技术领域

摘要

一般来说,描述用于执行多数票决错误校正技术的技术。在操作中,包括控制单元的通信装置实施所述多数票决错误校正技术。所述控制单元包含链路管理模块,所述链路管理模块响应于在经由无线通信媒体接收的第一通信中检测到第一无法校正错误而请求所述第一通信的第一重传,响应于在响应于所述第一重传请求接收的第二通信中检测到第二无法校正错误而请求所述第一通信的第二重传,且响应于所述第二重传而接收第三通信。所述控制单元还包含多数票决模块,所述多数票决模块响应于在所述第三通信中检测到第三无法校正错误而对所述第一通信、所述第二通信和所述第三通信的对应位执行按位多数票决以产生经错误校正通信。

著录项

  • 公开/公告号CN102771072A

    专利类型发明专利

  • 公开/公告日2012-11-07

    原文格式PDF

  • 申请/专利权人 高通股份有限公司;

    申请/专利号CN201080064157.0

  • 发明设计人 乔尔·林斯基;刘尚忆;

    申请日2010-12-22

  • 分类号H04L1/00;H04L1/18;

  • 代理机构北京律盟知识产权代理有限责任公司;

  • 代理人宋献涛

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 07:16:49

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-06

    未缴年费专利权终止 IPC(主分类):H04L1/00 授权公告日:20150520 终止日期:20181222 申请日:20101222

    专利权的终止

  • 2015-05-20

    授权

    授权

  • 2012-12-26

    实质审查的生效 IPC(主分类):H04L1/00 申请日:20101222

    实质审查的生效

  • 2012-11-07

    公开

    公开

说明书

技术领域

本发明涉及传达数据,且更明确地说,涉及经由有噪声的媒体传达数据。

背景技术

数据通信已随时间演变以使用许多不同通信媒体。铜导线通信媒体(例如)最初用以在简易老式电话系统(POTS)中将语音数据从一个电话传达到另一个电话。随着需要更多带宽的应用程序出现,开发了额外通信媒体(例如,同轴电缆和光纤)以支持增加的数据通信量的递送。最近,随着便携式装置的开发,已开发涉及远程(例如,5-10英里)和短程(例如,30到100英尺)数据通信的无线通信或用无线电通信以准许这些应用程序的便携性。另外,已用无线数据通信替换限制移动的塞绳和其它固定通信装置以去除这些限制并改进移动性。

无线数据通信通常涉及将数据作为经由空中传播的一个或一个以上频率的信号而传输,经由空中的方式实际上表示无线通信媒体,其中特定频率通常被称作信道。不幸的是,许多电装置未得到恰当地屏蔽,且因此,所述电装置可能将信号“泄漏”到指定无线信道中。这些所泄漏信号构成用于无线数据通信的这些无线通信信道中的噪声。此噪声可影响经由无线通信信道的通信的质量,从而在接收装置恢复来自这些有噪声的无线通信信道的数据时导致错误。由于许多应用程序(例如,与蜂窝式电话一起使用的无线头戴式耳机)大部分需要无错误数据准确地再现电话对话,因此这些错误可实质上影响给定应用程序的所感知质量。

发明内容

一般来说,本发明描述用于经由有噪声的通信媒体(例如,无线通信媒体)传达数据的技术。所述技术涉及响应于在最初所接收数据包中检测到由于经由有噪声的通信媒体的传输产生的无法校正错误,重传最初所接收数据包或其它离散数据单元。如果归因于经由有噪声的通信媒体的通信,数据包的此第一重传也包含无法校正错误,那么所述技术提供最初所接收数据包的第二重传,使得原始包的三个不同版本得以接收。如果由于第二重传产生的数据包的第三版本包含无法校正错误,那么所述技术涉及按位多数票决,通过按位多数票决用相对较高概率确定原始数据包。按位多数票决按顺序比较数据包的三个版本之间的位,且对于每一位位置采用多数位值以作为“正确”值。

本发明的多数票决技术在无完全前向错误校正(FEC)或其它嵌入式错误校正机构的通信系统中促进关于数据包的一个或一个以上部分的错误校正。因此,所述技术提供用于整个包(包含未受任何嵌入式错误校正机构保护的那些部分)的错误校正。作为这些技术的结果,经由有噪声的通信媒体的数据通信可得到改进,这是因为所述技术可实质上降低位错误率。对于涉及语音或其它串流音频数据的数据通信,相比于不使用本发明中所描述的技术的系统,所述技术促进改进的音频质量。

在一方面,一种方法包括:响应于在经由无线通信媒体接收的第一通信中检测到第一无法校正错误,用通信装置请求所述第一通信的第一重传;以及响应于在响应于所述第一重传请求而接收的第二通信中检测到第二无法校正错误,用所述装置请求所述第一通信的第二重传。所述方法还包括:响应于所述第二重传而用所述装置接收第三通信;以及响应于在所述第三通信中检测到第三无法校正错误,用所述装置对所述第一通信、所述第二通信和所述第三通信的对应位执行按位多数票决以产生经错误校正通信。

在另一方面,一种通信装置包括控制单元,所述控制单元包含链路管理模块,所述链路管理模块响应于在经由无线通信媒体接收的第一通信中检测到第一无法校正错误而请求所述第一通信的第一重传,响应于在响应于所述第一重传请求接收的第二通信中检测到第二无法校正错误而请求所述第一通信的第二重传,且响应于所述第二重传而接收第三通信。所述控制单元还包含多数票决模块,所述多数票决模块响应于在第三通信中检测到第三无法校正错误而对第一通信、第二通信和第三通信的对应位执行按位多数票决以产生经错误校正通信。

在另一方面,一种系统包括第一无线个域网(WPAN)装置和第二WPAN装置。所述第一WPAN装置包括控制单元,所述控制单元包含链路管理模块,所述链路管理模块响应于在经由无线通信媒体接收的第一通信中检测到第一无法校正错误而请求所述第一通信的第一重传,响应于在响应于第一重传请求接收的第二通信中检测到第二无法校正错误而请求第一通信的第二重传,且响应于第二重传而接收第三通信。所述第一WPAN装置的所述控制单元还包含多数票决模块,所述多数票决模块响应于在第三通信中检测到第三无法校正错误而对第一通信、第二通信和第三通信的对应位执行按位多数票决以产生经错误校正通信。所述第一WPAN装置经由所述无线通信媒体以无线方式与所述第二WPAN装置通信。

在另一方面,一种计算机可读存储媒体,其包括使处理器进行以下操作的指令:响应于在经由无线通信媒体接收的第一通信中检测到第一无法校正错误,请求所述第一通信的第一重传;响应于在响应于所述第一重传请求而接收的第二通信中检测到第二无法校正错误,请求所述第一通信的第二重传;响应于所述第二重传而接收第三通信;以及响应于在所述第三通信中检测到第三无法校正错误,对所述第一通信、第二通信和第三通信的对应位执行按位多数票决以产生经错误校正通信。

在另一方面,一种通信装置包括:用于响应于在经由无线通信媒体接收的第一通信中检测到第一无法校正错误,请求所述第一通信的第一重传的装置;以及用于响应于在响应于所述第一重传请求而接收的第二通信中检测到第二无法校正错误,请求所述第一通信的第二重传的装置。所述通信装置还包括:用于响应于所述第二重传而接收第三通信的装置;以及响应于在所述第三通信中检测到第三无法校正错误,用于对所述第一通信、第二通信和第三通信的对应位执行按位多数票决以产生经错误校正通信的装置。

在附图和以下描述中阐述所述技术的一个或一个以上方面的细节。从描述和图式,且从权利要求书将明白所述技术的其它特征、目的和优势。

附图说明

图1是说明实施本发明中所描述的多数票决错误校正技术的实例无线通信系统的框图。

图2是更详细地说明图1的无线个域网(WPAN)装置的框图。

图3是说明WPAN装置在执行本发明的多数票决错误校正技术中的实例操作的流程图。

图4是说明由WPAN装置根据本发明中所描述的多数票决错误校正技术接收和处理的实例延伸同步连接导向(eSCO)包的图。

图5A和图5B是说明分别示范在使用本发明的技术时的理论降低位错误率的示范性图表的图。

具体实施方式

本发明针对用于校正在经由有噪声的通信媒体(例如,无线通信媒体)发送的数据通信中检测到的错误的错误校正技术。无线通信媒体表示在不使用导线或其它物理通信媒体的情况下借以发生通信的媒体。经常,无线通信涉及传输或广播一个或一个以上指定频率下或在指定频率范围内的信号,所述信号通常被闲置以用于此无线通信。在其它情况下,无线通信涉及传输或广播在多个频率内的信号,所述频率中的每一者在不同范围中。无线通信的此后者形式被称作“扩展频谱”无线通信,其扩展在不同频率范围的范围或频谱内的信号。

称作BluetoothTM的无线通信规范、标准或协议使用称作“跳频”扩展频谱的特定类型的扩展频谱数据通信来实施无线通信。此跳频扩展频谱将经由无线通信媒体传达的数据划分为离散部分且将这些部分中的每一者作为多达79种不同频率的信号而传输。通常,蓝牙通信支持10米(约30英尺)的最大传输距离。BluetoothTM通信进一步提供同步连接导向链路(在BluetoothTM规范中称作“SCO”),其中第一装置与第二装置连接(或在“BluetoothTM规范”的术语中为“配对”)。连接是同步的,因为两个装置按时间使彼此之间的数据通信同步以准许用于时间敏感或时间有界应用程序(例如,包含因特网语音协议(VoIP)和更多标准的语音应用程序、蜂窝式电话呼叫)的数据传输。

在对BluetoothTM规范的稍后修订中,定义称作延伸同步连接导向链路(在BluetoothTM规范中称作“eSCO”)的另一形式的链路以改进SCO。SCO不允许响应于在这些传输中检测到错误而重传通信且改为仅提供有限形式的错误校正。错误校正失败后,SCO用实际上定义沉默的特别通信替换错误数据通信。eSCO通过实现重传不能通过有限形式的错误校正补救的那些错误数据通信来改进SCO。出于实践目的,eSCO将重传限于错误数据通信的两次相异重传。

根据本发明的技术的一个方面,第一装置(例如,BluetoothTM头戴式耳机)实施BluetoothTM规范或协议的eSCO方面,以请求经由头戴式耳机与第二装置(例如,蜂窝式或移动电话)之间的eSCO链路接收的数据通信的两次重传。因此,头戴式耳机经由eSCO链路接收第一通信且执行错误检测以确定第一通信是否包含错误。如果第一通信包含错误,那么头戴式耳机可首先试图校正错误。然而,假定错误无法得到校正,那么头戴式耳机响应于在经由无线通信媒体(例如,eSCO链路)接收的第一通信中检测到错误而请求第一通信的第一重传。

头戴式耳机接着响应于此第一所请求重传而接收另一或第二通信。头戴式耳机确定响应于第一重传请求接收的第二通信是否包含错误。假定此第二通信含有无法校正的错误,那么头戴式耳机响应于在响应于第一重传请求接收的第二通信中检测到错误而请求第一通信的第二重传。头戴式耳机响应于第二重传而接收第三通信且确定第三通信中是否含有无法校正的错误。

响应于在第三通信中检测到另一个此无法校正错误,不是用指定沉默的特别通信替换输出缓冲器中的第三通信或以其它方式执行包丢失隐藏,而是头戴式耳机对第一通信、第二通信和第三通信的对应位执行按位多数票决以至少产生经部分错误校正通信。头戴式耳机通过比较(例如)第一通信、第二通信和第三通信中的每一者的有效载荷的第一位来执行按位多数票决,出于说明性目的,所述第一位可分别包括1、1和0的位值。由于两个1形成多数,因此第一装置选择“1”,由此实施按位多数票决以校正第三通信中的假定“0”错误。可针对相应通信有效载荷的每一位执行此多数过程。

与经由实施特别沉默通信的标准eSCO以取代犯错第三通信的eSCO链路经历的质量相比,通过执行涉及充分利用eSCO的重传增强以代替用指定沉默的特别通信取代第三通信的此额外错误校正步骤,技术可实质上改进经由eSCO链路的通信的质量。此外,可实施本发明中所描述的错误校正技术以遵守现有BluetoothTM协议规范且因此本发明中所描述的错误校正技术不需要BluetoothTM规范的任何实质修正。因此,可在现有的具有BluetoothTM能力的装置中实施所述技术而不遭遇BluetoothTM一致问题。

尽管在本发明中出于说明的目的关于BluetoothTM协议规范而描述技术,但可关于依赖于用于克服所接收的具有所检测错误的通信的重传的任何形式的通信实施所述技术。在此方面和许多其它方面,技术不应限于下文阐述的实例。

图1是说明实施本发明中所描述的多数票决错误校正技术的实例无线通信系统10的框图。无线通信系统10包含移动装置12和无线个域网装置14(“WPAN装置14”)。移动装置12包括以下各者中的一者或一者以上:蜂窝式电话(包含所谓的“智能”电话)、无线电话、膝上型计算机、个人数字助理(PDA)、所谓的“上网本”、便携式或个人媒体播放器(包含所谓的“MP3”播放器),或能够实施无线通信协议或标准的便携式性质的任何其它装置。尽管关于移动装置12而描述,但可关于非移动或较不便携装置实施所述技术,所述非移动或较不便携装置例如桌上型计算机、工作站、非便携式媒体播放器(包含有线媒体播放器,例如数字视频光盘播放器、BlurayTM光盘播放器和音频/视频接收器)、电视或能够实施无线通信协议或标准的非移动或较不便携装置的任何其它装置。

WPAN装置14可包括能够实施WPAN协议的任何装置,所述WPAN协议例如为BluetoothTM协议、关于红外线通信的红外线数据协会(IrDA)标准和超宽带(UWB)规范。出于说明性目的,假定WPAN装置14实施BluetoothTM规范。实施BluetoothTM协议的一般WPAN装置14包含无线头戴式耳机、无线计算机指示装置(例如,鼠标)、无线键盘和无线立体声耳机。

电气与电子工程师学会(IEEE)802.15(其为专攻WPAN标准的IEEE 802的第十五工作小组)曾定义了蓝牙标准的先前版本,但从此已放弃了进一步蓝牙标准化。蓝牙特别兴趣小组(SIG)已独自接管蓝牙标准化且最近已在2009年4月21日发布了题为“蓝牙规范版本3.0+HS”的蓝牙规范版本3.0,蓝牙规范版本3.0的全部内容特此以引用的方式并入本文中,如同在本文中完全阐述一样。

移动装置12包含控制单元16,控制单元16实施与由WPAN装置14实施的协议相同的WPAN协议(例如,蓝牙规范中的一者)。更明确地说,控制单元16包含WPAN模块18,WPAN模块18实施与由WPAN装置14实施的协议相同的WPAN协议(例如,BluetoothTM规范)。WPAN装置14还包含控制单元20,控制单元20实施与由移动装置12实施的协议相同的WPAN协议(例如,BluetoothTM规范)。明确地说,控制单元20包含WPAN模块22,WPAN模块22实施与由移动装置12实施的协议相同的WPAN协议(例如,BluetoothTM规范)。

移动装置12和WPAN装置14中的每一者实施相同的WPAN协议,以便使用在BluetoothTM规范中阐述的程序彼此“配对”。“配对”涉及在WPAN模块18与22的每一者之间建立无线通信信道或链路24。此无线通信信道或链路24表示无线通信媒体。存在WPAN模块18和22可建立的多种不同类型的链路,包含非同步和同步链路。WPAN模块18和22通常基于特定应用程序的要求而选择链路的类型。举例来说,对于语音应用程序(例如,因特网语音协议(VoIP)应用程序),WPAN模块18和22一般建立同步链路24。出于说明的目的,假定WPAN模块18和22建立同步无线通信链路24。然而,本发明的技术不应限于同步无线通信链路24。

BluetoothTM规范提供不同类型的同步无线通信链路。称作同步连接导向(SCO)链路的第一类型涉及经由包含有限错误校正的SCO链路传输数据单元。在用于SCO链路的错误校正不足以校正错误的情况下,SCO链路提供特别“沉默”数据单元以用于替换犯错数据单元。“沉默”数据单元在应用于自动数据单元时表示在两个WPAN装置之间传达的音频串流中的沉默。最初,将沉默视为相比于犯错数据单元的改进。然而,如上文所注释,修订BluetoothTM规范以包含不同类型的同步无线通信链路,所述同步无线通信链路在BluetoothTM规范中称作延伸同步连接导向(eSCO)链路。

这些eSCO链路提供考虑犯错数据通信且仅指示沉默为最后手段的重传机构。为了说明,在证明有限错误校正不足以校正错误的数据单元中检测到错误后,遵守修订的蓝牙规范的那些WPAN装置便请求数据单元的重传。如果接收WPAN装置在重传的数据单元中检测到无法校正的错误,那么此装置接着将再次请求数据单元的重传。如果接收WPAN装置再次在重传的数据单元中检测到无法校正的错误,那么WPAN装置接着将仅用特别“沉默”数据单元替换所述数据单元。数据单元通常包括含有音频数据的包,但可包括任何其它类型的应用层数据。

出现从SCO到eSCO链路的转变,这主要归因于在无线通信信道中出现干扰。正使用越来越多的数目的有线装置和无线装置两者,其中未经屏蔽有线装置可“泄漏”或以其它方式产生在用于SCO链路的相同频率中引起干扰的电信号,且其它无线装置可超出用于SCO链路的频率。因此,在静态或其它干扰可引入与被保留以经由建立的同步无线通信链路24传达的频带相同的频带的随机信号的意义上,这些无线通信信道或链路为“有噪声的”。通过在eSCO链路中提供原始数据单元的两次重传,极大地增加了接收无错误包的概率。

值得注意地是,BluetoothTM规范的当前版本(版本3.0)提供仅用于数据单元的报头而不用于存储有音频或其它数据的实际有效载荷的前向错误校正(FEC)。对于有效载荷,BluetoothTM规范的当前版本通过使用循环冗余校验(CRC)而仅提供错误检测。在此意义上,BluetoothTM规范提供“有限”错误校正,因为仅报头中的错误可得到校正而有效载荷中的错误仅可被检测到。因此,根据BluetoothTM规范,重传是可借以“校正”有效载荷中的错误的唯一手段,其中此形式的校正远不同于通过FEC实现的相同数据单元的动态校正。也就是说,FEC实际上校正相同数据单元中的错误,而重传通过用可能包含或可能不包含错误的数据单元的另一版本替换当前数据单元来校正当前数据单元的错误。

在给定这些eSCO链路的同步性质的情况下,BluetoothTM规范提供有限时间窗,其中每一数据单元可在WPAN模块18与22之间发送。通常,此有限时间窗仅准许数据单元的两次重传,从而意味WPAN模块22在必须刷新来自队列的有效载荷之前仅可请求两次重传,此情形可与用特别“沉默”数据单元替换所述数据单元相同。此外,一旦此时间期满(或换句话说,计时器的“超时”发生),WPAN模块22甚至可能不用对所接收数据单元的确认来作出响应,这是因为链路24的同步性质将需要WPAN模块18和22同时超时且保持同步。

根据本发明中所描述的技术,如上文所描述的可表示BluetoothTM头戴式耳机的WPAN装置14实施BluetoothTM规范或协议的eSCO方面,以请求经由WPAN装置14与移动装置12之间的eSCO链路接收的数据单元或通信的两次重传,移动装置12可表示蜂窝式或移动电话。然而,不是仅用特别沉默数据单元替换具有无法校正错误的最后数据通信或以其它方式执行包丢失隐藏,而是WPAN装置14在适当时对相同数据通信的三个单独版本的位中的每一者执行按位多数票决。经验研究已示范:执行按位多数票决可显著改进在向收听者播放时由WPAN装置14接收的媒体内容26′的音频质量。

为了说明这些技术,考虑移动装置12最初与WPAN装置14配对以建立同步无线通信链路24,为了易于参考,同步无线通信链路24也称作eSCO链路24。更明确地说,移动装置12的WPAN模块18与WPAN装置14的WPAN模块22配对。移动装置12可通过蜂窝式网络或通过数据网络起始语音电话呼叫,其中在数据网络的情况下,呼叫表示VoIP呼叫。或者,移动装置12可开始音频或视频数据播放或从无线网络串流音频或视频数据。在任何情况下,控制单元16可存取并解码媒体内容26,其中控制单元16将媒体内容22存储到存储器或其它存储媒体(图1中未图示)。WPAN模块18接着开始经由eSCO链路24将此媒体内容26传输到WPAN装置14的WPAN模块22,WPAN装置14可包含图1中未展示的用于播放所接收媒体内容的其它模块。

根据蓝牙规范,WPAN模块18将媒体内容22划分为离散数据单元,离散数据单元在BluetoothTM规范中称作eSCO包。尽管关于eSCO包而描述,但技术可应用于任何数据通信或数据单元且不应限于eSCO包。因此,WPAN装置14,且更明确地说,WPAN装置14的WPAN模块22经由eSCO链路24接收第一eSCO包且执行错误校正/检测以确定第一eSCO包是否包含错误。如果第一eSCO包包含错误,那么WPAN模块22可首先试图校正错误。然而,假定错误无法得到校正,那么WPAN模块22响应于在经由无线通信媒体(例如,eSCO链路24)接收的第一eSCO包中检测到错误而根据BluetoothTM规范请求第一eSCO包的第一重传。WPAN模块18用另一或第二eSCO包来响应此第一重传请求,从WPAN模块18的观点来说,另一或第二eSCO包是第一eSCO包的副本或复制品。

WPAN模块22接着响应于来自WPAN模块18的此第一请求的重传而接收另一或第二eSCO包。WPAN模块22确定响应于第一重传请求而接收的第二eSCO包是否包含错误。假定此第二通信含有无法校正的错误,那么WPAN模块22响应于在响应于第一重传请求接收的第二通信中检测到无法校正错误而再次请求第一eSCO包的第二重传。再次,移动装置12的WPAN模块18用第一eSCO包的副本或复制品(从WPAN模块18的观点来说)响应第二重传请求。WPAN模块22响应于第二重传而从移动装置12的WPAN模块18接收第三eSCO包且确定第三eSCO包是否含有无法校正错误。

响应于在第三eSCO包中检测到又一无法校正错误,不是用指定沉默的特别通信替换输出缓冲器中的第三eSCO包,而是WPAN装置14的WPAN模块22在适当时调用多数票决(MV)模块28(“MV模块28”),其中MV模块28对第一eSCO包、第二eSCO包和第三eSCO包的对应位执行按位多数票决以至少产生经部分错误校正的eSCO包。如果报头或其它信息被破坏而无法校正,那么可不调用MV模块28,这是因为具有这些无法校正错误的包可能包含过多错误以用于经由本发明中所描述的技术校正。MV模块28表示实施本发明中所描述的按位多数票决技术的各方面的硬件或硬件和软件(例如,存储到计算机可读存储媒体的处理器执行软件)模块的组合。

MV模块28通过比较(例如)第一eSCO包、第二eSCO包和第三eSCO包中的每一者的有效载荷的第一位来执行按位多数票决,出于说明性目的,所述第一位可分别包括1、1和0的位值。由于两个1形成多数,因此MV模块28选择“1”,由此实施按位多数票决以校正第三eSCO包中的假定“0”错误。MV模块28借助于上文所描述的多数票决技术继续以逐位为基础以上述方式评估和校正那些位。MV模块28接着将此经部分错误校正的eSCO包写入到媒体内容26′,媒体内容26′可存储到缓冲器、存储器或其它计算机可读存储媒体。媒体内容26′用撇号(′)表示以暗示其为由移动装置12的控制单元16存储的媒体内容26的复制品或近复制品。

与经由实施标准eSCO沉默以取代犯错第三eSCO包的eSCO链路经历的质量相比,通过执行涉及充分利用eSCO的重传增强以代替用指定沉默的特别通信取代第三eSCO包的此额外错误校正步骤,技术可实质上改进经由eSCO链路的通信的质量。此外,本发明中所描述的错误校正技术遵守现有BluetoothTM协议规范且因此不需要BluetoothTM规范的任何实质修正。因此,可在现有的具有BluetoothTM能力的装置中实施本发明的技术而不遭遇BluetoothTM一致问题。

图2是更详细地说明图1的WPAN装置14的框图。如图2中所展示,WPAN装置14包含控制单元20,控制单元20包括WPAN模块22。如上文所描述,WPAN模块22包含MV模块28。然而,WPAN模块22还包含链路管理模块30、错误管理模块32、解码单元34、包丢失隐藏模块35和缓冲器36A-36C。链路管理模块30表示管理链路(例如,图1中展示的eSCO链路24)的硬件或硬件和软件(例如,存储到计算机可读存储媒体的处理器执行软件)的组合。

链路管理模块30包含配对模块38和重传模块40(“重传模块40”)。配对模块38表示将WPAN模块22与WPAN模块18“配对”以便配置、建立和维持非同步或同步的链路(例如,eSCO链路24)的硬件或硬件和软件(例如,存储到计算机可读存储媒体的处理器执行软件)的组合。重传模块40表示发出用于重传数据单元或通信(例如,eSCO包)的请求的硬件或硬件和软件(例如,存储到计算机可读存储媒体的处理器执行软件)的组合。

错误管理模块32表示关于所接收数据单元(例如,eSCO包)执行错误校正和检测的硬件或硬件和软件(例如,存储到计算机可读存储媒体的处理器执行软件)的组合。解码单元34表示由解码存储到eSCO包的有效载荷的有效载荷数据以产生媒体内容26′的硬件或硬件和软件(例如,存储到计算机可读存储媒体的处理器执行软件)的组合形成的模块。包丢失隐藏模块35表示执行包丢失隐藏以隐藏丢失或破坏包的硬件模块或硬件和软件模块的组合。尽管图2中未展示,但控制单元20可包含其它模块,例如用于播放、再现或以其它方式播放媒体内容26′以供用户消耗的音频播放模块。这些播放模块可包括音频驱动器、扬声器和其它音频播放组件,以及显示器和其它视频播放组件。

缓冲器36A-36C(“缓冲器36”)表示用于存储数据(例如,eSCO包)的硬件模块。尽管展示为三个单独缓冲器36A-36C,但单一存储器模块或磁盘驱动器可提供三个单独的逻辑而非物理缓冲器。在这方面,缓冲器36表示存储器或其它计算机可读存储媒体的任何真实或逻辑分割。缓冲器36通常包括小型专用存储器,例如快闪存储器、随机存取存储器(RAM)、静态RAM(SRAM)、动态RAM(DRAM)或任何其它形式的静态或动态存储器。

最初,WPAN装置14的用户或其它操作者与用户界面(图2中未图示)交互以便使链路管理模块30的配对模块38开始广播或以其它方式传输关于不同频率的询问消息。移动装置12的WPAN模块18可接收这些询问消息,且经由移动装置12的用户界面(图1或2中也未图示)向用户或操作者呈现通过询问消息识别的装置。用户可从经由询问消息获悉的装置列表中选择用户想要与移动装置12配对的装置。假定用户选择WPAN装置14,WPAN模块18与WPAN模块22配对,其中配对模块38协商配对过程以建立链路(例如,eSCO链路24)。

一旦配对,移动装置12的WPAN模块18便通过将媒体内容26划分为离散有效载荷并用报头囊封这些有效载荷以形成一个或一个以上eSCO包,经由建立的eSCO链路24传输媒体内容26。WPAN模块18接着经由eSCO链路24将eSCO包传输到WPAN装置14的WPAN模块22。包含于WPAN装置14内的WPAN模块22的链路管理模块30接收由WPAN模块18发送的多个eSCO包中的第一eSCO包42。链路管理模块30将eSCO包42存储到缓冲器36A且用信号通知错误管理模块32。错误管理模块32分析来自存储到缓冲器36A的eSCO包42的报头且确定报头是否含有任何位错误。如果报头仅包含少数位错误,那么错误管理模块32执行FEC以校正这些错误。然而,如果所分析报头含有超过FEC阈值的许多错误,那么错误管理模块32可能不能够使用FEC校正这些错误且改为用信号向链路管理模块30通知链路管理模块30可请求包42的重传。链路管理模块30调用重传模块40以发出用于eSCO包42的重传的请求。

然而,假定错误管理模块32在报头中未检测到任何错误,那么错误管理模块32接下来确定eSCO包42的有效载荷是否含有任何错误。一般来说,eSCO包(例如,eSCO包42)提供CRC校验和,错误管理模块32利用CRC校验和以确定eSCO包是否含有错误。如果包42不包含任何错误,那么错误管理模块32将包42写入到解码单元34的缓冲器44,于是解码单元34解码包42且将此包作为媒体内容26′的一部分而存储。缓冲器44可实质上类似于缓冲器36。在一些情况下,缓冲器44可与缓冲器36A相同,这是因为此缓冲器36A为解码单元34进行存取以解码包的缓冲器。在任何情况下,如果错误管理模块32使用CRC确定包42含有错误,那么错误管理模块32用信号通知链路管理模块30,链路管理模块30调用重传模块40以请求eSCO包42的重传。

假定出于说明性目的,eSCO包42含有有效载荷位错误且因此重传模块40请求eSCO包42的重传,那么移动装置12的WPAN模块18重传eSCO包42,其中将eSCO包42的此经重传复制品或副本表示为eSCO包42′。链路管理模块30接收eSCO包42′且将此eSCO包42′存储到缓冲器36B。错误管理模块32接着执行上文所描述的过程以确定包42′是否包含任何无法校正错误,考虑到有效载荷CRC不准许校正,无法校正错误可包括报头中的超过FEC阈值的许多位错误和/或有效载荷中的任何位错误。如果包42′中不存在无法校正错误,那么错误管理模块32将包42′写入到解码单元34的缓冲器44,于是解码单元34解码包42′且存储此包作为媒体内容26′的一部分。

然而,再次假定eSCO包42′含有有效载荷位错误,那么错误管理模块32与链路管理模块30交互以用信号通知或标记无法校正错误。如上文所描述,链路管理模块30调用重传模块40,重传模块40请求包42的重传。响应于此第二重传请求,移动装置12的WPAN模块18重传eSCO包42,其中将eSCO包42的此经重传复制品或副本表示为eSCO包42″。链路管理模块30接收eSCO包42″且将此eSCO包42″存储到缓冲器36B。错误管理模块32接着执行上文所描述的过程以确定包42″是否包含任何无法校正错误。如果发现包42″中不存在无法校正错误,那么错误管理模块32将包42″写入到解码单元34的缓冲器44,于是解码单元34解码包42″且存储此包作为媒体内容26′的一部分。

出于说明的目的,再次假定发现eSCO包42″具有至少一个无法校正有效载荷位错误,那么错误管理模块32接着确定包42、42′和42″中的每一者是否有效。如果包42、42′和42″仅含有无法校正有效载荷位错误,那么所述包有效。对于其它无法校正错误,例如无法使用FEC或其它错误校正技术校正的报头中的位错误,归因于高错误水平(如通过报头位错误的无法校正性所注释),错误管理模块32可确定应用多数票决技术是不适当的。也就是说,高错误水平指包的报头中的无法校正错误。不是调用MV模块28以应用本发明中所描述的多数票决技术,错误管理模块32可用信号通知包丢失且与包丢失隐藏模块35交互以隐藏所丢失包。包丢失隐藏模块35可(例如)产生特别沉默包以隐藏所丢失包。或者,包丢失隐藏模块35可产生先前包的复制品以隐藏所丢失包。

然而,如果包42、42′和42″中的每一者有效(例如,不含有无法校正报头位错误),那么错误管理模块32可与MV模块28交互以用信号通知包42、42′和42″的所有三个有效载荷的无法校正状态。MV模块28接着对包42、42′和42″的每一相继位执行按位多数票决以产生至少部分无错误包43。以下表1提供由MV模块28使用以产生包43的按位多数票决技术的应用的实例:

表1:实例按位多数票决

  位0  位1  位2  位3  位4  位5  位6***  位N  包42  0  1  1  0  1  0  0 ***  1  包42′  0  1  0  0  1  1  0 ***  0  包42″  0  1  0  0  1  0  0 ***  0  多数  0  1  0  0  1  0  0 ***  1  包43  0  1  0  0  1  0  0 ***  1

在上述表1中,包42、42′、42″和43中的每一者包含位0-N。包42包含值为0110100...1的位0到N。包42′包含值为0100110...0的位0到N。包42″包含值为0100100...0的位0到N。MV模块28通过采用包42、42′和42″中的每一者的每一位(例如,位0)的值并计数位值为0的数目和位值为1的数目来执行按位多数票决。举例来说,在位2的例子中,多数位值为0,因为仅存在一个等于一的位2值,而存在两个或多数等于零的位2值。因此,MV模块28选择零的多数位2值作为包43的“正确”位2值。此值仅在此值表示正确多数的意义上为“正确的”。尽管统计上不常见,但有可能此值是不正确的位2值,因为包42′和42″可正好在相同位置处含有位错误。由于此原因,包43称作至少部分无错误包。

值得注意地是,包42、42′和42″为单独的、个别的且相异的包且可能不被解释为相同包,因为包42、42′和42″中的每一者具有其自己的报头和有效载荷。也就是说,包42、42′和42″中的每一者不包含单一报头和三个单独的或复制的有效载荷,如对于一些常规错误校正包结构为普遍的。相反,包42、42′和42″中的每一者仅具有有限错误校正,因为仅报头包含错误校正而这些包42、42′和42″中的每一者的有效载荷仅具有错误检测。在有效载荷重复三次的包结构中,这些常规包的三倍有效载荷以每一包为基础并入多数票决错误校正的形式。使用通过BluetoothTM提供的重传机构而不是在每一包中提供有效载荷的三个复制品增加通过量,因为eSCO包42、42′和42″的有效载荷可通过不必复制有效载荷两次来存储显著更多数据。

其它差异存在于本发明的技术和这些常规包之间。举例来说,经由eSCO链路24(其为基带层链路)发送包42、42′和42″中的每一者。术语“基带层”指BluetoothTM堆叠中的物理层,其负责管理除了像错误校正、数据白化、路程段选择和BluetoothTM安全性的其它服务之外的物理信道和链路。基带层直接驻留于BluetoothTM堆叠中的BluetoothTM无线电上方且基本上充当链路控制器,链路控制器与链路管理器模块(图2中未图示)合作以执行链路层级例程,像链路连接和功率控制。出于易于说明的目的,在图2中未展示基带层。替代地,假定链路管理模块30并有基带(或物理)层和链路管理器模块的功能性。常规三倍有效载荷包并不经由基带层而发送,而是改为经由其它层(例如,输送层、网络层或除了基带层之外的任何其它层)而发送。

另外,链路管理模块30维持计时器46,计时器46表示可发生重传的包窗口。通常,此窗口准许两次重传。如果在两次重传之后未接收到无无法校正错误的包,那么链路管理模块30可“刷新”缓冲器36(其通常涉及用已知的或设定值(例如,一连串零)覆写缓冲器36)且接收下一eSCO包。由于eSCO链路24是同步的,因此链路管理模块30的计时器46在与发送移动装置12的计时器大致相同时间超时,使得链路管理模块30不需要传输确认第三eSCO包42″的接收的确认。此非确认实质上不同于常规三倍有效载荷包递送方案的所需确认。

在任何情况下,在使用本发明中所描述的多数票决错误校正技术产生包43后,MV模块28便将包43写入到解码单元34的缓冲器44,解码单元34解码包43且将此包作为媒体内容26′的一部分而存储。上文所描述的播放组件可读取串流媒体内容26′且再现此内容26′以供用户消耗。如上文所注释,技术可实质上改进串流音频播放的质量。

图3是说明WPAN装置14在执行本发明的多数票决错误校正技术中的实例操作的流程图。最初,链路管理模块30在接收到eSCO包(例如,eSCO包42)之前用空值或零值预加载缓冲器36A(50)。此空值写入操作可称作“刷新”缓冲器36A,缓冲器36A在图3中称作“缓冲器0”。链路管理模块30接着接收eSCO包42(52)。错误管理模块32接着验证存取码(AC)和BluetoothTM报头(H),且确定AC或报头是否具有无法校正错误(例如,无法使用例如FEC的错误校正技术校正的错误)(54)。如上文所注释,eSCO包包括三个部分:AC、报头和有效载荷且错误管理模块32最初验证AC和H以确保不存在无法校正错误。上文所使用的术语“报头”表示在数据单元中的有效载荷之前的任何信息。术语“蓝牙报头”或H表示在AC之后且在有效载荷之前的一般报头的特定部分。

在任何情况下,错误管理模块通过验证AC和BluetoothTM报头(H)两者来验证报头。AC通常用于同步化、DC偏移补偿和识别。考虑到eSCO链路24的同步性,非同步AC可包括无法校正错误。或者,AC和BluetoothTM报头可受FEC保护且错误管理模块34可试图使用FEC校正AC和BluetoothTM报头中的任何位错误。在其它情况下,仅BluetoothTM报头包含FEC且因此AC中的任何错误可包括无法校正错误。在于AC和/或H中检测到无法校正错误的情况下(“是”56),错误管理模块32与链路管理模块30介接以用信号通知无法校正错误。响应于此无法校正错误,链路管理模块30调用重传模块40以请求eSCO包42的重传(58)。

如果在AC和H中皆未检测到无法校正错误,那么错误管理模块32与链路管理模块30介接以向链路管理模块30通知包报头不含有错误,于是链路管理模块30将包作为包42写入到缓冲器0(例如,缓冲器36A)(57)。同时,错误管理模块32进行到验证包42的有效载荷(60)。eSCO包42的有效载荷包含CRC校验和且错误管理模块32可验证此CRC以确定有效载荷是否具有任何无法校正错误。如果错误管理模块32确定所接收eSCO包42不包含无法校正错误(“否”61),那么错误管理模块32将eSCO包42写入到可称作输出缓冲器的缓冲器44,于是解码单元34解码eSCO包42且将所得数据作为媒体内容26′的一部分而写入,如上文所描述(62)。

然而,如果错误管理模块32在包42的有效载荷中发现或确定一个或一个以上无法校正错误(“是”61),那么错误管理模块32与链路管理模块30介接以用信号通知无法校正错误。响应于此无法校正错误,链路管理模块32调用重传模块40以请求eSCO包42的重传(58)。在调用重传模块40之前,链路管理模块30可首先确定计时器46是否“超时”或以其它方式期满。如果未超时,那么链路管理模块30调用重传模块40以请求eSCO包42的重传。假定计时器46未超时,那么链路管理模块30响应于重传请求而接收eSCO包42′(64)。再次,错误管理模块32验证eSCO包42′的AC和H以确定eSCO包42′在包42′的报头中是否含有任何无法校正错误(66)。

如之前,如果eSCO包42′不含有无法校正错误(“否”68),那么错误管理模块32向链路管理模块30指示报头中无错误,链路管理模块30进行到将包42′写入到缓冲器36B,缓冲器36B在图3中称作“缓冲器1”(69)。如之前,错误管理模块32进行到通过验证包42′的有效载荷的CRC来确定有效载荷是否含有任何无法校正错误(70)。如果错误管理模块32使用CRC成功地验证包42′的有效载荷不含有任何错误(“否”71),那么错误管理模块32将包42′写入到缓冲器44。解码单元34接着解码存储到缓冲器44的eSCO包42′且以上文所描述的方式将所得数据作为媒体内容26′的一部分而写入(62)。

然而,如果eSCO包42′的有效载荷含有无法校正错误(“是”71),那么错误管理模块32与链路管理模块30交互以用信号通知这些错误。链路管理模块30再次验证计时器46未超时。考虑到计时器46定义的时间窗一般准许每包两次重传请求,假定计时器46尚未超时且因此链路管理模块30调用重传模块40以再次请求eSCO包42的重传(72)。响应于此重传请求,链路管理模块30接收eSCO包42″且将包42″转发到错误管理模块32(73)。

错误管理模块32首先验证eSCO包42″的报头。更明确地说,错误管理模块32验证AC和BluetoothTM报头(H)以确定AC和H是否包含任何无法校正错误(74)。如果AC和H包含无法校正错误(“是”75),那么错误管理模块32用信号向链路管理模块30通知丢失了eSCO包42且指示包丢失隐藏模块35执行包丢失隐藏,如上文所描述(76、78)。包丢失隐藏模块35产生所隐藏包数据(例如,特别沉默数据),且将此数据作为媒体内容26′而写入。

然而,如果AC和H(或,更一般来说,报头)不包含任何无法校正错误(“否”75),那么错误管理模块32用信号向链路管理模块30通知无报头错误。响应于此信号,链路管理模块30将包42″写入到缓冲器36C,缓冲器36C在图3中表示为“缓冲器2”(80)。错误管理模块32接着验证有效载荷CRC校验和以确定CRC是否指示无法校正错误(82、84)。如果CRC校验和指示无法校正错误(“是”84),那么错误管理模块32与链路管理模块30介接以用信号通知无法校正错误的存在。

链路管理模块30接着确定计时器46是否超时或计时器46上是否剩余足够时间以实现另一重传。在给定计时器46通常仅准许两次重传的情况下,链路管理模块30确定计时器46不准许另一重传,且改为与错误管理模块32介接以指示另一重传是不可能的。响应于来自链路管理模块30的此指示,错误管理模块32接着确定包42、42′和42″是否有效或可用于多数票决中,如上文所描述(86)。如果关于包42、42′和42″中的一者发生无法校正位报头错误(“否”86),那么错误管理模块32确定包42、42′和42″无效或另外可用于多数票决且调用包丢失隐藏单元35来执行包丢失隐藏,如上文所描述(78)。

如果确定所有包42、42′和42″均有效(“是”86),那么错误管理模块32与MV模块28介接以调用本发明中所描述的多数票决错误校正技术。MV模块28接着执行上文通过实例关于表1所描述的多数票决错误校正技术以产生包43(88)。MV模块28将此包写入到缓冲器44(其可与缓冲器36A相同),于是解码单元34解码包43且将所得数据作为媒体内容26′的一部分而存储(60)。如果成功地验证CRC校验和且不存在无法校正错误(“否”84),那么错误管理模块32将包42″写入到缓冲器44,其中解码单元34解码包42″且将所得数据作为媒体内容26′的一部分而存储(62)。

图4是说明由WPAN装置14根据本发明中所描述的多数票决错误校正技术接收和处理的实例eSCO包92的图。包92包含报头字段94和有效载荷字段96。报头字段94包含存取码字段98(“AC 98”)和蓝牙报头字段100(“H 100”)。AC字段98存储定义存取码前同步码、同步字和任选报尾的信息或数据。在无任选报尾的情况下,AC字段98包括第一68位。在有任选报尾的情况下,AC字段98包括第一72位(例如,0-71位),其为图4中所展示的配置。H字段100存储定义许多蓝牙报头参数的数据,包含逻辑输送地址、包类型、流量控制位、确认指示、序列和8位报头错误校验102(“HEC 102”)。图2中所展示的WPAN装置14的错误管理模块32分析H字段100以确定错误管理模块32利用以执行FEC的HEC 102。

有效载荷字段96存储可变量的数据(例如,从0到2745位的任一处),其中多数涉及利用PAN的应用程序,例如媒体内容26。有效载荷字段96也存储16位循环冗余校验104(“CRC 104”)。CRC 104不促进或以其它方式实现错误校正,但WPAN装置14的错误管理模块32可分析有效载荷字段96以确定104且接着基于CRC 104确定有效载荷96是否含有无法校正错误。以此方式,eSCO包92仅提供有限形式的错误校正,这是因为仅H字段100提供可借以发生错误校正的HEC 102,而有效载荷96提供借以仅可发生错误检测的CRC 104。因此,eSCO包92包括仅具有有限形式的错误校正的包。

图5A和图5B是说明分别示范在与常规技术相比使用本发明的技术时的理论降低位错误率的示范性图表106A和106B的图。明确地说,图5A的图表106A展示当装置(例如,WPAN装置14)结合本发明中所描述的多数票决(MV)错误校正技术实施eSCO时的包丢失的概率的理论降低。明确地说,相对于实施eSCO或SCO的装置来说,WPAN装置14经历包丢失的概率的理论降低。

关于图5B,图表106B展示当装置(例如,WPAN装置14)结合本发明中所描述的多数票决(MV)错误校正技术实施eSCO时的破坏包的概率的理论降低。明确地说,如通过曲线中向右边的明显位移可见,当与实施eSCO或SCO的装置相比时,WPAN装置14经历破坏包的概率的理论降低。图表106A和106B皆说明对有噪声的媒体中的数据的传输(有线或无线)的实质(但理论性)改进,所述改进可实质上改进音频或其它媒体播放清晰度。

本文中所描述的技术可以硬件、软件、固件或其任一组合来实施。描述为模块、单元或组件的任何特征可共同地实施于集成逻辑装置中或分开实施为离散的但可共同操作的逻辑装置。在一些情况下,各种特征可实施为集成电路装置,例如,集成电路芯片或芯片组。如果是用软件实施,那么可至少部分地通过包括在经执行时使处理器执行上文所描述的方法中的一者或一者以上的指令的计算机可读媒体来实现所述技术。

计算机可读媒体可形成可包含封装材料的计算机程序产品的部分。计算机可读媒体可包括计算机数据存储媒体,例如,随机存取存储器(RAM)、同步动态随机存取存储器(SDRAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。另外或或者,可至少部分通过载运或传达呈指令或数据结构的形式的代码且可通过计算机存取、读取和/或执行的计算机可读通信媒体来实现所述技术。

可通过一个或一个以上处理器执行代码或指令,例如,一个或一个以上DSP、通用微处理器、ASIC、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可提供于专用软件模块或硬件模块内。本发明还预期包含用以实施本发明中所描述的技术中的一者或一者以上的电路的多种集成电路装置中的任一者。此电路可提供于单个集成电路芯片中或提供于所谓的芯片组中的多个可共同操作的集成电路芯片中。这些集成电路装置可用于多种应用中,所述应用中的一些应用可包含在无线通信装置(例如,移动电话手机)中的使用。

已描述本发明的各种实例。这些实例和其它实例在以下权利要求书的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号