您的当前位置:首页正文

基于FPGA的音频存储与播放系统

2021-09-05 来源:钮旅网
器件与电路 囿 囿响圈@60,@凹6 J 文章编号:1002—8684(2011)04-0025-03 基于FPGA的音频存储与播放系统木 ·系统介绍· 洪传荣,唐磊,朱广信,徐红,常丽萍 (浙江工业大学信息工程学院,浙江杭州310014) 【摘要】设计了一种基于FPGA的音频存储与播放系统,通过FPGA实现了I。c,I S,SPI接口时序,并完成了I c,sD 卡读写控制器的设计。基于FPGA芯片,结合sD卡和音频编解码芯片,最终实现了系统功能。总体设计可充分发 挥FPGA所具有的灵活性好、实时性能高及并行处理能力强的特点。 【关键词】FPGA;SD卡;音频编解码芯片 【中图分类号】TN912 【文献标识码】A Audio Storage and Play System Based on FPGA HONG Chuanrong,TANG Lei,ZHU Guangxin,XU Hong,CHANG Liping (College of Information,Zhejiang University of Technology,Hangzhou 310014,China) 【Abstract]A FPGA—based audio storage and play system is designed.I2C,I2S,SPI intefrace timing are imr,lemented by FPGA,and the 12C,SD card reader controller are completed.Based on FPGA chip,with SD card and audio codec chip,the function of system is ultimately achieved.The design can take advantage of the features of FPGA,which is flexibility,high performance real—time and parallel processing ability. 【Key words】FPGA;SD card;audio codec chip 1 引言 经过了十几年的发展,FPGA在数字系统现场可 编程集成技术中的应用越来越广泛 。FPGA不仅可 以解决电子系统小型化、低功耗、高可靠性等问题, 而且其开发周期短、开发软件投入少、芯片价格不断降 低。FPGA以其特有的优势,在未来现场可编程技术 中前景光明。 2.0 GB的SD卡。音频芯片主要完成对模拟信号的A/D 转换,并在播放音乐时对数字音频进行D/A转换。SD 卡的作用是储存数字音频信号,并在播放音乐时给出 相应的数字音频信号。 FPGA内部所要实现的模块有,控制器、音频控制 和数据接口、SPI接口、SD卡读写FIFO。控制器通过 I2C接口初始化音频芯片,通过SPI接口实现SD卡的 读写操作。I s接口是音频芯片数据通道,音频芯片 所有数据都经过该接口输入输出。由于SD卡读写速 度和音频播放、存储的速率相差不大,所以在读写SD 随着人们消费水平的提高和全社会信息化、数字 化程度的加快,数字化音频处理被广泛应用于各个领 域。如今SD卡容量越来越大,价格越来越低,用SD卡 存储数字音频是比较经济的选择。音频存储与播放 系统的实现方案也有很多选择 。笔者基于FPGA实 现对SD卡的读写,并在此基础上结合音频编解码芯 片TLV320AIC23B,完成了音频存储与播放系统。系 卡时需要读写FIFO作为数据缓存。本系统在Atera Cyclone II EP2C35 FPGA芯片上验证实现,试验结果 证明该系统能实现所设计的功能。系统结构框图如图 1所示。 统集成度高、可靠性强、存储容量大,并且实现成本低。 2系统框架设计 本系统基于FPGA实现,FPGA外围芯片用到一 片音频编解码芯片TLV320AIC23B,以及一张容量为 【基金项目】浙江省自然科学基金项目(Y1090338) 堕妻熊 垫 生篁堑堂蔓 塑囫 器件与电路 固旷 §圃响 @6。,@ 6毡 3硬件接口实现 系统涉及到的硬件接口有:SPI接口、I s接口、I2C 设计控制通道选用I c模式,数据通道选用I s模式。 I2C总线是一种由飞利浦公司开发的串行总线,它 接口。所有接口在FPGA芯片里通过编程实现。 3.1 SPI接口实现 SD卡有两种总线模式,即SD总线模式与SPI总 线模式。SD总线模式采用4条线并行传输,数据传输 速率高,但是传输协议过于复杂。本系统对sD卡读写 速度没有要求,SP1只有一条数据线,传输协议简单,易 于实现。因此,对SD的操作选用SPI总线模式,SD卡 与SPI的端口连接如图2所示。 SPI总线技术是MOTOROLA公司推出的一种同 步串行总线接口。SPI总线主要通过三根线进行数据 传输,包括同步时钟线SCLK、主机输入,从机输出数据 线MISO、主机输出/从机输人数据线MOSI。另外,它 还有一条低电平有效的从机片选线cs,片选信号以及 同步时钟脉冲由主机提供。SPI总线模式的数据是以 字节为单位进行传输的,主机与SD卡的各种通信都 由主机控制。 用FPGA实现SPI接口,是用硬件描述语言Verilog 编写能生成相应电路的代码,使其实现SPI接口时 序。音频存储和播放无需同时进行,因此本设计的 SPI接口可以设计成半双工模式,读写切换通过读写 使能控制。SD卡的SPI总线,在片选信号cs为低电平 时,sD卡读人数据在SPICLK的上升沿输入锁存,输出 数据也是在上升沿。由图3可知,仿真符合sD卡SPI 时序。 3.2音频芯片控制、数据接口实现 音频芯片TLV320AIC23B控制通道有两种可选模 式,即:SPI模式和I。c模式。数据通道可选模式有4种, 即:左判断模式、右判断模式、DSP模式和I2S模式。本 国垒塞蕉箜型】生蔓墅鲞箜 塑 以两根线实现完整的全双工同步数据传输,具有简单 和有效的优点。物理上I2c总线一共有丽条信号线和 一条地线,两条信号线分别为数据线SDA和时钟线 SCL,并且都是双向传输。每一个挂在总线上的终端 设备都有其在总线上的唯一地址。并且,每一个终端 都可以作为主机(Master建立信道)或是从机Slave应 答建立的信道)。FPGA通过I c接口配置音频芯片, 使音频芯片在所配置的参数(采样率、工作模式、音量 大小等)下工作。 I c总线数据的有效性,SDA线上的数据必须在时 钟为高电平时保持稳定,数据线的电平状态只有在 SCL线的时钟信号为低电平时才能改变。当SCL线是 高电平时,SDA线从高电平向低电平跳变时表示起始 条件,当SCL是高电平时SDA线由低电平向高电平跳 变时表示停止条件。由图4可知,仿真结果符合 时 序,接口能正确传输数据。 I s总线是飞利浦公司为数字音频设备之间的音 频数据传输而制定的一种总线标准。I S总线拥有三 条数据线进行数据传输:一条双向数据传输线,一条 声道选择线和一条时钟线。在数据传输过程中,发 送端和接收端具有相同的时钟信号。发送端作为主 导装置时,产生位时钟信号、声道选择信号和数据。 FPGA内部需要设计能和音频芯片通信的I2S接口,音 频数据的存储与播放都要通过该接口进行。 本设计中把音频芯片采样时钟设置为48 kHz,采 样位数为16位。左右声道切换时钟等于采样时钟 LRCLK(48 kHz),数据位时钟BCLK为12MHz,所以串 行数据线上传输的是16位有效数据,其余数据位时钟 周期对应的数据线上的数据为0。由图5可知,仿真 结果符合时序要求。 4 系统控制器设计 系统控制器包括音频芯片配置控制器和sD卡 器件与电路 囿 岛囿响圈@6 @凹6 0 地发送初始化(CMD1),直到主机收到SD卡的响应为 Olh,表明SD卡完成初始化过程。图7是通过Signal— Tap II逻辑分析仪观察到的主机发送CMD0时SD卡 的响应图。 控制器。配置控制器实现初始化TLV320AIC23B,SD 卡控制器由SD初始化控制器和SD读写控制器组 成,其中SD初始化控制器初始化SD卡,SD读写控制 器读写SD卡。 4.1音频芯片配置控制器 音频芯片TLV320AIC23B内部有1 1个寄存器,该 芯片的初始化以及工作时的工作状态和功能都是通过 I C总线方式对其内部的这1 1个寄存器进行相应的配 置实现的。芯片配置数据存储在查找表中,该表中的 数据为l6位,包括TLV320AIC23B的寄存器地址和寄 存器数据。逐个写入寄存器的值,直到11个寄存器配 置完为止。每个寄存器的配置分三步,当前寄存器配 置完成后再配置下一个寄存器。第一步,从查找表中 取出数据并将I C写使能置1,数据开始写入相应的寄 存器。第二步,等待数据传输结束使能,未收到使能返 回第一步,收到使能进行第三步。第三步,将查找表地 址加1准备下一个数据传输。到1 1个寄存器全部配置 完成后,结束工作。控制器状态机状态转移图如图6 所示,通过环回实验验证,配置控制器能使音频芯片正 常工作。 4.2 SI)卡控制器 SD卡控制的设计是整个系统的关键,包括初始化 控制器和读写控制器。在对sD卡进行读写操作前, 先要对sD卡进行初始化。sD卡接口选的是SPI总线 模式,所以初始化要使sD卡进入SPI模式。sD卡初 始化的时钟频率为0~400 kHz,SD卡上电后,主机必须 向SD卡发送74+个时钟周期,以完成SD卡上电过 程。再发送复位命令(CMD0),若收到SD卡响应为 01h,则说明sD卡进入SPI模式。此时,主机可以不断 SD卡的读过程和写过程类似,所以只论述读过 程。SD卡的数据传输主要通过块读写来实现,块长度 默认为512 byte,即SD卡的一个扇区。块读取时,可 发送命令CMD17,接收到的应答信号为00h。这样就 可以直接接收数据了,接收到的数据的第1个字节为 数据令牌FEh,后面的为接收到的数据,当输出口变为 高电平时,表明读操作完成。图8所示为SD卡单块数 据读操作流程图。 SD卡初始化和读写的时钟频率相差很大,因此把 初始化控制器和读写控制器分为两个模块实现。SD 卡先通过初始化控制器对sD卡初始化,初始化成 功后初始化控制器停止工作并产生相应使能使读写 控制器开始工作。通过验证,该控制器能初始化sD 卡,对sD卡进行读写操作。图9所示为SD卡控制器 框图 (下转第31页) 堕妻鲢 生蔓堑鲞蔓 塑囫 器件与电路广] 圈 §囿响圈@6 @凹6 J l- ‘t |%|g§《 AMP 放大 AD数据转化 DA数据转换 一 删 L ”I _“ l 月 魏糍 郦 瓣蹄舔潍罐荤嚣肇罄藉 瓣 黝 咄 。 1日Hn目曲l 唧 I目蛐明曲眈朋腿Ⅱ朋腿朋目衄肋I明柚刚 衄 .I..¨ 曩 硝疆粼麟蝴勰勰礤铺罐赣器强嚣霪辞黪糍 鳃ll 挪缴黼罐箨嚣嚣舞霏蓑蘼 岛“ 1I茸 g 酯辩鞯群黼 端糟帮糙鳍蘸嚣鬟静罐 黜 遗‘ 船 h ● l h ll l 鞘辩蝴鼎勰#黜#蜥醑藕鲻鹱巍蓬霹薛醢 鞲 熊端箍藕臻馥嚣錾藜鑫嚣嚣 毽eI- 矗·^.州 ‘-· ● l_ 6麟丽 § 《 《 黼 瓣 黼麟涩 赣黎霆蘸露醛辩 鼬黼 ●●llNItoot p箱^’·州… O目 匿 i(·时序仿真结果(截  匿 i) 音频模拟信号,图8是DSB双边带调制后的包络波 2008(7):5-9. 形。在声频定向装置中,该平台快速实现了数字信号 的DSB双边带处理,将低频的模拟音频信号调制为高 频信号,送给换能器,超声波在空气中传播时自解调 出可听声信号,实现声音信号的定向传输。 【21 YANG Liwei,XU Limei,XU L,et a1.Novel power management of audio beam system with specific corrll— gated loudspeaker【C]//Internationa1 Conference on Au— dio,Language and Image Processing.Shanghai:[s.n.】, 2008(7):40—44. [31陈敏,徐利梅,黄大贵,等.声频定向扬声器的研究进展 『J].电声技术,2006(11):17—22. 【4】POMPEI F J.The i1se of airborne ultrasonic for generat— ing audible sound beams[J].Audio Eng.Soc.,1999,47 (9):11. [5】 WESTERVELT P J.Parametric acoustic array[J].Jour— nal ofAcoust.Soc.Am.,1963,35(4):535—537. 【6]李学生,徐利梅,陈敏,等.基于ADSP—BF533的声频定 向算法实现[J].微计算机信息,2006,22(14):176—178. 参考文献 [1】 CHEN M,XU L,CAO Y,et a1.Research on an im. proved amplitude modulation method of audio direc— [7】 陆志梁,戎宗仁.模数和数模转换器【M].北京:电子工业 出版社,1988. 作者简介 tional loudspeake C】/ Internatjonal Conference on Au. 熊道云,硕士,主要研究方向为模式识别与智能系统。 【责任编辑】史丽丽 【收稿日期]2OLO—II一23 dio,Language and Image Processing.Shanghai:fs.n.】, (上接第27页) 5 结束语 通过在FPGA开发板上验证,基于FPGA的音频 存储与播放系统,能很好地实现所设计的功能。本系 闻,胡燕祥,刁岚松,等,译.北京:电子工业出版社, 2009. 【5]张洪涛,莫文承,李兵兵.基于SPI协议的SD卡读写机 制与实现方法『JI.电子元器件,2008,10(7):42—44. 16 沈华.基于FPGA的I6J2C主控器的设计与实现 .航空 计算技术,2007,37(6):109—1 10. 统能准确地存储音乐,由系统播放的音乐,通过试听 测试,效果很好。 参考文献 [1]吴继华,王诚.Ahera PFGA/CPLD设计(高级篇)【M1.北 作者简介 洪传荣,硕士研究生,主要研究方向为集成电路系统设计与 京:人民邮电出版社,2010. [2】朱艳菊,骆扬.基于SOPC的音乐播放系统[J].电声技 术,2010,34(7):34—36. 实现; 唐磊,硕士研究生,主要研究方向为音频信号处理及应用; 朱广信,讲师,主要研究方向为微电子: 徐红,讲师,主要研究方向为电路与系统设计; 常丽萍,副教授,主要研究方向为通信与信号处理。 【责任编辑】史丽丽 【收稿日期】2010—10—15 [3】刘国倔,张屺,王跃科.基于DSP的语音录放、存储及传 输系统『J1.电声技术,2002(111:23—26. [4 帕尔尼卡.Ver4】ilog HDL数字设计与综合【Mi.2版.夏宇 111妻熊童 Q 生篁堑鲞篁 塑国 

因篇幅问题不能全部显示,请点此查看更多更全内容