![]() |
![]() |
|
UNE CARTE "PRAM" ST magazine - N°42 - juillet 1990 Voici
un montage destiné à ceux qui mettent au point des applications ou des
programmes de diagnostic sur cartouche, ou bien à ceux qui s’en
prennent carrément au TOS, je veux parler des “patcheurs fous”, mes
potes... Je ne sais pas
si vous êtes comme moi, mais j'ai horreur de passer 10 minutes à
effacer 2 REPROMs, 1 minute à les programmer, 10 secondes à les monter
sur leur support et... 1 seconde pour constater qu'il va falloir
recommencer ! Voici la solution que je vous propose : une mémoire vive
qui ne perd pas son contenu lorsque l'on coupe l’alimentation (PRAM =
Permanent RAM) ; l’énergie nécessaire à cette sauvegarde sera apportée
par 2 piles ordinaires (ou une pile au lithium si vous préférez). Le
principal avantage de cette solution est de permettre de modifier très
rapidement tout ou partie du contenu de la PRAM. Une fois l’application
mise au point de cette façon, vous pourrez la mettre en RAPPELS SUR LE PORT CARTOUCHE Les
caractéristiques de ce port ont été abondamment décrites dans les deux
articles de Diego Bonanni parus dans ST Magazine 37 (p.53 à 57) et 38
(p.50 à 59). Pour ceux quine les auraient pas sous la main, voici
quelques rappels :ll s'agit d'un connecteur 2x20 broches permettant
d’accéder aux 16 lignes de données du 68000. Seule une opération de
lecture peut être réalisée sur ces données (pas de signal W/Fl). De
plus, le signal d’acquittement d’échange (/DTACK) pour le port
cartouche étant géré de façon interne (par le GLUE), il faudra répondre
à toute opération de lecture aussi rapidement que possible (moins de
200 ns). Les signaux A1 à A15 permettent d'adresser 32K mots de 16 bits
(les signaux IUDS et /LDS sélectionnant respectivement les octets pairs
et impairs). Deux sorties supplémentaires /ROM4 et /ROM3 permettent de
disposer de 2 bancs mémoires de 64 Ko (donc 128 Ko au total). Le signal
/ROM4 est actif pour toute lecture dans l'intervalle FA0000 à FAFFFF
tandis que le signal /ROM3 est actif dans l’intervalle FB0000 à FBFFFF.
DESCRIPTION DU MONTAGE Deux boîtiers mémoires RAM statique de 32 Ko constituent le coeur du dispositif. J'ai utilisé des NEC 43256, mais d’autres conviennent aussi bien. Attention! choisir impérativement des versions à temps d’accès inférieur ou égal à 150 ns (ça servira pour une prochaine manip). Ces 2 boîtiers permettront de disposer de 64 Ko qui seront accessibles dans l'intervalle FA0000 à FAFFFF. L'intervalle FB0000 à FBFFFF sera utilisé uniquement pour réaliser les écritures dans la PRAM. Le circuit monostable IC7 permet de fabriquer une impulsion de 100ns retardée d’environ 40ns sur la transition descendante du signal /ROM3. Cette impulsion d'écriture sera transmise aux 2 FlAMs à travers le circuit IC3. Le circuit lC3 assure la sélection et la protection des circuits RAM. Un interrupteur SW1 permet d’interdire toute écriture dans les RAMs : celles-ci se comportent alors comme des REPROMs (le contenu ne peut pas être détruit accidentellement lors de l’exécution de l'application). Un autre interrupteur SW2, optionnel, permet la désélection permanente des RAMs : cette protection peut s'avérer utile lors des branchements/débranchements du module PRAM au ST. Le circuit lC6 (sorties en collecteur ouvert) isole les circuits alimentés (lC1,lC2 et IC3) lors de la mise hors tension du ST. Attention : prendre impérativement un 74LS266 pour lC6 et non la version HCMOS qui n'a pas les sorties en collecteur ouvert l... Les circuits IC4 et lC5 permettent de mémoriser le mot à écrire : ce dernier étant fourni sur les lignes d'adresse. Les 2 diodes D1 et D2 permettent d'appliquer sur les circuits IC1, IC2 et lC3 une tension suffisante pour le maintien des données (lorsque D1 conduit) ou le fonctionnement normal (lorsque D2 conduit). Enfin, la diode électroluminescente (LED) D3 signale que le ST est sous-tension.
RÉALISATION Le module PRAM
visible sur la photo a été câblé “à la main” avec du fil à wrapper
soudé entre les bornes des supports de composants. ll est évidemment
préférable de réaliser ce montage sur circuit imprimé (c’est plus
rapide, plus sûr, plus propre l...). Un tel circuit a d'ailleurs été
réalisé par “LOOK” et vous pouvez vous renseigner auprès de “Automatic
2000” (2, barrière de Bayonne, à Toulouse). UTILISATION Lorsque le
module PRAM est raccordé au port cartouche, on peut lire directement le
contenu des RAMs dans l'intervalle d'adresses FA0000 à FAFFFF. Pour
écrire (on ne peut écrire que mot par mot), on procède de la façon
suivante, grâce à cet exemple où l'on désire écrire SABCD en $FA1234
(donc $AB en $FA1234 et SCD en $FA1235) : En assembleur: TST.B $FAABCD En basic GFA :
Br=&HFA0000 ! base de lecture Une série de 3
programmes utilitaires (chargement de la PRAM avec un fichier,
vérification du contenu de la PRAM, sauvegarde de la PRAM dans un
fichier) est disponible sur la disquette du journal ("ST MAG—42"), et
le sera bientôt sur notre serveur, le bô 3615 STMAG. Bon travail et à
bientôt pour une manip beaucoup plus audacieuse : la
transformation d'un ST en TT ! Plus simplement, l’installation d’une
Jean Conter
|
||
![]() |
![]() |