数据实时传输方法

文档序号:9727285阅读:2790来源:国知局
数据实时传输方法
【技术领域】
[0001] 本发明涉及媒体信息处理传输技术,特别涉及一种数据实时传输方法。
【背景技术】
[0002] 音频处理技术和传感器技术的迅速发展使多路化、高清化成为音频应用发展的一 种趋势。语音数据量的激增不仅给处理平台的计算能力带来了严峻挑战,同时也给语音处 理架构中芯片间数据的高速传输造成了极大困难。因此,在语音处理架构中解决芯片间语 音数据的实时传输问题至关重要。现有方法缺乏针对语音数据和异构处理器结构特点的考 虑,难以满足语音处理架构中音频的实时传输和处理需求。而且现有系统大多偏重于功能 的实现,硬件资源的开销较大。

【发明内容】

[0003] 为解决上述现有技术所存在的问题,本发明提出了一种数据实时传输方法,包括:
[0004] 在协处理器中对语音数据进行采集和预处理,然后通过高速PCI接口将预处理后 的语音数据打包并传输至核心处理器。
[0005] 优选地,所述在协处理器中对语音数据进行采集和预处理,进一步包括:
[0006] 将语音数据频段的进行分离,在分离过程中同时完成音频格式转换;为协处理器 与核心处理器上的收发缓冲队列各自分配多个音频缓冲队列,预定义核心处理器的目标数 据存储地址,对分离后的语音频段进行打包传输;在高速PCI数据传输过程中,发送方的请 求端口组建请求数据包,数据包经过高速PCI链路发送到目标方请求端口进行解析,目标方 用户控制目标响应端口组建响应数据包,数据包经过高速PCI链路发送回发送方响应端口 解析;
[0007] 所述将预处理后的语音数据打包并传输至核心处理器,进一步包括:
[0008] 在传输过程中,采用流媒体写操作实现处理器写入操作,为每个流媒体写操作数 据包设置特定地址和数据长度,语音数据以段为单位进行循环发送;采用由协处理器发送 读操作请求方式读取核心处理器处理后的语音数据,核心处理器仅对读操作请求进行读取 响应,将语音频段数据划分为多个读操作数据包,由段基地址、频段偏移量和段偏移量计算 获得数据包存储地址;
[0009] 在语音数据由协处理器写入核心处理器过程中,协处理器作为发送方,将模数转 换后的数字音频通过写入核心处理器对应的片外存储区,在写入片外存储区时,禁止核心 处理器对该存储区进行操作;当协处理器写完一段数据之后,发送一个应答操作,通知核心 处理器可以对该段数据进行处理,保证协处理器与核心处理器之间的同步;核心处理器的 缓冲队列循环对数据段进行处理;
[0010] 在语音数据由核心处理器写入协处理器的过程中,每当核心处理器处理完一段音 频之后,发送应答操作通知协处理器可以进行数据读取;协处理器接收到该同步信号之后, 作为发送方,将核心处理器处理后的语音数据通过读操作读入协处理器的缓冲队列中;在 核心处理器处理完两段数据后向协处理器发送应答,使其进行读操作;在读的过程中,协处 理器维护自己的缓冲队列;在读写功能的实现中,以读优先的方式进行操作,设置当缓冲队 列中的数据小于预设字节数时进行读操作,否则进行写操作,并在读数据的过程中,不能进 行写操作;具体控制过程包括:
[0011] (1)当缓冲队列中数据不少于一段且此时没有读请求时,发送数据,即完成一次流 媒体写操作;
[0012] (2)在协处理器向核心处理器发送数据时,当完成一段数据的传输且此时没有读 请求时,通过发送应答操作通知核心处理器处理接收到的当前段数据;在协处理器从核心 处理器读取数据过程中,当核心处理器处理完两段语音数据时发送应答操作通知协处理器 读取第一段数据;
[0013] (3)以协处理器接收缓冲队列中数据量和核心处理器发送给协处理器的应答操作 为触发条件,当缓冲队列中有多于一段的剩余空间即组建读操作完成一段语音数据的读 取。
[0014] 本发明相比现有技术,具有以下优点:
[0015] 本发明提出了一种数据实时传输方法,节约了芯片间的大量语音数据的传输开 销,减少了内存资源占用,降低了软硬件设计的难度。
【附图说明】
[0016] 图1是根据本发明实施例的数据实时传输方法的流程图。
【具体实施方式】
[0017] 下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描 述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利 要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以 便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的 一些或者所有细节也可以根据权利要求书实现本发明。
[0018] 本发明的一方面提供了一种数据实时传输方法。图1是根据本发明实施例的数据 实时传输方法流程图。
[0019] 本发明提出了一种基于高速PCI的数据实时传输方法。该方法通过在协处理器上 采用语音频段数据重构方法并使用包头信息较短的流媒体写操作,简化语音传输格式,同 时提高了高速PCI上语音数据包的传输效率;在核心处理器上通过预定义目标方数据存储 单元和采用简洁的应答机制,节约了核心处理器在传输过程中的时间开销。减化了实现过 程的复杂度。并且在存储过程中,采用音频缓冲队列取代资源占用率较高的RAM,因此系统 对协处理器内存资源占用较少,无需外部存储器,降低了软硬件设计的难度。
[0020] 本发明的异构语音处理架构对处理任务进行了划分。其中,协处理器用于语音数 据的采集、格式转换、预处理、数据传输和逻辑控制等任务;核心处理器用于音频的处理、分 析和编码等核心工作。在存储方面,协处理器采用以段为单位完成数据采集和预处理的方 法,其片上存储资源可以满足需求,避免了增加片外存储器;而核心处理器在计算过程中需 要存取大量语音数据和中间处理结果,片内存储远无法满足要求,因此为其设计了专门的 片外存储区片外存储器。
[0021] 针对语音数据在结构上的规范性特点以及处理上的统一性要求,本发明为协处理 器与核心处理器上的收发缓冲队列各自分配多个音频缓冲队列,以实现语音数据频段的快 速分离,并为两处理器上分类数据的高效整合提供了条件。首先,在分离过程中同时完成音 频格式转换;其次,在预定义核心处理器目标方数据存储地址后,对分离后的语音频段进行 打包传输,减少核心处理器计算数据存储地址上的时间开销。
[0022] 本发明对高速PCI的传输机制进行了定制和优化。在高速PCI操作选择上,由于系 统中需要由协处理器读取核心处理器处理后的语音数据,因此选择了常规的读操作。在写 操作中选择流媒体写操作。为简化高速PCI传输过程实现的复杂度,选用简洁的应答操作用 于异构处理器间的传输控制。
[0023] 发送方的请求是一次操作的开始,用户控制发送方的请求端口组建请求数据包, 数据包经过高速PCI链路发送到目标方请求端口进行解析,目标方用户控制目标响应端口 组建响应数据包,数据包经过高速PCI链路发送回发送方响应端口解析。例如,在用户A发送 高速PCI请求给用户B时,用户B响应用户A的高速PCI请求时,本发明的具体步骤如下:
[0024] (1)用户程序A控制发送方的请求端口信号,输入请求数据包信息,如包类型等;
[0025] (2)程序A根据用户输入信息封装为高速PCI数据包并发送到高速PCI链路;
[0026] (3)程序B收到请求数据包,解析后通过目标方请求端口通知用户程序B;
[0027] (4)用户程序B根据请求,控制目标方响应端口组建响应数据包,输入响应数据;
[0028] (5)程序B封装响应数据为PCI响应数据包并发送到高速PCI链路;
[0029] (6)程序A收到响应数据包,解析后通过发送方响应端口通知用户程序A,用户程序 A接收并处理响应数据包。
[0030] 当核心处理器处理完一段语音数据后,将处理后的语音数据转移到核心处理器片 外存储区的输出缓冲队列,在协处理器设计多个接收缓冲队列与之对应。当核心处理器处 理完接收到的语音数据后,通过向协处理器发送应答操作通知协处理器取回处理好的语音 数据,最后由协处理器通过读操作请求读回处理后的语音数据。
[0031] 本发明以协处理器作为传输链路处理器,核心处理器作为语音数据处理核心,分 别设计协处理器和核心处理器高速PCI程序,其中,协处理器程序包括发送方请求和发送方 响应;核心处理器程序包括目标方请求和目标方响应。为了实现高速PCI的实时传输,本发 明在协处理器首先对采集到的语音数据进行发送前的重新组建。具体组建过程如下,协处 理器采集打包格式的语音数据,为语音频段设置各自音
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1