Computer Engineering 290. Digital Design: I. Lecture Notes Summer 2002

Size: px
Start display at page:

Download "Computer Engineering 290. Digital Design: I. Lecture Notes Summer 2002"

Transcription

1 Computer Engineering 290 Digital Design: I Lecture Notes Summer 2002 W.D. Little Dept. of Electrical and Computer Engineering University of Victoria 1

2 Preface These lecture notes complement the material covered in the textbook and the lab book for the course. 2

3 CENG 290 Lecture Topics Introduction Engineering Process Digital Design Signals and logic variables Polarized mnemonics Basic Digital Components Two-Level Combinational Logic Boolean Algebra Truth tables and Boolean Equations Design Example Karnaugh Maps Sequential Circuit Logic Design RS latch RS latch with enable D latch JK master/slave flip-flop Edge triggered D flip-flops Edge triggered JK flip-flop Flip-Flop circuits Sequential Circuit Analysis Sequential Circuit Design Design Example 1 Design Example 2 Design Example 3 Design Example 4 3-bit counter Mealy state machine Pop Machine Controller Simple Memory Based System Gate Outputs Totem pole outputs Open Collector Outputs Wired Logic Open Collector Bus Drivers Tri-State Outputs 3

4 Hazards Static Hazards Dynamic Hazards Simulation of Gate Circuits Miscellaneous Circuits and Components Multiplexors Multiplexors for Logic Multiplexors for routing Demultiplexors Decoders Counter Circuits Transmission Gates and Steering Logic Sequential Circuit Timing Minimum Clock Period Maximum Clock Skew Metastability 4

5 Introduction Engineering Process specifications design implementation -what is required -how is it -assemble to be done -marketing -engineering -manufacturing -incomplete/ambiguous -technology -test -cost -speed -install -service -reliability -documentation -modularization -algorithms -CAD 5

6 Digital Design Much of design is concerned with precisely describing how something is to be done. Being precise is very difficult. Use various types of mathematics and languages to precisely express a design. We will use: -Boolean algebra -finite difference equations -polarized mnemonics -circuit and component symbols -timing diagrams and tables -hardware description language (eg. VHDL) Real (physical) signals, components and systems are almost impossible to precisely represent or define so engineers use various simplifications or models that approximately represent or define real signals, components and systems. Such simplifications are called abstractions and we talk about a level of abstraction depending upon how much detail the simplification includes. Consider a real digital signal as an example. -the real signal is very difficult to precisely describe -a timing diagram may model the real signal -stating the signal is High or Low may model the real signal Common to use H,L to model the value (level) of a signal. Digital components and systems are often modelled by variables call logical or Boolean variables that have values of 0 or 1 and by simple operations (eg. AND, OR, INVERT) on the logical variables. 6

7 May use mathematical language, graphical language, truth table or hardware description language to represent components and systems as shown below. Mathematical language e = /a f = e.b g = c.d h = f+g Graphical language a e f b h c d g Truth table a b c d e f g h

8 Hardware Description Language (VHDL) entity and2 is port (a,b : in bit; y : out bit); end and2; architecture basic of and2 is begin and2_behavior : process is begin y<= a and b after 2 ns; wait on a,b; end process and2_behavior; end architecture basic; entity or2 is port (a,b : in bit; y : out bit); end or2; architecture basic of or2 is begin or2_behavior : process is begin y<= a or b after 2 ns; wait on a,b; end process or2_behavior; end architecture basic; entity inv1 is port (a : in bit; y : out bit); end inv1; architecture basic of inv1 is begin inv1_behavior : process is begin y<= not a after 2 ns; wait on a; end process inv1_behavior; end architecture basic; 8

9 9 architecture struct of system is signal e,f,g : bit; begin inv_1 : entity work.inv(basic) port map (a,e); and_1 : entity work.and(basic) port map (e,b,f); and_2 : entity work.and(basic) port map (c,d,g); or_1 : entity work.or(basic) port map (f,g,h); end architecture struct;

10 Signals and logic variables Real components and systems have signals. Digital design models signals with logic variables. analog signals digital signals -all signal levels (voltages) of interest -use R,L,C, op-amps etc. to process -processing can be very fast (gigahertz) -subject to noise problems -only interested if signal is above (H) or below (L) a threshold value -threshold about 1.4 volts for TTL, 2.5 volts for CMOS -several or many digital signals used to represent an analog signal or value -digital signals relatively immune to noise logic variables -have values 0 or 1 -logic variables represent assertions -0 means assertion is false -1 means assertion is true - example assertions: the motor is running the switch is up the temperature is too hot bit #7 has value 1 the reset condition is applied -use variable name that mean something ie. m_run as a logic variable name to represent the assertion "the motor is running", b7 as a variable name to represent the assertion "bit#7 has value 1", reset as a variable name to represent "the reset condition is applied" -often use 1 letter logic variable names to simplify equations 10

11 Polarized Mnenonics (names) When digital signals represent logic variables we may let H represent 1 or H represent 0. (L, of course, will represent the other logic value). If a system always uses H to represent 1 we says the system uses positive logic. If a system always uses H to represent 0 we say the system uses negative logic. If a system sometimes uses H to represent 1 and sometimes uses H to represent 0 we say the system uses mixed logic. When mixed logic is used we use polarized mnemonic signal names such as m_run(h) to mean that the motor is running when the digital signal is H and reset(l) to mean that the reset condition is applied when the signal is L. In concise terminology we say that a signal named x(h) means that the logic variable x is asserted when the signal is high. Examples 1. Positive or negative logic system door_closed enable_starter_switch seat_belt_buckled The logic variable names and signal names are the same. For positive logic, enable_starter_switch = 1 when the output voltage is high. For negative logic, enable_starter_switch = 1 when the output voltage is low. 11

12 2. Mixed logic system door_closed(l) enable_starter_switch(l) seat_belt_buckled(h) low. Polarized mnemonics are used for the signal names. enable_starter_switch = 1 when the output voltage is 12

13 Basic Digital Components SPST switch +5V 1K switch_open(h) SPST switch used to generate digital signal SPDT pushbutton +5V 1K 1K pb_up(l) pb_down(l) SPDT pushbutton Analog to Digital Converter A/D V in 8-bit A/D bit 0 (L) bit 1 (L) bit 7 (L) 13

14 Light Emitting Diode Symbol I + V - IV Characteristic I.6 volt V 14

15 NPN Transistor Symbol I collector I base + V CE - Characteristic For Ibase sufficiently positive, VCE is approximately.2 volt and collector current can flow. PNP Transistor Symbol I emitter I base + V EC - Characteristic For Ibase sufficiently negative, VEC is approximately.3 volt and emitter current can flow. 15

16 NMOS Transistor Symbol I drain + V GS - + V DS - Characteristic For VGS sufficiently positive, VDS is approximately 0 and drain current can flow. PMOS Transistor Symbol I source + + V GS - V SD - Characteristic For VGS sufficiently negative, VSD is approximately 0 and source current can flow. 16

17 TTL gates There are several families of transistor-tranistor logic gates. The 7400 series, the 74LS (low power Schottky) series and the 74 FAST series are wiely used. All the components in a given family are directly interconnectable. Interconnection of components from different families is sometimes possible but requires detailed knowledge of the specifications to know if components are compatible and how many components can be driven from another component. TTL components require a 5 volt power supply. Several common TTL components are illustrated below D 74 CLK PR/ / CLR/ D CLK PR/ CLR/ DN 5 UP 6 9 D 10 C A B / 8 11 LOAD 14 CLR BO CO D C B A TTL inverter, NAND, flip-flop and counter chips 17

18 TTL voltage specifications If Vin >= VIH = 2 or Vin <= VIL =.8 then Vout >= VOH = 2.4 or Vout <= VOL =.4 When a TTL output drives a TTL input the high level noise margin is =.4 volt. When a TTL output drives a TTL input the low level noise margin is =.4 volt. Hence TTL can withstand a noise spike of at least.4 volts between an output and an input before a logic level will be affected. TTL current specifications I I I O 74LS component For a high IOH <= -400 ua IIH <= 20 ua Therefore high fanout = 400/20 = 20 For a low IOL >= 8 ma IIL >= -.4 ma Therefore low fanout = 8/.4 = 20 18

19 Timing specifications Input Output t plh t phl Propagation delays measured from 50% levels Rise and fall times measured between 10% and 90% levels Propagation delays approximately: 10 nsec. for LS 8 nsec. for TTL 5 nsec. for F 19

20 TTL inverter Input/Ouput Characteristics V out threshold V in Inverters in a loop Odd number oscillate with half period = tp1 + tp2 + tp3 tp1 tp2 tp3 Even number has two stable states. 20

21 Two-Level Combinational Logic Combinational logic Output = Function(Inputs) We will study sequential logic where State = Function(Inputs, State) and Outputs = Function(State, Inputs) later. Two-level Input signals or their complements pass through, at most, two gates to effect the output. Example /A B C X D X = /A. B + C. D Material Covered Boolean Algebra Gates Truth Tables Karnaugh Maps Canonic (standard) Forms Circuits 21

22 Boolean Algebra A Boolean algebra consists of a set of elements B, together with two binary operations + and. and a unary operation / such that the following axioms hold: 1. The set B contains at least two elements a,b such that a/=b. 2. Closure: For every a,b in B, a. a + b is in B b. a. b is in B 3. Commutative laws: For every a,b in B a. a + b = b + a b. a. b = b. a 4. Associative laws: For every a,b,c in B a. (a + b) + c = a + (b + c) = a + b + c b. (a. b). c = a. (b. c) = a. b. c 5. Identities: a. There exists an element with respect to +, designated by 0, such that a + 0 = a for every a in B. b. There exists an element with respect to., designated by 1, such that a. 1 = a for every a in B. 6. Distributive laws: For every a,b,c in B, a. a + (b. c) = (a + b). (a + c) b. a. (b + c) = (a.b) + (a. c) 7. Complement: For each a in B, there exists an element /a in B (the complement of a) such that a. a + /a = 1 b. a. /a = 0 22

23 When B is the set {0,1}, + is the OR operation,. is the AND operation and / is the NOT operation defined as follows then the Boolean algebra is called Switching algebra. a b a + b a b a.b a /a These operations are represented symbolically as follows a a + b a a.b a /a b b OR + AND. NOT / Duality Note that the axioms occur in pairs. This property of Boolean Algebra leads to the Duality Theorem stated as follows; {f(x1,x2,...,xn,0,1,+,.)} D = f(x1,x2,...,xn,1,0,.,+) ie, the dual of an expression is obtained by interchanging 0s and 1s and interchanging +s and.s. If f( ) = g( ) then {f( )} D = {g( )} D DeMorgan's Theorem (for finding the complement of an expression) /{f(x1,x2,...,xn,0,1,+,.)} = f(/x1,/x2,...,/xn,1,0,.,+) 23

24 Examples The above theorems and axioms are used to simplify Boolean expressions and to put expressions in alternate equivalent forms. Ex1. Find the complement of a + b + c By DeMorgan /(a + b + c) = /a. /b. /c Ex2. Show that a. b + a./b = a a. (b + /b)=?a distributive axiom a. 1 =?a complement axiom a = a identity axiom Ex3. What is the dual of the following relationship? (X + /Y). Y = X. Y {(X + /Y). Y} D = (X. Y) D X. /Y + Y = X + Y Truth tables and Boolean Equations A truth table is a table that specifies a Boolean function. That is, it gives the value of an output Boolean varaible for all possible input variable combinations. Example A B C X

25 Here, X is a function of the three variables A,B,C. There are 2 3 input combinations that are enumerated. For n input variables there are 2 n input combinations and 22 n possible functions of the n input variables. The above table is only 1 of 256 possible functions of 3 variables. The above function was selected at random as a example. It is easy to write Boolean equations that are equivalent to a truth table. For the above truth table X=1 when (A=0).(B=0).(C=0) + (A=0).(B=1).(C=0) + (A=0).(B=1).(C=1) + (A=1).(B=1).(C=1) ie X = /A./B./C + /A. B. /C + /A.B.C + A.B.C 1. Try substituting input values to convince yourself of the validity of this equation. It is also possible to get an equation for X by considering the 0's of the function. X=0 when (A=0).(B=0).(C=1) + (A=1).(B=0).(C=0) + (A=1).(B=0).(C=1) + (A=1).(B=1).(C=0) ie X = (A+B+/C). (/A+B +C). (/A+B+/C). (/A+/B+C) 2. It is very important that you try substituting values in this equation to make sure it agrees with the truth table. 25

26 Equation 1 is said to be in sum of product form SOP. A more precise term would be OR of AND form. Equation 2 is said to be in product of sum form POS. A more precise term would be AND of OR form. Equation 1 has 4 product terms while equation 2 has 4 sum terms. A product term that contains each variable or it's complement is called a minterm. A sum term that contains each variable or it's complement is called a maxterm. A variable or it's complements is called a literal. A SOP equation in which all product terms are minterms is called a minterm canonic form. A POS equation in which all sum terms are maxterms is called a maxterm canonic form. It is very easy to convert between truth tables and canonic forms. It is also easy to augment SOP and POS equations to form canonic forms. eg. X = A.B + C SOP form X = AB(C + /C) + (A + /A)(B + /B)C X = ABC + AB/C + ABC + A/BC +/ABC + /A/BC X = ABC + AB/C + A/BC + /A/BC Minterm Canonic Form The minterms are named mi and the maxterms are named Mi as illustrated below for three variables, a,b,c. m0 = /a/b/c m1 = /a/bc m2 = /ab/c m3 = /abc m4 = a/b/c m5 = a/bc m6 = ab/c m7 = abc M0 = a+b+c M1 = a+b+/c M2 = a+/b+c M3 = a+/b+/c M4 = /a+b+c M5 = /a+b+/c M6 = /a+/b+c M7 = /a+/b+/c The minterms and maxterms are obtained from the binary number corresponding to the subscript. For example, for 5 variables, x,y,d,s,k, m13 = /xyd/sk and M22 = /xy/d/sk. Equation 1 above can be expressed as X = m0 + m2 + m3 + m7 = m0,m2,m3,m7 26

27 Equation 2 above can be expressed as X = M1.M4.M5.M6 = π M1,M4,M5,M6 Note that the subscripts not present in the m list are present in the M list. Hence it is easy with this notation to convert between minterm and maxterm canonic forms. Design Example Design of a circuit module (full adder) for a binary adder. A common binary adder known as a ripple adder is shown below. an bn an-1 bn-1 a2 b2 a1 b1 a0 b0 cn+1 FAn cn FAn-1 cn-1 FA2 c2 FA1 c1 FA0 c0 sn sn-1 s2 s1 s0 An n bit ripple adder uses n full adder modules to add a binary number A = {an,an-1,...a2,a1,a0} to binary number B = {bn,bn-1,...b2,b1,b0}. Si are the sum bits and ci are the carry bits. For the ith module ai bi ci si ci

28 Therefore we can write si = m1+m2+m4+m7 = M0.M3.M5.M6 ci+1 = m3+m5+m6+m7 = M0.M1.M2.M4 Using Boolean Algebra or other means si and ci+1 can be expressed as si = ai bi ci ci+1 = ai.bi + (ai bi).ci where is the exclusive OR operation A full adder circuit for si and ci+1 is given below. The circuit given uses a small number of simple components. si is generated after 2 gate delays and ci+1 is generated after 3 gate delays. The canonic equations could also be directly implemented to give 2 level circuits for both si and ci+1 but more components and more complex components would be required. ai si bi ci ci+1 Full Adder Module. 28

29 Karnaugh Maps K-maps are used to determine 2 level SOP and POS equations, and subsequently circuits, that have a minimum number of literals. Such circuits are often the cheapest to implement. In general, 2 level circuits are also the fastest circuits possible. K-maps are classic paper and pencil maps for determining optimum circuits for up to 6 variable systems. Computer suitable tabular methods like the uine McCluskey method to be studied later are suitable for more variables. K-maps contain the same information as truth tables but the input combinations are arranged so that adjacent cells in a K-map are a unit distance apart. With this arrangement a group of 2 m cells is equivalent to a product (or sum) term with n-m literals when dealing with an n variable system. The smallest number of largest possible groups that cover all the 1s (or 0s) in a K-map gives rise to a minimum equation.for the output variable. 29

30 Two equal length binary sequences are a Hamming distance k apart if they differ in k corresponding positions. For example, the sequence differs from the sequence in 4 corresponding positions therfore the distance between the two sequences is 4. Examples of 2, 3 and 4 variable K-maps are given below. a 0 1 b x 2 Variable K-map ab c x 3 Variable K-map ab cd x 4 Variable K-map 30

31 Consider the 3 variable map. The two adjacent 1s in the 2 adjacent cells corresponding to abc = 000 and 010 give rise to the subexpression /a./b./c + /a.b./c = /a./c. The b variable drops out because the 2 cells are a unit distance apart. Hence if we group cells of 1s as shown below we can write x by inspection as x = /a./c + b.c ab c x For the 4 variable map we cover the 1s with the smallest number of largest possible groups as shown below. ab cd x There are 3 groups. The 4 1s in the corners form a group since the corner cells are adjacent. By inspection we get x = /c./d + /a.c + /b./d This SOP equation contains a minimum number of literals, ie 6. 31

32 Some Definitions Implicant: A product term corresponding to a group of adjacent K-map cells. Prime Implicant : A product term corresponding to a largest possible grouping of adjacent K-map cells. Essential Prime Implicant: If a cell is covered by only 1 prime implicant, that prime implicant is an essential prime implicant. K-map Minimization Procedure Identify all prime implicants. Select a minimum number of prime implicants that cover the 1s. 32

33 Examples ab c x prime implicant prime implicant Example with 11 implicants and 2 prime implicants. 33

34 ab x essential prime implicants Example with 7 implicants, 3 prime implicants and 2 essential prime implicants Don't Cares Sometimes input combinations never occur or it doesn't matter what the output is for a given input combination. Such conditions are called don't cares. They can be used to minimizes logic expressions. A K-map with don't cares is shown below. The X s are don't cares. For the purpose of finding a prime implicant cover they can be treated as either a 0 or a 1. 34

35 ab X X cd X X f K-map for POS expression f = b./c + /b./d f may also be written in canonical form as f = Σ m0,m2,m4,m5,m13 + Σ d8,d10,d12,d15 ab X X cd X X f f = (/b + /c). (b + /d) To get a POS expression you may also group the 1s on a K-map of /f to get a SOP expression for /f then use DeMorgan to get the POS expression for f. See example below. 35

36 ab X X cd X X /f Therefore /f = b.c + /b.d f = (/b + /c). (b + /d) 5 Variable K-map Use 3D to visualize 2 2D K-maps and group in 3D. e = 1 ab cd e = 0 ab cd f f = b.d + a./b.c./d + /a./b./c./e 36

37 6 Variable K-Map Same approach as 5 variable K-map but use 4 planes as illustrated below ef = cd ef = 10 ab cd ab ef = cd ab ef = cd ab K-Map Method Summary f. K-map method is an easy to use graphical paper and pencil method to obtain two level SOP and POS expressions that contain a 37

38 minimum number of literals. Method is suitable for up to 6 variables. Sequential Circuit Logic Design Digiatal circuits can be divided into two classes. Combinational circuits and sequential circuits. The steady state outputs of combinational circuits, as we have seen, are functions only of the inputs, ie outputs = Function(inputs). We have looked at some aspects of simple conbinational circuits and we will be returning to look at many more aspects. Sequential circuits are digital circuits whose outputs depend upon a sequence of inputs. The sequence of inputs that have been applied is remembered by the state variables of the circuit. There are two classes of sequential circuits, Moore and Mealy. For Moore sequential circuits For Mealy sequential circuits state = Function(state, inputs) outputs = function(state) state = Function(state, inputs) outputs = function(state,inputs) Note that the current state (ie state variables) is fed back to determine the next state. All sequential circuits have feedback. Sequential circuits are the basis of digital circuits that exhibit memory including flip-flops, registers, counters, and controllers. Sequential circuits are a very important class of circuit. Sequential circuits are often considerably more complex than combinational circuits. 38

39 The following is a block diagram of a generic sequential circuit. input variables next state logic for Mealy only next state variables memory output logic output variables state variables A memory element is required for each state variable. The memory may be simply the capacitance or delay of a gate as it is in asynchronous sequential circuits or it may be a set of flip flop memory elements. as it is in synchronous (clocked) sequential circuits. We will start our study of sequential circuits by studying the RS latch flip-flop and then study other flip-flops, counters, clocking methods, design methods, and controllers. RS Latch The RS latch is a basic asynchronous sequential circuit that is the heart of all flip-flops. Flip-flops, in turn, are the heart of all registers, counters and controllers. The following is a basic latch with no inputs. If the output of either inverter is forced high or low it will remain high or low after the forcing signal is removed. The circuit 39

40 remembers the state of the last forcing signal. This is the basis of digital memory. If the inverters are replaced by NOR gates or NAND gates so that forcing signals can be more easily applied we get two versions of the RS latch as shown below. S R NOR form of RS latch /R /S NAND form of RS latch R is a signal to reset to 0 and S is a signal to set to 1. For the NOR circuit For the NAND circuit = /(R + /( + S)) = /(R + /./S ) = /R.( + S) = /(/S. /(./R)) = /(/S.(/ + R)) = S +./R These are called the characteristic equations for the circuits. They give the next state as a function of the present state and the inputs. In actual fact, with perfect (mathematical) operations the RS does not work since the on the left side of the equations cannot be different from the on the right hand side. There must be some delay in the loop for the latch to be able to change state. One possible model to handle this situation is shown below for the NAND implementation. 40

41 /R /S + delay To distinguish next state and present state the next state is usually labeled + and the present state is labeled as shown. The characteristic equation becomes + = S +./R A next state table can be easily constructed from the characteristic equation: S R A timing diagram to illustrate the behavior of the NAND circuit is given below. S R + Note that is a delayed version of + and that if S and R are 1 simultaneously that S wins out. 41

42 Some models of the RS latch do not behave deterministically when S and R are simultaneously changed from 1 to 0. To avoid nondeterministic behavior R and S are often restricted to not being 1 simultaneously. State diagrams are often used to specify sequential circuits. Three forms of a state diagram for the RS latch are shown below. 00,10 /R./S + R./S RS =0 =0 = R./S /R.S R./S /R.S =1 =1 =1 RS not allowed 00,01 /R./S + /R.S These state diagrams give the next state for all valid inputs. The input combination RS = 11 is excluded for the reason given above. NOR and NAND RS latch circuits in cross-coupled form and the RS latch symbol are shown below. S / /S R /R / RS latch Circuits S R RS latch Symbol 42

43 RS Latch with enable S C S R S C R R Circuit Symbol Timing Diagram transparent transparent C T setup T hold S T prop Device is often called a level sensitive transparent latch 43

44 D Latch D C S C R D C Circiut Symbol JK Master/Slave Flip_Flop Next State K-map JK Characteristic Equation + = J./ + /K. Excitation K-map for RS implementation JK X0 X X X RS Excitation Equations R = K. S = J./ 44

45 Circuit Symbol J K C S C R P /P /C S C R / J K C Comments The left latch can set or reset while C = 1 and hence the new state may not be determined by values of J,K at time of clock negative edge. This is the 1s or 0s catching problem. Example of 1s catching: If = 0 and J = 1 momentarily while C = 1 and J,K = 0 on clock negative edge, the new will be 1 rather than 0. Example of 0s catching: If = 1 and K = 1 momentarily while C = 1 and J,K = 0 on clock negative edge, the new will be 0 rather than 1. 45

46 Edge triggered D flip-flops Characteristic equation + = D Symbols D C + edge triggered D flip-flop D C -edge triggered D flip-flop 46

47 Edge triggered JK flip-flop D flip flop excitation equation D = J./ + /K. Circuit J /K D C Symbol J K C 47

48 Concise Flip-Flop Summary =1 T T + = /.T +./T =0 T flip-flop =1 J K + = /.J +./k =0 JK flip-flop =1 D /D + = /.D +.D = D =0 D flip-flop 48

49 Flip Flop Circuits Switch Debouncer +5V S R Shift Register datain D D D D dataout C C C C clock 49

50 4-bit Asynchronous Counter +5V +5V +5V +5V count J K C b0 b1 b2 b3 J J J K K K C C C count b0 b1 b2 b3 50

51 b3,b2,b1,b State Diagram Sequential Circuit Analysis Given a sequential circuit, determine the corresponding state diagram. Analysis Steps write excitation equations write output equations generate excitation K-maps and output K-maps generate next state K-maps and output K-maps generate state diagram 51

52 Example #1 X S J C K R A /A S J C K R B /B Excitation Equations Ja = X Jb = X Ka = X./B Kb = X /A Outputs are state variables A and B Generate excitation K-maps and output K-maps AB X JaKa AB X JbKb 52

53 Generate next state K-maps State Diagram AB X A+B+ 00 AB X /x 11 X 01 X 10 X 53

54 Example#2 X S D A C R Z S J C K R B Excitation Equations Da = (A + X).B = A.B + X.B Jb = X /A Kb = /X Output equation Z = X.A + /X.B Generate excitation K-maps AB X Da AB X JbKb 54

55 Generate output K-map AB X Z Generate next state K-maps State Diagram AB X A+B+ AB X/0 00 /X/0 /X/0 11 X/1 /X/1 X/0 /X/1 10 X/1 01 Comments This example was a Mealy sequential circuit. Note the way the state diagram was drawn for the Mealy circuit. 55

56 Sequential Circuit Design Design is the reverse of analysis. The steps are: Understand problem. Generate state diagram (or other formal representation) Assign state variables to states state excitation Determine next state equations possibly using next K-maps. Determine output equations possibly using output K-maps. Specify flip-flops to be used for state variable memory. Determine excitation equations possibly using K-maps. Generate circuit or circuit description. Design Example 1 3-bit synchronous binary down counter. Assume that asynchronous sets are be used to set the counter to an initial state of state S7. Use the state variables as the outputs. State Diagram 56

57 reset S7 S0 S6 S1 S5 S2 S3 S4 State Assignment reset state variables ABC Next state K-map AB C A+B+C+ therefore Choose JK flip flops with + =./K + /.J and 57

58 58 + J K X X 1 0 X X 0

59 Excitation K-maps AB C 0 1X 0X X0 X1 1 0X 0X X0 X0 JA,KA JA = /B./C KA = /B./C AB C 0 1X X1 X1 1X 1 0X X0 X0 0X JB,KB JB = /C KB = /C AB C 0 1X 1X 1X 1X 1 X1 X1 X1 X1 JC,KC JC = 1 KC = 1 59

60 Circuit +5V S J C K R A S J C K R B S J C K R C Comments It is possible to write next state equations directly from the assigned state diagam by accounting for all cases where the next state variable is 1. This gives the following equations: but A+ = /A./B./C + A.B.C + A.B./C + A./B.C /A./B./C + A.(B + C) /A.(/B./C) + A.(/(/B./C)) A+ = /A.JA + A./KA for the A JK flip-flop. therefore JA = /B./C and KA = /B./C Similarily, but B+ = /A./B./C + A.B.C + A./B./C + /A.B.C = /B.(/A./C + A./C) + B.(A.C + /A.C) = /B./C + B. C B+ = /B.JB + B./KB for the B JK flip-flop. therefore JB = /C and KB = /C 60

61 Also but C+ = /A./B./C + A.B./C + A./B./C + /A.B./C = /C.(/A./B + A.B + A./B + /A.B) = /C C+ = /C.JC + C./KC for the C JK flip-flop. therefore JC = 1 and KB = 1 These equations, obtained directly from the assigned state diagram are the same as those obtained from the excitation maps. Design Example 2 Mealy State Machine Consider the Mealy state diagram given below. /A/B X X /Z /AB X A/B [Z] X AB X/Z X 61

62 The next state equations and the output equation can be written by inspection of the state diagram. A+ = /A.B.X + A./B.X + A./B./X B+ = /A./B./X + A.B.X + A./B./X Z = /A.B./X + A.B.X + A./B If D flip flops are to be used to store the state variables then Da = A+ and Db = B+. If JK flip flops are to be used to store the state variables then equate the characteristic equation A+ = A./Ka + /A.Ja with A+ above to get Ja and Ka and similarily for Jb and Kb. Design Example 3 Pop Machine Controller This example is a simple pop machine controller based on material in Chapter 8 of the text. The pop machine accepts nickels and dimes and dispenses pop when atleast 15 cents has been deposited. A reset button must be pushed to reset the machine before money is deposited and the machine gives no change. The machine is organized as shown below. N coin sensor D FSM controller open pop dispenser clock Note very carefully that the inputs N and D (Nickel and Dime) are asserted for 1 clock cycle and are synchronized with the clock. If the presence of a nickel, for example, depresses a switch, the following circuit could be used to generate the N input signal. 62

63 +5V X S D C R S D C R N clock The presence of a nickel lifts the pushbutton to make contact with the top contacts of the switch. X is a debounced signal that feeds a 2 bit shift register. N will be asserted for 1 clock cycle following release of the pushbutton. The state diagram of a controller that meets the problem statement is shown below. reset zero N five D N D ten N,D fifteen [open] 63

64 State variables A and B may be used to encode the states as shown below. reset /A/B N /AB D N D A/B N,D AB [open] Note that this is a Moore machine and the output open is given by open = A.B 64

65 The next state table is AB ND X X X X A+B+ The excitation tables for a JK implementation are as follows. AB X 0X X0 X0 ND 01 1X 1X X0 X0 11 X X X X 10 0X 1X X0 X0 JaKa Therefore Ja = D + N.B Ka = 0 Also AB X X0 X0 0X ND 01 0X X0 X0 1X 11 X X X X 10 1X X1 X0 1X JbKb Therefore Jb = N + D.A Kb = N./A 65

66 The controller schematic is therefore as follows. N D S J C K R open D N N S J C K R B Note also that the next state equations can be easily written directly from the state diagram. A+ = /A.B.N + /A./B.D + A./B.(/(N+D)) + A./B.(N+D) + /A.B.D + A.B B+ = /A./BN + /A.B.(/(N+D)) + /A.B.D + A./B.(N+D) + A.B The excitation equations for the chosen flip flops are obtained from these equations using the characteristic equations of the flip flops. 66

67 Design Example 4 Simple Memory Based System This example is based upon the latter part of Chapter 7 of the text. The example is also the subject of the last laboratory for the course. The system consists of a Data Path subsystem and a Controller subsystem as shown below. The system enables a user to store data in a memory and read and display the data from the memory. To store data in the memory, the user enters data on the hex keypad, sets the read/write switch to write and activates the pushbutton to store the data at the address supplied by the counter. After pushing the pushbutton, the counter is incremented so that the next time data is stored it is at the next sequential address. To read data from the current address supplied by the counter, the user sets the read/write switch to read and pushes the pushbutton. This will read data from memory and store it in the D register which in turn drives the hex display. The counter is then incremented in anticipation of the next push of the pushbutton. 67

68 68 The Data Path Subsystem

69 69 The Controller Subsystem

70 The Data Path To understand this system, first consider the Data Path circuit and its components Counter The counter is a 4 bit positive edge triggered synchronous counter with a few handy features. When LOAD and CLR are not asserted, the counter increments on a positive clock edge if P=T=1. When LOAD is asserted the counter is loaded with the data A,B,C,D on the positive edge of the clock. When CLR is asserted the counter is cleared on the positive edge of the clock. LOAD and CLR should not be asserted simultaneously and LOAD and CLR override the P=T increment enable inputs. The ripple carry out, RCO, is asserted when the count equals In the Data Path circuit it can be seen that the load feature is not used. Control signals /reset and Inc_Adr are used to clear the counter and enable incrementing the counter bit Register This register is loaded with data on the positive clock edge iff enable, EN, is asserted. In the Data Path circuit the control signal /Latch_Data is used to drive EN Octal Tri-State Buffer The buffers in this chip are enabled with the GA and GB inputs. In the Data Path circuit, the control signal, /Enab_Buf, is used to enable the buffers in order to place the contents of the hex keypad onto the memory Input/Output bus Static Ram The 2114 Static Ram is a typical static ram. In the lab you will substitute a 6116 Static Ram for the The two chips work basically the same except that the 6116 also has an output enable pin that must be asserted when reading from the chip. The 2114 is a 1K X 4 memory that uses 4096 internal flip flops to store data. The chip is enabled for use by asserting chip_select, CS. Write enable, 70

71 WE, is asserted to write data to the chip and not asserted to read data from the chip. In addition there are 10 address lines, Ai, to address a particular 4 bit piece of data (nibble) and 4 input/output lines, IOi. The IO lines are inputs when WE is asserted and outputs when WE is not asserted. In order to read from the chip the chip control signals must be applied in the correct order and meet timing constraints and the output data will be available after a specified delay. In order to write to the chip, the chip control signals and input data must be applied in the correct order and meet timing constraints. The order and timing of events is referred to as the read cycle and the write cycle. These cycles are carefully specified in the manufacturer's data books. The timing diagram that follows shows suitable read and write cycles. The Controller The controller is a sequential circuit that is responsible for generating the correct sequence of control signals to cause things to happen in the data path circuit. That is, the output signals of the controller are the input control signals of the data path. The controller used in this example uses a shift register to generate a sequence of signals, Φ1,Φ2,Φ3,Φ4 that are decoded (combined with simple logic functions) to generate the required control signals. The generates the sequence of signals following release of the push button as shown in the controller circuit diagram below. Note that a 1 cycle synchronous /GO signal, generated as per the pop machine example, initiates the sequence. To fully understand the controller the must be well understood. 71

72 72 System Timing Diagram

73 74194 Universal 4-bit Shift Register This positive edge triggered shift register call hold data, shift data left, shift data right, or load data depending upon the mode control signals S1 and S0 as given below. S1S0 function 00 hold 01 shift right 10 shift left 11 load The function takes place on the positive edge of the clock. LS1 is the left shift input and RS1 is the right shift input. A, B, C, and D are the input pins for loading new data and a, b, c and d are the shift register output bits (a is the leftmost bit). The CLR input on the is an asynchronous reset; that is the shift register is cleared immediately upon assertion of CLR and does not wait for a clock edge as in the case of the synchronous clear on the Note that feeding d back into RS1 and only shifting when GO + Φ1 + Φ2 + Φ3 + Φ4 is asserted results in a sequential circuit that cycles through 8 states. The equations for all the required control signals are given on the timing diagram. 73

74 Gate Outputs Logic gates and other logic components such as flip-flops, registers and counters typically have one of three types of outputs; totem pole, open collector or tri-state. These are described below. Totem Pole Outputs This is the most common gate output. Outputs of this type have circuitry to pull the output down to the low voltage level and circuitry to pull the output up to the high voltage level. The outputs provide good high and low logic levels for inputs of the same logic family. The output circuitry for both TTL gates and CMOS gates is illustrated below. 74

75 Vcc Inputs Circuitry Output Vcc Inputs Circuitry Output With these circuits, the top transistor is on and the bottom transistor off for a high level output and the top transistor is off and the bottom transistor on for a low level output. 75

76 Open Collector Outputs This type of output is provided to drive nonstandard loads such as light emitting diodes, lights and relays and to enable gate outputs to be connected together to realize wired logic and to drive busses. An open collector gate output is illustrared below. There is no pull up circuitry and the collector is open as an output. The output transistor is either on, for a low level, or off. When off, the output impedance of the circuit is high. The two output states are often called Low and High Z. Inputs Output Circuitry The symbols for an open collector NAND gate, an open collector inverter and an open collector buffer are shown below. The vertical line at the output indicates open collector. Collector Open Collector Open Collector Open NAND Inverter Buffer Wired Logic With wired logic, open collector gate outputs are wired together to realize certain logic functions as illustrated below. The pull up resistor is designed to provide a suitable high voltage level. 76

77 +5V a f /b c /d e f = /(a./b). /(c+/d)./e For positive logic, as illustrated above, the wired connection performs the AND function and the connection is referred to as a wired AND connection. When using mixed mode logic with a wired connection labelled as shown below the connection is referred to as a wired OR connection and f = a + b. +5V a(l) f(l) b(l) 77

78 When using mixed mode logic with a wired connection labelled as shown below the connection is referred to as a wired AND connection and f = a.b. +5V a(h) f(h) b(h) Open Collector Bus Drivers of Open collector gates are sometimes used to enable one many devices to drive a bus as shown below. +5V enable1 enable2 enable3 enable4 data1 data2 data3 data4 Only one enable signal is asserted at a time. When enablei is asserted /datai is placed on the bus. This data value can be the input to one or more device inputs that may also be connected to the bus. Note that inputs are not shown in the partial bus circuit above. Note also that the pull up resistor must be designed to give good high and low voltage levels. 78

79 Tri-State Outputs Gates with tri-state outputs have output states that can be High, Low or High Z depending upon an enable signal as shown for the tri-state buffer below. /enable a b Tri-State Buffer For this buffer, when enable is asserted b = a. When enable is not asserted, b = High Z. Tri-state gates, such as the buffer shown above, are widely used to connect multiple devices to a bus. Only one enable is asserted at a time and the enabled device pulls the bus both High and Low as required. No pull up resister is required as in the open collector bus connection method. Hazards Hazards are circuit conditions that may cause a glitch in the output of a combinational circuit when a circuit input changes level. A glitch is a momentary output pulse. We consider the case where only one input changes level at a time. Glitches are very common when two or more inputs change level simultaneously or almost simultaneously but these cases are seldom studied. Glitches may or not be a problem in a circuit. For example, glitches in the combinational circuits for the excitation variables of a clocked sequential are not a problem since the glitches disappear before the next clock pulse active edge arrives. Glitches are a problem in combinational circuits that drive a clock input and in sequential circuits that don't use a clock. Hazards are easy to detect in 2 level combinational circuits but more difficult to detect in multilevel combinational circuits. We will deal primarily with 2 level circuits. Hazards are classified as 0 static hazards, 1 static hazards or dynamic hazards. Glitches corresponding to these hazards are illustrated below. 79

80 Glitch from 0 Static Hazard Glitch from1 Static Hazard Glitch from Dynamic Hazard For a 0 static hazard the circuit output should remain 0 but it may have a 1 glitch as shown. For a 1 static hazard the circuit output should remain 1 but it may have a 0 glitch as shown. For a dynamic hazard the circuit should go cleanly from one level to another but it may have one or more glitches as shown. Static Hazards Static hazards in 2 level circuits can be detected and eliminated by considering the K-map for the circuit. Consider the following example. ab cd f The three prime implicants that cover the 1s of f are shown. If f is realized as f = /a./c + b.c, a static hazard exists when inputs change so that a different prime implicant provides the 1 output.. 80

81 For example, when abcd = 0101 prime implicant /a./c provides the 1 output. When the input changes to abcd=0111 prime implicant b.c provides the 1 output. If prime implicant /a./c goes to 0 faster than prime implicant b.c goes to 1, a 1 glitch will occur and the circuit is said to have a 1 static hazard. The hazard can be eliminated by using the redundant prime implicant, /a.b, to realize f. That is, realize f as f = /a./c + a.b + /a.b. This take one more 2 input AND gate and a 3 input rather than 2 input OR gate but the circuit will be hazard free. To eliminate static hazards in 2 level combinational circuits include redundant prime implicants so that a single prime implicant covers all transitions between adjacent cells with a 1 output. The same principal applies when functions are realized in POS form. A 2 level combinational circuit that has no 1 static hazards, has no 0 static hazards and no dynamic hazards. (This is proven somewhere but the proof will not be studied in this course. ) Dynamic Hazards A multilevel combinational circuit has a dynamic hazard if there are an odd number greater than or equal to 3, sensitized paths from an input or its complement to the output. Consider the circuit below b a c d g e f When b=1 there are 3 sensitized paths between the input a and the output g. Note that if b=0 the top path is not sensitized because the output of the AND is always 0 and therefore not sensitive to 81

82 changes in a. A timing diagram for input a changing from 0 to 1 is shown below. The diagram assumes all gates have the same delay. a c e f d g The circuit has a dynamic hazard according to the definition. With the assumed delay values the dynamic hazard gave rise to the glitch shown in the timing diagram. Regardless of the delay values, the circuit has a dynamic hazard. However, the glitch will only occur for specific ranges of component delay times. 82

83 Simulation of Gate Circuits It is often desireable to simulate logic circuits to get a better understanding of their operation. Simulation programs like LogicWorks are widely used for this purpose. In this section we will discuss the theory behind a simple but very useful and widely used simulation approach. The approach models real gates as ideal gates followed by a delay of n dt time units. With this form of gate model, logic variables are specified and evaluated only at times idt so we let x(t) = x(idt) = xi. Therefore ci = ai-3.bi-3 for example, models an AND gate with 3 units of delay. To model the following circuit a c d b when the top NOR gate has one unit of delay and the bottom NOR gate has 3 units of delay we would write the following equations known as difference equations ci = /(ai-1 + di-1) di = /(ci-3 + bi-3) Given input variables ai and bi, we can solve for output variables ci and di providing 1 past value of di and 3 past values of ci are also given. A spreadsheet program is very convenient for evaluating and displaying the results as shown below. 83

84 i a b c d -3 FALSE TRUE -2 FALSE TRUE -1 FALSE FALSE TRUE FALSE 0 TRUE FALSE TRUE FALSE 1 TRUE FALSE FALSE FALSE 2 TRUE FALSE FALSE FALSE 3 FALSE FALSE FALSE FALSE 4 FALSE FALSE TRUE TRUE 5 FALSE TRUE FALSE TRUE 6 FALSE TRUE FALSE TRUE 7 FALSE TRUE FALSE FALSE 8 FALSE FALSE TRUE FALSE 9 FALSE FALSE TRUE FALSE 10 FALSE FALSE TRUE FALSE In the above table, generated by Excel, the bold values are calculated by Excel and the other values are initial and input values. The table shows how the circuit responds to a short input a pulse followed by a short input b pulse. 84

85 Miscellaneous Circuits and Components Multiplexors A multiplexor routes 1 of many inputs to its output under the control of 1 or more select signals. Multiplexors are very useful components. 85

86 X0 X1 0 1 S Y Y = X0./C + X1.C C 2-input multiplexor X0 0 X1 1 X2 X3 X4 X5 X Y Y = X0./C2./C1./C0 + X1./C2./C1.C0 + X2./C2.C1./C0 + X3./C2.C1.C0 + X4.C2./C1./C0 + X5.C2./C1.C0 + X6.C2.C1./C0 + X7.C2.C1.C0 X7 7 S2 S1 S0 C2 C1 C0 8-input multiplexor Multiplexors for Logic It is possible to use a 2 n input mux to realize any function of n+1 variables. 86

87 Example a b c f c 0 c S1 S0 f a b Multiplexors for Routing Example: The B stage of the universal shift register. 87

88 0 A 1 C 2 D B B 3 S1 S0 Demultiplexors A demultiplexor routes a single input to one of many outputs under the control of select signals as illustrated below. 88

89 X 0 Y0 = X./A S 1 Y1 = X.A A 2-output demultipexor X Y0 = X./C./B./A Y1 = X./C./B.A Y2 = X./C.B./A Y3 = X./C.B.A Y4 = X.C./B./A Y5 = X.C./B.A Y6 = X.C.B./A S2 S1 7 S0 Y7 = X.C.B.A C B A 8-output demultiplexor Decoders A binary decoder is the same as a demultiplexor. When used as a decoder the input signal X acts an enable. When X = 0, all outputs are 0. When X = 1, one and only one output is asserted depending 89

90 upon the input combination of C, B and A. We say the outputs decode the select inputs. Decoders are commonly used to decode the state of a sequential circuit. They may also be used to generate combinational logic functions by using OR gates to combine the required minterms. The example below illustrates logic function generation X =! f = m1 + m3 + m5 + m7 S2 S1 7 S0 C B A Counter Circuits Cascaded Counters Use ripple carry out to enable counting of the next most significant stage. 90

91 +5V 7 10 P T 2 CLK 6 D 5 C 4 B 3 A 9 LOAD 1 CLR 163 RCO D C B A P T 2 CLK 6 D 5 C 4 B 3 A 9 LOAD 1 CLR 163 RCO D C B A Count from 0 to a limit +5V 7 10 P T 2 CLK 6 D 5 C 4 B 3 A 9 LOAD 1 CLR 163 RCO D C B A DCBA el even This circuit counts from 0 to 11 and then repeats. It is called a modulo 12 counter. It has 12 states. 91

92 +5V 7 10 P T 2 CLK 6 D 5 C 4 B 3 A 9 LOAD 1 CLR 163 RCO D C B A DCBA This counter counts from a base of 10 to 15. It has 6 states. Generate a waveform in response to release of a pushbutton The following circuit has a zero count rest state and counts one, two, three... ten, zero... upon application of a synchronized single cycle GO signal. 92

93 DCBA GO +5V 7 10 P T 2 CLK 6 D 5 C 4 B 3 A 9 LOAD 1 CLR 163 RCO D C B A /zero ten The 10 nonzero states can be decoded and ORed to generate any 10 cycle waveform. For example, a signal generated from the following K-map will be asserted when the counter state is two, four, six and ten. D,C B,A signal 93

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad A. M. Niknejad University of California, Berkeley EE 100 / 42 Lecture 24 p. 1/20 EE 42/100 Lecture 24: Latches and Flip Flops ELECTRONICS Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad University of California,

More information

Digital Electronics Part I Combinational and Sequential Logic. Dr. I. J. Wassell

Digital Electronics Part I Combinational and Sequential Logic. Dr. I. J. Wassell Digital Electronics Part I Combinational and Sequential Logic Dr. I. J. Wassell Introduction Aims To familiarise students with Combinational logic circuits Sequential logic circuits How digital logic gates

More information

CSE140: Components and Design Techniques for Digital Systems

CSE140: Components and Design Techniques for Digital Systems CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing What we covered thus far: Number representations Logic gates Boolean algebra Introduction to CMOS HW#2 due, HW#3 assigned

More information

Counters and Decoders

Counters and Decoders Physics 3330 Experiment #10 Fall 1999 Purpose Counters and Decoders In this experiment, you will design and construct a 4-bit ripple-through decade counter with a decimal read-out display. Such a counter

More information

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.

1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. File: chap04, Chapter 04 1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. 2. True or False? A gate is a device that accepts a single input signal and produces one

More information

IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1)

IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1) IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1) Elena Dubrova KTH / ICT / ES dubrova@kth.se BV pp. 584-640 This lecture IE1204 Digital Design, HT14 2 Asynchronous Sequential Machines

More information

CHAPTER 3 Boolean Algebra and Digital Logic

CHAPTER 3 Boolean Algebra and Digital Logic CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4

More information

Digital Electronics Detailed Outline

Digital Electronics Detailed Outline Digital Electronics Detailed Outline Unit 1: Fundamentals of Analog and Digital Electronics (32 Total Days) Lesson 1.1: Foundations and the Board Game Counter (9 days) 1. Safety is an important concept

More information

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng Digital Logic Design Basics Combinational Circuits Sequential Circuits Pu-Jen Cheng Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals of Computer Organization and Design. Introduction

More information

Lecture-3 MEMORY: Development of Memory:

Lecture-3 MEMORY: Development of Memory: Lecture-3 MEMORY: It is a storage device. It stores program data and the results. There are two kind of memories; semiconductor memories & magnetic memories. Semiconductor memories are faster, smaller,

More information

BOOLEAN ALGEBRA & LOGIC GATES

BOOLEAN ALGEBRA & LOGIC GATES BOOLEAN ALGEBRA & LOGIC GATES Logic gates are electronic circuits that can be used to implement the most elementary logic expressions, also known as Boolean expressions. The logic gate is the most basic

More information

CHAPTER 11: Flip Flops

CHAPTER 11: Flip Flops CHAPTER 11: Flip Flops In this chapter, you will be building the part of the circuit that controls the command sequencing. The required circuit must operate the counter and the memory chip. When the teach

More information

Memory Elements. Combinational logic cannot remember

Memory Elements. Combinational logic cannot remember Memory Elements Combinational logic cannot remember Output logic values are function of inputs only Feedback is needed to be able to remember a logic value Memory elements are needed in most digital logic

More information

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012 Latches, the D Flip-Flop & Counter Design ECE 52A Winter 22 Reading Assignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7. Basic Latch 7.2 Gated SR Latch 7.2. Gated SR

More information

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies ETEC 2301 Programmable Logic Devices Chapter 10 Counters Shawnee State University Department of Industrial and Engineering Technologies Copyright 2007 by Janna B. Gallaher Asynchronous Counter Operation

More information

Flip-Flops, Registers, Counters, and a Simple Processor

Flip-Flops, Registers, Counters, and a Simple Processor June 8, 22 5:56 vra235_ch7 Sheet number Page number 349 black chapter 7 Flip-Flops, Registers, Counters, and a Simple Processor 7. Ng f3, h7 h6 349 June 8, 22 5:56 vra235_ch7 Sheet number 2 Page number

More information

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems Harris Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems David Harris Harvey Mudd College David_Harris@hmc.edu Based on EE271 developed by Mark Horowitz, Stanford University MAH

More information

3.Basic Gate Combinations

3.Basic Gate Combinations 3.Basic Gate Combinations 3.1 TTL NAND Gate In logic circuits transistors play the role of switches. For those in the TTL gate the conducting state (on) occurs when the baseemmiter signal is high, and

More information

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design PH-315 COMINATIONAL and SEUENTIAL LOGIC CIRCUITS Hardware implementation and software design A La Rosa I PURPOSE: To familiarize with combinational and sequential logic circuits Combinational circuits

More information

CpE358/CS381. Switching Theory and Logical Design. Class 4

CpE358/CS381. Switching Theory and Logical Design. Class 4 Switching Theory and Logical Design Class 4 1-122 Today Fundamental concepts of digital systems (Mano Chapter 1) Binary codes, number systems, and arithmetic (Ch 1) Boolean algebra (Ch 2) Simplification

More information

Combinational Logic Design Process

Combinational Logic Design Process Combinational Logic Design Process Create truth table from specification Generate K-maps & obtain logic equations Draw logic diagram (sharing common gates) Simulate circuit for design verification Debug

More information

Experiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa

Experiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa Experiment # 9 Clock generator circuits & Counters Eng. Waleed Y. Mousa 1. Objectives: 1. Understanding the principles and construction of Clock generator. 2. To be familiar with clock pulse generation

More information

Lecture 8: Synchronous Digital Systems

Lecture 8: Synchronous Digital Systems Lecture 8: Synchronous Digital Systems The distinguishing feature of a synchronous digital system is that the circuit only changes in response to a system clock. For example, consider the edge triggered

More information

DIGITAL ELECTRONICS. Counters. By: Electrical Engineering Department

DIGITAL ELECTRONICS. Counters. By: Electrical Engineering Department Counters By: Electrical Engineering Department 1 Counters Upon completion of the chapter, students should be able to:.1 Understand the basic concepts of asynchronous counter and synchronous counters, and

More information

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop. Objectives Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop. describe how such a flip-flop can be SET and RESET. describe the disadvantage

More information

Layout of Multiple Cells

Layout of Multiple Cells Layout of Multiple Cells Beyond the primitive tier primitives add instances of primitives add additional transistors if necessary add substrate/well contacts (plugs) add additional polygons where needed

More information

Karnaugh Maps & Combinational Logic Design. ECE 152A Winter 2012

Karnaugh Maps & Combinational Logic Design. ECE 152A Winter 2012 Karnaugh Maps & Combinational Logic Design ECE 52A Winter 22 Reading Assignment Brown and Vranesic 4 Optimized Implementation of Logic Functions 4. Karnaugh Map 4.2 Strategy for Minimization 4.2. Terminology

More information

CSE140: Midterm 1 Solution and Rubric

CSE140: Midterm 1 Solution and Rubric CSE140: Midterm 1 Solution and Rubric April 23, 2014 1 Short Answers 1.1 True or (6pts) 1. A maxterm must include all input variables (1pt) True 2. A canonical product of sums is a product of minterms

More information

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology Topics of Chapter 5 Sequential Machines Memory elements Memory elements. Basics of sequential machines. Clocking issues. Two-phase clocking. Testing of combinational (Chapter 4) and sequential (Chapter

More information

NOTE: The Flatpak version has the same pinouts (Connection Diagram) as the Dual In-Line Package.

NOTE: The Flatpak version has the same pinouts (Connection Diagram) as the Dual In-Line Package. PRESETTABLE BCD/DECADE UP/DOWN COUNTERS PRESETTABLE 4-BIT BINARY UP/DOWN COUNTERS The SN54/74LS90 is a synchronous UP/DOWN BCD Decade (842) Counter and the SN54/74LS9 is a synchronous UP/DOWN Modulo-6

More information

Lecture 11: Sequential Circuit Design

Lecture 11: Sequential Circuit Design Lecture 11: Sequential Circuit esign Outline Sequencing Sequencing Element esign Max and Min-elay Clock Skew Time Borrowing Two-Phase Clocking 2 Sequencing Combinational logic output depends on current

More information

CS311 Lecture: Sequential Circuits

CS311 Lecture: Sequential Circuits CS311 Lecture: Sequential Circuits Last revised 8/15/2007 Objectives: 1. To introduce asynchronous and synchronous flip-flops (latches and pulsetriggered, plus asynchronous preset/clear) 2. To introduce

More information

The components. E3: Digital electronics. Goals:

The components. E3: Digital electronics. Goals: E3: Digital electronics Goals: Basic understanding of logic circuits. Become familiar with the most common digital components and their use. Equipment: 1 st. LED bridge 1 st. 7-segment display. 2 st. IC

More information

Sequential Logic: Clocks, Registers, etc.

Sequential Logic: Clocks, Registers, etc. ENEE 245: igital Circuits & Systems Lab Lab 2 : Clocks, Registers, etc. ENEE 245: igital Circuits and Systems Laboratory Lab 2 Objectives The objectives of this laboratory are the following: To design

More information

SECTION C [short essay] [Not to exceed 120 words, Answer any SIX questions. Each question carries FOUR marks] 6 x 4=24 marks

SECTION C [short essay] [Not to exceed 120 words, Answer any SIX questions. Each question carries FOUR marks] 6 x 4=24 marks UNIVERSITY OF KERALA First Degree Programme in Computer Applications Model Question Paper Semester I Course Code- CP 1121 Introduction to Computer Science TIME : 3 hrs Maximum Mark: 80 SECTION A [Very

More information

Digital circuits make up all computers and computer systems. The operation of digital circuits is based on

Digital circuits make up all computers and computer systems. The operation of digital circuits is based on Digital Logic Circuits Digital circuits make up all computers and computer systems. The operation of digital circuits is based on Boolean algebra, the mathematics of binary numbers. Boolean algebra is

More information

Simplifying Logic Circuits with Karnaugh Maps

Simplifying Logic Circuits with Karnaugh Maps Simplifying Logic Circuits with Karnaugh Maps The circuit at the top right is the logic equivalent of the Boolean expression: f = abc + abc + abc Now, as we have seen, this expression can be simplified

More information

Chapter 5. Sequential Logic

Chapter 5. Sequential Logic Chapter 5 Sequential Logic Sequential Circuits (/2) Combinational circuits: a. contain no memory elements b. the outputs depends on the current inputs Sequential circuits: a feedback path outputs depends

More information

Lecture 7: Clocking of VLSI Systems

Lecture 7: Clocking of VLSI Systems Lecture 7: Clocking of VLSI Systems MAH, AEN EE271 Lecture 7 1 Overview Reading Wolf 5.3 Two-Phase Clocking (good description) W&E 5.5.1, 5.5.2, 5.5.3, 5.5.4, 5.5.9, 5.5.10 - Clocking Note: The analysis

More information

Sequential Logic Design Principles.Latches and Flip-Flops

Sequential Logic Design Principles.Latches and Flip-Flops Sequential Logic Design Principles.Latches and Flip-Flops Doru Todinca Department of Computers Politehnica University of Timisoara Outline Introduction Bistable Elements Latches and Flip-Flops S-R Latch

More information

ANALOG & DIGITAL ELECTRONICS

ANALOG & DIGITAL ELECTRONICS ANALOG & DIGITAL ELECTRONICS Course Instructor: Course No: PH-218 3-1-0-8 Dr. A.P. Vajpeyi E-mail: apvajpeyi@iitg.ernet.in Room No: #305 Department of Physics, Indian Institute of Technology Guwahati,

More information

Theory of Logic Circuits. Laboratory manual. Exercise 3

Theory of Logic Circuits. Laboratory manual. Exercise 3 Zakład Mikroinformatyki i Teorii Automatów yfrowych Theory of Logic ircuits Laboratory manual Exercise 3 Bistable devices 2008 Krzysztof yran, Piotr zekalski (edt.) 1. lassification of bistable devices

More information

Digital Logic Elements, Clock, and Memory Elements

Digital Logic Elements, Clock, and Memory Elements Physics 333 Experiment #9 Fall 999 Digital Logic Elements, Clock, and Memory Elements Purpose This experiment introduces the fundamental circuit elements of digital electronics. These include a basic set

More information

Lecture 5: Gate Logic Logic Optimization

Lecture 5: Gate Logic Logic Optimization Lecture 5: Gate Logic Logic Optimization MAH, AEN EE271 Lecture 5 1 Overview Reading McCluskey, Logic Design Principles- or any text in boolean algebra Introduction We could design at the level of irsim

More information

Lecture 10: Sequential Circuits

Lecture 10: Sequential Circuits Introduction to CMOS VLSI esign Lecture 10: Sequential Circuits avid Harris Harvey Mudd College Spring 2004 Outline q Sequencing q Sequencing Element esign q Max and Min-elay q Clock Skew q Time Borrowing

More information

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter Description: The NTE2053 is a CMOS 8 bit successive approximation Analog to Digital converter in a 20 Lead DIP type package which uses a differential

More information

Module 3: Floyd, Digital Fundamental

Module 3: Floyd, Digital Fundamental Module 3: Lecturer : Yongsheng Gao Room : Tech - 3.25 Email : yongsheng.gao@griffith.edu.au Structure : 6 lectures 1 Tutorial Assessment: 1 Laboratory (5%) 1 Test (20%) Textbook : Floyd, Digital Fundamental

More information

EE360: Digital Design I Course Syllabus

EE360: Digital Design I Course Syllabus : Course Syllabus Dr. Mohammad H. Awedh Fall 2008 Course Description This course introduces students to the basic concepts of digital systems, including analysis and design. Both combinational and sequential

More information

CSE140: Components and Design Techniques for Digital Systems

CSE140: Components and Design Techniques for Digital Systems CE4: Components and esign Techniques for igital ystems Tajana imunic osing ources: Where we are now What we ve covered so far (Chap -5, App. A& B) Number representations Boolean algebra OP and PO Logic

More information

WEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1

WEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1 WEEK 8.1 egisters and Counters ECE124 igital Circuits and Systems Page 1 Additional schematic FF symbols Active low set and reset signals. S Active high set and reset signals. S ECE124 igital Circuits

More information

To design digital counter circuits using JK-Flip-Flop. To implement counter using 74LS193 IC.

To design digital counter circuits using JK-Flip-Flop. To implement counter using 74LS193 IC. 8.1 Objectives To design digital counter circuits using JK-Flip-Flop. To implement counter using 74LS193 IC. 8.2 Introduction Circuits for counting events are frequently used in computers and other digital

More information

Sequential Circuits. Combinational Circuits Outputs depend on the current inputs

Sequential Circuits. Combinational Circuits Outputs depend on the current inputs Principles of VLSI esign Sequential Circuits Sequential Circuits Combinational Circuits Outputs depend on the current inputs Sequential Circuits Outputs depend on current and previous inputs Requires separating

More information

CMOS, the Ideal Logic Family

CMOS, the Ideal Logic Family CMOS, the Ideal Logic Family INTRODUCTION Let s talk about the characteristics of an ideal logic family. It should dissipate no power, have zero propagation delay, controlled rise and fall times, and have

More information

Chapter 9 Latches, Flip-Flops, and Timers

Chapter 9 Latches, Flip-Flops, and Timers ETEC 23 Programmable Logic Devices Chapter 9 Latches, Flip-Flops, and Timers Shawnee State University Department of Industrial and Engineering Technologies Copyright 27 by Janna B. Gallaher Latches A temporary

More information

Upon completion of unit 1.1, students will be able to

Upon completion of unit 1.1, students will be able to Upon completion of unit 1.1, students will be able to 1. Demonstrate safety of the individual, class, and overall environment of the classroom/laboratory, and understand that electricity, even at the nominal

More information

BINARY CODED DECIMAL: B.C.D.

BINARY CODED DECIMAL: B.C.D. BINARY CODED DECIMAL: B.C.D. ANOTHER METHOD TO REPRESENT DECIMAL NUMBERS USEFUL BECAUSE MANY DIGITAL DEVICES PROCESS + DISPLAY NUMBERS IN TENS IN BCD EACH NUMBER IS DEFINED BY A BINARY CODE OF 4 BITS.

More information

CHAPTER 11 LATCHES AND FLIP-FLOPS

CHAPTER 11 LATCHES AND FLIP-FLOPS CHAPTER 11 LATCHES AND FLIP-FLOPS This chapter in the book includes: Objectives Study Guide 11.1 Introduction 11.2 Set-Reset Latch 11.3 Gated D Latch 11.4 Edge-Triggered D Flip-Flop 11.5 S-R Flip-Flop

More information

SN54/74LS192 SN54/74LS193

SN54/74LS192 SN54/74LS193 PRESEABLE BCD/DECADE UP/DOWN COUNER PRESEABLE 4-BI BINARY UP/DOWN COUNER he SN4/74LS2 is an UP/DOWN BCD Decade (842) Counter and the SN4/74LS3 is an UP/DOWN MODULO-6 Binary Counter. Separate Count Up and

More information

United States Naval Academy Electrical and Computer Engineering Department. EC262 Exam 1

United States Naval Academy Electrical and Computer Engineering Department. EC262 Exam 1 United States Naval Academy Electrical and Computer Engineering Department EC262 Exam 29 September 2. Do a page check now. You should have pages (cover & questions). 2. Read all problems in their entirety.

More information

Decimal Number (base 10) Binary Number (base 2)

Decimal Number (base 10) Binary Number (base 2) LECTURE 5. BINARY COUNTER Before starting with counters there is some vital information that needs to be understood. The most important is the fact that since the outputs of a digital chip can only be

More information

2.0 Chapter Overview. 2.1 Boolean Algebra

2.0 Chapter Overview. 2.1 Boolean Algebra Thi d t t d ith F M k 4 0 2 Boolean Algebra Chapter Two Logic circuits are the basis for modern digital computer systems. To appreciate how computer systems operate you will need to understand digital

More information

So far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs.

So far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs. equential Logic o far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs. In sequential logic the output of the

More information

Gates, Circuits, and Boolean Algebra

Gates, Circuits, and Boolean Algebra Gates, Circuits, and Boolean Algebra Computers and Electricity A gate is a device that performs a basic operation on electrical signals Gates are combined into circuits to perform more complicated tasks

More information

PROGETTO DI SISTEMI ELETTRONICI DIGITALI. Digital Systems Design. Digital Circuits Advanced Topics

PROGETTO DI SISTEMI ELETTRONICI DIGITALI. Digital Systems Design. Digital Circuits Advanced Topics PROGETTO DI SISTEMI ELETTRONICI DIGITALI Digital Systems Design Digital Circuits Advanced Topics 1 Sequential circuit and metastability 2 Sequential circuit - FSM A Sequential circuit contains: Storage

More information

Content Map For Career & Technology

Content Map For Career & Technology Content Strand: Applied Academics CT-ET1-1 analysis of electronic A. Fractions and decimals B. Powers of 10 and engineering notation C. Formula based problem solutions D. Powers and roots E. Linear equations

More information

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Objectives: Analyze the operation of sequential logic circuits. Understand the operation of digital counters.

More information

Lecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

Lecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010 EE4800 CMOS igital IC esign & Analysis Lecture 10 Sequential Circuit esign Zhuo Feng 10.1 Z. Feng MTU EE4800 CMOS igital IC esign & Analysis 2010 Sequencing Outline Sequencing Element esign Max and Min-elay

More information

Figure 8-1 Four Possible Results of Adding Two Bits

Figure 8-1 Four Possible Results of Adding Two Bits CHPTER EIGHT Combinational Logic pplications Thus far, our discussion has focused on the theoretical design issues of computer systems. We have not yet addressed any of the actual hardware you might find

More information

DEPARTMENT OF INFORMATION TECHNLOGY

DEPARTMENT OF INFORMATION TECHNLOGY DRONACHARYA GROUP OF INSTITUTIONS, GREATER NOIDA Affiliated to Mahamaya Technical University, Noida Approved by AICTE DEPARTMENT OF INFORMATION TECHNLOGY Lab Manual for Computer Organization Lab ECS-453

More information

ENEE 244 (01**). Spring 2006. Homework 5. Due back in class on Friday, April 28.

ENEE 244 (01**). Spring 2006. Homework 5. Due back in class on Friday, April 28. ENEE 244 (01**). Spring 2006 Homework 5 Due back in class on Friday, April 28. 1. Fill up the function table (truth table) for the following latch. How is this latch related to those described in the lectures

More information

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute DIGITAL TECHNICS II Dr. Bálint Pődör Óbuda University, Microelectronics and Technology Institute 2. LECTURE: ELEMENTARY SEUENTIAL CIRCUITS: FLIP-FLOPS 1st year BSc course 2nd (Spring) term 2012/2013 1

More information

Study Guide for the Electronics Technician Pre-Employment Examination

Study Guide for the Electronics Technician Pre-Employment Examination Bay Area Rapid Transit District Study Guide for the Electronics Technician Pre-Employment Examination INTRODUCTION The Bay Area Rapid Transit (BART) District makes extensive use of electronics technology

More information

Counters are sequential circuits which "count" through a specific state sequence.

Counters are sequential circuits which count through a specific state sequence. Counters Counters are sequential circuits which "count" through a specific state sequence. They can count up, count down, or count through other fixed sequences. Two distinct types are in common usage:

More information

Counters. Present State Next State A B A B 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0

Counters. Present State Next State A B A B 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 ounter ounters ounters are a specific type of sequential circuit. Like registers, the state, or the flip-flop values themselves, serves as the output. The output value increases by one on each clock cycle.

More information

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead Clock - key to synchronous systems Topic 7 Clocking Strategies in VLSI Systems Peter Cheung Department of Electrical & Electronic Engineering Imperial College London Clocks help the design of FSM where

More information

7. Latches and Flip-Flops

7. Latches and Flip-Flops Chapter 7 Latches and Flip-Flops Page 1 of 18 7. Latches and Flip-Flops Latches and flip-flops are the basic elements for storing information. One latch or flip-flop can store one bit of information. The

More information

Chapter 7 Memory and Programmable Logic

Chapter 7 Memory and Programmable Logic NCNU_2013_DD_7_1 Chapter 7 Memory and Programmable Logic 71I 7.1 Introduction ti 7.2 Random Access Memory 7.3 Memory Decoding 7.5 Read Only Memory 7.6 Programmable Logic Array 77P 7.7 Programmable Array

More information

Gates. J. Robert Jump Department of Electrical And Computer Engineering Rice University Houston, TX 77251

Gates. J. Robert Jump Department of Electrical And Computer Engineering Rice University Houston, TX 77251 Gates J. Robert Jump Department of Electrical And Computer Engineering Rice University Houston, T 77251 1. The Evolution of Electronic Digital Devices...1 2. Logical Operations and the Behavior of Gates...2

More information

Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots

Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots Lecture 12: More on Registers, Multiplexers, Decoders, Comparators and Wot- Nots Registers As you probably know (if you don t then you should consider changing your course), data processing is usually

More information

Table 1 Comparison of DC, Uni-Polar and Bi-polar Stepper Motors

Table 1 Comparison of DC, Uni-Polar and Bi-polar Stepper Motors Electronics Exercise 3: Uni-Polar Stepper Motor Controller / Driver Mechatronics Instructional Laboratory Woodruff School of Mechanical Engineering Georgia Institute of Technology Lab Director: I. Charles

More information

Boolean Algebra Part 1

Boolean Algebra Part 1 Boolean Algebra Part 1 Page 1 Boolean Algebra Objectives Understand Basic Boolean Algebra Relate Boolean Algebra to Logic Networks Prove Laws using Truth Tables Understand and Use First Basic Theorems

More information

Operating Manual Ver.1.1

Operating Manual Ver.1.1 4 Bit Binary Ripple Counter (Up-Down Counter) Operating Manual Ver.1.1 An ISO 9001 : 2000 company 94-101, Electronic Complex Pardesipura, Indore- 452010, India Tel : 91-731- 2570301/02, 4211100 Fax: 91-731-

More information

RUTGERS UNIVERSITY Department of Electrical and Computer Engineering 14:332:233 DIGITAL LOGIC DESIGN LABORATORY

RUTGERS UNIVERSITY Department of Electrical and Computer Engineering 14:332:233 DIGITAL LOGIC DESIGN LABORATORY RUTGERS UNIVERSITY Department of Electrical and Computer Engineering 14:332:233 DIGITAL LOGIC DESIGN LABORATORY Fall 2012 Contents 1 LABORATORY No 1 3 11 Equipment 3 12 Protoboard 4 13 The Input-Control/Output-Display

More information

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

L4: Sequential Building Blocks (Flip-flops, Latches and Registers) L4: Sequential Building Blocks (Flip-flops, Latches and Registers) Acknowledgements: Materials in this lecture are courtesy of the following sources and are used with permission. Prof. Randy Katz (Unified

More information

DM9368 7-Segment Decoder/Driver/Latch with Constant Current Source Outputs

DM9368 7-Segment Decoder/Driver/Latch with Constant Current Source Outputs DM9368 7-Segment Decoder/Driver/Latch with Constant Current Source Outputs General Description The DM9368 is a 7-segment decoder driver incorporating input latches and constant current output circuits

More information

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit Modeling Sequential Elements with Verilog Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw 4-1 Sequential Circuit Outputs are functions of inputs and present states of storage elements

More information

DM74LS169A Synchronous 4-Bit Up/Down Binary Counter

DM74LS169A Synchronous 4-Bit Up/Down Binary Counter Synchronous 4-Bit Up/Down Binary Counter General Description This synchronous presettable counter features an internal carry look-ahead for cascading in high-speed counting applications. Synchronous operation

More information

Sequential Circuit Design

Sequential Circuit Design Sequential Circuit Design Lan-Da Van ( 倫 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall, 2009 ldvan@cs.nctu.edu.tw http://www.cs.nctu.edu.tw/~ldvan/ Outlines

More information

ASYNCHRONOUS COUNTERS

ASYNCHRONOUS COUNTERS LB no.. SYNCHONOUS COUNTES. Introduction Counters are sequential logic circuits that counts the pulses applied at their clock input. They usually have 4 bits, delivering at the outputs the corresponding

More information

Asynchronous Counters. Asynchronous Counters

Asynchronous Counters. Asynchronous Counters Counters and State Machine Design November 25 Asynchronous Counters ENGI 25 ELEC 24 Asynchronous Counters The term Asynchronous refers to events that do not occur at the same time With respect to counter

More information

Memory Systems. Static Random Access Memory (SRAM) Cell

Memory Systems. Static Random Access Memory (SRAM) Cell Memory Systems This chapter begins the discussion of memory systems from the implementation of a single bit. The architecture of memory chips is then constructed using arrays of bit implementations coupled

More information

Clocking. Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 Clocks 1

Clocking. Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 Clocks 1 ing Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 s 1 Why s and Storage Elements? Inputs Combinational Logic Outputs Want to reuse combinational logic from cycle to cycle 6.884 - Spring 2005 2/18/05

More information

Contents COUNTER. Unit III- Counters

Contents COUNTER. Unit III- Counters COUNTER Contents COUNTER...1 Frequency Division...2 Divide-by-2 Counter... 3 Toggle Flip-Flop...3 Frequency Division using Toggle Flip-flops...5 Truth Table for a 3-bit Asynchronous Up Counter...6 Modulo

More information

74LS193 Synchronous 4-Bit Binary Counter with Dual Clock

74LS193 Synchronous 4-Bit Binary Counter with Dual Clock 74LS193 Synchronous 4-Bit Binary Counter with Dual Clock General Description The DM74LS193 circuit is a synchronous up/down 4-bit binary counter. Synchronous operation is provided by having all flip-flops

More information

HD61202U. (Dot Matrix Liquid Crystal GraphicDisplay Column Driver)

HD61202U. (Dot Matrix Liquid Crystal GraphicDisplay Column Driver) HD622U (Dot Matrix Liquid Crystal GraphicDisplay Column Driver) Description HD622U is a column (segment) driver for dot matrix liquid crystal graphic display systems. It stores the display data transferred

More information

Flip-Flops and Sequential Circuit Design. ECE 152A Winter 2012

Flip-Flops and Sequential Circuit Design. ECE 152A Winter 2012 Flip-Flops and Sequential Circuit Design ECE 52 Winter 22 Reading ssignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7.5 T Flip-Flop 7.5. Configurable Flip-Flops 7.6

More information

Flip-Flops and Sequential Circuit Design

Flip-Flops and Sequential Circuit Design Flip-Flops and Sequential Circuit Design ECE 52 Winter 22 Reading ssignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7.5 T Flip-Flop 7.5. Configurable Flip-Flops 7.6

More information

Lesson 12 Sequential Circuits: Flip-Flops

Lesson 12 Sequential Circuits: Flip-Flops Lesson 12 Sequential Circuits: Flip-Flops 1. Overview of a Synchronous Sequential Circuit We saw from last lesson that the level sensitive latches could cause instability in a sequential system. This instability

More information

DM54161 DM74161 DM74163 Synchronous 4-Bit Counters

DM54161 DM74161 DM74163 Synchronous 4-Bit Counters DM54161 DM74161 DM74163 Synchronous 4-Bit Counters General Description These synchronous presettable counters feature an internal carry look-ahead for application in high-speed counting designs The 161

More information