Windows CE下基于TSC2101的音频系统设计

发布者:EuphoricMelody最新更新时间:2013-07-15 来源: eefocus关键字:WindowsCE  TSC2101  音频系统 手机看文章 扫描二维码
随时随地手机看文章

Windows CE是一个开放的、可裁剪的、32位的实时嵌入式操作系统。它具有可靠性好、实时性高、内核体积小的特点,所以被广泛用于各种嵌入式智能设备的开发,其应用涉及工业控制、信息家电、移动通信、汽车电子、个人电子消费品等各个领域,是当今应用最多、增长最快的嵌入式操作系统。而在这些嵌入式应用中,音频模块成为了大多数产品不可或缺的一部份。本文针对Windows CE操作系统,构造了基于Intel Xscale PXA272和TSC2101音频芯片的音频系统,并简要介绍了其实现方法。

音频系统的硬件实现

本设计中的音频驱动采用Unified Audio模型实现,基于Intel Xscale PXA272处理器和TI 的TSC2101音频芯片,使用了基于I2S(Inter-IC Sound)总线的音频系统体系结构,系统原理图如图1所示。Intel Xscale PXA272芯片集成了I2S控制器,通过I2S总线处理音频数据。其他信号(如控制信号)则需要单独传输,在本设计中将Xscale PXA272芯片的SSP串口配置为SPI串口以实现控制信号的传输。

图1 系统原理图


I2S是菲利浦公司提出的串行数字音频总线协议。PXA272的I2S控制器控制了I2S链接,I2S控制器由数据缓冲、状态和控制寄存器、计数器组成。它们将系统内存和外设的音频解码芯片(TSC2101)连接,产生同步音频。播放音频文件时,I2S控制器通过I2SLINK连接将系统内存中数字化的声音样本发送到外设的TSC2101音频解码芯片中,然后由TSC2101芯片的数模转换器将数字音频信号转换成模拟信号。对于录音来说,I2S控制器从外部的TSC2101音频芯片接收到数字信号,然后将它们存储到系统内存中。I2S提供了普通I2S和MSB-justified-I2S格式。通过5根引脚连接TSC2101芯片和PXA272的I2S控制器,形成音频数据传输的通道。I2S控制器必需的信号主要有:一个码率时钟,可以引用外部或者内部时钟源;一个控制信号提供“左/右”声道控制信息;两个串行音频引脚,一个输出一个输入;码率时钟,I2S控制器会将可选的系统时钟信号也发送到外部解码器中。

I2S控制器通过DMA方式来访问。DMA方式下,DMA控制器只能通过串行音频数据寄存器(SADR)访问FIFO。DMA控制器通常以8、16或32字节大小的块存取FIFO队列数据的。

本设计中采用的音频芯片TSC2101集成了立体声音频解码、触摸屏控制芯片,立体声DAC能以高达48Kb/s的采样率播放音频文件,专供PDA、PMP、智能手机和MP3播放机使用。TSC2101 将扬声器放大器、耳机放大器和四线触摸屏控制器与音频编解码器集成再一起,带有一个立体声头戴送受话器接口、一个手机送受话器接口、一个单声道8Ω扬声器放大器以及一个32Ω受话器驱动器,并集成有一个电池监控器和一个片上温度传感器。

TSC2101芯片的电路设计如图2所示。

图2 TSC2101芯片电路设计 [page]

本设计为TSC2101在智能手机中的运用,CP-IN为通信模块的语音输入,CP-OUT则为音频系统到通信模块的输出,在实际的应用中MIC1可以通过TSC2101的内部PGA(可编程增益放大)、AGC(自动增益控制)电路连接到CP-OUT,实现智能手机的话筒功能;同时,MIC1输入还可以通过内部的ADC将语音数据采样后经I2S总线传输到处理器存储空间实现录音功能。当然,在智能手机通话的同时,还可以实现通话录音功能。电路图中的38~41引脚为SPI接口,42~46引脚为I2S控制引脚,引脚9~12为触摸屏输入,引脚27和28为音频输出可以连接耳机,引脚26连接手机听筒,引脚33、35连接外置扬声器。

采用Unified Audio模型实现音频驱动

音频驱动的实现方式包括MDD-PDD分层模式和不分层的Unified Audio模型。MDD-PDD作为直接实现流接口的一种方法,使用微软提供的模型设备驱动程序(MDD)库——Wavemdd.dll。这个库根据音频设备驱动程序服务供应者接口(DDSI)函数来实现流接口函数,如果使用了Wavemdd.dll就必须生成一个匹配的平台依赖驱动程序(PDD)库,该库能实现音频DDSI函数,这个PDD库通常叫做Wavepdd.lib。然后把两个库连接起来形成Wavedev.dll。

作为音频驱动的另外一种方法,就是采用Unified Audio模型,即不分层的音频驱动模型,这种模型的音频驱动支持标准的波形驱动接口。在本设计中就是使用的这种方式来实现音频驱动(Platform Builder的驱动目录下包括有基于这种模型驱动的实例代码)。在分层的音频驱动中,驱动程序由MDD和PDD组成,MDD层执行与硬件平台无关的功能,PDD层则是直接与硬件平台相关的操作,而在Unified Audio模型中,MDD和PDD的分层是不必要的,图3是Unified Audio模型的音频驱动结构。

图3 Unified Audio模型的音频驱动结构

在这种模型下,音频驱动仍然是以流接口的形式实现,分别实现了WAV-close()、WAV-PowerDown()、WAV-Deinit()、 WAV-PowerUp()、WAV-Init()、WAV-Read()、WAV-IOControl()、WAV-Seek()、WAV-Open()、WAV-Write()这几个标准的流接口函数。

DMA缓存区设计与实现

由于音频设备驱动程序设计对设备的实时性要求较高,所以DMA缓存区设计以及合理地利用缓存区加快对音频数据的处理,减少延时变得十分重要。

DMA控制器是使CPU处理其他与数据总线无关的处理,而由DMA控制器负责数据传输的机制,这种机制使得CPU从繁重的数据传输中解脱出来,可以执行其他计算,从而提高了系统运行速度。PXA272的DMA控制器提供了32个DMA通道,0~31。这些通道提供了flow-through 和fly by的数据传输方式。

在本设计中,使用双缓存区DMA通道设计,如图4所示,当CPU正在处理某一个缓存区数据的同时,DMA控制器可以完成另一个缓存区数据的传输,如此交替下去,则可以提高系统的并行能力,提高音频处理的实时性。

双缓存区驱动程序设计当中,以播音为例,新的音频数据在CPU的控制下先写到缓存1中,此时DMA控制器正在处理缓存2的数据传输。当缓存2的数据全部传完之后,会产生一个DMA中断,该中断通知CPU开始往缓存2里写新的音频数据,与此同时,DMA也继续处理缓存1的数据。这样,由于CPU和DMA没有处理同一段DMA缓存区,就减少了资源访问的冲突,并且能够最大程度上保证音频数据不丢失,提高音频处理的实时性,也提高了系统的并行能力。

本设计中使用MapDMABuffers()函数实现DMA音频数据缓存区的分配,函数主要实现的功能是:分配接收和发送音频数据的DMA缓存区。

结束语

本文分析了嵌入式Windows CE操作系统基于TSC2101音频芯片的音频系统实现的基本原理及其驱动程序模型,并结合具体程序重点描述了DMA双缓存区的实现方法和原理。本设计在实际运用中能够满足音频系统的实时性要求,在实际测试中,缓存区大小设置为0x1000(Bytes),位时钟频率为 2.836MHz,DMA数据传送的数据大小分别在32B、16B、8B的情况下,播放效果均清晰无杂音,达到了预期的效果。

关键字:WindowsCE  TSC2101  音频系统 引用地址:Windows CE下基于TSC2101的音频系统设计

上一篇:基于FIC8120和PoE的IP-Camera设计
下一篇:智能小区和c的系统设计

推荐阅读最新更新时间:2024-05-02 22:43

新数字总线架构降低音频系统成本
汽车制造商 致力于使其下一代的汽车比前代汽车更安全、更智能且更节油。为此,需要在汽车中安装更多的 ECU (电子控制单元),这会导致电子系统的数量不断增加、复杂度也越来越高,以便实现主动噪声消除、互联网连接和车内通信等新功能。随着 ECU 数量的不断增加,连接各种 ECU 所需的电缆的重量和成本 也随之增加。增加的重量会反过来降低汽车的燃油效率,这一点让汽车制造商很苦恼。 汽车制造商必须在提供先进、功能丰富的信息娱乐系统和符合政府发布的燃油效率标准之间取得平衡。减轻现有电缆的重量可大幅提高燃油效率。 现状 传统的汽车音频 ECU 一般通过单根模拟电缆或现有的数字总线架构连接,这两者都存在局限性,效率低、会产生不
[汽车电子]
CSR VibeHub技术助力BRAVEN开发便携式联网音频系统
扬声器设计与制造厂商BRAVEN日前宣布推出全球首款采用CSR公司VibeHub联网音频方案及CSR SyncLock IP的便携式蓝牙与Wi-Fi分布式音频系统。CSR VibeHub平台可同步传输来自多重来源的音频流,因此, BRAVEN Vibe系统使用户能够在家中不同区域放置扬声器并使用移动设备操控享受无与伦比的多房间无线音频体验。 BRAVEN首席执行官Andy Fathollahi表示:“BRAVEN Vibe系统专为多用户、多音源而设计,使消费者能够灵活地在不同房间内放置扬声器,并确保每个房间都能播放想听的音频内容。也就是说,通过部署BRAVEN Vibe系统,一个家庭可同时、同步享受多种音频,例如卧室播放古典乐
[嵌入式]
WindowsCE异常和中断服务程序初探
文摘出处: http://www.bitscn.com/hack/article/200607/42636.html Nasiry 1。中断/异常相量的装入和执行方式。 中断和异常都是异步发生的事件,当该事件发生,系统将停止目前正在执行的代码转而执行事件响应的服务程序。而事件服务程序的入口点就是中断/异常向量所在的位置。arm的中断向量可以是0x0开始的低地址向量,也可以是在FFFF0000位置的高向量地址。winCE下使用高地址作为trap区,所以在CE下arm使用高地址向量。下面我们来了解一下中断/异常向量的安装和执行过程。 在kernelStart的过程中通过程序将如下代码复制到ffff0000的位置. VectorIns
[嵌入式]
音频系统中的A/D和D/A转换器测试
不少用户曾经问过用于音频系统的A/D和D/A转换器的测试方法,现整理如下,供需要者参考。 1.音频系统中的A/D转换器测试 音频系统中的A/D转换器的输入端是模拟信号,输出端是数字信号。数字信号使用总线进行通信,最常用的是I2S。I2S有3条线:DATA,CLOCK/BIT CLOCK和FS。 测试音频系统中的A/D转换器可用音频分析仪完成,比如U8903A。利用U8903A音频分析仪的模拟信号输出功能和I2S信号输入功能可以完成A/D转换器的测试。 图1 测试音频A/D的连接图 U8903A的信号源设置示例:波形选择正弦波(缺省设置),在“WAVEFORM CONFIG”下设置频率1KHZ(
[测试测量]
<font color='red'>音频系统</font>中的A/D和D/A转换器测试
基于免提开发平台的车载信号处理与音频系统
回声消除(AEC)可实现汽车内舒适的全双工免提通话,本文介绍的Clarity CVC-HFK 可提供集成的单扩音器解决方案( OMS)噪声抑制算法。 它支持自适应噪声消除功能,可降低麦克风(传入)信号中的环境噪声,并提取所需的语音,还可向远端用户传输清晰的话音(传出)。 两个因素决定了使用免提蜂窝电话系统的必要性,首先是由于目前的蜂窝电话系统的终端多为手持的,这就给司机造成了不便。司机常常要放下手机两只手驾驶,如转弯等,然后在转回谈话。电话交谈的中断很不方便,甚至还会造成经济成本损失,因为移动电信收费相当高。再一个重要因素就是安全性。不妨设想一下只用一只手操纵方向盘、打着手机的司机。既然司机不能双手操纵方向盘,那么再要什么防抱死
[嵌入式]
争霸32位MCU市场,巨头上演巅峰对决
  就在一些市场调研机构纷纷传来8位MCU市场增长放缓消息的同时,32位MCU却丝毫没有受到任何影响,依然保持着强劲的增长势头。WSTS的统计数据显示,2007年32位MCU市场较2006年增长了13.6%,市场份额达31.9亿美元,与过去五年相比,市场增幅超过一倍,2007年出货量更是占到了全球MCU市场的30.8%。与此同时,受应用需求推动,市场对能实现系统整体低功耗化的产品需求日益加强。提供灵活、高成本效益以及低功耗的解决方案日渐成为一种趋势,而Microchip携其基于MIPS32内核的产品进军32位MCU领域,无疑又引发了一场MCU内核的争夺战,新一轮的酣战正在上演。   在32位MCU内核市场,ARM仍然一枝独秀。
[焦点新闻]
获得WiSA SoundSend认证的Platin Monaco 5.1.2空间音频系统荣获2022 CE Pro最佳产品奖
获得WiSA SoundSend认证的Platin Monaco 5.1.2空间音频系统荣获2022 CE Pro最佳产品奖 领先的音频行业期刊CE Pro将Platin Audio的最新系统评为年度最佳智能家居产品和技术之一 俄勒冈州比弗顿--2022年9月30日—— CE Pro日前在2022年美国智能家居与家电及影音视听展览会(CEDIA Expo)上宣布了2022年CE Pro年度最佳产品(最佳电子系统技术)奖的获奖者,在这些享有盛名的获奖者中,Platin Audio凭借最新推出的、获得WiSA SoundSend认证的Platin Audio Monaco 5.1.2空间音频系统荣获此奖项。 这款新产
[模拟电子]
获得WiSA SoundSend认证的Platin Monaco 5.1.2空间<font color='red'>音频系统</font>荣获2022 CE Pro最佳产品奖
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved