教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 论文> 其他论文> 基于SPB的嵌入式音频处理系统设计

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

上传者:网友
|
翻新时间:2013-12-19

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

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

引 言 随着技术的发展,FPGA在嵌入式设计方面的应用也越来越多。通过嵌入式软件开发工具,可以在FPGA上设计多个处理器核的嵌入式工程,并下载到FPGA器件中。电路设计软件Altium Designer(AD)及其智能开发平台NanoBoard 3000(NB 3000)为嵌入式系统设计开发提供了开发环境与实现平台[3?4]。本文利用其软件平台构建器,即SPB(Software Platform Builder),搭建访问NB 3000外围音频设备接口的软件平台,设计实现从NB 3000的音频编解码器读取音频流信号并进行平滑处理的嵌入式音频处理系统。

1 软件平台构建器

设计FPGA嵌入式系统时,常需要通过软件编程的方式访问外围设备,如LED、音频接口、触摸屏等。但在编程时需要熟悉相关外围设备的工作状况,包括设备工作时所需的设备寄存器、设备特定的命令、使用的通信协议及需要处理的中断等。AD软件的软件平台构建器(SPB)为这些特定的外围设备提供了配置数据和驱动等相关的底层模块(软件IP模块),提供了访问外围设备的应用编程接口(API)。

在AD软件下进行嵌入 式系统设计时,SPB的使用是通过软件平台文件(SwPlatform)实现的。SPB是一个图形化的用户界面,可以自行读取FPGA设计,为设计中的外围设备导入合适的底层模块,并以此为基础添加更多的高层IP模块到软件平台文件中。具体添加何种IP模块,取决于FPGA嵌入式设计中需要访问哪些外围设备。访问外围设备时,可以使用SPB提供的多个IP模块。较底层的IP模块可以访问特定的存储设备,如硬盘、SD卡、RAM驱动器,较高层的IP模块则更抽象也更独立于硬件。

SPB中的软件服务列表(Software Service)是一组应用程序可以使用的类型、定义、结构和功能函数。软件服务包含用于访问SD卡、IDE存储设备、CF卡和闪存上的文件的存储服务;用于提供以太网访问的网络服务;提供符合POSIX规范的多线程功能的核心服务;允许快速构造现代图形界面的GUI服务;用于实现音频和视频功能的多媒体服务。用于中断管理和软件定时管理的系统服务总是出现在软件平台中,并且与特定设备无关。每个不同的软件模块都包含完整的API参考信息。通过API Reference可以访问API参考信息,堆栈中的每一层都会有详细的该层上可用函数的描述。通过Header Files可以查看任意驱动或者服务程序的头文件。

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

2.1 OpenBus系统设计

嵌入式设计时,在处理外围设备与处理器的连接关系时,可以采用AD软件中的开放总线(OpenBus系统)来完成,这样连接过程将被大大简化。“OpenBus系统”是一个描述一种使用普通总线实现整个系统内逻辑功能性“模块”连接的术语[3]。在OpenBus系统文档中,打开OpenBus Palette面板,选择并放置组成系统所需的器件。OpenBus Palette面板中用于FPGA设计的器件,按照功能分类有Connectors(连接器)、Processors(处理器)、Memories(存储器)、Peripherals(外围设备)等。每个OpenBus器件必须正确配置后才能使用。这种OpenBus系统的设计方法与传统的将处理器和外围电路作为元件放置在电路板上不同,它移除了所有低级别的走线和互连细节,能够快速地构建系统[3]。 NB 3000开发板上的音频编解码器为CS4270,因此图3中选择CS4270 Audio Codec Driver模块,不需要再自行编写音频编解码器的驱动代码。设计采用SPI作为配置和控制,I2S用来传输数字音频数据流。因此软件平台文件的底层设计选择了I2S Master Controller和SPI Master Controller模块。中间层设计选择了I2S Driver、SPI Driver和CS4270 Audio Codec模块。软件平台文件使硬件外围设备的访问变得容易,底层模块为特定的外围设备提供了配置数据和驱动代码。设计软件平台文件时,选择什么样的模块,取决于设计中需要访问哪些外围设备。

2.3 嵌入式代码设计

3 设计总结

将嵌入式设计文件下载到智能开发平台NanoBoard 3000上的FPGA器件后,利用音频线将电脑或者音箱的音频源送到NanoBoard 3000的音频输入接口,就能从喇叭上听到处理后的音频效果。设计过程表明,AD的软件平台构建器(SPB)为FPGA嵌入式设计访问硬件电路相关外围设备提供了底层软件驱动提供了便利。通过搭建软件平台,调用IP模块,避开了对于底层硬件的驱动程序的编写,只要掌握高级C语言就可以方便地对外围设备进行编程,简化了嵌入式代码的编写,缩短了FPGA嵌入式设计的开发时间。

下载文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

网友最新关注

Bikes or Cars
The World Expo in 2010
The Shanghai World Expo(上海世博会)
哈尔滨的水污染
my pet cat
what do you think of Internet
father is a gentle man
Shanghai Museum
ard to The Teacher
一轴四馆
My Favorite Places
我们只有一个地球
An Accident
Summer Vacation
My Motto
广告媒体分析(一)
探讨可持续发展观与我国环境立法(1)论文
第一月运营计划
信息管理对市场销售的影响(一)
浅论环境侵权的公益诉讼救济(1)论文
采购员的发展前景及心得(一)
论我国环境侵权损害的社会化赔偿机制(1)论文
谈昆南公司的营销管理重组(一)
浅论环境公益诉讼的启动主体(1)论文
云南民俗风情旅游资源开发(一)
浅论可持续发展观与我国环境立法(1)论文
移动通信市场营销管理体系的建立和完善(一)
浅谈新经济时代的营销理念(一)
浅论环境侵权因果关系的推定(1)论文
网络营销优劣势分析(一)
《汤姆·索亚历险记》训练素材
《真理诞生于一百个问号之后》老师语录
《汤姆·索亚历险记》写作指导
《汤姆·索亚历险记》教学重点
《汤姆·索亚历险记》考点练兵(一)积累篇
《汤姆·索亚历险记》教学难点
《汤姆·索亚历险记》作家作品及写作背景
《汤姆·索亚历险记》重点问题探究
《汤姆·索亚历险记》教学目标
《汤姆·索亚历险记》考点练兵(二)阅读篇
《汤姆·索亚历险记》随堂练习 巩固篇
《汤姆·索亚历险记》老师语录
《汤姆·索亚历险记》重点字词梳理
《汤姆·索亚历险记》范文习作
《汤姆·索亚历险记》随堂练习 提高篇