音乐播放器设计实验报告剖析.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
音乐播放器设计实验报告剖析

实验报告课程名称:数字系统设计实验指导老师:成绩:_____________实验名称:音乐播放器设计实验实验类型:设计型一、实验目的和要求(必填)二、实验内容和原理(必填)三、主要仪器设备(必填)四、操作方法和实验步骤五、实验数据记录和处理六、实验结果与分析(必填)七、讨论、心得一、实验目的和要求实验目的:(1)掌握音符产生的方法,了解DDS技术的应用;(2)了解AC97音频接口电路的应用;(3)掌握系统“自顶而下”的设计方法。实验要求:(1)可以播放四首乐曲,设置play、next、reset三个按键。按play键播放当前乐曲,按键next播放下一首乐曲。(2)LED0指示播放情况(播放时点亮),LED2和LED3指示当前乐曲序号。2、个性化要求(1)用键盘上的三个按键P、N、Esc控制乐曲的播放。(2)用SVGA显示乐曲的播放波形。二、实验内容和原理本次实验共可分成mcu、song_reader、note_player、codec_conditioner和ac97_if五个子模块。如下图:1、mcu模块接受按键信息,通知song_reader模块是否要播放(play)及播放哪首乐曲(song)。2、song_reader模块根据mcu的要求,逐个取出音符{note,duration}送给note_player模块播放,当一首乐曲播放完毕,回复mcu模块乐曲播放结束信号(song_done)。3、note_player模块接收到需播放的音符,在音符的持续时间内,以48Hz速率送出该音符的正弦波样品给AC97音频接口模块。当一个音符播放结束,向song_reader模块发送一个note_done脉冲索取新的音符。4、codec_conditioner、ac97_if模块负责与AC97音频系统接口工作。另外,按键处理模块完成输入同步化、防颤动和脉宽变换等功能。设计原理:1、主控制模块mcu的设计根据设计要求,模块mcu的工作流程图如下图所示。系统复位后经RESET状态初始化后进入WAIT状态等待按键输入或乐曲播放结束应答,若有按键输入则转入相应的按键处理状态(NEXT或PLAY),若一曲播放结束则进入结束播放END状态。2、乐曲读取模块song_reader的设计结构框图如下图所示,地址计数器为5位二进制计数器,其中note_done为计数允许输入,状态q为song_rom的低5位地址,song[1:0]为song_rom高两位地址。当地址计数器出现进位或duration为0时,表示乐曲结束,应输出一个时钟周期宽度的高电平脉冲信号song_done。song_reader控制器的算法流程图暂略。由于从song_rom中读取数据需要一个数据周期,所以在流程图中插入NEXT_NOTE转态,目的是延迟一个时钟周期输出new_note信号,以配合song_rom的读取要求。3、音符播放模块note_player的设计note_player的结构框图如下图所示:note_player控制器负责与song_reader模块接口,读取音符信息,并根据音符信息从Frequency ROM中读取相位增量step_size送给DDS子模块sine_reader。另外,note_player控制器还需要控制音符播放时间。音符定时器为6位二进制计数器,beat、time_clear分别为使能、清0信号,均为高电平有效。定时时间为音符的长短(duration_to_load个beat周期),timer_done为定时结束标志。子模块sine_reader的功能及就是利用DDS技术产生正弦样品,其原理框图如下所示:由于Sine ROM只给出四分之一周期的正弦样品,所以地址或数据也需要进行相应的处理,可以直接根据下图设计地址处理器和数据处理器。三、主要仪器设备XUP Virtex-II Pro开发系统、ISE9.2、ModelSim6.0C四、实验数据记录与处理各模块仿真结果如下所示:1、mcu:RESET:000 WAIT:001 END:010 NEXT:011 PLAY:100以state为核心综合分析,首先置为RESET状态,下个时钟周期置为WAIT,play_button置0后状态变为PLAY,之后又是WAIT……按照波形分析过去,发现和流程图是一致的,仿真正确。2、song_reader:先观察整体,再取几小段观察,着重分析state、new_note、song_done等波形,可以发现是符合要求的。3、sine_reader:首先观察曲线是否是和step_size有关的正弦曲线,这一点是满足的。然后将uut中的信号也添加进去,从中抽查一些小段,看sample、sample_out、rom_addr是否满足要求。这才能够初步判断波形正确。

文档评论(0)

586334000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档