Top Banner
Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu J M 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control signals (rd,wr,fetch) N Z MIR JMPC JAMN/JAMZ Shifter MAR, MDR, PC, MBR, SP, LV, CPP, TOS, OPC,H sont des registres 32 bits
31

Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Apr 03, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

MAR, MDR, PC, MBR, SP, LV, CPP, TOS, OPC,H

sont des registres 32 bits

Page 2: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

MAR, MDR, PC, MBR permettent l’accès à la mémoire de l’ordinateur

Page 3: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

MAR (Memory Address Register) Contient une adresse de word

Page 4: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

MDR (Memory Data Register) Contient une donnée.Les données avant d’arrivées dans ce registre nécessites 1 cycle entier.

Page 5: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

PC (Program counter)Conteur de programme

Page 6: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

MBR(Memory Buffer Register)Contient un word (4 bytes)Lecture d’un byte à la foisLes données avant d’arrivées dans ce registre nécessites 1 cycle entier.

Page 7: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

D’un langage haut niveaux a un flux de bytes

A=3+1B=4+5C=A+B

Langage de programmation

BIPUSH 3 #A=3+1BIPUSH 1IADDISTORE ABIPUSH 4 #B=4+5BIPUSH 5IADDISTORE BILOAD A #C=A+BILOAD BIADDISTORE C

Jeux d’instructions de la machine Traduction en hexa

0x10 0x03 #A=3+10x10 0x010x600x36 0x010x10 0x04 #B=4+50x10 0x050x600x36 0x020x15 0x01 #C=A+B0x15 0x020x600x36 0x03

Page 8: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

H unique registre permettantà l’ALU de faire des opérationsBinaires (Ex + ,- )

Page 9: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Registre qui simule la pile de donnée.

Page 10: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

SP contient un pointeur du dernier élément empilé

1

41

54

LV

SP

TOS

Page 11: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

LV contient un pointeur du premier élément empilé

1

41

54

LV

SP

TOS

Page 12: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Les Registres 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

TOS (Top Of Stack)contient la valeur du dernier élément empilé

1

41

54

LV

SP

TOS

Page 13: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

ALU 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

F0 F1 ENA ENB INVA INC Function

0 1 1 0 0 0 A

0 1 0 1 0 0 B

0 1 1 0 1 0 /A

1 0 1 1 0 0 /B

1 1 1 1 0 0 A+B

1 1 1 1 0 1 A+B+1

1 1 1 0 0 1 A+1

1 1 0 1 0 1 B+1

1 1 1 1 1 1 B-A

1 1 0 1 1 1 B-1

1 1 1 0 1 1 -A

0 0 1 1 0 0 A and B

0 1 1 1 0 0 A or B

0 1 0 0 0 0 0

0 1 0 0 0 1 1

0 1 0 0 1 0 -1

Page 14: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

ALU 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Permet de décaler de deux bits vers la gauche.

Ce qui permet de convertir simplement

des adresses de words en adresses de bytes.

Page 15: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le contrôleur est une sorte de policier

qui va réguler la circulation dans

toute cette architecture

Page 16: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le contrôler est une sorte de policier qui

va réguler la circulation dans

toute cette architecture

Page 17: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le controler décide quelles opérations

doivent être effectuées

Page 18: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le controler décide quelles opérations

doivent être effectuées

Page 19: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le controler régule cette circulation à

l’aide de « robinets » qui

permette à l’information de

passer ou de ne pas passer

Page 20: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le controler régule cette circulation à

l’aide de « robinets » qui

permette à l’information de

passer ou de ne pas passer

Page 21: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Le controler régule cette circulation à

l’aide de « robinets » qui

permette à l’information de

passer ou de ne pas passer

Page 22: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Next_Adress : 8 bits indique la prochaine

micro-instruction

Page 23: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Indique la future micro-

instruction à exécuter

Page 24: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Détermine de la prochaine micro-instructions

Page 25: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

ALU / SHIFTER : 8 bits indique l’opération à effectuer

Page 26: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

BUS C :9 bits indique dans quel(s) registre(s) le Bus C doit écrire

Page 27: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

MEMOIRE :3 bits indique l’opération de la mémoire Read ,Write,Fetch

Page 28: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

Opérations mémoireRD : Read (MDR)

WR: WriteFetch :Read (MBR)

Page 29: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Contrôler 3

MAR

MDR

PC

MBR

SP

LV

CPP

TOS

OPC

H

Addr AluJ M

4 to 16 Decoder

High Bit

C B

Controler

MPC

ALU

4

9

8

2

2

6

8

B Bus

C Bus

Memory control signals (rd,wr,fetch)

N

Z

MIRJMPC

JAMN/JAMZ

Shifter

BUS B :4 bits Indique quel registre doit être lu

Page 30: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Controler suite

Next_Adress8 bits

JAM3 bits

ALU8 bits

Bus C9 bits

Mémoire

3 bits

Bus B4 bits

JMPC

JAMN

JAMZ

SLL8

SRA1

F0 F1 ENA

ENB

INVA

INC

H OPS

TOS

CPP

LV

SP

PC

MDR

MAR

WRITE

READ

FETCH

Page 31: Les Registres 3 MAR MDR PC MBR SP LV CPP TOS OPC H Addr Alu JM 4 to 16 Decoder High Bit C B Controler MPC ALU 4 9 8 2 2 6 8 B Bus C Bus Memory control.

Notation des micro-instructions

• Une simplification– SP=SP+1 ;rd; goto label;

• Les simplifications consistes – Utilisation du symbole égal– Utilisation de label au lieu d’adresse.

• Une micro instructions :

Next_Adress8 bits

JAM3 bits

ALU8 bits

Bus C9 bits

Mémoire

3 bits

Bus B4 bits

JMPC

JAMN

JAMZ

SLL8

SRA1

F0 F1 ENA

ENB

INVA

INC

H OPS

TOS

CPP

LV

SP

PC

MDR

MAR

WRITE

READ

FETCH

0x7A 0 0 0 0 0 1 1 0 1 0 10 0 0 0 0 1 0 0 0 0 1 0 0x06