[2021-04-20] DiAG: A Dataflow-Inspired Architecture for General-Purpose Processors

less than 1 minute read

Published:

In my point of view, it is basically a spatial dataflow architecture with more general compatiblity.

Difference from dataflow architecture

  1. instructions are assigned in program order, but execute out-of-order
  2. use register lanes instead of register file to contruct a dataflow graph and serve as a reorder buffer
  3. PEs are chained rather than a 2D array

Dataflow in DiAG architecture

Pros and Cons

  • Dynamic datapaths constructed by DiAG are reusable, thus loop iterations can execute at an efficiency close to accelerators

  • On the other hand, applications that are memory-centric or contain significant control divergence perform poorly since most cycles are wasted on stalls
  • area overhead

My questions

Why CGRA could not be a main processor, but only be a co-processors?