معماری پیشرفته گذرگاه میکروکنترولر

معماری پیشرفته گذرگاه میکروکنترلر (AMBA) یک استاندارد باز و ابزار اتصال جهت متصل کردن و مدیریت بلوک‌های عملیاتی در طراحی‌های سیستم روی تراشه (SoC) است. این معماری، توسعه طراحی‌های چندپردازنده‌ای با تعداد زیادی از کنترولرها و لوازم جانبی را آسان می‌کند. از زمان ظهور این معماری، بر خلاف نام آن، دامنه AMBA فراتر از دستگاه‌های میکروکنترلر رفته‌است. امروزه AMBA به‌طور وسیعی در طیفی از قطعات ASIC و SoC استفاده می‌شوند که دربردارنده پردازنده‌های کاربردی هستند که در دستگاه‌های موبایل سیار مانند گوشی‌های هوشمند مورد استفاده قرار می‌گیرند. AMBA یک علامت تجاری ثبت شده از ARM با مسئولیت محدود است.

AMBA در سال 1996 توسط ARM معرفی شد. اولین گذرگاههای AMBA گذرگاه سیستم پیشرفته (ASB) و گذرگاه لوازم جانبی (APB) پیشرفته بودند. در نسخه دوم، AMBA 2 در سال 1999، ARM به AMBA گذرگاه با کارآیی بالا (AHB) را افزود. که یک پروتکل ساعت تک لبه است. در سال 2003، ARM نسل سوم را معرفی کرد، AMBA 3، که شامل AXI است تا به کارآیی اتصال بالاتری دست یابد و همچنین شامل گذرگاه ردیابی پیشرفته (ATB) به عنوان بخشی از دید اصلی راه حل اشکال زدایی و ردیابی بر روی تراشه است. در سال 2010 مشخصات AMBA 4 معرفی شد، که با AMBA 4 AXI4 شروع شد و سپس در سال 2011[2] با سیستم انسجام گسترده AMBA 4 ACE توسعه یافت. در سال 2013، مشخصات AMBA 5 CHI (واسط قطب منسجم) معرفی شد، همراه با یک لایه انتقال دوباره طراحی شده با سرعت بالا و ویژگی‌هایی که جهت کاهش ازدحام طراحی شده‌اند.

این پروتکل‌ها امروزه استانداردهای بالفعل برای پردازنده‌های 32 بیتی جاسازی شده هستند، زیرا به خوبی مستندسازی شده اند و بدون حق امتیاز می‌توانند مورد استفاده قرار گیرند.

## اصول طراحی
جنبه مهم SoC تنها اجزاء و بلوک‌هایی که در خود جای می دهد نیست، بلکه اینکه چگونه آن‌ها به هم متصل می‌شوند نیز مهم است. AMBA راه حلی است برای بلوک‌ها که چگونه به هم متصل شوند.

اهداف AMBA عبارتند از:
* تسهیل توسعه ی درست برای اولین بارِ محصولات میکروکنترلر تعبیه شده همراه یک یا چند CPU، GPU یا پردازنده‌های سیگنالی
* مستقل بودن از تکنولوژی، جهت استفاده دوباره از هسته‌های IP، لوازم جانبی و ماکروسل‌های سیستم در بین پردازنده‌های تراشه‌های مجتمع متنوع
* ترغیب طراحی سیستم ماژولار، جهت بهبود استقلال پردازنده، و توسعه لوازم جانبی و کتابخانه‌های IP سیستمی قابل استفاده مجدد
* کوچک کردن زیرساخت‌های سیلیکونی، در حالی که هم‌زمان از ارتباطات روی تراشه ی کم و با کارآیی بالا پشتیبانی می‌کند.

## مشخصات پروتکل AMBA
مشخصات AMBA یک استاندارد از ارتباطات روی تراشه برای طراحی کردن میکروکنترلرهای تعبیه شده با عملکرد بالا تعریف می‌کند. که توسط ARM Limited با مشارکت متقابل وسیع صنعت پشتیبانی می‌شود.

خصوصیات AMBA 5 واسط ها/گذرگاه‌های زیر را تعریف می‌کند:
* گذرگاه با کارآیی بالای پیشرفته (AHB5, AHB-Lite)
* رابط توپی منسجم (CHI) 
خصوصیات AMBA 5 واسطها/گذرگاههای زیر را تعریف می‌کند:
* افزونه‌های همخوانی AXI (ACE) که بر روی آخرین پردازنده‌های ARM Cortex-A از جمله Cortex-A7 و Cortex-A15 به‌طور وسیعی استفاده می‌شود.
* افزونه‌های همخوانی AXI سبک (ACE-Lite)
* رابط توسعه پیشرفته 4 (AXI4)
* رابط سبک توسعه پیشرفته 4 (AXI4-Lite)
* جریان رابط توسعه پیشرفته 4 (AXI4-Stream V1.0)
* گذرگاه ردیابی پیشرفته (ATB V1.1)
* گذرگاه جانبی پیشرفته (APB4 v2.0)
خصوصیات AMBA 3 چهار واسط/گذرگاه زیر را تعریف می‌کند:
* رابط توسعه پیشرفته (AXI3 یا AXI v1.0) که بر روی پردازنده‌های ARM Cortex-A از جمله Cortex-A9 به‌طور وسیعی استفاده می‌شود.
* گذرگاه با کارآیی بالای پیشرفته سبک (AHB-Lite v1.0)
* گذرگاه جانبی پیشرفته (APB3 v1.0)
* گذرگاه ردیابی پیشرفته (ATB V1.0)
خصوصیات AMBA 2 چهار واسط/گذرگاه زیر را تعریف می‌کند:
* گذرگاه با کارآیی بالای پیشرفته (AHB) که به‌طور وسیعی در ARM7، ARM9 و در طراحی‌های مبتنی بر ARM-Cortex-M استفاده شده‌اند.
* گذرگاه سیستم پیشرفته (ASB)
* گذرگاه جانبی پیشرفته (ABP یا ABP2)
خصوصیات AMBA (نسخه اولیه) دو واسط/گذرگاه زیر را تعریف می‌کند:
* گذرگاه سیستم پیشرفته (ASB)
* گذرگاه جانبی پیشرفته (ABP)
جنبه‌های زمانی و سطوح ولتاژ روی گذرگاه توسط مشخصات تعیین نشده‌اند.

### افزونه‌های همخوانی AXI (ACE و ACE-Lite)
ACE، به عنوان بخشی از مشخصات AMBA4 تعریف شده است، که AXI را به همراه سینالینگ بیشتر، با معرفی انسجام وسیع سیستمی توسعه می‌دهد. این انسجام سیستمی به چندین پردازنده اجازه می دهد تا حافظه را به اشتراک بگذارند و تکنولوژی از جمله پردازش big.LITTLE از ARM را فعال می‌کند. پروتکل ACE-Lite انسجام یک طرفه معروف به IO را قادر می سازد. به‌طور مثال یک واسط شبکه که می‌تواند از کش یک پردازنده ACE منسجم بخواند.

### رابط توسعه پیشرفته (AXI)
**AXI**، نسل سوم واسط AMBA، مشخصات AMBA3 را تعریف می‌کند، که به منظور طراحی سیستم‌های با فرکانس ساعت بالا و کارآیی بالا هدف‌گذاری شده است، و شامل ویژگی‌هایی است که آن را ارتباطات داخلی ریزسنج‌ها مناسب می‌کند:
* فازهای جداگانه برای داده و آدرس/کنترل
* پشتیبانی از انتقال داده‌های بدون صف با استفاده از فلاش‌های بایت
* تراکنش‌های مبتنی بر انفجار همراه با تنها آدرس شروع داده شده
* صدور چندین آدرس برجسته به همراه پاسخ‌های نامنظم
* افزودن آسان مراحل ثبت نام جهت فراهم کردن خاتمه زمان

### گذرگاه پیشرفته با عملکرد بالا (AHB)
**AHB** یک کنترلر گذرگاه است که در نسخه شماره 2 معماری پیشرفته گذرگاه میکروکنترلر؛ منتشر شده توسط شرکت ARM Ltd، معرفی شده‌است.

علاوه بر موارد منتشر شده قبلی، دارای ویژگی زیر نیز هست:
* عرض‌های گذرگاه بزرگ (64/128 bit).
یک تراکنش ساده بر روی AHB شامل یک فاز آدرس و یک فاز داده بعدی (بدون حالت‌ها انتظار: تنها دو گذرگاه-سیکل)  می‌شود. دسترسی به دستگاه هدف از طریق یک MUX (non-tristate) کنترل می‌شود، بنابراین قابلیت گذرگاه-دسترسی به یک گذرگاه-اصلی در یک زمان را فراهم می‌کند.

**AHB-Lite** زیرمجموعه خانواده AHB است که در استاندارد AMBA 3 تعریف شده‌است. این زیرمجموعه، طراحی برای یک گذرگاه با یک تک مستر را ساده می‌کند.

### گذرگاه پیشرفته وسیله جانبی(APB)
**APB** برای کنترل دسترسی به پهنای باند پایین طراحی شده است، به عنوان مثال واسط‌های ثبات در لوازم جانبی سیستم. این گذرگاه نیز دارای یک فاز آدرس و یک فاز داده مشابه AHB است، اما کاهش یافته و با لیست سیگنالی که پیچیدگی کمی دارد (به عنوان مثال بدون burst ها)

## محصولات AMBA
محصولات AMBA یک خانواده از IP Core‌های قابل سنتز و مجوز گرفته از ARM Limited هستند که یک بزرگراه دیجیتال در SoC برای انتقال و ذخیره داده‌ها با استفاده از مشخصات پروتکل AMBA پیاده‌سازی کرده‌اند. خانواده AMBA شامل موارد زیر می‌شود:

شبکه اتصالات AMBA (CoreLink NIC-400)، اتصالات منسجم حافظه نهان (CoreLink CCI-500)، کنترل‌کننده حافظه SDRAM (CoreLink DMC-400)، کنترل‌کننده‌های DMA (CoreLink DMA-230, DMA-330)، کنترل‌کننده‌های حافظه نهان سطح 2 (L2C-310) و غیره.

تعدادی از تولیدکننده ها، از گذرگاه‌های AMBA برای طراحی‌های غیر از ARM استفاده می‌کنند. به عنوان مثال، Infineon از گذرگاه AMBA برای ADM5120 SoC مبتنی بر معماری MIPS استفاده می‌کند.

## رقبا
* OpenCores گذرگاه Wishbone – معماری باز و رایگان گذرگاه (قبلاً از Silicore)
* فناوری گذرگاه IBM CoreConnect, استفاده شده در معماری پاور محصولات جاسازی شده IBM، اما همچنین در اغلب دیگر سیستم‌های SoC-مانند مثل Xilinx MicroBlaze یا هسته‌های مشابه
* IDT IPBus
* Altera Avalon – سیستم گذرگاه اختصاصی Altera Nios II SoCs 
* OCP پروتکل هسته باز 
* Hyper Transport از AMD (هر چند این یک واسط خارج از تراشه است و روی گذرگاه تراشه نیست)
* Quick Path از اینتل (هر چند این یک واسط خارج از تراشه است و روی گذرگاه تراشه نیست)

## همچنین نگاه کنید
* مشخصات عملکردی

## منابع

## پیوند به بیرون
* صفحه اصلی مشخصات AMBA - از ARM
* AMBA از ARM
* AMBA اسناد - از ARM
* AMBA 2 مشخصات از جمله AHB - از ARM
* AMBA AXI و ACE پروتکل مشخصات AXI3 ،AXI4 و AXI4-Lite ACE و ACE-Lite - از ARM
* AMBA APB مشخصات از جمله APB4‌های APB3‌های APB2 - از ARM

رده:سیستم روی تراشه
رده:گذرگاه (رایانه)
رده:معماری آرم