Growth Mindset & Sequential Logic Overview

Growth Mindset &
Sequential Logic
Growth vs. Fixed Mindset, Introduction to Sequential Logic,
Representing Time in Hardware, The Data Flip-Flop (DFF)
Lecture Outline
Growth vs. Fixed Mindset
Setting SMART Goals
Introduction to Sequential Logic
The Problem of Combinational Logic
Autopilot Control Circuit Example
Representing Time in Hardware
Clock Signals and Units of Time in Hardware
The Data Flip-Flop (DFF)
Implementation and Examples
2
Growth vs. Fixed Mindset
3
Setting SMART Goals
 
S
 – Be specific, simple and significant.
 
M
 – Make sure your goals are measurable. How many
times within a week, month, the quarter do you want to
do x goal?
 
A
 – Make sure your goals are achievable. Is your goal
within your scope of control?
 
R
 – Be realistic and reasonable.
 
T
 – Be time-bound. When will you accomplish your goal?
4
SMART Goals Group Discussion
5
Lecture Outline
Growth vs. Fixed Mindset
Setting SMART Goals
Introduction to Sequential Logic
The Problem of Combinational Logic
Autopilot Control Circuit Example
Representing Time in Hardware
Clock Signals and Units of Time in Hardware
The Data Flip-Flop (DFF)
Implementation and Examples
6
Why Consider Time Now?
 
Needed for our 
abstraction
We need to talk about hardware maintaining state for memory
We need vocabulary to talk about time
 
Needed for our 
implementation
Physical implementations of chips cannot be instantaneous
We need to account for physical delays in signal propagation
7
The Problem with Combinational Logic
 
Consider the following circuit:
 
 
 
Let’s assume that 
a=0
, 
b=1
, and 
c=0
The output should be 1
 
What’s the result if we change 
b=0
 and 
c=1
?
The result should still be 1
However, 
out
 is briefly 
0
 if we change 
c
 first
 
8
Autopilot Control Circuit Example
Consider this autopilot control circuit:
Either the pilot or copilot is flying at any time
The pilot and copilot can separately request autopilot
Only the person flying can request autopilot
9
Thanks to Justin Hsia for this example!
Autopilot Control Circuit Example
Consider this autopilot control circuit:
Either the pilot or copilot is flying at any time
The pilot and copilot can separately request autopilot
Only the person flying can request autopilot
Let’s assume every logic gate takes 
1ms
 to compute
For example, if an input changes at 
t=4ms
, the gate will only
output the new result at 
t=5ms
10
Thanks to Justin Hsia for this example!
Autopilot Control Circuit Example
11
0ms
1ms
2ms
3ms
4ms
5ms
6ms
Autopilot Control Circuit Example
12
0ms
1ms
2ms
3ms
4ms
5ms
6ms
??
Autopilot Control Circuit Example
13
0ms
1ms
2ms
3ms
4ms
5ms
6ms
Autopilot Control Circuit Example
14
0ms
1ms
2ms
3ms
4ms
5ms
6ms
Autopilot Control Circuit Example
15
0ms
1ms
2ms
3ms
4ms
5ms
6ms
Describe the behavior of the
Autopilot Engaged (
AE
) output
between 1ms to 6ms.
16
0ms
1ms
2ms
3ms
4ms
5ms
6ms
Autopilot Control Circuit Example
17
Critical Path
0ms
1ms
2ms
3ms
4ms
5ms
6ms
Combinational vs. Sequential Logic
 
So far, we have ignored “time” in our circuits
 
Our chips used 
combinational logic
When given inputs, the chip computes its output instantaneously
The output is a function of the current inputs, with no memory of
previous events
 
Today, we’ll start exploring what happens when we
consider time, ultimately building to 
sequential logic
18
What is Sequential Logic?
 
Sequential logic incorporates time in hardware
 
Output depends on present value of its input signals 
and
 a
sequence of past inputs
 
Sequential logic resolves the problem introduced with
combinational logic
Does so by adding a 
delay
 for the entire circuit before evaluating
the result
All the circuits will be evaluated between one 
clock cycle 
and the
output will be evaluated at the end of the clock cycle
 
19
Combinational vs. Sequential Abstraction
20
Clock
Signal
0
1
in
out
t=1
t=2
t=3
t=4
t=0
in
out
Combinational: 
a function of the current inputs
Sequential: 
a function of previous inputs (has “memory”)
a
b
c
d
e
f(a)
f(b)
f(c)
f(d)
f(e)
a
b
c
d
e
f(a)
f(b)
f(c)
f(d)
Lecture Outline
Growth vs. Fixed Mindset
Setting SMART Goals
Introduction to Sequential Logic
The Problem of Combinational Logic
Autopilot Control Circuit Example
Representing Time in Hardware
Clock Signals and Units of Time in Hardware
The Data Flip-Flop (DFF)
Implementation and Examples
21
Representing Time: Clock Signals
 
We physically represent time in hardware with a 
clock
signal
A clock signal changes its frequency at a set time rate
Alternates between a low signal and a high signal of equal length
 
A 
cycle
 is a period of time between a low and high signal
Represents one unit of time in hardware
We can change how long a unit of time is by alternating the length
of the low and high signals
22
Physical Timekeeping
Hardware keeps track of time using an alternating signal
Creates the idea of 
discrete time: 
state changes only occur in
discrete intervals, right when signal alternates
23
Physical
Time
Clock
Signal
0
1
Physical Timekeeping
Hardware keeps track of time using an alternating signal
Creates the idea of 
discrete time:
 state changes only occur in
discrete intervals, right when signal alternates
24
Physical
Time
Clock
Signal
0
1
Discrete Time Intervals
t=1
t=2
t=3
t=4
t=0
Adding a Clock: Ideal
We want this behavior from a simple, combinational Not
gate:
25
Clock
Signal
0
1
in
0
1
out
0
1
t=1
t=2
t=3
t=4
t=0
Adding a Clock: Reality
Combinational logic may be incorrect for a period
immediately after inputs change
Computation delays 
(logic gates) and 
propagation delays
 (wires)
26
Clock
Signal
0
1
in
0
1
out
0
1
t=1
t=2
t=3
t=4
t=0
In the autopilot example, this
arrow would represent the 3ms of
uncertainty after inputs change
Adding a Clock: Clock Cycles
Choose a clock cycle length slightly longer than the delays
27
Clock
Signal
0
1
in
0
1
out
0
1
t=1
t=2
t=3
t=4
t=0
> 3ms
Adding a Clock: Abstraction
If we use a long enough clock cycle, we can 
pretend
 that
combinational chips (like Not) work instantly
28
Clock
Signal
0
1
in
0
1
out
0
1
t=1
t=2
t=3
t=4
t=0
Which of the following statements about sequential logic is
FALSE?
29
A.
We represent time with a clock signal that alternates
between high and low signals
B.
The DFF allows us to reuse outputs as inputs in a
circuit
C.
The outputs for a DFF at time t=2 is determined by the
inputs at time t=3
D.
Sequential logic is important because it addresses
slight delays caused in circuit gates
E.
We’re lost…
Lecture Outline
Growth vs. Fixed Mindset
Setting SMART Goals
Introduction to Sequential Logic
The Problem of Combinational Logic
Autopilot Control Circuit Example
Representing Time in Hardware
Clock Signals and Units of Time in Hardware
The Data Flip-Flop (DFF)
Implementation and Examples
30
The Data Flip-Flop Gate
 
Simplest state-keeping component
1-bit input, 1-bit output
Wired to the clock signal
Always outputs its previous input: 
out(t) = in(t-1)
 
Implementation: a gate that can flip between two stable
states (remembering 0 vs. remembering 1)
Gates with this behavior are “Data Flip Flops” (DFFs)
 
31
Aside: Treating the DFF as a Primitive
Disclaimer: DFFs can be made from Nand gates exclusively
But requires wiring them together in a “messy” loop that the
hardware simulator can’t simulate and isn’t very educational
For simplicity, we will treat the DFF as a primitive in the
projects
Just like Nand, you can use the built-in implementation
32
Data Flip-Flop (DFF) Behavior
33
Clock
Signal
0
1
in
0
1
out
0
1
t=1
t=2
t=3
t=4
t=0
Sequential Chips
A category of chips that utilize the clock signal, in addition
to any combinational logic
Capable of:
Maintaining state
Optionally, acting on that state and the current inputs
Can incorporate combinational logic as well
Constructed from:
DFFs
Combinational logic (which is entirely constructed from Nand)
34
Sequential Chips
35
Combinational
Logic
f
DFF
output
output(
t
) = 
f
(state(
t-1
), input(
t
))
DFF
DFF
input
DFF Specification: 
out(t) = in(t-1)
D Flip-Flop: Time Series
36
Example: 
out(t=3)
 = 
in(t=2)
DFF Example 1: Specification
Example specification:
out(t) = Xor(a(t-1), b(t-1))
Takes two inputs, 
a
 and 
b
, and outputs the 
Xor
 of them
Note that out at time 
t
 is determined by 
a
 and 
b
 at time 
t-1
We will need to use a DFF
Exercise: Draw out the corresponding circuit diagram and
HDL implementation
37
Example specification:
out(t) = Xor(a(t-1), b(t-1))
Example: 
out(t=3)
 = Xor(
a(t=2)
, 
b(t=2)
)
DFF Example 1: Time Series
38
DFF Example 1: Circuit Diagram & HDL
Example specification:
out(t) = Xor(a(t-1), b(t-1))
Circuit diagram:
HDL:
39
DFF Example 1: Circuit Diagram & HDL
Example specification:
out(t) = Xor(a(t-1), b(t-1))
Circuit diagram:
HDL:
40
CHIP
 Example1 {
    
IN
 a, b;
    
OUT
 out;
    
PARTS:
    Xor(a=a, b=b, out=xorout);
    DFF(in=
xorout
, out=out);
}
DFF Example 2: Specification
Example specification:
out(t) = Xor(out(t-1), in(t-1))
Notice how the specification uses 
out(t-1)
 as an input
for 
out(t)
Implies the necessity of circular wiring, separated by a DFF
Exercise: Draw out the corresponding circuit diagram and
HDL implementation
41
Example specification:
out(t) = Xor(out(t-1), in(t-1))
Example: 
out(t=1)
 = Xor(
in(t=0)
, 
out(t=0)
)
DFF Example 2: Time Series
42
DFF Example 2: Circuit Diagram & HDL
Example specification:
out(t) = Xor(out(t-1), in(t-1))
Circuit diagram:
HDL:
43
DFF Example 2: Circuit Diagram & HDL
Example specification:
out(t) = Xor(out(t-1), in(t-1))
Circuit diagram:
HDL:
44
CHIP
 Example2 {
    
IN
 in;
    
OUT
 out;
    
PARTS:
    Xor(a=in, b=prevout, out=xorout);
    DFF(in=
xorout
, out=prevout, out=out);
}
DFF Example 3: Specification
Example specification:
out(t) = And(Not(out(t-1)), in(t-1))
Exercise: Draw out the corresponding circuit diagram and
HDL implementation
45
DFF Example 3: Time Series
Example specification:
out(t) = And(Not(out(t-1)), in(t-1))
Example:
out(t=1)
 = And(Not(
out(t=0)
), 
in(t=0)
)
 
46
DFF Example 3: Circuit Diagram & HDL
Example specification:
out(t) = And(Not(out(t-1)), in(t-1))
Circuit diagram:
HDL:
47
DFF Example 3: Circuit Diagram & HDL
Example specification:
out(t) = And(Not(out(t-1)), in(t-1))
Circuit diagram:
HDL:
48
CHIP
 Example3 {
    
IN
 in;
    
OUT
 out;
    
PARTS:
    Not(in=prevout, out=notprevout);
    And(a=in, b=notprevout, out=andout);
    DFF(in=andout, out=prevout, out=out);
}
Post-Lecture 6 Reminders
Topics this Thursday:
Metacognitive Subject: Bloom’s Taxonomy
Technical Subject: Building Memory
Project 3 due this Thursday (1/19) at 11:59pm
Eric has office hours after class in CSE2 153
Feel free to post your questions on the Ed board as well
Eric will be out of town during Week 10
We will still have class together, more details to come
49
Slide Note
Embed
Share

This lecture explores the concepts of growth mindset and sequential logic, discussing SMART goals, combinational logic, hardware representation of time, the Data Flip-Flop (DFF), and more. Dive into a comprehensive discussion on building academic success through bottom-up computing.

  • Growth Mindset
  • Sequential Logic
  • SMART Goals
  • Academic Success
  • Computing

Uploaded on Feb 15, 2025 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Lecture 5: Growth Mindset & Sequential Logic Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 CSE 390B, Winter 2023 CSE 390B, Winter 2023 Building Academic Success Through Bottom-Up Computing Growth Mindset & Sequential Logic Growth vs. Fixed Mindset, Introduction to Sequential Logic, Representing Time in Hardware, The Data Flip-Flop (DFF)

  2. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Lecture Outline Growth vs. Fixed Mindset Setting SMART Goals Introduction to Sequential Logic The Problem of Combinational Logic Autopilot Control Circuit Example Representing Time in Hardware Clock Signals and Units of Time in Hardware The Data Flip-Flop (DFF) Implementation and Examples 2

  3. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Growth vs. Fixed Mindset 3

  4. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Setting SMART Goals S Be specific, simple and significant. M Make sure your goals are measurable. How many times within a week, month, the quarter do you want to do x goal? A Make sure your goals are achievable. Is your goal within your scope of control? R Be realistic and reasonable. T Be time-bound. When will you accomplish your goal? 4

  5. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 SMART Goals Group Discussion WINTER QUARTER GOALS SMART GOAL FRAMEWORK SPHERE OF CONTROL S Specific M Measurable A Achievable R Realistic T Timebound Getting a 4.0 in a course What are skills, practices or habits that are not strengths YET? vs. Attending CSE 390B office hours at least 5x this quarter (or once every other week) Attending course office hours 5

  6. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Lecture Outline Growth vs. Fixed Mindset Setting SMART Goals Introduction to Sequential Logic The Problem of Combinational Logic Autopilot Control Circuit Example Representing Time in Hardware Clock Signals and Units of Time in Hardware The Data Flip-Flop (DFF) Implementation and Examples 6

  7. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Why Consider Time Now? Needed for our abstraction We need to talk about hardware maintaining state for memory We need vocabulary to talk about time Needed for our implementation Physical implementations of chips cannot be instantaneous We need to account for physical delays in signal propagation 7

  8. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 The Problem with Combinational Logic Consider the following circuit: Let s assume that a=0, b=1, and c=0 The output should be 1 What s the result if we change b=0 and c=1? The result should still be 1 However, out is briefly 0 if we change c first 8

  9. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Consider this autopilot control circuit: Either the pilot or copilot is flying at any time The pilot and copilot can separately request autopilot Only the person flying can request autopilot Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) Thanks to Justin Hsia for this example! 9

  10. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Consider this autopilot control circuit: Either the pilot or copilot is flying at any time The pilot and copilot can separately request autopilot Only the person flying can request autopilot Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) Let s assume every logic gate takes 1ms to compute For example, if an input changes at t=4ms, the gate will only output the new result at t=5ms Thanks to Justin Hsia for this example! 10

  11. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 A 0 B 0 C 1 AE 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 11

  12. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 ?? A 0 B 0 C 1 AE 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 12

  13. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 A 0 0 B 0 C 1 AE 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 13

  14. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 A 0 0 ? B 0 C 1 AE 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 14

  15. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Copilot Autopilot Request (CAR) Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 A 0 0 1 B 0 C 1 AE 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 15

  16. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Vote at https://pollev.com/cse390b Copilot Autopilot Request (CAR) Describe the behavior of the Autopilot Engaged (AE) output between 1ms to 6ms. Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 A 0 0 1 B 0 C 1 AE 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 16

  17. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Autopilot Control Circuit Example Copilot Autopilot Request (CAR) Critical Path Autopilot Engaged (AE) Pilot Flying (PF)? Pilot Autopilot Request (PAR) CAR 1 1 1 1 1 1 PF 1 0 0 0 0 0 PAR 1 1 1 1 1 1 A 0 0 1 1 1 1 B 0 0 0 1 1 1 C 1 1 0 0 0 0 AE 1 1 1 0 1 1 0ms 1ms 2ms 3ms 4ms 5ms 6ms 17

  18. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Combinational vs. Sequential Logic So far, we have ignored time in our circuits Our chips used combinational logic When given inputs, the chip computes its output instantaneously The output is a function of the current inputs, with no memory of previous events Today, we ll start exploring what happens when we consider time, ultimately building to sequential logic 18

  19. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 What is Sequential Logic? Sequential logic incorporates time in hardware Output depends on present value of its input signals and a sequence of past inputs Sequential logic resolves the problem introduced with combinational logic Does so by adding a delay for the entire circuit before evaluating the result All the circuits will be evaluated between one clock cycle and the output will be evaluated at the end of the clock cycle 19

  20. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Combinational vs. Sequential Abstraction 1 Clock Signal 0 Combinational: a function of the current inputs a b c d e in out f(a) f(b) f(c) f(d) f(e) Sequential: a function of previous inputs (has memory ) a b c d e in f(a) f(b) f(c) f(d) out t=1 t=2 t=3 t=4 t=0 20

  21. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Lecture Outline Growth vs. Fixed Mindset Setting SMART Goals Introduction to Sequential Logic The Problem of Combinational Logic Autopilot Control Circuit Example Representing Time in Hardware Clock Signals and Units of Time in Hardware The Data Flip-Flop (DFF) Implementation and Examples 21

  22. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Representing Time: Clock Signals We physically represent time in hardware with a clock signal A clock signal changes its frequency at a set time rate Alternates between a low signal and a high signal of equal length A cycle is a period of time between a low and high signal Represents one unit of time in hardware We can change how long a unit of time is by alternating the length of the low and high signals 22

  23. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Physical Timekeeping Hardware keeps track of time using an alternating signal Creates the idea of discrete time: state changes only occur in discrete intervals, right when signal alternates Physical Time 1 Clock Signal 0 23

  24. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Physical Timekeeping Hardware keeps track of time using an alternating signal Creates the idea of discrete time: state changes only occur in discrete intervals, right when signal alternates Physical Time 1 Clock Signal 0 t=1 t=2 t=3 t=4 t=0 Discrete Time Intervals 24

  25. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Adding a Clock: Ideal We want this behavior from a simple, combinational Not gate: 1 Clock Signal 0 1 in 0 1 out 0 t=1 t=2 t=3 t=4 t=0 25

  26. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Adding a Clock: Reality Combinational logic may be incorrect for a period immediately after inputs change Computation delays (logic gates) and propagation delays (wires) 1 Clock Signal In the autopilot example, this arrow would represent the 3ms of uncertainty after inputs change 0 1 in 0 1 out 0 t=1 t=2 t=3 t=4 t=0 26

  27. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Adding a Clock: Clock Cycles Choose a clock cycle length slightly longer than the delays > 3ms 1 Clock Signal 0 1 in 0 1 out 0 t=1 t=2 t=3 t=4 t=0 27

  28. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Adding a Clock: Abstraction If we use a long enough clock cycle, we can pretend that combinational chips (like Not) work instantly 1 Clock Signal 0 1 in 0 1 out 0 t=1 t=2 t=3 t=4 t=0 28

  29. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Vote at https://pollev.com/cse390b Which of the following statements about sequential logic is FALSE? A. We represent time with a clock signal that alternates between high and low signals B. The DFF allows us to reuse outputs as inputs in a circuit C. The outputs for a DFF at time t=2 is determined by the inputs at time t=3 D. Sequential logic is important because it addresses slight delays caused in circuit gates E. We re lost 29

  30. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Lecture Outline Growth vs. Fixed Mindset Setting SMART Goals Introduction to Sequential Logic The Problem of Combinational Logic Autopilot Control Circuit Example Representing Time in Hardware Clock Signals and Units of Time in Hardware The Data Flip-Flop (DFF) Implementation and Examples 30

  31. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 The Data Flip-Flop Gate Simplest state-keeping component 1-bit input, 1-bit output Wired to the clock signal Always outputs its previous input: out(t) = in(t-1) Implementation: a gate that can flip between two stable states (remembering 0 vs. remembering 1) Gates with this behavior are Data Flip Flops (DFFs) 31

  32. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Aside: Treating the DFF as a Primitive Disclaimer: DFFs can be made from Nand gates exclusively But requires wiring them together in a messy loop that the hardware simulator can t simulate and isn t very educational For simplicity, we will treat the DFF as a primitive in the projects Just like Nand, you can use the built-in implementation 32

  33. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Data Flip-Flop (DFF) Behavior 1 Clock Signal 0 1 in 0 1 out 0 t=1 t=2 t=3 t=4 t=0 33

  34. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Sequential Chips A category of chips that utilize the clock signal, in addition to any combinational logic Capable of: Maintaining state Optionally, acting on that state and the current inputs Can incorporate combinational logic as well Constructed from: DFFs Combinational logic (which is entirely constructed from Nand) 34

  35. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Sequential Chips output(t) = f(state(t-1), input(t)) DFF Combinational Logic input output DFF f DFF 35

  36. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 D Flip-Flop: Time Series DFF Specification: out(t) = in(t-1) in 0 0 1 1 0 1 0 ... out 0 0 0 1 1 0 1 ... time t=0 t=1 t=2 t=3 t=4 t=5 t=6 ... Example: out(t=3) = in(t=2) 36

  37. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 1: Specification Example specification: out(t) = Xor(a(t-1), b(t-1)) Takes two inputs, a and b, and outputs the Xor of them Note that out at time t is determined by a and b at time t-1 We will need to use a DFF Exercise: Draw out the corresponding circuit diagram and HDL implementation 37

  38. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 1: Time Series Example specification: out(t) = Xor(a(t-1), b(t-1)) a 0 0 1 1 1 0 0 ... b 0 1 0 1 1 1 0 ... out 0 0 1 1 0 0 1 ... time t=0 t=1 t=2 t=3 t=4 t=5 t=6 ... Example: out(t=3) = Xor(a(t=2), b(t=2)) 38

  39. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 1: Circuit Diagram & HDL Example specification: out(t) = Xor(a(t-1), b(t-1)) Circuit diagram: HDL: 39

  40. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 1: Circuit Diagram & HDL Example specification: out(t) = Xor(a(t-1), b(t-1)) Circuit diagram: CHIP Example1 { IN a, b; OUT out; HDL: PARTS: Xor(a=a, b=b, out=xorout); DFF(in=xorout, out=out); } 40

  41. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 2: Specification Example specification: out(t) = Xor(out(t-1), in(t-1)) Notice how the specification uses out(t-1) as an input for out(t) Implies the necessity of circular wiring, separated by a DFF Exercise: Draw out the corresponding circuit diagram and HDL implementation 41

  42. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 2: Time Series Example specification: out(t) = Xor(out(t-1), in(t-1)) in 0 0 1 1 1 0 0 ... out 0 0 0 1 0 1 1 ... time t=0 t=1 t=2 t=3 t=4 t=5 t=6 ... Example: out(t=1) = Xor(in(t=0), out(t=0)) 42

  43. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 2: Circuit Diagram & HDL Example specification: out(t) = Xor(out(t-1), in(t-1)) Circuit diagram: HDL: 43

  44. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 2: Circuit Diagram & HDL Example specification: out(t) = Xor(out(t-1), in(t-1)) Circuit diagram: CHIP Example2 { IN in; OUT out; HDL: PARTS: Xor(a=in, b=prevout, out=xorout); DFF(in=xorout, out=prevout, out=out); } 44

  45. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 3: Specification Example specification: out(t) = And(Not(out(t-1)), in(t-1)) Exercise: Draw out the corresponding circuit diagram and HDL implementation 45

  46. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 3: Time Series Example specification: out(t) = And(Not(out(t-1)), in(t-1)) in 1 1 0 1 1 0 0 ... out 0 1 0 0 1 0 0 ... time t=0 t=1 t=2 t=3 t=4 t=5 t=6 ... Example: out(t=1) = And(Not(out(t=0)), in(t=0)) 46

  47. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 3: Circuit Diagram & HDL Example specification: out(t) = And(Not(out(t-1)), in(t-1)) Circuit diagram: HDL: 47

  48. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 DFF Example 3: Circuit Diagram & HDL Example specification: out(t) = And(Not(out(t-1)), in(t-1)) Circuit diagram: CHIP Example3 { IN in; OUT out; HDL: PARTS: Not(in=prevout, out=notprevout); And(a=in, b=notprevout, out=andout); DFF(in=andout, out=prevout, out=out); } 48

  49. Lecture 5: Growth Mindset & Sequential Logic CSE 390B, Winter 2023 Post-Lecture 6 Reminders Topics this Thursday: Metacognitive Subject: Bloom s Taxonomy Technical Subject: Building Memory Project 3 due this Thursday (1/19) at 11:59pm Eric has office hours after class in CSE2 153 Feel free to post your questions on the Ed board as well Eric will be out of town during Week 10 We will still have class together, more details to come 49

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#