Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Thursday October 31 2019, @02:06AM   Printer-friendly
from the processing-in-a-disorderly-manner dept.

SiFive Announces First RISC-V OoO CPU Core: The U8-Series Processor IP

In the last few year's we've seen an increasing amount of talk about RISC-V and it becoming real competitor to the Arm in the embedded market. Indeed, we've seen a lot of vendors make the switch from licensing Arm's architecture and IP designs to the open-source RISC-V architecture and either licensed or custom-made IP based on the ISA. While many vendors do choose to design their own microarchitectures to replace Arm-based microcontroller designs in their products, things get a little bit more complicated once you scale up in performance. It's here where SiFive comes into play as a RISC-V IP vendor offering more complex designs for companies to license – essentially a similar business model to Arm's – just that it's based on the new open ISA.

Today's announcement marks a milestone in SiFive's IP offering as the company is revealing its first ever out-of-order CPU microarchitecture, promising a significant performance jump over existing RISC-V cores, and offering competitive PPA metrics compared to Arm's products. [...] SiFive's design goals for the U8-Series are quite straightforward: Compared to an Arm Cortex-A72, the U8-Series aims to be comparable in performance, while offering 1.5x better power efficiency at the same time as using half the area. The A72 is quite an old comparison point by now, however SiFive's PPA targets are comparatively quite high, meaning the U8 should be quite competitive to Arm's latest generation cores.

Performance gains over previous designs are substantial:

The performance increases compared to previous generation SiFive cores are extremely impressive: Against a U54 at ISO-process, the new U84 features a 5.3x performance increase in SPECint2006. When taking into account the process node improvements that allow the U84 to clock higher, the generational increases that we'd be seeing in products will be more akin to a factor of 7.2x.

In terms of PPA, compared to a U7-series CPU, IPC increases come in at 2.3x resulting in 3.1x higher performance (ISO-process). A lot of the performance increases of the U8-series come thanks to the increased frequencies capabilities which are 1.4x higher this generation, with the core scaling up to 2.6GHz on 7nm.

On the same 7nm process, the U84 lands in at 0.28mm² per core and a cluster comprising four cores and a 2MB L2 cache measure in at 2.63mm². For comparison, an Arm Cortex-A55 as measured on the Kirin 980, also on 7nm, a core with its 128KB private L2 cache comes in at 0.36mm². Given that SiFive promises of similar performance to a Cortex-A72, which in turn would be more than double the performance of an A55, it looks like SiFive's U84 core would be extremely competitive in terms of its PPA.

Related: Qualcomm Invests in RISC-V Startup SiFive


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by DannyB on Thursday October 31 2019, @03:47PM (2 children)

    by DannyB (5839) Subscriber Badge on Thursday October 31 2019, @03:47PM (#914178) Journal

    I vaguely remember back in the 90's learning a little about Power PC (on classic Mac). The conditional branch instruction could specify whether the developer (or compiler) expected the branch to be more likely to be taken or not. I could go for that. If that bit in the instruction is wrong once the branch condition is fully known, then some efficiency is lost. But only one path is speculatively executed, not two.

    --
    People today are educated enough to repeat what they are taught but not to question what they are taught.
    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 1, Interesting) by Anonymous Coward on Thursday October 31 2019, @07:14PM (1 child)

    by Anonymous Coward on Thursday October 31 2019, @07:14PM (#914287)

    You can do that now. Both the developer and the compiler can determine how the conditional jumps are likely to execute (through things like explicit marking or PGO). The compiler then selects the proper jump instruction based on the expected outcome. The problem is that even if you have this sort of speculative execution, you theoretically still at risk for some of the attacks.

    • (Score: 2) by DannyB on Thursday October 31 2019, @08:19PM

      by DannyB (5839) Subscriber Badge on Thursday October 31 2019, @08:19PM (#914312) Journal

      +1 Thanks

      --
      People today are educated enough to repeat what they are taught but not to question what they are taught.