Hanbat National University Prof. Lee Jaeheung

Size: px
Start display at page:

Download "Hanbat National University Prof. Lee Jaeheung"

Transcription

1 Sun, HH yy ee -Se ung Hanbat National University Prof. Lee Jaeheung

2 ,,, ( ),, (c o u n t e r ), /, (F i n i t e S t a t e M a c h i n e ; F S M ),, : (, 0 1 ) : a l w a y s i f a l w a y s,, V e r i l o g (n o n b l o c k i n g b l o c k i n g )

3 (Latch) Positive level-sen sitive D la tc h d clock D G Q q clock d q module dlatch(clock, d, q); input clock, d; output q; reg q; or d) begin if(clock) q = d; module Positive level-sensitive D latch 11.1

4 (Latch) module tb_dlatch ; reg clk, d; Testbench for D latch dlatch U0(clk, d, q); initial begin clk = 1'b0; forever #10 clk = ~clk; initial begin d = 1'b0; forever begin #15 d = 1'b1; #20 d = 1'b0; #10 d = 1'b1; #10 d = 1'b0; #10 d = 1'b1; #15 d = 1'b0; module 11.2

5 (Latch) 11.1 N eg a tive level-sen sitive 8 D,.

6 (Latch) A c tive-low p ositive level-sen sitive D la tc h module dlatch_rst(rst, clock, d, q); input rst, clock, d; output q; reg q; or rst or d) begin if(!rst) q = 1'b0; else if(clock) q = d; module 11.3

7 (Latch) 11.3 A c tive-low n eg a tive level-sen sitive 8 D,.

8 (Latch) L a tc h b loc k in g module latch_blk(en, a, b, c, y); input en, a, b, c; output y; reg m, y; or a or b or c) begin if(en) begin m = ~(a b); y = ~(m & c); module 11.4 Latch

9 (Latch) L a tc h n on b loc k in g module latch_nonblk(en, a, b, c, y); input en, a, b, c; output y; reg m, y; or a or b or c) begin if(en) begin m <= ~(a b); y <= ~(m & c); module Latch 11.5 Latch

10 (Latch) b loc k in g ,,. module latch_blk2(en, a, b, c, y); input en, a, b, c; output y; reg m, y; 11.6 or a or b or c) begin if(en) begin y = ~(m & c); m = ~(a b); module

11 (Latch) n on b loc k in g ,,. module latch_nonblk2(en, a, b, c, y); input en, a, b, c; output y; reg m, y; 11.7 or a or b or c) begin if(en) begin y <= ~(m & c); m <= ~(a b); module

12 (Flip flop) Positive ed g e-tr ig g er ed D F lip -f lop d clock D Q q clk d q module dff(clk, d, q); input d,clk; output q; reg q; Positive edge-triggered D Flip-flop clk) q <= d; module 11.8

13 (Flip flop) 11.8

14 (Flip flop) E d g e-tr ig g er ed D F lip -f lop w ith q a n d qb ou tp u ts module dff_bad1(clk, d, q, q_bar); input d, clk; output q, q_bar; reg q, q_bar; clk) begin // nonblocking assignments q <= d; q_bar <= ~d; module module dff_bad2(clk, d, q, q_bar); input d, clk; output q, q_bar; reg q, q_bar; Not Recommed clk) begin // blocking assignments q = d; q_bar = ~d; module 11.9(a) 11.9(b)

15 (Flip flop) E d g e-tr ig g er ed D F lip -f lop w ith q a n d qb ou tp u ts module dff_good(clk, d, q, q_bar); input d, clk; output q, q_bar; reg q; Recommed // using assign statement for q_bar assign q_bar = ~q; clk) q <= d; module 11.9(c)

16 (Flip flop) E d g e-tr ig g er ed D F lip -f lop w ith q a n d qb ou tp u ts Flip flop Flip flop 11.9 (a), (b) Flip flop 11.9 (c)

17 (Flip flop) q q_ b a r D , D ,. module dff_bad3(clk, d, q, q_bar); input d, clk; output q, q_bar; reg q, q_bar; clk) begin q <= d; q_bar <= ~q; module

18 (Flip flop) E d g e-tr ig g er ed D F lip -f lop w ith sy n c h r on ou s a c tive-low r eset module dff_sync_rst(clk, d, rst_n, q, qb); input clk, d, rst_n; output q, qb; reg q; assign qb = ~q; clk) // include only clk begin if(!rst_n) // active-low reset q <= 1'b0; else q <= d; module 11.11

19 (Flip flop) E d g e-tr ig g er ed D F lip -f lop w ith sy n c h r on ou s a c tive-low r eset 11.11

20 (Flip flop) Edge-t r i gger ed D F l i p -f l o p w i t h a s y n c h r o n o u s a c t i v e-l o w r es et module dff_async_rst(clk, d, rst_n, q, qb); input clk, d, rst_n; output q, qb; reg q; assign qb = ~q; clk or negedge rst_n) // both clk and rst_n begin if(!rst_n) // active-low reset q <= 1'b0; else q <= d; module 11.12

21 (Flip flop) Edge-t r i gger ed D F l i p -f l o p w i t h a s y n c h r o n o u s a c t i v e-l o w r es et 11.12

22 (Flip flop) D V er ilog H D L,. a c tive-h ig h D a c tive-h ig h D a c tive-low D a c tive-h ig h D a c tive-h ig h D a c tive-low D

23 (Flip flop) b loc k in g module seq_blk(clk, a, b, c, d, e, y); input clk, a, b, c, d, e; output y; reg m, n, y; clk) begin m = ~(a & b); n = c d; y = ~(m n e); module Flip Flop

24 (Flip flop) n on b loc k in g module seq_nonblk(clk, a, b, c, d, e, y); input clk, a, b, c, d, e; output y; reg m, n, y; clk) begin m <= ~(a & b); n <= c d; y <= ~(m n e); module Flip Flop Flip Flop Flip Flop

25 (Flip flop) b loc k in g ,,. module seq_blk2(clk, a, b, c, d, e, y); input clk, a, b, c, d, e; output y; reg m, n, y; clk) begin y = ~(m n e); m = ~(a & b); n = c d; module

26 11.2 Blocking Nonblocking b loc k in g module blk1(clk, d, q3); input clk; output q3; input d; reg q3, q2, q1, q0; clk) begin q0 = d; q1 = q0; q2 = q1; q3 = q2; module 11.16(a) module blk2(clk, d, q3); input clk; output q3; input d; reg q3, q2, q1, q0; clk) begin q3 = q2; q2 = q1; q1 = q0; q0 = d; module 11.16(b) Flip Flop Flip Flop Flip Flop Flip Flop Flip Flop Shift register

27 11.2 Blocking Nonblocking n on b loc k in g module non_blk1(clk, d, q3); input clk; output q3; input d; reg q3, q2, q1, q0; clk) begin q0 <= d; q1 <= q0; q2 <= q1; q3 <= q2; module 11.17(a) module non_blk2(clk, d, q3); input clk; output q3; input d; reg q3, q2, q1, q0; clk) begin q3 <= q2; q2 <= q1; q1 <= q0; q0 <= d; module 11.17(b) Flip Flop Flip Flop Flip Flop Flip Flop

28 11.2 Blocking Nonblocking -1 a l w a y s n o n b l o c k i n g. -2 a l w a y s b l o c k i n g.

29 11.2 Blocking Nonblocking -3 a l w a y s n o n b l o c k i n g.

30 11.2 Blocking Nonblocking -4 a l w a y s b l o c k i n g n o n b l o c k i n g. module ba_nba1(q, a, b, clk, rst_n); output q; input a, b, rst_n, clk; reg q, tmp; clk or negedge rst_n) if(!rst_n) q <= 1'b0; else begin tmp = a & b; q <= tmp; module module ba_nba2(q, a, b, clk, rst_n); output q; input a, b, rst_n, clk; reg q, tmp; clk or negedge rst_n) if(!rst_n) q = 1'b0; //blocking else begin tmp = a & b; q <= tmp; //nonblocking module Bad Coding 11.18(a) 11.18(b)

31 11.2 Blocking Nonblocking module ba_nba3(q, a, b, clk, rst_n); output q; input a, b, rst_n, clk; reg q; clk or negedge rst_n) if(!rst_n) q <= 1'b0; else q <= a & b; module module ba_nba4(q, a, b, clk, rst_n); output q; input a, b, rst_n, clk; reg q; wire tmp; assign tmp = a & b; clk or negedge rst_n) if(!rst_n) q <= 1'b0; else q <= tmp; module Good Coding 11.18(c) 11.18(d)

32 11.2 Blocking Nonblocking -5 a l w a y s r e g. module badcode1(q, d1, d2, clk, rst_n); output q; input d1, d2, clk, rst_n; reg q; clk or negedge rst_n) if(!rst_n) q <= 1'b0; else q <= d1; clk or negedge rst_n) if(!rst_n) q <= 1'b0; else q <= d2; module Multiple source driving

33 11.2 Blocking Nonblocking ( a ), ( b ) y 1, y 2, ( a ), ( b ),,. module fbosc_blk(y1, y2, clk, rst); output y1, y2; input clk, rst; reg y1, y2; Blocking clk or posedge rst) if(rst) y1 = 0; // reset else y1 = y2; clk or posedge rst) if(rst) y2 = 1; // set else y2 = y1; module 11.20(a)

34 11.2 Blocking Nonblocking module fbosc_nonblk(y1, y2, clk, rst); output y1, y2; input clk, rst; reg y1, y2; Nonblocking clk or posedge rst) if(rst) y1 <= 0; // reset else y1 <= y2; clk or posedge rst) if(rst) y2 <= 1; // set else y2 <= y1; module 11.20(b)

35 11.3 n, u t ) n, P u t ) n, u t ) n, P u t ),,,, (Serial-I Serial-O (Serial-I arallel-o (P arallel-i Serial-O (P arallel-i arallel-o nonblocking,

36 sout q[7] Q D q[2] Q D q[1] Q D q[0] Q D sin DFF DFF DFF DFF clk rst module shift_reg_nblk1(clk, rst, sin, sout); input clk, rst, sin; output sout; reg [7:0] q; assign sout = q[7]; clk) begin if(!rst) q <= 8'b0; else begin q[0] <= sin; q[1] <= q[0]; q[2] <= q[1]; q[3] <= q[2]; q[4] <= q[3]; q[5] <= q[4]; q[6] <= q[5]; q[7] <= q[6]; module

37 module shift_reg_nblk2(clk, rst, sin, sout); input clk, rst, sin; output sout; reg [7:0] q; assign sout = q[7]; clk) begin if(!rst) q <= 0; else begin q[0] <= sin; q[7:1] <= q[6:0]; module 11.22

38 ,. for

39 pout[8] din[8] pout[2] din[2] pout[1] din[1] pout[0] din[0] load MUX load MUX load MUX Q D Q D Q D Q D DFF DFF DFF DFF clk rst

40 module pld_shift_reg(clk, rst, load, din, pout); input clk, rst, load; input [7:0] din; output [7:0] pout; reg [7:0] data_reg; assign pout = data_reg; clk) begin if(!rst) data_reg <= 0; else if(load) data_reg <= din; else data_reg <= data_reg << 1; module 11.23

41 ,.

42 (w r= 0) (en = 0), d at a_ io in o u t rd w r clk rst (Active Low) en enable (Active Low) wr enable (Active Low) rd enable (Active Low) si so data_io / (inout)

43 module shifter(clk, rst, en, wr, rd, si, so, data_io); parameter Len = 8; input clk, rst, en, wr, rd, si; output so; inout [Len-1:0] data_io; reg [Len-1:0] shift_reg; assign data_io =!rd? shift_reg : {Len{1'bz}}; assign so = shift_reg[7]; clk) begin if(!rst) shift_reg <= {Len{1'b0}}; else begin if(!en) begin shift_reg <= shift_reg << 1; shift_reg[0] <= si; else if(!wr) shift_reg <= data_io; module 11.24

44 ( )

45 ( )

46 /,.. clk rst (Active Low) en enable (Active Low) wr enable (Active Low) rd enable (Active Low) si so data_io / (inout) mode / (mode=0;, mode=1; )

47 ( L i n e a r F e e d b a c k S h i f t R e g i s t e r ; L F S R ) 2 N-, 2 N, ( p s e u d o-r a nd om s e q u e nce ), /,, ( d a t a int e gr it y ch e cks u m ) I C ( B u ilt -I n S e lf -T e s t ; B I S T ) d q d q d q d q d q d q d q d q sout DFF DFF DFF DFF DFF DFF DFF DFF clk rst LFSR

48 ( L i n e a r F e e d b a c k S h i f t R e g i s t e r ; L F S R ) X O R L F S R : 0. 0, L F SR. X N O R L F S R : 1. 1, L F SR. 3 L F S R

49 L F S R module lfsr_bad1(q3, clk, pre_n); output q3; input clk, pre_n; reg q3, q2, q1; Bad Code assign n1 = q1 ^ q3; // Blocking clk or negedge pre_n) if(!pre_n) begin q3 = 1'b1; q2 = 1'b1; q1 = 1'b1; else begin q3 = q2; q2 = n1; q1 = q3; module 11.25(a)

50 L F S R module lfsr_good1(q3, clk, pre_n); output q3; input clk, pre_n; reg q3, q2, q1; // Nonblocking clk or negedge pre_n) if(!pre_n) begin q3 <= 1'b1; q2 <= 1'b1; q1 <= 1'b1; else begin q3 <= q2; q2 <= q1 ^ q3; q1 <= q3; module Good Code 11.25(b)

51 L F S R module lfsr_good2(q3, clk, pre_n); output q3; input clk, pre_n; reg q3, q2, q1; Good Code // Nonblocking clk or negedge pre_n) if(!pre_n) {q3,q2,q1} <= 3'b111; else {q3,q2,q1} <= {q2,(q1^q3),q3}; module 11.25(c)

52 LFSR module lfsr_bad2(q3, clk, pre_n); output q3; input clk, pre_n; reg q3, q2, q1; Bad Code clk or negedge pre_n) if(!pre_n) {q3,q2,q1} <= 3'b000; else {q3,q2,q1} <= {q2,(q1 ^ q3),q3}; module 11.25(d)

53 LFSR (a) (b) (c) (d) 11.25

54 L F S R,. d q d q d q d q d q d q d q d q sout DFF DFF DFF DFF DFF DFF DFF DFF clk rst 11.23

55 11.4 (Counter) (counter),, :, : ( r i p p l e c o u n t e r ) : :,

56 11.4 (Counter) 8 module counter_up(clk, rst, cnt); input clk, rst; output [7:0] cnt; reg [7:0] cnt; clk or negedge rst) begin if(!rst) cnt <= 0; else cnt <= cnt + 1; module 11.26

57 11.4 (Counter)

58 11.4 (Counter) Enable ( ac t i v e h i g h ) 8,. Enable en= 1, en= 0. Mode (mode=1) (mode=0) 8 /, (load=1) 8 /,.

59 11.4 (Counter) 1 / 1 0 ( f r e q u e n c y d i v i d e r ) module frq_div(mclk, rst, clk_div); input rst, mclk; output clk_div; reg [3:0] cnt; reg clk_div; mclk or posedge rst) begin if(!rst) begin cnt <= 0; clk_div <= 0; else begin if(cnt == 9) begin cnt <= 0; clk_div <= 1'b1; else begin clk_div <= 1'b0; cnt <= cnt + 1; module 11.27

60 11.4 (Counter) 1 / 1 0 ( f r e q u e n c y d i v i d e r ) Duty cycle 50% 1/10,.

61 11.5 (FSM) ( F i ni t e S t at e M ac h i ne; F S M ) Moore : Mea l y : Mealy Next state logic ( ) State register ( ) Output logic ( ) 11.28

62 11.5 (FSM) Gray Johnson One-hot

63 11.5 (FSM) ( F S M ) V eri l og. F S M, F S M. F S M parameter. define define, F S M. parameter F S M. F S M. F S M,.

64 11.5 (FSM) ( F S M ) F S M 3 ( n e x t s t a t e l o g i c, s t a t e r e g i s t e r, o u t p u t l o g i c ) a l w a y s a s s i g n. FSM,.., t r a n s p a r e n t ( s t a t e o s c i l l a t i o n ). N e x t s t a t e l o g i c c a s e, F S M d e f a u l t.

65 Moore FSM 4 F S M

66 Moore FSM module fsm_ex1(clk, rst_n, go, ws, rd, ds); input clk, rst_n, go, ws; output rd, ds; parameter IDLE = 2'b00, READ = 2'b01, DLY = 2'b10, DONE = 2'b11; reg [1:0] state, next; assign clk or negedge rst_n) //State Register if(!rst_n) state <= IDLE; else state <= next; or go or ws) begin //Next State Logic next = 2'bx; case(state) IDLE : if(go) next = READ; else next = IDLE; READ : next = DLY; DLY : if(!ws) next = DONE; else next = READ; DONE : next = IDLE; case // Output Logic assign rd =((state==read) (state==dly)); assign ds =(state==done); module 11.28(a)

67 Moore FSM always module fsm_ex2(clk, rst_n, go, ws, rd, ds); input clk, rst_n, go, ws; output rd, ds; parameter IDLE = 2'b00, READ = 2'b01, DLY = 2'b10, DONE = 2'b11; reg [1:0] state, next; reg rd, ds; clk or negedge rst_n) //State Register if(!rst_n) state <= IDLE; else state <= next; 11.28(b)

68 Moore FSM //Next State and Output Logic or go or ws) begin next = 2'bx; rd = 1'b0; ds = 1'b0; case(state) IDLE : if(go) next = READ; else next = IDLE; READ : begin rd = 1'b1; next = DLY; DLY : begin rd = 1'b1; if(!ws) next = DONE; else next = READ; DONE : begin ds = 1'b1; next = IDLE; case module 11.28(b)

69 Moore FSM module fsm_ex3(clk, rst_n, go, ws, rd, ds); input clk, rst_n, go, ws; output rd, ds; // parameter IDLE = 2'b00, READ = 2'b01, DLY = 2'b10, DONE = 2'b11; reg [1:0] state, next; reg rd, ds; clk or negedge rst_n) //State Register if(!rst_n) state <= IDLE; else state <= next; or go or ws) begin // Next State Logic next = 2'bx; case(state) IDLE : if(go) next = READ; else next = IDLE; READ : next = DLY; DLY : if(!ws) next = DONE; else next = READ; DONE : next = IDLE; case 11.28(c)

70 Moore FSM //Output Logic and output register clk or negedge rst_n) if(!rst_n) begin ds <= 1'b0; rd <= 1'b0; else begin ds <= 1'b0; rd <= 1'b0; case(next) READ: rd <= 1'b1; DLY : rd <= 1'b1; DONE: ds <= 1'b1; case module 11.28(c)

71 Moore FSM (a), (b) (c)

72 Moore FSM Moore FSM,. reset out=0 ST0 out=1 ST1 bypass out=3 ST3 ST2 out= Moore FSM.

73 Mealy FSM 0 1 din_bit : dout_bit : reset start 0/0 1/0 rd0_once 0/0 1/0 rd1_once 0/1 0/0 1/0 0/0 1/0 1/1 rd0_twice rd1_twice

74 Mealy FSM module seq_det_mealy(clk, rst, din_bit, dout_bit); input clk, rst, din_bit; output dout_bit; reg [2:0] state_reg, next_state; // parameter parameter parameter parameter parameter start = 3'b000; rd0_once = 3'b001; rd1_once = 3'b010; rd0_twice = 3'b011; rd1_twice = 3'b100; 11.29

75 Mealy FSM //Next State Logic or din_bit) begin case(state_reg) start : if (din_bit == 0) next_state <= rd0_once; else if(din_bit == 1) next_state <= rd1_once; else next_state <= start; rd0_once : if(din_bit == 0) next_state <= rd0_twice; else if(din_bit == 1) next_state <= rd1_once; else next_state <= start; rd0_twice : if(din_bit == 0) next_state <= rd0_twice; else if(din_bit == 1) next_state <= rd1_once; else next_state <= start; rd1_once : if(din_bit == 0) next_state <= rd0_once; else if(din_bit == 1) next_state <= rd1_twice; else next_state <= start; rd1_twice : if(din_bit == 0) next_state <= rd0_once; else if(din_bit == 1) next_state <= rd1_twice; else next_state <= start; default : next_state <= start; case 11.29

76 Mealy FSM //State Register clk or posedge rst) begin if(rst == 1) state_reg <= start; else state_reg <= next_state; //Output Logic assign dout_bit =(((state_reg == rd0_twice) &&(din_bit == 0) (state_reg == rd1_twice) &&(din_bit == 1)))? 1 : 0; module 11.29

77 Mealy FSM 11.29

78 Mealy FSM din_bit : detect_out : /0 reset start st4 0/0 0/0 st1 0/0 1/0 0/1 0/0 1/0 1/0 st3 1/0 st2

Chapter 6. Synchronous Sequential Circuits

Chapter 6. Synchronous Sequential Circuits Chapter 6 Synchronous Sequential Circuits In a combinational circuit, the values of the outputs are determined solely by the present values of its inputs. In a sequential circuit, the values of the outputs

More information

Present Next state Output state w = 0 w = 1 z A A B 0 B A C 0 C A C 1

Present Next state Output state w = 0 w = 1 z A A B 0 B A C 0 C A C 1 W Combinational circuit Flip-flops Combinational circuit Z cycle: t t t 2 t 3 t 4 t 5 t 6 t 7 t 8 t 9 t : : Figure 8.. The general form of a sequential circuit. Figure 8.2. Sequences of input and output

More information

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process Parity Checker Example A string of bits has even parity if the number of 1 s in the string is even. Design a circuit that accepts a bit-serial stream of bits and outputs a 0 if the parity thus far is even

More information

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec09 Counters Outline.

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec09 Counters Outline. Review: Designing with FSM EECS 150 - Components and Design Techniques for Digital Systems Lec09 Counters 9-28-04 David Culler Electrical Engineering and Computer Sciences University of California, Berkeley

More information

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline.

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline. Review: esigning with FSM EECS 150 - Components and esign Techniques for igital Systems Lec 09 Counters 9-28-0 avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley

More information

Design of Datapath Controllers

Design of Datapath Controllers Design of Datapath Controllers Speaker: 俞子豪 Adviser: Prof. An-Yeu Wu ACCESS IC LAB Outline vsequential Circuit Model vfinite State Machines vuseful Modeling Techniques P. 2 Model of Sequential Circuits

More information

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs Appendix B Review of Digital Logic Baback Izadi Division of Engineering Programs bai@engr.newpaltz.edu Elect. & Comp. Eng. 2 DeMorgan Symbols NAND (A.B) = A +B NOR (A+B) = A.B AND A.B = A.B = (A +B ) OR

More information

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007 EECS 150 - Components and Design Techniques for Digital Systems FSMs 9/11/2007 Sarah Bird Electrical Engineering and Computer Sciences University of California, Berkeley Slides borrowed from David Culler

More information

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2

More information

EECS150 - Digital Design Lecture 23 - FSMs & Counters

EECS150 - Digital Design Lecture 23 - FSMs & Counters EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?

More information

Sequential Circuit Timing. Young Won Lim 11/6/15

Sequential Circuit Timing. Young Won Lim 11/6/15 Copyright (c) 2011 2015 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Example: vending machine

Example: vending machine Example: vending machine Release item after 15 cents are deposited Single coin slot for dimes, nickels o change Reset Coin Sensor Vending Machine FSM Open Release Mechanism Clock Spring 2005 CSE370 - guest

More information

Chapter 7. VLSI System Components

Chapter 7. VLSI System Components VLSI Design Chapter 7 VLSI System Components Jin-Fu Li Chapter 7 VLSI System Components Introduction Datapath Operators Memory Elements Control Structures 2 System-Level Hierarchy System (Top) Complex

More information

CSC 322: Computer Organization Lab

CSC 322: Computer Organization Lab CSC 322: Computer Organization Lab Lecture 3: Logic Design Dr. Haidar M. Harmanani CSC 322: Computer Organization Lab Part I: Combinational Logic Dr. Haidar M. Harmanani Logical Design of Digital Systems

More information

Chapter 5 Synchronous Sequential Logic

Chapter 5 Synchronous Sequential Logic Chapter 5 Synchronous Sequential Logic Sequential Circuits Latches and Flip Flops Analysis of Clocked Sequential Circuits HDL Optimization Design Procedure Sequential Circuits Various definitions Combinational

More information

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER /2017

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER /2017 UNIVERSITY OF BOLTON TW35 SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER 2-2016/2017 INTERMEDIATE DIGITAL ELECTRONICS AND COMMUNICATIONS MODULE NO: EEE5002

More information

Clocked Sequential Circuits UNIT 13 ANALYSIS OF CLOCKED SEQUENTIAL CIRCUITS. Analysis of Clocked Sequential Circuits. Signal Tracing and Timing Charts

Clocked Sequential Circuits UNIT 13 ANALYSIS OF CLOCKED SEQUENTIAL CIRCUITS. Analysis of Clocked Sequential Circuits. Signal Tracing and Timing Charts ed Sequential Circuits 2 Contents nalysis by signal tracing & timing charts State tables and graphs General models for sequential circuits sequential parity checker Reading Unit 3 asic unit Unit : Latch

More information

Finite State Machine (FSM)

Finite State Machine (FSM) Finite State Machine (FSM) Consists of: State register Stores current state Loads next state at clock edge Combinational logic Computes the next state Computes the outputs S S Next State CLK Current State

More information

Finite State Machine (1A) Young Won Lim 6/9/18

Finite State Machine (1A) Young Won Lim 6/9/18 Finite State Machine (A) 6/9/8 Copyright (c) 23-28 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free ocumentation License, Version.2 or

More information

Models for representing sequential circuits

Models for representing sequential circuits Sequential Circuits Models for representing sequential circuits Finite-state machines (Moore and Mealy) Representation of memory (states) Changes in state (transitions) Design procedure State diagrams

More information

EECS150 - Digital Design Lecture 18 - Counters

EECS150 - Digital Design Lecture 18 - Counters EECS150 - Digital Design Lecture 18 - Counters October 24, 2002 John Wawrzynek Fall 2002 EECS150 - Lec18-counters Page 1 Counters Special sequential circuits (FSMs) that sequence though a set outputs.

More information

EECS150 - Digital Design Lecture 18 - Counters

EECS150 - Digital Design Lecture 18 - Counters EECS50 - Digital Design Lecture 8 - Counters October 24, 2002 John Wawrzynek Fall 2002 EECS50 - Lec8-counters Page Counters Special sequential circuits (FSMs) that sequence though a set outputs. Examples:

More information

Introduction EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 6: Sequential Logic 3 Registers & Counters 5/9/2010

Introduction EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 6: Sequential Logic 3 Registers & Counters 5/9/2010 EE 224: INTROUCTION TO IGITAL CIRCUITS & COMPUTER ESIGN Lecture 6: Sequential Logic 3 Registers & Counters 05/10/2010 Avinash Kodi, kodi@ohio.edu Introduction 2 A Flip-Flop stores one bit of information

More information

FSM model for sequential circuits

FSM model for sequential circuits 1 FSM model for sequential circuits The mathematical model of a sequential circuit is called finite-state machine. FSM is fully characterized by: S Finite set of states ( state ~ contents of FFs) I Finite

More information

EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters)

EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters) EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters) March 19&21, 2002 John Wawrzynek Spring 2002 EECS150 - Lec13-seq3 version 2 Page 1 Counters Special sequential circuits (FSMs) that

More information

FSM Examples. Young Won Lim 11/6/15

FSM Examples. Young Won Lim 11/6/15 /6/5 Copyright (c) 2 25 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version.2 or any later version published

More information

EECS 270 Midterm 2 Exam Answer Key Winter 2017

EECS 270 Midterm 2 Exam Answer Key Winter 2017 EES 270 Midterm 2 Exam nswer Key Winter 2017 Name: unique name: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. NOTES: 1. This part of the exam

More information

EE 209 Logic Cumulative Exam Name:

EE 209 Logic Cumulative Exam Name: EE 209 Logic Cumulative Exam Name: 1.) Answer the following questions as True or False a.) A 4-to-1 multiplexer requires at least 4 select lines: true / false b.) An 8-to-1 mux and no other logi can be

More information

Ch 9. Sequential Logic Technologies. IX - Sequential Logic Technology Contemporary Logic Design 1

Ch 9. Sequential Logic Technologies. IX - Sequential Logic Technology Contemporary Logic Design 1 Ch 9. Sequential Logic Technologies Technology Contemporary Logic Design Overview Basic Sequential Logic Components FSM Design with Counters FSM Design with Programmable Logic FSM Design with More Sophisticated

More information

ENGG 1203 Tutorial _03 Laboratory 3 Build a ball counter. Lab 3. Lab 3 Gate Timing. Lab 3 Steps in designing a State Machine. Timing diagram of a DFF

ENGG 1203 Tutorial _03 Laboratory 3 Build a ball counter. Lab 3. Lab 3 Gate Timing. Lab 3 Steps in designing a State Machine. Timing diagram of a DFF ENGG 1203 Tutorial _03 Laboratory 3 Build a ball counter Timing diagram of a DFF Lab 3 Gate Timing difference timing for difference kind of gate, cost dependence (1) Setup Time = t2-t1 (2) Propagation

More information

Unit 7 Sequential Circuits (Flip Flop, Registers)

Unit 7 Sequential Circuits (Flip Flop, Registers) College of Computer and Information Sciences Department of Computer Science CSC 220: Computer Organization Unit 7 Sequential Circuits (Flip Flop, Registers) 2 SR Flip-Flop The SR flip-flop, also known

More information

ECE/Comp Sci 352 Digital Systems Fundamentals. Charles R. Kime Section 2 Fall Logic and Computer Design Fundamentals

ECE/Comp Sci 352 Digital Systems Fundamentals. Charles R. Kime Section 2 Fall Logic and Computer Design Fundamentals University of Wisconsin - Madison ECE/Comp Sci 352 Digital Systems Fundamentals Charles R. Kime Section 2 Fall 2001 Lecture 5 Registers & Counters Part 2 Charles Kime Counters Counters are sequential circuits

More information

CSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid

CSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid CSE140: Components and Design Techniques for Digital Systems Midterm Information Instructor: Mohsen Imani Midterm Topics In general: everything that was covered in homework 1 and 2 and related lectures,

More information

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value EGC22 Digital Logic Fundamental Additional Practice Problems. Complete the following table of equivalent values. Binary. Octal 35.77 33.23.875 29.99 27 9 64 Hexadecimal B.3 D.FD B.4C 2. Calculate the following

More information

Chapter 7. Sequential Circuits Registers, Counters, RAM

Chapter 7. Sequential Circuits Registers, Counters, RAM Chapter 7. Sequential Circuits Registers, Counters, RAM Register - a group of binary storage elements suitable for holding binary info A group of FFs constitutes a register Commonly used as temporary storage

More information

P2 (10 points): Given the circuit below, answer the following questions:

P2 (10 points): Given the circuit below, answer the following questions: P1 (10 points): Given the function f(a, b, c, d) = m(3,4,5,10,14) + D(6,7): A: Fill in the timing diagram for f. B: Implement f using only 2-1 MUXes. Your circuit should not include more than four 2-1

More information

State & Finite State Machines

State & Finite State Machines State & Finite State Machines Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University See P&H Appendix C.7. C.8, C.10, C.11 Stateful Components Until now is combinatorial logic Output

More information

Sequential Circuits. Circuits with state. Silvina Hanono Wachman Computer Science & Artificial Intelligence Lab M.I.T. L06-1

Sequential Circuits. Circuits with state. Silvina Hanono Wachman Computer Science & Artificial Intelligence Lab M.I.T. L06-1 Sequential Circuits Circuits with state Silvina Hanono Wachman Computer Science & Artificial Intelligence Lab M.I.T. L06-1 Combinational circuits A 0 A 1 A n-1. Sel lg(n) O Mux A B Comparator Result: LT,

More information

CSE 320: Spartan3 I/O Peripheral Testing

CSE 320: Spartan3 I/O Peripheral Testing CSE 320: Spartan3 I/O Peripheral Testing Ujjwal Gupta, Kyle Gilsdorf Arizona State University Version 1.1 October 2, 2012 Contents 1 Introduction 2 2 Test code description and procedure 2 2.1 Modes...............................

More information

Sequential logic and design

Sequential logic and design Principles Of Digital Design Sequential logic and design Analysis State-based (Moore) Input-based (Mealy) FSM definition Synthesis State minimization Encoding Optimization and timing Copyright 20-20by

More information

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop EE210: Switching Systems Lecture 14: State Tables, Diagrams, Latches, and Flip Flop Prof. YingLi Tian Nov. 6, 2017 Department of Electrical Engineering The City College of New York The City University

More information

Register Transfer Level

Register Transfer Level Register Transfer Level CSE3201 RTL A digital system is represented at the register transfer level by these three components 1. The set of registers in the system 2. The operation that are performed on

More information

CHW 261: Logic Design

CHW 261: Logic Design CHW 26: Logic Design Instructors: Prof. Hala Zayed Dr. Ahmed Shalaby http://www.bu.edu.eg/staff/halazayed4 http://bu.edu.eg/staff/ahmedshalaby4# Slide Digital Fundamentals CHAPTER 8 Counters Slide 2 Counting

More information

Total time is: 1 setup, 2 AND, 3 XOR, 1 delay = (1*1) + (2*2) + (3*3) + (1*1) = 15ns

Total time is: 1 setup, 2 AND, 3 XOR, 1 delay = (1*1) + (2*2) + (3*3) + (1*1) = 15ns Clock Period/ Delay Analysis: Find longest possible path (time-wise) between two flip-flops. If 2ns for AND and 3ns for XOR, with T delayff = 1ns and T setupff = 1 ns. So the total time is: 1 setupff +

More information

EECS150 - Digital Design Lecture 16 Counters. Announcements

EECS150 - Digital Design Lecture 16 Counters. Announcements EECS150 - Digital Design Lecture 16 Counters October 20, 2011 Elad Alon Electrical Engineering and Computer Sciences University of California, Berkeley http://www-inst.eecs.berkeley.edu/~cs150 Fall 2011

More information

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10) ELEC 2200-002 Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering

More information

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI DEPARTMENT: ECE MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI 6 QUESTION BANK SUBJECT NAME: DIGITAL ELECTRONICS UNIT : Design of Sequential Circuits PART A ( Marks). Draw the logic diagram 4: Multiplexer.(AUC

More information

Issues on Timing and Clocking

Issues on Timing and Clocking ECE152B TC 1 Issues on Timing and Clocking X Combinational Logic Z... clock clock clock period ECE152B TC 2 Latch and Flip-Flop L CK CK 1 L1 1 L2 2 CK CK CK ECE152B TC 3 Clocking X Combinational Logic...

More information

ALU, Latches and Flip-Flops

ALU, Latches and Flip-Flops CSE14: Components and Design Techniques for Digital Systems ALU, Latches and Flip-Flops Tajana Simunic Rosing Where we are. Last time: ALUs Plan for today: ALU example, latches and flip flops Exam #1 grades

More information

Digital Electronics Sequential Logic

Digital Electronics Sequential Logic /5/27 igital Electronics Sequential Logic r. I. J. Wassell Sequential Logic The logic circuits discussed previously are known as combinational, in that the output depends only on the condition of the latest

More information

Synchronous Sequential Logic

Synchronous Sequential Logic 1 IT 201 DIGITAL SYSTEMS DESIGN MODULE4 NOTES Synchronous Sequential Logic Sequential Circuits - A sequential circuit consists of a combinational circuit and a feedback through the storage elements in

More information

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department Page of COE 22: Digital Logic Design (3--3) Term (Fall 22) Final Exam Sunday January

More information

Review Problem 1. should be on. door state, false if light should be on when a door is open. v Describe when the dome/interior light of the car

Review Problem 1. should be on. door state, false if light should be on when a door is open. v Describe when the dome/interior light of the car Review Problem 1 v Describe when the dome/interior light of the car should be on. v DriverDoorOpen = true if lefthand door open v PassDoorOpen = true if righthand door open v LightSwitch = true if light

More information

ECE380 Digital Logic. Synchronous sequential circuits

ECE380 Digital Logic. Synchronous sequential circuits ECE38 Digital Logic Synchronous Sequential Circuits: State Diagrams, State Tables Dr. D. J. Jackson Lecture 27- Synchronous sequential circuits Circuits here a clock signal is used to control operation

More information

Digital Control of Electric Drives

Digital Control of Electric Drives Digital Control of Electric Drives Logic Circuits - equential Description Form, Finite tate Machine (FM) Czech Technical University in Prague Faculty of Electrical Engineering Ver.. J. Zdenek 27 Logic

More information

CSE140: Digital Logic Design Registers and Counters

CSE140: Digital Logic Design Registers and Counters CSE14: Digital Logic Design Registers and Counters Prof. Tajana Simunic Rosing 38 Where we are now. What we covered last time: ALUs, SR Latch Latches and FlipFlops (FFs) Registers What we ll do next FSMs

More information

Digital Design 2010 DE2 1

Digital Design 2010 DE2 1 1 Underviser: D. M. Akbar Hussain Litteratur: Digital Design Principles & Practices 4 th Edition by yj John F. Wakerly 2 DE2 1 3 4 DE2 2 To enable students to apply analysis, synthesis and implementation

More information

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department Page 1 of 13 COE 202: Digital Logic Design (3-0-3) Term 112 (Spring 2012) Final

More information

EECS150 - Digital Design Lecture 25 Shifters and Counters. Recap

EECS150 - Digital Design Lecture 25 Shifters and Counters. Recap EECS150 - Digital Design Lecture 25 Shifters and Counters Nov. 21, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John

More information

Synchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1

Synchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1 Synchronous Sequential Circuit Design Dr. Ehab A. H. AL-Hialy Page Motivation Analysis of a few simple circuits Generalizes to Synchronous Sequential Circuits (SSC) Outputs are Function of State (and Inputs)

More information

State & Finite State Machines

State & Finite State Machines State & Finite State Machines Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University See P&H Appendix C.7. C.8, C.10, C.11 Big Picture: Building a Processor memory inst register file

More information

Solutions for Appendix C Exercises

Solutions for Appendix C Exercises C Solutions for Appix C Exercises 1 Solutions for Appix C Exercises C.1 A B A B A + B A B A B A + B 0 0 1 1 1 1 1 1 0 1 1 0 0 0 1 1 1 0 0 1 0 0 1 1 1 1 0 0 0 0 0 0 C.2 Here is the first equation: E = ((

More information

Ch 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1

Ch 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1 Ch 7. Finite State Machines VII - Finite State Machines Contemporary Logic esign 1 Finite State Machines Sequential circuits primitive sequential elements combinational logic Models for representing sequential

More information

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering Final Examination ECE 241F - Digital Systems Examiners: S. Brown,

More information

Digital Logic Design - Chapter 5

Digital Logic Design - Chapter 5 Digital Logic Design - Chapter 5 S. Design a 2-bit binary up counter a) using positive-edge-triggered D flip-flops. b) using positive-edge-triggered T flip-flops. c) using positive-edge-triggered JK flip-flops.

More information

Digital Design. Sequential Logic

Digital Design. Sequential Logic Principles Of igital esign Chapter 6 Sequential Logic Chapter preview Boolean algebra 3 Logic gates and flip-flops 3 Finite-state machine 6 Logic design techniques 4 Sequential design techniques 6 Binary

More information

EGR224 F 18 Assignment #4

EGR224 F 18 Assignment #4 EGR224 F 18 Assignment #4 ------------------------------------------------------------------------------------------------------------- Due Date: Friday (Section 10), October 19, by 5 pm (slide it under

More information

vidyarthiplus.com vidyarthiplus.com vidyarthiplus.com ANNA UNIVERSITY- COMBATORE B.E./ B.TECH. DEGREE EXAMINATION - JUNE 2009. ELECTRICAL & ELECTONICS ENGG. - FOURTH SEMESTER DIGITAL LOGIC CIRCUITS PART-A

More information

State and Finite State Machines

State and Finite State Machines State and Finite State Machines See P&H Appendix C.7. C.8, C.10, C.11 Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University Big Picture: Building a Processor memory inst register

More information

Digital Logic and Design (Course Code: EE222) Lecture 19: Sequential Circuits Contd..

Digital Logic and Design (Course Code: EE222) Lecture 19: Sequential Circuits Contd.. Indian Institute of Technology Jodhpur, Year 2017-2018 Digital Logic and Design (Course Code: EE222) Lecture 19: Sequential Circuits Contd.. Course Instructor: Shree Prakash Tiwari Email: sptiwari@iitj.ac.in

More information

Different encodings generate different circuits

Different encodings generate different circuits FSM State Encoding Different encodings generate different circuits no easy way to find best encoding with fewest logic gates or shortest propagation delay. Binary encoding: K states need log 2 K bits i.e.,

More information

Lecture 7: Sequential Networks

Lecture 7: Sequential Networks CSE 140: Components and Design Techniques for Digital Systems Lecture 7: Sequential Networks CK Cheng Dept. of Computer Science and Engineering University of California, San Diego 1 Part II: Sequential

More information

Topic 8: Sequential Circuits

Topic 8: Sequential Circuits Topic 8: Sequential Circuits Readings : Patterson & Hennesy, Appendix B.4 - B.6 Goals Basic Principles behind Memory Elements Clocks Applications of sequential circuits Introduction to the concept of the

More information

CSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Instructor: Mohsen Imani. Slides from Tajana Simunic Rosing

CSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Instructor: Mohsen Imani. Slides from Tajana Simunic Rosing CSE140L: Components and Design Techniques for Digital Systems Lab FSMs Instructor: Mohsen Imani Slides from Tajana Simunic Rosing Source: Vahid, Katz 1 FSM design example Moore vs. Mealy Remove one 1 from

More information

EEE2135 Digital Logic Design

EEE2135 Digital Logic Design EEE2135 Digital Logic Design Chapter 7. Sequential Circuits Design 서강대학교 전자공학과 1. Model of Sequential Circuits 1) Sequential vs. Combinational Circuits a. Sequential circuits: Outputs depend on both the

More information

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI 6 DEPARTMENT: EEE QUESTION BANK SUBJECT NAME: DIGITAL LOGIC CIRCUITS SUBJECT CODE: EE55 SEMESTER IV UNIT : Design of Synchronous Sequential Circuits PART

More information

Chapter 13. Clocked Circuits SEQUENTIAL VS. COMBINATIONAL CMOS TG LATCHES, FLIP FLOPS. Baker Ch. 13 Clocked Circuits. Introduction to VLSI

Chapter 13. Clocked Circuits SEQUENTIAL VS. COMBINATIONAL CMOS TG LATCHES, FLIP FLOPS. Baker Ch. 13 Clocked Circuits. Introduction to VLSI Chapter 13 Clocked Circuits SEQUENTIAL VS. COMBINATIONAL CMOS TG LATCHES, FLIP FLOPS SET-RESET (SR) ARBITER LATCHES FLIP FLOPS EDGE TRIGGERED DFF FF TIMING Joseph A. Elias, Ph.D. Adjunct Professor, University

More information

Preparation of Examination Questions and Exercises: Solutions

Preparation of Examination Questions and Exercises: Solutions Questions Preparation of Examination Questions and Exercises: Solutions. -bit Subtraction: DIF = B - BI B BI BO DIF 2 DIF: B BI 4 6 BI 5 BO: BI BI 4 5 7 3 2 6 7 3 B B B B B DIF = B BI ; B = ( B) BI ( B),

More information

Synchronous Sequential Circuit Design. Digital Computer Design

Synchronous Sequential Circuit Design. Digital Computer Design Synchronous Sequential Circuit Design Digital Computer Design Races and Instability Combinational logic has no cyclic paths and no races If inputs are applied to combinational logic, the outputs will always

More information

Spiral 2-1. Datapath Components: Counters Adders Design Example: Crosswalk Controller

Spiral 2-1. Datapath Components: Counters Adders Design Example: Crosswalk Controller 2-. piral 2- Datapath Components: Counters s Design Example: Crosswalk Controller 2-.2 piral Content Mapping piral Theory Combinational Design equential Design ystem Level Design Implementation and Tools

More information

CPE100: Digital Logic Design I

CPE100: Digital Logic Design I Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu CPE100: Digital Logic Design I Midterm02 Review http://www.ee.unlv.edu/~b1morris/cpe100/ 2 Logistics Thursday Nov. 16 th In normal lecture (13:00-14:15)

More information

Sequential Logic Circuits

Sequential Logic Circuits Chapter 4 Sequential Logic Circuits 4 1 The defining characteristic of a combinational circuit is that its output depends only on the current inputs applied to the circuit. The output of a sequential circuit,

More information

Lecture 9: Sequential Logic Circuits. Reading: CH 7

Lecture 9: Sequential Logic Circuits. Reading: CH 7 Lecture 9: Sequential Logic Circuits Reading: CH 7 Sequential Logic FSM (Finite-state machine) Inputs Current State COMBINATIONAL LOGIC Registers Outputs = f(current, inputs) Next state 2 storage mechanisms

More information

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering TIMING ANALYSIS Overview Circuits do not respond instantaneously to input changes

More information

Appendix A: Digital Logic. Principles of Computer Architecture. Principles of Computer Architecture by M. Murdocca and V. Heuring

Appendix A: Digital Logic. Principles of Computer Architecture. Principles of Computer Architecture by M. Murdocca and V. Heuring - Principles of Computer rchitecture Miles Murdocca and Vincent Heuring 999 M. Murdocca and V. Heuring -2 Chapter Contents. Introduction.2 Combinational Logic.3 Truth Tables.4 Logic Gates.5 Properties

More information

Boolean Logic Continued Prof. James L. Frankel Harvard University

Boolean Logic Continued Prof. James L. Frankel Harvard University Boolean Logic Continued Prof. James L. Frankel Harvard University Version of 10:18 PM 5-Sep-2017 Copyright 2017, 2016 James L. Frankel. All rights reserved. D Latch D R S Clk D Clk R S X 0 ~S 0 = R 0 ~R

More information

Chapter 7 Sequential Logic

Chapter 7 Sequential Logic Chapter 7 Sequential Logic SKEE2263 Digital Systems Mun im/ismahani/izam {munim@utm.my,e-izam@utm.my,ismahani@fke.utm.my} March 28, 2016 Table of Contents 1 Intro 2 Bistable Circuits 3 FF Characteristics

More information

ELCT201: DIGITAL LOGIC DESIGN

ELCT201: DIGITAL LOGIC DESIGN ELCT201: DIGITAL LOGIC DESIGN Dr. Eng. Haitham Omran, haitham.omran@guc.edu.eg Dr. Eng. Wassim Alexan, wassim.joseph@guc.edu.eg Lecture 6 Following the slides of Dr. Ahmed H. Madian محرم 1439 ه Winter

More information

Analysis of clocked sequential networks

Analysis of clocked sequential networks Analysis of clocked sequential networks keywords: Mealy, Moore Consider : a sequential parity checker an 8th bit is added to each group of 7 bits such that the total # of 1 bits is odd for odd parity if

More information

10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop

10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering An FSM with No Inputs Moves from State to State What happens if an FSM has no inputs? ECE 120: Introduction to Computing

More information

Adders allow computers to add numbers 2-bit ripple-carry adder

Adders allow computers to add numbers 2-bit ripple-carry adder Lecture 12 Logistics HW was due yesterday HW5 was out yesterday (due next Wednesday) Feedback: thank you! Things to work on: ig picture, ook chapters, Exam comments Last lecture dders Today Clarification

More information

Timing Constraints in Sequential Designs. 63 Sources: TSR, Katz, Boriello & Vahid

Timing Constraints in Sequential Designs. 63 Sources: TSR, Katz, Boriello & Vahid Timing Constraints in Sequential esigns 63 Sources: TSR, Katz, Boriello & Vahid Where we are now. What we covered last time: FSMs What we ll do next: Timing constraints Upcoming deadlines: ZyBook today:

More information

ECEN 468 Advanced Logic Design

ECEN 468 Advanced Logic Design ECEN 468 Advanced Logic Design Lecture 27: Verilog Delay Models Inertial Delay v Delay is caused by charging and discharging node capacitors in circuit B v Gate delay and wire delay v Pulse rejection o

More information

Sequential Synchronous Circuit Analysis

Sequential Synchronous Circuit Analysis Sequential Synchronous Circuit Analysis General Model Current State at time (t) is stored in an array of flip-flops. Next State at time (t+1) is a Boolean function of State and Inputs. Outputs at time

More information

Synchronous Sequential Circuit Design

Synchronous Sequential Circuit Design Synchronous Sequential Circuit Design 1 Sequential circuit design In sequential circuit design, we turn some description into a working circuit We first make a state table or diagram to express the computation

More information

or 0101 Machine

or 0101 Machine Synchronous State Graph or Synchronous State Graph or Detector Design a state graph for a machine with: One input X, one output Z. Z= after receiving the complete sequence or Overlapped sequences are detected.

More information

Lecture 10: Synchronous Sequential Circuits Design

Lecture 10: Synchronous Sequential Circuits Design Lecture 0: Synchronous Sequential Circuits Design. General Form Input Combinational Flip-flops Combinational Output Circuit Circuit Clock.. Moore type has outputs dependent only on the state, e.g. ripple

More information

FYSE420 DIGITAL ELECTRONICS

FYSE420 DIGITAL ELECTRONICS FYSE42 IGITAL ELECTRONICS Lecture 4 [] [2] [3] IGITAL LOGIC CIRCUIT ANALYSIS & ESIGN Nelson, Nagle, Irvin, Carrol ISBN -3-463894-8 IGITAL ESIGN Morris Mano Fourth edition ISBN -3-98924-3 igital esign Principles

More information

Generalized FSM model: Moore and Mealy

Generalized FSM model: Moore and Mealy Lecture 18 Logistics HW7 is due on Monday (and topic included in midterm 2) Midterm 2 on Wednesday in lecture slot cover materials up to today s lecture Review session Tuesday 4:15pm in EEB125 Last lecture

More information

Programmable Logic Devices II

Programmable Logic Devices II Lecture 04: Efficient Design of Sequential Circuits Prof. Arliones Hoeller arliones.hoeller@ifsc.edu.br Prof. Marcos Moecke moecke@ifsc.edu.br 1 / 94 Reference These slides are based on the material made

More information