Motorola 6809

Un article de Wikipédia, l'encyclopédie libre.

Le 6809 est un microprocesseur 8 bits de Motorola. Ce microprocesseur fut une avancée majeure par rapport à ses deux prédécesseurs, le 6800 de Motorola et le quasi-clone de ce dernier, le 6502 de MOS Technology.

Sommaire

[modifier] Description

Parmi les améliorations significatives introduites par le 6809, on trouve une paire d'accumulateurs à 8 bits qui pouvaient être combinés en un seul registre de 16 bits. Le 6502 n'avait qu'un seul accumulateur. Il y avait aussi deux registres d'index à 16 bits (contre deux registres d'index à 8 bits dans le 6502) et deux pointeurs de pile (contre un seul dans le 6502). Ceci donnait lieu à des modes d'adressage très avancés.

Le 6809 était compatible avec le 6800 sur le plan du code source, même si le 6800 avait 78 instructions alors que le 6809 n'en avait que 59. Certaines instructions furent remplacées par d'autres qui étaient plus générales (et que l'assembleur se chargeait de traduire), et d'autres furent même remplacées par des modes d'adressage. Le jeu d'instructions et l'ensemble des registres étaient très orthogonaux, ce qui rendait la programmation en langage assembleur assez plaisante, contrairement au cauchemar de cas spéciaux qui était typique de la plupart des autres microprocesseurs de l'époque.

On pouvait aussi compter sur une des premières instructions de multiplication de l'époque, sur l'arithmétique à 16 bits, et sur un système d'interruptions particulièrement rapide. Par ailleurs, le 6809 était fortement optimisé et atteignait jusqu'à cinq fois la vitesse des processeurs de la série 6800. Tout comme le 6800, il possédait l'instruction « Halt and Catch Fire (HCF) » (« arrête et prends feu »), qui servait à tester le bus.

La performance accrue du 6809 reflétait le fait que, contrairement à beaucoup de processeurs de l'époque, les instructions étaient pour la plupart implémentées directement dans le processeur (comme pour les processeurs RISC apparus vers les années 1990) plutôt que d'être écrites en microcode (tel un processeur CISC). Ceci réduisait le nombre de cycles d'horloge du processeur nécessaires à l'exécution des instructions. Par exemple, l'instruction ADDA 63 prenait 3 cycles : deux pour l'obtention de l'instruction (fetch) et un pour effectuer l'addition.

Sur le Z80 de Zilog, qui était probablement le principal concurrent du 6809, l'instruction ADD A,63 prenait 7 cycles. En conséquence, le Z80 avait besoin d'une vitesse d'horloge d'au moins deux fois celle du 6809 pour en égaler la performance. De plus, les processeurs à 8 bits de Motorola utilisaient un cycle d'horloge par accès à la mémoire, plutôt que l'horloge d'état interne de la plupart des autres microprocesseurs de ce temps. Une seule opération de lecture de la mémoire sur un Z80, par exemple, nécessitait plusieurs cycles d'horloge, contre un seul pour un 6800 ou un 6809.

Le 6809 avait un générateur de cadence interne qui n'avait besoin que d'un cristal externe. Le 6809E avait besoin d'un générateur de cadence externe. Il y avait des variantes comme le 68A09(E) et le 68B09(E), où la lettre du milieu indiquait la vitesse d'horloge nominale du processeur.

[modifier] Histoire

Le 6809 de Motorola fut au départ produit en versions 1 MHz et 2 MHz, mais des versions plus rapides furent produites par la suite. Il est considéré comme le « précurseur spirituel » de la famille des 68000 de Motorola, bien que la conception du 68000 était déjà commencée au moment où le 6809 fut commercialisé.

Le 6809 était utilisé dans l'ordinateur biprocesseur SuperPET de Commodore. Le 68A09 était utilisé dans la console de jeux vidéo vectorielle Vectrex. Le 6809E était quant à lui présent dans l'Ordinateur Couleur (CoCo) de Tandy et dans le clone britannique du CoCo, le Dragon 32/64. Il était également au cœur de toute la série de micro-ordinateurs familiaux de Thomson (TO7, TO7/70, TO8, TO9, TO9+, MO5 et MO6).

La compagnie de développement de logiciels Microware a développé le système d'exploitation OS-9 (à ne pas confondre avec MacOS 9) sur le 6809, pour ensuite le porter vers la série 68000.

Le 6309 de Hitachi était une version améliorée du 6809 avec des registres supplémentaires et des instructions additionnelles, incluant le déplacement de blocs de mémoire, de nouvelles opérations de multiplication, et une instruction de division.

Motorola et Hitachi ne produisent plus de 6809 ni de dérivés. Il faut cependant mentionner que ce fut un des plus puissants processeurs à 8 bits d'usage général. Quelque peu en avance sur son temps, il offrait beaucoup de caractéristiques novatrices dont plusieurs ont été copiées dans d'autres processeurs par la suite.

[modifier] Bibliographie

  • Le microprocesseur 6809 ses périphériques et le processeur graphique 9365-66 ISBN 2212075049

[modifier] Liens externes

Simulateur du 6809 en Flash Application Flash de simulation du microprocesseur 6809, du PIA 6821 et du temporisateur 6840.

Cet article est basé sur une traduction de la Free On-line Dictionary of Computing et est utilisé avec permission selon la GFDL.


Liste des microprocesseurs Motorola

6800 • 6809 • 68000 • 68008 • 68010 • 68012 • 68020 • 68030 • 68040 • 68060 • 88000 • DragonBall • ColdFire • PowerPC • PowerPC G3 • PowerPC G4

FPU :  68881/2   •    MMU : 68851

DSP :  DSP560XX • DSP563XX • DSP566XX • DSP568XX • DSP96XXX