MPNA: A Massively-Parallel Neural Array Accelerator with Dataflow
  Optimization for Convolutional Neural Networks
  The state-of-the-art accelerators for Convolutional Neural Networks (CNNs)
typically focus on accelerating only the convolutional layers, but do not
prioritize the fully-connected layers much. Hence, they lack a synergistic
optimization of the hardware architecture and diverse dataflows for the
complete CNN design, which can provide a higher potential for
performance/energy efficiency. Towards this, we propose a novel
Massively-Parallel Neural Array (MPNA) accelerator that integrates two
heterogeneous systolic arrays and respective highly-optimized dataflow patterns
to jointly accelerate both the convolutional (CONV) and the fully-connected
(FC) layers. Besides fully-exploiting the available off-chip memory bandwidth,
these optimized dataflows enable high data-reuse of all the data types (i.e.,
weights, input and output activations), and thereby enable our MPNA to achieve
high energy savings. We synthesized our MPNA architecture using the ASIC design
flow for a 28nm technology, and performed functional and timing validation
using multiple real-world complex CNNs. MPNA achieves 149.7GOPS/W at 280MHz and
consumes 239mW. Experimental results show that our MPNA architecture provides
1.7x overall performance improvement compared to state-of-the-art accelerator,
and 51% energy saving compared to the baseline architecture.
