0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA增强了数码相册功能

星星科技指导员 来源:嵌入式计算设计 作者:David Auyeung 2022-10-25 11:25 次阅读

随着我们不断以像素为单位捕获生活快照,我们正在积累一系列软件工具和设备来查看,编辑,存储,个性化和共享我们的数码照片。一个能够可靠地提供所有这些功能的单一、易于使用的系统将简化和增强照片制作过程。

来自北京交通大学信息科学研究所的一名学生设计工程团队使用基于FPGA的可编程片上系统(SOPC)解决方案创建了一个便携式多功能数码相册。虽然传统的数码相册主要能够存储和显示图像,但这种动态原型还允许用户直接即时编辑和个性化数码照片,并通过互联网将图像传输到他们的家庭或办公室PC。

这张专辑的基础技术包括一个高度集成的系统,其中包括FPGA中的嵌入式处理器。SOPC设计集成了图像处理功能,压缩,解压缩,传输和接收。自上而下的 SOPC 设计流程(图 1)帮助团队大大缩短了设计周期。

图 1:采用自上而下的嵌入式处理器开发流程的可编程片上系统(SOPC)设计可以提供灵活性并加快上市时间。

poYBAGNXV02AWrqQAAXSH8O677E281.png

灵活的系统设计

使用SOPC生成器,设计团队通过Avalon总线集成了应用程序的所有功能模块。集成工具使团队能够快速构建一个结合了软件和硬件组件的稳定系统。该开发平台由 Altera DE2 开发和教育多媒体板组成,该板带有旋风 II FPGA 和 Nios II 嵌入式处理器。

该团队优化了设计,以降低功耗,同时使用更少的设计资源。该团队使用 Nios II 嵌入式处理器进行设计,使用自定义指令和外设来加速系统操作,从而增强了性能。

设计团队还整合了适应未来增强功能和功能扩展的能力。例如,通过集成的通信接口,相册可以将个性化的数字图像发送到手机

无需 PC 即可实现强大的处理能力

数码相册具有以下功能:

数码照片存储

利用开发板上的安全数字(SD)卡接口,该团队将数据、需求和地址线从SD卡加载到Avalon总线,使嵌入式处理器能够控制SD卡数据的读取和写入。

数码照片查看和回放

使用MicroC/FS嵌入式文件系统,相册可以通知嵌入式处理器附加存储介质中可用的照片文件,因此用户可以随时查看其图像。

特殊音乐效果

此功能使用压缩的 G.729 代码流作为音乐格式,并使用嵌入式实验室解码算法来播放选定的曲调。

照片格式压缩和解压缩

该团队将JPEG解码器模块集成到嵌入式处理器中,使用解码后的RGB数据进行所有处理,并将照片压缩为JPEG格式以进行网络传输。

数码照片网络传输

该存储驱将网络接收的 JPEG 代码流传输到 FPGA 进行处理。之后,相册通过FPGA将处理后的照片数据压缩为JPEG代码流,并通过网络传输这些流,允许用户共享图像。设计团队创建了一个具有网络功能的电路板,该电路板通过通用I/O引脚与FPGA连接(见图3)。

图 3:数码相册的硬件设计架构包括网络连接,以实现照片共享。

poYBAGNXV1iAA4DjAAGh6YU5vCs462.png

用户界面

通过为开发板配备PS/2接口,设计团队能够将鼠标和键盘功能加载到Avalon总线上,并修改板载电路,使嵌入式处理器能够响应PS/2外设。

数字照片和音频文件管理、照片编辑和处理以及水印嵌入和提取

嵌入式平台提供了支持提供这些功能的软件所需的处理资源。

系统硬件设计

相册应用程序由以下模块组成:

· SD 卡文件系统

· 键盘输入

· 音频数模转换器

· 网络控制器

· 液晶控制器

· 显卡显示器

· J 形编解码器

· 图像处理

· 音频解码

出于系统兼容性目的,设计人员使用SD卡作为照片和音乐的主要存储介质。为了获得更快的读/写性能,在开发平台上将单行SD卡读取设置修改为四行模式。

键盘和鼠标模块使用相同的协议。在每个周期中,数据线传输一些数据,时钟线传输读取的脉冲。这使设备能够将数据传输到主机,反之亦然。

尽管原型使用LCD显示器,但设计团队还创建了一个具有水平和垂直时间序列的VGA接口。SRAM存储器用作图像数据存储器,显示解压缩和处理后的图像。

系统软件设计

MicroC/OS-II 嵌入式操作系统在嵌入式处理器上运行,为数码相册应用提供软件平台。操作系统调度功能任务,作为集成多种功能的稳定平台。设计团队选择将 MicroC/OS-II 用于此应用,因为它具有效率、实时性能、小尺寸和可扩展性。

JPEG 编解码器模块转换图像格式。对于编码,系统:

· 读取位图文件并将图形信息存储在数据体系结构中

· 转换颜色模型

· 将数据划分为 8x8 块

· 对每个 8x8 数据块执行离散余弦变换 (DCT) 逆变换、逆量化和解码

· 利用读取信息生成解码所需的所有表

· 将数据存储为 JPEG 文件

对于解码,系统:

· 读取 JPEG 文件并将图形信息存储在数据体系结构中

· 利用读取信息生成解码所需的所有表

· 将数据划分为 8x8 块

· 对每个 8x8 数据块执行 DCT 逆变换、逆量化和解码

· 转换颜色模型

· 将数据存储为位图文件

通过这些过程,数字相册补充了数码相机,允许用户直接和实时地查看和编辑存储在相机中的照片。

随时随地编辑和共享

基于SOPC的设计方法为团队提供了极大的灵活性,并使系统集成能够缩短设计周期。使用多功能数码相册,摄影师拥有一个方便的系统,可以从几乎任何位置轻松快速地处理他们的图像。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19138

    浏览量

    228983
  • FPGA
    +关注

    关注

    1625

    文章

    21653

    浏览量

    601524
  • 嵌入式
    +关注

    关注

    5065

    文章

    18998

    浏览量

    302655
收藏 人收藏

    评论

    相关推荐

    了解SOLIDWORKS 2025新增强功能

    随着SOLIDWORKS 2025版本的发布,这款工程设计软件再次展示了其在设计效率、协作能力和数据管理方面的优越表现。SOLIDWORKS 2025通过引入一系列令人兴奋的新功能,不仅提升了行业标准设计解决方案的灵活性,还进一步增强了用户体验和整体性能。
    的头像 发表于 11-13 14:21 109次阅读

    基于FPGA实现数码管显示

    本文介绍数码管显示译码基本工作原理及Verilog HDL驱动代码编写,进一步熟练掌握FPGA入门基础知识。
    的头像 发表于 10-24 14:44 481次阅读
    基于<b class='flag-5'>FPGA</b>实现<b class='flag-5'>数码</b>管显示

    数码裂隙灯检查有什么作用和功能

    。以下是关于数码裂隙灯检查的作用和功能的介绍: 数码裂隙灯检查的作用 诊断眼部疾病 :数码裂隙灯能够发现和诊断各种眼部疾病,如角膜炎、结膜炎、白内障、青光眼等。 评估手术效果 :在眼科
    的头像 发表于 09-09 18:12 512次阅读

    莱迪思MachXO5D-NX FPGA的性能

    从行业第一颗安全控制FPGA芯片MachXO3D和具备“高端加密功能”的安全控制FPGA Mach-NX,到“增强型安全控制FPGA”Mac
    的头像 发表于 09-02 09:29 314次阅读

    共阳极数码管的结构和功能

    共阳极数码管是一种广泛应用的显示器件,主要用于显示数字和字母。以下是对共阳极数码管的结构和功能的详细解析,旨在满足对深入了解该器件的需求。
    的头像 发表于 08-29 18:18 1105次阅读

    数码管显示屏的作用和功能是什么

    数码管显示屏是一种广泛应用于各种电子设备中的显示技术,它具有多种作用和功能。 一、数码管显示屏的基本概念 1.1 数码管的定义 数码管,又称
    的头像 发表于 08-28 17:11 683次阅读

    数码管驱动芯片引脚功能

    数码管驱动芯片是一种用于驱动数码管显示数字或字符的集成电路。数码管驱动芯片的引脚功能是实现数码管正常显示的关键。本文将介绍
    的头像 发表于 08-28 16:08 692次阅读

    HarmonyOS开发案例:【电子相册

    如何实现一个简单的电子相册应用的开发
    的头像 发表于 05-08 09:32 593次阅读
    HarmonyOS开发案例:【电子<b class='flag-5'>相册</b>】

    fpga能实现什么功能

    FPGA(现场可编程门阵列)是一种可编程逻辑芯片,其主要作用和功能体现在多个方面。
    的头像 发表于 03-27 14:11 1246次阅读

    CYW43438需要新增增强测试项,请问如何测试SRRC?

    SRCNEW,增强了一项也就是自适应,实现了跑流,测试设备干扰规避开。 需要新增增强测试项,请问如何测试SRRC? 客户:IDPRT 操作系统:RTOS PN: CYW43438 请问是使用以下方法吗?
    发表于 03-01 08:46

    modustoolbox在正常编译中通过工程下增强了全局变量数组的长度后报错了怎么解决?

    客户使用modustoolboxdevelpcy8c6245azi-s3D72,在正常编译中通过工程下增强了全局变量数组的长度,结果编译报导不错,初始化是内存超越了。通过对比发现.bss的大小最小是25292,如附件描述,请帮忙确认识别本原因并提供解决方案,谢谢谢谢!
    发表于 01-25 06:58

    FPGA功能数字钟系统原理

    FPGA(可编程逻辑门阵列)是一种集成电路芯片,具有可编程的数字逻辑功能。多功能数字钟系统利用FPGA技术实现了时钟的显示、计时、报时等功能
    的头像 发表于 01-02 16:50 1102次阅读

    鸿蒙原生应用/元服务开发-利用picker选择器来多选相册图片

    完成某些功能测试的时候就很不方便。后来官方文档更新后,我发现一种比较方便的接口来完成这一功能。那就是利用 @ohos.file.picker (选择器),直接完成对相册里面图片的选择和多选。 正文
    发表于 12-01 17:04

    FPGA-PC1500的数码创新作品-数码音乐和语音识别

    ,将这些模块综合在一起生成最终的FPGA设计并且通过功能和时序仿真验证。 除了VHDL和Verilog语言编程,还有使用高级综合工具(High-Level Synthesis,HLS)来开发
    发表于 12-01 14:15

    需要了解的FPGA基础知识

    ,只可编程一次。 GAL结构 在PAL的基础上,又发展出了通用阵列逻辑器件GAL( Generic Array Logic),相比于PAL有两点改进:一是采用了电可擦除的CMOS工艺,可多次编译,增强了
    发表于 11-20 18:56