architecture d’un système à µp

7
M. Deloizy 1 Architecture d’un système à µP Exemple du 6809 M. Deloizy 2 Objectif Description d’un système Fonctionnement matériel Conception Applications spéciales M. Deloizy 3 Exemple du 6809 Système 8 bits Simplicité Lenteur Pas d’optimisation Architecture de Von Neumann (1903~1957) Programmes et données dans le même espace Exécution séquentielle M. Deloizy 4 Éléments constitutifs d’un système Processeur Mémoires Dispositifs d’Entrées/Sorties Logique de contrôle et gestion M. Deloizy 5 Le processeur Cœur du système Gère échanges avec « périphériques » sous contrôle d’un « programme » Programme : Suite d’instructions exécutées séquentiellement Code opérateur [+ opérande] PC indique instruction en cours M. Deloizy 6 Exécution d’une instruction Sélection de la donnée pointée par PC Lecture de la donnée Code opérateur Décodage et exécution de l’instruction Peut durer plusieurs cycles Selon complexité Micro programmes Peut nécessiter lecture de données complémentaires Récupération de l’instruction suivante PC placé sur la prochaine instruction à exécuter M. Deloizy 7 Description « électrique » du 6809 40 pattes / 5V Vss, Vcc : alimentation A0 ~ A15 : adresses (sorties, 64k adr.) D0 ~ D7 : données (8 bits, bidir.) NMI, IRQ, FIRQ : entrées interruptions RESET : entrée initialisation (trigger) XTAL, EXTAL : oscillateur Q, E : sorties horloges (quad, Fxtal/4) R/W : sortie Read/Write HALT : entrée. Mise en veille. Réveil par RESET, NMI ou DMA/BREQ DMA/BREQ : entrée. Demande accès aux bus M. Deloizy 8 Description « électrique » du 6809 MRDY : entrée. Indique si le périphérique est prêt. BA, BS : sorties. Indiquent l’état du CPU 00 : normal 11 : bus Hi-Z 01 : reconnaissance interruption 10 : attente synchro (instruction Wait)

Upload: abdou-boubou

Post on 16-Apr-2015

16 views

Category:

Documents


5 download

DESCRIPTION

Description d’un systèmeFonctionnement matérielConceptionApplications spéciales

TRANSCRIPT

Page 1: Architecture d’un système à µP

M. Deloizy 1

Architecture d’un système à µP

Exemple du 6809

M. Deloizy 2

Objectif

Description d’un système

Fonctionnement matériel

Conception

Applications spéciales

M. Deloizy 3

Exemple du 6809

Système 8 bits

Simplicité

Lenteur

Pas d’optimisation

Architecture de Von Neumann (1903~1957)

Programmes et données dans le même espace

Exécution séquentielle

M. Deloizy 4

Éléments constitutifs d’un système

Processeur

Mémoires

Dispositifs d’Entrées/Sorties

Logique de contrôle et gestion

M. Deloizy 5

Le processeur

Cœur du système

Gère échanges avec « périphériques » sous contrôle

d’un « programme »

Programme :

Suite d’instructions exécutées séquentiellement Code opérateur [+ opérande]

PC indique instruction en cours

M. Deloizy 6

Exécution d’une instruction

Sélection de la donnée pointée par PC

Lecture de la donnée

Code opérateur

Décodage et exécution de l’instruction

Peut durer plusieurs cycles Selon complexité

Micro programmes

Peut nécessiter lecture de données complémentaires

Récupération de l’instruction suivante

PC placé sur la prochaine instruction à exécuter

M. Deloizy 7

Description « électrique » du 6809

40 pattes / 5V

Vss, Vcc : alimentation

A0 ~ A15 : adresses (sorties, 64k adr.)

D0 ~ D7 : données (8 bits, bidir.)

NMI, IRQ, FIRQ : entrées interruptions

RESET : entrée initialisation (trigger)

XTAL, EXTAL : oscillateur

Q, E : sorties horloges (quad, Fxtal/4)

R/W : sortie Read/Write

HALT : entrée. Mise en veille. Réveil par

RESET, NMI ou DMA/BREQ

DMA/BREQ : entrée. Demande accès aux

bus

M. Deloizy 8

Description « électrique » du 6809

MRDY : entrée. Indique si le périphérique est

prêt.

BA, BS : sorties. Indiquent l’état du CPU

00 : normal

11 : bus Hi-Z

01 : reconnaissance interruption

10 : attente synchro (instruction Wait)

Page 2: Architecture d’un système à µP

M. Deloizy 9

Écriture dans un périphérique

µP positionne les lignes adresses

« adresse » du périphérique

µP positionne la ligne R/W à 0

µP positionne données (quand E)

Périphérique doit lire données (quand E )

µP met données en Hi-Z

M. Deloizy 10

Lecture d’un périphérique

µP positionne les lignes adresses

µP positionne la ligne R/W à 1

Périphérique doit positionner données

µP lit données (quand E )

Périphérique doit mettre données en Hi-Z

µP met données en Hi-Z

M. Deloizy 11

Chronogrammes du µP

M. Deloizy 12

Périphériques

Situés « autour » du processeur

Circuit adressable accessible en lecture ou écriture

Exemples :

Entrées / Sorties numériques

CNA ou CAN

Interfaces (écran, réseaux, mémoires de masse,

…)

Mémoires (RAM, ROM, UVPROM, EEPROM,

OTP…)

Vus par le processeur comme des mémoires

M. Deloizy 13

Rappel

Cellule mémoire unité

RD et WR inactifs : D en Hi-Z

RD actif : Donnée apparaît sur D (en

sortie)

WR actif : Donnée chargée en mémoire

Autre possibilité :

RD/WR# : 1 : lecture de la mémoire (D en sortie)

0 : chargement de la mémoire (D en entrée)

EN : validation de la mémoire

RD

WR

D

RD/WR#

EN

D

M. Deloizy 14

Association de mémoires

Augmentation du nombre de bits

Mémoire 16x1 bits

Décodeur

lignes

1 parmi 4

Décodeur colonnes

1 parmi 4

A0

A1

A2 A3

Numéro

de ligne

Numéro de

colonne D R/W#

& EN

R/W#

D

M. Deloizy 15

Mémoire 16x1 bits

A3 A2 A1 A0

D

R/W#

EN

Adresse

(0 à 15)

M. Deloizy 16

Association de mémoires

Mémoire

de mots

16x4 bits

a3

a2

a1

a0

d

en

r/w#

Q3

a3

a2

a1

a0

d

en

r/w#

Q2

a3

a2

a1

a0

d

en

r/w#

Q1

a3

a2

a1

a0

d

en

r/w#

Q0

A3

A2

A1

A0

D3

D2

D1

D0

EN

R/W#

Page 3: Architecture d’un système à µP

M. Deloizy 17

Association de mémoires

Augmentation

du nombre de

mots

64x4 bits

a3

a2

a1

a0

d3

d2

d1

d0

r/w#

en Q3

a3

a2

a1

a0

d3

d2

d1

d0

r/w#

en Q2

a3

a2

a1

a0

d3

d2

d1

d0

r/w#

en Q1

a3

a2

a1

a0

d3

d2

d1

d0

r/w#

en Q0

Décodeur

2 =

> 4

X

Y

q3

q2

q1

q0

cs

A5

A4

A3

A2

A1

A0

EN

D3

D2

D1

D0

R/W#

M. Deloizy 18

Exemple : HM65764

M. Deloizy 19

Exemple : 27C64

M. Deloizy 20

Boîtiers 27C64, 27C256 & 27C512

M. Deloizy 21

27C64, 27C256 & 27C512 (JEDEC)

M. Deloizy 22

Exemple : EEProm HN58S65

M. Deloizy 23

Exemple :

UART

TL16C450

M. Deloizy 24

Afficheur AV1624

Page 4: Architecture d’un système à µP

M. Deloizy 25

CAN AD7813

M. Deloizy 26

DDR SDRAM

SDRAM

RAM synchrone

Horloge interne synchronisée sur CPU

Évite temps attente lors accès

DDR SDRAM

SDRAM

Fonctionne sur 2 fronts horloge

M. Deloizy 27

DDR3 SDRAM :

MT41J256M8 – 32 Meg x 8 x 8 banks Caractéristiques :

VDD = VDDQ = +1.5V 0.075V

Differential bidirectional data strobe

Differential clock inputs (CK, CK#)

8 internal banks for concurrent operation

Automatic refresh

tCK range: 300–667 MHz

Timing – cycle time : 1.5 … 2.5 ns (800 … 1333 Mb/s)

M. Deloizy 28

Boîtier

FBGA 94 billes

Fine-pitch Ball Grid Array

M. Deloizy 29

Décodage d’adresses

Assigner une adresse à chaque périphérique

M. Deloizy 30

Décodage d’adresses

Circuit logique combinatoire

Génération d’un signal de validation

Sélection d’un circuit parmi les périphériques

Actif pour une plage d’adresses

À partir de l’adresse émise par le processeur

Pour un µP avec NBAD lignes d’adresses

Adresses comprises entre 0 et (2NBAD-1)

M. Deloizy 31

Présentation

Chaque périphérique se voit attribué une zone mémoire

(plage d’adresses)

Choix arbitraire

Parfois, contrainte liée au processeur

Exemple :

RAM 32 ko : 32768 octets (32768 adresses)

On choisit de la placer en haut du plan mémoire : Occupe les adresses 8000H à FFFFH.

On génère un signal (CS) actif quand le processeur émet une

adresse dans cette plage

M. Deloizy 32

Méthode

Exemple:

Génération de CS pour des adresses comprises entre 4000 et 7FFF :

Adresse A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

7FFF 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

7FFE 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0

7FFD 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1

… 0 1 x x x x x x x x x x x x x x

4002 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0

4001 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1

4000 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

CS actif quand : A15=0 ET A14=1

Page 5: Architecture d’un système à µP

M. Deloizy 33

Exemple

Système 6809

16 ko de ROM type 27C64 Bloc continu

Vecteur RESET & interruptions en FFF8 à FFFF

8 ko de RAM type 65764 (en page 0)

1 uart TL16C450

1 EEPROM HM65764

Décodage strict

Décodage incomplet

Utilisation de circuit décodeur/démultiplexeur

M. Deloizy 34

Système complet

M. Deloizy 35

Circuit logique

74138

M. Deloizy 36

Circuit logique 74139

M. Deloizy 37

Circuit logique 74244

M. Deloizy 38

Circuit logique 74245

M. Deloizy 39

Circuit logique 74373

M. Deloizy 40

Système 6809

Page 6: Architecture d’un système à µP

M. Deloizy 41

Alimentations

M. Deloizy 42

Interruptions…

M. Deloizy 43

Décodage

M. Deloizy 44

Lignes R/W

M. Deloizy 45

Câblage mémoires

M. Deloizy 46

Câblage UART

M. Deloizy 47

Extension de mémoire

6809 : 64k adressables

On souhaite « voir » 1 Mo

Nécessite 20 lignes d’adresses (16x64 = 1024)

Mise en place d’un système de pages

M. Deloizy 48

Page 7: Architecture d’un système à µP

M. Deloizy 49

Mémoire partagée

2 processeurs

Périphériques (RAM, ROM, …) distincts

1 périphérique en commun

Par exemple : RAM

Intérêt : Communication très rapide entre les 2 systèmes

RAM propriétaire d’un système

M. Deloizy 50

M. Deloizy 51

Systèmes 16 bits

Exemple : 68000

Bus d’adresses A0 … A23 : 16 Mo adressables

Bus de données D0 … D15 : 16 bits

Mémoire 16 bits constituée de 2 plans 8 bits en //

Problème : accès à octets pairs ou impairs Nécessite signaux de plans individuels :

UDS# & LDS#

Bus d’adresse indique « adresse de mot »

UDS# et LDS# sélectionnent octet pair ou impair

A0 inutile (non sorti sur le bus)

Ne permet pas d’accéder à un mot en adresse impaire

Autre système : Utilisation de BHE# et A0

M. Deloizy 52

Exemple de bus

16 bits