原创 ARM处理器的浮点运算单元(FPU)

2016-1-19 14:32 1808 14 15 分类: 消费电子
浮点运算单元(FPU)简介
Float Point Unit,浮点运算单元是专用于浮点运算的协处理器,在计算领域,例如三角函数以及时域频域变换通常会用到浮点运算。当CPU执行一个需要浮点数运算的程序时,有三种方式可以执行:软件仿真器(浮点运算函数库)、附加浮点运算器和集成浮点运算单元。 区别于以往的ARM9处理器,目前基于ContexTM构架的ARM处理均集成了浮点运算单元。如下图Toradex ARM核心板产品所示,Nvidia TegraTM 2, TegraTM 3和 NXP/Freescale i.MX 6集成了VFPv3浮点运算单元。NXP/Freescale i.MX 7 集成了VFPv4浮点运算单元。ARM 浮点架构 (VFP) 为半精度、单精度和双精度浮点运算中的浮点操作提供硬件支持。它完全符合 IEEE 754 标准,并提供完全软件库支持,与 NEONTM 多媒体处理功能结合使用时,可增强图像应用程序的性能(如缩放、2D 和 3D 转换、字体生成和数字过滤)。  
20160119142953821.jpg 
基于Toradex Colibri T20Colibri/Apalis T30使用FPU
Colibri T20 核心板带有一个 VFPv3-D16 浮点运算单元(不带 NEON) ,而 Colibri T30 和Apalis T30 带有一个VFPv3-D32 (含有 NEON),通过以下的配置,将能够有效的提高浮点运输的效率,运算量愈大愈明显。
./ Windows CE 编译器的浮点优化
在 Visual Studio 2008环境中,你可以直接为上述核心板生成含有浮点处理器加速的代码,请在您的工程中按照以下步骤进行:
对于 WinCE 6:
-    打开 “Project” 菜单并选择 “Properties”.
-    选择 “Configuration Properties : C/C++ : Advanced”.
-    改变 “Enable floating point emulation” 为 “No”.
-    改变 “Compile for architecture”为 “ARM5T /QRarch5t”.
-    选择 “Configuration Properties : C/C++ : Command Line : Additional Options”.
-    添加 “/QRfpe-“to the set of options.
-    关闭对话框并选择"OK".
对于 WinCE 7:
-    打开"Project"菜单并选择"Properties".
-    选择 "Configuration Properties : C/C++ : Command Line : Additional Options".
-    添加 "/QRfpe-" to the set of options.
-    关闭对话框并选择"OK".
请注意,这些功能在Visual Studio 2005 不能被实现。
./ 性能比较举例
通过Mark Riordan benchmark program我们做了一个简单c代码的性能比较程序。我们计算了这个循环所需要的时间如下,时间越短性能越好:
20160119143200292.jpg

文章评论1条评论)

登录后参与讨论

用户1039388 2016-1-21 17:43

这篇文章比较简单易懂。

用户836098 2010-3-12 09:57

有收获

用户767711 2010-3-11 23:03

只有创新才能求生存

用户747497 2010-3-10 19:26

支持!

用户699275 2010-3-9 09:36

把 cost down 进行到底。

用户1284259 2010-3-8 15:25

支持国货!

用户1246576 2010-3-8 15:08

从细小出看大国之崛起

用户1313366 2010-3-8 14:15

忧喜参半的一场展会

用户1228653 2010-3-8 14:02

自主创新,才是企业发展的根本

用户742976 2010-3-8 11:36

很遗憾没有机会参加这次展会。希望中国芯能够集体走向更高的起点!
相关推荐阅读
hai.qin_651820742 2024-11-29 15:29
基于 NXP iMX8QM 运行 QNX
By Toradex胡珊逢简介嵌入式领域的部分应用对安全、可靠、实时性有切实的需求,在诸多实现该需求的方案中,QNX 是经行业验证的选择。在 QNX SDP 8.0 上 BlackBerry 推出了 ...
hai.qin_651820742 2024-11-12 10:33
Yocto Linux BSP7 新版本介绍
By Toradex胡珊逢简介Toradex 已经发布了适用于 Verdin/Apalis/Colibri 模块系列的 Linux BSP 7 版本,Yocto Project 升级到 scarthg...
hai.qin_651820742 2024-10-30 10:56
基于 NXP iMX8MP 平台简单测试 PySide6 应用
By Toradex秦海1). 简介Python binding 的 Qt GUI 库一直以来有两种,最初是由 Riverbank Computing 公司在 2000 年初发布,基于 Qt4 版本推...
hai.qin_651820742 2024-10-11 15:15
Verdin AM62使用CODESYS
By Toradex胡珊逢简介CODESYS 是基于 IEC 61131-3 的 PLC 开发工具,在工业控制、交通等领域中有着广泛的应用。文章将介绍如何在 Toradex 采用 TI AM62 So...
hai.qin_651820742 2024-09-18 18:07
Verdin AM62 引脚复用配置
By Toradex胡珊逢简介Verdin AM62 是 Toradex 基于 TI AM623/AM625 SoC 的 Arm 计算机模块。它最多提供 4 个 A53 和 1 个 M4F 处理器。这...
hai.qin_651820742 2024-09-18 17:48
TI AM62X Secure Boot 流程简述
By Toradex秦海1). 简介嵌入式设备对于网络安全的要求越来越高,而 Secure boot就是其中重要的一部分。 TI AM62X 处理器基于行业标准 X.509&nbs...
我要评论
1
14
关闭 站长推荐上一条 /2 下一条