previous | contents | next

10 Part 1½Fundamentals Section 1 ½ Abstraction and Notation

other, the same entities, properties, and relations being given in both.

The lowest level in Fig. 1 is the circuit level. Here the components are R's, L's, C's, voltage sources, and nonlinear devices. The behavior of the system is measured in terms of voltage, current, and magnetic flux. These are continuously varying quantities associated with various components, and so there is continuous behavior through time. The components have a discrete number of terminals, whereby they can be connected to other components. Figure 2 shows both an algebraic and a graphical description of an inverter circuit, as well as an algebraic and a graphical description of its behavior. We note that its structure is specified first as a circuit (a directed graph), with symbols for the arcs and nodes. The particular circuit still is an abstraction because the transistor Q1, the resistor R, and the stray capacitances C8 are given only token values. The structure can be described symbolically by first writing the relationship describing each of the components (Ohm's law, Faraday's law, etc.) and then the equation which describes the interconnection of the components (i.e., Kirchoff's laws). We observe the behavior of the circuit (probably using an oscilloscope) by applying an input ei(t) and observing an output e0(t). Alternatively, if we solve the equations which specify the structure, we obtain expressions which describe the behavior explicitly.

The circuit level is not in fact the lowest level that might be used in describing a computer system. The devices themselves require a different language, either that of electromagnetic theory or that of quantum mechanics (for the solid-state devices). It is usually an exercise in a course on Maxwell's equations to show that circuit theory can be derived as a specialization under appropriately restricted boundary conditions. Actually, even at its level of abstraction, circuit theory is not quite adequate to describe computer technology, since there are a number of mechanical devices which must be represented. Magnetic tapes and disks are most likely to come to mind first, but card readers, card punches, line printers, and terminals are other examples. These devices obey laws of motion and are analyzed in units of mass, length, and time. The next level is the logic level. It is unique to digital technology, whereas the circuit level (and below) is what digital technology shares with the rest of electrical engineering. The behavior of a system is now described by discrete variables which take on only two values, called 0 and 1 (or + and -' true and false, high and low). The components perform logic functions: AND, OR, NOT, NAND, etc. Systems are constructed in the same way as at the circuit level, by connecting the terminals of components, which thereby identify their behavioral values. The laws of boolean algebra are used to compute the behavior of a system from the behavior and properties of its components.

The previous paragraph described combinational circuits whose outputs are directly related to the inputs at any instant of time. If the circuit has the ability to hold values over time (store information), we get sequential circuits. The problem that the combinational-level analysis solves is the production of a set of outputs at time t as a function of a number of inputs at the same time t. As described in textbooks, the analysis abstracts from any transport delays between input and output; however, in engineering practice the analysis of delays is usually considered to be still part of the combinational level. In Fig. 3 we show a combinational network formed from combinational elements which realize three boolean output expressions, 01, 02, and 03, as a function of the input boolean variables A and B. Note that in the symbolic representation of the structure we can write an expression that reflects the structure of the combinational network, but, on reduction, the boolean equations no longer reflect the actual structure of the combinational circuit but become a model to predict its behavior.

The representation of a sequential switching circuit is basically the same as that of a combinational switching circuit, although one needs to add memory components, such as a delay element (which produces as output at time t the input at time t - t). Thus the equations that specify structure must be difference equations involving time. Again, there is a distinction (even in representation) between synchronous circuits and asynchronous circuits, namely, whether behavior can be represented by a sequence of values at integral time points (t = 1, 2, 3, . . . ) or must deal in continuous time. But this is a minor variation. Figure 4 gives a sequential logic circuit in both an algebraic and a graphical form and shows also the representation of the behavior of the system.

Now it is clear that logic circuits are simply a subspecies of general circuits. Indeed, to design the logic components one