基于SPB的嵌入式音频处理系统设计

2013-10-25 17:11 来源:电子信息网 作者:洛小辰

2 嵌入式音频处理系统设计

2.1 OoenBus系统设计

嵌入式设计时,在处理外围设备与处理器的连接关系时,可以采用AD软件中的开放总线(OpenBus系统)来完成,这样连接过程将被大大简化。“OpenBus系统”是一个描述一种使用普通总线实现整个系统内逻辑功能性“模块”连接的术语。在OpenBus系统文档中,打开OpenBus Palette面板,选择并放置组成系统所需的器件。OpenBus Palette面板中用于FPGA设计的器件,按照功能分类有Connectors(连接器)、Proce ssors(处理器)、Memories(存储器)、Peripherals(外围设备)等。每个OpenBus器件必须正确配置后才能使用。这种Open Bus系统的设计方法与传统的将处理器和外围电路作为元件放置在电路板上不同,它移除了所有低级别的走线和互连细节,能够快速地构建系统。

在本文的嵌入式音频处理系统中,通过访问NB3000开发板上的高保真音频接口获取音频流信号。在设计OpenBus主处理器系统中,分别选择并放置微处理器(32-bit RISC Processor TSK3000A)、连接件(Interconnect)、I2S音频流控制器(Audio Streaming Controller)、SPI控制器(SPI Controller)和SRAM控制器(SRAM Controller)等OpenBus器件,并连线如图1所示。同时,对OpenBus器件进行参数配置。将SPI控制器的数据发送大小(Data Transfer Size)参数配置为32。将I2S音频流控制器的数据缓存(I2S Hardware Buffer)参数配置为4k samples,将I2S设置为中断号INT_I1。

通常情况下,任何使用OpenBus系统的FPGA设计都要设计放置接口电路的顶层原理图。图1的Open Bus系统文件为32位处理器TSK3000A和I/O接口逻辑获得了音频流数据,包含了FPGA设计中的主处理器系统。约束文件将原理图顶层的端口连接到目标FPGA器件的实际物理管脚。约束文件中不但包含端口到管脚的映射,还包含如时钟分配、目标器件等其他相关的设计规范。

17


顶层原理图通过约束文件,将下载到FPGA中的嵌入式系统设计与FPGA器件的物理管脚连接起来。顶层原理图设计中,音频流控制器I2S与音频编解码器(AUDIO_CODEC)相连,SPI控制器与音频编解码器控制器CS4270(AUDIO_CODEC_CTRL)相连,如图2所示。

18


2.2 软件平台文件设计

在SPB基础上搭建访问NB 3000开发板的音频接口,并对音频流数据进行处理的软件平台文件(SwPlatform),如图3所示。

19


NB 3000开发板上的音频编解码器为CS4270,因此图3中选择CS4270 Audio Codec Driver模块,不需要再自行编写音频编解码器的驱动代码。设计采用SPI作为配置和控制,I2S用来传输数字音频数据流。因此软件平台文件的底层设计选择了I2S Master Controller和SPI Master Controller模块。中间层设计选择了I2SDriver、SPI Driver和CS4270 Audio Codec模块。软件平台文件使硬件外围设备的访问变得容易,底层模块为特定的外围设备提供了配置数据和驱动代码。设计软件平台文件时,选择什么样的模块,取决于设计中需要访问哪些外围设备。

20


2.3 嵌入式代码设计

FPGA嵌入式系统设计中,嵌入式工程是“嵌在”微处理器中的。嵌入式代码就是在软件平台构建器上搭建的软件平台的基础上完成的软件编程。嵌入式工程中的软件代码,主要完成音频数据流的获取、音频数据流的处理和将处理好的音频数据流送到NB 3000开发板的喇叭上。主要程序代码如下:

< 1 2 3 > 
嵌入式 FPGA 音频流信号

相关阅读

暂无数据

一周热门