历史上的今天
返回首页

历史上的今天

今天是:2025年08月20日(星期三)

正在发生

2020年08月20日 | 专利大揭秘—汇顶科技蓝牙数据同步传输技术

2020-08-20 来源:集微网

汇顶科技的蓝牙数据传输方案,通过分批次传输同步链路数据和异步链路数据,实现了在同一个链路上既传输等同步链路数据包,又传输异步链路数据包的功能。

 

北京时间2020年1月,蓝牙技术联盟正式推出了新一代蓝牙音频技术标准LE Audio,在会场上,汇顶科技同一加科技演示了应用于TWS无线耳机的创新方案——Bluetooth LE音频解决方案。

 

在蓝牙音频技术领域,为了确保数据流准确及时送达,通常在通信系统中建立异步链路以传输数据流,不仅要保证数据的时效性,同时也需要保证数据的准确性,这样才能达到TWS蓝牙耳机的基本要求,这也是新一代蓝牙音频技术标准LE Audio中所完成的。

 

然而,通信系统中异步链路无法满足数据送达的时效性要求,现有方案为了达到这个目的,需要在通信系统中另外建立同步链路,以确保数据流传输的时效性。但是这样的方案,虽然能够实现即传输时效性要求高的数据,也能够传输要求准确送达的数据,但是却增加了通信系统的硬件开销及通信带宽。

 

为了缓和这些问题,汇顶科技在19年11月14日申请了一项名为“数据传输方法、电子设备、系统及存储介质”的发明专利(申请号:201980005105.7),申请人为深圳市汇顶科技股份有限公司。

 

根据该专利目前公开的资料,让我们一起来看看汇顶科技的这项蓝牙数据同步传输方案吧。

 

             image.png?imageView2/2/w/550

 

如上图,为该专利中发明的数据传输系统的结构示意图,其中包括电子设备101和电子设备102,这两个设备可以通过蓝牙进行数据传输,例如在无线音频系统中,101可以为智能设备,而102可以为无线蓝牙耳机。

 

当这个数据传输系统开始传输数据时,第一电子设备先接收用户输入的同步传输指令,用于第一设备向第二设备完成同步传输配置。此后,第一电子设备需要获取同步链路数据(A-ACL),并在每个事件开始时判断当前时刻是否为刷新时刻,如果是,则重新获取A-ACL数据,并发送更新后的A-ACL数据。

 

在这个系统中,仅在第二电子设备和第一电子设备之间建立一条链路,即可实现ACL数据和A-ACL数据的传输,这样无需建立两个链路以传输上述数据,减少了通信系统的硬件消耗,并且减少了传输带宽。

 

image.png?imageView2/2/w/550

 

如上图,为数据传输方法的流程示意图,首先,第一电子设备获取待传输的等同步链路数据包,由于等同步链路数据包对传输的实时性要求高,因此在刷新时刻到来时,允许丢弃正在传输的数据包,获取新等同步链路数据包,以保证数据准时送达。

 

其次,第一电子设备通过传输链路来向第二电子设备发送等同步链路数据包,如果当前是刷新时刻,则待刷新等同步链路数据包后,再发送刷新后的等同步链路数据包;如果刷新时刻并未到来,则直接发送等同步链路数据包。

 

在将等同步链路数据包完整发送给第二电子设备时,第一电子设备就可以获取异步链路数据包,同时第二电子设备提取数据包的数据类型,根据数据类型确定用于存储数据包的缓存区。

 

image.png?imageView2/2/w/550

 

如上图,为该专利中展示的第一电子设备缓存区的结构示意图,现有的异步链路通信方案中,缓存区分为ACL缓存区及LLCP缓存区。ACL缓存区用于存储异步链路数据包,因为异步链路数据包不需要在刷新时刻进行刷新,LLP缓存区用于存储LLCP缓存数据。

 

在现有基础之上,在缓存区中另外设置A-ACL缓存区,用于存储等同步链路数据,等同步链路数据允许刷新,在应用层接收到数据包时,根据原始异步链路数据包以及链路层控制数据包的包头即可确定数据包类型。

 

最后,再对原始异步链路数据包进一步分类处理,将原始异步链路数据包分为等同步链路数据包和异步链路数据包,并将数据包分别存储至相应缓存区。

 

以上就是汇顶科技发明的蓝牙数据传输方法,该方案先传输对时效性有严格要求的等同步链路数据包,待等同步链路数据包传输完毕,再传输异步链路数据包。从而可以实现在同一个链路上既传输等同步链路数据包、又传输异步链路数据包的任务,因此无需建立两个链路以传输数据,在减少通信系统硬件消耗的同时,也减少了传输带宽。

推荐阅读

史海拾趣

问答坊 | AI 解惑

自制RF扫频仪

搞射频电路的朋友应该都知道扫频仪是用来做什么的。本人喜欢搞无线电制作,经常需要调整LC回路参数和滤波器带宽,为了方便调 试,制作了这个0~45MHZ的数字扫频仪,使用非常方便,放上来分享一下。扫频仪核心是AD9851,产生0~45MHZ扫频信号,把信号 ...…

查看全部问答>

通过IE浏览器控制继电器方案请教

打算做一个小产品,通过登陆IE浏览器来控制继电器开关的功能,现在单片机类型又多,网络接口芯片也多,不知道选用哪种合适,成本低点的,相对来说稳定可靠些的。我只要有个界面登陆进去,然后通过控制一下几路继电器,同时设置一下定时控制的模式就 ...…

查看全部问答>

wince驱动问题请教

我想用arm的普通io口或者中断口,接受一串数字信号,把这个信号存储下来being处理,用的是arm2410 ,在wince下用evc怎么编程,怎么写这个接口的驱动程序,最这个是一点也不懂,公司非要我用这个编程,我需要看什么资料该怎么入手,请指点,不胜感激 ...…

查看全部问答>

U盘过滤驱动如何获取设备描述符?

    我想做一个U盘过滤驱动,先读取U盘的设备描述符,然后根据设备描述符中的某项禁用U盘,承蒙大家的帮助,禁用已实现。现在就是想要获取U盘的设备描述符。由于也是刚刚接触过滤驱动,在网上也没搜到相关资料,想在这里向大家请教几个问 ...…

查看全部问答>

usbkey

从事专业的cos开发工作,熟悉各种cos工作原理,愿意长期承接以下工作: 1、开发各种usb加密狗、usbkey开发。 2、开发PKI,PBOC加密锁COS,可以开发基于U盘、HID、CCID等协议的无驱cos; 3、开发各平台USB KEY驱动; 4、开发CSP、PKCS11中间件; ...…

查看全部问答>

实时监视设备的问题

手头的项目要求写个软件监控一个RS485联网的设备,设备通过485转232与电脑相连,要求当设备断电或者报错的时候,软件会自动提示 如果用轮询的话,当设备联网的时候,计算下来速度会比较慢,而且很费资源,所以想问一下,还有没有其他办法??(设 ...…

查看全部问答>

为什么我的 int select(int nfds, fd_set Far* readfds,fd_set Far* writefds,fd_s

fd_set fdread; FD_ZERO(&fdread); u_long i=1; FD_SET(m_recv.m_hSocket,&fdread); ioctlsocket(m_recv,FIONBIO,&i); select(0,&fdread,NULL,NULL,0); 为什么我的这个函数没有立即返回,不是设置时间为0的话就会返回吗?为什么只有套接字上 ...…

查看全部问答>

智能视频监控分析:选择前端还是后端?

智能视频监控分析:选择前端还是后端?     从目前智能监控分析的使用情况来看,绝大多数采用的依旧是后端分析模式,方便排除故障,并可以有效的解决存储容量的压力,但由于是后端分析,一直需要网络传送视频信号,对网络带宽要求较高 ...…

查看全部问答>

电子书阅读器将复制手机模式,免费赠

本帖最后由 jameswangsynnex 于 2015-3-3 19:59 编辑 近日电子书阅读器产业杂音不断,但是积极拓展消费性电子领域的公司仍然相当看好电子书市场。针对中国电子书市场,有厂商表示,中国市场仍在开发中,未来潜力所在瞄准三大区块,第一就是广大的 ...…

查看全部问答>

求教高手关于计数器的用法

刚开始接触DSP,2812的,学着使用三个计数器中断,timer1和timer2的使用都非常正常,但是使用timer0却时钟不能正常工作,要实现的功能很简单,就是写三个IO口,点亮三个LED,0.2s做一次变换,程序如下,可以编译,但run之后没有反应: #include \\ ...…

查看全部问答>