1. A portable imaging device, comprising: an image sensor configured for generating signals carrying data related to an image sensed by the image sensor; a micro-controller provided on a wafer substrate; and a memory external to the micro-controller and configured for storing the data related to the image sensed by the image sensor; wherein the micro-controller comprises: a plurality of processing units interconnected in parallel by a crossbar switch; an image sensor interface for effecting data communication between the image sensor and the plurality of processing units; and a data cache connected to the plurality of processing units via a plurality of buses; wherein the crossbar switch is separate from the plurality of buses, wherein each of the plurality of processing units includes two I/O address generators, and each I/O address generator is connected to a respective one of the plurality of buses, and wherein the two I/O address generators of each of the plurality of processing units are configured for controlling a transfer of the data related to the image sensed by the image sensor from the image sensor interface to and from the memory.