Suivez-nous sur X

|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Note : traduction par David Brunet.
Les puces spécialisées de l'Amiga ont un accès direct (DMA) à la mémoire vive qui leur permet d'effectuer des
tâches graphiques, audio et d'entrées/sorties indépendamment du processeur. Cette mémoire partagée
à laquelle les puces spécialisées et le processeur peuvent accéder directement est appelée mémoire Chip.
Les puces personnalisées et le processeur 680x0 partagent la mémoire Chip sur une base entièrement imbriquée.
Comme le 680x0 n'a besoin d'accéder au bus mémoire Chip que pendant chaque cycle d'horloge alternatif pour
fonctionner à pleine vitesse, le reste du temps, le bus mémoire Chip est libre pour d'autres tâches.
Les puces spécialisées utilisent le bus mémoire pendant ces cycles libres, ce qui permet effectivement au
processeur de fonctionner à pleine vitesse la plupart du temps.
Diagramme des Amiga OCS/ECS, montrant notamment la mémoire
Il arrive cependant que les puces spécialisées volent les cycles mémoire du 680x0. Par exemple, dans les modes vidéo
haute résolution, une partie ou la totalité des cycles normalement utilisés pour l'accès au processeur
sont nécessaires aux puces spécialisées pour le rafraîchissement de l'écran. Dans ce cas, le Copper
et le Blitter des puces spécialisées volent du temps au 680x0 pour des tâches qu'ils peuvent faire mieux
que lui. Ainsi, les canaux DMA du système sont conçus dans un souci de performance maximale.
Même si un tel vol de cycle se produit, il ne fait que bloquer l'accès du 680x0 à la mémoire interne partagée.
Lorsqu'on utilise la ROM ou la mémoire externe, également appelée mémoire Fast, le 680x0 fonctionne toujours
à pleine vitesse.
Les capacités DMA des puces spécialisées varient en fonction de la version des puces et du modèle Amiga.
L'OCS (Original Chip Set) que l'on trouve dans l'A1000 pouvait accéder aux 512 premiers kilooctets
de mémoire vive. La plupart des A1000 n'ont que 512 ko de mémoire, donc une partie de la mémoire Chip
est utilisée pour les besoins du système d'exploitation.
Une version ultérieure des puces spécialisées que l'on trouve dans les premiers A500 et A2000 a remplacé
la puce Agnus originale (8361) par une version plus récente appelée Fat Agnus (8370/8371). La puce Fat Agnus
peut accéder à 512 ko de mémoire Chip, en DMA, tout comme l'Agnus originale, mais peut également accéder à une mémoire
supplémentaire de 512 ko de mémoire Slow ou pseudo-Fast située à l'adresse ($00C0 0000). Comme la mémoire
Slow peut être utilisée pour les besoins du système d'exploitation, ceci permet aux puces spécialisées
d'utiliser la totalité des 512 ko de mémoire Chip.
Le nom de "mémoire Slow" vient du fait que les conflits de bus avec les puces spécialisées peuvent toujours
se produire même si seul le processeur peut accéder à la mémoire. Comme la mémoire Slow est arbitrée par
la même interface qui contrôle la mémoire Chip, les puces spécialisées peuvent bloquer l'accès du processeur
à la mémoire Slow dans les modes vidéo haute résolution.
La version plus récente d'Agnus et des puces spécialisées que l'on trouve dans la plupart des A500 et
A2000 est connue sous le nom de "Enhanced Chip Set" ou ECS. Fat Agnus de l'ECS (8372A) peut accéder à
un mégaoctet de mémoire Chip. Elle est compatible avec la Fat Agnus originale (8370/8371) que l'on trouve
dans les modèles A500 et A2000 antérieurs. En outre, la Fat Agnus de l'ECS gère les normes vidéo NTSC et
PAL sur une seule puce.
Dans l'A3000, l'ECS peut accéder à deux mégaoctets de mémoire Chip.
La quantité de mémoire Chip est importante car elle détermine la quantité de données graphiques, audio
et disque sur laquelle les puces spécialisées peuvent opérer sans le processeur 680x0. Le tableau suivant
résume les configurations de base de la mémoire de l'Amiga.
Modèle |
Mémoire Chip (modèle de base) |
Mémoire Chip maximale |
Mémoire totale (modèle de base) |
Mémoire totale maximale |
Amiga 1000 |
256 ko |
512 ko |
256 ko |
9 Mo |
Amiga 500 |
512 ko |
1 Mo |
1 Mo |
9 Mo |
Amiga 2000 |
512 ko |
1 Mo |
1 Mo |
9 Mo |
Amiga 3000 |
1 Mo |
2 Mo |
2 Mo |
plus de 1 Go |
Une autre caractéristique principale du matériel Amiga est sa capacité à contrôler dynamiquement quelle
partie de la mémoire Chip est utilisée pour l'affichage en arrière-plan, pour l'audio et pour les sprites.
L'Amiga n'est pas limité à une petite zone spécifique de mémoire pour un tampon de trame. Au lieu de cela,
le système permet d'afficher des plans binaires, des listes de contrôle des processeurs de sprites, des
listes d'instructions de coprocesseurs ou des listes de contrôle de canaux audio n'importe où dans la mémoire
Chip.
Cette même région de la mémoire est accessible par le Blitter. Cela signifie, par exemple, que l'utilisateur
peut stocker des images partielles dans des zones dispersées de la mémoire Chip et utiliser ces images
pour des effets d'animation en les remplaçant rapidement sur l'écran tout en sauvegardant et en restaurant
les images d'arrière-plan. En fait, l'Amiga comprend une gestion d'un micrologiciel pour la définition et le
contrôle de l'affichage ainsi qu'une gestion des objets animés intégrés dans les champs de jeu
("playfields"), la partie statique de la zone de visualisation.
|