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 ...
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