24.06.2013 Views

Programmation proche du hardware avec le kit de développement ...

Programmation proche du hardware avec le kit de développement ...

Programmation proche du hardware avec le kit de développement ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Hardwarenahe Programmierung in C<br />

2) Le CPU fixe <strong>le</strong> sens <strong>du</strong> transfert « <strong>le</strong>cture », à l’ai<strong>de</strong> <strong>du</strong> bus <strong>de</strong> contrô<strong>le</strong>.<br />

3) La mémoire programme fournit l’instruction stockée dans la case mémoire, qui est sé<strong>le</strong>ctionnée<br />

par <strong>le</strong> bus d’adresse, sur <strong>le</strong> bus <strong>de</strong> donnée.<br />

4) Le CPU lit cette instruction.<br />

5) Le CPU fournit l’adresse <strong>du</strong> composant périphérique, à partir <strong>de</strong> laquel<strong>le</strong> <strong>le</strong>s données doivent être<br />

lues, sur <strong>le</strong> bus d’adresse.<br />

6) Le CPU fixe <strong>le</strong> sens <strong>du</strong> transfert « <strong>le</strong>cture », à l’ai<strong>de</strong> <strong>du</strong> bus <strong>de</strong> contrô<strong>le</strong>.<br />

7) La périphérie fournit l’information, contenue dans la case mémoire sé<strong>le</strong>ctionnée, sur <strong>le</strong> bus <strong>de</strong><br />

données.<br />

8) Le CPU lit <strong>le</strong>s données.<br />

9) Le CPU sé<strong>le</strong>ctionne la case <strong>de</strong> <strong>de</strong>stination « temp » dans la mémoire <strong>de</strong> donnée, à l’ai<strong>de</strong> <strong>du</strong> bus<br />

d’adresse.<br />

10) Le CPU fournit <strong>le</strong>s données sur <strong>le</strong> bus <strong>de</strong> données.<br />

11) Le CPU fixe <strong>le</strong> sens <strong>du</strong> transfert « écriture », à l’ai<strong>de</strong> <strong>du</strong> bus <strong>de</strong> contrô<strong>le</strong>.<br />

12) La mémoire <strong>de</strong>s données saisit <strong>le</strong>s données sur <strong>le</strong> bus <strong>de</strong> données, et <strong>le</strong>s stocke dans la case<br />

mémoire sé<strong>le</strong>ctionnée par <strong>le</strong> bus d’adresse.<br />

Bus<br />

d’adresse<br />

Bus <strong>de</strong><br />

données<br />

Bus <strong>de</strong><br />

contrô<strong>le</strong><br />

AMP<br />

1)<br />

RD<br />

DMP<br />

APE<br />

RD<br />

2) 3) 4) 5) 6)<br />

10 / 41<br />

DPE<br />

Figure 6 : Le timing <strong>du</strong> bus<br />

Les abréviations suivantes ont été utilisées dans la Figure précé<strong>de</strong>nte :<br />

AMP : Adresse <strong>de</strong> la mémoire programme<br />

APE : Adresse <strong>de</strong> la périphérie<br />

AMD : Adresse <strong>de</strong> la mémoire <strong>de</strong>s données<br />

DMP : Donnée <strong>de</strong> la mémoire programme<br />

DPE : Donnée <strong>de</strong> la périphérie<br />

DMD : Donnée <strong>de</strong> la mémoire <strong>de</strong>s données<br />

RD : Read, lire<br />

WR : Write, écrire<br />

De plus <strong>le</strong>s notations suivantes illustrent l’état <strong>de</strong> la tension <strong>du</strong> bus :<br />

AMD<br />

DMD<br />

WR<br />

7) 8) 9) 10) 11) 12)<br />

La tension <strong>du</strong> bus est stab<strong>le</strong> et valab<strong>le</strong>, el<strong>le</strong> est soit high ou low<br />

La tension <strong>du</strong> bus n’est pas valab<strong>le</strong> ("don't care")<br />

La tension <strong>du</strong> bus change

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!