skip instructionseTEACH presentation accessible player instructions

This eTEACH player requires that you have Flash 8 or above installed. If you do not, download the player from Adobe.

The next major heading marks the start of the presentation. Each next lower level heading thereafter marks the beginning of a slide. An audio control button that plays the audio track for the slide follows the contents and notes for each slide in the presentation. Pressing this button after the audio playback toggles pausing and resuming the playback. Before moving off the play audio button, complete listening to the audio track for the slide or pause the audio. Control + Shift + L increases volume. Control + Shift + Q decreases volume.

There is a table of contents for the presentation following the presentation. The table of contents can be used to access sections of the presentation in random order. Type Control + Shift + C to go to the table of contents.

When links to external resources are present in the presentation, a list of these resource links follows the table of contents. When following a link to a resource, you should remember which slide you were on. When you return to the main page, your screen-reader may not return you to that slide. You can use the table of contents or just click through the headings to return to the correct slide.

This presentation contains resources. Click here to proceed immediately to the resource list. A link to resources follows each slide.

If the presentation contains one or more quizzes, a button to take you to each quiz follows the slide at which the quiz is to occur. Each question in the quiz begins with a level three heading. The answer choices will be presented in a list. If your instructor has supplied a hint for the questions, it will follow the answers and is formatted as an anchor. The correct answer to the question follows the list of answers and the hint (if included). The correct answer is also formatted as an anchor.

Chapter 2 - Part 1 - PPT - Mano & Kime - 2nd Ed

Slide 1 Lecture 26 Hardwired and Microprogrammed Control

Lecture 26 Hardwired and Microprogrammed Control

Slide 2 Overview

Overview Hardwired Control One flip-flop per state Sequence register and decoder Microprogrammed control

Slide 3 Datapath and Control

Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines the enabling and sequencing of the operations The control unit receives: External control inputs Status signals The control unit sends: Control signals Control outputs Control inputs Data inputs Data outputs Datapath Control outputs Control signals Status signals Control unit

Slide 4 Control Unit Types

Control Unit Types Two distinct classes: Non-programmable or hard-wired Programmable or microprogrammable A hard-wired control units does not fetch or sequence instructions from a memory A programmable control unit has: A program counter (PC) or other sequencing register with contents that points to the next instruction to be executed An external ROM or RAM array for storing instructions and control information Decision logic for determining the sequence of operations and logic to interpret the instructions

Slide 5 Multiplier Example: Block Diagram

Multiplier Example: Block Diagram C out n n n 2 1 Counter P Zero detect Control unit G (Go) log 2 n Q o Z Parallel adder Multiplicand Register B Shift register A 0 C Shift register Q Multiplier Product OUT IN Control signals n n n 4

Slide 6 Multiplier Example: Control Signal Table

Multiplier Example: Control Signal Table Control Signals for Binary Multiplier Bloc k Dia g ram Mod u l e Mi cr oo pe ra ti on Contr o l Si gn al N a me Contr o l Exp r e ssi on Register A : A ← 0 I nitia liz e G A ← A + B Load MUL0 · Q C || A || Q sr C || A || Q Shift_dec M UL1 Register B : B ← IN Load_B LO ADB F lip-F lop C : C ← 0 C lea r _C IDLE · G + MUL1 C ← C ou t Load Register Q : Q ← IN Load_Q LO ADQ C || A || Q ← sr C || A || Q Shift_dec Cou n ter P : P ← n 1 I nitia liz e P ← P 1 Shift_dec IDLE · ←

Slide 7 Multiplier Example: ASM Chart

Multiplier Example: ASM Chart 0 1 G IDLE MUL0 0 1 Z MUL1 0 1 0 C ← 0, A ← P ← n 1 A ← A + B, C ← C out P ← P 1 C ← 0, C || A || Q ← sr C || A || Q, Q 0

Slide 8 Hardwired Control

Control Design Methods Will follow procedure from Chapter 6 Procedure specializations that use a single signal to represent each state One Flip-flop per State Flip-flop outputs as state, e. g., 0001, 0010, 0100, 1000. Map directly from ASM chart (previous lecture) Sequence Register and Decoder Sequence register with encoded states, e.g., 00, 01, 10, 11. Decoder outputs produce state signals, e.g., 0001, 0010, 0100, 1000. Hardwired Control

Slide 9 Multiplier Example: Sequencer and Decoder Design

Multiplier Example: Sequencer and Decoder Design Use sequential circuit design techniques from Chapter 4. First, define: States: IDLE, MUL0, MUL1 Input Signals: G, Z, Q0 (Q0 affects outputs, not next state) Output Signals: Initialize, LOAD, Shift_Dec, Clear_C State Transition Diagram (Use ASM on Slide 7) Output Function: Use Table on Slide 6 Second, find State Assignments (two bits required) We will use two state bits to encode the three state IDLE, MUL0, and MUL1.

Slide 10 Multiplier Example: Sequencer and Decoder Design (continued)

Assuming that state variables M1 and M0 are decoded into states, the next state part of the state table is: Multiplier Example: Sequencer and Decoder Design (continued)

Slide 11 Multiplier Example: Sequencer and Decoder Design (continued)

Multiplier Example: Sequencer and Decoder Design (continued) Finding the equations for M1 and M0 is easier due to the decoded states: M1 = MUL0 M0 = IDLE · G + MUL1 · Z The output equations using the decoded states: Initialize = IDLE · G Load = MUL0 · Q0 Clear_C = IDLE · G + MUL1 Shift_dec = MUL1

Slide 12 Multiplier Example: Sequencer and Decoder Design (continued)

Multiplier Example: Sequencer and Decoder Design (continued) Doing multiple level optimization, extract IDLE · G: START = IDLE · G M1 = MUL0 M0 = START + MUL1 · Z Initialize = START Load = MUL0 · Q0 Clear_C = START + MUL1 Shift_dec = MUL1 The resulting circuit using flip-flops, a decoder, and the above equations is shown on the next slide.

Slide 13 Multiplier Example: Sequencer and Decoder Design (continued)

Multiplier Example: Sequencer and Decoder Design (continued) IDLE MUL0 MUL1 Initialize Clear_C Shift_dec M 0 Load M 1 G Z Q 0 DECODER A0 A1 0 3 2 1 D C D C START

Slide 14 ASM Solution (from Lec. 25)

ASM Solution (from Lec. 25) D C IDLE D C MUL0 D C MUL1 Initialize Clear _C Load Shift_dec Clock Z Q 0 4 1 G 2 5 4 5 1 1 5 DEMUX D 0 D 1 A 0 EN 2 DEMUX D 0 D 1 A 0 EN START

Slide 15 Speeding Up the ASM Multiplier

Speeding Up the ASM Multiplier In processing each bit of the multiplier, the circuit visits states MUL0 and MUL1 in sequence. By redesigning the multiplier, is it possible to visit only a single state per bit processed?

Slide 16 Speeding Up Multiply (continued)

Speeding Up Multiply (continued) Examining the operations in MUL0 and MUL1: In MUL0, a conditional add of B is performed, and In MUL1, a right shift of C || A || Q in a shift register, the decrementing of P, and a test for P = 0 (on the old value of P) are all performed in MUL1 Any solution that uses one state must combine all of the operations listed into one state The operations involving P are already done in a single state, so are not a problem. The right shift, however, depends on the result of the conditional addition. So these two operations must be combined!

Slide 17 Speeding Up Multiply (continued)

Speeding Up Multiply (continued) By replacing the shift register with a combinational shifter and combining the adder and shifter, the states can be merged. The C-bit is no longer needed. The ASM chart: G IDLE MUL 00 01 10 11 0 1 Z || Q 0 A || Q sr C out || (A + 0) || Q A || Q sr C out || (A + 0) || Q A || Q sr C out || (A + B) || Q A || Q sr C out || (A+ B) || Q P P 1 0 A P n 1

Slide 18 Microprogrammed Control

Microprogrammed Control Microprogrammed Control a control unit with binary control values stored as words in memory. Microinstructions words in the control memory. Microprogram a sequence of microinstructions. Control Memory RAM or ROM memory holding the microinstructions. Writeable Control Memory RAM Memory into which microinstructions may be written Control signals Register transfers Next uaddress

Slide 19 Microprogrammed Control (continued)

Microprogrammed Control (continued) Adobe Systems

Slide 20 Summary

Summary Hardwired Control One flip-flop per state Sequence register and decoder Microprogrammed control

End of slides

Table of Contents

The object immediately following this sentence is the media player.


You need to upgrade your Flash Player.
Please download and install the latest Flash Player.
If you have the latest Flash Player and are still seeing this message, proceed.