技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种面向ARM处理器平台的音频控制器及系统的制作方法  >  正文

一种面向ARM处理器平台的音频控制器及系统的制作方法

  • 国知局
  • 2024-07-31 22:50:33

本发明涉及音频,特别是涉及一种面向arm处理器平台的音频控制器以及一种音频传输系统。

背景技术:

1、hda(high definition audio,高保真音频)是一种架构方案,用于实现高保真音频的播放和采集。它支持最多15个编解码器(codec)同时工作,支持最高192 hz的采样频率和高达32 bit的采样精度。因此,相比于传统的音频技术(ac97,i2s等)能提供更加清晰和逼真的声音。得益于此,hda音频技术在个人电脑,服务器乃至专业音频设备领域都有着广泛的应用。但目前的hda音频技术主要运用于x86架构处理器平台。x86架构是一种复杂指令集架构,它的指令集非常冗余并且使用率相差悬殊,通常一个典型的运算过程所使用的80%的指令,只占整个处理器指令架构的20%。

2、而arm(advanced risc machines)架构是一种精简指令集架构,由于它的指令长度固定,它的译码和执行速度更快,并且由于超大规模集成电路(vlsi)技术的快速发展,使得在片上集成更多的寄存器成为可能,这非常有利于采用了大量寄存器指令的精简指令集的发展。相较来说,体积小、低功耗、高性能并且成本相对更低的arm处理器核或架构更方便获取。amba(advanced microcontroller bus architecture,高级微控制器总线架构)总线是一种高级微控制器总线架构,是arm处理器与片上其他系统的通信接口。

3、因此,如何提供一种面向于arm处理器平台的hda控制器的实现方案,实现arm处理器与hda链路的数据交互是本领域技术人员急需解决的问题。

技术实现思路

1、本发明的目的是提供一种面向arm处理器平台的音频控制器,可以实现arm处理器与hda链路的数据交互;本发明的另一目的在于提供一种音频传输系统,可以实现arm处理器与hda链路的数据交互。

2、为解决上述技术问题,本发明提供一种面向arm处理器平台的音频控制器,包括amba总线接口,dma控制模块,寄存器模块,跨时钟域处理模块和hda链路接口控制模块;

3、所述寄存器模块与所述dma控制模块连接,所述寄存器模块与所述dma控制模块均与所述amba总线接口连接,且所述寄存器模块与所述dma控制模块均与所述跨时钟域处理模块连接,所述跨时钟域处理模块与所述hda链路接口控制模块连接;

4、所述amba总线接口用于通过amba总线连接arm处理器和主内存,所述hda链路接口控制模块用于连接编解码器,在数据断流时对数据进行处理,在下一帧继续播放音频数据;

5、所述dma控制模块的dma通道与预设的数据流一一对应绑定,在工作时所述数据流与所述编解码器绑定,获得授权的所述dma通道通过amba总线接口向所述主内存发起读写请求,搬运所述数据流对应的音频数据;

6、所述amba总线接口,所述dma控制模块和所述寄存器模块工作于对应所述amba总线的第一时钟域,所述hda链路接口控制模块工作于对应所述编解码器的第二时钟域,所述跨时钟域处理模块用于协调所述第一时钟域和所述第二时钟域。

7、可选的,所述amba总线接口包括apb slave接口和axi master接口,所述apbslave接口与所述寄存器模块连接,所述axi master接口与所述dma控制模块连接;所述aximaster接口对应突发操作的数据长度与所述音频数据的数据帧长度相对应。

8、可选的,所述dma控制模块包括获取bdl模块、仲裁器和多个dma通道;

9、所述获取bdl模块用于获取位于主内存中的bdle;各个所述dma通道用于搬运对应的命令,响应和多个输入输出数据流;所述仲裁器用于裁决所述获取bdl模块和各个所述dma通道哪一组件占用axi总线。

10、可选的,所述dma控制模块具体用于:

11、当从所述amba总线获取的单一输出数据流的数据长度超出输出帧的最大负载时,丢掉超出所述最大负载的数据,搬运未超出所述输出帧最大负载的数据。

12、可选的,所述dma控制模块具体用于:

13、当从所述amba总线先后获取的多个输出数据流的总数据长度超出输出帧的最大负载时,丢掉在后获取的输出数据流的数据,搬运在先获取的未超出所述输出帧最大负载的数据。

14、可选的,所述hda链路接口控制模块包括复位模块,codec初始化模块,发送模块和接收模块,所述发送模块用于将并行的音频数据和命令转化为串行数据发送给编解码器,所述接收模块用于采集串行的音频数据和响应,转换为并行数据发送给主内存。

15、可选的,所述发送模块的驱动时钟频率为hda规范定义的标准驱动时钟频率的二倍,所述发送模块为上升沿采样。

16、可选的,还包括与所述dma控制模块连接的一个片内fifo;

17、hda链路接口控制模块具体用于:

18、当所述片内fifo的数据发生断流时,从断流处开始停止发送数据给所述编解码器直到当前帧的持续时间结束,并丢弃从所述断流处至当前帧结束的数据;

19、从下一帧开始继续对应音频数据的播放流程。

20、可选的,还包括与所述dma控制模块连接的至少两个片内fifo,所述dma控制模块交替向所述片内fifo搬运不同帧所需的数据;

21、所述hda链路接口控制模块具体用于:

22、当对应当前帧的片内fifo中数据完整时,从所述片内fifo中取出对应当前帧的数据发送至所述编解码器。

23、本发明还提供了一种音频传输系统,包括amba总线、arm处理器、主内存、hda链路、编解码器、和如上述任一项所述的音频控制器;

24、所述amba总线接口通过所述amba总线连接所述arm处理器和所述主内存,所述hda链路接口控制模块连接所述编解码器。

25、本发明所提供的一种面向arm处理器平台的音频控制器,包括amba总线接口,dma控制模块,寄存器模块,跨时钟域处理模块和hda链路接口控制模块;寄存器模块与dma控制模块连接,寄存器模块与dma控制模块均与amba总线接口连接,且寄存器模块与dma控制模块均与跨时钟域处理模块连接,跨时钟域处理模块与hda链路接口控制模块连接;amba总线接口用于通过连接amba总线连接arm处理器和主内存,hda链路接口控制模块用于连接编解码器;dma控制模块的dma通道与预设的数据流一一对应绑定,在工作时数据流与编解码器绑定,获得授权的dma通道通过amba总线接口向主内存发起读写请求,搬运数据流对应的音频数据;amba总线接口,dma控制模块和寄存器模块工作于对应amba总线的第一时钟域,hda链路接口控制模块工作于对应编解码器的第二时钟域,跨时钟域处理模块用于协调第一时钟域和第二时钟域。

26、设置音频控制器连接hda的编解码器实现播放或收集音频的功能。设计的音频控制器挂载在amba总线上,arm处理器可以通过收发命令/响应的方式对编解码器进行配置和控制,实现例如音量调节、编解码器格式配置、编解码器电源管理等功能。而音频数据通过流的方式进行管理,要播放的数字信号通过输出流管理,经过dma控制模块的搬运,输出到流绑定的编解码器,经编解码器里面的dac(数模转换器)转化为模拟信号进行播放。而采集的模拟信号正好相反,由输入流管理,经adc(模数转换器)转化为数字信号,再由dma搬运到主内存中,实现arm处理器与hda链路的数据交互。而跨时钟域处理模块用于协调不同的时钟域,以保证数据的正常交互。

27、本发明还提供了一种音频传输系统,同样具有上述有益效果,在此不再进行赘述。

本文地址:https://www.jishuxx.com/zhuanli/20240730/194942.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。