Le protocole AXI (Advanced eXtensible Interface) d'ARM : canaux d'écriture, de lecture, burst et handshake.
AXI sépare une transaction en plusieurs échanges. Une adresse, une donnée ou une réponse peut attendre sur son canal pendant que les autres canaux avancent.
Utiliser les cinq canaux
Canal
Ce qui circule
Sens de la valeur
AW
Adresse d’écriture et paramètres du burst
Maître vers esclave
W
Données d’écriture, masque d’octets et dernier mot
Maître vers esclave
B
Réponse d’écriture
Esclave vers maître
AR
Adresse de lecture et paramètres du burst
Maître vers esclave
R
Données et réponse de lecture
Esclave vers maître
Sur chaque canal, l'émetteur présente l'information et active VALID. Le récepteur commande READY, dans l'autre sens. Le transfert a lieu au front montant où les deux valent 1.
Active VALID dès que l'information est disponible, sans attendre READY. Jusqu'au transfert, conserve VALID et l'information associée. Cette règle concerne aussi bien les adresses que les données et les réponses.
Le maître présente AWADDR et les paramètres du burst. AWSIZE encode la taille du transfert en octets comme une puissance de deux ; AWLEN indique le nombre de mots moins un. L'adresse est reçue au handshake AWVALID / AWREADY.
Sur le canal W, WVALID accompagne chaque mot. WSTRB désigne les octets à écrire et WLAST le dernier mot. L'adresse et les données ont des handshakes indépendants : leur acceptation peut se produire à des cycles différents.
Une fois l'adresse et le dernier mot acceptés, l'esclave peut présenter BRESP avec BVALID. Le maître accepte cette réponse avec BREADY et vérifie le résultat, par exemple OKAY.
Recevoir une lecture par burst
Le maître envoie ARADDR, ARSIZE et ARLEN avec ARVALID. Après le handshake d'adresse, l'esclave fournit les mots sur RDATA, chacun accompagné de RVALID et RRESP.
Le maître indique sa capacité à recevoir avec RREADY. RLAST marque le dernier mot du burst. Si le récepteur attend, données et informations associées restent stables jusqu'au transfert.
Pour contrôler des registres avec des transactions d'un seul mot, poursuis avec AXI4-Lite.