Interfície extensible avançada
L'Advanced eXtensible Interface (amb acrònim anglès AXI) és un protocol de bus de comunicació en xip desenvolupat per ARM.[1] Forma part de les especificacions Advanced Microcontroller Bus Architecture 3 (AXI3) i 4 (AXI4).[2]
AXI es va introduir l'any 2003 amb l'especificació AMBA3. El 2010, una nova revisió d'AMBA, AMBA4, va definir el protocol AXI4, AXI4-Lite i AXI4-Stream. AXI està lliure de drets i la seva especificació està disponible gratuïtament a ARM.
AMBA AXI especifica molts senyals opcionals, que es poden incloure en funció dels requisits específics del disseny,[3] fent d'AXI un bus versàtil per a nombroses aplicacions.
Si bé la comunicació a través d'un bus AXI és entre un sol iniciador i un únic objectiu, l'especificació inclou una descripció detallada i senyals per incloure interconnexions N:M, capaços d'estendre el bus a topologies amb més iniciadors i objectius.[4]
AMBA AXI4, AXI4-Lite i AXI4-Stream han estat adoptats per Xilinx i molts dels seus socis com a principals busos de comunicació en els seus productes.[5][6]
AXI defineix un mecanisme bàsic de sincronisme, compost per un senyal xVALID
i xREADY
.[7] El senyal xVALID
és impulsat per la font per informar a l'entitat de destinació que la càrrega útil del canal és vàlida i que es pot llegir a partir d'aquest cicle de rellotge. De la mateixa manera, el senyal xREADY
és impulsat per l'entitat receptora per notificar que està preparada per rebre dades.
A l'especificació AXI, es descriuen cinc canals: [8]
- Canal de lectura de l'adreça (AR)
- Canal de lectura de dades (R)
- Canal d'adreça d'escriptura (AW)
- Canal d'escriptura de dades (W)
- Canal de resposta d'escriure (B)
A part d'algunes regles bàsiques d'ordenació,[9] cada canal és independent l'un de l'altre i té el seu propi parell de senyals d'enllaç xVALID/xREADY.
[9]
Referències
[modifica]- ↑ «Introduction to the Advanced Extensible Interface (AXI) - Technical Articles» (en anglès). Introduction to the Advanced Extensible Interface (AXI).
- ↑ «AMBA | Documentation» (en anglès). Arm Holdings.
- ↑ Arm Holdings. «AMBA AXI and ACE Protocol Specification» (en anglès). developer.arm.com p. 109–118. Arxivat de l'original el 5 de juliol 2019. [Consulta: 5 juliol 2019].
- ↑ Arm Holdings. «AMBA AXI and ACE Protocol Specification» (en anglès). developer.arm.com p. 23–24. Arxivat de l'original el 5 de juliol 2019. [Consulta: 5 juliol 2019].
- ↑ «AMBA AXI4 Interface Protocol» (en anglès). www.xilinx.com. Xilinx Inc.
- ↑ «AXI4 IP» (en anglès). www.xilinx.com. Xilinx Inc.
- ↑ Arm Holdings. «AMBA AXI and ACE Protocol Specification» (en anglès). developer.arm.com p. 37–38. Arxivat de l'original el 5 de juliol 2019. [Consulta: 5 juliol 2019].
- ↑ Arm Holdings. «AMBA AXI and ACE Protocol Specification» (en anglès). developer.arm.com p. 22–23. Arxivat de l'original el 5 de juliol 2019. [Consulta: 5 juliol 2019].
- ↑ 9,0 9,1 Arm Holdings. «AMBA AXI and ACE Protocol Specification» (en anglès). developer.arm.com. Arxivat de l'original el 5 de juliol 2019. [Consulta: 5 juliol 2019].