SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
Carc 05.03
alessandro.bogliolo@uniurb.it
05. CPU
05.03. Pipeline hazards
• Structural hazards
• Data hazards
• Control-flow hazards
• Multi-cycle instructions
• CPU-time estimate
Computer Architecture
alessandro.bogliolo@uniurb.it
Carc 05.03
alessandro.bogliolo@uniurb.it
Structural hazards (problem)
• Von-Neumann architecture: single memory
Load Mem Reg ALU Mem Reg
Instr1 Mem Reg ALU Mem Reg
Instr2 Mem Reg ALU Mem Reg
Instr3 Mem Reg ALU Mem Reg
Instr4 Mem Reg ALU Mem Reg
Load Mem Reg ALU Mem Reg
Instr1 Mem Reg ALU Mem Reg
Instr2 Mem Reg ALU Mem Reg
Stall --- --- --- --- ---
Instr3 Mem Reg ALU Mem Reg
Instr4 Mem Reg ALU Mem Reg
2 clock cycles per memory access
If 40% of instructions are memory accesses, avgCPI = 1.4
Carc 05.03
alessandro.bogliolo@uniurb.it
Structural hazards (solution)
• Harvard architecture:
separate memories for data (DM) and instructions (IM)
Memory accesses cause no structural hazards
Load IM Reg ALU DM Reg
Instr1 IM Reg ALU DM Reg
Instr2 IM Reg ALU DM Reg
Instr3 IM Reg ALU DM Reg
Instr4 IM Reg ALU DM Reg
Carc 05.03
alessandro.bogliolo@uniurb.it
Data hazards (problem)
• Define and use / Read after write
ADD r1 r2 r3 IM reg ALU DM reg
SUB r4 r5 r1 IM reg ALU DM reg
AND r6 r1 r7 IM reg ALU DM reg
OR r8 r1 r9 IM reg ALU DM reg
ZOR r10 r1 r11 IM reg ALU DM reg
ADD r1 r2 r3 IM reg ALU DM reg
SUB r4 r5 r1 IM --- --- --- reg ALU DM reg
AND r6 r1 r7 IM reg ALU DM reg
OR r8 r1 r9 IM reg ALU DM reg
ZOR r10 r1 r11 IM reg ALU DM reg
Carc 05.03
alessandro.bogliolo@uniurb.it
Data hazards (solution 1)
• Data forwarding from MA/WB to ALU
ADD r1 r2 r3 IM reg ALU DM reg
SUB r4 r5 r1 IM reg ALU DM reg
IR
PC1
WB
ME
EX
A
B
IMM
RW
ID/EX
WB
ME
ALU
out
B
RW
EX/MA
WB
ALU
out
MEM
Dat
RW
MA/WBIF/ID
Instr.
Mem.
PC
Register
file
Alu Data
Mem.
WB
logic
CU
Carc 05.03
alessandro.bogliolo@uniurb.it
Data hazards (solution 1)
• Data forwarding from EX/MA to ALU
ADD r1 r2 r3 IM reg ALU DM reg
SUB r4 r5 r1 IM reg ALU DM reg
AND r6 r1 r7 IM reg ALU DM reg
IR
PC1
WB
ME
EX
A
B
IMM
RW
ID/EX
WB
ME
ALU
out
B
RW
EX/MA
WB
ALU
out
MEM
Dat
RW
MA/WBIF/ID
Instr.
Mem.
PC
Register
file
Alu Data
Mem.
WB
logic
CU
Carc 05.03
alessandro.bogliolo@uniurb.it
ADD r1 r2 r3 IM reg ALU DM reg
SUB r4 r5 r1 IM reg ALU DM reg
AND r6 r1 r7 IM reg ALU DM reg
OR r8 r1 r9 IM reg ALU DM reg
Data hazards (solution 3)
• Double-rate registers
IR
PC1
WB
ME
EX
A
B
IMM
RW
ID/EX
WB
ME
ALU
out
B
RW
EX/MA
WB
ALU
out
MEM
Dat
RW
MA/WBIF/ID
Instr.
Mem.
PC
Register
file
Alu Data
Mem.
WB
logic
CU
Carc 05.03
alessandro.bogliolo@uniurb.it
CBranch IF ID EX MEM WB
+1 IF (abort)
Target --- --- IF ID EX MEM WB
target+1 IF ID EX MEM WB
Control-flow hazards (problem)
• Assumptions:
• Branch recognized during ID
• Condition tested during EX
• PC updated during MA
UCBranch IF ID EX MEM WB
+1 IF (abort)
Target --- IF ID EX MEM WB
target+1 IF ID EX MEM WB
Carc 05.03
alessandro.bogliolo@uniurb.it
CBranch IF ID EX MEM WB
+1 IF (abort)
Target --- IF ID EX MEM WB
target+1 IF ID EX MEM WB
Control-flow hazards (solution 1)
• Assumptions:
• Branch recognized during ID
• Target computed during ID (PC updated soon)
• Condition tested during EX (PC updated soon)
UCBranch IF ID EX MEM WB
+1 IF (abort)
Target IF ID EX MEM WB
target+1 IF ID EX MEM WB
Carc 05.03
alessandro.bogliolo@uniurb.it
CBranch IF ID EX MEM WB
+1 IF (abort)
Target IF ID EX MEM WB
target+1 IF ID EX MEM WB
Control-flow hazards (solution 2)
• Assumptions:
• Branch recognized during ID
• Target computed during ID (PC updated soon)
• Condition tested during ID (PC updated soon)
UCBranch IF ID EX MEM WB
+1 IF (abort)
Target IF ID EX MEM WB
target+1 IF ID EX MEM WB
Carc 05.03
alessandro.bogliolo@uniurb.it
UTBranch IF ID EX MEM WB
+1 IF ID EX MEM WB
+2 IF ID EX MEM WB
Control-flow hazards (solution 3)
• Predict untaken:
• If the branch is not taken, the fetched instruction is not
aborted
TBranch IF ID EX MEM WB
+1 IF (abort)
Target IF ID EX MEM WB
target+1 IF ID EX MEM WB
Carc 05.03
alessandro.bogliolo@uniurb.it
UTBranch IF ID EX MEM WB
+1(delay) IF ID EX MEM WB
+2 IF ID EX MEM WB
Control-flow hazards (solution 4)
• Delayed branch:
• The instruction that follows a branch is always executed,
regardless of the condition of the branch
TBranch IF ID EX MEM WB
+1(delay) IF ID EX MEM WB
Target IF ID EX MEM WB
target+1 IF ID EX MEM WB
Carc 05.03
alessandro.bogliolo@uniurb.it
Multiple-execution cycles (1)
• Different instructions may use different execution
units
• The execution phase of an instruction may require
more than 1 clock cycles
• Instructions with multiple-execution cycles gives rise
to data and resource conflicts
ADDD F4, F0, F2 IF ID EX EX MA WB
ADDD F10, F6, F8 IF ID -- EX EX MA WB
ADDD F14, F10, F12 IF -- ID -- EX EX MA WB
Carc 05.03
alessandro.bogliolo@uniurb.it
Multiple-execution cycles (2)
• Pipelined execution units
• Replicated execution units
ADDD F4, F0, F2 IF ID EX EX MA WB
ADDD F10, F6, F8 IF ID EX EX MA WB
ADDD F14, F10, F12 IF ID -- EX EX MA WB
Carc 05.03
alessandro.bogliolo@uniurb.it
CPU specification
• Functional specification
• Instruction set
• Interface
• Pin-out
• Electrical signals
• Timing diagrams
• Performance
• Tclk
• CPI
• Latency
• Repetition time
Carc 05.03
alessandro.bogliolo@uniurb.it
Performance estimation
stallsavg NICCPICPUC 
IC
ICCPI
CPI
i
ISi
i
avg


stallsi
ISi
i NICCPICPUC  
(1)
(2)
(3)
Latency
Repetition time
ICCPICPUC
CPI
avg
avg

1

Contenu connexe

Tendances

pipeline and pipeline hazards
pipeline and pipeline hazards pipeline and pipeline hazards
pipeline and pipeline hazards Bharti Khemani
 
pipelining and hazards occure in assembly language.
pipelining and hazards occure in assembly language.pipelining and hazards occure in assembly language.
pipelining and hazards occure in assembly language.Zohaib Arshid
 
Chapter 04 the processor
Chapter 04   the processorChapter 04   the processor
Chapter 04 the processorBảo Hoang
 
Pipelining powerpoint presentation
Pipelining powerpoint presentationPipelining powerpoint presentation
Pipelining powerpoint presentationbhavanadonthi
 
Pipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptPipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptmali yogesh kumar
 
Pipelining , structural hazards
Pipelining , structural hazardsPipelining , structural hazards
Pipelining , structural hazardsMunaam Munawar
 
Pipelinig hazardous
Pipelinig hazardousPipelinig hazardous
Pipelinig hazardousjasscheema
 
Pipeline and data hazard
Pipeline and data hazardPipeline and data hazard
Pipeline and data hazardWaed Shagareen
 
Pipeline processing - Computer Architecture
Pipeline processing - Computer Architecture Pipeline processing - Computer Architecture
Pipeline processing - Computer Architecture S. Hasnain Raza
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInstruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInteX Research Lab
 
Pipelining
PipeliningPipelining
PipeliningAmin Omi
 
Pipelining
PipeliningPipelining
PipeliningAJAL A J
 
Instruction pipelining
Instruction pipeliningInstruction pipelining
Instruction pipeliningTech_MX
 

Tendances (20)

Pipelining1
Pipelining1Pipelining1
Pipelining1
 
3 Pipelining
3 Pipelining3 Pipelining
3 Pipelining
 
pipeline and pipeline hazards
pipeline and pipeline hazards pipeline and pipeline hazards
pipeline and pipeline hazards
 
pipelining and hazards occure in assembly language.
pipelining and hazards occure in assembly language.pipelining and hazards occure in assembly language.
pipelining and hazards occure in assembly language.
 
Chapter 04 the processor
Chapter 04   the processorChapter 04   the processor
Chapter 04 the processor
 
Pipelining powerpoint presentation
Pipelining powerpoint presentationPipelining powerpoint presentation
Pipelining powerpoint presentation
 
Pipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptPipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture ppt
 
Design a pipeline
Design a pipelineDesign a pipeline
Design a pipeline
 
Pipelining , structural hazards
Pipelining , structural hazardsPipelining , structural hazards
Pipelining , structural hazards
 
Pipelinig hazardous
Pipelinig hazardousPipelinig hazardous
Pipelinig hazardous
 
Pipeline and data hazard
Pipeline and data hazardPipeline and data hazard
Pipeline and data hazard
 
Pipelining
PipeliningPipelining
Pipelining
 
Pipeline processing - Computer Architecture
Pipeline processing - Computer Architecture Pipeline processing - Computer Architecture
Pipeline processing - Computer Architecture
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInstruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
 
Pipelining
PipeliningPipelining
Pipelining
 
Presentation on risc pipeline
Presentation on risc pipelinePresentation on risc pipeline
Presentation on risc pipeline
 
Data Hazard and Solution for Data Hazard
Data Hazard and Solution for Data HazardData Hazard and Solution for Data Hazard
Data Hazard and Solution for Data Hazard
 
Pipelining
PipeliningPipelining
Pipelining
 
Instruction pipelining
Instruction pipeliningInstruction pipelining
Instruction pipelining
 
Piplining
PipliningPiplining
Piplining
 

En vedette

CodeMOOC2 - Dall'idea alla specifica
CodeMOOC2 - Dall'idea alla specificaCodeMOOC2 - Dall'idea alla specifica
CodeMOOC2 - Dall'idea alla specificaAlessandro Bogliolo
 
CArcMOOC 05.02 - Reference architecture
CArcMOOC 05.02 - Reference architectureCArcMOOC 05.02 - Reference architecture
CArcMOOC 05.02 - Reference architectureAlessandro Bogliolo
 
CArcMOOC 04.02 - Instruction Set Architecture
CArcMOOC 04.02 - Instruction Set ArchitectureCArcMOOC 04.02 - Instruction Set Architecture
CArcMOOC 04.02 - Instruction Set ArchitectureAlessandro Bogliolo
 
Coding: dai diagrammi di flusso al pipecoding
Coding: dai diagrammi di flusso al pipecodingCoding: dai diagrammi di flusso al pipecoding
Coding: dai diagrammi di flusso al pipecodingAlessandro Bogliolo
 
CArcMOOC 02.01 - Digital encodings
CArcMOOC 02.01 - Digital encodingsCArcMOOC 02.01 - Digital encodings
CArcMOOC 02.01 - Digital encodingsAlessandro Bogliolo
 
CArcMOOC 01.01 - Automated information processing
CArcMOOC 01.01 - Automated information processingCArcMOOC 01.01 - Automated information processing
CArcMOOC 01.01 - Automated information processingAlessandro Bogliolo
 
Portfolio_grafisch_Caboor_Kevin*
Portfolio_grafisch_Caboor_Kevin*Portfolio_grafisch_Caboor_Kevin*
Portfolio_grafisch_Caboor_Kevin*Kevin Caboor
 
Sustainable engineering - Measures for Sustainability
Sustainable engineering - Measures for SustainabilitySustainable engineering - Measures for Sustainability
Sustainable engineering - Measures for SustainabilityGauri Nair
 
Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...
Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...
Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...AboutYouGmbH
 
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015AboutYouGmbH
 
CArcMOOC 01.02 - Brief history of computing
CArcMOOC 01.02 - Brief history of computingCArcMOOC 01.02 - Brief history of computing
CArcMOOC 01.02 - Brief history of computingAlessandro Bogliolo
 
CArcMOOC 03.03 - Sequential circuits
CArcMOOC 03.03 - Sequential circuitsCArcMOOC 03.03 - Sequential circuits
CArcMOOC 03.03 - Sequential circuitsAlessandro Bogliolo
 
Hazard communication
Hazard communicationHazard communication
Hazard communicationwcmc
 
CArcMOOC 03.04 - Gate-level design
CArcMOOC 03.04 - Gate-level designCArcMOOC 03.04 - Gate-level design
CArcMOOC 03.04 - Gate-level designAlessandro Bogliolo
 
CArcMOOC 02.02 - Encodings of numerical sets
CArcMOOC 02.02 - Encodings of numerical setsCArcMOOC 02.02 - Encodings of numerical sets
CArcMOOC 02.02 - Encodings of numerical setsAlessandro Bogliolo
 

En vedette (20)

CodeMOOC2 - Cos'è un'App
CodeMOOC2 - Cos'è un'AppCodeMOOC2 - Cos'è un'App
CodeMOOC2 - Cos'è un'App
 
CodeMOOC2 - Dall'idea alla specifica
CodeMOOC2 - Dall'idea alla specificaCodeMOOC2 - Dall'idea alla specifica
CodeMOOC2 - Dall'idea alla specifica
 
CArcMOOC 05.02 - Reference architecture
CArcMOOC 05.02 - Reference architectureCArcMOOC 05.02 - Reference architecture
CArcMOOC 05.02 - Reference architecture
 
Pixel art
Pixel artPixel art
Pixel art
 
CArcMOOC 04.02 - Instruction Set Architecture
CArcMOOC 04.02 - Instruction Set ArchitectureCArcMOOC 04.02 - Instruction Set Architecture
CArcMOOC 04.02 - Instruction Set Architecture
 
Coding: dai diagrammi di flusso al pipecoding
Coding: dai diagrammi di flusso al pipecodingCoding: dai diagrammi di flusso al pipecoding
Coding: dai diagrammi di flusso al pipecoding
 
Dresscode
DresscodeDresscode
Dresscode
 
CArcMOOC 02.01 - Digital encodings
CArcMOOC 02.01 - Digital encodingsCArcMOOC 02.01 - Digital encodings
CArcMOOC 02.01 - Digital encodings
 
CArcMOOC 01.01 - Automated information processing
CArcMOOC 01.01 - Automated information processingCArcMOOC 01.01 - Automated information processing
CArcMOOC 01.01 - Automated information processing
 
Flipping your classroom
Flipping your classroomFlipping your classroom
Flipping your classroom
 
Portfolio_grafisch_Caboor_Kevin*
Portfolio_grafisch_Caboor_Kevin*Portfolio_grafisch_Caboor_Kevin*
Portfolio_grafisch_Caboor_Kevin*
 
Sustainable engineering - Measures for Sustainability
Sustainable engineering - Measures for SustainabilitySustainable engineering - Measures for Sustainability
Sustainable engineering - Measures for Sustainability
 
Presentation
PresentationPresentation
Presentation
 
Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...
Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...
Uwe Friedrichsen - CRDT und mehr - über extreme Verfügbarkeit und selbstheile...
 
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
Rolando Santamaría Masó - Simplicity meets scalability - code.talks 2015
 
CArcMOOC 01.02 - Brief history of computing
CArcMOOC 01.02 - Brief history of computingCArcMOOC 01.02 - Brief history of computing
CArcMOOC 01.02 - Brief history of computing
 
CArcMOOC 03.03 - Sequential circuits
CArcMOOC 03.03 - Sequential circuitsCArcMOOC 03.03 - Sequential circuits
CArcMOOC 03.03 - Sequential circuits
 
Hazard communication
Hazard communicationHazard communication
Hazard communication
 
CArcMOOC 03.04 - Gate-level design
CArcMOOC 03.04 - Gate-level designCArcMOOC 03.04 - Gate-level design
CArcMOOC 03.04 - Gate-level design
 
CArcMOOC 02.02 - Encodings of numerical sets
CArcMOOC 02.02 - Encodings of numerical setsCArcMOOC 02.02 - Encodings of numerical sets
CArcMOOC 02.02 - Encodings of numerical sets
 

Similaire à CArcMOOC 05.03 - Pipeline hazards

pipehhhhhhhhhhhhhbbbbbbbbblinehazards.ppt
pipehhhhhhhhhhhhhbbbbbbbbblinehazards.pptpipehhhhhhhhhhhhhbbbbbbbbblinehazards.ppt
pipehhhhhhhhhhhhhbbbbbbbbblinehazards.pptAkkiDongre
 
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIWLec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIWHsien-Hsin Sean Lee, Ph.D.
 
從封測產業趨勢談設備需求與機會_ part2
從封測產業趨勢談設備需求與機會_ part2從封測產業趨勢談設備需求與機會_ part2
從封測產業趨勢談設備需求與機會_ part2CHENHuiMei
 
Meltdown & Spectre attacks
Meltdown & Spectre attacksMeltdown & Spectre attacks
Meltdown & Spectre attacksMarian Marinov
 
FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...
FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...
FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...PROFIBUS and PROFINET InternationaI - PI UK
 
Topic2a ss pipelines
Topic2a ss pipelinesTopic2a ss pipelines
Topic2a ss pipelinesturki_09
 
Master Serial Killer - DEF CON 22 - ICS Village
Master Serial Killer - DEF CON 22 - ICS VillageMaster Serial Killer - DEF CON 22 - ICS Village
Master Serial Killer - DEF CON 22 - ICS VillageChris Sistrunk
 
Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...
Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...
Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...Ardavan Pedram
 
AAME ARM Techcon2013 002v02 Advanced Features
AAME ARM Techcon2013 002v02 Advanced FeaturesAAME ARM Techcon2013 002v02 Advanced Features
AAME ARM Techcon2013 002v02 Advanced FeaturesAnh Dung NGUYEN
 
slides_tese_v3_paraAnexoTesis
slides_tese_v3_paraAnexoTesisslides_tese_v3_paraAnexoTesis
slides_tese_v3_paraAnexoTesisJorge Tonfat
 
CArcMOOC 07.02 - Non-volatile memory devices
CArcMOOC 07.02 - Non-volatile memory devicesCArcMOOC 07.02 - Non-volatile memory devices
CArcMOOC 07.02 - Non-volatile memory devicesAlessandro Bogliolo
 
High Performance Computer Architecture
High Performance Computer ArchitectureHigh Performance Computer Architecture
High Performance Computer ArchitectureSubhasis Dash
 
CPU Pipelining and Hazards - An Introduction
CPU Pipelining and Hazards - An IntroductionCPU Pipelining and Hazards - An Introduction
CPU Pipelining and Hazards - An IntroductionDilum Bandara
 
Library Characterization Flow
Library Characterization FlowLibrary Characterization Flow
Library Characterization FlowSatish Grandhi
 
Electronic circuit design and component selection.pptx
Electronic circuit design and component selection.pptxElectronic circuit design and component selection.pptx
Electronic circuit design and component selection.pptxmaheshmp16
 
Rf technology 5-8-2011-final-revised
Rf technology 5-8-2011-final-revisedRf technology 5-8-2011-final-revised
Rf technology 5-8-2011-final-revisedTom Terlizzi
 
Tools for Practical Attacks on Analog-to-Digital Conversion
Tools for Practical Attacks on Analog-to-Digital ConversionTools for Practical Attacks on Analog-to-Digital Conversion
Tools for Practical Attacks on Analog-to-Digital ConversionAlexander Bolshev
 

Similaire à CArcMOOC 05.03 - Pipeline hazards (20)

pipehhhhhhhhhhhhhbbbbbbbbblinehazards.ppt
pipehhhhhhhhhhhhhbbbbbbbbblinehazards.pptpipehhhhhhhhhhhhhbbbbbbbbblinehazards.ppt
pipehhhhhhhhhhhhhbbbbbbbbblinehazards.ppt
 
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIWLec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
 
從封測產業趨勢談設備需求與機會_ part2
從封測產業趨勢談設備需求與機會_ part2從封測產業趨勢談設備需求與機會_ part2
從封測產業趨勢談設備需求與機會_ part2
 
Meltdown & Spectre attacks
Meltdown & Spectre attacksMeltdown & Spectre attacks
Meltdown & Spectre attacks
 
presentation
presentationpresentation
presentation
 
FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...
FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...
FPGA-based error generator for PROFIBUS DP - Jean-Marc Capron (Yncréa Hauts-d...
 
Topic2a ss pipelines
Topic2a ss pipelinesTopic2a ss pipelines
Topic2a ss pipelines
 
PIM_Centra_Session_Final Nov 28.pdf
PIM_Centra_Session_Final Nov 28.pdfPIM_Centra_Session_Final Nov 28.pdf
PIM_Centra_Session_Final Nov 28.pdf
 
Master Serial Killer - DEF CON 22 - ICS Village
Master Serial Killer - DEF CON 22 - ICS VillageMaster Serial Killer - DEF CON 22 - ICS Village
Master Serial Killer - DEF CON 22 - ICS Village
 
Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...
Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...
Custom Computer Engine for Optimizing for the Inner kernel of Matrix Multipli...
 
AAME ARM Techcon2013 002v02 Advanced Features
AAME ARM Techcon2013 002v02 Advanced FeaturesAAME ARM Techcon2013 002v02 Advanced Features
AAME ARM Techcon2013 002v02 Advanced Features
 
slides_tese_v3_paraAnexoTesis
slides_tese_v3_paraAnexoTesisslides_tese_v3_paraAnexoTesis
slides_tese_v3_paraAnexoTesis
 
CArcMOOC 07.02 - Non-volatile memory devices
CArcMOOC 07.02 - Non-volatile memory devicesCArcMOOC 07.02 - Non-volatile memory devices
CArcMOOC 07.02 - Non-volatile memory devices
 
High Performance Computer Architecture
High Performance Computer ArchitectureHigh Performance Computer Architecture
High Performance Computer Architecture
 
CPU Pipelining and Hazards - An Introduction
CPU Pipelining and Hazards - An IntroductionCPU Pipelining and Hazards - An Introduction
CPU Pipelining and Hazards - An Introduction
 
Shortcircuit-IEC.pdf
Shortcircuit-IEC.pdfShortcircuit-IEC.pdf
Shortcircuit-IEC.pdf
 
Library Characterization Flow
Library Characterization FlowLibrary Characterization Flow
Library Characterization Flow
 
Electronic circuit design and component selection.pptx
Electronic circuit design and component selection.pptxElectronic circuit design and component selection.pptx
Electronic circuit design and component selection.pptx
 
Rf technology 5-8-2011-final-revised
Rf technology 5-8-2011-final-revisedRf technology 5-8-2011-final-revised
Rf technology 5-8-2011-final-revised
 
Tools for Practical Attacks on Analog-to-Digital Conversion
Tools for Practical Attacks on Analog-to-Digital ConversionTools for Practical Attacks on Analog-to-Digital Conversion
Tools for Practical Attacks on Analog-to-Digital Conversion
 

Plus de Alessandro Bogliolo

BIBMOOC 05.03 - Codici in biblioteca
BIBMOOC 05.03 - Codici in bibliotecaBIBMOOC 05.03 - Codici in biblioteca
BIBMOOC 05.03 - Codici in bibliotecaAlessandro Bogliolo
 
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...Alessandro Bogliolo
 
BIBMOOC 5.2 - Algoritmi in biblioteca
BIBMOOC 5.2 - Algoritmi in bibliotecaBIBMOOC 5.2 - Algoritmi in biblioteca
BIBMOOC 5.2 - Algoritmi in bibliotecaAlessandro Bogliolo
 
BIBMOOC 05.01 - Installazioni di coding e gamification
BIBMOOC 05.01 - Installazioni di coding e gamificationBIBMOOC 05.01 - Installazioni di coding e gamification
BIBMOOC 05.01 - Installazioni di coding e gamificationAlessandro Bogliolo
 
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni MojoliBIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni MojoliAlessandro Bogliolo
 
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona VillaBIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona VillaAlessandro Bogliolo
 
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco MuscogiuriBIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco MuscogiuriAlessandro Bogliolo
 
BIBMOOC 04.02 - Marketing culturale - Anna Busa
BIBMOOC 04.02 - Marketing culturale - Anna BusaBIBMOOC 04.02 - Marketing culturale - Anna Busa
BIBMOOC 04.02 - Marketing culturale - Anna BusaAlessandro Bogliolo
 
BIBMOOC 3.2 - Coding unplugged fai-da-te
BIBMOOC 3.2 - Coding unplugged fai-da-teBIBMOOC 3.2 - Coding unplugged fai-da-te
BIBMOOC 3.2 - Coding unplugged fai-da-teAlessandro Bogliolo
 
BIBMOOC 03.01 - Programmazione visuale a blocchi
BIBMOOC 03.01 - Programmazione visuale a blocchiBIBMOOC 03.01 - Programmazione visuale a blocchi
BIBMOOC 03.01 - Programmazione visuale a blocchiAlessandro Bogliolo
 
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementariBIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementariAlessandro Bogliolo
 
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioniBIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioniAlessandro Bogliolo
 
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara FaggiolaniBIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara FaggiolaniAlessandro Bogliolo
 
BIBMOOC 1.2 - Coding e pensiero computazionale
BIBMOOC 1.2 - Coding e pensiero computazionaleBIBMOOC 1.2 - Coding e pensiero computazionale
BIBMOOC 1.2 - Coding e pensiero computazionaleAlessandro Bogliolo
 
BIBMOOC 1.1 - Informazione e rappresentazioni digitali
BIBMOOC 1.1 - Informazione e rappresentazioni digitaliBIBMOOC 1.1 - Informazione e rappresentazioni digitali
BIBMOOC 1.1 - Informazione e rappresentazioni digitaliAlessandro Bogliolo
 
AIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
AIMOOC 7.3 - Per una IA etica - Claudia ChiavarinoAIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
AIMOOC 7.3 - Per una IA etica - Claudia ChiavarinoAlessandro Bogliolo
 
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla SioliAIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla SioliAlessandro Bogliolo
 
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro BoglioloAIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro BoglioloAlessandro Bogliolo
 

Plus de Alessandro Bogliolo (20)

BIBMOOC 05.03 - Codici in biblioteca
BIBMOOC 05.03 - Codici in bibliotecaBIBMOOC 05.03 - Codici in biblioteca
BIBMOOC 05.03 - Codici in biblioteca
 
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
BIBMOOC 06.02 - Buone pratiche: Il caso di Settimo Torinese - Lisa Marcenaro ...
 
BIBMOOC 5.2 - Algoritmi in biblioteca
BIBMOOC 5.2 - Algoritmi in bibliotecaBIBMOOC 5.2 - Algoritmi in biblioteca
BIBMOOC 5.2 - Algoritmi in biblioteca
 
BIBMOOC 05.01 - Installazioni di coding e gamification
BIBMOOC 05.01 - Installazioni di coding e gamificationBIBMOOC 05.01 - Installazioni di coding e gamification
BIBMOOC 05.01 - Installazioni di coding e gamification
 
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni MojoliBIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
BIBMOOC 06.01 - Buone pratiche: il caso di CSBNO - Giovanni Mojoli
 
Nuovi LIDI - Lezione 1
Nuovi LIDI - Lezione 1Nuovi LIDI - Lezione 1
Nuovi LIDI - Lezione 1
 
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona VillaBIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
BIBMOOC 04.04 - Progettualità e opportunità di finanziamento - Simona Villa
 
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco MuscogiuriBIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
BIBMOOC 04.03 - Progettare spazi per la cultura - Marco Muscogiuri
 
BIBMOOC 04.02 - Marketing culturale - Anna Busa
BIBMOOC 04.02 - Marketing culturale - Anna BusaBIBMOOC 04.02 - Marketing culturale - Anna Busa
BIBMOOC 04.02 - Marketing culturale - Anna Busa
 
BIBMOOC 3.2 - Coding unplugged fai-da-te
BIBMOOC 3.2 - Coding unplugged fai-da-teBIBMOOC 3.2 - Coding unplugged fai-da-te
BIBMOOC 3.2 - Coding unplugged fai-da-te
 
BIBMOOC 03.01 - Programmazione visuale a blocchi
BIBMOOC 03.01 - Programmazione visuale a blocchiBIBMOOC 03.01 - Programmazione visuale a blocchi
BIBMOOC 03.01 - Programmazione visuale a blocchi
 
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementariBIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
BIBMOOC 02.01 - Esecutore ideale e istruzioni elementari
 
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioniBIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
BIBMOOC 02.02 - Sequenze di istruzioni ripetizione e condizioni
 
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara FaggiolaniBIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
BIBMOOC 01.03 - Le biblioteche e la loro funzione sociale - Chiara Faggiolani
 
BIBMOOC 1.2 - Coding e pensiero computazionale
BIBMOOC 1.2 - Coding e pensiero computazionaleBIBMOOC 1.2 - Coding e pensiero computazionale
BIBMOOC 1.2 - Coding e pensiero computazionale
 
BIBMOOC 1.1 - Informazione e rappresentazioni digitali
BIBMOOC 1.1 - Informazione e rappresentazioni digitaliBIBMOOC 1.1 - Informazione e rappresentazioni digitali
BIBMOOC 1.1 - Informazione e rappresentazioni digitali
 
CodyTrip a BTO2021
CodyTrip a BTO2021CodyTrip a BTO2021
CodyTrip a BTO2021
 
AIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
AIMOOC 7.3 - Per una IA etica - Claudia ChiavarinoAIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
AIMOOC 7.3 - Per una IA etica - Claudia Chiavarino
 
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla SioliAIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
AIMOOC 7.2 - La strategia europea per l'I.A. - Lucilla Sioli
 
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro BoglioloAIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
AIMOOC 5.5 - Programmazione o addestramento? - Alessandro Bogliolo
 

Dernier

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsKarakKing
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 

Dernier (20)

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 

CArcMOOC 05.03 - Pipeline hazards

  • 1. Carc 05.03 alessandro.bogliolo@uniurb.it 05. CPU 05.03. Pipeline hazards • Structural hazards • Data hazards • Control-flow hazards • Multi-cycle instructions • CPU-time estimate Computer Architecture alessandro.bogliolo@uniurb.it
  • 2. Carc 05.03 alessandro.bogliolo@uniurb.it Structural hazards (problem) • Von-Neumann architecture: single memory Load Mem Reg ALU Mem Reg Instr1 Mem Reg ALU Mem Reg Instr2 Mem Reg ALU Mem Reg Instr3 Mem Reg ALU Mem Reg Instr4 Mem Reg ALU Mem Reg Load Mem Reg ALU Mem Reg Instr1 Mem Reg ALU Mem Reg Instr2 Mem Reg ALU Mem Reg Stall --- --- --- --- --- Instr3 Mem Reg ALU Mem Reg Instr4 Mem Reg ALU Mem Reg 2 clock cycles per memory access If 40% of instructions are memory accesses, avgCPI = 1.4
  • 3. Carc 05.03 alessandro.bogliolo@uniurb.it Structural hazards (solution) • Harvard architecture: separate memories for data (DM) and instructions (IM) Memory accesses cause no structural hazards Load IM Reg ALU DM Reg Instr1 IM Reg ALU DM Reg Instr2 IM Reg ALU DM Reg Instr3 IM Reg ALU DM Reg Instr4 IM Reg ALU DM Reg
  • 4. Carc 05.03 alessandro.bogliolo@uniurb.it Data hazards (problem) • Define and use / Read after write ADD r1 r2 r3 IM reg ALU DM reg SUB r4 r5 r1 IM reg ALU DM reg AND r6 r1 r7 IM reg ALU DM reg OR r8 r1 r9 IM reg ALU DM reg ZOR r10 r1 r11 IM reg ALU DM reg ADD r1 r2 r3 IM reg ALU DM reg SUB r4 r5 r1 IM --- --- --- reg ALU DM reg AND r6 r1 r7 IM reg ALU DM reg OR r8 r1 r9 IM reg ALU DM reg ZOR r10 r1 r11 IM reg ALU DM reg
  • 5. Carc 05.03 alessandro.bogliolo@uniurb.it Data hazards (solution 1) • Data forwarding from MA/WB to ALU ADD r1 r2 r3 IM reg ALU DM reg SUB r4 r5 r1 IM reg ALU DM reg IR PC1 WB ME EX A B IMM RW ID/EX WB ME ALU out B RW EX/MA WB ALU out MEM Dat RW MA/WBIF/ID Instr. Mem. PC Register file Alu Data Mem. WB logic CU
  • 6. Carc 05.03 alessandro.bogliolo@uniurb.it Data hazards (solution 1) • Data forwarding from EX/MA to ALU ADD r1 r2 r3 IM reg ALU DM reg SUB r4 r5 r1 IM reg ALU DM reg AND r6 r1 r7 IM reg ALU DM reg IR PC1 WB ME EX A B IMM RW ID/EX WB ME ALU out B RW EX/MA WB ALU out MEM Dat RW MA/WBIF/ID Instr. Mem. PC Register file Alu Data Mem. WB logic CU
  • 7. Carc 05.03 alessandro.bogliolo@uniurb.it ADD r1 r2 r3 IM reg ALU DM reg SUB r4 r5 r1 IM reg ALU DM reg AND r6 r1 r7 IM reg ALU DM reg OR r8 r1 r9 IM reg ALU DM reg Data hazards (solution 3) • Double-rate registers IR PC1 WB ME EX A B IMM RW ID/EX WB ME ALU out B RW EX/MA WB ALU out MEM Dat RW MA/WBIF/ID Instr. Mem. PC Register file Alu Data Mem. WB logic CU
  • 8. Carc 05.03 alessandro.bogliolo@uniurb.it CBranch IF ID EX MEM WB +1 IF (abort) Target --- --- IF ID EX MEM WB target+1 IF ID EX MEM WB Control-flow hazards (problem) • Assumptions: • Branch recognized during ID • Condition tested during EX • PC updated during MA UCBranch IF ID EX MEM WB +1 IF (abort) Target --- IF ID EX MEM WB target+1 IF ID EX MEM WB
  • 9. Carc 05.03 alessandro.bogliolo@uniurb.it CBranch IF ID EX MEM WB +1 IF (abort) Target --- IF ID EX MEM WB target+1 IF ID EX MEM WB Control-flow hazards (solution 1) • Assumptions: • Branch recognized during ID • Target computed during ID (PC updated soon) • Condition tested during EX (PC updated soon) UCBranch IF ID EX MEM WB +1 IF (abort) Target IF ID EX MEM WB target+1 IF ID EX MEM WB
  • 10. Carc 05.03 alessandro.bogliolo@uniurb.it CBranch IF ID EX MEM WB +1 IF (abort) Target IF ID EX MEM WB target+1 IF ID EX MEM WB Control-flow hazards (solution 2) • Assumptions: • Branch recognized during ID • Target computed during ID (PC updated soon) • Condition tested during ID (PC updated soon) UCBranch IF ID EX MEM WB +1 IF (abort) Target IF ID EX MEM WB target+1 IF ID EX MEM WB
  • 11. Carc 05.03 alessandro.bogliolo@uniurb.it UTBranch IF ID EX MEM WB +1 IF ID EX MEM WB +2 IF ID EX MEM WB Control-flow hazards (solution 3) • Predict untaken: • If the branch is not taken, the fetched instruction is not aborted TBranch IF ID EX MEM WB +1 IF (abort) Target IF ID EX MEM WB target+1 IF ID EX MEM WB
  • 12. Carc 05.03 alessandro.bogliolo@uniurb.it UTBranch IF ID EX MEM WB +1(delay) IF ID EX MEM WB +2 IF ID EX MEM WB Control-flow hazards (solution 4) • Delayed branch: • The instruction that follows a branch is always executed, regardless of the condition of the branch TBranch IF ID EX MEM WB +1(delay) IF ID EX MEM WB Target IF ID EX MEM WB target+1 IF ID EX MEM WB
  • 13. Carc 05.03 alessandro.bogliolo@uniurb.it Multiple-execution cycles (1) • Different instructions may use different execution units • The execution phase of an instruction may require more than 1 clock cycles • Instructions with multiple-execution cycles gives rise to data and resource conflicts ADDD F4, F0, F2 IF ID EX EX MA WB ADDD F10, F6, F8 IF ID -- EX EX MA WB ADDD F14, F10, F12 IF -- ID -- EX EX MA WB
  • 14. Carc 05.03 alessandro.bogliolo@uniurb.it Multiple-execution cycles (2) • Pipelined execution units • Replicated execution units ADDD F4, F0, F2 IF ID EX EX MA WB ADDD F10, F6, F8 IF ID EX EX MA WB ADDD F14, F10, F12 IF ID -- EX EX MA WB
  • 15. Carc 05.03 alessandro.bogliolo@uniurb.it CPU specification • Functional specification • Instruction set • Interface • Pin-out • Electrical signals • Timing diagrams • Performance • Tclk • CPI • Latency • Repetition time
  • 16. Carc 05.03 alessandro.bogliolo@uniurb.it Performance estimation stallsavg NICCPICPUC  IC ICCPI CPI i ISi i avg   stallsi ISi i NICCPICPUC   (1) (2) (3) Latency Repetition time ICCPICPUC CPI avg avg  1