首页 文学文摘 时政新闻 科技科普 经济法律 健康生活 管理财经 教育教学 文化艺术 社科历史

基于NiosⅡ的多功能数码相框设计

作者:刘胜辉,王燕飞 来源:现代电子技术


  摘 要:采用基于Nios Ⅱ软核处理器的SOPC技术实现了多功能数码相框的设计,充分利用了Nios Ⅱ 软核的特性,在SOPC Builder中搭建系统硬件模块,通过SOPC Builder将各个功能模块集成到一个系统中,并且结合嵌入式操作系统μC/OS-Ⅱ来完成调度各功能模块的任务。实验证明,SOPC技术应用使系统集成度大大提高,功耗大幅下降,稳定性也有一定提升,并且成本不高,具有广泛的应用前景。
  关键词:Nios Ⅱ; SOPC Builder; 多功能数码相框; μC/OS-Ⅱ
  中图分类号:TP274.3 文献标识码:A
  文章编号:1004-373X(2010)11-0141-03
  
  Design of Multi-functional Digital Photo Frame Based on Nios Ⅱ
  LIU Sheng-hui, WANG Yan-fei
  (School of Computer Science and Technology, Harbin University of Science and Technology, Harbin 150080, China)
  Abstract: The design of multi-functional digital photo frame realized by the technique of SOPC based on Nios Ⅱ soft-core processor. Making full use of the characteristics of Nios Ⅱ soft-core, building the system hardware module in the SOPC, scheduling the various functional modules by integrating the various functional modules into a system through SOPC Builder, and with embedded operating system μC/OSⅡ. Experiments prove that the application of SOPC improves the integration, reduces the power consumption and enhances the stability of the system. It has low-cost and a broad prospect.
  Keywords: Nios Ⅱ; SOPC Builder; multi-functional digital photo frame; μC/OS-Ⅱ
  
  0 引 言
  数码相框是时尚的电子消费品,也是家庭必备的装饰品,是一种以存储、回放和浏览数码照片为核心功能的电子产品。目前,市场上数码相框大多是以单芯片为解决方案,以ESS/AMLOGIC/MPX芯片设计为代表[1],就其设计流程而言,不存在严格意义上的硬件设计而只有软件设计。硬件系统的核心器件是现成的,功能是确定的,结构是固定的,指令系统是不可更改的,从而导致硬件组织方案和连接方案是限定的。因此,要想对系统功能有大的升级或扩展,靠简单的固件升级是不行的,必须采用更好的核心器件,设计全新的硬件系统。
  本文采用了基于Nios Ⅱ软核处理器的SOPC技术来实现数码相框的设计,从根本上改变了传统设计方案的不足。Nios Ⅱ软核嵌入式处理器是Altera公司提供的SOPC解决方案[2]。Nios Ⅱ是一种可配置的16/32位RISC处理器,它结合丰富的外设、专用指令和硬件加速单元可以低成本地提供极度灵活和功能强大的SOPC系统,开发者可以根据实际需要自行整合。SOPC技术在电子设计上给出了一种同时涉及底层的硬件系统设计和相应的软件设计,在系统优化方面有了前所未有的自由度,使得从多角度、多因素和多结构层面上大幅度优化自己的设计成为可能。当电路有少量改动时,更凸现出其优势,可以延长该产品在市场上的寿命,大大提高多功能数码相框的性能。
  1 系统总体架构设计及系统硬件设计
  基于Nios Ⅱ的SOPC嵌入式系统开发,主要由三部分组成:IP库(Nios软核处理器,Avalon总线,外围设备接口等),SOPC Builder开发工具,CNUPro软件编译器[3]。另外,使用Nios Ⅱ进行嵌入式设计在硬件上必须使用Altera公司的FPGA,本文中的设计使用的是Altera的Cyclone系列芯片的EP1C12Q240C8芯片[4]。
  多功能数码相框主要实现以下功能:能清晰地显示JPEG图片的自动播放及其缩略图式浏览;多区播放或者画中画多种显示方式; 图片的即时编辑与裁剪(旋转、美化);具有出色的视听娱乐功能,能播放MP3、MP4音频文件,实时字幕滚动叠加;文件和文件的浏览及其对USB接口和SD卡的支持;多种附加功能时钟,万年历等。
  数码相框从CPU的总体结构到局部功能的实现上需要有时钟电路,CPU,RAM及RAM控制器,FLASH及FLASH控制器,SD卡及SD卡控制电路,USB接口及USB接口控制器,液晶屏及液晶显示器驱动电路,DMA控制器,音频驱动及音频控制电路,定时器模块,系统硬件结构图如1所示。
  图1 多功能数码相框的系统硬件框图
  整个设计采用自上而下的设计方法,在SOPC Builder中搭建系统硬件模块,将所需的各功能模块通过Avalon总线集成,这样系统的稳定性更高。除显示驱动模块、音频控制模块和SD卡控制模块、USB接口控制模块外,其他模块都可以从SOPC Builder中添加IP核构建。
  2 LED背光设计
  LCD面板是数码相框的主要组成部分,它带有用于背光照明的白光LED,LM27313已被大量用于白光LED BLU解决方案。图2显示了用于8英寸数码相框LCD的白光LED背光电路。
  图2 搭载过电压保护功能的3×8 LED模块驱动电路
  在设计LED背光驱动电路时,LED是电流驱动型器件,为保证光照强度并提高LED的使用寿命,最重要的问题是在LED正向偏置时保持恒流。由于大多数LED模块是通过一个连接器与主板相连的,LM27313在输出时会因误操作或LED模块受损而开路,误差放大器的负输入端没有信号,输出电压将会无限制地上升,这将造成毁灭性后果,损坏LM27313或输出二极管。为解决这一问题,在图2中加入了一个过电压保护电路。在图2中,电阻器R1和R2通过向误差放大器引脚(FB)馈送输出电压,确保恒定输出电压不会无限上升。
  调光控制是指根据客户的喜好控制显示器光照强度。可以通过开/关LM27313来控制LED的开关,而对LM27313的开关控制可通过在SHDN引脚上应用脉冲宽度调制(PWM)得以实现。脉冲频率必须超过20 kHz,低于20 kHz的频率会使电路输出端的多层陶瓷电容器产生波形振荡,从而产生可听噪声。
  3 LCD典型电源偏置电路设计
  面向LCD平板电源的DC/DC转换中采用了美国国家半导体拥有的最佳的电源解决方案LM2622。在用于数码相框的典型LCD平板显示器中,输入电源电压约为+5.0 V。必须提供若干不同的电压,以使显示面板通过该输入电压实现最佳性能,通常情况下需用到升压转换器。可以利用LM2622在+5.0 V输入电压下提供若干不同的输出电压。图3中的电路显示了应如何配置LM2622,以提供+8 V,-8 V和+23 V的输出电压,这对于偏置TFT显示器而言是非常方便的。
  
  图3 LCD典型电源偏置电路
  4 USB接口模块设计
  随着通用串行总线(USB) 技术的飞速发展和应用领域不断扩大,已经实现了脱离PC 而实现USB 的点对点的数据传输,嵌入式USB主机能够脱离PC 完成USB 的点对点的数据传输[5-6]。本系统采用的是Nios Ⅱ+USB接口芯片的方案,USB串行接口可以作为Nios Ⅱ的一个外设,接口芯片采用的是Cypress公司生产的SL811HS为主控制器的USB Host/Slave接口芯片。设计的原理方案图如图4所示。
  图4 USB设计原理方案图
  SL811HS主控制器接口提供8位的数据总线及一些控制信号,如读写、片选等与外部CPU或微控制器进行连接。并且,L811HS接口为外部提供简单的地址线A0,支持可编程I/O或存储器映射设计。通过对SL811HS的读写时序与Avalon 总线读写时序的分析,采用了SL811HS中的A0寻址模式与Avalon 总线的“具有一个固定等待的从端口读/写传输”时序,SL811HS的地址和数据均通过D[7..0]分时传输,通过A0(数据/地址选择线)电平的高低加以区分。当A0置为低电平时,D[7..0]上传输的是SL811HS片内寄存器/缓冲区的地址,反之高电平则为数据。在A0模式下,SL811HS正常的读写操作支持地址自动加1模式,即在此模式下微控制器只设置地址仅仅一次,紧接下一个时钟的读写操作SL811HS内部地址指针将会自动跳到下一个数据位置。nWR,nRD,nCS,nRST分别为写控制线、读控制线、片选线和复位线,均是低电平有效,Nios Ⅱ通过这几根控制线完成对SL811HS片内缓冲区读写、片选和复位等操作。INTRQ是中断请求信号线。当SL811HS检测到外设插入、拔出或者数据发送错误、超时、数据溢出等异常情况时,通过将INTRQ置高电平通知Nios Ⅱ[7]。Avalon总线为用户提供了非常友好的接口,在SL811HS与Avalon总线的接口转换Verilog代码中,只需建立SL811HS端口与Avalon总线端口的映射关系即可[8]。如图5所示。
  图5 处理器与SL811HS的接口
  5 系统软件设计部分
  对基于Nios Ⅱ的SOPC系统进行编译并下载到FPGA中生成硬件系统,同时SOPC Builder帮助用户生成相应的SOF文件,在此基础上,开始系统软件的设计。本系统软件部分是在Altera公司提供的软件集成开发工具IDE中,以C语言形式,在硬件抽象层(HAL)函数支持下设计的。
  软件的开发顺序为:硬件驱动程序→操作系统移植→建立文件系统→应用程序设计。系统软件开发均在Nios Ⅱ集成的μC/OS-Ⅱ操作系统上完成。在多功能数码相框系统中建立了TaskMain(主控任务)、TaskGui(GUI图形化人机交互界面显示任务)、TaskMusic(音乐播放控制任务)等三个任务。利用消息邮箱机制,μC/OS-Ⅱ操作系统对这三个任务进行调度管理。
  为了实现系统所需要的图形人机界面,还必须在系统开发平台进行嵌入式用户图形系统的设计,从而建立一个满足实时性和快速性的人机交互系统。图形用户界(Graphical User Interface)[9]一直是计算机的重要组成部分,对于嵌入式系统而言也是如此。在嵌入式GUI方面选择了Micrium公司开发的通用嵌入式图形用户界面软件μC/GUI,它是μC/OS-Ⅱ操作系统的专用GUI[10],可以实现与μC/OS-Ⅱ实时操作系统的完美结合。
  6 结 语
  该系统的所有硬件结构都是在SOPC下集成的,具有的好处在于硬件的可重构与可重配置,并且采用从上而下的设计流程使得系统设计周期大大缩短。还介绍了包括LCD背光电路,电源偏置电路,及USB接口模块的详细设计。利用Nios Ⅱ软核处理器与Avalon总线的仲裁机制和嵌入到Nios Ⅱ中的操作系统,完成了各个功能模块的任务调度,稳定与提高了整个系统的性能,简化了系统的设计,为家用电子产品领域的开发和应用开辟了新的途径。
  
  参考文献
  [1]水清木华研究中心.2007年中国数码相框(DPF)产业及市场研究报告[EB/OL].\. http://www.pday.com.cn/researck/2006/C204-dpf.htm.
  [2]Altera Inc.. Nios Ⅱ Processor Reference Handbook Ver 6.1[EB/OL]. \. http://www.altera.com/literature/hb/Nios2/n2cpu-nii5v1.pdf.
  [3]潘松,黄继业,曾毓.SOPC技术实用教程\.北京:清华大学出版社,2005.
  [4]Altera Inc.. Cyclone device handbook[M]. \: Altera Inc., 2003.
  [5]Analog Devices. Universal serial bus specification revision 2.0[S]. \: Analog Devices, 2004.
  [6]马伟.计算机USB系统原理及其主/从机设计[M].北京:北京航空航天大学出版社,2004.
  [7]XIE X F, ZHANG W J, ZHANG G R, et al. Empirical study of differential evolution [J].Control and Decision, 2004, 19(1): 49-52.
  [8]刘连东,郁滨,罗长远.基于Nios Ⅱ的嵌入式USB 主机设计与研究[J].计算机工程与技术,2007(28):2100-2102.
  [9]邹思铁.嵌入式Unux设计与应用\.北京:清华大学出版社,2002.
  [10]刘滨,王琦,刘丽丽.μC/GUI在MSG19264液晶上的移植[J].电子技术应用,2004,30(8):4-7.