4
Q Euromicro, 1976 North-Holland Publishing Co., Amsterdam HARDWIRED LOGIC AND MICROPROCESSORS C. MICHEL Ing~nieur ~ la Soci~tg SINTRA, ASNIERES, FRANCE Conf~rencier g l'Ecole Centrale d'Electronique de Paris Abstract These lecture notes are intended for engineers and students who wish to acquire a general, yet sufficiently precise knowledge on logical sys- tems. This is primarily an introductory work that pre- sents most of the methods of synthesis of sequen- tial logical systems from the most classical (Huffmann's method) to the most recent ones (Petri nets). Emphasis is placed on how the concept of micro- programming derives naturally from that of hard- wired systems. The methods of optimizing combinational circuits have not been developed here (Karnaugh maps Tison's method, etc...) since they can be found in most of the textbooks on logical circuits. However, I have tried to collect in a single vo- lume notions that are scattered i~ the littera- ture. The technological aspect of integrated circuits has not been neglected in order to allow the rea- ders to apply rapidly the theory in practice. The microprocessor has now become such an impor- tant component as the triode in the 1950's, or the transistor in the 1960's, with more and more applications coming in the future, that today no one should ignore its function, its structure and its possibilities. CONTENTS I - Introduction 2 - Combinational systems : Canonical forms, ROM's and P.L.A.'s, technolo- gy : gates ; selectors ; decoders ; delay ti- me 3 - Sequential systems : Definition a) asynchronous systems : Huffmann's method b) synchronous systems : Moore Machine - Mealy machine - linear sequential systems c) sequential circuit technology 4 - Logical systems : Definition Microprogramming : - Wilkes' machine - hardwired and microprogrammed computers - notion of micromachine - microprocessor - microcomputer (input/output ; memory ; instructions ; ti- ming ; ALU ; interruptions...) Microprogramming : e.g. : multiplication - division - instruc- tion - interpretation - shortening the length of a microprogram 5 - Petri nets and P.L.A. (~) 6 - Multiprocessors : pipe-line and parallel ma- chines - associative array processor I - Introduction Nowadays techniques are oriented more and more towards digital data processing due to the low cost and miniaturization of integrated circuits. Moreover, such processing is much more accurate than analog processing, does not require practi- cally any readjustment and is thus perfectly re- producible. (~) This chapter has been written with the colla- boration of Mr. C.L. Kwan, Universitg de Tech- nologie de Compi~gne France.

Hardwired logic and microprocessors

Embed Size (px)

Citation preview

Page 1: Hardwired logic and microprocessors

Q Euromicro, 1976 North-Holland Publishing Co., Amsterdam

HARDWIRED LOGIC AND MICROPROCESSORS

C. MICHEL

Ing~nieur ~ la Soci~tg SINTRA,

ASNIERES, FRANCE

Conf~rencier g l'Ecole Centrale

d'Electronique de Paris

Abstract

These lecture notes are intended for engineers and students who wish to acquire a general, yet sufficiently precise knowledge on logical sys- tems.

This is primarily an introductory work that pre- sents most of the methods of synthesis of sequen- tial logical systems from the most classical (Huffmann's method) to the most recent ones (Petri nets).

Emphasis is placed on how the concept of micro- programming derives naturally from that of hard- wired systems.

The methods of optimizing combinational circuits have not been developed here (Karnaugh maps Tison's method, etc...) since they can be found in most of the textbooks on logical circuits. However, I have tried to collect in a single vo- lume notions that are scattered i~ the littera- ture.

The technological aspect of integrated circuits has not been neglected in order to allow the rea- ders to apply rapidly the theory in practice.

The microprocessor has now become such an impor- tant component as the triode in the 1950's, or the transistor in the 1960's, with more and more applications coming in the future, that today no one should ignore its function, its structure and its possibilities.

CONTENTS

I - Introduction

2 - Combinational systems :

Canonical forms, ROM's and P.L.A.'s, technolo- gy : gates ; selectors ; decoders ; delay ti-

me

3 - Sequential systems : Definition

a) asynchronous systems : Huffmann's method

b) synchronous systems : Moore Machine - Mealy machine - linear sequential systems

c) sequential circuit technology

4 - Logical systems : Definition

Microprogramming : - Wilkes' machine - hardwired and microprogrammed computers

- notion of micromachine - microprocessor - microcomputer

(input/output ; memory ; instructions ; ti-

ming ; ALU ; interruptions...)

Microprogramming :

e.g. : multiplication - division - instruc- tion - interpretation - shortening the

length of a microprogram

5 - Petri nets and P.L.A. (~)

6 - Multiprocessors : pipe-line and parallel ma- chines - associative array processor

I - Introduction

Nowadays techniques are oriented more and more towards digital data processing due to the low cost and miniaturization of integrated circuits. Moreover, such processing is much more accurate than analog processing, does not require practi- cally any readjustment and is thus perfectly re- producible.

(~) This chapter has been written with the colla- boration of Mr. C.L. Kwan, Universitg de Tech-

nologie de Compi~gne France.

Page 2: Hardwired logic and microprocessors

2 C. I IICHEL

If data is presented in analog form, an ana- log digital converter assures the conversion to digital data. (The inverse conversion will be done by a digital-analog converter) (see fig. I)

(0) s)'5 tern

_._E.FJ.g_~_ Samp in 9

B (0) = zero o~der sample-and-hold circuit (a register that samples data at discrete times).

Logical systems are now implemented more and more by the use of microprogramming, even when they are very simple in design. (In fact it can be shown that every logical system can be implemented by a microprogrammed system)~.

The figure below (Fig. 2) shows clearly the importance of MICROPROCESSORS

ELectronic s_v5 ('¢rn

Nmr,g wired Log,c~L ~j s t e rn.s

D'I ArnpLi Fic=l:ion

-_E.iF i g.._L-

S~,np[inq

V . ~ Hardwir'd logi~:oL j ys ~:~rrl.¢

I )J pro .ararnrncd

sj, s t ~ m s

provided the microprogrammed system is fast enough.

3 The reasons for microprogramming :

As will be seen later, microprogramming of- fers considerable advantages as compared to hardwired systems. They are, from the design standpoint :

- the simplicity of equipment,

- the universality of equipment,

- avoidance of tedious debugging,

- versatility (the same equipment can be used for another application),

and from the user standpoint : flexibility.

In fact the great interest of microprogram- ming is its flexibility of usage as opposed

to hardwired systems. All modifications de- manded by the user can be done without chan- ging the hardware (which is very costly and sometimes even impossible).

Microprocessors : one chip

The manufacturers of components, having under- stood the state of things, make a great effort today in developing and imposing their micro- processors.

However, we should be on our guard with regard to the equipment proposed to us. For very often, a Read-Only Memory and a register can replace (at a lower cost) the microprocessors proposed by the american suppliers. In fact, we should not forget that the microprocessors are accompanied by a software which is some- times difficult to implement.

HARDWIRED SYSTEMS =================

2 - Combinational systems (summary)

Definition :

Inpu~ 8 _.~Fi~.3.._

~'is a vecteur of boolean variables -~ 0

e.g. : e = ]

0 I

0

For each value~of e corresponds one (and only one) value of S. Formally, we have :

St + 0 = f (et) (see Fig. 3)

@ : delay time (in the logical levels of the combinational circuit) of the input variables.

The function f is not injective (one to one) (i.e. xl~xg~ f (x]):~= f (x2), it is simply surjectzve ~on-to) (i.e. (Vy 6 F) (3 x EE ) (y = f (x)).

f is a boolean function (see Fig. 4)

Page 3: Hardwired logic and microprocessors

HARDWIRED LOGIC AND MICROPROCI(SSORS 3

Let us recall simply that all combinational cir- cuits can be put in the disjunctive (X~) or con- junctive form (~X).

The classical methods of reducing logical func- tions give one of the two forms (the other form is obtained by applying de Morgan's Theorem).

The canonical forms(X~ i~x) do not always repre- sent the minimum circuit of a function. More elaborate methods enable us to obtain the minimum of elementary gates.

cf. - synthesis by exclusive OR - synthesis by NAND and NOR operators - synthesis of combinational ~ircuits by ma-

trix methods that allows the introduction of sub-functions that already exist

- synthesis by using a multiplexer.

~:2~!Z-~IZ (ROM) :

All combinational circuits can be implemented by read-only memories :

I E ~emo~ > 5 Ad~r~s ~ o [ =

_F ig5~ U n i w ~ a [ combtno~iona[ cir~;~ Definition of a read-only memory : a read-unly memory is a combinational circuit whose inputs are called ADDRESSES and outputs DATA (Fig. 5).

The truth--table of the circuit is programmed by the USER.

It is a memory which can only be read.

To every address, the user assigns a pattern.

In the ROM's, the pattern assigned to each ad~ dress is written in the memory by a costly ope- ration (mask). Only the manufacturer of compo~ nents is capable of doing it. These memories are used in the case of mass production of the same memory configuration.

PROM (Programmable ROM) : The user has the pos- sibility of assigning one (and only one) pattern to each address of the memory.

He can write the digits in the memory himself.

But once the memory is programmed electronical- ly (~) it is impossible to modify its contents.

REPROM (Reprogran~nable ROM) : The same memory can be erased and programmed electronically again for another configuration.

Technology : Read-only memories with 2 K bits in one chip now exist (organisation : addresses of 9 bits, words of 4 bits, | bit strobe).

The delay between input and output does not ex- ceed 50 ns.

(~) in fact we melt the fuses inside the memory.

Limitations of r_egd~only_memsries/the P.L.A. (~) Let us imagine a combinational circuit having ]6

inputs and 4 eutputs. How man~ read$on)y memories must be used in order to implement such a cir-

A simple calculation shows that 128 circuits must be used.

Thus we see that the number of circuits grow ve- ry rapidly with the number of bits in the address. In fact, the question has not been completely sta- ted. For if there are non specified inputs (don't cares in the Karnaugh map) we can use a PL# which can be viewed as a read-only memory having a great number of bits in the address (e.g. 16) and a li- mited number of product terms (e.g. 96).

Canonical form : = b = d

. . . . . . . . . . . . . . = + ~ I t L=~L I 1 LeveL

E x a m p L e :

- F i g . 6 -

Number of levels = 3

The delay time of a level :

- in TTL technology is I0 ns - in TTL.S technology 5 ns - in ECL ]0 K technology 2 ns - in ECL ]00 K technology 0.7 ns

However the AND, OR circuits (canonical form) can only exist in two levels.

A memo~ ceLL A ~ s s

atomizer _ F_~ig. 7 ~

I n o r d e r to o b t a i n the d a t a f r om an a d d r e s s , we must :

]) decode this address; 2) read the corresponding memory cell, 3) multiplex the different cells, 4) amplify the output.

Thus the access time of a read-only memory is much greater than the delay time of the levels in a hardwired combinational circuit.

NOTA : A microprogrannned system is slower than a hardwired system.

(~) Programmable Logic Array (for more details see chapter 5).

Page 4: Hardwired logic and microprocessors

4 C. MICHEL

3 - Sequential systems

a) _Asyn£hlon£us_s~stems

Definition of a sequential system :

It is a system in which, as different from com- binational circuits, the state of the outputs (0 or 1) depends not only on the inputs to the system , but also on another variable (the time).

In fact the outputs depend on the preceeding states of the system (or still, on the order in which the inputs have been applied).

We can write : S t = f (Et, Et _ ]' Et _ 2,...)

Equation 1

It can be shown that Eq. I can be put in the form of two equations in introducing another variable called state variable (see Fig. 8 and Fig. 9) :

list = f (Et' Qt )

Qt + ! = g (Qt' Et) S=qu=nt;aL circuit

£1- _ I . 1 St " l ('omblnabonaL c |~ i q~ I ' ircuit

S t : Outpu~ Qt ÷1 Qt :State variobL~

_ F..~i g. g ~

---3 EE- ~ circuiL v c i rcu i t l

~eLo.vZJ '

-F_,jig. 9 ~

If Qt = Qt + ]' the state Q is said to be STABLE

If Qt Qt + I' the state is said to be L~STABLE

If at time t, St.changes implies E t has changed the system is sald to be asynchronous

A change in input variables causes a change in state.

Synthesis of asynchrous sequential systems

Huffmann's method :

The different steps are stated briefly below :

]) construction of the flow diagram 2) coding of states 3) orimitive phase matrix

4) Reduction of the matrix (equivalent states, combining the rows)

5) verification of adjacencies - cascades 6) coding of internal states

- transition matrix - output matrix

~ ! ~ : A and B are two buttons that cannot be acted on simultaneously (see Fig. 10)

We would like to identify (decode) the following sequence : we press A, then B : we release B, then A.

All other sequences produce a zero output :

t l 1 - - ~ 1 ,, 0 1 - ~ - I 0 0 - - - - , - 1

0 - - ~ - I __~Fi9.1_9._0_I t - - ~ I

Let us represent each state of the sequential system by a circle (Fig. ]1) :

S

~£]Fi I%/!_

1 - Flow Diagram : B A

~ 1 1 I 4

_ F.._jg. I L oQ

2 - Primitive phase matrix : -= Inpu~ variab[~ g=

B

a _

-

° $ F a I

h ~

_ F.ji g ~.j~_L

A S

1

4

0

1

0

0 0

HoLolJions : 1 = sLaEe 4 s[ablD

I TO B E C O N T I N U E D IN I T H E N E X T I S S U E I

I