AHB und AXI sind beide Busmaster. Diese beiden Busmaster sind Teil des AMBA-Busses (Advanced Microcontroller Bus Architecture). Es ist ein Ziel für Systemdesign mit hoher Leistung, Bandbreite und Frequenz.
Beide Busmaster sind korreliert, unterscheiden sich jedoch in vielen Aspekten, und die Unterschiede werden in diesem Artikel unten erwähnt.
Key Take Away
- AHB (Advanced High-Performance Bus) ist ein Protokoll für hochleistungsfähige Datenübertragungen mit geringer Latenz. Gleichzeitig ist AXI (Advanced eXtensible Interface) ein fortschrittlicheres Busprotokoll, das einen höheren Durchsatz und mehr Flexibilität bietet.
- AHB verwendet einen Single-Edge-Takt, während AXI einen Double-Edge-Takt verwendet, was zu schnelleren Datenübertragungsraten in AXI führt.
- AHB unterstützt eine feste Pipelinelänge, während AXI eine variable zulässt, was eine höhere Leistung und Anpassung ermöglicht.
AHB gegen AXI
AHB (Advanced High-Performance Bus) ist ein von ARM entwickeltes Busprotokoll, das in Mittel- bis High-End-SoCs weit verbreitet ist. AXI (Advanced eXtensible Interface) ist ebenfalls ein von ARM entwickeltes Busprotokoll und die neueste Version der AMBA-Protokollfamilie (Advanced Microcontroller Bus Architecture).
Advanced High-Performance Bus ist ein einkanaliger Bus, der das sehr beliebte Protokoll von ARM ist. Es unterstützt eine einzelne ausstehende Transaktion pro Busmaster. Die Buslatenzen von AHB Beginnen Sie bei 16-Byte-Transaktionen.
Einige Merkmale von AHB sind Single-Edge-Clock-Protokoll, geteilte Transaktionen, große Busbreiten, gesperrte Übertragungen.
AXI ist ein Mehrkanalbus mit 5 Kanälen, nämlich Lesedatenkanal, Schreibdatenkanal, Leseadresskanal, Schreibadresskanal und Schreibantwortkanal. AXI unterstützt mehrere ausstehende Transaktionen.
Die Buslatenzen von AXI beginnen bei 64 Byte Transaktionen. Einige Funktionen von AXI sind QoS, Write Strobes, Vollduplex-Kommunikationsmodus usw.
Vergleichstabelle
Vergleichsparameter | AHB | AXI |
---|---|---|
Vollständige Form | Fortschrittlicher Hochleistungsbus | Erweiterte erweiterbare Schnittstelle |
Kanal | Es ist ein einkanaliger Bus. | Es ist ein Mehrkanalbus. |
Eigenschaften | Vorzeitige Burst-Beendigung, gesperrte Übertragungen | QoS, Write Data Interleaving, nicht ausgerichtete Datenübertragung, Byte-Invarianz. |
Für einen einzelnen Slave zugewiesener Adressraum | Es ist 1 KB für AHB. | Für AXI sind es 4 KB. |
Burst-Längen | Burst-Längen für AHB sind 1, 2, 6, 16. (außer INCR-Typen) | Burst-Längen reichen von 1-16 für AXI3 und von 1-256 für AXI4. |
Was ist ABH?
AHB steht für Erweiterter Hochleistungsbus. Es ist ein Einzelkanalbus, der auch ein gemeinsam genutzter Bus mit einem Adresskanal, einem Lesedatenkanal und einem Schreibdatenkanal ist.
Jeder der Bus-Master in AHB ist mit einem gemeinsam genutzten Einzelkanal-Bus verbunden. AHB hat nur zwei Buszyklen in einer einfachen Transaktion, eine Adressphase und eine nachfolgende Datenphase. AHB hat große Busbreiten.
Wenn ein Benutzer in AHB die Timing-Anforderungen nicht erfüllen kann, unterstützt er die Pipeline nicht, die sich in seinem Pfad registriert.
Und aufgrund seiner Unfähigkeit, das Einfügen von Pipeline-Registern zu unterstützen, ermöglicht es keine höhere Frequenz und begrenzt stattdessen die maximale Frequenz für das Design.
AHB unterstützt nicht die QoS-Funktion, Write-Strobes und die Exclusive-Unterstützung. Es unterstützt nur gesperrte Übertragungen. Es hat eine geringe Verlustleistung und einen begrenzten Durchsatz. Außerdem sind die Burst-Längen in AHB festgelegt.
Sie sind 1, 2, 6, 16 außer im Fall von INCR. Bei INCR kann der Burst eine beliebige Länge haben, obwohl die Länge nicht geteilt wird. Außerdem kann es nur solange beliebig lang sein, bis es 4K nicht überschreitet.
AHB wurde in AMBAversion 2 von der ARM eingeführt Gesellschaft mit beschränkter Haftung und es war ein sehr beliebtes Protokoll, bis die neue Version AXI nicht eingeführt wurde.
Was ist AXI?
AXI steht für Advanced eXtensible Interface. Es ist ein Mehrkanalbus, der für die On-Chip-Kommunikation entwickelt wurde. Es handelt sich um eine leistungsstarke Hochfrequenz-Kommunikationsschnittstelle im Vollduplexmodus.
Es gibt 5 Kanäle in AXI und jeder ist unabhängig vom anderen.
Die Kanäle sind Write Address Channel (AW), Write Data Channel (W), Read Data Channel alias R (Read Response wird ebenfalls mitgeschickt), Read Address Channel (AR) und Write Response Channel (B).
Da AXI 5 parallel laufende Kanäle hat, sind viele Adern gewöhnungsbedürftig legen das Layout. Ein Benutzer kann ein Pipeline-Register irgendwo in den Weg eines beliebigen der Kanäle einfügen, und deshalb ermöglicht AXI eine höhere Betriebsfrequenz.
Einige der Funktionen von AXI sind unausgerichtete Datenübertragung (unter Verwendung von Strobes), getrennte Adresse/Steuerung, Datenphasen, Byte-Invarianz, Burst-basierte Transaktionen mit ausgegebener Startadresse, QoS, Transaktionsabschluss außerhalb der Reihenfolge, Write Data Interleaving und atomar Operationen.
Tatsächlich verfügt AXI über zusätzliche Signalisierungsmechanismen wie AxRegion und AxUser.
Es kann mehrere Datenübertragungen für eine einzelne Anforderung in AXI geben, was bedeutet, dass es sich um ein Burst-basiertes Protokoll handelt. Es erleichtert es, wenn eine große Datenmenge von oder zu Adressen eines bestimmten Musters übertragen werden muss.
Es gibt drei Arten von Bursts in AXI: FIXED, INCR und WICKELN. Die Länge dieser Bursts ist von Anfang an bekannt und kann bei AXI1 zwischen 16 und 3 und bei AXI1 zwischen 256 und 4 liegen.
Hauptunterschiede zwischen AHB und AXI
- AHB steht für Advanced High Performance Bus, was ein einkanaliger Bus ist. Während AXI ein Mehrkanalbus ist und für Advanced eXtensible Interface steht.
- AHB unterstützt den Abschluss von Transaktionen außerhalb der Reihenfolge nicht, während AXI den Abschluss von Transaktionen außerhalb der Reihenfolge unterstützt.
- AHB hat eine geringe Verlustleistung, während AXI eine hohe Verlustleistung hat.
- Die Auslastung des AHB-Busses ist im Vergleich zur AXI-Auslastung höher, da AXI 50 % mehr Strom verbraucht.
- Nicht ausgerichtete Datenübertragung mit Strobe und Byte-Invarianz sind einige der Funktionen, die AHB nicht unterstützen würde, aber AXI unterstützt.
- AHB unterstützt keine Write-Strobes, während AXI dies unterstützt.
- AHB unterstützt die gesperrte Übertragung. Im Fall von AXI unterstützt AXI 3 die gesperrte Übertragung, während AXI4 dies nicht tut.
- AHB unterstützt die exklusiven Übertragungen nicht, während AXI sie unterstützt.
- Die Buslatenzen des AHB-Busmasters beginnen niedriger im Vergleich zu denen der AXIs.
Letzte Aktualisierung: 11. Juni 2023
Sandeep Bhandari hat einen Bachelor of Engineering in Computers von der Thapar University (2006). Er verfügt über 20 Jahre Erfahrung im Technologiebereich. Er interessiert sich sehr für verschiedene technische Bereiche, darunter Datenbanksysteme, Computernetzwerke und Programmierung. Sie können mehr über ihn auf seinem lesen Bio-Seite.
Der Autor muss es genauer aufschlüsseln. Das kann nicht jeder verstehen.
Der Artikel war wirklich aufschlussreich. Es hat mir ein großes Verständnis vermittelt.
Ja, der Artikel ist sehr hilfreich. Es ist ziemlich detailliert.
Ja, ich stimme zu. Es hat viele Fragen geklärt, die ich hatte.
Der Vergleich war durchaus nützlich. Es ist ein sehr gut geschriebener Artikel.
Ich fand den Artikel sehr informativ und gut recherchiert.
Ich stimme zu. Es bietet einen klaren Einblick in AHB und AXI.
Es ist interessant, die Unterschiede zwischen AHB und AXI zu sehen.
Dieser Artikel ist zu komplex, als dass ihn jemand verstehen könnte.
Das sind tolle Informationen. AXI ist so viel besser als AHB.