基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计

基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,第1张

  0 引言

  本文采用了基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,从根本上改变了传统设计方案的不足。NiosⅡ软核嵌入式处理器Altera公司提供的SOPC解决方案。NiosⅡ是一种可配置的16/32位RISC处理器,它结合丰富的外设、专用指令和硬件加速单元可以低成本地提供极度灵活和功能强大的SOPC系统,开发者可以根据实际需要自行整合。SOPC技术在电子设计上给出了一种同时涉及底层的硬件系统设计和相应的软件设计,在系统优化方面有了前所未有的自由度,使得从多角度、多因素和多结构层面上大幅度优化自己的设计成为可能。当电路有少量改动时,更凸现出其优势,可以延长该产品在市场上的寿命,大大提高多功能数码相框的性能。

  1 系统总体架构设计及系统硬件设计

  基于NiosⅡ的SOPC嵌入式系统开发,主要由三部分组成:IP库(Nios软核处理器,Avalon总线,外围设备接口等),SOPC Builder开发工具,CNUPro软件编译器。另外,使用NiosⅡ进行嵌入式设计在硬件上必须使用Altera公司的FPGA,本文中的设计使用的是Altera的Cyclone系列芯片的EPlCl2Q240C8芯片。

  多功能数码相框主要实现以下功能:能清晰地显示JPEG图片的自动播放及其缩略图式浏览;多区播放或者画中画多种显示方式;图片的即时编辑与裁剪(旋转、美化);具有出色的视听娱乐功能,能播放MP3、MP4音频文件,实时字幕滚动叠加;文件和文件的浏览及其对USB接口和SD卡的支持;多种附加功能时钟,万年历等。

  

基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,第2张

  数码相框从CPU的总体结构到局部功能的实现上需要有时钟电路,CPU,RAM及RAM控制器,FLASH及FLASH控制器,SD卡及SD卡控制电路,

  USB接口及USB接口控制器,液晶屏液晶显示器驱动电路,DMA控制器,音频驱动及音频控制电路,定时器模块,系统硬件结构图如1所示。

  整个设计采用自上而下的设计方法,在SOPCBuilder中搭建系统硬件模块,将所需的各功能模块通过Avalon总线集成,这样系统的稳定性更高。除显示驱动模块、音频控制模块和SD卡控制模块、USB接口控制模块外,其他模块都可以从SOPC Builder中添加IP核构建。

  2 LED背光设计

  LCD面板是数码相框的主要组成部分,它带有用于背光照明的白光LED,LM27313已被大量用于白光LED BLU解决方案。图2显示了用于8英寸数码相框LCD的白光LED背光电路。

  

基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,第3张

  在设计LED背光驱动电路时,LED是电流驱动型器件,为保证光照强度并提高LED的使用寿命,最重要的问题是在LED正向偏置时保持恒流。由于大多数 LED模块是通过一个连接器与主板相连的,LM27313在输出时会因误 *** 作或LED模块受损而开路,误差放大器的负输入端没有信号,输出电压将会无限制地上升,这将造成毁灭性后果,损坏LM27313或输出二极管。为解决这一问题,在图2中加入了一个过电压保护电路。在图2中,电阻器R1和R2通过向误差放大器引脚(FB)馈送输出电压,确保恒定输出电压不会无限上升。

  调光控制是指根据客户的喜好控制显示器光照强度。可以通过开/关 LM27313来控制LED的开关,而对LM27313的开关控制可通过在SHDN引脚上应用脉冲宽度调制(PWM)得以实现。脉冲频率必须超过20 kHz,低于20 kHz的频率会使电路输出端的多层陶瓷电容器产生波形振荡,从而产生可听噪声。

  3 LCD典型电源偏置电路设计

  

基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,第4张

  4 USB接口模块设计

  随着通用串行总线(USB)技术的飞速发展和应用领域不断扩大,已经实现了脱离PC而实现USB的点对点的数据传输,嵌入式USB主机能够脱离PC完成 USB的点对点的数据传输。本系统采用的是NiosⅡ+USB接口芯片的方案,USB串行接口可以作为NiosⅡ的一个外设,接口芯片采用的是 Cypress公司生产的SL811HS为主控制器的USB Host/Slave接口芯片。设计的原理方案图如图4所示。

  

基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,第5张

  

基于NiosⅡ软核处理器的SOPC技术来实现数码相框的设计,第6张

  5 系统软件设计部分

  对基于NiosⅡ的SOPC系统进行编译并下载到FPGA中生成硬件系统,同时SOPC Builder帮助用户生成相应的SOF文件,在此基础上,开始系统软件的设计。本系统软件部分是在Altera公司提供的软件集成开发工具IDE中,以 C语言形式,在硬件抽象层(HAL)函数支持下设计的。

  软件的开发顺序为:硬件驱动程序一 *** 作系统移植→建立文件系统→应用程序设计。系统软件开发均在NiosⅡ集成的μC/OS-Ⅱ *** 作系统上完成。在多功能数码相框系统中建立了Task_Main(主控任务)、Task_Gui(GUI 图形化人机交互界面显示任务)、Task_Music(音乐播放控制任务)等三个任务。利用消息邮箱机制,μC/OS-Ⅱ *** 作系统对这三个任务进行调度管理。

  为了实现系统所需要的图形人机界面,还必须在系统开发平台进行嵌入式用户图形系统的设计,从而建立一个满足实时性和快速性的人机交互系统。图形用户界(Graphical User InteRFace)一直是计算机的重要组成部分,对于嵌入式系统而言也是如此。在嵌入式GUI方面选择了Micrium公司开发的通用嵌入式图形用户界面软件μC/GUI,它是μC/OS-Ⅱ *** 作系统的专用GUI,可以实现与μC/OS-Ⅱ实时 *** 作系统的完美结合。

  6 结语

  该系统的所有硬件结构都是在SOPC下集成的,具有的好处在于硬件的可重构与可重配置,并且采用从上而下的设计流程使得系统设计周期大大缩短。还介绍了包括 LCD背光电路,电源偏置电路,及USB接口模块的详细设计。利用NiosⅡ软核处理器与Avalon总线的仲裁机制和嵌入到NiosⅡ中的 *** 作系统,完成了各个功能模块的任务调度,稳定与提高了整个系统的性能,简化了系统的设计,为家用电子产品领域的开发和应用开辟了新的途径。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2712766.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存