Behavioural requirements define the desired interaction between the circuit and its external environment. One possibility is to describe the required behaviour directly at the interface between the circuit and environment in the form of a relationship between inputs and outputs over time: `Direct behavioural requirements'. Another is to define the desired behaviour of a larger system in which the circuit is embedded: `Embedded behavioural requirements'. An example of the latter would be to define the required behaviour of a robot that the circuit controls, rather than defining the input/output relationship of the controller itself. The need to keep electromagnetic emissions within acceptable limits is often thought of at both direct and embedded levels: guidelines for the emissions of subsystems, combined with principles for systems-level design to guarantee overall performance [8].
Nonbehavioural requirements define the resources that are available to the circuit, and the environmental conditions under which it must continue to operate for some minimum lifetime at a given maximum failure rate. Examples of resources are size (silicon or circuit-board area), weight, power consumption, and construction cost. Examples of possibly relevant environmental conditions are temperature, output load, power-supply voltage, fabrication variations, defects (needing fault tolerance), electromagnetic interference (EMI), humidity, and mechanical vibration. The combinations and ranges of such environmental variables under which the circuit must meet its behavioural requirements can be thought of as defining its operational envelope: a set of points in a space spanned by the environmental variables. As an operational envelope consists partly of ranges of environmental variables, it can be visualised usefully in terms of regions for correct operation (Fig. 1). In general, an operational envelope may be of arbitrary structure, so this visual metaphor should be used with care.
We describe a circuit that performs adequately throughout the operational envelope defined for its task as being robust.
Not included above is the need to minimise the time and cost of the design process. At first sight this is not a requirement on the circuit itself, but in fact if the circuit is designed so as to be rapidly and rigourously testable, and able to be easily modified to fix design or specification errors, then time to market is reduced. Additionally, a product lifecycle often includes the release of updates, or specially customised versions of the original design, requiring a readily modifiable design. Finally, engineering design is often a process of `design exploration' [9] in which partial attempts to solve the problem are used iteratively to refine the requirements specification into a useful form.
Hence a circuit must be evaluated according to many different criteria. For example, there can be as many as 20 different criteria composing the requirements for a commercial operational amplifier, [10,11]. Typically, some of the criteria should be maximised or minimised, while others provide hard constraints. EA methods for multi-criteria [12] and constrained optimisation [13] are well developed and there is potential for them to be adapted and extended for electronics design [14,15,16,17,18,19,20].