digital design datapath components n.
Skip this Video
Loading SlideShow in 5 Seconds..
Digital Design – Datapath Components PowerPoint Presentation
Download Presentation
Digital Design – Datapath Components

play fullscreen
1 / 74
Download Presentation

Digital Design – Datapath Components - PowerPoint PPT Presentation

dennis
137 Views
Download Presentation

Digital Design – Datapath Components

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Digital Design – Datapath Components Chapter 4 - Datapath Components

  2. (a) I3 I2 I1 I0 (b) 1 0 1 0 1 0 1 0 load 2x1 I3 I2 I1 I0 load D D D D Q3 Q2 Q1 Q0 Q Q Q Q Q3 Q2 Q1 Q0 I3 I3 I2 I1 I0 I2 I1 I0 1 0 = = 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 d d a 2x1 a 2x1 o o l l D D D D D D D D Q Q Q Q Q Q Q Q (c) Q3 Q2 Q1 Q0 Q3 Q2 Q1 Q0 Digital DesignDatapath Components Figure 4.1 4-bit parallel load register: (a) internal design, (b) block symbol, and (c) paths when load=0 and load=1.

  3. Digital DesignDatapath Components Figure 4.2 Weight sampler implemented using a 4-bit parallel load register.

  4. Digital DesignDatapath Components Figure 4.3 Internal design of the TemperatureHistoryStorage component, using parallel load registers.

  5. Digital DesignDatapath Components Figure 4.4 Above-mirror display design.

  6. Digital DesignDatapath Components Figure 4.5 An electronic checkerboard.

  7. Digital DesignDatapath Components Figure 4.6 Checkerboard after loading registers for initial checker positions.

  8. Digital DesignDatapath Components Figure 4.7 Right shift example: sample contents before and after a right shift, and bit-by-bit view of the shift.

  9. Digital DesignDatapath Components Figure 4.8 Shift register: (a) implementation, (b) paths when shr=1, and (c) register symbol.

  10. Digital DesignDatapath Components Figure 4.9 Right rotate example: register contents before and after the rotate, and bit-by-bit view of the rotate operation.

  11. Digital DesignDatapath Components Figure 4.10 Above-mirror display design using shift registers to reduce the number of lines coming from the car’s computer.

  12. Digital DesignDatapath Components Figure 4.12 4-bit register with parallel load and shift right operations.

  13. Digital DesignDatapath Components Figure 4.13 A small combinational circuit maps the control inputs ld, shr, and shl to the mux select inputs s1 and s0.

  14. Digital DesignDatapath Components Figure 4.14 Truth table describing operations of a register with left/right shift and parallel load along with the mapping of the register control inputs to the internal 4x1 mux select lines (left), and a compact version of the operation table (right).

  15. Digital DesignDatapath Components Table 4.1 Four-step process for designing a multifunction register.

  16. Digital DesignDatapath Components • Step 1: Determine mux size • There are 5 operations -- load, shift left, synchronous clear, synchronous set, and maintain present value. • Step 2: Create operation table Example 4.6 Register with load, shift, and synchronous clear and set/

  17. Digital DesignDatapath Components • Step 3: Connect mux inputs • Step 4: Map control lines • s2 = clr’*set • s1 = clr’*set’*ld’*shl + clr • s0 = clr’*set’*ld + clr Example 4.6 Register with load, shift, and synchronous clear and set.

  18. Digital DesignDatapath Components A 2-bit adder, which adds two 2-bit numbers, could be designed by starting with the following truth table.

  19. Digital DesignDatapath Components Figure 4.19 Why large adders aren’t built using standard two-level combinational logic -- notice the exponential growth. How many transistors would a 32-bit adder require?

  20. Digital DesignDatapath Components 0 10 11 1 1111 1111 1111 1111 +0110 +0110 +0110 +0110 ---- ---- ---- ---- 1 01 101 10101 Figure 4.17 Adding two binary numbers by hand, column by column.

  21. Digital DesignDatapath Components Figure 4.18 Using combinational components to add two binary numbers column by column.

  22. Digital DesignDatapath Components Half-adder Truth Table Figure 4.19 Half-adder circuit (left) and block symbol (right).

  23. Digital DesignDatapath Components Full-adder Truth Table Figure 4.20 Full-adder circuit (left) and block symbol (right).

  24. Digital DesignDatapath Components Figure 4.21 4-bit adder: carry-ripple implementation with 3 full-adders and 1 half-adder (left), and block symbol (right).

  25. Digital DesignDatapath Components Figure 4.22 4-bit adder: carry-ripple implementation with 4 full-adders, with a carry-in input (left), and block symbol (right).

  26. Digital DesignDatapath Components Figure 4.23 Example of adding 0111+0001 using a 4-bit carry-ripple adder.

  27. Digital DesignDatapath Components Figure 4.24 8-bit carry-ripple adder built from two 4-bit carry-ripple adders (left); block symbol (right).

  28. Digital DesignDatapath Components Figure 4.25 8-bit DIP-switch-based adding calculator.The addition 2+3=5 is shown.

  29. Digital DesignDatapath Components Figure 4.26 8-bit DIP-switch-based adding calculator, using a register to block spurious LED outputs.

  30. Digital DesignDatapath Components Figure 4.27 Compensating scale: the dial outputs a number from 0 to 7 (000 to 111), which gets added to the sensed weight and then displayed.

  31. Digital DesignDatapath Components Figure 4.28 Combinational shifters: (a) left shifter with block symbol shown at bottom, (b) left shift or pass component, (c) left/right shift or pass component.

  32. Digital DesignDatapath Components • Example 4.9 Approximate Celsius to Fahrenheit converter. • We want to convert that temperature to Fahrenheit, again using 8 bits. The equation for converting is: • F = C*9/5 + 32 • Let’s assume that we are not concerned about accuracy, so we’ll replace the equation by a simpler one: • F = C*2 + 32 Figure 4.29 Celsius to Fahrenheit converter.

  33. Digital DesignDatapath Components Figure 4.30 Temperature averager using a right-shift-by-2 to divide by 4.

  34. Digital DesignDatapath Components Figure 4.31 8-bit barrel shifter.

  35. Digital DesignDatapath Components Figure 4.32 Equality comparator: internal design (left), block symbol (right).

  36. Digital DesignDatapath Components Figure 4.33 4-bit magnitude comparator: internal design using identical components in each stage (top), and block symbol (bottom).

  37. Digital DesignDatapath Components Figure 4.34 The “rippling” within a magnitude comparator.

  38. Digital DesignDatapath Components Figure 4.34 The “rippling” within a magnitude comparator (cont.)

  39. Digital DesignDatapath Components Figure 4.35 A combinational component to compute the minimum of two numbers: internal design using a magnitude comparator (left), and block symbol (right).

  40. Digital DesignDatapath Components Figure 4.36 4-bit up-counter block symbol. Figure 4.37 4-bit up-counter internal design. Figure 4.38 Adding 1 to a binary number requires only 2-bits per column.

  41. Digital DesignDatapath Components Figure 4.39 4-bit incrementer internal design (left) and block symbol (right).

  42. Digital DesignDatapath Components Figure 4.40 Sequencer for xy inputs of above-mirror display. Figure 4.41 Clock divider.

  43. Digital DesignDatapath Components Figure 4.42 4-bit down-counter design.

  44. Digital DesignDatapath Components Figure 4.43 4-bit up/down-counter design.

  45. Digital DesignDatapath Components Figure 4.44 Light sequencer.

  46. Digital DesignDatapath Components Figure 4.45 Internal design of a 4-bit up-counter with load.

  47. Digital DesignDatapath Components Figure 4.46 A counter setup that pulses tc every 9 cycles.

  48. Digital DesignDatapath Components Figure 4.47 Happy New Year countdown system using a down-counter.

  49. Digital DesignDatapath Components Figure 4.48 Clock divider.

  50. Digital DesignDatapath Components Figure 4.49 Measuring vehicle speeds in a highway speed measuring system.