Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
introduction_to_digital_systems:sequential_logic [2023/03/27 11:52]
mexleadmin
introduction_to_digital_systems:sequential_logic [2023/09/19 23:49] (aktuell)
mexleadmin
Zeile 1: Zeile 1:
-====== 6Sequential Logic ======+====== 6 Sequential Logic ======
  
 "I Know What You Did Last Cycle" "I Know What You Did Last Cycle"
Zeile 5: Zeile 5:
 ===== 6.1 First Terminology ===== ===== 6.1 First Terminology =====
  
-The most important term for the upcoming topics is the word **state**. But what is a state? \\ It is a unique situation, where the possible next steps (= possible next states), the inner behavior or the outputs are distinguishable from other situations.+The most important term for the upcoming topics is the word **state**. But what is a state? \\ It is a unique situation, where the possible next steps (= possible next states), the inner behavioror the outputs are distinguishable from other situations.
 Here are some practical examples: Here are some practical examples:
   * Being happy or being sad, are two different states, since the inner behavior is different (this least often also to a different output).    * Being happy or being sad, are two different states, since the inner behavior is different (this least often also to a different output). 
Zeile 47: Zeile 47:
 ===== 6.2 Classical State Machine Types ===== ===== 6.2 Classical State Machine Types =====
  
-The up-counter in the previous sub-chapter was able to count from $0$ to $3$. But what can we do in order to count differently, like $ 7, 6, 1, 5$? In order to understand this, a simpler situation will be investigated. So, let's look at how one can create an up-counter counting $1, 2, 3, 4$.+The up-counter in the previous sub-chapter was able to count from $0$ to $3$. But what can we do to count differently, like $ 7, 6, 1, 5$? To understand this, a simpler situation will be investigated. So, let's look at how one can create an up-counter counting $1, 2, 3, 4$.
  
 ==== 6.2.1 Moore Machine ==== ==== 6.2.1 Moore Machine ====
  
-The first idea might be to use what we already have: an up-counter, which facilitates 2 flip-flops in order to result in 2-bit output.+The first idea might be to use what we already have: an up-counter, which facilitates 2 flip-flops to result in 2-bit output.
 The wanted new state machine needs 3 bits for the output, since the binary representation of our outputs is $001_2$,$010_2$,$011_2$,$100_2$. The wanted new state machine needs 3 bits for the output, since the binary representation of our outputs is $001_2$,$010_2$,$011_2$,$100_2$.
  
Zeile 126: Zeile 126:
   * The number of flip-flops is given by the number of outputs $l$.    * The number of flip-flops is given by the number of outputs $l$. 
   * The output only changes when an edge on the clock input happens: The mealy machine is an **__synchronous__ state machine**.   * The output only changes when an edge on the clock input happens: The mealy machine is an **__synchronous__ state machine**.
-  * The Medvedev machine usually need more logic gates. +  * The Medvedev machine usually needs more logic gates. 
  
 </WRAP></WRAP></panel> </WRAP></WRAP></panel>
Zeile 147: Zeile 147:
  
 ==== 6.3.1 Motivation ==== ==== 6.3.1 Motivation ====
-The diagrams of different states are well known from physics for example the state diagram (or better: phase diagram) of water, where its three states are: solid ice, liquid water and gaseous steam. The possible state transitions are due to temperature increase or decrease. +The diagrams of different states are well known from physics for example the state diagram (or better: phase diagram) of water, where its three states are: solid ice, liquid waterand gaseous steam. The possible state transitions are due to temperature increase or decrease. 
  
-In <imgref pic01> image (1) the states of water are shown on the temperature axis. When only the state transistions are relevant, the states are simplified to a circle, showing the state name and behaviour. The transitions are depict as arrows, where the needed condititon is written onto (See <imgref pic01> image (2) ). This diagram is called **state transition diagram**.+In <imgref pic01> image (1) the states of water are shown on the temperature axis. When only the state transitions are relevant, the states are simplified to a circle, showing the state name and behavior. The transitions are depicted as arrows, where the needed condition is written onto (See <imgref pic01> image (2) ). This diagram is called **state transition diagram**.
  
 <WRAP> <imgcaption pic01| States of Water> </imgcaption> {{drawio>SDwater.svg}} </WRAP> <WRAP> <imgcaption pic01| States of Water> </imgcaption> {{drawio>SDwater.svg}} </WRAP>
  
 For matter not only the dimension "temperature" is important, but also the "pressure". The full phase diagram is shown in <imgref pic02> image (1).  For matter not only the dimension "temperature" is important, but also the "pressure". The full phase diagram is shown in <imgref pic02> image (1). 
-By this, another variable is available and more transistions. These can be drawn into the state transition diagram (<imgref pic02> image (2)).+By this, another variable is available and more transitions. These can be drawn into the state transition diagram (<imgref pic02> image (2)).
  
 <WRAP> <imgcaption pic02| States of Water> </imgcaption> {{drawio>SDwater2.svg}} </WRAP> <WRAP> <imgcaption pic02| States of Water> </imgcaption> {{drawio>SDwater2.svg}} </WRAP>
Zeile 160: Zeile 160:
 ==== 6.3.2 Simple logic Example ==== ==== 6.3.2 Simple logic Example ====
  
-In German, often one has to pay for entering the toilet. An example of such entrance control system is shown in <imgref pic03>At this (artificial) example, one can pay either 50ct or 1€. \\+In Germany, often one has to pay for entering the toilet. An example of such an entrance control system is shown in <imgref pic03>In this (artificial) example, one can pay either 50ct or 1€. \\
 Once paid, the turnstile will release and one can enter. Once the turnstile was pushed the entrance is closed again. Once paid, the turnstile will release and one can enter. Once the turnstile was pushed the entrance is closed again.
  
Zeile 166: Zeile 166:
  
 The <imgref pic04> the state transition diagram is drawn.  The <imgref pic04> the state transition diagram is drawn. 
-  * The two states are that (1) the turnstile is opened and one is able to go through and (2) the turnstile is closed and one cannot enter anymore.+  * The two states are that (1) the turnstile is opened and one can go through and (2) the turnstile is closed and one cannot enter anymore.
   * The transitions are given by the done actions: one can either insert a coin or push on the turnstile.    * The transitions are given by the done actions: one can either insert a coin or push on the turnstile. 
  
 Important here are some additional considerations:  Important here are some additional considerations: 
-  * For the state transition diagram one has to **look for all possible transitions**. So, also pushing a closed turnstile or inserting more coins have to taken into account. +  * For the state transition diagram one has to **look for all possible transitions**. So, also pushing a closed turnstile or inserting more coins have to take into account. 
-  * A state transition diagram is not complete without a **legend** and without an **beginning/reset point**. The reset point is given by an arrow with "reset" written onto it+  * A state transition diagram is not complete without a **legend** and without an **beginning/reset point**. The reset point is given by an arrow with "reset" written on it
  
 <WRAP> <imgcaption pic04| State Transition Diagram of the Entrance Control for Toilets> </imgcaption> {{drawio>STDEntranceFee.svg}} </WRAP> <WRAP> <imgcaption pic04| State Transition Diagram of the Entrance Control for Toilets> </imgcaption> {{drawio>STDEntranceFee.svg}} </WRAP>
  
-Out of this state transition diagram one can create a table-like representation, see <imgref pic05>.+Out of this state transition diagramone can create a table-like representation, see <imgref pic05>.
  
-<WRAP> <imgcaption pic05| "non binary" State Transition Table of the Entrance Control for Toilets> </imgcaption> {{drawio>STDEntranceFee2.svg}} </WRAP>+<WRAP> <imgcaption pic05| "non-binary" State Transition Table of the Entrance Control for Toilets> </imgcaption> {{drawio>STDEntranceFee2.svg}} </WRAP>
  
-the inputs, outputs and states have to be encoded into binary, in order to investigate this table a bit more. How the binary value is connected to the outputs does not matter. We will choose the following coding:+the inputs, outputsand states have to be encoded into binary, to investigate this table a bit more. How the binary value is connected to the outputs does not matter. We will choose the following coding:
   * Encoding of the states: turnstile closed ≙ $Z=0$, turnstile opened ≙ $Z=1$,   * Encoding of the states: turnstile closed ≙ $Z=0$, turnstile opened ≙ $Z=1$,
   * Encoding of the inputs: no coin inserted ≙ $Xc=0$, coin inserted ≙ $Xc=1$, turnstile not pushed ≙ $Xp=0$, turnstile pushed ≙ $Xp=1$,   * Encoding of the inputs: no coin inserted ≙ $Xc=0$, coin inserted ≙ $Xc=1$, turnstile not pushed ≙ $Xp=0$, turnstile pushed ≙ $Xp=1$,
Zeile 190: Zeile 190:
  
 Interestingly, the logic circuit for this state transition table was already part of the course: it is the RS flip-flop!  Interestingly, the logic circuit for this state transition table was already part of the course: it is the RS flip-flop! 
-When looking deeper onto the table in <imgref pic06a> one can substitute $Xc$ with $S$ (as in Set) and $Xp$ with $R$ (as in Reset) to directly get the truthtable of the RS flip flop. +When looking deeper into the table in <imgref pic06a> one can substitute $Xc$ with $S$ (as in Set) and $Xp$ with $R$ (as in Reset) to directly get the truth table of the RS flip flop. 
  
 ==== 6.3.3 First Adaption for Up-Counter==== ==== 6.3.3 First Adaption for Up-Counter====
  
-In the previous sub-chapter (6.2) we had a look onto different implementations of an up counter and on this chapter the way to represent a state machine via a state transition diagram. So one question is: how does these up counter look like in the state transition diagram?+In the previous sub-chapter (6.2) we had a look at different implementations of an up counter and in this chapter the way to represent a state machine via a state transition diagram. So one question is: what do these up-counters look like in the state transition diagram?
  
-The Answer ist quite simple: there are 4 states, so 4 "circles" are needed. These states need to have circular connections in order to get the wanted increase from $00_2=0_{10}$, to $01_2=1_{10}$, to $10_2=2_{10}$, to $11_2=3_{10}$ and then back to $00_2=0_{10}$. The first state shall be $00_2=0_{10}$, so after the reset the state machine will get entered there. Finally, the output vector is similar to the state vector.  +The answer is quite simple: there are 4 states, so 4 "circles" are needed. These states need to have circular connections to get the wanted increase from $00_2=0_{10}$, to $01_2=1_{10}$, to $10_2=2_{10}$, to $11_2=3_{10}$ and then back to $00_2=0_{10}$. The first state shall be $00_2=0_{10}$, so after the resetthe state machine will get entered there. Finally, the output vector is similar to the state vector.  
-With a deeper look onto is: This is therefore in particular a Medvedev machine! +With a deeper look at it: This is therefore in particular a Medvedev machine! 
  
 In <imgref pic15> both types of state machines are shown.  In <imgref pic15> both types of state machines are shown. 
-  * In the Moore Machine the already seen "halving of the circle" is used to show the distinct state vector in the upper half and the output vector in the lower half.  +  * In the Moore machine the already seen "halving of the circle" is used to show the distinct state vector in the upper half and the output vector in the lower half.  
-  * In the Medvedev Machine only one value is written in the circle, since here the state vector is also the output vector.+  * In the Medvedev machine only one value is written in the circle, since here the state vector is also the output vector.
  
-<WRAP> <imgcaption pic15| State Transition Diagram of up-Counter 0..3 as Moore Machine> </imgcaption> +<WRAP> <imgcaption pic15| State Transition Diagram of an up-counter 0..3 as Moore Machine> </imgcaption> 
 {{drawio>STDupcounter03.svg}} </WRAP> {{drawio>STDupcounter03.svg}} </WRAP>
  
 <panel type="info" title="Exercise 6.3.3.1. State Transition Diagram in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.3.3.1. State Transition Diagram in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
-The shown state transistion diagram can easily be created in the tool Digital:+The shown state transition diagram can easily be created in the tool Digital:
   - Click on the menu ''Analysis'' >> ''Finite State Machine''   - Click on the menu ''Analysis'' >> ''Finite State Machine''
-  - Here one either can add new states with a right click, or - more easier - go to the menu ''Create'' >> ''Create Counter'' >> ''4 States''+  - Here one either can add new states with a right click, or - easier - go to the menu ''Create'' >> ''Create Counter'' >> ''4 States''
   - A (up) counter will get created    - A (up) counter will get created 
  
Zeile 215: Zeile 215:
   - Make the state machine get alive:   - Make the state machine get alive:
     - Click to the menu ''Create'' >> ''State Transition Table'' in order to see the state transition table     - Click to the menu ''Create'' >> ''State Transition Table'' in order to see the state transition table
-    - Here, click on the menu ''Create'' >> ''Cicruit''+    - Here, click on the menu ''Create'' >> ''Circuit''
     - Now, the circuit can be started via the start button. The present state in the state transition diagram will also get highlighted.     - Now, the circuit can be started via the start button. The present state in the state transition diagram will also get highlighted.
  
 </WRAP></WRAP></panel> </WRAP></WRAP></panel>
  
-The next step is to transform this into up counter from $1...4$. For this simply the output has to be changed. This means the numbers in the "lower half of the circles" have to be adapted (see in <imfref pic16>).+The next step is to transform this into an up counter from $1...4$. For this simply the output has to be changed. This means the numbers in the "lower half of the circles" have to be adapted (see in <imfref pic16>).
  
-<WRAP> <imgcaption pic16| State Transition Diagram of up-Counter 1..4 as Moore Machine> </imgcaption> +<WRAP> <imgcaption pic16| State Transition Diagram of an up-counter 1..4 as Moore Machine> </imgcaption> 
 {{drawio>STDupcounter14.svg}} </WRAP> {{drawio>STDupcounter14.svg}} </WRAP>
  
 <wrap #6332_statetransexercise /> <wrap #6332_statetransexercise />
 <panel type="info" title="Exercise 6.3.3.2. State Transition Diagram II in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.3.3.2. State Transition Diagram II in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
-This exercise directly attached onto Exercise 6.3.3.2+This exercise is directly attached to exercise 6.3.3.2
  
-The counter shall now be changed in such a way, that it counts $1 - 2 - 3 - 4$. For this: right click on each present states beginning with state 0 and add for ''Outputs'' $Y=001$ and upcounting (see image).+The counter shall now be changed in such a way, that it counts $1 - 2 - 3 - 4$. For this: right-click on each present state beginning with state 0 and add for ''Outputs'' $Y=001$ and up-counting (see image).
  
 {{drawio>exercise6332.svg}} {{drawio>exercise6332.svg}}
Zeile 235: Zeile 235:
 Tasks: Tasks:
   - Make this state machine again get alive   - Make this state machine again get alive
-  - Look at the circuit: Is it a Moore, Mealy or a Medvedev machine?+  - Look at the circuit: Is it a Moore, Mealyor a Medvedev machine?
  
 </WRAP></WRAP></panel> </WRAP></WRAP></panel>
  
-Looking on what we got, there is one part missing: the state machine does not have any input.. So the input vectors have to be added onto the transition (arrows). For an activateable counter, there only have to be one input $X$, which acts as an enable input.+Looking at what we got, there is one part missing: the state machine does not have any input... So the input vectors have to be added to the transition (arrows). For an activatable counter, there only has to be one input $X$, which acts as an enable input.
  
-<WRAP> <imgcaption pic17| State Transition Diagram of up-Counter 1..4 as Moore Machine with enable input> </imgcaption> +<WRAP> <imgcaption pic17| State Transition Diagram of an up-counter 1..4 as Moore Machine with enable input> </imgcaption> 
 {{drawio>STDupcounter14enable.svg}} </WRAP> {{drawio>STDupcounter14enable.svg}} </WRAP>
  
 <panel type="info" title="Exercise 6.3.3.3. State Transition Diagram III in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.3.3.3. State Transition Diagram III in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
-This exercise directly attached onto Exercise 6.3.3.2+This exercise is directly attached to exercise 6.3.3.2
  
-The last step is to add the transitions: right click on all transitions and add $X=1$ as a ''Condition''.+The last step is to add the transitions: right-click on all transitions and add $X=1$ as a ''Condition''.
  
 {{drawio>exercise6333.svg}} {{drawio>exercise6333.svg}}
Zeile 256: Zeile 256:
  
 <panel type="info" title="Exercise 6.3.3.4. State Transition Diagram III in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.3.3.4. State Transition Diagram III in Digital.exe "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
-This exercise directly attached onto Exercise 6.3.3.3+This exercise is directly attached to exercise 6.3.3.3
  
-With the state machine in 6.3.3.3 it is also possible to create a state machine which can resemble a traffic light state machine. This shall transit from redto red-yellow, to green, to yellow and then back to red. +With the state machine in 6.3.3.3it is also possible to create a state machine that can resemble a traffic light state machine. This shall transit from red to red-yellow, to green, to yellowand then back to red. 
  
-Use the following addition to the resulting citcuit in order to get the light running:+Use the following addition to the resulting circuit to get the light running:
 {{drawio>exercise6334.svg}} {{drawio>exercise6334.svg}}
  
Zeile 273: Zeile 273:
 <panel type="info" title="Exercise 6.1.1. State Transition Diagram I - fill the gaps"> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.1.1. State Transition Diagram I - fill the gaps"> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
  
-The following state transistion diagram shall be given:+The following state transition diagram shall be given:
 {{drawio>STDexample1.svg}} {{drawio>STDexample1.svg}}
  
  
-  * There are two transitions marked with $A$ and $B$. \\ What values does the inputs need to have in order show all transistions explicitely?  +  * There are two transitions marked with $A$ and $B$. \\ What values do the inputs need to have to show all transitions explicitly?  
  
 <WRAP indent><WRAP indent> <WRAP indent><WRAP indent>
 <button size="xs" type="link" collapse="Solution_6_1_1_1_Strategy">{{icon>eye}}Strategy</button><collapse id="Solution_6_1_1_1_Strategy" collapsed="true"> <button size="xs" type="link" collapse="Solution_6_1_1_1_Strategy">{{icon>eye}}Strategy</button><collapse id="Solution_6_1_1_1_Strategy" collapsed="true">
   * Find the transitions wanted   * Find the transitions wanted
-  * Look at which state these transitions starts+  * Look at which state these transitions start
-  * Which other transitions starts there?+  * Which other transitions start there?
   * Which transition conditions are missing?   * Which transition conditions are missing?
 </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_1_Solution">{{icon>eye}}Solution</button><collapse id="Solution_6_1_1_1_Solution" collapsed="true"> </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_1_Solution">{{icon>eye}}Solution</button><collapse id="Solution_6_1_1_1_Solution" collapsed="true">
Zeile 300: Zeile 300:
 </WRAP></WRAP> </WRAP></WRAP>
  
-  * How many flipflops are necessary for such a Moore Machine?+  * How many flip-flops are necessary for such a Moore Machine?
  
 <WRAP indent><WRAP indent> <WRAP indent><WRAP indent>
 <button size="xs" type="link" collapse="Solution_6_1_1_2_Strategy">{{icon>eye}}Strategy</button><collapse id="Solution_6_1_1_2_Strategy" collapsed="true"> <button size="xs" type="link" collapse="Solution_6_1_1_2_Strategy">{{icon>eye}}Strategy</button><collapse id="Solution_6_1_1_2_Strategy" collapsed="true">
 Each flipflop can store one Bit. Each stored bit can be used to address states. So, check the number of bits $i$ of states $Z_i$ ("size of the state vector"). \\ Each flipflop can store one Bit. Each stored bit can be used to address states. So, check the number of bits $i$ of states $Z_i$ ("size of the state vector"). \\
-Be aware, that one bit can address maximum 2 states, two bits maximum 4 states, three bits maximum 8 states and so on.+Be aware, that one bit can address maximum of 2 states, two bits maximum of 4 states, three bits maximum of 8 statesand so on.
 </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_2_Solution">{{icon>eye}}Solution</button><collapse id="Solution_6_1_1_2_Solution" collapsed="true"> </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_2_Solution">{{icon>eye}}Solution</button><collapse id="Solution_6_1_1_2_Solution" collapsed="true">
-  * Number of bits $i$ of states $Z_i$ is given in the legend. The number of bits $i$ has also to fit to the number of states.+  * Number of bits $i$ of states $Z_i$ is given in the legend. The number of bits $i$ has also to fit the number of states.
   * Here the legend shows $Z_2, Z_1, Z_0$, so there are 3 bits.   * Here the legend shows $Z_2, Z_1, Z_0$, so there are 3 bits.
-  * Also the number of states the diagram are 5. This can only be numbered with at least 3 bits. +  * Also the number of states in the diagram is 5. This can only be numbered with at least 3 bits. 
  
 </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_2_Result">{{icon>eye}}Result</button><collapse id="Solution_6_1_1_2_Result" collapsed="true"> </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_2_Result">{{icon>eye}}Result</button><collapse id="Solution_6_1_1_2_Result" collapsed="true">
Zeile 324: Zeile 324:
 Check for each line: Check for each line:
   * What is the start/present state (given by the bits $\color{red}{Z_2(n), Z_1(n), Z_0(n)}$ in the line)?    * What is the start/present state (given by the bits $\color{red}{Z_2(n), Z_1(n), Z_0(n)}$ in the line)? 
-  * Which transition is shown start/present state (given by $\color{brown}{X_1, X_0}$)? +  * Which transition is shown as start/present state (given by $\color{brown}{X_1, X_0}$)? 
 Out of this orientation, the next columns can be derived: Out of this orientation, the next columns can be derived:
   * At the end of the transition, the next state can be found (necessary for columns $\color{green}{Z_2(n+1), Z_1(n+1), Z_0(n+1)}$)   * At the end of the transition, the next state can be found (necessary for columns $\color{green}{Z_2(n+1), Z_1(n+1), Z_0(n+1)}$)
-  * Within the state symbol of the present state, the output valuse can be found  (necessary for columns $\color{violet}{Y_2(n), Y_1(n), Y_0(n)}$)+  * Within the state symbol of the present state, the output values can be found (necessary for columns $\color{violet}{Y_2(n), Y_1(n), Y_0(n)}$)
 {{drawio>STTexample1_stategy.svg}} {{drawio>STTexample1_stategy.svg}}
 </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_3_Result">{{icon>eye}}Result</button><collapse id="Solution_6_1_1_3_Result" collapsed="true"> </collapse> <button size="xs" type="link" collapse="Solution_6_1_1_3_Result">{{icon>eye}}Result</button><collapse id="Solution_6_1_1_3_Result" collapsed="true">
Zeile 338: Zeile 338:
 <panel type="info" title="Exercise 6.1.2. State Transition Diagram II - Sequence "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.1.2. State Transition Diagram II - Sequence "> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
  
-Design a state machine, which result in an output of the following (decimal) numbers: $4 - 5 - 2 - 1 - 6 - 7 - 0 - 3 - 4 - ...$  +Design a state machine, which results in an output of the following (decimal) numbers: $4 - 5 - 2 - 1 - 6 - 7 - 0 - 3 - 4 - ...$  
   * The numbers shall repeat cyclic and without any other input than the clock $CLK$   * The numbers shall repeat cyclic and without any other input than the clock $CLK$
   * Draw the state transition diagram and the state transition table   * Draw the state transition diagram and the state transition table
   * Use alternatively the structure of a 3bit up-counter    * Use alternatively the structure of a 3bit up-counter 
-    * Draw the structure of this Moore machine with the up-counter as a blackbox, the input and output values and - if necessary - further blackboxes+    * Draw the structure of this Moore machine with the up-counter as a black box, the input and output valuesand - if necessary - further black boxes
     * draw and fill in the additional table.      * draw and fill in the additional table. 
  
Zeile 349: Zeile 349:
 <panel type="info" title="Exercise 6.1.3. State Transition Diagram III - Milling Machine"> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.1.3. State Transition Diagram III - Milling Machine"> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
  
-Design a state transistion diagram for automatic milling machine as Moore machine, under the following conditions:+Design a state transition diagram for an automatic milling machine as Moore machine, under the following conditions:
   - The milling machine has 4 states: Initialisation $I$, Component Change $C$, Running $R$, Error $E$   - The milling machine has 4 states: Initialisation $I$, Component Change $C$, Running $R$, Error $E$
   - The milling machine starts at the state $I$.   - The milling machine starts at the state $I$.
-  - Once a limit switch $L$ is read as activated, the state $E$ shall be entered, independent which state the machine was in.+  - Once a limit switch $L$ is read as activated, the state $E$ shall be entered, independent of which state the machine was in.
   - Only in the state $E$ an alarm shall ring $A=1$.   - Only in the state $E$ an alarm shall ring $A=1$.
   - $E$ can only be exited with a reset.   - $E$ can only be exited with a reset.
Zeile 359: Zeile 359:
   - Initialisation $I$ only changes into Component Change $C$, when no limit switch $L$ is activated and the Key is deactivated (input $K=0$) and the Fixed Condition is reached $F=1$.    - Initialisation $I$ only changes into Component Change $C$, when no limit switch $L$ is activated and the Key is deactivated (input $K=0$) and the Fixed Condition is reached $F=1$. 
  
-Explicitely draw all possible transitions.+Explicitly draw all possible transitions.
  
 {{drawio>MillingMachine.svg}} {{drawio>MillingMachine.svg}}
Zeile 374: Zeile 374:
  
   * Draw the state transition diagram of the Moore machine of the synchronous sequential circuit.   * Draw the state transition diagram of the Moore machine of the synchronous sequential circuit.
-  * Create the digital ciruit.+  * Create the digital circuit.
  
 </WRAP></WRAP></panel> </WRAP></WRAP></panel>
Zeile 386: Zeile 386:
  
   * Draw the state transition diagram of the Moore machine of the synchronous sequential circuit.   * Draw the state transition diagram of the Moore machine of the synchronous sequential circuit.
-  * Create the digital ciruit.+  * Create the digital circuit.
  
 </WRAP></WRAP></panel> </WRAP></WRAP></panel>
Zeile 393: Zeile 393:
 <panel type="info" title="Exercise 6.1.6. State Transition Diagram VI - Roll the dice"> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%> <panel type="info" title="Exercise 6.1.6. State Transition Diagram VI - Roll the dice"> <WRAP group><WRAP column 2%>{{fa>pencil?32}}</WRAP><WRAP column 92%>
  
-Develop a sequential circuit, which generate a clock driven up-counter from $1..6$. The not reqired states shall lead after one clock cycle to the state of number $1$.+Develop a sequential circuit, which generates a clock-driven up-counter from $1..6$. The not required states shall lead after one clock cycle to the state of number $1$.
  
   * Draw the state transition diagram of the Moore machine of the synchronous sequential circuit.   * Draw the state transition diagram of the Moore machine of the synchronous sequential circuit.
-  * Create the digital ciruit.+  * Create the digital circuit.
  
 </WRAP></WRAP></panel> </WRAP></WRAP></panel>