The Synopsys ARC® FastMath Pack for ARC HS processors is a set of hardware extensions and an accompanying set of software wrapper functions that provide a collection of additional instructions supporting a range of mathematical functions that can be used with all ARC HS processors. These include

  • Basic saturating arithmetic
  • Trigonometric functions
  • Logarithmic and exponential functions
  • Fractional division and square root functions

The instructions support 16-bit and 32-bit data types. In addition to the extension instructions, the FastMath Pack includes a number of extension auxiliary registers.

All FastMath instructions are encoded in 32-bit formats and observe all of the established rules for encoding ARCv2 instructions for use with ARC HS processors. The instructions are implemented in the APEX extension space using the major opcode 0x07. In addition, all FastMath instructions and register names have the prefix “FMP_” to ensure they do not create any namespace clashes with existing ARCv2 instructions or other customer-defined instructions.

The FastMath instructions significantly reduce cycle count compared to the same functions implemented in software. They are easy to use and implemented as standard C-functions in application code.

Highlights & Key Features

  • Mathematical functions for ARC
  • HS processors
  • Basic saturating arithmetic
  • Trigonometric functions
  • Logarithmic functions
  • Exponential functions
  • Square root functions
  • Fractional division
  • Support for 16-bit and 32-bit data types
  • Significantly reduce cycle count
  • and increase performance
  • Implemented as standard
  • C-functions in application code

Product Details

Resources


Find Your IP

Search for IP

Quickly identify and access the right IP solutions for your project needs.


Foundation IP Selector

Find embedded memory and logic IP for your SoC design.

Non-Volatile Memory IP Selector

Find silicon-proven NVM IP for your SoC design needs.