Preface |
|
ix | |
|
Chapter 1 Synchronous Finite State Machines |
|
|
1 | (168) |
|
|
1 | (1) |
|
|
2 | (4) |
|
1.3 Design of synchronous finite state machines |
|
|
6 | (1) |
|
|
7 | (20) |
|
|
7 | (5) |
|
1.4.2 Binary sequence detector |
|
|
12 | (9) |
|
1.4.3 State machine implementation based on a state table |
|
|
21 | (1) |
|
1.4.4 Variable width pulse generator |
|
|
22 | (5) |
|
1.5 Equivalent states and minimization of the number of states |
|
|
27 | (28) |
|
1.5.1 Implication table method |
|
|
28 | (9) |
|
1.5.2 Partitioning method |
|
|
37 | (5) |
|
1.5.3 Simplification of incompletely specified machines |
|
|
42 | (13) |
|
|
55 | (6) |
|
1.7 Transformation of Moore and Mealy state machines |
|
|
61 | (2) |
|
1.8 Splitting finite state machines |
|
|
63 | (5) |
|
1.8.1 Rules for splitting |
|
|
63 | (1) |
|
|
64 | (3) |
|
|
67 | (1) |
|
1.9 Sequence detector implementation based on a programmable circuit |
|
|
68 | (2) |
|
1.10 Practical considerations |
|
|
70 | (9) |
|
1.10.1 Propagation delays and race conditions |
|
|
72 | (2) |
|
1.10.2 Timing specifications |
|
|
74 | (5) |
|
|
79 | (18) |
|
|
97 | (72) |
|
Chapter 2 Algorithmic State Machines |
|
|
169 | (44) |
|
|
169 | (1) |
|
|
169 | (1) |
|
|
170 | (5) |
|
|
175 | (25) |
|
2.4.1 Serial adder/subtracter |
|
|
175 | (8) |
|
2.4.2 Multiplier based on addition and shift operations |
|
|
183 | (4) |
|
2.4.3 Divider based on subtraction and shift operations |
|
|
187 | (2) |
|
2.4.4 Controller for an automatic vending machine |
|
|
189 | (4) |
|
2.4.5 Traffic light controller |
|
|
193 | (7) |
|
|
200 | (5) |
|
|
205 | (8) |
|
Chapter 3 Asynchronous Finite State Machines |
|
|
213 | (74) |
|
|
213 | (1) |
|
|
214 | (1) |
|
|
214 | (4) |
|
|
218 | (2) |
|
|
220 | (4) |
|
3.6 Encoding the states of an asynchronous state machine |
|
|
224 | (3) |
|
3.7 Synthesis of asynchronous circuits |
|
|
227 | (13) |
|
|
227 | (1) |
|
3.7.2 Essential and d-trio hazards |
|
|
228 | (11) |
|
3.7.3 Design of asynchronous state machines |
|
|
239 | (1) |
|
3.8 Application examples of asynchronous state machines |
|
|
240 | (7) |
|
|
240 | (3) |
|
3.8.2 Asynchronous counter |
|
|
243 | (4) |
|
3.9 Implementation of asynchronous machines using SR latches or C-elements |
|
|
247 | (4) |
|
3.10 Asynchronous state machine operating in pulse mode |
|
|
251 | (5) |
|
3.11 Asynchronous state machine operating in burst mode |
|
|
256 | (2) |
|
|
258 | (8) |
|
|
266 | (21) |
|
Appendix. Overview of VHDL Language |
|
|
287 | (24) |
|
|
287 | (1) |
|
|
287 | (5) |
|
|
288 | (1) |
|
|
288 | (1) |
|
A.2.3 Library and packages |
|
|
289 | (1) |
|
|
289 | (1) |
|
A.2.5 Signal and variable |
|
|
289 | (1) |
|
A.2.6 Data types and objects |
|
|
289 | (1) |
|
|
290 | (1) |
|
A.2.8 Entity and architecture |
|
|
291 | (1) |
|
A.3 Concurrent instructions |
|
|
292 | (2) |
|
A.3.1 Concurrent instructions with selective assignment |
|
|
293 | (1) |
|
A.3.2 Concurrent instructions with conditional assignment |
|
|
293 | (1) |
|
|
294 | (4) |
|
|
296 | (1) |
|
A.4.2 The GENERATE Instruction |
|
|
296 | (1) |
|
|
297 | (1) |
|
A.5 Sequential structures |
|
|
298 | (8) |
|
|
298 | (5) |
|
|
303 | (3) |
|
|
306 | (5) |
Bibliography |
|
311 | (2) |
Index |
|
313 | |