Ctlpipeline1 Le contrôle pipeline Pour spécifier le contrôle nous avons quà positionner les valeurs de contrôle à chacun des étages. Pour positionner le contrôle de chaque étage les registres de pipeline sont étendus. données contrôle
Ctlpipeline2 Les lignes de contrôle Crt ER M EX ER M ER EI/DI DI/EX EX/MEM MEM/ER ER : Utilisés à létage 3 M :Utilisés à létage 2
Ctlpipeline3 Exemple lw $10,9($1) sub $11,$2,$3
Ctlpipeline4 Exemple Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc I(15-0) I(20-16) I(15-11)
Ctlpipeline5 Exemple CC1 Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire I Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Extraction Instruction lw $10,9($1) Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc
Ctlpipeline6 Exemple CC2 Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire I Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Extraction InstructionDécodage Ins sub $11,$2,$3lw $10,9($1) Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc lw 1 x 9 10 x $1 $x 9 10 x
Ctlpipeline7 Exemple CC3 Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire I Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Décodage Ins Exécution sub $11,$2,$3lw $10,9($1) Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc $2 $3 x 11 $ x 11 sub
Ctlpipeline8 Exemple CC4 Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire I Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Exécution Mémoire sub $11,$2,$3lw $10,9($1) Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc $2 $
Ctlpipeline9 Exemple CC5 Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire I Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 MémoireEcriture Résultat sub $11,$2,$3lw $10,9($1) Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc xxxx
Ctlpipeline10 Exemple CC6 Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire I Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Ecriture Résultat sub $11,$2,$3 Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc x 11
Ctlpipeline11 FIN Registre lecture1 Registre lecture2 Registre écriture Donnée à écrire 0M10M1 0M10M1 ESES 0M10M1 CPCP R.Adr Mémoire Donnée lue 1 Donnée lue 2 Adresse Lecture Adresse écrire Donnée à écrire Donnée lue 1M01M0 Crt ER M EX ER M ER Crt UAL LireMem MemversReg EcrireMem RegDst EcrireReg UALSrc Branc I(15-0) I(20-16) I(15-11)