当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于Nios II的数字音频录放系统的设计

前言

SOPC( System On Programmable Chip)技术是SOC( System On Chip)技术和电子设计自动化(EDA)技术结合的产物。它可以将处理器、存储器、I/O接口、硬件协处理器和普通的用户逻辑等系统设计需要的功能模块都集成到一个FPGA 芯片里, 构建一个可编程的片上系统[1]。它还具有灵活的设计方式,可裁减、可扩充、可升级,具备系统可编程等功能,是一种优秀的嵌入式系统设计技术[2]。本文研究了一种基于SOPC技术的嵌入式数字音频录放系统的设计方案。系统通过在FPGA芯片上配置NiosII软核处理器和相关的接口模块来实现嵌入式系统的主要硬件结构,并结合嵌入式系统所支持的软件设计来控制音频编/解码芯片WM8731和SDRAM,实现了音频信号的A/D、D/A转换、存储、回放等功能。由于采用了SOPC和DMA控制技术,该系统具有设计灵活、扩展性好和数据处理速度快等优点[3、4]。

1 系统原理和结构

系统结构如图1所示。本系统选用的FPGA芯片是Altera公司最新推出的CycloneII 系列的EP2C35。该芯片具有35000个逻辑单元、672个引脚、475个用户自定义I/O接口、35个嵌入式乘法器和4个锁相环,是一个集成度极高和功能强大的FPGA芯片。在FPGA中设计有NiosII软核处理器和挂在该NiosII系统的Avalon总线上的I2C配置接口模块、串/并转换模块(S/P)、并/串转换模块(P/S)、先入先出存储器模块(fifo_in、fifo_out)、Sdram存储器控制接口(Sdram control)、DMA控制器接口(Dma_in、Dma_out)和用于接收按键信息的通用并行接口(pio)模块等。在FPGA外有音频编/解码芯片(WM8731)、音频数据存储模块(SDRAM)和控制按键(keybord)等。



图1  系统结构图

系统的音频信号采集原理是:WM8731经过I2C配置后,将输入端加入的模拟音频信号进行A/D转换后,成为串行的数字信号。FPGA内的串/并转换模块再将该信号转换成16位宽的并行数字信号。此信号从s/p的输出,并交给先入先出存储器(fifo)进行缓存。当fifo的数据达到其容量的一半时向dma_in请求一次DMA传送。Dma_in接受请求后就执行一次fifo到Sdram之间的直接DMA数据保存。多次重复fifo到Sdram之间的DMA传送,直到采集停止键被按下后,就完成了一段音频数据的采集。

回放原理是:在Dma_out的控制下,通过Sdram控制器将Sdram中保存的音频数据经fifo_out送到并/串转换模块的输入端,经过并/串转换后的串行数字信号再由WM8731进行数/模转换,就还原成为模拟的声音信号。多次重复这种DMA传送操作,直到回放停止键被按下后就完成了一段音频数据的回放。

2 系统硬件设计

系统的硬件主要由FPGA内的NIOSII中央处理器及接口模块和FPGA外的音频编/解码芯片WM8731、存储器和控制键等部分构成。

在系统的硬件设计中,FPGA内部各模块的设计是本系统硬件设计的核心技术。FPGA内部各模块是利用Altera公司提供的QuartusII开发软件和其中集成的SOPC Builder系统开发工具来设计的。SOPC Builder支持NiosII CPU的配置,并支持设计者在该工具所提供的IP库中根据系统设计需要选择相应的接口模块,并加入到NiosII系统中。这样,在极短的时间内就可以完成一个SOPC系统的设计。将这些设计在QuartusII中编译并生成sof格式文件后,下载到FPGA芯片中就形成了SOPC的嵌入式系统硬件平台。
下面主要对NIOSII软核处理器、I2C总线控制接口、串/并转换模块等几个关键模块的设计进行介绍。

2.1  NiosII软核处理器

本系统设计所选择的处理器是Altera公司新近推出的第二代嵌入式NiosII软核处理器系列中的一个。NiosII处理器系列是一个用户可配置的通用32位RISC嵌入式软核处理器集合。它包括三种软核CPU:一种是高性能软核,它的处理能力超过200MIPS,需要占用1800个逻辑单元;一种是精简软核, 用这种软核构造一个完整的CPU系统只需要占用700个逻辑单元;第三种是标准软核,这种软核约占用1400个逻辑单元,性能也介于上两种软核之间。所有软核都是100%代码兼容,设计者可根据需要对上述三种软核进行选择来调整嵌入式系统的性能及成本。由于本设计采用的CycloneII系列的2C35芯片具有35000个逻辑单元,逻辑资源十分丰富,加上系统对CPU的性能要求较高的原因,因此选用了高性能的NiosII软核作为本系统的CPU。

2.2  I2C总线控制接口

WM8731是Wolfson Microelectronics公司生产的一款低功耗的高品质双声道数字信号编解码芯片。该芯片的ADC和DAC的采样频率为8KHZ~96KHZ可调,可转换的数据位长度为16~32位可调。WM8731的内部有11个寄存器。该芯片的初始化和内部功能设置是以I2C总线方式对其内部的这11个寄存器进行相应的配置来实现的。本设计中WM8731工作于主模式,采样频率设为48KHZ,转换的数据位长度为16位。

由于SOPC Builder自带的IP库中并不包含I2C配置接口模块,所以该模块需要设计者根据要配制的芯片的寄存器特点和功能要求进行专门的设计。本系统的I2C接口是作者自行设计,并以IP核的形式通过SOPC Builder连接到系统的Avalon总线上的。WM8731的基地址是34h ,11个寄存器的配置数据如表1所示。其中1Eh为WM8731的软件复位控制寄存器,复位时配置的值为00h,平时为缺省值。

表1  WM8731的寄存器及其参数设置



2.3  串/并转换模块[!--empirenews.page--]

由于WM8731在A/D转换后和D/A转换前的数字信号都是以串行格式与外界进行数据交换的,所以,在WM8731与系统控制核心之间需要加入串/并和并/串转换模块。本文主要对其中的串/并转换模块的设计原理进行介绍。工作于主模式的WM8731与串/并转换模块的连接如2所示。图中,BCLK、和LRCK为WM8731返回给控制模块的位同步时钟和采样时钟,ADCDATA为WM8731输出的串行音频数据流。



图2 主模式的WM8731与串/并转换模块的连接图

本设计中,串并转换模块由两个16位的移位寄存器构成,分别对左声道和右声道的位数据流进行串/并转换,电路构成如图3所示。两个移位寄存器inst7和inst8由LRCK和LRCK的非信号使能,当LRCK为低电平时,移位寄存器inst8工作,对左声道的数据流进行串并转换,当LRCK为高电平时,移位寄存器inst7工作,对右声道的数据流进行串并转换。



图3 移位寄存器电路图

3 系统软件设计

本系统的软件是在Altera公司提供的软件集成开发工具IDE中,以C语言形式,在硬件抽象层(HAL)函数支持下设计的。系统的软件流程图如图4所示。系统启动后,先进行初始化操作,初始化程序主要完成WM8731的寄存器配置、初始化DMA通道及清采集FIFO缓冲器。随后,系统进入主循环状态,并检测按键。当检测到SAVE按键时,系统先通过I2C配置WM8731为录制时需要的状态,然后清FIFO缓冲器,随后启动DMA接收通道,开始保存数据,直到一次DMA传输结束。当检测到播放按键被按下时,系统通过I2C配置WM8731为播放时所需要的状态,并进入播放程序。当系统检测到停止按键被按下时,设置播放标志位为STOP,并在一次DMA完成后,自动停止播放。



图4 系统软件流程图

4 结束语

本设计在Altera公司最新推出的CycloneII系列的EP2C35芯片上进行了软、硬件调试,功能全部正常。由于系统设计中采用了DMA控制下的FIFO和SDRAM之间的直接高速数据传输技术,有效地解决了音频信号的高速A/D、D/A转换及处理过程中对CPU资源长时间占用和系统功能扩展时对PCU资源更多需求的矛盾,使得本设计在系统功能扩展上具有极大的潜力。再加上SOPC技术在软、硬件设计上的可裁减和很方便移植等优点,本设计可以作为一个子系统应用在更大型的系统设计中,例如嵌入式网络音、视频信号处理等,有很好的应用前景和科研价值。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭