基于ARM7的嵌入式音频处理系统的设计
2010-12-26罗晴兰
罗晴兰
(江苏广播电视大学武进学院/江苏城市职业学院武进校区 江苏常州 213161)
基于ARM7的嵌入式音频处理系统的设计
罗晴兰
(江苏广播电视大学武进学院/江苏城市职业学院武进校区 江苏常州 213161)
通过对基于ARM7TDMI内核的处理器S3C44B0X的研究,结合音频处理芯片UDA1341TS,采用IIS总线接口技术,完成基于ARM7的嵌入式音频系统的软硬件设计与实现。该系统具有音频实时录制、音频实时播放和播放由WAV格式保存的音频文件的功能。
ARM7;音频处理系统;S3C44B0X;IIS总线接口技术
随着计算机技术、电子技术和通信技术的迅猛发展,音频处理技术也在众多领域得到广泛应用。如通信领域中的手机、IP电话,消费类电子产品中的MP3和CD播放器以及控制领域中的语音识别、声控系统等[1]。笔者在基于目前最流行的ARM芯片的基础上,设计开发了一款实用有效的嵌入式音频系统。该系统具有音频实时录制、音频实时播放和播放由WAV格式保存的音频文件的功能。由于采用了ARM7芯片S3C44B0X和具有IIS总线技术的UDA1341TS音频处理芯片以及LCD液晶显示模块等构成整个硬件系统,具有成本和功耗低、体积小、安全性高、对音频信号采样速度快等特点,可以广泛应用于汽车音响及家用娱乐音响系统中。
1 硬件设计
1.1 系统的功能和总体结构
为了使系统具有音频实时录制、音频实时播放和播放由WAV格式保存的音频文件的功能,根据系统功能要求,本系统总体设计为基于ARM7TDMI的嵌入式音频系统,其总体框图见图1所示。系统共分为5个功能模块,分别是CPU最小系统、存储器系统、人机接口模块、音频处理模块和电源模块,其中ARM7处理器采用S3C44B0X芯片,该芯片本身集成了丰富的外围功能模块,内置LCD控制器,可以支持灰度LCD和彩色LCD,具有将显存中的LCD图像数据传输到外部LCD驱动电路的逻辑功能。Flash ROM选用SST公司的SST39VF160,用来存储固化Boot loader和主程序。该芯片采用标准接口与处理器交互,对它的读取不需要任何特殊命令,只要在硬件设定好大小端模式,便可使处理器知道Flash ROM的数据长度和位序,所以该款芯片非常适合本系统的要求。SDRAM选用HYNIX公司的HY57V561620,该芯片也可以满足嵌入式操作系统和各种相对复杂的算法的运行要求。音频处理部分采用飞利浦公司的UDA1341TS数字音频编译码器,它可以将立体声的模拟信号和数字信号双向转化,同时具有可编程的增益放大器(PGA)和数字自动增益控制器(AGC),该芯片采用的IIS总线结构能使电路结构变的简单化[2]。人机接口部分采用通用的键盘扫描芯片和3.5英寸的L35T32,该液晶显示像素为240×320,可显示16位色彩,完全可以满足一般的音频处理系统的要求。
图1 基于ARM7的嵌入式音频系统总体框图
1.2 硬件系统设计
本系统的硬件设计中处理器采用最小系统,主要芯片中的音频处理模块和与CPU之间以IIS的方式连接,液晶显示模块利用S3C44B0X处理器内建的LCD接口进行连接,其他的模块按照器件的有关说明连接,其连接的逻辑图如图2所示。
图2 基于ARM7的嵌入式音频系统逻辑框图
1)存储器系统设计分为两部分,一个是Flash ROM,另一个是 SDRAM。两部分分别采用SST39VF160和HY57V561620芯片进行存储器的构建。Flash ROM是用于存储固化程序映射到BANK0。由于其具有非易失性,具有掉电保护功能,所以在设计时应考虑除了用于保存系统固化程序以外,还应考虑把多余的空间用来保存录制好的音频文件。而SDRAM虽然信息在掉电后会丢失,但其工作速度比Flash ROM快,可以充分的提高系统的工作效率,所以SDRAM在设计时除了用于暂时存放程序和音频处理的数据外,在系统上电后,还要将需要运行的程序从Flash ROM存储器复制到SDRAM中运行,提高程序运行速度。
2)音频处理模块以UDA1341TS芯片为核心[3],与处理器的连接按IIS总线的方式连接,再加上音频输入接口电路、音频输出接口电路和一定的外围配置电路,要求在此系统中严格区分模拟地和数字地。具体连接方式是:UDA1341TS的L3MODE,L3CLOCK,L3DATA引脚分别与 CPU的GPF2,GPF3,GPF4引脚相连接,该L3接口用于CPU对UDA1341TS进行配置;UDA1341TS的SYSCLK与CPU的CODECLK引脚相连接,用于提供给音频处理模块;UDA1341TS的 DATAI与 CPU的IISDO引脚相连接,用于CPU传送IIS数据信号给音频处理模块UDA1341TS的DATA0与CPU的IISDI引脚相连接,用于音频处理模块IIS数据信号传输给CPU进行处理;UDA1341TS的WS脚与CPU的IISLRCK引脚相连接,用于控制左右声道的选择;UDA1341TS的BCK引脚与CPU的IISCLK引脚相连接,用于控制音频处理模块钟;UDA1341TS的QMUTE,TEST2,TEST1脚没有用到,所以都接地。音频处理模块电路原理图见图3所示。
图3 音频输出和输入接口电路原理图
3)人机接口模块由两部分组成:一部分是键盘扫描驱动电路,另一部分是液晶显示模块和处理器的连接。键盘扫描一般来说比较简单,在这里主要介绍与液晶显示模块 L35T32的连接。在S3C44B0X处理器中内置了LCD的控制器,它具有将显示缓存中的LCD图像数据传输到外部LCD驱动电路的逻辑功能,既可以支持灰度LCD,又可以支持彩色的LCD;在彩色LCD上,既可以支持256级的彩色,又可以利用编程来控制相应的寄存器值,适应不同的LCD显示板。为了人机接口界面美观大方,系统采用彩色LCD显示模块。本系统采用的是3.5英寸的L35T32彩色液晶显示屏如图4所示。LCD控制器接口连线主要包括:VD0到VD23的RGB三色信号线,VCLK数据时钟信号线,HSYNC行同步信号线,VSYNC场同步信号线,VDEN数据使能信号线,以及 LCD_PWREN显示使能信号线[4]。
图4 S3C44B0X处理器与L35T32彩色液晶显示屏连接图
2 软件系统设计
系统软件主要分为五个部分:主模块负责系统引导以及系统的初始化,键盘扫描模块负责接受所发生的按键动作。由于系统主要功能的实现是靠用户的按键指令来判断系统当前应该完成什么样的任务,所以在软件设计时将其设置为高优先级。彩色液晶显示模块负责在规定的时间内完成数据的传送和刷屏功能,音频采样模块完成将声音的模拟信号向数字信号的转化,同时可以根据用户的指令将数据按音频格式保存在Flash ROM。音频播放模块负责将内存中的数字信号通过转化送到播放电路中播放,同时也会根据用户的指令从Flash ROM中将需要播放的文件复制到SDRAM中进行播放。除了主模块外,其它的模块都需要通过系统调用来完成其功能。彩色液晶显示模块在系统要求的时间范围内必须完成刷新任务,键盘扫描程序采用中断的方式进行工作。系统主要流程图如图5所示。
图5 软件流程图
3 结束语
系统根据音频处理器的功能要求,完成硬件各部分的选型,并结合采用的关键技术设计实现一款应用于汽车音响及家用娱乐音响系统的音频处理器芯片。该芯片具有极高的性价比以及广阔的市场空间,可为人类的生产与生活提供极大的便利。
[1]田泽.嵌入式系统开发与应用教程[M].北京:北京航空航天大学出版社,2005.
[2]胥静.嵌入式系统设计开发实例详解[M].北京:北京航空航天大学出版社,2005.
[3]陈赜,等.ARM嵌入式技术实践教程[M].北京:北京航空航天大学出版社,2005.
[4]刘岚,等.基于ARM的嵌入式系统开发[M].北京:电子工业出版社,2008.
ARM7-based Design of Embedded Audio Processing System
LUO Qing-lan
(Wujin School,Jiangsu Radio and Television University Wujin Campus,Jiangsu City Vocation College,Changzhou 213161,China)
Based on the research of ARM7TDMI core processor S3C44B0X,combined audio processing chips UDA1341TS,using IIS bus interface technology,the paper introduces the design and implementation of the audio system based on the ARM7 embedded hardware.The system has the features of real-time audio recording,real-time playback and playback from WAV format audio files.
ARM7;audio processing system;S3C44B0X;IIS bus interface technology
TN 912.3
B
1672-2434(2010)01-0058-03
2010-01-11
罗晴兰(1974-),女,讲师,硕士,从事研究方向:电子与通讯、自动控制技术