完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
威廉希尔官方网站
是SOC(System on Chip)威廉希尔官方网站
和电子设计自动化威廉希尔官方网站
相结合的一种全新的嵌入式系统英国威廉希尔公司网站
,为设计者提供了一个可以快速开发设计及验证的系统设计平台,用以搭建基于总线的系统。
|
|
相关推荐
2个回答
|
|
系统结构设计
威廉希尔官方网站 是SOC(System on Chip)威廉希尔官方网站 和电子设计自动化威廉希尔官方网站 相结合的一种全新的嵌入式系统英国威廉希尔公司网站 ,为设计者提供了一个可以快速开发设计及验证的系统设计平台,用以搭建基于总线的系统。它包含了一系列的模块,例如NiosⅡ处理器、存储器、总线、JTAG等IP核,还有包含操作系统内核的嵌入式软件开发工具。它可以将处理器、存储器、I/O接口、硬件协处理器和普通的用户逻辑等功能模块都集成到一个FPGA芯片里,构建一个可编程的片上系统。 在系统结构上数字音频AGC系统的设计主要包括3个层面:最底层是硬件层面,即物理硬件电路的原理图设计,包括各功能IC的外围电路设计;中间层是SOPC系统层,其设计主要有NiosⅡ软核处理器的配置和添加,选择各种可定制的外设IP核和自定义所需模块,将定制好的各个外设模块与Avalon总线进行连接,并为分配外设地址及中断,最后经编译、综合生成可在FPGA内实现相应功能的SOPC系统模块;最上层的是软件层,主要是NiosⅡ软核处理器运行的软件程序,是用C/C++代码编写的,包括μC/OS-Ⅱ实时操作系统,设备的驱动程序和应用程序。 本系统选用的FPGA芯片是Altera公司所推出的CycloneⅡ系列的EP2C20Q240C8。该芯片采用90 nm工艺制造,最大可用I/O管脚142个并内嵌26个乘法器块,支持使用Altera公司的SOPC Builder工具嵌入NiosⅡ软核处理器。系统整体架构,如图1所示。 2 数字音频AGC算法的设计与实现 嵌入式数字音频AGC系统的核心就是音频AGC算法的设计,音频AGC是音频自动增益控制算法,是一种根据输入音频信号水平自动动态地调整增益的机制,AGC算法的好坏直接反映在处理后输出的音频听觉感知效果。 2.1 算法基本思想 文中提出一种多参数融合带反馈机制的音频AGC处理算法,在保证输出电平满足条件的情况下,能有效解决传统AGC中过冲或过衰现象,并能够抑制背景噪声的提升,能根据人耳听觉特性输出音量稳定平衡的音频信号。 用yi(n)代表经过AGC处理的第i帧数字音频信号;xi(n)代表这一帧原始的数字音频信号;Gi表示这一帧的音频增益因子,音频AGC处理可以用如式(1)表示 2.2 关键特征参数提取 计算音频增益因子Gi的关键是对当前数字音频的状态判断。由于人耳对音量的主观感觉是从声音响度上来体现的,而响度是由发声体振动幅度的大小来决定,并且人耳对不同频率声音的感应是不平坦的,所以人耳感知的声音响度是频率和声压级的函数曲线。基于人耳的响度感知特性,AGC算法中音频增益因子Gi的计算需要综合考虑声音的振幅、短时能量和频率这3个特征。 经过数字化的音频信号实际上是一个时变信号,为了能对音频信号进行分析,可以假设音频信号在几十ms的短时间内是平稳的。为了得到短时音频信号,要对音频信号分帧处理,分帧是连续的。为避免AGC系统处理后的因音频分帧延迟带来的画音不同步现象,本设计将分帧定为20 ms。数字电视的音频采样率为48 kHz,所以一帧内的音频样值数有960点。 音频信号的振幅可以用峰值表示,即由一帧音频信号内的绝对值最大项来表示,用Pi代表第i帧数字音频信号xi(n)的帧内峰值,那么 短时能量可以有效判断信号幅度的大小,音频信号的短时能量Ei定义如下 短时能量由于对信号进行平方运算,考虑到处理器的性能和实时性的保证,可以采用绝对值之和代替平方和来表示短时能量的变化,使运算简化,其公式为 短时过零率是指每帧内信号通过零值的次数,对于数字音频信号实质上就是一帧信号采样点符号的变化次数,由于采样频率是固定的,因此短时过零率可以在一定程度上反映音频信号的频谱特征,用作一种音频信号频率的粗略估计。短时过零率Zi表示为 提取音频中以上3个关键特征参数就可以作为音频增益因子Gi的计算和判决的条件。 |
|
|
|
2.3 反馈机制的实现
在前馈处理中当输入的第i帧数字音频信号xi(n)的帧内峰值Pi超过用户设定的峰值电平门限值Ppeak信号就会被瞬间衰减,增益因子变小。而当输入的第i帧数字音频信号xi(n)的帧内峰值Pi低于用户设定的提升电平门限值Pact并且高于用户设定的噪音电平门限值Pnoise信号就会被瞬间提升,增益因子变大,低于噪音电平门限值Pnoise的信号就不会被提升。 前馈机制能在音频信号突变导致帧内峰值溢出或过小时,迅速改变增益因子,用非线性的变化将音频稳定在所设定的动态范围内(峰值电平门限Ppeak和提升电平门限Pact之间)。而新增加的反馈机制能通过判断处理后的短时能量调整增益因子Gi+1,使音频信号变化稳定,在一个较宽的时间尺度上均衡响度。AGC算法中计算增益因子的具体流程,如图2所示。 在反馈机制中使用α归一化滤波器对满足条件的输入音频信号和上一帧的增益因子Gi调整计算新的增益因子。 α 归一化滤波器可以简单表示为 为了避免增益因子的剧烈波动,需要加大增益因子Gi的权重值α,而权重值α的大小决定了滤波器归一化的收敛速度,|1-α|越大,则收敛速度越快。权重值α的计算需要综合参考短时过零率Zi、处理前的短时能量Mi和处理后的短时能量。在音频剧烈变化的时候,增益因子仍然能够收放自如,稳定平衡音频信号的输出。 2.4 噪音抑制处理方法 在AGE中对噪音的抑制是一个重要的部分,噪音主要是音频信号间的静音噪音和AGE处理中产生的噪音。对静音噪音的抑制主要靠噪音电平门限的设定,当输入的第i帧数字音频信号xi(n)的帧内峰值Pi低于用户设定的噪音电平门限值Pnoise时,就将该帧的增益因子Gi调整为1,不进行放大处理。当输入的音频峰值连续低于噪音电平门限的时间达到静音时间ts则将输出音频静音,这样就可以抑制噪音而不影响音频输出质量。 AGC处理中一个重要问题是,在音频分帧的交界处的样值点会因为增益因子Gi的突然改变而产生原本连续信号样值的突变,当分帧为20 ms时,AGC处理效果相当于产生50 Hz幅度不定的阶跃信号噪音。噪音信号Unoise的大小为 当xi-1(960)和xi(1)相差较大时会产生较大的影响。在本设计中为了消除该噪音,改为在每一个处理帧开始后的第一个过零点进行增益因子的更新。此时噪音的影响为 由于音频信号样值的连续性,在过零点处xi-1(n-1)和xi-1(n)均趋向于O,因此unoise也趋向于0。由于人耳的可听声音频率范围在20 Hz~20 kHz,在音频采样和A/D转换时会滤除人耳的可听声音频率范围外的频率分量,而每个周期内都有两个过零点,所以增益因子的更新速度不受影响。由此则AGC处理带来的噪音也被很好的抑制。 2.5 仿真结果及分析 为了验证该算法的正确性和有效性,采用Matlab对该数字音频AGC算法进行仿真。仿真结果如图3所示。 在仿真中输入一段声音忽大忽小的数字音频,从经过AGC处理后的数字音频输出来看,大音量的音频信号被有效衰减,小音量的音频信号被有效放大,正常音量的音频信号几乎没有变化。该段音频长度为6 s,增益因子在此期间可调整300次,该算法的增益因子调整速度可以满足音频剧烈变化时的使用需求。对噪音的抑制也起到了很好的效果,人耳的实际听觉感知达到了满意的效果。 3 软件层设计 目前比较流行的嵌入式操作系统主要有VxWorks,Windows CE,uCLinux,μC/OS-Ⅱ等。μC/OS-Ⅱ的规模较小、实时性和可靠性较高,能够满足嵌入式数字音频AGE系统对实时性的要求,考虑到NiosⅡIDE开发环境对μC/OS-Ⅱ的良好支持,故操作系统选择μC/OS-Ⅱ。μC/OS -Ⅱ是一种可移植、可固化、可裁减、占先式的多任务实时操作系统内核。它通过为每个任务分配单独的任务堆栈来保存任务工作环境,提供任务管理与调度,任务间的同步、互斥与通信,时间和中断管理、内存的动态分配等多种系统服务。 系统运行时,首先进行系统初始化操作,即初始化所有数据结构,分配堆栈空间,然后建立任务间通讯的信号量或者消息队列,进而创建任务,并且分配不同的优先级,所有任务被置于就绪态,系统从优先级最高的任务开始执行。 软件设计主要包括嵌入式操作系统μC/OS-Ⅱ的移植、LCD显示控制器和自定义音频模块的驱动程序设计、算法设计实现3个主要部分。嵌入式音频AGC系统根据功能划分主要有以下4个任务,如图4所示。 (1)系统初始化任务,主要是用以初始化整个嵌入式音频AGC系统,包括初始化各种系统变量、LCD控制器、键盘、自定义音频接口模块等系统模块,此外还担负着创建其他任务和信号量的任务,是系统正常运行必不可少的一环,该任务在系统中有最高的优先级。在正常初始化系统以后将该任务删除以节省系统开支。 (2)音频AGC处理任务,对自定义音频接口的输入音频进行AGC处理,配合自定义音频接口的驱动程序将处理好的音频进行输出。该任务是嵌入式音频AGC系统的核心任务,在系统初始化任务完成并删除后成为系统内优先级最高的任务。 (3)键盘输入响应处理任务,对PIO输入的按键信息进行相应处理,如果有改变参数设置等重要信息要通过信号量及时反馈给音频AGC处理任务,同时负责输出要在LCD上显示的内容,通过邮箱信号量发送给LCD显示任务。它的优先级比LCD显示任务高。 (4)LCD显示任务,将接收到的内容配合LCD控制器驱动程序进行LCD的显示输出。 4 结束语 本设计采用SOPC威廉希尔官方网站 ,利用FPGA实现SDI接口逻辑,移植μC/OS-Ⅱ实时操作系统为嵌入式应用软件运行平台,可以实现与广电设备的无缝接合。通过设计采用一种适于实时性的多参数融合的AGC算法对数字音频信号进行AGC处理,实现了具有抑制一定噪声能力的嵌入式数字音频AGC系统。测试表明该系统达到设计预期目标,改善了传统音频AGC处理中的一些缺陷,输出音频稳定平衡,完全满足实际需要,可广泛应用在数字演播室中的数字音频实时AGC处理上。 |
|
|
|
只有小组成员才能发言,加入小组>>
663 浏览 0 评论
1083 浏览 1 评论
2456 浏览 5 评论
2784 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2619 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
642浏览 9评论
639浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
769浏览 6评论
613浏览 5评论
654浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 22:32 , Processed in 0.824899 second(s), Total 52, Slave 43 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号