Login

浮点

ARM 浮点架构 (VFP) 为半精度、单精度和双精度浮点运算中的浮点操作提供硬件支持。它完全符合 IEEE 754 标准,并提供完全软件库支持。 

ARM VFP 的浮点功能为汽车动力系统、车身控制应用和图像应用(如打印中的缩放、转换和字体生成以及图形中的 3D 转换、FFT 和过滤)中使用的浮点运算提供增强的性能。下一代消费类产品(如 Internet 设备、机顶盒家庭网关)可直接从 ARM VFP 受益。

VFP 应用

  • 汽车控制应用
    • 动力系统
    • ABS、牵引控制和主动悬架
  • 3D 图形
    • 数字消费类产品
    • 机顶盒、 游戏
  • 图像
  • 工业控制系统
    • 运动控制

工业和汽车领域中的许多实时控制应用都得益于 ARM VFP 提供的浮点的动态范围和准确性。汽车动力系统、防抱死制动系统、牵引控制和主动悬架系统都是关键业务应用,它们对准确性和可预测性的要求必不可少。

VFP 架构版本

在 ARMv7 架构之前,VFP 代表用于矢量运算的矢量浮点架构。

对于许多应用来说,设置硬件浮点至关重要,并且硬件浮点可用作使用高级设计工具(如 MatLab、MATRIXx 和 LabVIEW)直接对系统建模和派生应用程序代码的片上系统 (SoC) 设计流程的一部分。在与 NEON™ 多媒体处理功能结合使用时,可增强图像应用程序的性能(如缩放、2D 和 3D 转换、字体生成和数字过滤)。

迄今为止,VFP 主要有三个版本:

  1. VFPv1 已废弃。要获取详细信息,可向 ARM 发送相关请求。
  2. VFPv2 是对 ARMv5TE、ARMv5TEJ 和 ARMv6 架构中 ARM 指令集的可选扩展。
  3. VFPv3 是对 ARMv7-A 和 ARMv7-R 配置文件中 ARM、 Thumb®® 和 ThumbEE 指令集的可选扩展。可使用 32 个或 16 个双字长寄存器实现 VFPv3。术语 VFPv3-D32 和 VFPv3-D16 用于区别这两个实现选项。扩展 VFPv3 使用半精度扩展,可在半精度浮点和单精度浮点之间提供双向转换功能。
 
 


VFP9-S

ARM VFP9-S 可合成矢量浮点 (VFP) 协处理器与所有 ARM9E™ 系列处理器内核兼容。它支持单精度和双精度浮点;使 ARM 支持软件完全符合 IEEE754,或仅使硬件大致符合 IEEE754。支持代码包含两个组件:例行程序库和一组异常处理程序,前者执行未实现功能(如超越函数)和一些支持的功能(如分割),后者用于处理异常情况。

VFP9-S 功能

  • ARM VFPv2 ISA
  • 16 个双精度或 32 个单精度寄存器
  • 使 ARM 支持代码完全符合 IEEE754
  • 大致符合 IEEE754 的快速运行模式(仅硬件)
  • 与 VFP10 和 VFP11 保持二进制兼容
  • 可使用支持工具和单元库移植到任何工艺
  • 100 - 130K 门
  • 1.3Mflops/MHz
  • 面积 <1.0mm2 TSMC 0.13µm G
  • 180 - 210MHz(最坏情况)TSMC 0.13µm G
  • <0.4mW/MHz(典型情况)功耗 TSMC 0.13µm G

VFP9-S 优点

ARM VFP9-S 的矢量处理功能对汽车动力系统、车身控制应用和图像应用(如打印中的缩放、转换和字体生成以及图形中的 3D 转换、FFT 和过滤)中使用的浮点运算提供增强的性能。下一代消费类产品(如 Internet 设备、机顶盒和家庭网关)可直接从 ARM VFP9 受益。

VFP9-S 应用

  • 汽车控制应用:
    • 动力系统
    • ABS、牵引控制和主动悬架
  • 3D 图形
  • 数字消费类产品
    • 机顶盒、游戏机
  • 图像
    • 激光打印机、静态数码相机、数码摄像机
  • 工业控制系统
    • 运动控制

工业和汽车领域中的许多实时控制应用都得益于 ARM VFP9-S 提供的浮点的动态范围和准确性。汽车动力系统、防抱死制动系统、牵引控制和主动悬架系统都是关键业务应用,它们对准确性和可预测性的要求必不可少。

将 VFP9-S 整合到 SoC 设计中后,可使开发速度更快、性能更可靠。使用技术计算工具(MatLab、MATRIxx 等)可直接对系统建模和派生应用程序代码,从而确保系统设计行为更准确、可靠和可预测。


VFP10

ARM VFP10 是硬宏单元矢量浮点 (VFP) 协处理器,与所有 ARM10E™ 系列的 CPU 内核兼容。它支持单精度和双精度浮点;使 ARM 支持软件完全符合 IEEE754,或仅使硬件大致符合 IEEE754。支持代码包含两个组件:例行程序库和一组异常处理程序,前者执行未实现功能(如超越函数)和一些支持的功能(如分割),后者用于处理异常情况。

VFP10 功能

  • ISA 是 ARM VFPv2
  • 16 个双精度或 32 个单精度寄存器
  • 具有 64 位 LD/ST 接口的大型独立寄存器文件
  • 使 ARM 支持代码完全符合 IEEE754
  • 大致符合 IEEE754 的快速运行模式(仅硬件)
  • 与 VFP9 和 VFP11 保持二进制兼容
  • 标量和矢量操作支持(FP DSP 的理想选择)
  • 并行 LD/ST、FMAC 和 DIV/SQRT 执行引擎
  • 2.0Mflops/MHz
  • 面积 ~1.16mm 2 TSMC 0.13µm LV
  • 最多 325MHz(最坏情况)TSMC 0.13µm LV
  • <0.4mW/MHz(典型情况)功耗 TSMC 0.13µm LV

VFP10 指令集 (VFPv2)

  • 运算:
    • Add、Sub、Mult、Neg-Mult、Negate、Abs Value、Compare、Div、Square Root
  • FMAC(单版本和双版本):
    • Multiply-Add、Multiply-Subtract、Neg-Multiply-Add、Neg-Multiply-Subtract
  • 类型转换
  • 加载/存储标量和矢量,64 位/周期

VFP10 优点

ARM VFP10 的矢量处理功能对汽车动力系统、车身控制应用和图像应用(如打印中的缩放、转换和字体生成以及图形中的 3D 转换、FFT 和过滤)中使用的浮点运算提供增强的性能。下一代消费类产品(如 Internet 设备、机顶盒和家庭网关)可直接从 ARM VFP10 受益。

许多应用程序本身可从浮点的动态范围和准确性中受益。许多应用程序将移至到嵌入式应用程序,这些应用程序多年来始终基于浮点。推出 VFP10 后,可使用技术计算工具(如 MatLab 或 MATRIxx)轻松转换到嵌入式领域。

VFP10 应用

  • 汽车控制应用
    • 动力系统
    • ABS
    • 牵引控制和主动悬架
  • 数字消费类产品
    • 机顶盒、游戏机
  • 3D 图形
    • FFT 和 FIR 过滤
  • 图像
    • 激光打印机、静态数码相机、数码摄像机
  • 工业控制系统
    • 运动控制

工业和汽车领域中的许多实时控制应用都得益于 ARM VFP10 提供的浮点的动态范围和准确性。汽车动力系统、防抱死制动系统、牵引控制和主动悬架系统都是关键业务应用程序,它们对准确性和可预测性的要求必不可少。将 VFP9-S 整合到 SoC 设计中后,可使开发速度更快、性能更可靠。使用技术计算工具(MatLab、MATRIxx 等)可直接对系统建模和派生应用程序代码,从而确保系统设计行为更准确、可靠和可预测。


Maximise


Cookies

We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set