尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
1
Unit 3
Processor and Control Unit
By
Mrs.M.Kavitha, AP/CSE
A.V.C College of Engineering
2
A Basic MIPS Implementation
• We're ready to look at an implementation of the MIPS
• Simplified to contain only:
– memory-reference instructions: lw, sw
– arithmetic-logical instructions: add, sub, and, or, slt
– control flow instructions: beq, j
• Generic Implementation:
– use the program counter (PC) to supply instruction address
– get the instruction from memory
– read registers
– use the instruction to decide exactly what to do
• All instructions use the ALU after reading the registers
Why? memory-reference? arithmetic? control flow?
5.1 Introduction
3
An Overview of the Implementation
• For most instructions: fetch instruction, fetch operands, execute,
store.
• Missing Multiplexers, and some Control lines for read and write.
4
An Overview of the Implementation
• The program counter gives the instruction address to the instruction
memory.
• After the instruction is fetched ,the register operands required by an
instruction are specified by fields of that instruction.
• Once the register operands have been fetched, they can be used to
compute a memory address( for a load and store), to compute an
arithmetic result( for an integer arithmetic-logical instruction) or a
compare(for a branch).
• If the instruction is an arithmetic-logical instruction, the result from the
ALU must be written to a register.
• If the operation is a load or store, the ALU result is used as an address to
either store a value from memory into the registers. The result from the
ALU or memory is written back into the register file.
• Branches require the use of the ALU output to determine the next
instruction address which comes either from the ALU( where the PC and
branch offset are summed) or from an adder that increments the current
PC by 4.
5
Continue
• The basic implementation of the MIPS subset including the necessary
multiplexers and control lines.
• Multiplexer (data selector) selects from among several inputs based on
the setting of its control lines. The control lines are set based on
information taken from the instruction being executed.
6
5.3 Building a Datapath
• Datapath
– Elements that process data and addresses within the CPU
• Register file, ALUs, Adders, Instruction and Data
Memories, …
We need functional units (datapath elements) for:
1. Fetching instructions and incrementing the PC.
2. Execute arithmetic-logical instructions: add, sub, and, or, and slt
3. Execute memory-reference instructions: lw, sw
4. Execute branch/jump instructions: beq, j
1. Fetching instructions and incrementing the PC.
7
Continue
2. Execute arithmetic-logical instructions: add, sub, and, or, and slt
The arithmetic logic instructions read operands from two
registers, perform an ALU operation on the contents of
the registers and write the result to the register. So
this instructions as R-type instructions.
add $t1, $t2, $t3 # t1 = t2 + t3
8
Continue
3. Execute memory-reference instructions: lw, sw
lw $t1, offset_value($t2)
sw $t1, offset_value($t2)
9
4. Execute branch/jump instructions: beq, j
beq $t1, $t2, offset
10
Creating a Single Datapath
• Sharing datapath elements between two different instruction classes ,
we have connected multiple connections to the input of an element and
used a multiplexer and control signals to select among the multiple
inputs.
11
Continue
Now we con combine all the pieces to make a simple datapath
for the MIPS architecture:
12
5.4 A Simple Control Implementation
Scheme
The ALU Control
13
Designing the Main Control Unit
14
Continue
15
Continue
16
Finalizing the Control
17
Continue
18
Continue
19
Example: Implementing Jumps
20
Why a Single-Cycle Implementation Is Not Used Today
Example: Performance of Single-Cycle Machines
Calculate cycle time assuming negligible delays except:
– memory (200ps),
– ALU and adders (100ps),
– register file access (50ps)
Which of the following implementation would be faster:
1. When every instruction operates in 1 clock cycle of fixes length.
2. When every instruction executes in 1 clock cycle using a variable-length
clock.
To compare the performance, assume the following instruction mix:
25% loads
10% stores
45% ALU instructions
15% branches, and
5% jumps
21
Continue
CPU clock cycle (option 1) = 600 ps.
CPU clock cycle (option 2) = 400 ×45% + 600×25% + 550 ×10% + 350 ×15% + 200×5%
= 447.5 ps.
Performance ratio = 34.1
5.447
600
=
45% ALU instructions
25% loads
10% stores
15% branches, and
5% jumps
memory (200ps),
ALU and adders (100ps),
register file access (50ps)
22
5.5 A Multicycle Implementation
• A single memory unit is used for both instructions and data.
• There is a single ALU, rather than an ALU and two adders.
• One or more registers are added after every major functional unit.
23
Continue
Replacing the three ALUs of the single-cycle by a single ALU means that the
single ALU must accommodate all the inputs that used to go to the three
different ALUs.
24
Continue
25
Continue
26
Continue
27
Breaking the Instruction Execution into Clock Cycles
1. Instruction fetch step
IR <= Memory[PC];
PC <= PC + 4;
28
Breaking the Instruction Execution into Clock Cycles
IR <= Memory[PC];
To do this, we need:
MemRead Assert
IRWrite  Assert
IorD  0
-------------------------------
PC <= PC + 4;
ALUSrcA  0
ALUSrcB  01
ALUOp  00 (for add)
PCSource  00
PCWrite  set
The increment of the PC and instruction memory access can occur in parallel, how?
29
Breaking the Instruction Execution into Clock Cycles
2. Instruction decode and register fetch step
– Actions that are either applicable to all instructions
– Or are not harmful
A <= Reg[IR[25:21]];
B <= Reg[IR[20:16]];
ALUOut <= PC + (sign-extend(IR[15-0] << 2 );
30
A <= Reg[IR[25:21]];
B <= Reg[IR[20:16]];
Since A and B are
overwritten on every
cycle  Done
ALUOut <= PC + (sign-
extend(IR[15-0]<<2);
This requires:
ALUSrcA  0
ALUSrcB  11
ALUOp  00 (for add)
branch target address will
be stored in ALUOut.
The register file access and computation of branch target occur in parallel.
31
Breaking the Instruction Execution into Clock Cycles
3. Execution, memory address computation, or branch completion
Memory reference:
ALUOut <= A + sign-extend(IR[15:0]);
Arithmetic-logical instruction:
ALUOut <= A op B;
Branch:
if (A == B) PC <= ALUOut;
Jump:
PC <= { PC[31:28], (IR[25:0], 2’b00) };
32
Memory reference:
ALUOut <= A + sign-extend(IR[15:0]);
ALUSrcA = 1 && ALUSrcB = 10
ALUOp = 00
Arithmetic-logical instruction:
ALUOut <= A op B;
ALUSrcA = 1 && ALUSrcB = 00
ALUOp = 10
Branch:
if (A == B) PC <= ALUOut;
ALUSrcA = 1 && ALUSrcB = 00
ALUOp = 01 (for subtraction)
PCSource = 01
PCWriteCond is asserted
Jump:
PC <= { PC[31:28], (IR[25:0],2’b00) };
PCWrite is asserted
PCSource = 10
33
Breaking the Instruction Execution into Clock Cycles
4. Memory access or R-type instruction completion step
Memory reference:
MDR <= Memory [ALUOut]; ⇒ MemRead, IorD=1
or
Memory [ALUOut] <= B; ⇒ MemWrite, IorD=1
Arithmetic-logical instruction (R-type):
Reg[IR[15:11]] <= ALUOut; ⇒ RegDst=1,RegWrite, MemtoReg=0
5. Memory read completion step
Load:
Reg[IR[20:16]] <= MDR; ⇒ RegDst=0, RegWrite, MemtoReg=1
34
Breaking the Instruction Execution into Clock Cycles
35
Continue
Summary of the steps taken to execute any instruction class
36
Defining the Control
Two different techniques to specify the control:
– Finite state machine
– Microprogramming
Example: CPI in a Multicycle CPU
Using the SPECINT2000 instruction mix, which is: 25% load, 10% store, 11%
branches, 2% jumps, and 52% ALU.
What is the CPI, assuming that each state in the multicycle CPU requires 1
clock cycle?
Answer:
The number of clock cycles for each instruction class is the following:
 Load: 5 25%
 Stores: 4 10%
 ALU instruction: 4 52%
 Branches: 3 11%
 Jumps: 3 2%
37
Example Continue
The CPI is given by the following:
is simply the instruction frequency for the instruction class i. We can therefore
substitute to obtain:
CPI = 0.25×5 + 0.10×4 + 0.52×4 + 0.11×3 + 0.02×3 = 4.12
This CPI is better than the worst-case CPI of 5.0 when all instructions take the
same number of clock cycles.
n countInstructio
n countInstructio
CPI
n countInstructio
n countInstructio
CPI
n countInstructio
CPIn countInstructio
n countInstructio
cyclesCPU clock
CPI
i
i
i
ii
ratioThe
∑
∑
×=
×
==
38
Defining the Control (Continue)
39
Defining the Control (Continue)
The complete finite state machine control
40
Defining the Control (Continue)
• Finite state machine controllers are typically implemented using a
block of combinational logic and a register to hold the current state.
41
5.6 Exceptions
• Exceptions
• Interrupts
Type of event From where? MIPS terminology
I/O device request External Interrupt
Invoke the operating system from user
program
Internal Exception
Arithmetic overflow Internal Exception
Using an undefined instruction Internal Exception
Hardware malfunction Either Exception or interrupt
42
How Exception Are Handled
To communicate the reason for an exception:
1. a status register ( called the Cause register)
2. vectored interrupts
Exception type Exception vector address (in hex)
Undefined instruction C000 0000hex
Arithmetic overflow C000 0020hex
43
How Control Checks for Exception
Assume two possible exceptions:
 Undefined instruction
 Arithmetic overflow
44
Continue
The multicycle datapath with the addition needed to implement exceptions
45
Continue
The finite state machine with the additions to handle exception detection

More Related Content

What's hot

Computer architecture register transfer languages rtl
Computer architecture register transfer languages rtlComputer architecture register transfer languages rtl
Computer architecture register transfer languages rtl
Mazin Alwaaly
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor
Mustapha Fatty
 
Flynns classification
Flynns classificationFlynns classification
Flynns classification
Yasir Khan
 
CISC & RISC Architecture
CISC & RISC Architecture CISC & RISC Architecture
CISC & RISC Architecture
Suvendu Kumar Dash
 
AMBA Ahb 2.0
AMBA Ahb 2.0AMBA Ahb 2.0
AMBA Ahb 2.0
Akhil Srivastava
 
Register organization, stack
Register organization, stackRegister organization, stack
Register organization, stack
Asif Iqbal
 
Input Output Organization
Input Output OrganizationInput Output Organization
Input Output Organization
Kamal Acharya
 
VERILOG HDL :: Blocking & NON- Blocking assignments
VERILOG HDL :: Blocking & NON- Blocking assignments VERILOG HDL :: Blocking & NON- Blocking assignments
VERILOG HDL :: Blocking & NON- Blocking assignments
Dr.YNM
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
Kamal Acharya
 
Asynchronous data transfer
Asynchronous data transferAsynchronous data transfer
Asynchronous data transfer
priya Nithya
 
Arm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furberArm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furber
asodariyabhavesh
 
HDL (hardware description language) presentation
HDL (hardware description language) presentationHDL (hardware description language) presentation
HDL (hardware description language) presentation
Digital Marketing Evangelist
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
Acad
 
Pci,usb,scsi bus
Pci,usb,scsi busPci,usb,scsi bus
Pci,usb,scsi bus
Sherwin Rodrigues
 
8086 microprocessor-architecture
8086 microprocessor-architecture8086 microprocessor-architecture
8086 microprocessor-architecture
prasadpawaskar
 
Addressing modes of 8086
Addressing modes of 8086Addressing modes of 8086
Addressing modes of 8086
saurav kumar
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formats
Mazin Alwaaly
 
Combinational circuit
Combinational circuitCombinational circuit
Combinational circuit
SIVALAKSHMIPANNEERSE
 
Arm organization and implementation
Arm organization and implementationArm organization and implementation
Arm organization and implementation
Shubham Singh
 
Unit 6 interprocessor arbitration
Unit 6 interprocessor arbitrationUnit 6 interprocessor arbitration
Unit 6 interprocessor arbitration
Dipesh Vaya
 

What's hot (20)

Computer architecture register transfer languages rtl
Computer architecture register transfer languages rtlComputer architecture register transfer languages rtl
Computer architecture register transfer languages rtl
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor
 
Flynns classification
Flynns classificationFlynns classification
Flynns classification
 
CISC & RISC Architecture
CISC & RISC Architecture CISC & RISC Architecture
CISC & RISC Architecture
 
AMBA Ahb 2.0
AMBA Ahb 2.0AMBA Ahb 2.0
AMBA Ahb 2.0
 
Register organization, stack
Register organization, stackRegister organization, stack
Register organization, stack
 
Input Output Organization
Input Output OrganizationInput Output Organization
Input Output Organization
 
VERILOG HDL :: Blocking & NON- Blocking assignments
VERILOG HDL :: Blocking & NON- Blocking assignments VERILOG HDL :: Blocking & NON- Blocking assignments
VERILOG HDL :: Blocking & NON- Blocking assignments
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
 
Asynchronous data transfer
Asynchronous data transferAsynchronous data transfer
Asynchronous data transfer
 
Arm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furberArm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furber
 
HDL (hardware description language) presentation
HDL (hardware description language) presentationHDL (hardware description language) presentation
HDL (hardware description language) presentation
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
 
Pci,usb,scsi bus
Pci,usb,scsi busPci,usb,scsi bus
Pci,usb,scsi bus
 
8086 microprocessor-architecture
8086 microprocessor-architecture8086 microprocessor-architecture
8086 microprocessor-architecture
 
Addressing modes of 8086
Addressing modes of 8086Addressing modes of 8086
Addressing modes of 8086
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formats
 
Combinational circuit
Combinational circuitCombinational circuit
Combinational circuit
 
Arm organization and implementation
Arm organization and implementationArm organization and implementation
Arm organization and implementation
 
Unit 6 interprocessor arbitration
Unit 6 interprocessor arbitrationUnit 6 interprocessor arbitration
Unit 6 interprocessor arbitration
 

Viewers also liked

Mips implementation
Mips implementationMips implementation
Mips implementation
hoang974
 
Lec18 pipeline
Lec18 pipelineLec18 pipeline
Lec18 pipeline
GRajendra
 
pipelining
pipeliningpipelining
pipelining
sudhir saurav
 
pipelining
pipeliningpipelining
pipelining
Siddique Ibrahim
 
El medio ambiente
El medio ambienteEl medio ambiente
El medio ambiente
fernando guzman vasquez
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1ตอ ต้น
 
Juegos infantiles
Juegos infantilesJuegos infantiles
Juegos infantiles
licinfantil
 
Pendekatan konsep sain (stm) dalam pembelajaran
Pendekatan konsep sain (stm) dalam pembelajaranPendekatan konsep sain (stm) dalam pembelajaran
Pendekatan konsep sain (stm) dalam pembelajaranAiyUis NuriEanty
 
Najlepsze klimatyzacje w jednym miejscu
Najlepsze klimatyzacje w jednym miejscuNajlepsze klimatyzacje w jednym miejscu
Najlepsze klimatyzacje w jednym miejscu
Strefa_Klimatyzacji
 
Control interno2
Control interno2Control interno2
Control interno2
MFmicucci
 
Doc1
Doc1Doc1
Doc1
MFmicucci
 
Red por tecnología
Red por tecnologíaRed por tecnología
Red por tecnología
Adela Peters
 
IMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIAL
IMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIALIMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIAL
IMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIAL
dayanarodriguez95
 
Tema 3 Belen
Tema 3 Belen Tema 3 Belen
Tema 3 Belen
belenpm9
 
Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1
Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1
Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1
Rosario Romani
 
Centro técnico de estudios superiores
Centro técnico de estudios superioresCentro técnico de estudios superiores
Centro técnico de estudios superiores
Ruben Atencio
 
Animales en peligro de extinción
Animales en peligro de extinciónAnimales en peligro de extinción
Animales en peligro de extinción
gaslau
 
Presentacion final Distribuidores y Vendedores
Presentacion final Distribuidores y VendedoresPresentacion final Distribuidores y Vendedores
Presentacion final Distribuidores y Vendedores
Comunity Colombia
 
Proyecto institucional educativo (pei)
Proyecto institucional educativo (pei)Proyecto institucional educativo (pei)
Proyecto institucional educativo (pei)
brenda2388
 

Viewers also liked (20)

Mips implementation
Mips implementationMips implementation
Mips implementation
 
Lec18 pipeline
Lec18 pipelineLec18 pipeline
Lec18 pipeline
 
pipelining
pipeliningpipelining
pipelining
 
pipelining
pipeliningpipelining
pipelining
 
El medio ambiente
El medio ambienteEl medio ambiente
El medio ambiente
 
Examen rec2 tr
Examen rec2 trExamen rec2 tr
Examen rec2 tr
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
 
Juegos infantiles
Juegos infantilesJuegos infantiles
Juegos infantiles
 
Pendekatan konsep sain (stm) dalam pembelajaran
Pendekatan konsep sain (stm) dalam pembelajaranPendekatan konsep sain (stm) dalam pembelajaran
Pendekatan konsep sain (stm) dalam pembelajaran
 
Najlepsze klimatyzacje w jednym miejscu
Najlepsze klimatyzacje w jednym miejscuNajlepsze klimatyzacje w jednym miejscu
Najlepsze klimatyzacje w jednym miejscu
 
Control interno2
Control interno2Control interno2
Control interno2
 
Doc1
Doc1Doc1
Doc1
 
Red por tecnología
Red por tecnologíaRed por tecnología
Red por tecnología
 
IMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIAL
IMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIALIMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIAL
IMPORTANCIA DE LOS VALORES PARA UNA CONVIVENCIA SOCIAL
 
Tema 3 Belen
Tema 3 Belen Tema 3 Belen
Tema 3 Belen
 
Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1
Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1
Edición impresa del Diario Regional La Calle del lunes 26 de agosto 2.pdf1
 
Centro técnico de estudios superiores
Centro técnico de estudios superioresCentro técnico de estudios superiores
Centro técnico de estudios superiores
 
Animales en peligro de extinción
Animales en peligro de extinciónAnimales en peligro de extinción
Animales en peligro de extinción
 
Presentacion final Distribuidores y Vendedores
Presentacion final Distribuidores y VendedoresPresentacion final Distribuidores y Vendedores
Presentacion final Distribuidores y Vendedores
 
Proyecto institucional educativo (pei)
Proyecto institucional educativo (pei)Proyecto institucional educativo (pei)
Proyecto institucional educativo (pei)
 

Similar to Basic MIPS implementation

MIPS IMPLEMENTATION.pptx
MIPS IMPLEMENTATION.pptxMIPS IMPLEMENTATION.pptx
MIPS IMPLEMENTATION.pptx
JEEVANANTHAMG6
 
CMPN301-Pipelining_V2.pptx
CMPN301-Pipelining_V2.pptxCMPN301-Pipelining_V2.pptx
CMPN301-Pipelining_V2.pptx
NadaAAmin
 
Pipelining of Processors Computer Architecture
Pipelining of  Processors Computer ArchitecturePipelining of  Processors Computer Architecture
Pipelining of Processors Computer Architecture
Haris456
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
Aiman Hud
 
CA UNIT III.pptx
CA UNIT III.pptxCA UNIT III.pptx
CA UNIT III.pptx
ssuser9dbd7e
 
Design pipeline architecture for various stage pipelines
Design pipeline architecture for various stage pipelinesDesign pipeline architecture for various stage pipelines
Design pipeline architecture for various stage pipelines
Mahmudul Hasan
 
INSTRUCTION LEVEL PARALLALISM
INSTRUCTION LEVEL PARALLALISMINSTRUCTION LEVEL PARALLALISM
INSTRUCTION LEVEL PARALLALISM
Kamran Ashraf
 
pipeline in computer architecture design
pipeline in computer architecture  designpipeline in computer architecture  design
pipeline in computer architecture design
ssuser87fa0c1
 
Pipelining in Computer System Achitecture
Pipelining in Computer System AchitecturePipelining in Computer System Achitecture
Pipelining in Computer System Achitecture
YashiUpadhyay3
 
multi cycle in microprocessor 8086 sy B-tech
multi cycle  in microprocessor 8086 sy B-techmulti cycle  in microprocessor 8086 sy B-tech
multi cycle in microprocessor 8086 sy B-tech
RushikeshThorat24
 
pipelining
pipeliningpipelining
pipelining
Sadaf Rasheed
 
Chapter 04 the processor
Chapter 04   the processorChapter 04   the processor
Chapter 04 the processor
Bảo Hoang
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
Kamal Acharya
 
Unit 2 ca- control unit
Unit 2 ca- control unitUnit 2 ca- control unit
Unit 2 ca- control unit
BBDITM LUCKNOW
 
conrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptxconrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptx
jbri1395
 
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- PerformanceLec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Hsien-Hsin Sean Lee, Ph.D.
 
Pipeline Computing by S. M. Risalat Hasan Chowdhury
Pipeline Computing by S. M. Risalat Hasan ChowdhuryPipeline Computing by S. M. Risalat Hasan Chowdhury
Pipeline Computing by S. M. Risalat Hasan Chowdhury
S. M. Risalat Hasan Chowdhury
 
Pipelining And Vector Processing
Pipelining And Vector ProcessingPipelining And Vector Processing
Pipelining And Vector Processing
TheInnocentTuber
 
Computer Organization : CPU, Memory and I/O organization
Computer Organization : CPU, Memory and I/O organizationComputer Organization : CPU, Memory and I/O organization
Computer Organization : CPU, Memory and I/O organization
AmrutaMehata
 
Compuer organizaion processing unit
Compuer organizaion processing unitCompuer organizaion processing unit
Compuer organizaion processing unit
Deepak John
 

Similar to Basic MIPS implementation (20)

MIPS IMPLEMENTATION.pptx
MIPS IMPLEMENTATION.pptxMIPS IMPLEMENTATION.pptx
MIPS IMPLEMENTATION.pptx
 
CMPN301-Pipelining_V2.pptx
CMPN301-Pipelining_V2.pptxCMPN301-Pipelining_V2.pptx
CMPN301-Pipelining_V2.pptx
 
Pipelining of Processors Computer Architecture
Pipelining of  Processors Computer ArchitecturePipelining of  Processors Computer Architecture
Pipelining of Processors Computer Architecture
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
 
CA UNIT III.pptx
CA UNIT III.pptxCA UNIT III.pptx
CA UNIT III.pptx
 
Design pipeline architecture for various stage pipelines
Design pipeline architecture for various stage pipelinesDesign pipeline architecture for various stage pipelines
Design pipeline architecture for various stage pipelines
 
INSTRUCTION LEVEL PARALLALISM
INSTRUCTION LEVEL PARALLALISMINSTRUCTION LEVEL PARALLALISM
INSTRUCTION LEVEL PARALLALISM
 
pipeline in computer architecture design
pipeline in computer architecture  designpipeline in computer architecture  design
pipeline in computer architecture design
 
Pipelining in Computer System Achitecture
Pipelining in Computer System AchitecturePipelining in Computer System Achitecture
Pipelining in Computer System Achitecture
 
multi cycle in microprocessor 8086 sy B-tech
multi cycle  in microprocessor 8086 sy B-techmulti cycle  in microprocessor 8086 sy B-tech
multi cycle in microprocessor 8086 sy B-tech
 
pipelining
pipeliningpipelining
pipelining
 
Chapter 04 the processor
Chapter 04   the processorChapter 04   the processor
Chapter 04 the processor
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 
Unit 2 ca- control unit
Unit 2 ca- control unitUnit 2 ca- control unit
Unit 2 ca- control unit
 
conrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptxconrol_Unit_part_of_computer_architecture.pptx
conrol_Unit_part_of_computer_architecture.pptx
 
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- PerformanceLec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
 
Pipeline Computing by S. M. Risalat Hasan Chowdhury
Pipeline Computing by S. M. Risalat Hasan ChowdhuryPipeline Computing by S. M. Risalat Hasan Chowdhury
Pipeline Computing by S. M. Risalat Hasan Chowdhury
 
Pipelining And Vector Processing
Pipelining And Vector ProcessingPipelining And Vector Processing
Pipelining And Vector Processing
 
Computer Organization : CPU, Memory and I/O organization
Computer Organization : CPU, Memory and I/O organizationComputer Organization : CPU, Memory and I/O organization
Computer Organization : CPU, Memory and I/O organization
 
Compuer organizaion processing unit
Compuer organizaion processing unitCompuer organizaion processing unit
Compuer organizaion processing unit
 

Recently uploaded

Kandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book Now
Kandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book NowKandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book Now
Kandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book Now
SONALI Batra $A12
 
Cricket management system ptoject report.pdf
Cricket management system ptoject report.pdfCricket management system ptoject report.pdf
Cricket management system ptoject report.pdf
Kamal Acharya
 
INTRODUCTION TO ARTIFICIAL INTELLIGENCE BASIC
INTRODUCTION TO ARTIFICIAL INTELLIGENCE BASICINTRODUCTION TO ARTIFICIAL INTELLIGENCE BASIC
INTRODUCTION TO ARTIFICIAL INTELLIGENCE BASIC
GOKULKANNANMMECLECTC
 
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
sonamrawat5631
 
Technological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdfTechnological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdf
tanujaharish2
 
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
nainakaoornoida
 
CSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdfCSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdf
Ismail Sultan
 
Lateral load-resisting systems in buildings.pptx
Lateral load-resisting systems in buildings.pptxLateral load-resisting systems in buildings.pptx
Lateral load-resisting systems in buildings.pptx
DebendraDevKhanal1
 
Covid Management System Project Report.pdf
Covid Management System Project Report.pdfCovid Management System Project Report.pdf
Covid Management System Project Report.pdf
Kamal Acharya
 
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUESAN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
drshikhapandey2022
 
College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...
College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...
College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...
Ak47
 
My Airframe Metallic Design Capability Studies..pdf
My Airframe Metallic Design Capability Studies..pdfMy Airframe Metallic Design Capability Studies..pdf
My Airframe Metallic Design Capability Studies..pdf
Geoffrey Wardle. MSc. MSc. Snr.MAIAA
 
Intuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sdeIntuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sde
ShivangMishra54
 
SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )
Tsuyoshi Horigome
 
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdfFUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
EMERSON EDUARDO RODRIGUES
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
gapboxn
 
Butterfly Valves Manufacturer (LBF Series).pdf
Butterfly Valves Manufacturer (LBF Series).pdfButterfly Valves Manufacturer (LBF Series).pdf
Butterfly Valves Manufacturer (LBF Series).pdf
Lubi Valves
 
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
IJCNCJournal
 
Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine
 
SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdfSELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
Pallavi Sharma
 

Recently uploaded (20)

Kandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book Now
Kandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book NowKandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book Now
Kandivali Call Girls ☑ +91-9967584737 ☑ Available Hot Girls Aunty Book Now
 
Cricket management system ptoject report.pdf
Cricket management system ptoject report.pdfCricket management system ptoject report.pdf
Cricket management system ptoject report.pdf
 
INTRODUCTION TO ARTIFICIAL INTELLIGENCE BASIC
INTRODUCTION TO ARTIFICIAL INTELLIGENCE BASICINTRODUCTION TO ARTIFICIAL INTELLIGENCE BASIC
INTRODUCTION TO ARTIFICIAL INTELLIGENCE BASIC
 
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
 
Technological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdfTechnological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdf
 
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
❣Independent Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai E...
 
CSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdfCSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdf
 
Lateral load-resisting systems in buildings.pptx
Lateral load-resisting systems in buildings.pptxLateral load-resisting systems in buildings.pptx
Lateral load-resisting systems in buildings.pptx
 
Covid Management System Project Report.pdf
Covid Management System Project Report.pdfCovid Management System Project Report.pdf
Covid Management System Project Report.pdf
 
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUESAN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
 
College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...
College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...
College Call Girls Kolkata 🔥 7014168258 🔥 Real Fun With Sexual Girl Available...
 
My Airframe Metallic Design Capability Studies..pdf
My Airframe Metallic Design Capability Studies..pdfMy Airframe Metallic Design Capability Studies..pdf
My Airframe Metallic Design Capability Studies..pdf
 
Intuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sdeIntuit CRAFT demonstration presentation for sde
Intuit CRAFT demonstration presentation for sde
 
SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )
 
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdfFUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
 
Butterfly Valves Manufacturer (LBF Series).pdf
Butterfly Valves Manufacturer (LBF Series).pdfButterfly Valves Manufacturer (LBF Series).pdf
Butterfly Valves Manufacturer (LBF Series).pdf
 
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
 
Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024
 
SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdfSELENIUM CONF -PALLAVI SHARMA - 2024.pdf
SELENIUM CONF -PALLAVI SHARMA - 2024.pdf
 

Basic MIPS implementation

  • 1. 1 Unit 3 Processor and Control Unit By Mrs.M.Kavitha, AP/CSE A.V.C College of Engineering
  • 2. 2 A Basic MIPS Implementation • We're ready to look at an implementation of the MIPS • Simplified to contain only: – memory-reference instructions: lw, sw – arithmetic-logical instructions: add, sub, and, or, slt – control flow instructions: beq, j • Generic Implementation: – use the program counter (PC) to supply instruction address – get the instruction from memory – read registers – use the instruction to decide exactly what to do • All instructions use the ALU after reading the registers Why? memory-reference? arithmetic? control flow? 5.1 Introduction
  • 3. 3 An Overview of the Implementation • For most instructions: fetch instruction, fetch operands, execute, store. • Missing Multiplexers, and some Control lines for read and write.
  • 4. 4 An Overview of the Implementation • The program counter gives the instruction address to the instruction memory. • After the instruction is fetched ,the register operands required by an instruction are specified by fields of that instruction. • Once the register operands have been fetched, they can be used to compute a memory address( for a load and store), to compute an arithmetic result( for an integer arithmetic-logical instruction) or a compare(for a branch). • If the instruction is an arithmetic-logical instruction, the result from the ALU must be written to a register. • If the operation is a load or store, the ALU result is used as an address to either store a value from memory into the registers. The result from the ALU or memory is written back into the register file. • Branches require the use of the ALU output to determine the next instruction address which comes either from the ALU( where the PC and branch offset are summed) or from an adder that increments the current PC by 4.
  • 5. 5 Continue • The basic implementation of the MIPS subset including the necessary multiplexers and control lines. • Multiplexer (data selector) selects from among several inputs based on the setting of its control lines. The control lines are set based on information taken from the instruction being executed.
  • 6. 6 5.3 Building a Datapath • Datapath – Elements that process data and addresses within the CPU • Register file, ALUs, Adders, Instruction and Data Memories, … We need functional units (datapath elements) for: 1. Fetching instructions and incrementing the PC. 2. Execute arithmetic-logical instructions: add, sub, and, or, and slt 3. Execute memory-reference instructions: lw, sw 4. Execute branch/jump instructions: beq, j 1. Fetching instructions and incrementing the PC.
  • 7. 7 Continue 2. Execute arithmetic-logical instructions: add, sub, and, or, and slt The arithmetic logic instructions read operands from two registers, perform an ALU operation on the contents of the registers and write the result to the register. So this instructions as R-type instructions. add $t1, $t2, $t3 # t1 = t2 + t3
  • 8. 8 Continue 3. Execute memory-reference instructions: lw, sw lw $t1, offset_value($t2) sw $t1, offset_value($t2)
  • 9. 9 4. Execute branch/jump instructions: beq, j beq $t1, $t2, offset
  • 10. 10 Creating a Single Datapath • Sharing datapath elements between two different instruction classes , we have connected multiple connections to the input of an element and used a multiplexer and control signals to select among the multiple inputs.
  • 11. 11 Continue Now we con combine all the pieces to make a simple datapath for the MIPS architecture:
  • 12. 12 5.4 A Simple Control Implementation Scheme The ALU Control
  • 13. 13 Designing the Main Control Unit
  • 20. 20 Why a Single-Cycle Implementation Is Not Used Today Example: Performance of Single-Cycle Machines Calculate cycle time assuming negligible delays except: – memory (200ps), – ALU and adders (100ps), – register file access (50ps) Which of the following implementation would be faster: 1. When every instruction operates in 1 clock cycle of fixes length. 2. When every instruction executes in 1 clock cycle using a variable-length clock. To compare the performance, assume the following instruction mix: 25% loads 10% stores 45% ALU instructions 15% branches, and 5% jumps
  • 21. 21 Continue CPU clock cycle (option 1) = 600 ps. CPU clock cycle (option 2) = 400 ×45% + 600×25% + 550 ×10% + 350 ×15% + 200×5% = 447.5 ps. Performance ratio = 34.1 5.447 600 = 45% ALU instructions 25% loads 10% stores 15% branches, and 5% jumps memory (200ps), ALU and adders (100ps), register file access (50ps)
  • 22. 22 5.5 A Multicycle Implementation • A single memory unit is used for both instructions and data. • There is a single ALU, rather than an ALU and two adders. • One or more registers are added after every major functional unit.
  • 23. 23 Continue Replacing the three ALUs of the single-cycle by a single ALU means that the single ALU must accommodate all the inputs that used to go to the three different ALUs.
  • 27. 27 Breaking the Instruction Execution into Clock Cycles 1. Instruction fetch step IR <= Memory[PC]; PC <= PC + 4;
  • 28. 28 Breaking the Instruction Execution into Clock Cycles IR <= Memory[PC]; To do this, we need: MemRead Assert IRWrite  Assert IorD  0 ------------------------------- PC <= PC + 4; ALUSrcA  0 ALUSrcB  01 ALUOp  00 (for add) PCSource  00 PCWrite  set The increment of the PC and instruction memory access can occur in parallel, how?
  • 29. 29 Breaking the Instruction Execution into Clock Cycles 2. Instruction decode and register fetch step – Actions that are either applicable to all instructions – Or are not harmful A <= Reg[IR[25:21]]; B <= Reg[IR[20:16]]; ALUOut <= PC + (sign-extend(IR[15-0] << 2 );
  • 30. 30 A <= Reg[IR[25:21]]; B <= Reg[IR[20:16]]; Since A and B are overwritten on every cycle  Done ALUOut <= PC + (sign- extend(IR[15-0]<<2); This requires: ALUSrcA  0 ALUSrcB  11 ALUOp  00 (for add) branch target address will be stored in ALUOut. The register file access and computation of branch target occur in parallel.
  • 31. 31 Breaking the Instruction Execution into Clock Cycles 3. Execution, memory address computation, or branch completion Memory reference: ALUOut <= A + sign-extend(IR[15:0]); Arithmetic-logical instruction: ALUOut <= A op B; Branch: if (A == B) PC <= ALUOut; Jump: PC <= { PC[31:28], (IR[25:0], 2’b00) };
  • 32. 32 Memory reference: ALUOut <= A + sign-extend(IR[15:0]); ALUSrcA = 1 && ALUSrcB = 10 ALUOp = 00 Arithmetic-logical instruction: ALUOut <= A op B; ALUSrcA = 1 && ALUSrcB = 00 ALUOp = 10 Branch: if (A == B) PC <= ALUOut; ALUSrcA = 1 && ALUSrcB = 00 ALUOp = 01 (for subtraction) PCSource = 01 PCWriteCond is asserted Jump: PC <= { PC[31:28], (IR[25:0],2’b00) }; PCWrite is asserted PCSource = 10
  • 33. 33 Breaking the Instruction Execution into Clock Cycles 4. Memory access or R-type instruction completion step Memory reference: MDR <= Memory [ALUOut]; ⇒ MemRead, IorD=1 or Memory [ALUOut] <= B; ⇒ MemWrite, IorD=1 Arithmetic-logical instruction (R-type): Reg[IR[15:11]] <= ALUOut; ⇒ RegDst=1,RegWrite, MemtoReg=0 5. Memory read completion step Load: Reg[IR[20:16]] <= MDR; ⇒ RegDst=0, RegWrite, MemtoReg=1
  • 34. 34 Breaking the Instruction Execution into Clock Cycles
  • 35. 35 Continue Summary of the steps taken to execute any instruction class
  • 36. 36 Defining the Control Two different techniques to specify the control: – Finite state machine – Microprogramming Example: CPI in a Multicycle CPU Using the SPECINT2000 instruction mix, which is: 25% load, 10% store, 11% branches, 2% jumps, and 52% ALU. What is the CPI, assuming that each state in the multicycle CPU requires 1 clock cycle? Answer: The number of clock cycles for each instruction class is the following:  Load: 5 25%  Stores: 4 10%  ALU instruction: 4 52%  Branches: 3 11%  Jumps: 3 2%
  • 37. 37 Example Continue The CPI is given by the following: is simply the instruction frequency for the instruction class i. We can therefore substitute to obtain: CPI = 0.25×5 + 0.10×4 + 0.52×4 + 0.11×3 + 0.02×3 = 4.12 This CPI is better than the worst-case CPI of 5.0 when all instructions take the same number of clock cycles. n countInstructio n countInstructio CPI n countInstructio n countInstructio CPI n countInstructio CPIn countInstructio n countInstructio cyclesCPU clock CPI i i i ii ratioThe ∑ ∑ ×= × ==
  • 39. 39 Defining the Control (Continue) The complete finite state machine control
  • 40. 40 Defining the Control (Continue) • Finite state machine controllers are typically implemented using a block of combinational logic and a register to hold the current state.
  • 41. 41 5.6 Exceptions • Exceptions • Interrupts Type of event From where? MIPS terminology I/O device request External Interrupt Invoke the operating system from user program Internal Exception Arithmetic overflow Internal Exception Using an undefined instruction Internal Exception Hardware malfunction Either Exception or interrupt
  • 42. 42 How Exception Are Handled To communicate the reason for an exception: 1. a status register ( called the Cause register) 2. vectored interrupts Exception type Exception vector address (in hex) Undefined instruction C000 0000hex Arithmetic overflow C000 0020hex
  • 43. 43 How Control Checks for Exception Assume two possible exceptions:  Undefined instruction  Arithmetic overflow
  • 44. 44 Continue The multicycle datapath with the addition needed to implement exceptions
  • 45. 45 Continue The finite state machine with the additions to handle exception detection
  翻译: