Section courante

A propos

Section administrative du site

Introduction

Fiche technique
Fabricant Motorola
Modèle MC6845
Date de conception 1977

Le contrôleur CRT Motorola 6845 (aussi appelé MC6845) est un générateur d'adresses vidéo introduit par Motorola et utilisé entre autres dans les cartes vidéo Videx VideoTerm pour les ordinateurs de la famille des Apple II, dans les adaptateurs vidéo MDA, HGC et CGA pour IBM PC, dans le micro-ordinateur PC Junior d'IBM, dans les micro-ordinateurs Amstrad CPC et dans la famille des BBC Micro. Son impacte fut majeur dans la culture de l'affichage vidéo au début des 1980. De ce fait, ses fonctionnalités ont été reproduite et étendue pour des circuits personnalisés dans les adaptateurs vidéo PC des cartes vidéo EGA et VGA d'IBM. Son histoire est aussi lié à la puce 6545 plus tard fabriqué par l'entreprise MOS Technology : Commodore Semiconductor Group) et Rockwell (en deux variantes) et a été cloné dans des puces comme la Hitachi HD46505 ayant été utilisé dans de nombreux micro-ordinateurs japonais de Sony, Sharp, Panasonic et Casio dans la carte UltraTerm de Videx.

Caractéristique

Le contrôleur CRT MC6845 assure l'interface entre un MPU et un affichage CRT de balayage de trame. Il est destiné à être utilisé dans les contrôleurs à base de MPU pour les terminaux CRT en configuration autonome ou en unité d'allocation. Le CRTC est optimisé pour l'équilibre matériel/logiciel requis pour une flexibilité maximale pour un micro-ordinateur 16 bits. Toutes les fonctions du clavier, les lectures, les écritures, les mouvements du curseur et l'édition sont sous le contrôle du processeur. Le CRTC fournit l'adressage de la vidéo et l'actualisation de la mémoire.

Schéma

Voici le schéma des broches de la puce MC6845 de Motorola :

Code Nom Description
D0-D7 Data Bus Ces 8 broches sont utilisés comme lignes de données bidirectionnelles (D0-07) permettent le transfert de données entre le fichier de registre interne du CRTC et le processeur. Les pilotes de sortie de bus de données sont dans l'état haute impédance jusqu'à ce que le processeur effectue une opération de lecture CRTC.
E Enable Cette broche est utilisé comme signal d'activation pour une entrée compatible TTL/MOS à haute impédance activant les données des tampons d'entrée / sortie du bus de données et des horloges vers et depuis le CRTC. Ce signal est généralement dérivé de l'horloge du processeur. La transition haut-bas est le bord actif.
CS Chip Select Cette broche est utilisé comme ligne CS pour une entrée compatible TTL/MOS à haute impédance sélectionnant le CRTC, lorsqu'il est bas, pour lire ou écrire dans le fichier de registre interne. Ce signal ne doit être actif que si une adresse stable valide est décodée par le processeur.
RS Register Select Cette broche est utilisé comme ligne RS pour une entrée compatible TTL/MOS haute impédance sélectionnant le registre d'adresses (RS = 0) ou l'un du registre de données (RS = 1) ou le fichier de registre interne.
R/W Read/Write Cette broche est utilisé comme ligne R/W pour une entrée compatible TTL/MOS à haute impédance déterminant si le fichier de registre interne est écrit ou lu. Une écriture est définie comme un niveau bas.
VS ou HS Vertical Sync ou Horizontal Sync Cette broche sont utilisés comme sorties compatibles TTL pour des signaux actifs pilotant le moniteur directement ou étant appliqués au circuit de traitement vidéo pour générer un signal vidéo composite. Le signal VS détermine la position verticale du texte affiché tandis que le signal HS détermine la position horizontale du texte affiché.
DE Display Enable Cette broche est utilisé comme sortie compatible TTL pour un signal haut actif indiquant que le CRTC fournit un adressage dans la zone d'affichage active.
MAO-MA13 Refresh Memory Addresses Ces 14 broches sont utilisées pour actualiser l'écran CRT avec des pages de données situées dans un bloc de 16 Ko de mémoire d'actualisation. Ces sorties sont capables de piloter une charge TTL standard et 30 pF.
RAO-RA4 Row Addresses Ces 5 broches sont utilisées pour adresser la ROM du générateur de caractères. Ces sorties sont capables de piloter une charge TTL standard et 30 pF.
Curseur Curseur Cette broche est utilisé comme sortie compatible TTL indiquant une adresse de curseur valide pour la logique de traitement vidéo externe. C'est un signal haut actif.
CLK Clock Cette broche est utilisé comme entrée compatible TTL/MOS pour synchroniser toutes les fonctions du CRT sauf pour l'interface du processeur. Un compteur de points externe est utilisé pour dériver ce signal étant habituellement le débit de caractères dans un CRT alphanumérique. La transition active est de haut en bas.
LPSTB Light Pen Strobe Cette broche est utilisé comme transition de bas à haut niveau sur cette entrée compatible TTL/MOS à haute impédance verrouillant l'adresse de rafraîchissement actuelle dans le registre du crayon optique. Le verrouillage de l'adresse de rafraîchissement est synchronisé en interne avec l'horloge de caractères (CLK).

Valeur programmable dans les registres CRTC

Numéro Nom Description
0 Horizontal Total Ce registre permet d'indiquer le nombre total horizontal
1 Horizontal Displayed Ce registre permet d'indiquer le nombre horizontal affiché
2 Horizontal Sync Position Ce registre permet d'indiquer la position horizontale de la synchronisation
3 Horizontal and Vertical Sync Widths Ce registre permet d'indiquer la largeur de synchronisation horizontale et verticale
4 Vertical Total Ce registre permet d'indiquer le nombre total vertical
5 Vertical Total Adjust Ce registre permet d'indiquer le nombre total vertical ajusté
6 Vertical Display Ce registre permet d'indiquer le nombre vertical affiché
7 Vertical Sync Position Ce registre permet d'indiquer la position verticale de la synchronisation
8 Interlace and Skew Ce registre permet d'indiquer l'entrelacé et l'inclinaison
9 Maximum Raster Address Ce registre permet d'indiquer l'adresse du rectangle maximale
10 Cursor Start Raster Ce registre permet d'indiquer le début du rectangle de curseur
11 Cursor End Raster Ce registre permet d'indiquer la fin du rectangle de curseur
12 Display Start Address (High) Ce registre permet d'indiquer la partie haute du début de l'affichage de l'écran
13 Display Start Address (Low) Ce registre permet d'indiquer la partie basse du début de l'affichage de l'écran
14 Cursor Address (High) Ce registre permet d'indiquer la partie haute de l'adresse du curseur.
15 Cursor Address (Low) Ce registre permet d'indiquer la partie basse de l'adresse du curseur.
16 Light Pen Address (High) Ce registre permet d'indiquer la partie haute de l'adresse du crayon lumineux.
17 Light Pen Address (Low) Ce registre permet d'indiquer la partie basse de l'adresse du crayon lumineux.

Remarque



Dernière mise à jour : Vendredi, le 6 juillet 2018