基于FPGA的多媒体娱乐平台设计Word格式文档下载.docx
- 文档编号:21920751
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:32
- 大小:975.04KB
基于FPGA的多媒体娱乐平台设计Word格式文档下载.docx
《基于FPGA的多媒体娱乐平台设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于FPGA的多媒体娱乐平台设计Word格式文档下载.docx(32页珍藏版)》请在冰豆网上搜索。
合格(合格、不合格)
指导教师姓名
所在单位
兰州工业学院
指导时间
2014年9月
本科毕业设计(论文)评阅教师评阅意见表
评阅意见:
论文主要是讲解了基于FPGA的多媒体娱乐平台设计,采用SOPC设计理念,充分利用FPGA器件丰富的逻辑资源,结合NiosII软核处理器灵活可配置的优点,实现了SD卡音乐播放、卡拉OK、图片浏览和电子钟四个功能。
全文结构明了,层次还算分明,语言组织和逻辑能力良好,对问题的认识还算到位,处理的方法不错。
具备一定的独立思考问题和解决问题的能力。
达到了远程与继续教育计算机科学与技术专业学士学位论文的要求和水平,同意该生进入答辩程序。
论文的不足之处在于图的命名的字体设置,论文的摘要欠缺,参考文献的格式问题,得出的结果缺少数据支持。
修改意见:
(针对上面提出的问题和不足之处提出具体修改意见。
评阅成绩合格,并可不用修改直接参加答辩的不必填此意见。
1、论文摘要过短,需扩充;
2、图的命名字体用小5;
3、参考文献至少15篇以上,年份应为近五年;
4、测试结果缺少数据,可以适当的补充。
毕业设计(论文)评阅成绩(百分制):
75
评阅结论:
同意答辩(同意答辩、不同意答辩、修改后答辩)
评阅人姓名
计算机学院
评阅时间
2014.9.28
论文原创性声明
本人郑重声明:
本人所呈交的本科毕业论文《基于FPGA的多媒体娱乐平台设计
》,是本人在导师的指导下独立进行研究工作所取得的成果。
论文中引用他人的文献、资料均已明确注出,论文中的结论和结果为本人独立完成,不包含他人成果及使用过的材料。
对论文的完成提供过帮助的有关人员已在文中说明并致以谢意。
本人所呈交的本科毕业论文没有违反学术道德和学术规范,没有侵权行为,并愿意承担由此而产生的法律责任和法律后果。
论文作者(签字):
日期:
2014年8月20日
摘要
本论文以EP2C35F系列的FPGA芯片为核心,采用SOPC设计理念,充分利用FPGA器件丰富的逻辑资源,结合NiosII软核处理器灵活可配置的优点,实现了SD卡音乐播放、卡拉OK、图片浏览和电子钟四个功能。
其中重点提出了一种基于FPGA和TRDB_LTM模块来控制液晶显示的模块。
系统具有良好的稳定性、可扩展性,易维护,便于应用推广。
关键词:
1、多媒体娱乐平台2、FPGA3、NiosII4、SOPC5、集成电路IP
一、绪论
目前,电子产品的开发周期很长,而生命周期越来越短,所以必须缩短产品的开发周期。
逻辑器件是数字电子领域中三种基本的器件之一,它提供了器件间的接口、数据通信、信号处理、数据显示、时序和控制操作以及系统运行等各种特定功能,可分为两大类:
固定逻辑器件和可编程逻辑器件。
而可编程逻辑器件与固定逻辑器件相比,可大大缩短开发周期。
随着集成电路制造工艺的进步,可编程逻辑器件的设计水平不断提高,其成本已经降低到可以在消费类电子产品中大量使用的程度。
从当前技术发展的趋势来看,可编程逻辑器件以其强大的优势将逐渐替代大部分的固定逻辑器件。
软核处理器的出现以及可编程逻辑器件片上存储容量的增大,使得可编程逻辑器件可以覆盖数字电子应用的所有领域。
Altera公司推出的片上可编程系统(SystemOnaProgrammableChip,SOPC)以及NiosII软核处理器进一步证实了这一观点。
目前NiosII处理器是使用最为广泛的软核处理器。
(一)FPGA简介
现场可编程门阵列(FieldProgrammableGateArray,FPGA)是在PAL、GAL、CPLD等可编程逻辑器件的基础上发展起来的,是一种高性能的可编程逻辑器件。
它是作为专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)中的一种半定制电路而
出现的,不仅解决了定制电路功能相对固定的不足,而且也克服了原有可编程器件门电路数目有限的缺点。
FPGA内部包括可编程逻辑单元、I/O单元、布线互联资源、嵌入式RAM块、底层嵌入式功能单元和内嵌专用硬核等6个基本组成部分。
随着FPGA性能的不断提高,FPGA将在可编程逻辑器件中占更大的比重。
目前FPGA的发展趋势主要体现在:
向高密度、大容量的门电路设计迈进;
向低成本、低电压、微功耗、微封装工艺方向发展;
IP核(IntellectualProperty)复用将成为主要的设计方式;
MCU、DSP等嵌入式处理器IP核将成为FPGA应用的核心。
随着处理器以IP核的形式嵌入到FPGA中,ASIC和FPGA之间的界限将更加模糊,片上可编程系统将成为FPGA最为主要的发展方向。
(二)SOPC技术
微电子技术,特别是大规模集成电路工艺技术的发展为SOPC技术提供了基础。
原来需要许多电子元器件共同组成的电路,现在仅用单片超大规模集成电路就可以实现。
SOPC是在一个可编程芯片上实现一个电子系统的技术。
SOPC是可编程逻辑器件技术和SOC(SystemOnChip)技术发展与融合的产物。
Altera公司于21世纪初推出称为SOPC的新技术和新概念。
SOPC是基于可编程逻辑器件PLD(FPGA或CPLD)可重构的SOC。
SOPC集成了硬核或软核CPU、DSP、锁相环(PLL)、存储器、I/O接口及可编程逻辑功能,可以灵活高效地解决SOC方案,而且设计周期短,设计成本低。
一般只需要一台配有SOPC开发软件的PC机和一台SOPC试验开发系统(或开发板),就可以进行SOPC的设计与开发。
目前,SOPC已成为倍受众多中小企业、研究所和高等院校青睐的设计技术。
(三)IP核
基于SOPC的设计在很大程度上依赖于利用集成电路IP,集成电路IP是指经过预先设计、预先验证、符合产业界普遍认同的设计规范和设计标准,具有相对独立并可以重复利用的电路模块或子系统。
例如CPU、运算器、存储器、放大器等都可以是IP核。
IP核具有知识含量高、占用芯片面积小、运行速度快、功耗低、工艺容差性大等特点,可重复用于SOC、SOPC或复杂ASIC设计中。
(四)SOPCBuilder
SOPCBuilder是Altera公司实现SOPC概念的一款工具软件。
SOPCBuilder提供了一个强大的平台,用于组建一个在模块级和组件级定义的系统。
SOPCBuilder库中可供用户直接使用的组件主要有:
●NiosII处理器;
●微控制器外设;
●定时器;
●通用异步接收器等串行通信接口;
●通用输入输出接口;
●存储器接口;
●总线和总线桥;
●数字信号处理(DSP)内核。
(五)NiosII
NiosII是Altera公司2004年6月推出的第二代软核处理器。
相对于Nios,NiosII性能更高,占用FPGA的资源更少,而与之配套的开发环境更先进,有更多的资源可供用户使用。
NiosII是一种软核(Soft-Core)处理器,也是SOPC技术的核心。
所谓软核,是指未被固化在硅片上,使用时需要借助EDA软件对其进行配置并下载到可编程芯片(比如FPGA)中的IP核。
软核最大的特点就是可由用户按需要进行配置。
NiosII处理器系列包括三种内核:
快速型(NiosII/f)、标准型(NiosII/s)和经济型(NiosII/e),每一型号都针对价格和性能范围进行了优化。
用户可以从三种处理器以及超过60个的IP核中选择所需要的外设、存储器和接口,从而可以轻松集成自己专有的功能,使设计具有独特的竞争优势。
(六)Verilog语言
VerilogHDL是在1983年由GDA(GateWayDesignAutomation)公司的PhilMoorby所创。
PhiMoorby后来成为Verilog-XL的主要设计者和Cadence公司的第一个合伙人。
●在1984~1985年间,Moorby设计出了第一个Verilog-XL的仿真器。
●1986年,Moorby提出了用于快速门级仿真的XL算法。
●1990年,Cadence公司收购了GDA公司。
●1991年,Cadence公司公开发表Verilog语言,成立了OVI(OpenVerilogInternational)组织来负责VerilogHDL语言的发展。
●1995年制定了VerilogHDL的IEEE标准,即IEEE1364。
VerilogHDL是目前应用最为广泛的硬件描述语言。
VerilogHDL可以用来进行各种层次的逻辑设计,也可以进行数字系统的逻辑综合,仿真验证和时序分析等。
VerilogHDL适合算法级,寄存器级,逻辑级,门级和版图级等各个层次的设计和描述.
VerilogHDL进行设计最大的优点是其工艺无关性。
这使得工程师在功能设计,逻辑验证阶段可以,这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级及工艺段可以不必过多考虑门级及工艺实现的具体细节,只需根据系统设计的要求施加不同的约束条件,即可设计出实际电路。
VerilogHDL的最大特点就是易学易用,如果有C语言的编程经验,可以在一个较
短的时间内很快的学习和掌握,因而可以把VerilogHDL内容安排在与ASIC设计等相关课程内部进行讲授,由于HDL语言本身是专门面向硬件与系统设计的,这样的安排可以使学习者同时获得设计实际电路的经验。
与之相比,VHDL的学习要困难一些。
但VerilogHDL较自由的语法,也容易造成初学者犯一些错误,这一点要注意。
VerilogHDL是一种硬件描述语言(hardwaredescriptionlanguage),为了制作数字电路而用来描述ASICs和FPGA的设计之用。
Verilog的设计者想要以C编程语言为
基础设计一种语言,可以使工程师比较容易学习。
二、设计概述
(一)论文设计前景
消费电子是嵌入式系统重要的应用领域之一。
随着电子信息技术的发展,人们生活质量不断提高,娱乐电子产品正逐渐走进百姓生活,娱乐电子产品的市场前景十分广阔。
媒体技术作为当今信息技术领域发展最快的、最活跃的技术之一,其发展的方向也是极其的多样化,所以在人们日常生活中,几乎随处可见其身影,如航空、医疗、通讯、网络通讯、安防、广播、汽车电子、工业、消费类市场、测量测试等多个热门领域。
并随着工艺的进步和技术的发展,向更多、更广泛的应用领域扩展。
越来越多的设计也开始以ASIC转向FPGA,FPGA正以各种电子产品形式进人我们日常生活的各个角落。
本论文是基于SOPC技术设计的一款功能全面的消费类电子产品——多媒体娱乐平台,是在FPGA开发板上构建了一个功能全面的多媒体娱乐平台,集SD卡音乐播放、卡拉OK、图片浏览和电子钟等功能于一身。
(二)设计思想
Altera公司提出的片上可编程系统(SOPC)技术,提供了一种基于FPGA的SOC解决方案,是一种全新的嵌入式系统设计技术。
本设计就是采用SOPC技术,通过软硬件协同设计,在这里,不仅软件是可编程的,同时,硬件也是可配置的,这样就可以量体裁衣,设计出符合自己要求的嵌入式系统。
(三)FPGA器件的优势
利用Altera公司的FPGA器件设计SOPC系统,可以降低系统的成本,使用和配置更加方便,打破了传统的MCU+DSP芯片的数字信号处理系统的设计方法,将微处理器、DSP模块整合到一片FPGA芯片中去,使得整个系统更加稳定。
Altera公司向开发者提供了丰富的软件开发资源。
QuartusII中的SOPCBuilder工具使用户可以方便的定制NiosII处理器、外设、存储器和I/O口等,用于构建SOPC系统。
MatlabSimulink和DSPBuilder可以帮助用户更加有效地进行数字信号处理部分的开发。
NiosIIIDE集成开发环境用于NiosII软核软件的开发。
三、系统总体设计
(一)总体方案
整个系统采用FPGA可编程逻辑器件,利用先进的SOPC理念,在FPGA开发板上实现了多媒体娱乐平台的功能,主要包含SD卡音乐播放、卡拉OK、图片浏览和电子钟这四个功能,如图3-1所示。
图3-1多媒体娱乐平台的系统框图
(二)各功能模块的设计
音乐播放和卡拉OK功能都是由FPGA开发板的音频输入/输出实现。
开发板的音频输入/输出由Wolfson公司的低功耗立体声24位音频编/解码芯片WM8731完成。
WM8731包含了线路输入、麦克风输入及耳机(音响)输出。
两路线路左、右声道能以1.5dB的步距在+12~-34.5dB范围内进行对音量调节,完成A/D转换后,还可以进行数字滤波,有效滤除输入信号中的直流成分。
一路麦克风输入可以在-6~34dB范围内进行音量调节。
这三路输入都有单独的静音功能。
D/A转换器输入、线路输入旁路及麦克风输入经过侧音电路后可相加作为输出以驱动耳机(RHPOUT和LHPOUT),开发板上的LINEOUT可以直接驱动耳机。
LINEIN经过隔直电容输入,而MICIN则直接输入。
充分利用了24位立体声音频编/解码芯片WM8731高性能、低功耗的优点,可听到音质较好的音乐。
图片浏览是用纯硬件实现的,电子钟由硬件实现计数,软件实现时间的LCD显示。
1、SD卡音乐播放模块
SD卡作为大容量的存储器,已经成为数码产品首选的存储设备,用于存储图像、音频等数据。
本设计是将wav格式的音乐保存在SD卡中,NiosII处理器从SD卡中读取音乐数据,并通过CD音质的音频编/解码器WM8731播放音乐。
音频编/解码器被配置为从模式,需要外部电路为其提供A/D转换器(D/A转换器)串行时钟(BCK)及左/右通道时钟(LRCK),如图3-2所示。
图中用一个音频DAC控制器产生时钟及数据控制信号,然后将该音频DAC控制器连接在NiosII处理器的Avalon总线上,NiosII处理器通过Avalon总线来控制音频DAC控制器。
图3-2SD卡音乐播放器原理框图
2、卡拉OK模块
在本设计中,用FPGA开发板的LINEIN、LINEOUT和MICIN实现卡拉OK机的功能。
由FPGA将WM8731配置为主模式工作,即由音频解码器WM8731自动产生A/D转换器(D/A转换器)、串行数据位时钟BCK及左/右声道时钟LRCK,工作原理如图3-3所示。
FPGA通过I2C接口配置音频编/解码器WM8731,通过配置从LINEIN输入的音频数据与从MICIN输入的音频数据混合后通过LINEOUT输出。
音频采样速率为48kHz,卡拉OK机系统实物连接图如图3-4所示。
图3-3卡拉OK机系统原理图
图3-4卡拉OK机实物连接图
3、图片浏览模块
图片浏览功能由彩色液晶显示模块实现。
本设计采用的液晶开发模块TRDB_LTM是一款TFT_LCD彩色液晶,如图3-5所示。
图3-5TRDB_LTM显示板
该液晶开发模块是针对本开发板设计的一款液晶显示模块。
它具有可编程驱动、接口控制方便、体积小、低压、显示信息量大、有良好的可视化人机界面等优点。
因而在移动通信终端、便携计算机、GPS卫星定位系统等领域得到了广泛的应用。
液晶显示控制器作为液晶驱动电路的核心部件通常由集成电路组成,通过为液晶显示系统提供时序信号和显示数据来实现液晶显示。
本设计是一种基于FPGA控制TRDB_LTM液晶屏工作的液晶显示模块的实际方法。
与集成电路控制相比,FPGA更灵活,可以针对不同的液晶显示模块更改时序信号和显示数据。
FPGA的超大规模集成优势和内部逻辑单元的可重复配置特点,使得其在芯片控制和接口设计中成为一种颇具吸引力的高性价比控制器件。
TRDB_LTM的主要参数为:
4.3英寸屏,点阵为480×
800,长宽比15:
9,有效显示面积93.6×
56.16mm。
可以接收RGB格式的数据,支持RGB24位并行数据接口,通过3线串行接口与LTM内部的寄存器交换数据来实现显示控制和功能选择。
TRDB_LTM主要由3部分组成:
液晶触摸面板模块、AD转换器和40针扩展槽,如图3-6所示。
TRDB_LTM的接口通过连接线连接到FPGA开发板的40针扩展接口。
液晶触摸面板模块完成两个功能,一是产生触摸点的模拟坐标,送A/D转换器转换;
二是控制图片的显示,用于输出行场信号和RGB数据。
A/D转换器用于触摸点坐标的数字化,并通过串行接口将相应的数据输出到FPGA。
开发板与TRDB_LTM的硬件连接图如图3-7所示。
图3-6LTM结构框图
图3-7开发板与LTM的硬件连接图
FPGA控制TRDB_LTM模块原理图如图3-8所示。
通过编程可配置FPGA内部的逻辑单元,从而用软件实现液晶显示控制器的设计。
本方案中的FPGA主要负责液晶显示模块的系统时序、读写控制和显示数据的存取。
其内部的嵌入式阵列块EAB是输入端口和输出端口都带有触发器的RAM块,可实现小容量的FIFO、ROM、和RAM,使用时,通过调用这些EAB即可实现字符的存储,并通过地址值读取数据以供LCD显示器显示。
具体控制模块设计如下:
通过LCD_SPI_Controller模块实现对液晶触摸模块的配置,ADC_SPI_Controller模块用于把触摸板的触摸位置转换为对应的数字量,Touch_Piont_Detector模块通过计算转换的数字量,做出触点动作的判断,去选择Flash内部不同的图片。
Flash_to_SDRAM_Controller模块和Muti_PortSDRAMController模块相互配合,将Flash内部的图片数据读出,写到SDRAM内部暂存。
LCD_timing_Controller模块实现液晶显示的控制,为液晶模块输出行场时序信号和显示的同步数据。
本模块的软件设计是基于Verilog语言的编写。
软件设计的关键在控制器时序的基础上完成液晶显示器与FPGA之间数据和指令的读写和状态的检测。
其程序代码和软件流程图在后续章节中有所介绍,在其不再复述。
图3-8LTM模块原理图
4、电子钟模块
电子钟是由软硬件协同设计的,由硬件实现计数,软件实现时间的LCD显示。
具体由系统板所带50MHz时钟信号经分频作为时钟源,输入至电子钟模块进行计数,分别输出年月日时分秒的BCD码信号,再经过NiosII处理器处理之后,由16×
2字符型带背
光液晶显示模块LCD1602作为显示输出,如图3-9所示。
三个按键分别控制当前时钟的模式和时钟的加减调节。
所以,电子钟是由软硬件协同设计的。
图3-9电子钟的整体原理图
16×
2液晶显示模块LCD1602中16×
2内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有阿拉伯数字、英文字母的大小写、常用的符号和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。
电子钟时、分、秒、年、月、日的BCD码信号由VHDL所描述的硬件电路实现,如图3-10所示。
图3-10电子钟的VHDL硬件实现原理图
四、系统功能与指标
(一)系统功能描述
本论文采用EP2C35F系列的FPGA开发板,充分利用NiosII软核的特性,结合自定义用户指令、自定义用户外设,充分利用了开发板上的硬件资源。
其中音频编/解码部分是由Wolfson公司的低功耗立体声24位音频编解码芯片WM8731来实现的。
该芯片具有24位元CD品质立体声输入(LINEIN)、输出(LINEOUT)及麦克风输入(MICIN)功能。
利用这些硬件资源,设计实现了一个基于FPGA的多媒体娱乐平台。
该多媒体娱乐平台包括SD卡音乐播放、卡拉OK、图片浏览及电子钟四个功能模块,把这几个功能模块有机的结合起来,达到多媒体娱乐的目的。
(二)SD卡音乐播放功能
SD卡音乐播放是该多媒体娱乐平台最基本的功能,通过开发板上的SD卡插槽,读取SD卡上的音频数据后,送到音频编/解码器,对音质进行相关处理后输出,进行音乐的播放。
SD卡音乐播放功能的控制是由NiosII处理器通过软件完成的。
指标说明支持格式:
WAV格式。
可播放音乐的数量:
由SD卡的容量决定。
播放等待时间:
小于3s。
音频编/解码芯片:
WM8731。
(三)卡拉OK功能
卡拉OK功能是通过开发板上音频编/解码器的MICIN进行人声的输入,LINEIN进行伴音的输入,通过音响(耳机)输出。
伴音的来源也有两种选择。
一种是通过外接双声道声源,滤除人声,取其伴音,作为卡拉OK的伴音。
另一种是读取SD卡上的音频数据后,滤除人声,取其伴音,送到音频编/解码器,作为卡拉OK的伴音。
指标说明采样速率:
48kHz。
(四)图片浏览功能
该功能采用了触摸屏技术来实现,打破了使用键盘或鼠标等作为输入设备的传统,而是通过代表特定任务的图标,来实现简单、直接的交互。
浏览图片时你可以用手直接点击左上角或右下角,就可对所浏览的图片进行切换。
指标说明图片存储数量:
由Flash的容量决定。
图片属性:
800×
480的位图文件(.bmp文件)。
(五)电子钟功能
电子钟是一种用数字电路技术实现年、月、日、时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且具有更长的使用寿命,已得到广泛的使用。
本设计的电子钟通过VHDL语言实现它的硬件电路部分,这样设计的电子钟计时准确。
在显示部分由软件控制LCD1602液晶屏实现。
三个按键Key3、Key2、Key1分别控制当前时钟的模式和时钟的加减调节。
指标说明时钟源:
50MHz。
液晶屏型号:
LCD1602。
五、系统设计与实现
(一)硬件设计框图
1、NiosII处理器硬件框图
根据多媒体娱乐平台系统对处理器、存储器和外设等的要求,构建的NiosII处理器结构框图如图5-1所示。
图5-1NiosII处理器的硬件框图
在SOPCBuilder工具中对NiosII软核进行的配置,配置的结果如图5-2所示。
由于我们选择的FPGA是Cyclo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 多媒体 娱乐 平台 设计