Self-organization in the context of computing systems refers to a technological approach to deal with the increasing complexity associated with the deployment, maintenance, and evolution of such systems. The terms self-organizing and autonomous are often used interchangeably in relation to systems that use organic principles (self-configuration, self-healing, and so on) in their design and operation. In the specific case of system on chip (SoC) design, organic principles are clearly in the solution path for some of the most important challenges in areas like logic organization, data movement, circuits, and software. In this article, we start by providing a definition of the concept of self-organization as it applies to SoCs, explaining what it means and how it may be applied. We then provide a survey of the various recent papers, journal articles, and books on the subject and close by pointing out possible future directions, challenges and opportunities for self-organizing SoCs.
De La Guardia, R. and Gershenson, C. (2012). Self-organizing sys- tems on chip. Intel Technology Journal, 16(2):182–201.