Arm Community
  • Site
  • User
  • Site
  • Search
  • User
  • Groups
    • Arm Research
    • DesignStart
    • Education Hub
    • Graphics and Gaming
    • High Performance Computing
    • Innovation
    • Multimedia
    • Open Source Software and Platforms
    • Physical
    • Processors
    • Security
    • System
    • Software Tools
    • TrustZone for Armv8-M
    • 中文社区
  • Blog
    • Artificial Intelligence
    • Automotive
    • Healthcare
    • HPC
    • Infrastructure
    • Innovation
    • Internet of Things
    • Machine Learning
    • Mobile
    • Smart Homes
    • Wearables
  • Forums
    • All developer forums
    • IP Product forums
    • Tool & Software forums
    • Pelion IoT Platform
  • Activity
  • Support
    • Open a support case
    • Documentation
    • Downloads
    • Training
    • Arm Approved program
    • Arm Design Reviews
  • More
  • Cancel
Processors
  • Developer Community
  • IP Products
  • Processors
  • Jump...
  • Cancel
Processors
Processors blog The features I would like in my ARM processor (part 1)
  • Blogs
  • Leaderboard
  • Forums
  • Videos & Files
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
  • New
More blogs in Processors
  • DesignStart blog

  • Machine Learning IP blog

  • Processors blog

  • TrustZone for Armv8-M blog

Tell us what you think
Tags
  • features
  • Processor
  • Architecture
  • Cortex-R
  • brainstorm
  • Microcontroller
  • Cortex-A
  • Cortex-M
  • cpu
  • ideas
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

The features I would like in my ARM processor (part 1)

Jens Bauer
Jens Bauer
November 21, 2013

Originally this blog post was intended to be all-in-one, but I was suggested to split it into smaller parts.

So what I'll do, is that I'll mention the features I'd like in my ARM processor, one at a time, piece by piece.

The purpose of this, is to throw in new ideas (good and bad) to the ARM engineers.

-Features, that may be able to make a difference, especially features, which would help the soft- and hardware developers in getting to new places.

Now let's start...

128-bit floating point registers.

Currently, the only processor I know of, that supports 128-bit floating point calculation, is the PowerPC (combining two 64-bit registers).

If we had 128-bit floating point registers, we could calculate precision math very quickly.

Where is it needed ?

  • Physics engines; often vector units only supports up to 32-bit single-precision floating point calculations, which is not enough for these things.
  • Real-life physics calculations and simuations (airodynamics and the like)
  • Advanced compression engines; increasing compression ratio and speeding up compression.
  • 3D compression of 2D movies (using a 3D computer model represented as 2D) would make movie file sizes much smaller and perhaps quicker to decompress.
  • When not doing calculations, the FPU can be used for moving data quickly (as usual).

What would I use it for ?

I'd use such feature to make billions of planet gravity calculations per second.

These mainly include multiply and add, subtract and square-root calculations.

Having a high precision vector unit would definitely make insane performance boosts here.

I know we will get there some day (after Cortex-A57), but the sooner we'll get it, the sooner we'll get the cool end-results.

Perhaps it'll be the next Cortex-A, which can deliver an impressive performance when it comes to precision math, opening up further possibilities.

What would you use it for ?

If you had a 128-bit precision floating point unit, what would you use it for - or what kind of things do you think it could be used for ?

Anonymous
Parents
  • Jens Bauer
    Offline Jens Bauer over 6 years ago

    My brother and I have discussed the use of 128-bit floats a few years back.

    He needs them desperately and wanted to try out some things on my Mac, even though he's not at all interested in Mac/PPC.

    He mentioned that he's disappointed with that intel long doubles are only 96 bit (which also sounds strange to me).

    For now, 64-bit integer registers will be OK for a while. Having 128-bit integer registers in addition to the 128-bit float registers would make it easier to transfer values between the units, but perhaps not required.

    As long as a 64-bit integer value could be transferred to a 64-bit float, I think we'd probably do fine there.

    In addition to what I mentioned in the above post, there will be large benefits in audio compression as well. New video and audio formats will be invented, since compression will have higher ratio and the lossy compression quality wlll be improved too.

    I must say that the idea jonnydoin mentions is very interesting. -If not reducing the number of simultaneous registers and register values, the idea is indeed worth looking further into.

    Perhaps the register file could be 'semi shared', which means the integer registers could have two register-banks; one shared with the floating point unit and one private. I know that partly disagrees with Jonny's idea about saving silicon, but I would prefer being able to keep twice as many values in registers.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Comment
  • Jens Bauer
    Offline Jens Bauer over 6 years ago

    My brother and I have discussed the use of 128-bit floats a few years back.

    He needs them desperately and wanted to try out some things on my Mac, even though he's not at all interested in Mac/PPC.

    He mentioned that he's disappointed with that intel long doubles are only 96 bit (which also sounds strange to me).

    For now, 64-bit integer registers will be OK for a while. Having 128-bit integer registers in addition to the 128-bit float registers would make it easier to transfer values between the units, but perhaps not required.

    As long as a 64-bit integer value could be transferred to a 64-bit float, I think we'd probably do fine there.

    In addition to what I mentioned in the above post, there will be large benefits in audio compression as well. New video and audio formats will be invented, since compression will have higher ratio and the lossy compression quality wlll be improved too.

    I must say that the idea jonnydoin mentions is very interesting. -If not reducing the number of simultaneous registers and register values, the idea is indeed worth looking further into.

    Perhaps the register file could be 'semi shared', which means the integer registers could have two register-banks; one shared with the floating point unit and one private. I know that partly disagrees with Jonny's idea about saving silicon, but I would prefer being able to keep twice as many values in registers.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Children
No Data
Processors blog
  • Processors blog: How to generate litmus tests automatically with the diy7 tool

    Jade Alglave
    Jade Alglave
    The second tutorial on using the Memory Model Tool, this blog offers a working example of how to generate litmus tests automatically with the diy7 tool.
    • June 11, 2020
  • Processors blog: Introducing the Arm Cortex-X Custom Program

    Stefan Rosinger
    Stefan Rosinger
    Read this introduction to the Arm Cortex-X Custom Program, outlining what the new program entails and providing details about the new Arm Cortex-X1 CPU which is part of the program.
    • May 26, 2020
  • Processors blog: Arm Cortex-A78 CPU: Sustained Performance for Greater Digital Immersion

    Vincent Risson
    Vincent Risson
    This blog explores the key features and benefits of the Arm Cortex-A78 CPU.
    • May 26, 2020