The ill-famed von Neumann bottleneck has been the main performance hurdle since the invention of computers. Although several techniques such as separate data/instruction caches, branch prediction, and parallel computing have been proposed and improved efficiency, the throughput bottleneck between CPU and memory is still very much there. We propose a novel reconfigurable multi-core architecture (RMA) to address this issue via the dynamic allocation of heterogeneous computing resources and distributed memory. We show how this is feasible with the state-of-the-art technologies of dynamic partial reconfiguration of hardware resources and runtime operating system configuration. Experiments and analysis show how RMA alleviates the performance bottleneck. he is a Full Professor. His main research interests include: reconfigurable computing and system design, system-on-chip (SoC) design and verification, embedded software synthesis and verification, real-time system design and verification, hardware-software codesign and coverification, and component-based object oriented application frameworks for real-time embedded systems. This paper is a revised and expanded version of a paper entitled 'Reconfigurable multi-core architecture -a plausible solution to the von Neumann performance bottleneck' presented at 2013 IEEE 7th International Symposium on Embedded SoCs (MCSoC-13), Tokyo, Japan, 26-28 September 2013.