From WikiChip
Editing arm holdings/microarchitectures/cortex-a77

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.

Latest revision Your text
Line 5: Line 5:
 
|designer=ARM Holdings
 
|designer=ARM Holdings
 
|manufacturer=TSMC
 
|manufacturer=TSMC
|manufacturer 2=samsung
 
|manufacturer 3=SMIC
 
 
|introduction=May 27, 2019
 
|introduction=May 27, 2019
 
|process=10 nm
 
|process=10 nm
Line 22: Line 20:
 
|renaming=Yes
 
|renaming=Yes
 
|stages=13
 
|stages=13
|decode=4-way
+
|decode=6-way
 
|isa=ARMv8.2
 
|isa=ARMv8.2
 
|feature=Hardware virtualization
 
|feature=Hardware virtualization
Line 41: Line 39:
 
|predecessor=Cortex-A76
 
|predecessor=Cortex-A76
 
|predecessor link=arm holdings/microarchitectures/cortex-a76
 
|predecessor link=arm holdings/microarchitectures/cortex-a76
|successor=Cortex-A78
+
|successor=Hercules
|successor link=arm holdings/microarchitectures/cortex-a78
+
|successor link=arm holdings/microarchitectures/hercules
 
}}
 
}}
'''Cortex-A77''' (codename '''Deimos''') is the successor to the {{armh|Cortex-A76|l=arch}}, a low-power high-performance [[ARM]] [[microarchitecture]] designed by [[ARM Holdings]] for the mobile market. Deimos was designed by Arm's Austin, Texas team. This microarchitecture is designed as a synthesizable [[IP core]] and is sold to other semiconductor companies to be implemented in their own chips. The Cortex-A77, which implemented the {{arm|ARMv8.2}} ISA, is a high performance core which is often combined with a number of low(er) power cores (e.g. {{\\|Cortex-A55}}) in a {{armh|DynamIQ big.LITTLE}} configuration to achieve better energy/performance.
+
'''Cortex-A77''' (codename '''Deimos''') is the successor to the {{armh|Cortex-A76|l=arch}}, a low-power high-performance [[ARM]] [[microarchitecture]] designed by [[ARM Holdings]] for the mobile market. Deimos was designed by Arm's Austin, Texas team. This microarchitecture is designed as a synthesizable [[IP core]] and is sold to other semiconductor companies to be implemented in their own chips. The Cortex-A77, which implemented the {{arm|ARMv8.2}} ISA, is the a performant core which is often combined with a number of lower power cores (e.g. {{\\|Cortex-A55}}) in a {{armh|DynamIQ big.LITTLE}} configuration to achieve better energy/performance.
  
 
== History ==
 
== History ==
 
[[File:arm deimos roadmap.png|right|thumb|Arm client roadmap with Deimos.]]
 
[[File:arm deimos roadmap.png|right|thumb|Arm client roadmap with Deimos.]]
Development of the Cortex-A77 started in 2014. [[Arm]] formally announced Deimos during Computex on May 27 2019.
+
Development of the Cortex-A76 started in 2014. [[Arm]] formally announced Deimos during Computex on May 27 2019.
  
 
== Process Technology ==
 
== Process Technology ==
Line 76: Line 74:
 
== Architecture ==
 
== Architecture ==
 
=== Key changes from {{\\|Cortex-A76}} ===
 
=== Key changes from {{\\|Cortex-A76}} ===
* Performance
+
* Significant [[IPC]] uplift ([[Arm]] self-reported around 20% IPC on [[SPEC CPU2006]]/[[SPEC CPU2017]] int)
** [[IPC]] uplift ([[Arm]] self-reported around 20% IPC on [[SPEC CPU2006]]/[[SPEC CPU2017]] int)
 
 
* Front-end
 
* Front-end
 
** [[Branch-prediction]]
 
** [[Branch-prediction]]
Line 89: Line 86:
 
* Execution engine
 
* Execution engine
 
** 1.5x wider instruction fetch (6 instrs/cycle, up from 4)
 
** 1.5x wider instruction fetch (6 instrs/cycle, up from 4)
** 1.0x wider decode (4-way)
+
** 1.5x wider decode (6-way, up from 4-way)
 
** 1.5x wider rename/comit (6-way, up from 4-way)
 
** 1.5x wider rename/comit (6-way, up from 4-way)
 
*** lower latency recovery from branch mispredict flushes
 
*** lower latency recovery from branch mispredict flushes
Line 115: Line 112:
 
=== Block Diagram ===
 
=== Block Diagram ===
 
==== Typical SoC ====
 
==== Typical SoC ====
:[[File:cortex-a77 soc block diagram.svg|450px]]
+
:[[File:cortex-a77 soc block diagram.svg|550px]]
 
 
 
==== Individual Core ====
 
==== Individual Core ====
:[[File:cortex-a77 block diagram.svg|700px]]
+
:[[File:cortex-a77 block diagram.svg|850px]]
 
 
 
=== Memory Hierarchy ===
 
=== Memory Hierarchy ===
 
The Cortex-A77 has a private L1I, L1D, and L2 cache.
 
The Cortex-A77 has a private L1I, L1D, and L2 cache.
Line 192: Line 187:
 
There are six pipelines in the integer cluster - an increase of two additional integer pipelines from {{\\|Enyo}}. One of the changes from {{\\|Enyo}} is the unification of the issue queues. Previously each pipeline had its own issue queue. On Deimos, there is now a single unified issue queue which improves efficiency. Deimos added a new fourth general math ALU with a typical 1-cycle simple math operations and some 2-cycle more complex operations. In total, there are three simple ALUs that perform arithmetic and logical data processing operations and a fourth port which has support for complex arithmetic (e.g. MAC, DIV). Deimos also added a second branch ALU, doubling the throughput for branches.
 
There are six pipelines in the integer cluster - an increase of two additional integer pipelines from {{\\|Enyo}}. One of the changes from {{\\|Enyo}} is the unification of the issue queues. Previously each pipeline had its own issue queue. On Deimos, there is now a single unified issue queue which improves efficiency. Deimos added a new fourth general math ALU with a typical 1-cycle simple math operations and some 2-cycle more complex operations. In total, there are three simple ALUs that perform arithmetic and logical data processing operations and a fourth port which has support for complex arithmetic (e.g. MAC, DIV). Deimos also added a second branch ALU, doubling the throughput for branches.
  
There are two {{arm|ASIMD}}/FP execution pipelines. This is unchanged from {{\\|Enyo}}. What did change is the issue queues. As with the integer cluster, the ASIMD cluster now features a unified issue queue for both pipelines, improving efficiency. As with {{\\|Enyo}}, the ASIMD on Deimos are both 128-bit wide capable of 2 [[double-precision]] operations, 4 single-precision, 8 half-precision, or 16 8-bit integer operations. Those pipelines can also execute the cryptographic instructions if the extension is supported (not offered by default and requires an additional license from [[Arm]]). Versus {{\\|Enyo}}, Deimos added a second AES unit in order to improve the throughput of cryptography operations.
+
There are two {{arm|ASIMD}}/FP execution pipelines. This is unchanged from {{\\|Enyo}}. What did change is the issue queues. As with the integer cluster, the ASIMD cluster now features a unified issue queue for both pipelines, improving efficiency. As with {{\\|Enyo}}, the ASIMD on Deimos are both 128-bit wide capable of 2 [[double-precision]] operations, 4 single-precision, 8 half-precision, or 16 8-bit integer operations. Those pipelines can also execute the cryptographic instructions if the extension is supported (not offered by default and requires an additional license from [[Arm]]). Versus {{\\|Enyo}, Deimos added a second AES unit in order to improve the throughput of cryptography operations.
  
 
===== Memory subsystem =====
 
===== Memory subsystem =====
Line 244: Line 239:
 
* Arm Tech Day, 2019.
 
* Arm Tech Day, 2019.
 
* Arm. ''personal communication''. 2019.
 
* Arm. ''personal communication''. 2019.
 
== Documents ==
 
* [[:File:arm cortex a77 sog.pdf|Cortex-A77 Software Optimization Guide]]
 
* [[:File:arm cortex a77 trm.pdf|Cortex-A77 Technical Reference Manual]]
 

Please note that all contributions to WikiChip may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see WikiChip:Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)
codenameCortex-A77 +
core count1 +, 2 +, 4 +, 6 + and 8 +
designerARM Holdings +
first launchedMay 27, 2019 +
full page namearm holdings/microarchitectures/cortex-a77 +
instance ofmicroarchitecture +
instruction set architectureARMv8.2 +
manufacturerTSMC +, samsung + and SMIC +
microarchitecture typeCPU +
nameCortex-A77 +
pipeline stages13 +
process10 nm (0.01 μm, 1.0e-5 mm) +, 7 nm (0.007 μm, 7.0e-6 mm) + and 5 nm (0.005 μm, 5.0e-6 mm) +