La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2011-2 Departamento de Ing. Electrónica Circuitos Digitales II Universidad.

Presentaciones similares


Presentación del tema: "Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2011-2 Departamento de Ing. Electrónica Circuitos Digitales II Universidad."— Transcripción de la presentación:

1 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Circuitos Digitales II The General Computer Architecture The Multicycle Design Semana No.10 Semestre Prof. Eugenio Duque Prof. Gustavo Patiño (en comisión) Departamento de Ingeniería Electrónica Facultad de Ingeniería

2 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Data/Control Signal Flow Examples The following diagrams illustrate the flow of control signals and data in some example MIPS instructions in the single cycle implementation. The single cycle implementation is just a stepping stone to the final MIPS design, but this simpler example has all the features of the more complex final design in terms of data routing and the way in which the control signals determine the specific operation for each given instruction. Note the data flow in these instructions.

3 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Start of R-Type Instruction

4 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Next Step of R-Type Instruction

5 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Third Step of R-Type Instruction

6 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Completion of R-Type Instruction

7 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Load Instruction

8 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Branch Instruction

9 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Jump Instruction Circuitry Added

10 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Jump Instruction Flow

11 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Drawbacks of the Single-Cycle Implementation We have now completed design of the basic MIPS CPU. Although a good basic design, it has a serious drawback: The processor is designed so that all instructions complete in one clock cycle. While this assures that there is sufficient time to complete any instruction, it also means that one clock period must be long enough to accommodate the longest and most complicated instruction. Thus, ALL instructions take as long as the longest instruction. Since many (most!) instructions in the MIPS architecture take less time to execute than the longest instructions (which are usually the lw memory reference instructions), this means that we are slowing execution of the CPU a large part of the time to accommodate instructions that occur substantially less frequently.

12 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Comparative Instruction Timing

13 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia MultiCycle Implementation A solution to the single-cycle problem is stated as follows: Each instruction has several phases, such as fetch/decode, register selection, ALU processing, etc. Instead of using a single clock cycle for the whole instruction, run the clock much faster, and have a single clock cycle for each of the elements or phases of the instruction process. Many instructions take fewer phases (for example, jump, branch [the fewest phases], register-register or store instructions), so these instructions execute much faster. As most instructions execute faster than the longest instructions (such as lw), the average instruction time will be reduced substantially.

14 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia MIPS Multicycle Concept Split the processing into five processing segments. Run the clock much faster (essentially 5X faster!). Do one instruction segment per clock cycle. PC updates, branches and jumps take 3 processing segments since they are simpler; they run much faster. Register-register instructions do not require memory access. They take four instruction segments and finish in about 30% more time than jumps and branches. Only load memory-access instructions take a full five processing segments (store takes only four), but do not slow down the other instructions to their speed.

15 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Multicycle Implementation

16 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Times Instruction Cycle Times

17 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Multicycle Advantages For most instructions, it is saved 20-40% in clock cycles and the processor is much faster, as mentioned earlier. Since different parts of the circuit are active only for one cycle at a time, we can use less circuitry because parts of the computer can be reused in different cycles. The CPU now needs only one ALU, since it can do the PC update functions prior to the ALU processing. Since we access memory for data and instructions in different clock cycles, we only need one path to memory.

18 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Major Impediment to Multicycle Implementation The multicycle processor takes up to 5 clock cycles to complete an instruction. Each time the clock ticks, part of the instruction is completed, not all of it. That means that at the end of each clock cycle, we have partial instruction results, but no place to store them! A first concern is therefore a way to store intermediate data as the instruction winds its way through the various segments of processing.

19 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Intermediate Results Storage Requirements

20 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia First-Pass Register Placement

21 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Preliminary Multicycle Design Without Control The preliminary processing design is more compact

22 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Multicycle with ALU Control and PC

23 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Completed Multicycle Design

24 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Multicycle Summary We have redesigned the MIPS CPU to accommodate a 5-segment instruction partition with each segment taking one clock cycle. In doing so, instruction execution time was decreased ~ 30-40% and greater efficiency was obtained by reducing the circuitry. In the next lecture, we will take the final step in the MIPS design and complete the R2000 architecture.

25 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Circuitos Digitales II The General Computer Architecture The Pipeline Design Semana No.10 Semestre Prof. Eugenio Duque Prof. Gustavo Patiño (en comisión de estudios) Departamento de Ingeniería Electrónica Facultad de Ingeniería

26 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Some Unsolved Questions When we defined multicycle, did we also define pipeline ? Multicycle is pipeline ? Or, pipeline is multicycle ? So, what does translate pipeline ? What conditions must be met by the inter-stage registers in order to guaranty pipeline ? What is the relation between pipeline and parallelism? Currently, which are the trends in the pipeline paradigm ?

27 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia The Pipelined MIPS Processor

28 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Pipeline Architecture

29 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Sequential Versus Pipelined Execution

30 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Speed Advantage of the Pipeline

31 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Pipeline Stages

32 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Overlapped Pipeline Execution

33 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Single-Cycle Datapath

34 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Single-Cycle Datapath with Pipeline Registers

35 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Instruction Process Through Pipeline (1)

36 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Instruction Process Through Pipeline (2)

37 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Instruction Process Through Pipeline (3)

38 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Instruction Process Through Pipeline (4)

39 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Instruction Process Through Pipeline (5)

40 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Adding Control

41 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Full Pipeline Design with Control Lines

42 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Example: The Pipeline in Action

43 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

44 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

45 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

46 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

47 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

48 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

49 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

50 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

51 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

52 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

53 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia

54 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Pipeline Processor Operation Summary

55 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Problems to be analyzed in the next class Hazards Data Hazard Control Hazard Solutions Forwarding Stalls Problems with Branch

56 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Hazards

57 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Hazards (…cont)

58 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Data Hazard in the Pipeline

59 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Control Hazard in the Pipeline

60 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Forwarding as a Solution to Data Hazards

61 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Forwarding Unit in the Pipeline

62 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Forwarding Unit Operation

63 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Stalls

64 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Result of Stall Approach

65 Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia Result of Stall Approach (…cont)


Descargar ppt "Departamento de Ing. Electrónica Circuitos Digitales II Universidad de Antioquia 2011-2 Departamento de Ing. Electrónica Circuitos Digitales II Universidad."

Presentaciones similares


Anuncios Google