Article Preview
TopIntroduction
Self-awareness in humans and animals is described and defined in many different ways and from many different perspectives in many different texts, for example: philosophy (Güzeldere, 1995), modern sciences (Cohen, 2002), cognitive sciences (Baars, 1988), and psychology (Rochat, 2003). An insightful, modern overview is presented in Tonnini (2008). Self-awareness theory states that “when we focus our attention on ourselves, we evaluate and compare our current behaviour to our internal standards and values” (Amir, 2004). For man-made systems, the definition of self-awareness remains almost identical despite the fact that such systems are much simpler. For computer systems assisted by “artificial intelligence” the self-awareness is defined in three different ways (Amir, 2004):
- •
Explicit self-awareness: where a computer system has a self-model that represents knowledge about itself, the current situation, activities, goals, knowledge, etc., in a form that lends itself to use by a general reasoning system.
- •
Self-monitoring: the computer system monitors its internal processes and acts according to some rules.
- •
Self-explanation: the agent can recount and justify its actions and inferences.
Here, we will work with the second definition, the self-monitoring, specifically with self-monitoring of a mixed-signal VLSI circuits based on Σ−Δ analogue to digital converter that include some analogue and some digital functionality. In addition, the ADC may be the only mixed-signal module in a system, or just a part that performs the analogue-to-digital conversion of the analogue signals coming from other analogue or mixed-signal modules. The corresponding digital signal processing (DSP) executes part of the hardware or software algorithm that may help to evaluate the results of the monitoring process and act according to some built-in rules.
Monitoring is an essential part of any self-aware and/or self-adaptive system (Amir, 2004); it is a new and difficult topic for digital systems. Several different ideas in the context of self-awareness have recently appeared. The idea presented by Santambrogio (2010) is to monitor and adapt the behaviour of a distributed computer system and to find the best way to accomplish a given goal, despite changing environmental conditions and demands. The work is based on the properties that a self-aware computing system should be goal-oriented, adaptive, have self-healing properties, and be approximate in the sense that it uses the least amount of computational resources to meet the goals. To achieve those properties for computer digital systems, the authors use “Application Heartbeats,” which provide a standardised way for applications to report their performances to an external observer. Many other techniques and ideas exist that are related to the self-awareness of digital systems. For example, the autonomic computing paradigm (Kephart, 2003) deals with a network of processors, and performs the necessary operation without the need of dedicated attention, with the main objectives of self-configuration, self-healing, self-optimization, self-monitoring, and self-awareness. Another idea is known as “organic” computing (Gudeman, 2008) and “bio-inspired embedded system” (Madrenas, 2011). All of them are related to computer hardware and/or software systems.