cs 251 fall 2019 cs 240 principles of programming
play

CS 251 Fall 2019 CS 240 Principles of Programming Languages - PowerPoint PPT Presentation

CS 251 Fall 2019 CS 240 Principles of Programming Languages Foundations of Computer Systems Ben Wood Sequential Logic Latch: CC-BY Rberteig@flickr and State Output depends on inputs and stored values . (vs. combinational logic: output


  1. λ CS 251 Fall 2019 CS 240 Principles of Programming Languages Foundations of Computer Systems Ben Wood Sequential Logic Latch: CC-BY Rberteig@flickr and State Output depends on inputs and stored values . (vs. combinational logic: output depends only on inputs) Elements to store values: latches, flip-flops, registers, memory https://cs.wellesley.edu/~cs240/ Sequential Logic 1

  2. Processor: Data Path Components 1 2 3 Instruction ALU Registers Memory Fetch and Decode Sequential Logic 2

  3. Bistable latches Suppose we somehow get a 1 (or a 0?) on here. Q Q = 0 0 Q Q Sequential Logic 3

  4. SR latch S R Q Q' Q (stable) Q' (stable) 0 0 0 1 0 1 0 0 1 0 1 0 1 0 ? ? 1 0 0 1 ? ? 0 1 Set Reset S R Q Q Sequential Logic 4

  5. SR latch Q R Q S R Q R Q Q Q S S S R R Q Q Q Q S Sequential Logic 5

  6. D latch R D Q Data bit Q C S Clock if C = 0, then SR latch stores current value of Q. if C = 1, then D flows to Q: if D = 0, then R = 1 and S = 0, Q = 0 if D = 1, then R = 0 and S = 1, Q = 1 Sequential Logic 6

  7. ex Time matters! D C Q Assume Q has an initial state of 0 Sequential Logic 7

  8. Clocks Clock: free-running signal with fixed cycle time = clock period = T. Clock frequency = 1 / clock period Falling edge Rising edge Clock period A clock controls when to update a sequential logic element's state. Sequential Logic 8

  9. Synchronous systems Inputs to state elements must be valid on active clock edge. State State element Combinational logic element 1 2 Sequential Logic 9

  10. D flip-flop with falling-edge trigger leader follower E D Q Q L Q F D F D L D latch D latch Q C L Q L C F Q F C Q next becomes Q now Can still read Q now follower stores E as Q Clock leader stores D as E Time Sequential Logic 10

  11. ex Time matters! D C E Q Assume Q and E have an initial state of 0 Sequential Logic 11

  12. Reading and writing in the same cycle D Q D Flip-Flop Assume Q is initially 0. Clock C Q Sequential Logic 12

  13. D flip-flop = one bit of storage D Q 1 D Flip-Flop C Q Sequential Logic 13

  14. *Half a byte! A 1-nybble* register (a 4-bit hardware storage cell) 0 D Q D Flip-Flop C Q D Q 1 D Flip-Flop C Q 0 D Q D Flip-Flop C Q 1 D Q D Flip-Flop Write C Q Clock Sequential Logic 14

  15. Register file Read register r selector 1 Read register Read data 1 w r selector 2 Read ports Why 2? Read data 2 Write register w selector r Write data w Write? Write port 0 = read 1 = write r = log 2 number of registers w = bits in word Array of registers, with register selectors, write/read control, input port for writing data, output ports for reading data. Sequential Logic 15

  16. Read register number 1 Register 0 Register 1 M Read ports u . . . Read data 1 x (data out) Register n – 2 Register n – 1 Read register number 2 M u Read data 2 x Sequential Logic 16

  17. Write port (data in) write control clock Write C 0 Register 0 1 D . n -to-2 n register number . Register number . decoder C Register 1 n – 2 D n – 1 . . . C Register n – 2 D C Register n – 1 incoming data Register data D Sequential Logic 17

  18. RAM (Random Access Memory) A B Similar to register file, except… Sequential Logic 18

  19. 16 x 4 RAM 4-bit address 1101 4 to 16 decoder data out Sequential Logic 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend