一、课题来源
本课题来自指导老师自拟题目。
二、课题研究的目的、意义
MP3(MPEG-Ilayer-III)标准以其高品质、低码率的特点迅速成为通用音频编码标准,便携式播放器都将MP3播放作为最基本功能。传统的便携式MP3播放器是基于CPU+解码芯片的结构,由于其硬件组织方案和连接方案是限定的,硬件“设计”只能流于拼装和连接。要想对系统功能有大的升级或扩展,就必须采用更好的核心器件、设计全新的硬件系统。
随着SOPC技术的发展,基于SOPC硬件的可设计性能使得设计者能够更好地满足用户的目标需求。FPGA芯片有较强的灵活性,能够进行编程、除错、再编程和重复操作,可以充分地进行设计开发和验证,节省了产品开发时间;当电路有少量改动时候,更凸现出其优势,其现场编程能力可以进行系统升级,极大地提高了产品的性能,延长了产品寿命。NiosII系列软核处理器是Altera的第二代FPGA嵌入式处理器,其性能超过200DMIPS,具有更高水平的效率和性能;NiosII系列支持创建256个专用指令,使得设计者能够细致地调整系统硬件以满足性能目标;同时,NiosII系列具有60多个外设选项和完善的软件开发套件,使开发者能够容易地搭建专用的处理器系统、选择合适的外设,获得最合适的处理器、外设和接口组合。
本课题拟将基于NoisII的开发板使用Altera的FPGA工具QuartusII实现MP3解码器的设计,同时论证SOPC设计理念、软硬件协同设计方法等对电子电路设计的重要意义。
三、课题的国内外研究现状和发展动态
一直以来,在开发一个典型的系统时,设计人员仍不得不采用各种昂贵的,分立的模拟器件配合可编程逻辑器件或者混合信号的ASIC作为解决方案。而SOPC是具有所有这些属性的现成部件,利用它可以方便地选择器件从而构成一个系统,同时可以根据系统的需要对处理器的资源进行重新配置。SOPC的设计技术集中体现了现代计算机辅助设计技术、EDA技术和大规模集成电路技术,它融合了SOC和FPGA的技术,同时在ASIC和可编程器件之间找到一个折衷点。
美国的Altera公司于2000年最早提出了SOPC技术和相应的开发软件,并成功推出Nios和NiosII,在Cyclone等系列上得到了广泛的应用,Xilinx、ARM等可编程器件厂商都相继推出了自己的SOPC产品。SOPC技术的发展关键是对特定器件IP核的设计以及IP核的重用,因此与传统方法相比,SOPC的设计方法逐步由以功能设计为基础的传统流程转变到以功能组装为基础的全新流程。
现如今,SOPC技术已经被广泛应用于许多领域,成为了现代电子技术最有时代特征的典型代表。以SOPC为核心的电子产品高速发展,SOPC也将进一步扩大适用领域,将复杂专用芯片挤向高端和超复杂应用。未来一段时期,SOPC是嵌入式应用的主要形态,是各相关学科的交汇点,随着学科的相互交融的不断深入,SOPC技术将有更大的飞跃。
目前便携式MP3常见于专用解码芯片、DSP或基于ARM芯片几种类型。CPU加解码芯片的设计方式通常采用51系列或其他8位低档CPU作为主控制器来实现通讯、存储器管理等功能,其优点是开发较为简单、上市快,缺点是系统无法升级,难以适应新的音频压缩格式,系统成本也相对较高;基于DSP的MP3设计方案,采用了同一个DSP完成所有的功能,只需外接音频DAC即可;此种设计方法的优点是系统升级能力强,可以兼容多种音频压缩格式甚至未来的音频压缩格式,系统成本较低,缺点是开发难度较大,设计者需要移植MP3的解码算法到相应的DSP芯片中。SOPC 方案的优势在于系统功能改进的灵活性,在不改变硬件平台的情况下,可以方便对系统进行增删和优化,降低了系统成本,这是传统设计方案无法达到的。
四、课题的研究内容、拟采取的技术方案或研究方法
本课题研究的主要内容是基于NoisII的开发板,使用Altera的FPGA工具Quartus II实现MP3解码器的设计,在工程上建立硬件,使用C语言实现MP3解码程序,使其具有播放器的一般功能,并在这个嵌入式系统环境中使用最优化的方案加速解码运算。
本课题的开发将分为四个阶段进行:
第一阶段:系统分析阶段。根据产品电路系统的功能特点、性能指标、功耗成本等因素确定系统的软硬件结构与配置,Nios系统的硬件结构及各个软硬件模块。
第二阶段:硬件设计阶段。首先,借助SOPC Builder选择合适的Nios II处理器,并定制相应功能参数,分配地址,生成系统;然后,在Quartus II中建立工程,把Nios II系统加入到原理图中,设置器件型号,分配影响,设置时序约束;接着在Quartus II中进行工程编译,对SOPC Builder生成的系统进行布局布线,合成网表,生成FPGA配置文件; 最后使用USB Blanster下载电缆,将配置文件下载到目标板上。
第三阶段:软件设计阶段。首先要确定软件的模块结构图,将键扫描模块、文件信息读取模块、OLED显示模块、MP3 文件读取模块、MP3 解码模块、MP3 播放模块等模块合理布局;其次要设计模块的程序流程、算法,画出流程图;采用NiosII IDE,利用C语言编写各模块的代码;最后根据总流程图整合各模块代码。
第四阶段:设计验证及修正。根据第二阶段得到的硬件配置文件以及第三阶段得到的软件代码在开发板上进行详细测试,根据实验现象,反复调试硬件及软件设计,直到达到预期目标。
五、课题研究的重点、难点及创新点
本课题的重点是:在编写程序时,要考虑到键扫描模块、文件信息读取模块、OLED显示模块、MP3 文件读取模块、MP3 解码模块、MP3 播放模块等模块之间的关系,优化调用算法,确保系统的运行处理速度,调高系统整体性能,避免出现系统响应较迟钝的现象。
本课题的难点是:本课题拟基于NIOS II搭建软硬件系统,同时采用软硬件协同设计方法,把系统功能划分为软件实现的部分和硬件实现的部分,期望通过利用软硬件综合设计和软硬件划分使得整个系统的运行速度和性能达到最优效果。
本课题的创新点是:软硬件协同设计方法、思想的概括和总结。
六、课题研究的进度安排
第1-3周(2.26-3.16):查阅相关文献资料,熟悉开发环境,完成并提交开题报告、5000字英文文献翻译。
第4-8周(3.17-4.22):结合Altera公司的DE1开发板,通过在SOPC Builder中搭建硬件系统,并在Nios II编程环境中完成程序的调试与下载。
第9周(4.23-4.29):在DE1开发板上初步实现MP3播放器的SD卡读取功能。中期检查并提交中期检查表。
第10-12周(4.30-5.20):在DE1开发板上初步实现MP3解码播放功能和OLED显示功能。
第13-14周(5.21-6.3):系统最后调试,撰写毕业设计论文初稿。
第15周(6.4-6.10):论文修改,上交毕设所有资料,准备毕设答辩PPT。
第16周(6.11-6.17):毕业答辩。
七、主要参考文献
[1] 潘松,黄继业,曾毓.SOPC技术实用教程[M].清华大学出版社,2012.03:191~380
[2] 王建校,危建国.SOPC设计基础与实践[M].西安电子科技大学出版社,2014.04:132~340
[3] 张昱,杜明辉.基于Nios软核的音频效果器[J].器件与电路,2016.09
[4] 吴喆庆.基于NiosⅡ系统的MP3播放器的设计[D].吉林大学.2011
|