معماری واحد مدیریت توان در دستگاههای اپل؛ آشنایی با Brooklands PMU
در این مقاله ساختار سطحبالای واحد مدیریت توان در پلتفرمهای اپل را با تمرکز بر Brooklands PMU بررسی میکنیم؛ از تفاوت PMU و PMIC و ساختار مبدلهای توان گرفته تا Power FSM، میکروکنترلرهای Hyperion و Metis، رابطهای ارتباطی، Telemetry، معماری کلاک و شناسههای داخلی تراشه.
دامنه این مقاله
Brooklands در این مجموعه بهعنوان نمونه مرجع برای مطالعه معماری PMU اپل استفاده میشود. مطالب این مقاله بر اساس سند Apple Brooklands PMU Top Level Architecture Specification تنظیم شده است و هدف، درک معماری سیستم مدیریت توان است؛ نه تعمیم جزئیات Brooklands به تمام نسلها و تمام محصولات اپل.
چرا یک دستگاه مدرن به PMU نیاز دارد؟
معماری توان در یک دستگاه مدرن بسیار فراتر از اتصال مستقیم باتری به پردازنده است.
پردازنده، GPU، حافظه، NAND، نمایشگر، رابطهای ارتباطی، بخشهای آنالوگ و زیرسیستمهای مختلف دستگاه هرکدام به ریل تغذیهای با ولتاژ، جریان، میزان نویز و زمانبندی مخصوص خود نیاز دارند.
برخی ریلها باید جریان بسیار بالایی را در لحظههای Peak Load تأمین کنند، برخی باید خروجی کمنویز داشته باشند و برخی دیگر تنها در یک Power State مشخص فعال شوند.
در کنار تولید ولتاژ، سیستم باید تعیین کند هر منبع چه زمانی روشن شود، چه زمانی خاموش شود، ولتاژ آن چگونه تغییر کند و در صورت بروز افت ولتاژ، اضافهجریان یا شرایط غیرعادی چه واکنشی انجام شود.
مجموعه این وظایف در معماری Brooklands تحت کنترل Power Management Unit یا PMU قرار میگیرد.
تفاوت PMIC و PMU چیست؟
در معماری Brooklands این دو اصطلاح به دو سطح متفاوت از سیستم مدیریت توان اشاره دارند.
Power Management Integrated Circuit
PMIC خود تراشه مدیریت توان است؛ سیلیکونی که مبدلها، رگولاتورها، منطق کنترلی، ADC، رابطهای دیجیتال، حافظهها و سایر بلوکهای مدیریت توان را در خود جای میدهد.
Power Management Unit
PMU مفهوم گستردهتری است و علاوه بر PMIC، قطعات خارجی موردنیاز و شبکه توزیع توان را نیز شامل میشود؛ مانند سلفها، خازنها و مسیرهای Power Distribution Network.
چهار وظیفه اصلی Brooklands PMU
در سطح معماری، چهار مأموریت اصلی برای این واحد مدیریت توان تعریف شده است.
تأمین توان SoC و ریلهای سیستمی
تأمین ولتاژ و جریان موردنیاز SoC اصلی و ریلهای مرتبط با آن در شرایط مختلف کاری سیستم.
هماهنگسازی جریان توان
کنترل توالی روشن و خاموششدن منابع و مدیریت انتقال سیستم میان Power Stateهای مختلف.
تلهمتری ولتاژ، جریان و دما
فراهمکردن دادههای اندازهگیری برای SoC و سیستمهای مدیریت Peak Power و کنترل شرایط کاری.
مالتیپلکس سیگنالهای آنالوگ
هدایت سیگنالهای آنالوگ خارجی برای Debug سطح محصول و تستهای Manufacturing.
بلوکهای اصلی تولید و توزیع توان
بخش Power در Brooklands از چند خانواده متفاوت تشکیل شده که هرکدام برای نوع خاصی از بار و شرایط کاری طراحی شدهاند.
| بلوک | تعداد / ساختار | عملکرد | کاربرد شاخص |
|---|---|---|---|
| Buck | ۱۴ مبدل، مجموعاً ۲۴ فاز | مبدل کاهنده سوئیچینگ با بازده بالا و قابلیت تأمین جریان زیاد | ریلهای CPU، GPU، SoC و سایر بارهای پرجریان |
| LDO | ۱۶ سیستمی + ۲ داخلی + ۲ Always-On | تنظیم خطی ولتاژ با تمرکز بر نویز پایین و تأمین ریلهای تخصصی | بلوکهای حساس، ریلهای داخلی و دامنههای دائمروشن |
| Load Switch | ۶ عدد | قطع یا وصل یک ریل موجود بدون ایجاد ولتاژ جدید | Power Gating و کنترل شاخههای توزیع توان |
| Charge Pump | ۱ عدد | تبدیل ولتاژ بر پایه ساختار سوئیچینگ خازنی | تولید ولتاژ کمکی VCP |
Buck Converter؛ منبع توان ریلهای پرجریان
Buck Converter یک مبدل DC-DC کاهنده سوئیچینگ است که با استفاده از عناصر سوئیچینگ و سلف، ولتاژی پایینتر از ورودی تولید میکند.
این ساختار در مقایسه با رگولاتور خطی برای بارهای پرجریان بازده بسیار بالاتری دارد و به همین دلیل برای ریلهایی مانند CPU، GPU و SoC اهمیت ویژهای دارد.
Brooklands دارای ۱۴ Buck است که مجموعاً از ۲۴ فاز تشکیل شدهاند. این خانواده شامل معماریهای یکفاز، دوفاز، سهفاز و پنجفاز است.
LDO
LDO یا Low Dropout Regulator یک رگولاتور خطی است که برای تأمین ریلهایی با نیاز به نویز پایین، ساختار سادهتر و کنترل دقیق ولتاژ بهکار میرود.
Load Switch
Load Switch برخلاف Buck یا LDO معمولاً ولتاژ جدیدی ایجاد نمیکند؛ بلکه یک مسیر توان موجود را به مصرفکننده متصل یا از آن جدا میکند.
Charge Pump
Charge Pump از ساختار سوئیچینگ خازنی برای تبدیل ولتاژ استفاده میکند و در Brooklands بخشی از مسیر تولید ولتاژ کمکی VCP است.
Brooklands فقط یک مجموعه رگولاتور نیست
بخش مهم معماری در منطق دیجیتال، ماشینهای حالت، میکروکنترلرها و مسیرهای ارتباطی قرار دارد.
Power FSM
Power Finite State Machine وضعیت کلی PMU و مسیر انتقال میان حالتهای مختلف سیستم را کنترل میکند.
Power Sequencer
Sequencer اجرای واقعی روشن و خاموششدن منابع را با ترتیب و زمانبندی مشخص انجام میدهد.
Hyperion و Metis؛ دو زیرسامانه Cortex-M23
Brooklands دارای دو زیرسامانه میکروکنترلری مبتنی بر Arm Cortex-M23 است که نقشهای متفاوتی در معماری دیجیتال PMU دارند.
| ویژگی | Hyperion | Metis |
|---|---|---|
| هسته پردازشی | Arm Cortex-M23 | Arm Cortex-M23 |
| نقش شاخص | Telemetry Firmware | Secure Firmware |
| فرکانس Core | 48 MHz | 24 MHz |
| SRAM | 64 kB | 20 kB |
| SWD Multi-Drop | پشتیبانی میشود | پشتیبانی میشود |
SPMI، SGPIO و DVC
رابط اصلی ارتباط Host SoC با PMU است و برای دسترسی رجیستری، رخدادها، Interruptها و کنترل بخشهای مختلف مدیریت توان استفاده میشود.
در سناریوهای Leader و Follower برای انتقال رویدادها، Virtual GPIO، دسترسی میان اجزای PMU و تونلکردن برخی عملیات استفاده میشود.
Dynamic Voltage Control امکان تنظیم پویا و کنترلشده ولتاژ ریلهای قابل برنامهریزی را متناسب با وضعیت سیستم فراهم میکند.
تغییر ولتاژ در DVC به معنی پرش آنی از یک مقدار به مقدار دیگر نیست. Brooklands برای تغییر خروجی مفاهیمی مانند Ramp Rate و Group-DVC دارد؛ بنابراین تعبیر دقیقتر، «تنظیم پویا و کنترلشده ولتاژ» است.
Telemetry؛ PMU علاوه بر تولید توان، آن را اندازه میگیرد
اندازهگیری وضعیت واقعی سیستم یکی از بخشهای مهم معماری Brooklands است.
این دادهها میتوانند برای تصمیمگیریهای مرتبط با مدیریت توان، محدودسازی عملکرد، تشخیص شرایط غیرعادی و کنترل Peak Power در اختیار سیستم قرار گیرند.
THROTTLE_L[1:0]
مسیر سختافزاری برای اعلام شرایطی که نیاز به کاهش بار یا محدودسازی عملکرد Host وجود دارد.
UVWARN_L
سیگنال هشدار مرتبط با وضعیت افت ولتاژ که میتواند پیش از رسیدن سیستم به شرایط بحرانی مورد استفاده قرار گیرد.
معماری کلاک Brooklands
چند منبع کلاک مختلف در مراحل راهاندازی و عملکرد PMIC نقش دارند.
کلاک داخلی کمکی برای Cold Boot و فراهمکردن Clock اولیه برای بخشهای دیجیتال پیش از شروع کلاک اصلی.
کلاک اصلی PMIC که نخستینبار برای آغاز OTP Read فعال میشود و بخشهای Digital Control، Timerها و AHB Fabric از آن استفاده میکنند.
کلاک خارجی ایجادشده توسط Host SoC برای ارتباط SPMI با Brooklands.
سه مرحله ابتدایی Startup
محتوای رجیسترهای دیجیتال و وضعیت I/Oها هنوز تعریف نشده است.
منابع Core فعال شدهاند و رجیسترها از Hardware Default Values استفاده میکنند.
اطلاعات OTP معتبر شده و رجیسترها بر اساس مقادیر برنامهریزیشده تنظیم شدهاند.
OTP چه نقشی دارد؟
OTP یا One-Time Programmable Memory حافظهای داخلی برای نگهداری تنظیماتی است که پس از قطع تغذیه از بین نمیروند.
در Brooklands، OTP در پیکربندی بخشهای مختلف سختافزار و رفتار محصول نقش دارد و ظرفیت آن در Feature Summary برابر 32 kB ذکر شده است.
در نتیجه بخشی از رفتار PMIC فقط به طراحی ثابت سیلیکون وابسته نیست و تنظیمات برنامهریزیشده OTP نیز در عملکرد نهایی تراشه نقش دارند.
شناسایی Brooklands از طریق شناسههای داخلی
PMIC چند شناسه سختکدشده و فیلد داخلی برای شناسایی طراحی، Debug، کنترل Revision و دادههای تولید دارد.
| شناسه | عرض | مقدار / ساختار | کاربرد |
|---|---|---|---|
| TARGET_ID (IDCODE) | ۳۲ بیت | 0x100BE091 | شناسه اختصاصی طراحی Brooklands و اطلاعات مرتبط با Revision |
| Peripheral-ID (PID) | چندفیلدی | ROM Table | شناسایی Peripheral در ساختار Debug و ارتباط ابزارهایی مانند Astris |
| SWMD_DPIDR | ۳۲ بیت | 0x0BF12477 | شناسه Debug Port مرتبط با Cortex-M23 |
| SWD_INST_ID | ۴ بیت | Instance ID | تفکیک Targetهای مختلف در ساختار SWD Multi-Drop |
| ECID | ۱۲ بایت | CHIP_ID_0 ... CHIP_ID_11 | دادههای مرتبط با Productization و فرایند تولید تراشه |
| RTL_VERSION | ۳ بیت | RTL Milestone | نشانگر مرحله یا Milestone طراحی RTL |
مقدار TARGET_ID را نباید بهعنوان Serial Number یکتای هر Die در نظر گرفت. TARGET_ID برای شناسایی طراحی Brooklands و Revision آن استفاده میشود، در حالی که ECID شامل دادههای مرتبط با تولید و Productization است.
شبکه توزیع توان یا PDN
خروجی یک Buck تنها به ترانزیستورهای داخل PMIC محدود نیست. سلف، خازنهای خروجی، Viaها، مسیرهای PCB، Planeهای تغذیه و خود بار همگی بخشی از Power Distribution Network هستند.
بنابراین مشاهده مشکل روی یک Rail الزاماً به معنی خرابی خود PMIC نیست. سلف، خازن خروجی، Short روی بار، منبع ورودی، Feedback، Sequencing و شرایط Power State همگی میتوانند رفتار نهایی ریل را تغییر دهند.
اهمیت این معماری در عیبیابی تخصصی
شناخت معماری PMU باعث میشود یک Coil یا Rail روی Boardview را بهصورت یک نقطه مستقل بررسی نکنیم.
جمعبندی
Brooklands یک PMIC ساده برای تولید چند ولتاژ نیست؛ بلکه یک سیستم کامل برای تولید، توزیع، اندازهگیری، کنترل و حفاظت از توان پلتفرم است.
۱۴ Buck با مجموع ۲۴ فاز، خانواده LDOها، شش Load Switch و Charge Pump بخش اصلی Power را تشکیل میدهند و در کنار آن Power FSM، Sequencer، Hyperion، Metis، SPMI، SGPIO، Telemetry، ADC، OTP و مسیرهای Debug رفتار سیستم را هماهنگ میکنند.
از دید تعمیرات تخصصی، مهمترین نتیجه تغییر زاویه نگاه به PMIC است: هر Rail بخشی از یک معماری بزرگتر است و وضعیت آن به منبع، Sequencing، Power State، تنظیمات و شرایط کل سیستم وابسته است.
ادامه مجموعه معماری PMU اپل
در مقالات بعدی هر بخش از معماری Brooklands بهصورت مستقل و در سطح تخصصیتر بررسی خواهد شد.