基于FPGA和IP核的数码相框的设计和实现

基于FPGA和IP核的数码相框的设计和实现,第1张

  数码相框作为一种数码消费品和装饰品的结合物,在市场上受到越来越多的关注。目前的数码相框方案多采用MCU为核心的架构,相框功能固定,不便于产品升级。针对以上问题,本文设计了基于Nios II的多功能数码相框,该相册主要包含以下功能:支持包括BMP、JPEG在内的多种常见文件格式的图像显示;图像旋转、缩放、浏览切换等特效;支持图片浏览时背景音乐播放;可通过带FAT文件系统的SD卡进行图像数据更新,同时还具有时间显示等扩展功能。系统中将需要耗费大量时间的复杂 *** 作(如图像解码、图像的各种特效功能以及SD卡控制)用挂载在Avalon总线上的自定义模块实现。缩短了处理时间,提高了系统响应速度。系统采用基于Nios II处理器的SoPC技术,使得该数码相框具有灵活性高、可重配置、便于升级等优点。

  1 总体设计

  本系统采用经济型的Cyclone II FPGA芯片作为核心,基于Nios II软核处理器,采用软硬件结合的方式设计实现。系统的硬件总体框图如图1所示。

  基于FPGA和IP核的数码相框的设计和实现,如图1  系统的硬件总体框图,第2张

  SD卡作为文件存储介质,用于存放音频与图像文件,编写SD卡控制器对SD卡进行读写控制;采用LCM显示屏作为数码相框的显示界面,SRAM作为LCM的显示缓存,存储图像数据供LCM刷新,并由LCM_SRAM IP核控制图像的显示;SDRAM为Nios II软核程序运行空间;EPCS对FPGA进行配置;Flash用来存储软件代码和数据。

  2 功能模块设计

  根据数码相框所要实现的功能,设计了如下模块:

  2.1 LCM_SRAM IP核设计

  该模块主要功能是图像数据存储、LCM参数配置以及图像的缩放、旋转、切换效果控制等。以硬件方式实现图像切换效果,提高实时性的同时降低对CPU的依赖。

  2.1.1 切换特效实现

  设计中通过控制LCM读取SRAM的地址实现不同的图像切换效果,如上方切入、下方切入、百叶窗、菱形等八种方式循环出现。切换时,LCM上同时存在新旧两幅图像的数据,因此,缓存中需要存储这两幅图像的数据。以百叶窗效果为例,每行以16个像素作为间隔,将LCM的每一行分割成20个条形区域。如图2所示,第i行被分割后,第一个区域的像素点为n1~n16,最后一个区域为m1~m16.每个条形区域中,新图像的数据逐渐向右覆盖旧图像数据,从而形成百叶窗效果。具体实现过程为:在第一次刷新时,每行的各个条形区域的第一个像素点(n1,…,m1)读取新图像的数据,各区域其他像素点(n2~n16,…,m2~m16)仍然读取旧图像的数据;第二次刷新时,每行各个条形区域的前两个像素点(n1、n2,…,m1、m2)读取新图像数据,其他像素点(n3~n16,…,m3~m16)仍读取旧图像的数据。屏幕刷新16次则可实现百叶窗切换效果。图2中每个圆点代表显示屏的一个像素点。

  基于FPGA和IP核的数码相框的设计和实现,百叶窗特效实现,第3张

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

原文地址: http://outofmemory.cn/dianzi/2507425.html

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

发表评论

登录后才能评论

评论列表(0条)

保存