Zaawansowana architektura magistrali mikrokontrolerów
Zaawansowana architektura magistrali mikrokontrolerów (AMBA) firmy ARM jest otwartym standardem spełniania wymagań wzajemnych połączeń na chipie do łączenia i sterowania blokami funkcjonalnymi w projektach typu system-on-a-chip (SoC). Ułatwia opracowywanie projektów wieloprocesorowych z dużą liczbą kontrolerów i urządzeń peryferyjnych. Wbrew nazwie, od samego początku AMBA miała zakres wykraczający daleko poza granice urządzeń mikrokontrolerowych. Obecnie AMBA jest szeroko stosowana w wielu częściach ASIC i SoC, w tym w procesorach aplikacji używanych w dzisiejszych małych urządzeniach przenośnych, takich jak smartfony . AMBA jest zarejestrowanym znakiem towarowym ARM Ltd. [jeden]
AMBA została wprowadzona do ARM w 1996 roku. Pierwszymi magistralami AMBA były Advanced System Bus (ASB) i Advanced Peripheral Bus (APB). W swojej drugiej iteracji, AMBA 2 w 1999 roku, firma ARM dodała magistralę o wysokiej wydajności AMBA (AHB) z protokołem z jedną krawędzią zegara. W 2003 roku firma ARM wprowadziła trzecią generację, AMBA 3, która zawierała Advanced Extensible Interface (AXI) dla jeszcze większej wydajności połączeń oraz Advanced Trace Bus (ATB) jako część rozwiązania CoreSight do debugowania i śledzenia chipów. W 2010 roku wprowadzono wymagania AMBA 4, zaczynając od AMBA 4 AXI4, a następnie w 2011 [2] rozszerzając spójną szerokość systemu poprzez AMBA 4 ACE. W 2013 r. [3] wprowadzono wymagania AMBA 5 CHI (Coherent Hub Interface) z przeprojektowaną szybką warstwą transportową i funkcjami zaprojektowanymi w celu zmniejszenia zatorów.
Obecnie protokoły te są de facto standardem dla procesorów wbudowanych, ponieważ są dobrze udokumentowane i mogą być używane bez opłat licencyjnych.
Podejścia rozwojowe
Ważną cechą SoC jest nie tylko zawarte w nim bloki konstrukcyjne, ale także sposób ich połączenia. AMBA to rozwiązanie do interakcji bloków ze sobą.
Wymagania AMBA mają na celu:
- ułatwienie rozwoju produktów z wbudowanym mikrokontrolerem za pierwszym razem z jednym lub większą liczbą procesorów, układów GPU lub obsługi sygnałów,
- być technologicznie niezależnym, umożliwiając ponowne wykorzystanie rdzeni IP , peryferiów i makrokomórek systemowych w różnych procesach IC,
- zachęcać do rozbudowy systemu modułowego w celu poprawy niezależności procesora i tworzenia bibliotek IP urządzeń peryferyjnych i systemowych wielokrotnego użytku;
- zminimalizować infrastrukturę krzemową przy zachowaniu wysokiej wydajności i niskiego zużycia na chipie.
Wymagania protokołu AMBA
Wymagania AMBA określają standard połączeń on-chip do opracowywania wysokowydajnych wbudowanych mikrokontrolerów. Jest wspierany przez ARM Limited z szerokim udziałem międzybranżowym.
Wymagania AMBA 5 definiują następujące autobusy/relacje:
- Zaawansowana magistrala o wysokiej wydajności (AHB5, AHB-Lite)
- Interfejs koncentratora koherentnego CHI (CHI) [3]
Wymagania AMBA 4 definiują następujące autobusy/relacje:
- AXI Coherency Extensions (ACE) - szeroko stosowane w najnowszych procesorach ARM Cortex-A, w tym Cortex-A7 i Cortex-A15
- AXI Coherency Extensions Lite (ACE-Lite)
- Zaawansowany rozszerzalny interfejs 4 (AXI4)
- Zaawansowany rozszerzalny interfejs 4 Lite (AXI4-Lite)
- Zaawansowany rozszerzalny interfejs 4 Stream (AXI4-Stream v1.0)
- Zaawansowana magistrala śledzenia (ATB v1.1)
- Zaawansowana magistrala peryferyjna (APB4 v2.0)
Wymagania AMBA 3 definiują cztery autobusy/relacje:
- Advanced Extensible Interface (AXI3 lub AXI v1.0) - szeroko stosowany w procesorach ARM Cortex-A, w tym Cortex-A9
- Zaawansowana magistrala o wysokiej wydajności Lite (AHB-Lite v1.0)
- Zaawansowana magistrala peryferyjna (APB3 v1.0)
- Zaawansowana magistrala śledzenia (ATB v1.0)
Wymagania AMBA 2 definiują trzy autobusy/relacje:
- Zaawansowana magistrala o wysokiej wydajności (AHB) - szeroko stosowana w konstrukcjach opartych na ARM7, ARM9 i ARM Cortex-M
- Zaawansowana magistrala systemowa (ASB)
- Zaawansowana magistrala peryferyjna (APB2 lub APB)
Wymagania AMBA (wersja 1) definiują dwa autobusy/relacje:
- Zaawansowana magistrala systemowa (ASB)
- Zaawansowana magistrala peryferyjna (APB)
Cechy opóźnień i poziomów napięć na magistrali nie dyktują wymagań.
Rozszerzenia koherencji AXI (ACE i ACE-Lite)
ACE , zdefiniowany jako część wymagań AMBA 4, rozszerza AXI o dodatkowy sposób sygnalizacji transmisji o szerokiej koherencji. [4] Ta funkcja koherencji pozwala wielu procesorom współdzielić pamięć i obejmuje technologie takie jak przetwarzanie big.LITTLE firmy ARM . Protokół ACE-Lite umożliwia jednokierunkową lub inną spójność IO, taką jak połączenie sieciowe, które może [tylko] czytać z w pełni spójnych pamięci podręcznych procesorów ACE.
Zaawansowany rozszerzalny interfejs (AXI)
AXI , trzecia generacja interkonektu AMBA, zdefiniowana w wymaganiach AMBA 3, ma na celu rozwój wysokowydajnych mediów o wysokiej częstotliwości i zawiera cechy, które sprawiają, że jest on odpowiedni dla szybkich interkonektów submikronowych:
- oddzielne fazy adresu/sterowania i danych
- obsługa niewyrównanych transferów danych przy użyciu stroboskopów bajtowych
- transmisje pakietowe z podanym tylko adresem początkowym
- wydawanie wielu zewnętrznych adresów z nieuporządkowanymi odpowiedziami
- łatwość dodawania etapów rejestru, aby zapewnić niewielkie opóźnienia.
Zaawansowana magistrala o wysokiej wydajności (AHB)
AHB to protokół wprowadzony w wariancie Advanced Microcontroller Bus Architecture 2 opublikowanym przez ARM Ltd.
Oprócz poprzedniej realizacji posiada następujące cechy:
- wiele szerokości magistrali (64/128/256/512/1024 bitów).
Prosty transfer AHB zawiera fazę adresu i podsekwencję fazy danych (bez stanów oczekiwania: tylko dwa cykle magistrali). Dostęp do urządzenia docelowego jest kontrolowany przez MUX (bez warstwy Z), rozpoznając w ten sposób dostęp do magistrali jednego hosta na raz.
AHB-Lite to podgatunek AHB formalnie zdefiniowany przez standard AMBA 3. Ten podgatunek upraszcza rozwój magistrali z pojedynczym nadrzędnym.
Zaawansowana magistrala peryferyjna (APB)
APB jest przeznaczony do uzyskiwania dostępu do wolnej (niskiej prędkości) kontroli, takiej jak połączenie z rejestrami na peryferiach systemu. Podobnie jak AHB, ta magistrala ma adres i fazy danych, ale znacznie skróconą, nieskomplikowaną listę sygnałów (na przykład nie ts).
Produkty AMBA
Rodzina AMBA Products IP Synthesizable Core ( IP ) jest licencjonowana przez ARM Limited , która implementuje magistralę cyfrową w SoC, aby efektywnie przenosić i przechowywać dane przy użyciu wymagań protokołu AMBA. Rodzina AMBA obejmuje AMBA Network Interconnect (CoreLink NIC-400), Cache Coherent Interconnect (CoreLink CCI-500) , kontrolery pamięci SDRAM (CoreLink DMC-400), kontrolery DMA (CoreLink DMA-230, DMA-330), kontrolery pamięci podręcznej poziomu 2 (L2C-310) itp.
Wielu producentów wykorzystuje magistrale AMBA do rozwoju bez ARM. Jako przykład , Infineon używa szyny AMBA dla ADM5120 SoC opartego na architekturze MIPS .
Rywale
- Wishbone by OpenCores - darmowa i otwarta architektura magistrali (dawniej od Silicore)
- Technologia magistrali IBM CoreConnect stosowana w produktach wbudowanych IBM Power Architecture , a także w wielu innych produktach podobnych do SoC z rdzeniami Xilinx MicroBlaze lub podobnymi
- IPBus przez IDT
- Avalon to zastrzeżona magistrala systemowa firmy Altera do użytku w ich układach SoC Nios II [5]
- Protokół Open Core (OCP) firmy Accellera
- HyperTransport (HT) AMD (choć jest to magistrala off-chip, a nie on-chip)
- QuickPath Interconnect (QPI) firmy Intel (chociaż jest to magistrala off-chip, a nie on-chip)
- wirtualny udział przez PICC jest darmowy i open source
Zobacz także
- Specyfikacja funkcjonalna
- Master/Slave (technologia)
Linki
- ↑ Licencja na znak towarowy AMBA, http://arm.com/about/trademarks/arm-trademark-list/AMBA-trademark.php Zarchiwizowane 5 czerwca 2016 r. w Wayback Machine
- ↑ Nowe wymagania AMBA 4 Optymalizuj spójność dla heterogenicznych wielordzeniowych układów SoC, http://www.arm.com/about/newsroom/new-amba-4-specification-optimizes-coherency-for-heterogenous-multicore-socs.php Zarchiwizowane od 17 września 2016 w Wayback Machine
- ↑ 1 2 ARM ogłasza wymagania AMBA 5 CHI w celu włączenia wysokowydajnej, skalowalnej technologii jednoukładowej, http://www.arm.com/about/newsroom/arm-announces-amba-5-chi-specyfikacja-to -enable-high-performance-highly-scalable-system-on-chip.php Zarchiwizowane 20 listopada 2017 r. w Wayback Machine
- ↑ Kriouile, A. i Serwe, W. (2013). Formalne studium wymagań ACE dla spójnej jednoukładowej pamięci podręcznej. W formalnych metodach dla wymagających obiektów przemysłowych (s. 108-122). Springer Berlin Heidelberg., ISBN 978-3-642-41010-9
- ↑ Avalon . Pobrano 17 czerwca 2018 r. Zarchiwizowane z oryginału w dniu 1 marca 2015 r.
Linki
- Strona główna AMBA Specification — firmy ARM
- AMBA ARM
- Dokumentacja AMBA —od ARM