声效芯片CS4235在DSP的嵌入式系统中的应用
摘要:通过分析Windows Sound System兼容声卡和PC机ISA总线的接口原理,将其中的声效芯片CS4235应用到基于DSP的嵌入式系统中,极大地改善了系统的音质;采用DMA控制器8237A实现DSP与CS4235的硬件接口,遵循PnP协议解决DSP对CS4235的资源配置以及寄存器读写等软件接口问题;最后给出CS4235在基于DSP的全数字化语言学习系统中的具体应用。
关键词:CS4235 DSP DMA PnP
引 言
声卡技术是多媒体计算机技术的关键技术之一,(凹丫丫范文网fanwen.oyaya.net收集整理)它的出现使得计算机更富表达力。目前,由于采用的录放音芯片结构简单、采样率过低而使得嵌入式系统中的音质效果比较差,远远满足不了人们对高档生活、学习用嵌入式系统的要求。如果能将声卡技术应用到嵌入式系统中,由于声卡的强大功能,必将使整个系统的声音质量上升一个新的台阶。通过分析,WSS(Windows Sound System)兼容声卡和PC机ISA总线的接口原理,我们将其中的声效芯片CS4235应用到基于DSP的嵌入式系统中。不用现成的声卡而利用其上的声效芯片是因为这样做设计起来更灵活方便,可根据系统需要增删相应的功能;不用MCS51系列而采用DSP,是因为对声卡操作需要太多的系统资源,MCS51并不具备此能力,否则硬件接口电路将相当复杂。
1 CS4235原理与结构
1.1 声卡工作原理
图1示出了声卡的基本工作原理:主机通过总线将数字化的声音信号以PCM的方式送到数模转换器(D/A),将数字信号变成模拟的音频信号;同时又可以通过模数转换器(A/D)将麦克风或CD的输入信号转换成数字信号,送到计算机进行各种处理。
1.2 CS4235功能结构
WSS是Microsoft公司为统一声卡的标准,最终为应用提供方便而提出的Windows 环境下多媒体扩展定义的一个音频子系统标准,包括硬件平台和软件接口[1]。CS4235就是一种适应于WSS并且提供了ISA总线接口的声卡核心芯片,除了声音的采集和播放外,其它控制全部依赖于主机;它占用较多的主机时间,但成本比较低。CS4235的功能框图如图2所示。从图2中可以看出,CS4235是一个完整的音频子系统集成电路,提供了16位立体声ADC及DAC、片内可重构数字滤波器、可编程增益值及衰减值的模拟和数字混合器、可选串行接口、具有同时录音和播放能力的全双工通道。CS4235的文档说明见参考文献[2]。
限于篇幅,这里不介绍CS4235的模拟硬件部分,而主要研究CS4235与DSP的数字硬件接口问题。由于TMS320F206(简称F206)是一种低价格、高性能的16位定点运算数字信号处理器(DSP),性价比极高,目前已成为高档单片机的理想替代品,在通信、语音处理、军事、仪器仪表、图像处理等领域得到了广泛的应用[3],因而系统中选用F206作为DSP。CS4235提供的8位并行接口与ISA总线兼容,是否也与DSP的外部扩展总线兼容呢?表1中列出了CS4235和ISA总线接口的信号引脚及简单描述,相应地也列出了F206的对应引脚。从表1可以看出,要实现DSP对CS4235的直接操作,DSP系统必须提供上述ISA总线信号。DSP芯片一般可提供数据信号线、地址信号线、I/O读写信号线和READY信号线,同时还拥有多个中断输入引脚;但并不直接具备DMA功能引脚,这给DSP与CS4235之间的接口带来了不便,也正是本文所要解决的主要问题。
表1 CS4235和ISA总线接口的信号引脚
IRQE=IRQ12,IRQF=IRQ15,IRQG=IRQ10 《声效芯片CS4235在DSP的嵌入式系统中的应用》