Section courante

A propos

Section administrative du site

Introduction

Le Tandy 1000 TX est de conception modulaire pour permettre une flexibilité maximale dans la configuration du système. Le micro-ordinateur se compose d'une unité principale, d'un clavier amovible avec câble enroulé et d'un moniteur. L'unité principale est fournie avec un unité de disquettes interne 3,5" 720 Ko. Les types standard de moniteurs utilisés avec le Tandy 1000 TX sont le moniteur monochrome composite et le moniteur couleur RVB. Comme ces unités sont modulaires, vous pouvez les placer sur le dessus de l'unité principale ou à n'importe quel endroit pratique.

Le Tandy 1000 TX est livré en standard avec 640 Ko de mémoire vive (RAM). Une mise à niveau optionnelle de 128 Ko peut être ajoutée à la carte mère principale, pour un total de 768 Ko de RAM. Les 128 Ko supérieurs sont utilisés exclusivement comme RAM vidéo, laissant 640 Ko pour l'utilisation du système, étant la RAM maximale prise en charge par la carte mémoire TX.

Le Tandy 1000 TX est livré en standard avec 640 Ko de RAM système. Une RAM de 128 Ko en option peut être ajoutée sur la carte système pour étendre la mémoire à 768 Ko octets, la RAM maximale autorisée par la carte de mémoire système.

Les autres caractéristiques comprennent un port d'imprimante parallèle, un port série, deux interfaces de manettes de jeux intégrées, un haut-parleur pour le retour audio et une prise casque avec contrôle du volume.

L'unité principale est le coeur du Tandy 1000 TX. Il abrite l'assemblage logique principal, l'alimentation du système et l'unité de disquette. L'ensemble logique principal est une grande carte montée au bas de l'unité principale et interconnectée au clavier, à l'alimentation et au unité de disque par une série de câbles. Le bloc d'alimentation est un type de régulateur à découpage de 67 Watts, conçu pour fournir une capacité d'alimentation adéquate pour un système entièrement configuré ayant tous les emplacements d'option utilisés.

L'unité de disquette utilise des disquettes 3,5" double face, double densité pour lire, écrire ou entreposer des données. Ce sont des disquettes à secteurs logiciels. L'ensemble du lecteur de disque est installé dans l'unité principale. La disquette entrepose environ 720 Ko (de données formaté). Tous les programmes système, à l'exception de la séquence de démarrage du système, sont entreposés sur disquette.

Fiche technique

Voici les caractéristiques du «Tandy 1000TX» de «Tandy Radio Shack» :

Spécification Description
Fabricant Tandy Radio Shack
Modèle Tandy 1000TX
Date de fabrication 1987
Clavier Clavier à course complète, 92 touches, 12 touches de fonction
Microprocesseur Intel 80286 cadencé à 8 MHz
Coprocesseur Coprocesseur mathématique Intel 80287 optionnel
Mémoire vive 640 Ko extensible jusqu'à 768 Ko
Ensemble de puces 8237-5 DMA, 8259A, 8253
Modes texte 80x25 caractères ou 40x25 caractères
Modes graphiques CGA/TGA, 160x200 pixels, 320x200 pixels, 640x200 pixels
Couleurs 16 couleurs
Son 3 voix + 1 canal sonore
Dimensions 354 x 290 x 97 mm
Ports d'entrée/sortie Clavier, 2 x manettes de jeux, sortie vidéo moniteur, sortie vidéo composite, crayon lumineux, port parallèle, port série, 5 fentes d'extension internes, sortie audio mono
Intégré dans le média Un unité de disquette 3,5" + un disque dur de 20 Mo en option ou un unité de disquette 5,25"
Alimentation Alimentation intégrée
Système d'exploitation Tandy MS-DOS 3.22, DeskMate 2 et GW-BASIC inclus avec le système

Microprocesseur 80286

Le 80286 (U13) est un microprocesseur 16 bits avancé et hautes performances doté de capacités spéciales pour les systèmes multi-tâches et multi-utilisateurs. Deux modes de fonctionnement sont disponibles dans le 80286, le mode d'adresse réel et le mode d'adresse protégé virtuelle. En mode d'adressage réel, le 80286 est compatible avec les logiciels 8086 et 8088 existants et permet l'adressage d'un mégaoctet d'espace mémoire. Le Tandy 1000 TX ne prend pas en charge le mode d'adresse virtuelle protégée.

Coprocesseur mathématique numérique 80287 en option

Le 80287 (U15) en option exécute des fonctions arithmétiques et logarithmiques à grande vitesse et des opérations trigonométriques augmentant les performances d'un système 80286. Les augmentations de performances sont obtenues par la capacité du 80287 à effectuer des calculs mathématiques plus rapidement que le 80286, et également par l'exécution d'instructions mathématiques en parallèle avec le 80286.

Génération d'horloge

Toutes les horloges requises par le système sont générées par le contrôleur de processeur personnalisé (U52). Il existe deux circuits d'horloge indépendants alimentés par une horloge à double oscillateur (Y1) dont toutes les autres horloges sont dérivées.

L'horloge de 16 MHz est acheminée vers le contrôleur de processeur (U52), générant les signaux de sortie PRCLK, DMACLK et SCLK. Les circuits de commutation d'horloge nécessaires pour faire basculer le microprocesseur 80286 entre le mode 8 MHz et 4 MHz, ainsi que la logique permettant d'éviter tout court cycle pendant un cycle de commutation d'horloge, sont mis en oeuvre dans le contrôleur de processeur IC (U52). Si le signal XD3 est affirmé haut pendant une écriture d'entrée/sortie sur le port 0062h, alors le signal de sortie PRCLK est de 16 MHz, ce qui fait fonctionner le 80286 en mode 8 MHz. Si le signal XD3 est déclaré bas pendant une écriture d'entrée/sortie sur le port 0062h, le signal de sortie PRCLK est à 8 MHz, faisant fonctionner le 80286 en mode 4 MHz. Lorsque la réinitialisation est générée, le signal RES* est déclaré bas et met par défaut le Tandy 1000 TX en mode 8 MHz.

La puce de contrôleur de processeur contrôle également les états d'attente pour insérer le nombre approprié d'états d'attente requis pour un mode de fonctionnement à deux horloges. Lorsque le signal PRCLK est de 16 MHz (mode 8 MHz), quatre états d'attente sont insérés dans tous les cycles de mémoire et d'entrée/sortie en 8 bits. Lorsque le signal PRCLK est de 8 MHz (mode 4 MHz), alors deux états d'attente sont insérés pendant tous les cycles de mémoire et d'entrée/sortie de 8 bits. Pendant tous les cycles de mémoire 16 bits, un seul état d'attente est inséré dans les modes 8 MHz et 4 MHz.

Le PRCLK est ensuite acheminé à travers trois résistances d'amortissement pour produire les signaux PRCLK pour le 80286, PRCLKA pour le coprocesseur mathématique 80287 et PRCLKB pour la logique de commande DRAM/DMA.

Les DMACLK et SCLK sont des signaux de sortie destinés à être utilisés par le système. La fréquence de sortie DMACLK est 1/2 du signal PRCLK et la fréquence de sortie SCLK est 1/2 du signal PRCLK. Les deux sont synchronisés par réinitialisation sur le signal de sortie PRCLK. Après une réinitialisation, DMACLK et SCLK sont maintenus au niveau bas jusqu'à ce que le 80286 affiche l'état S1 = 0. Les SCLK et DMACLK effectuent la première transition sur le front descendant de PRCLK, suivi d'un état Ts les synchronisant avec PRCLK.

Le SCLK est tamponné par l'IC U68 (74ALS244) et filtré par R51, C198 et FB7, puis est acheminé vers le bus d'extension pour une utilisation sur la carte optionnelle. Le DMACLK est filtré par R37, FB3 et C171, puis est acheminé vers le contrôleur DMA (U11).

Voici un tableau montrant toutes les horloges générées à partir de 16 MHz dans les deux modes :

  Mode de 8 MHz Mode de 4 MHz
PRCLK 16 MHz 8 MHz
SCLK 8 MHz 4 MHz
DMACLK 4 MHz 2 MHz

Le contrôleur CPU génère trois autres horloges. Ils sont dérivés de l'oscillateur d'horloge 28,63636 MHz (Y1). Ce sont OSC, 3,58 MHz et 1,19 MHz. Le signal d'entrée 28 MHz est divisé par 2 pour générer OSC, étant tamponné par U68 et filtré par R49, C190, C190A et FB6. L'OSC est ensuite acheminé vers les emplacements de bus d'extension pour les horloges vidéo de toute carte vidéo en option. Le signal 28 MHz est également divisé par 8, générant l'horloge de 3,58 MHz étant acheminée vers le générateur de son (U7). Le 28 MHz est également divisé par 24 pour devenir l'horloge de 1,19 MHz, étant acheminée vers l'entrée d'horloge de la minuterie d'intervalle 8254-2 (U12).

Génération de signaux de commande et de contrôle

Les signaux de commande et de contrôle nécessaires au fonctionnement du Tandy 1000 TX sont générés par le contrôleur CPU (U52). Les signaux de commande sont décodés à partir des signaux d'état de la CPU S0*~S1 * et M/IO * pendant le cycle Ts. Les signaux décodés indiquent le type de cycle à exécuter (MEMR*, MEMW*, IOR*, IOW*, INTA*). Les signaux de commande (ALE, DT/R*, DSDEN0*, DSDEN1 *, MEMCYC) contrôlent le verrouillage des adresses, déterminent le sens et l'activation des tampons du bus de données et démarrent un cycle de mémoire. Le tableau suivant indique le décodage des signaux d'état du CPU :

M/IO* S1* S0* Type de cycle de bus
0 0 0 Accusé de réception d'interruption
0 0 1 Lecture d'entrée/sortie
0 1 0 Écriture d'entrée/sortie
0 1 1 Aucun: inactif
1 0 0 Arrêter ou fermer
1 0 1 Lecture de la mémoire
1 1 0 Écriture en mémoire
1 1 1 Aucun: inactif

Les A0 et BHE * sont décodés pour déterminer la largeur de transfert de données vers et depuis le microprocesseur. Le tableau suivant montre la largeur de transfert de données en fonction de l'état de A0 et BHE* :

BHE* A0 Largeur du transfert de données
0 0 Transfert de mots
0 1 Transfert d'octets de D8 à D15
1 0 Transfert d'octets de D0 à D7
1 1 Non utilisé

Tampon de commande

Certains des signaux de commande générés par le contrôleur CPU (U52) nécessitent une mise en mémoire tampon dans le système. Les CI (U68) et (U22) implémentent cette fonction. Les circuits intégrés mettent en mémoire tampon les signaux de commande vers le bus système pour les emplacements de bus d'extension, les périphériques et également le contrôleur vidéo. Les signaux LMEGCS* et CPUHLDA contrôlent les tampons. Lorsque CPUHLDA est déclaré actif (haut), il désactive le tampon (U22). (Les sorties sont tri-déclarées.) Cette situation indique au système que le contrôleur DMA a accédé au bus système. Lorsque CPUHLDA est annulé (faible), les tampons sont activés, ce qui permet au bus d'être piloté.

Contrôle DRAM

Le décodage d'adresse du microprocesseur pour la matrice de mémoire DRAM (Dynamic Random Access Memory) est généré par le CI de commande DRAM/DMA personnalisé (U53). Ces signaux sont verrouillés par ALE en interne sur le CI de commande DRAM/DMA et maintenus pendant tout le cycle. Les signaux de décodage d'adresse sont RAS0*, RAS1 *, RAS2*, CASL* et CASH*. Ceux-ci sont décodés par une certaine adresse, en fonction du type de DRAM utilisé et de la configuration des cavaliers MC0 et MC1. Les configurations de mémoire prises en charge par le Tandy 1000 TX sont de 640 Ko ou 768 Ko (dont 128 Ko de mémoire vidéo). Le tableau suivant montre les différentes options disponibles sur le CI de contrôle DRAM/DMA :

Option de mémoire Configuration du cavalier MC1 MC0 Mémoire système Mémoire système totale* Contrôler Banque Intervalle d'adressages
1 E9 à E10 0 1 512 Ko 640 Ko RAS0 512 Ko 000000 à 07FFFF
2 Aucun 1 1 640 Ko 768 Ko RAS0 512 Ko 000000 à 07FFFF
RAS1 128 Ko 080000 à 09FFFF

Le MEMCYC déclenche les signaux de commande pour le tableau DRAM. Le signal MEMCYC (généré par le contrôleur de microprocesseur (U52) indique qu'un cycle DRAM BUS est en cours. Le MEMCYC active RAS0*, RAS1*, RAS2*, CASH* et CASL*, en fonction de l'adresse du cycle de bus. Les lignes RAS(x)* sélectionnées deviennent actives au prochain front descendant de PRCLKB. Après 1/2 cycle PRCLKB au front montant de l'horloge, le MUX est généré et commute l'adresse DRAM (MA0-MA8) de l'adresse de ligne à l'adresse de colonne. Après un autre cycle PRCLKB au prochain front montant de l'horloge, CASL* et/ou CASH* sont affirmés. Deux signaux CAS sont générés en interne dans le circuit intégré de contrôle DRAM/DMA pour permettre d'accéder aux cycles de mots ou d'octets dans la matrice DRAM. Le tableau suivant montre l'état de chaque signal de commande pendant chaque type de cycle de bus :

Intervalle d'adresse Largeur du bus   RAS0* RAS1* RAS2* CASL* CASH*
000000 à 07FFFFH Paire Octet 0 1 1 0 1
000000 à 07FFFFH Impaire Octet 0 1 1 1 0
000000 à 07FFFFH Paire Mot 0 1 1 0 0
080000 à 09FFFFH Paire Octet 1 0 1 0 1
080000 à 09FFFFH Impaire Octet 1 0 1 1 0
080000 à 09FFFFH Paire Mot 1 0 1 0 0

Les signaux WE0* et WE1* assurent la commande de lecture et d'écriture. Les deux sont affirmés en même temps par IC (U24) et sont contrôlés par MEMW* (écriture en mémoire). Si WE0* et WE1* sont affirmés haut, c'est un cycle de lecture : s'ils sont affirmés bas, c'est un cycle d'écriture.

Contrôle de rafraîchissement

La broche OUT1 du temporisateur interne 8254-2 (U12) génère une impulsion haute active toutes les 15 utilisations. Le front montant du signal OUT1 cadence 1/2 d'un 74LS74 (U4), générant le signal REFREQ. Le REFREQ est un signal d'entrée vers le contrôleur DMA 8237 (U11). Cette entrée vers U11 est en fait la demande de transfert de données 0 (DREQO), demandant au DMA d'effectuer un cycle DMA. Le canal 0 du contrôleur DMA a été programmé pour effectuer un seul transfert de la mémoire vers un périphérique d'entrée/sortie, tel qu'un unité de disquette. Cela provoque l'exécution d'une lecture de mémoire à une certaine adresse. Chaque fois que le signal REFREQ est généré, le contrôleur DMA incrémente l'adresse et effectue une autre lecture mémoire. Cela provoque la lecture de toutes les lignes de mémoire toutes les 4 ms pour maintenir la stabilité des données dans la DRAM.

Contrôle de la ROM du BIOS

Le CI DRAM/DMA (U53) fournit le décodage d'adresse du microprocesseur utilisé pour la sélection de ROM. Le signal généré est appelé ROMCS* (ROM Chip Select) et est utilisé comme Chip Enable pour les ROM BIOS U38 et U39. Cette sortie est affirmée chaque fois que l'une des trois intervalles adressées est détectée, CPHLDA est inactif et ALE est affirmé. Les trois intervalles d'adresses sont 0E0000-0FFFFFH, EE0000-EFFFFFH et FE0000-FFFFFFH. Les lignes d'adresse SA1 à SA15 sont fournies aux ROM BIOS pour un contrôle d'adresse inférieur. La taille standard de l'EPROM utilisée dans le Tandy 1000 TX est de 16K x 8 (128K bits). Le Tandy 1000 TX accepte des EPROM plus grandes de 32K X 8 (256K bits) si nécessaire. Les données sont mises en mémoire tampon sur le bus de données MD0 à MD15, contrôlé par le 82C205 IC (U14).

Réinitialiser le circuit

Le CPU Control IC (U52) contrôle la réinitialisation du système requise soit pour initialiser le système complet après la mise sous tension, soit pour redémarrer. Deux signaux de sortie de réinitialisation, RESET et RESCPU, sont actifs au niveau haut et générés lorsqu'une condition de mise sous tension est détectée ou lorsque le bouton de réinitialisation à l'avant de l'ordinateur est enfoncé. Le signal RESET est utilisé comme une réinitialisation générale du système, tandis que le signal RESCPU réinitialise le microprocesseur Intel 80286. Le signal RES* est l'entrée de (U52), ce qui signifie une condition de réinitialisation. Le signal RES* est généré soit à partir d'un réseau RC lors de la mise sous tension, soit à partir du commutateur de réinitialisation. Lors d'une mise sous tension, RES* est maintenu bas pendant la période de temps générée par la constante de temps RC de R24 et C135. C'est le temps qu'il faut à C135 pour passer à un haut actif. De plus, si l'interrupteur de réinitialisation est enfoncé, il applique une masse à C135 et le décharge. Cela affirme que RES* est bas jusqu'à ce que C135 se charge à nouveau à un niveau logique haut.

Lors de la mise sous tension, le signal RES* est généré deux fois pour fournir une réinitialisation appropriée au CI de contrôle de l'UC (U52). Une seconde constante de temps RC est générée par R47A et C171A à l'entrée d'un inverseur de déclenchement de Schmidt (U66). Cela maintient la broche d'entrée de U4 (1/2 d'un 74LS74) élevée pendant environ 150 ms. Lorsque RESCPU est annulé après la première réinitialisation, le microprocesseur envoie la première commande au circuit intégré de contrôle du microprocesseur en abaissant SI*. Cela génère le premier front montant de DMACLK, se verrouillant dans U4. La sortie Q de U4 est ensuite acheminée vers un onduleur à collecteur ouvert (U67), qui décharge C135, affirmant à nouveau RES* bas et générant la deuxième réinitialisation. Le CR1A fournit une réinitialisation à U4 lorsque C135 est déchargé à au moins 0,7v. Une fois U4 réinitialisé, RES* est libéré et C135 est autorisé à se charger, annulant RES* et terminant la deuxième impulsion de réinitialisation. Lorsque le microprocesseur émet à nouveau la première commande, qui démarre DMACLK, U4 verrouille un niveau bas. C'est parce que l'entrée D de U4 est passée à un niveau bas à la fin de la deuxième réinitialisation. Le CI de contrôle CPU (U52) contrôle également en interne le signal RESCPU pour répondre aux exigences du Intel 80286 lors d'une condition d'arrêt détectée.

État d'attente et prêt pour la logique

Le contrôle de l'état d'attente est implémenté en interne dans le CPU Control IC. La fonction de la logique de contrôle de l'état d'attente est de faire correspondre la vitesse des différents dispositifs du Tandy 1000 TX à la vitesse du microprocesseur Intel 80286. Deux circuits affirment des états d'attente dans les cycles de mémoire et d'entrée/sortie. Une méthode est contrôlée par le périphérique auquel on accède, en utilisant l'entrée de signal IOCHRDY vers le circuit intégré de contrôle de l'UC. Si un périphérique nécessite des états d'attente supplémentaires dans le cycle de bus, le périphérique doit annuler IOCHRDY bas jusqu'à ce qu'il puisse desservir le cycle de bus. Une fois que le nombre requis d'états d'attente a été inséré, le dispositif doit affirmer IOCHRDY, provoquant l'affirmation de la sortie READY* du CI de contrôle de microprocesseur à l'état bas, ce qui indique au microprocesseur de terminer le cycle.

Intel 80286La deuxième méthode (interne au CPU Control IC) consiste en plusieurs états d'attente par défaut au cours des différents cycles de bus. Au cours d'un cycle mémoire de 16 bits (étant déterminé par l'assertion de AF16*), un état d'attente est automatiquement inséré. La valeur par défaut d'une mémoire 8 bits ou d'un cycle d'entrée/sortie est de quatre états d'attente. Cela peut être contourné en réduisant IOCHRDY. Tant que IOCHRDY est à un niveau logique bas, les états d'attente sont insérés indéfiniment. Le IOCHRDY ne doit pas être maintenu bas pendant plus de 15 usec car il arrêtera les cycles de rafraîchissement de la DRAM.

Logique NMI

Dans le Tandy 1000 TX, l'interruption non masquable (NMI) indique une condition d'erreur d'entrée/sortie ou un signal de condition d'erreur 80287 du coprocesseur numérique (NMI*). Les deux conditions d'erreur sont activées par le signal NMIEN, qui est généré par le contrôleur vidéo, Big Blue. Le signal INT287* (provenant du CI de contrôle CPU) devient actif lorsque le signal ERROR* est affirmé par le coprocesseur de mathématiques numériques.

Logique de contrôle 80287

La logique requise pour interfacer le coprocesseur mathématique 80287 avec le microprocesseur Intel 80286 est incorporée dans le circuit intégré de contrôle de l'UC. Cette logique décode les signaux sélectionnant et réinitialisent le 80287 et gère également les signaux Occupé*/Erreur* du 80287 vers l'UC. Le signal d'entrée 287CS* est un signal décodé d'adresse d'entrée/sortie utilisateur utilisé par le CI de commande de microprocesseur pour générer les signaux de commande vers le CI 80287. Le signal 287CS* est affirmé pendant l'adresse d'entrée/sortie 0F0h à 0FFh. Un décodage supplémentaire est fourni par le CPU Control IC, générant des signaux RES287, NPCS* et BUSY287*. Le tableau suivant définit le décodage interne :

Adresse hexadécimal Description
0F0 Effacer le coprocesseur mathématique occupé
0F1 Réinitialiser le coprocesseur mathématique occupé
0F8 à 0FF Sélection de puce de coprocesseur mathématique

Étant donné la commande d'effectuer une tâche, le coprocesseur 80287 envoie un signal BUSY* au CI de contrôle de l'UC. Avec l'assertion de la sortie BUSY287", ce signal est transmis à l'UC. Normalement, l'entrée BUSY* est transmise à la sortie BUSY287*. L'invalidation de BUSY* entraîne l'invalidation de BUSY287*. La sortie BUSY287* est verrouillée et la broche de sortie INT287* est forcée à l'état haut pendant cette période d'occupation si l'entrée ERROR* devient active (signalant une erreur du processeur numérique). Jusqu'à ce qu'elle soit effacée par un cycle d'écriture d'entrée/sortie à l'adresse 0F0h ou 0F1h, les deux signaux restent alors actifs. Le verrou d'interruption pour INT287* et le verrou d'occupation pour BUSY287* sont effacés après une réinitialisation du système. La broche de sortie RES287 du CPU Control IC gère la réinitialisation du coprocesseur 80287. Ceci peut être activé par une réinitialisation du système ou une écriture d'entrée/sortie à l'adresse 0F1h. Ce signal n'est actif que pendant la durée pendant laquelle le signal source est actif, car il n'est pas verrouillé en interne.

Tampons d'adresse du microprocesseur

Les U20, U21 (74ALS573) et U22 (74AzS244) implémentent la mise en mémoire tampon des lignes d'adresse vers le système. Les SA01 à SA19 sont mis en mémoire tampon et verrouillés pour les emplacements de bus d'extension et les périphériques d'entrée/sortie. Le ALE est utilisé pour verrouiller SA01 à SA19 et maintenu pendant tout le cycle de bus. Les SA01 à SA19 sont également utilisés pour adresser les ROM du BIOS et le contrôle DRAM/DMA. Les A17 à A23 sont acheminés directement vers la commande DRAM/DMA pour générer des signaux décodés d'adresse mémoire. Les lignes d'adresse multiplexées MA0 à MA7 sont également générées et mises en mémoire tampon dans la mémoire DRAM par le CI de commande DRAM/DMA (U53). Pour répondre aux exigences d'adresse pour les DRAM, le signal MUX multiplexe SA1 à SA16 en interne vers le CI de contrôle DRAM/DMA. Pendant un cycle DMA, un 74LS245 (U3) est utilisé pour mettre en mémoire tampon S0 à S7 directement depuis le contrôleur DMA (U11). Les S8 à S16 sont mis en mémoire tampon en interne sur le contrôleur DRAM/DMA. Les S17 à S19 sont tamponnés par u22 (1/2 d'un 74AzS244).

Tampons de données et logique de conversion

Le CI 82A205 (U14) fournit les bus de données, les tampons et les pilotes pour D0 à D15 au système. Trois bus de données sont générés, SD0 à SD7 pour les emplacements de bus d'extension, MD0 à MD15 pour l'accès à la mémoire depuis la ROM et la DRAM, et D0 à D15, étant routé vers le bus de données du microprocesseur 80286 et du coprocesseur 80287. La direction et le contrôle des tampons de données sont fournis par les signaux d'entrée du circuit intégré 82A205 (DT/R*, DSDEN0*, DSDEN1*, SBHE* et SA0). LE DT/R* contrôle la direction du chemin de données lors d'une lecture ou d'une écriture. Les signaux DSDEN0* et DSDEN1* contrôlent les transferts de données de mot et d'octet, tandis que SBHE* et SA0 déterminent les tampons à activer lors d'un accès d'octet. La logique de conversion est également implémentée dans le circuit intégré 82A205, contrôlé par ENHLB* et DIRHLB. Cette logique de conversion permet aux données d'être transférées de l'octet de données inférieur à supérieur ou supérieur à inférieur pour répondre aux exigences du microprocesseur ou du périphérique de réception. Un 74ALS245 met en mémoire tampon le bus périphérique interne XD0 à XD7 du bus de données système SD0 à SD1. La validation et la direction sont contrôlées par les signaux XBUFDIR* et XBUFEN*, étant générés par un IFL PLS173 (U19).

Décodage d'entrée/sortie

Le CI de contrôle vidéo (U36), un 74HCT138 (U49), un IFL PLS173 (U19) et un CI 74HCT138 (U34) réalisent le décodage d'adresse d'entrée/sortie. Ces quatre circuits intégrés fournissent tous les signaux de sélection de puce nécessaires au système. Les signaux de sortie AA0, BA1 et CA2 du contrôleur vidéo sont des lignes de sélection de périphérique codées étant directement transmises au CI 74HCT138, dans lequel le décodage d'adresse d'entrée/sortie est généré. Le deuxième 74HCT138 (U34) et le PLS173 (U19) décodent l'adresse système pour générer les autres signaux de sélection de décodage d'adresse d'entrée/sortie.

Contrôleur de disquette

Le contrôleur de disquette intégré (FDC) interface le système avec le lecteur de disquette (FDD). Jusqu'à deux FDD internes 720 Ko (format MFM double densité) peuvent être installés. Le circuit FDC peut être organisé selon les sous-sections suivantes :

Puce uPD765A

La puce uPD765A FDC (U51) intègre la plupart de la logique de contrôle nécessaire pour :

Pendant une opération de lecture ou d'écriture de données sur le FDD, la puce FDC génère une demande DMA pour un transfert d'octet vers ou depuis la mémoire. La puce FDC continue de générer des demandes DMA jusqu'à ce que la quantité préprogrammée de données soit transférée comme indiqué par la génération d'un signal de comptage de terminaison (TC). Une fois le TC atteint, la puce FDC génère une interruption vers le système via INTFDC afin que les données d'état et de résultat puissent être traitées.

Interface système

Divers circuits intégrés verrouillent et tamponnent les données vers et depuis le système. Un DORWR* est généré à la broche 6 de (U62) sur une écriture d'entrée/sortie sur le port 3F2 (en hexadécimal). Ce signal verrouille l'octet de données étant défini comme le bit de sélection de variateur, XDSO* et XDSl*, moteur allumé, MTRON*, DMA et demande d'interruption (DMA/INTE), et un signal de réinitialisation au contrôleur FDC U51 (FDCRST*).

Génération d'horloge

Le FDC Support IC (U64) génère toutes les horloges requises par le circuit Floppy Disk. Ces horloges sont dérivées d'un signal d'entrée de 16 MHz. FDCCLK, requis par le contrôleur FDC (U51), est dérivé en divisant l'horloge de 16 MHz par 4. L'horloge de 4 MHz résultante est également utilisée comme compteur de retard pour le signal de demande DMA DRQ ainsi que comme horloge de référence pour la précompensation d'écriture circuit. L'horloge de 4 MHz génère également une impulsion de 250 nanosecondes à une fréquence de 500 KHz. Le signal 500 KHz est utilisé comme horloge d'écriture pour le contrôleur FDC.

Précompensation

Le circuit de précompensation est implémenté en interne sur le circuit intégré de support FDC (U64). Le bit de données d'écriture peut être décalé au début ou à la fin du flux de bits série, selon les exigences de l'unité de disquettes. Cette fonction est programmable et contrôlée par les signaux FDC IC PS0 et PS1.

Séparateur de données

Le circuit intégré de support FDC (U64) contient également le circuit séparateur de données. Le séparateur de données récupère les signaux d'horloge et de données du flux de bits série de l'unité de disquettes. Le circuit intégré de support FDC ne prend en charge que le mode MFM ou double densité.

Interface de lecteur de disque

Toutes les sorties FDC vers le FDD sont pilotées par des tampons à collecteur ouvert 7414 à courant élevé ou des onduleurs à collecteur ouvert 7416. Toutes les entrées FDC du FDD sont mises en mémoire tampon par des onduleurs 74HCT14 SCHMIDT déclenchés. Les entrées sont montées à bord par des résistances de terminaison de 150 ohms. Toutes les sorties doivent être terminées sur le dernier FDD par des résistances de 1500 ohms.

Contrôleur d'interruption

La puce du contrôleur d'interruption 8259A (U16) fournit l'entrée d'interruption masquable à l'UC. Le 8259A dispose de huit entrées d'interruption contrôlées par des commandes logicielles. Il peut masquer (désactiver) et prioriser (organiser la priorité) pour générer l'entrée d'interruption vers le microprocesseur. Les huit interruptions sont affectées comme suit :

Interruption Fonction Description
#0 Canal de la minuterie 0 Minuterie de logiciel
#1 Clavier Code de clavier reçu
#2 Interruption dans le bus Contrôleur de disque dur
#3 Interruption dans le bus Modem
#4 Interruption dans le bus RS-232
#5 Synchronisation vertical Interruption de bus en option
#6 Contrôleur de disquette Interruption de bus en option
#7 Imprimante Interruption de bus en option

Les interruptions 0 et 1 sont connectées aux fonctions de la carte système comme indiqué dans le tableau. Les interruptions 2 à 4 sont connectées directement au bus d'extension, avec les fonctions assignées normales répertoriées dans le tableau. Les interruptions 5 à 7 sont connectées via un commutateur (S2) à la fonction de carte système répertoriée et sont également connectées au bus d'extension. Pour utiliser les interruptions 5, 6 ou 7 sur le bus, la fonction de la carte système doit être déconnectée (en mettant le commutateur approprié sur fermé). Notez que la déconnexion de la fonction normale de la carte système peut entraîner l'échec ou le fonctionnement incorrect de certains programmes d'application.

Contrôleur vidéo

Le prochain bloc majeur du Tandy 1000 TX est le circuit d'interface vidéo. Cette partie personnalisée contient toute la logique nécessaire pour générer un affichage vidéo couleur compatible IBM. La logique de l'interface vidéo se compose du circuit vidéo personnalisé à 84 broches (U36), de quatre RAM 64K X 4 (U18, U33, U35 et U48), d'un tampon 74LS244 (U71) et de la logique associée pour la génération de vidéo composite et RGBI.

Le circuit d'interface vidéo Tandy 1000 TX contrôle 128 Ko de mémoire. Cette RAM est partagée par le microprocesseur et la vidéo. Normalement, la vidéo ne nécessite que 16 Ko ou 32 Ko pour l'écran vidéo, et le reste des 128 Ko est disponible pour l'utilisation de la mémoire système. Le circuit personnalisé de l'interface vidéo Tandy 1000 TX est composé d'une conception équivalente à 6845, d'une génération/synchronisation d'adresses RAM dynamique et d'une logique de contrôleur d'attribut vidéo.

La fonction normale du circuit personnalisé d'interface vidéo est la suivante. Une fois que le 6845 est programmé avec un ensemble correct de valeurs de fonctionnement, un multiplexeur 4:1 génère les entrées d'adresse vers la mémoire vive dynamique. Ce MUX bascule entre l'adresse vidéo (6845) et l'adresse du microprocesseur ainsi qu'entre l'adresse de ligne et de colonne. De plus, la puce d'interface vidéo fournit les signaux de synchronisation de la RAM et génère un signal d'attente, VIDWAIT*, vers le microprocesseur pour une synchronisation appropriée avec les cycles d'accès à la RAM vidéo.

Les sorties des puces RAM sont connectées uniquement au circuit personnalisé de l'interface vidéo, de sorte que toutes les opérations de lecture/écriture du processeur sont mises en mémoire tampon par cette partie. Pendant un cycle d'affichage normal, les données vidéo provenant des puces RAM sont d'abord verrouillées dans le verrou d'attribut vidéo et le verrou de caractère vidéo. L'interface vidéo nécessite une organisation mémoire de 64K X 16 et verrouille 16 bits de mémoire lors de chaque accès à la RAM. A partir de la sortie des deux bascules, les données sont fournies à la ROM de caractères pour les modes alpha ou aux registres à décalage pour les modes graphiques. Un dernier MUX 2:1 bascule entre le premier plan et l'arrière-plan dans les modes alpha.

À partir du MUX 2:1, les données RGBI sont combinées avec les données de sélection de couleur du PC et verrouillées dans le verrou de pré-palette. Ce verrou synchronise les données RGBI avant qu'elles ne soient utilisées pour adresser la palette. Le masque de palette MUX bascule entre les données RGBI entrantes et le registre d'adresse de palette. Lors d'une écriture du microprocesseur dans la palette, ce registre d'adresses sélectionne l'un des 16 emplacements de palette. De plus, le masque de palette MUX permet à n'importe quel bit RGBI d'entrée d'être mis à zéro.

La palette permet de recartographier les 16 couleurs dans n'importe quelle organisation souhaitée. Normalement, la palette est définie pour une cartographie 1:1 (rouge = rouge, bleu = bleu,...) pour la compatibilité PC. Cependant, changer instantanément les couleurs à l'écran est un outil puissant pour les programmes d'animation ou de graphisme.

Après la palette, les données RGBI sont resynchronisées dans le registre Post Palette. La logique finale avant que les données RGBI ne soient mises en mémoire tampon de la puce est le Border MUX. Ce MUX permet de remplacer la bordure par n'importe quelle couleur sélectionnée par le loquet de couleur de bordure. Ce verrou est normalement désactivé dans les modes PC, mais il est utilisé dans tous les modes PC junior.

Minuterie

La dernière fonction Tandy 1000 TX autre que les entrées/sorties est la puce de minuterie 8254-2 (U12). Cette partie est composée de trois compteurs programmables indépendants. L'horloge des trois compteurs est de 1,1925 MHz. Les compteurs 0 et 1 sont activés en permanence. Le compteur 2 est contrôlé par le port 0062 (en hexadécimal), bit 0. Le compteur 0 est connecté à l'interruption système 0 et est utilisé pour les fonctions de synchronisation logicielle. Le compteur 1 est utilisé pour la synchronisation de la fonction de rafraîchissement. Le compteur 2 est connecté au circuit audio et également au port 0061 (en hexadécimal), bit 5.

Interface de manette de jeux

L'interface du manette de jeux convertit les informations de position des manettes de jeux portables (1 ou 2) en données de microprocesseur. Chaque manette de jeux fournit un ou deux boutons-poussoirs et une position X, Y pour un total de quatre bits chacun. Vous pouvez utiliser deux manettes. La poignée de la manette de jeux est reliée à deux potentiomètres montés perpendiculairement l'un à l'autre ; un pour la position X, un pour la position Y. À travers le câble, la carte logique principale applique +5 VDC d'un côté et la terre de l'autre des pots. Le pot racleur est le signal de position : une tension comprise entre 0 et +5 VDC. Ce signal est appliqué à une entrée d'un comparateur U9. L'autre entrée du comparateur est le signal de référence (une rampe entre 0,0 et +5,0 volts). Lorsque le signal de position est égal ou inférieur au signal de référence, la sortie du comparateur devient vraie. Cette sortie du comparateur est le bit de données de position X ou Y. La rampe est réinitialisée à 0,0 VDC chaque fois qu'une écriture d'entrée/sortie est effectuée sur le port 200/201 (en hexadécimal). Les signaux IOW* et JOYCS* allument 42, ce qui draine C114 à 0,0 volt. Lorsque Q2 est désactivé, Q1, R15, R13, R14 et CR1 créent une source de courant constant chargeant linéairement C114 à +5,0 VDC en 1,12 milliseconde. Les informations de la manette de jeux sont "lues" par le microprocesseur au port 200/201 (en hexadécimal) via U10.

Interface clavier

La fonction d'entrée/sortie suivante du Tandy 1000 TX est le circuit personnalisé de l'interface clavier. Le coeur de cette partie personnalisée est constitué de plusieurs registres de lecture-écriture étant utilisés pour contrôler la logique de l'interface du clavier. Pour l'interface avec le connecteur du clavier, un registre à décalage de type 164 est utilisé pour charger les données série et permettre au microprocesseur de les lire comme 8 bits parallèles.

Circuit sonore

Le circuit sonore est l'une des cinq fonctions d'entrée/sortie du Tandy 1000 TX. Le circuit fournit une sortie sonore pour le haut-parleur interne ainsi que pour un circuit sonore externe. La principale source sonore du Tandy 1000 TX est le générateur de sons complexes 76496 (U7). Ce périphérique dispose de trois générateurs de sons et d'un générateur de bruit blanc. Chaque générateur de sons peut être programmé pour la fréquence et l'atténuation. De plus, ce périphérique a une broche d'entrée audio connectée à la sortie fermée du canal de minuterie 2. Ce signal d'entrée audio est mélangé avec le signal du générateur de son et fourni à la broche de sortie audio. A partir de la sortie du 76496, le signal sonore est connecté à un double multiplexeur analogique (US). Le multiplexeur est commuté par le port 61, bit 4, et désactive le signal audio vers le haut-parleur, les prises casque et la sortie audio externe. La sortie du multiplexeur (US) est acheminée vers les amplificateurs audio U76 pour la sortie audio externe et U2 pour les prises haut-parleur et casque internes. Le volume du haut-parleur interne peut être réglé par une commande de volume accessible par l'utilisateur (R6). Lorsque la prise casque est utilisée, le haut-parleur interne est désactivé.

Contrôleur DMA

Les principaux composants du circuit d'accès direct à la mémoire (DMA) se composent d'un contrôleur DMA 8237A-5 (U11), du contrôle DRAM/DMA (U53) et d'un tampon d'adresse bidirectionnel 74ALS245 (U3).

Initialisation : Une opération DMA

Lorsqu'une opération DMA est demandée par un logiciel ou par un périphérique via une ligne DREQ, le contrôleur DMA 8237A-5 initie une demande de maintien de bus vers l'UC 80286 via le CI contrôleur d'UC. Le contrôleur d'UC arbitre la demande de maintien d'UC du contrôleur DMA à l'UC. Lorsque l'UC accuse réception de la demande de maintien, les lignes de commande, d'adresse et de données de l'UC sont à trois états. Le contrôleur de microprocesseur contrôle la direction et active la mémoire ou l'adresse périphérique et les bus de données correspondant à l'opération DMA demandée. Pendant l'opération DMA, le 8237A-5 agit en tant que maître de bus et, avec le CI de contrôleur de microprocesseur, génère tous les signaux de commande de bus et les signaux d'adresse et de données. Les transferts DMA se poursuivent pour le nombre de comptes et vers l'adresse de destination ayant été précédemment programmée dans les registres DMA.

Cycles de bus DMA

Pendant le cycle du bus de données, le 8237A-5 sort d'abord l'adresse supérieure (A8 à A15) sur ses sorties de données (XD0 à XD7), à verrouiller dans la mémoire tampon en interne à la commande DRAM/DMA par le signal stroboscopique d'adresse (AS) du 82371-5. Ensuite, l'adresse inférieure (A0 à A7) est mise directement sur le bus d'adresse S par le 8237A-5. Les signaux d'accusé de réception de demande DMA, DACK2 et DACK3, sont utilisés avec RFRSH* et ACK* pour permettre au registre de page d'être émis en tant qu'adresse supérieure (SA16 et A17 à A23), qui sont mis en mémoire tampon par U22 dans les emplacements d'extension du système. Un cycle de bus DMA peut être prolongé par l'entrée RDY du contrôleur DMA. La mémoire DMA lue DMAMR* est acheminée vers le circuit intégré de contrôleur de microprocesseur pour étendre le cycle de bus DMA en insérant une période d'horloge DMA comme état d'attente. Le contrôleur de microprocesseur insère l'état d'attente en contrôlant l'entrée DMARDY du contrôleur DMA. Les périphériques d'entrée/sortie peuvent étendre le cycle du bus DMA en contrôlant le signal IOCHRDY du bus d'extension. Les temps d'installation doivent être respectés pour que l'IOCHRDY soit reconnu.

Interface de port série RS232

Le port RS232 est un port de communication asynchrone à canal unique. Le cour du port série est l'élément de communication asynchrone WD8250-A ACE (U70) fonctionnant comme une interface d'entrée/sortie de données série. Il effectue une conversion série-parallèle sur les caractères de données reçus d'un périphérique ou d'un modem et une conversion parallèle-série1 sur les caractères de données reçus du microprocesseur. Les informations d'état rapportées incluent le type et la condition des opérations de transfert de l'ACE ainsi que toutes les conditions d'erreur détectées pendant les opérations de données série. Le WD8250-A comprend un générateur de débit en bauds programmable qui permet un fonctionnement de 50 à 9600 bauds. Le WD8250-A est fourni avec une horloge de 1,8432 MHz à partir de l'oscillateur (Y2). Le WD8250-A peut être adapté aux besoins de l'utilisateur en étant capable de supprimer les bits de démarrage, les bits d'arrêt et les bits de parité. Il prend en charge 5, 6, 7 ou 8 caractères de bits de données avec 1, 14 ou 2 bits d'arrêt. Les capacités de diagnostic fournissent des fonctions de bouclage des signaux d'émission/réception et d'entrée/sortie. L'ACE est programmé en sélectionnant l'adresse d'entrée/sortie hexadécimale 3F8 à 3FE (en hexadécimal) pour le principal et 2F8 à 2FE (en hexadécimal) pour le secondaire et en écrivant des données sur le port. Les bits d'adresse A0, A1 et A2 permettent de définir les modes de fonctionnement en sélectionnant les différents registres à programmer ou à lire. Une interruption est fournie au système à partir de l'IRQ4 pour le fonctionnement principal et de l'IRQ3 pour le fonctionnement secondaire. Cette interruption est active haut. Le bit 3 du registre de contrôle du modem doit être mis à l'état haut afin d'envoyer des interruptions au système. Lorsque ce bit est au niveau haut, toute interruption autorisée par le registre d'activation d'interruption provoque une interruption.

Interface de port d'imprimante parallèle

L'interface d'entrée/sortie finale du Tandy 1000 TX est l'interface imprimante. Cette partie fournit tous les signaux nécessaires à l'interface avec une imprimante parallèle typique. Ces signaux sont 8 lignes de sortie de données, plus divers signaux de contrôle d'établissement de liaison. De plus, l'interface de l'imprimante génère une interruption vers l'UC si elle est activée.

Bus d'extension système

Voici les exigences d'interface d'entrée/sortie pour les cartes optionnelles 8 bits compatibles PC. Chacun des cinq emplacements a une prise de connecteur à 62 broches. L'affectation des broches de connecteur suivante est utilisée sur les emplacements d'option PC; cette prise de connecteur a 62 broches.

Broches Signal Nom d'entrée/sortie
A1 NMI Entrée
A2 SD7 Entrée/sortie
A3 SD6 Entrée/sortie
A4 SD5 Entrée/sortie
A5 SD4 Entrée/sortie
A6 SD3 Entrée/sortie
A7 SD2 Entrée/sortie
A8 SD1 Entrée/sortie
A9 SD0 Entrée/sortie
A10 IOCHRDY Entrée
A11 AEN Sortie
A12 SA19 Sortie
A13 SA18 Sortie
A14 SA17 Sortie
A15 SA16 Sortie
A16 SA15 Sortie
A17 SA14 Sortie
A18 SA13 Sortie
A19 SA12 Sortie
A20 SA11 Sortie
A21 SA10 Sortie
A22 SA9 Sortie
A23 SA8 Sortie
A24 SA7 Sortie
A25 SA6 Sortie
A26 SA5 Sortie
A27 SA4 Sortie
A28 SA3 Sortie
A29 SA2 Sortie
A30 SA1 Sortie
A31 SA0 Sortie
B1 GND Prise de terre
B2 BRESET Sortie
B3 +5 Volts Alimentation
B4 IRQ2 Entrée
B5 -5 Volts Alimentation
B6 FDCDRQ Entrée
B7 -12 Volts Alimentation
B8 N/C  
B9 +12 Volts Alimentation
B10 GND Prise de terre
B11 SMEMW Sortie
B12 SMEMR Sortie
B13 IOW Sortie
B14 IOR Sortie
B15 DACK3 Sortie
B16 DRQ3 Entrée
B17 DACK1 Sortie
B18 DRQ1 Entrée
B19 RFRSH Sortie
B20 SCLK Sortie
B21 IRQ7 Entrée
B22 IRQ6 Entrée
B23 IRQ5 Entrée
B24 IRQ4 Entrée
B25 IRQ3 Entrée
B26 FDCDACK Sortie
B27 T/C Sortie
B28 BALE Sortie
B29 +5 Volts Alimentation
B30 OSC Sortie
B31 GND Prise de terre

Description du signal du bus d'extension

Les descriptions de signaux suivantes pour le bus système d'entrée/sortie concernent les cartes optionnelles compatibles avec le bus PC. Notez que toutes les lignes de signal sont des niveaux compatibles TTL et que les adaptateurs d'entrée/sortie doivent être conçus avec un maximum de deux charges Shottky (LS) de faible puissance par ligne.

Signal Description
SCLX (B20) Le signal SCLK est l'horloge système et a une période de 125ns en mode 8 MHz, ou 25011s en mode 4 MHz. Il a un cycle de service de 50% et n'est utilisé que pour la synchronisation avec le microprocesseur. Il n'est pas destiné à des utilisations nécessitant une fréquence fixe.
SA0 à SA19 (A12 à A31) Ces lignes sont 20 bits d'adresse utilisés pour adresser la mémoire et les périphériques d'entrée/sortie dans le Tandy 1000 TX. Ils sont déclenchés sur le bus système lorsque le signal BALE est haut et sont verrouillés sur le front descendant du signal BALE. La génération de ces signaux est accomplie par le microprocesseur ou un contrôleur DMA. Les SA0 à SA19 sont actifs en haut.
BALE (B28) BALE est une activation de verrouillage d'adresse tamponnée générée par le CI de contrôle de l'UC. Il est utilisé pour verrouiller les adresses valides du microprocesseur et peut être utilisé par une carte d'entrée/sortie pour indiquer une adresse de microprocesseur valide, en conjonction avec AEN. BALE est tiré à un état élevé pendant les cycles DMA, incluant les cycles de rafraîchissement. BALE est actif haut.
AEN (A11) AEN est un signal d'activation d'adresse utilisé pour retirer le microprocesseur et d'autres périphériques du bus afin de permettre les transferts DMA. Lorsque AEN est actif, le contrôleur DMA contrôle le bus d'adresse, le bus de données, les lignes de commande READ et les lignes de commande WRITE. AEN est actif haut.
SD0 à SD7 (A2 à A9) Ces signaux sont les bits de bus de données 0 à 7 du microprocesseur vers la mémoire et les périphériques 1/0 sur le bus. SD0 est le bit le moins significatif (LSB) et SD7 est le bit le plus significatif (MSB).
BRESET (B2) BRESET est utilisé pour réinitialiser ou initialiser la logique d'extension pendant le temps de mise sous tension, une panne de tension de ligne ou lorsque l'interrupteur de réinitialisation sur le panneau avant est enfoncé. BRESET est actif haut.
NMI (A1) Ce signal indique une erreur système non corrigible lorsqu'il est actif. Le signal NMI fournit à la carte système des informations de parité sur la mémoire ou les périphériques sur le bus. Le NMI est actif bas.
IOCERDY (A10) Ce signal est utilisé pour allonger les cycles d'entrée/sortie ou de mémoire lorsqu'il est réduit par le dispositif actif. (Ce signal ne doit pas être maintenu bas plus de 15 microsecondes.) Tout périphérique lent utilisant cette ligne doit le réduire immédiatement dès qu'il détecte son adresse valide et une commande READ ou WRITE. IOCHRDY est actif haut (état Prêt).
IRQ2 à IRQ7 (B4, B21 à B25) Ces signaux sont utilisés pour indiquer au microprocesseur qu'un périphérique d'entrée/sortie a besoin d'attention. Les demandes d'interruption sont hiérarchisées, IRQ2 ayant la priorité la plus élevée et IRQ7 la plus faible. Une demande d'interruption est générée lorsqu'un signal IRQ est élevé et maintenu haut jusqu'à ce que le microprocesseur reconnaisse l'interruption.
IOR (B14) IOR est un signal de lecture demandant à un périphérique d'entrée/sortie de conduire ses données sur le bus de données (SD0 à SD7). Cette ligne peut être pilotée par le CPU Control IC ou par le contrôleur DMA. Le IOR est actif bas.
IOW (B13) IOW est un signal d'écriture demandant à un périphérique d'entrée/sortie de lire ou de verrouiller les données du bus de données (SD0 à SD7). Cette ligne peut être pilotée par le CPU Control IC ou par le contrôleur DMA. IOW est actif bas.
SMEMR (B12) SMEMR est un signal de lecture demandant à un périphérique de mémoire de conduire ses données sur le bus de données (SD0 à SD7). Cette ligne peut être pilotée par le CPU Control IC ou par le contrôleur DMA via le CPU Control IC. Le SMEMR n'est actif que lorsque l'adresse mémoire se trouve dans la première intervalle de 1 mégaoctet (000000-0FFFFFH). SMEMR est actif bas.
SMEW (B11) SMEMW est un signal d'écriture demandant à un dispositif de mémoire de lire ou de verrouiller les données du bus de données (SD0 à SD7). Cette ligne peut être pilotée par le CPU Control IC ou par le contrôleur DMA via le CPU Control IC. SMEMW n'est actif que lorsque l'adresse mémoire se trouve dans la première intervalle de 1 mégaoctet (000000-0FFFFFH). SMEMW est actif bas.
DRQ1, FDCDRQ, et DRQ3 (B18, B6, B16) Ces lignes sont des requêtes DMA désynchronisées par des périphériques pour obtenir un service DMA. Ils sont hiérarchisés, DRQ1 ayant la priorité la plus élevée, FDCDRQ suivant et DRQ3 la plus basse. Une demande DMA est générée en conduisant une ligne DRQ active au niveau haut et en la maintenant jusqu'à ce que le signal DACK correspondant (accusé de réception DMA) devienne actif. DRQ1, FDCDRQ et DRQ3 n'effectuent que des transferts de 8 bits. Toutes les lignes DRQ sont actives haut.
DACK1, FDCACK, et DACK3 (B17, B26, B15) Ces lignes sont des signaux d'accusé de réception DMA utilisés pour accuser réception des demandes DMA DRQ1, FDCDRQ et DRQ3. Tous les signaux DACK sont actifs bas.
RFRSH (B19) Ce signal est utilisé pour indiquer un cycle de rafraîchissement pouvant être utilisé par une carte mémoire pour rafraîchir la mémoire dynamique. RFRSH est actif bas et généré toutes les 15 usec.
T/C (B27) T/C est un signal fournissant une impulsion lorsque le nombre de terminaux pour n'importe quel canal DMA est atteint. T/C est actif haut.
OSC (B30) OSC est un signal d'oscillateur étant une horloge à grande vitesse avec une période de 70 nanosecondes (14,31818 mégahertz). Il a un cycle de service de 50%.

Cartographie mémoire

Adresse Nom Fonction allouée
000000 à 07FFFF 512 Ko de mémoire vive système Mémoire système
080000-09FFFF Mémoire vive système/vidéo de 128 Ko ou mémoire d'extension 128 Ko Mémoire système et mémoire d'affichage vidéo ou mémoire système
0A0000-08FFFF Mémoire vive vidéo de 128 Ko Réservé à la mémoire d'affichage graphique
0E0000-0FFFFF Mémoire ROM du BIOS de 16 Ko Réservé au BIOS
EE0000-EFFFFF Mémoire Mémoire ROM
FE0000-FFFFFF Mémoire Mémoire ROM

Adresse des ports d'entrée/sortie

Voici la liste des adresses de ports d'entrée/sortie qu'utilise le carte maîtresse pour communiquer avec ses composantes :

Adresse Utilisé Description
0000h à 001Fh 0000h à 001Fh Fonction DMA
0020h à 003Fh 0020h à 0027h Contrôleur d'interruption
0040h à 005Fh 0040h à 0047h Minuterie
0060h à 007Fh 0060h à 006Fh Fonction PIO
0080h à 009Fh 0080h à 009Fh Registre de la page DMA
00A0h à 00BFh 00A0h Registre de masque NMI
00C0h à 00DFh 00C0h à 00C7h Générateur de sons
00E0h à 00FFh 00E0h à 00FFh Coprocesseur numérique
0100h à 01FFh   Réservé
0200h à 020Fh 0200h à 0207h Interface de manette de jeux
0210h à 02F7h   Réservé
02F8h à 02FFh 02F8h à 02FFh Port série secondaire (COM2)
0300h à 031Fh   Réservé
0320h à 032Fh   Contrôleur de disque dur (facultatif)
0330h à 036Fh   Réservé
0370h à 0377h 0370h à 0377h Contrôleur de disquette 2 (facultatif)
0378h à 037Fh 0378h à 037Fh Imprimante
0380h à 03CFh   Réservé
03D0h à 03DFh 03D0h à 03DFh Système vidéo
03E0h à 03EFh   Réservé
03F0h à 03F7h 03F0h à 03F7h Contrôleur de disquette 1
03F8h à 03FFh 03F8h à 03FFh Port série principal (COM1)
0400h à FFFFh   Non utilisable


Dernière mise à jour : Dimanche, le 30 Mai 2021