Personal tools

Difference between revisions of "IBM A2O Core"

From iis-projects

Jump to: navigation, search
(Requirements)
Line 29: Line 29:
  
 
* Profound knowledge of computer architecture
 
* Profound knowledge of computer architecture
* Experience with HDLs such as thought in ''VLSI I''
+
* Experience with HDLs such as taught in ''VLSI I''
 
* Preferably previous experience with FPGAs and / or an ASIC toolflow (simulation & synthesis)
 
* Preferably previous experience with FPGAs and / or an ASIC toolflow (simulation & synthesis)
  

Revision as of 20:05, 30 October 2020


Investigation of the high-performance multi-threaded OoO IBM A2O Core

IBM recently contributed their A2O processor core to the open-source community. The A2O is a 2-way multithreaded out-of-order core optimized for single thread performance. It is completely written in Verilog 2001.

Even though the A2O is primarily targeted for embedded applications, it features high computational throughput by running up to 3GHz in a 45nm technology node. It was created as an application-grade linux-capable processor to be integrated in large SoCs primarily targeting applications like Artificial Intelligence and Autonomous driving.

For us at IIS the core poses a great opportunity to advance from rather simple pipelined in-order cores (RI5CY, Zero-riscy, Ariane) to a full-fledged commercial superscalar, multi-threaded, out-of-order processor. There are many knobs available in RTL to tune and tweak the A2O core. As of now, only a single configuration has been tested and successfully implemented on an FPGA. There are therefore plenty of opportunities to experiment with the parameters and investigate their impact on performance, area, and speed.

Thesis Content

The thesis will be divided into the following sub tasks:

  • Initial exploration: get familiar and understand the structure of the A2O core
  • RTL synthesis: process the Verilog source of the A2O core to be compatible with our synthesis toolchain and synthesize the default configuration
  • RTL simulation: understand the interface of the core and create a testbench that can execute binaries on the processor
  • Parameter exploration: understand what parameters can be tweaked and how they influence performance, area, and speed in a 22nm node.

Requirements

  • Profound knowledge of computer architecture
  • Experience with HDLs such as taught in VLSI I
  • Preferably previous experience with FPGAs and / or an ASIC toolflow (simulation & synthesis)

Composition: 40% initial exploration and base-line synthesis, 30% RTL simulation, 40% parameter exploration

Further Reading

Project Supervisors