رفتن به مطلب

ارسال های توصیه شده

PLL (حلقه ي قفل شده ي فاز)

 

 

مطلب زیر بر مبنای ساختار میکروکنترلر LPC214x نوشته شده است.

در خانوداده ي LPC214X دو ماژول PLL قرار گرفته است. PLL0 براي توليد کلاک سيستم CCLK است و PLL1 کلاک USB در مقدار 48MHz فيکس مي کند. از لحاظ ساختار اين دو PLL شبيه به هم هستند به جز اينکه قابليت وقفه ي PLL تنها براي PLL0 تعبيه شده است.

PLL0 و PLL1 نرخ کلاکي بين 10MHz تا 25MHz را به عنوان ورودي قبول مي کنند. فرکانس ورودي ضرب شده و خروجي بين 10MHz تا 60MHz براي CCLK و 48MHz را براي USB با استفاده از يک اسيلاتور کنترل شده با جريان CCO ايجاد مي کند. ضرب کننده مي تواند در فرکانس ورودي را در يک مقدار صحيح بين 1 تا 32 ضرب کند ، اما در عمل به دليل محدوديت پردازنده اين مقدار براي خانواده LPC214X نمي تواند بيش تر از 6 باشد. CCO در رنج فرکانسي 156MHZ تا 320MHz کار مي کند پس يک مقسم اضافي در حلقه قرار دارد تا PLL را در رنج فرکانسي مطلوب حفظ کند. مقسم خروجي مي تواند يکي از اعداد 2 يا 4 يا 8 يا 16 تنظيم گردد. تا زمانيکه حداقل شريب مقسم خروجي 2 است مي تواند متطئن شد که خروجي PLL مدت زمان وظيفه 50% دارد. بلوک دياگرام واحد PLL را در شکل زير مشاهده مي کنيد.

 

ib6xfevr8e08fqaw4zmd.jpg

فعال سازي PLL از طريق رجيستر PLLCON کنترل مي شود. مقدار ضريب و مقسم توسط رجيستر PLLCFG کنترل مي شود. اين دو رجيستر به دليل جلوگيري از تغييرات ناگهاني پارامتر هاي PLL يا غير فعال کردن PLL ، به صورت محافظت شده هستند. به دليل اينکه تمامي فعاليت هاي تراشه ، حتي تايمر watchdog ، بستگي به PLL0 دارند ، تغييرات ناگهاني در تنظيمات PLL نتايج پيش بيني نشده اي را در پي خواهد داشت. همين اهميت در مورد PLL1 و واحد USB وجود دارد. هر دو PLL در هنگام ريست شده تراشه و يا در مد عملکرد Power-down خاموش مي شوند. PLL تنها به صورت نرم افزاري فعال مي شود. برنامه بايد PLL را پيکربندي و سپس فعال کند و مدتي براي قفل شدن حلقه منتظر بماند و سپس واحد PLL را به منبع کلاک متصل گرداند.

واحد PLL داراي 4 رجيستر است که در جدول زير آورده شده است. هر گونه مقداري دهي غير مناسب براي اين رجيستر ها موجب فعاليت نادرست واحد USB و خود وسيله مي شود.

 

w1hgj8b57i79nt70x7g.jpg

رجيستر PLL0CON و PLL1CON:

بيت صفرم اين رجيستر براي فعال سازي واحد PLL و بيت يک ام آن براي اتصال واحد PLL به منبع کلاک است. بقيه بيت ها آن براي مصارف آينده رزرو شده اند. تغييرات اعمال شده در اين رجيستر تا زمانيکه که رشته مناسب در رجيستر PLLFEED قرار نگيرد ، اعمال نمي شود.

PLL قبل از آنکه استفاده شود بايد پيکربندي ، فعال و در حلقه ي خود قفل شود. سخت افزار قبل از آنکه PLL وصل شود نمي تواند مطمئن شود که حلقه قفل شده است يا نه. هنگام از دست دادن قفل حلقه ي در PLL مانند اين مي ماند که اسيلاتور ما ناپايدار شده باشد.

رجيستر PLL0CFG و PLL1CFG :

اين رجيستر مقدار ضريب و مقسم را در خود دارد. تغييرات در اين رجيستر تا زمان قرار دادن رشته مناسب در PLLFEED اعمال نخواهند شد. 5 بيت اول (بيت صفرم تا چهارم ) اين رجيستر MSEL (مقدار ضريب ) و بيت 5 و 6 آن PSEL (مقدار مقسم) نام دارد. کلاک خروجي واحد PLL از رابطه زير محاسبه مي گردد :

CCLK = M × FOSC or CCLK = FCCO / (2 × P)

FCCO = CCLK × 2 × P or FCCO = FOSC × M × 2 × P

FOSC بايد بين 10MHz تا 25MHz باشد. CCLK بايد بين 10MHz تا 60MHz باشد. FCCO بايد بين 156MHz تا 320MHz باشد.

رجستر PLL0STAT و PLL1STAT :

اين دو رجيستر فقط خواندني هستند و پارامتر هاي واحد PLL را در خود ذخيره کرده اند. مقدار PLLSTAT شايد با مقدار PLLCON يا PLLCFG فرق کند زيرا مقادري دو رجيستر فوق تا قبل از اعمال رشته مناسب به PLLFEED اعمال نمي شوند.

بيت صفرم تا چهارم مقدار MSEL و بيت پنجم و ششم مقدار PSEL را در خود نگه داشته اند. بيت هشتم نشان دهنده فعال بودن واحد PLL و بيت نهم نشان دهنده متصل بود واحد PLL به منبع کلاک است. بيت دهم اين رجيستر نشان مي دهد که آيا حلقه قفل شده است يا نه. يک بودن بيت دهم نشان دهنده اين است که حلقه در فرکانس خواسته شده قفل شده است.

بيت PLOCK يا همان بيت دهم که نشان دهنده قفل شدن حلقه است به کنترلر وقفه متصل است. اين کار امکان را به ما مي دهد که PLL را روشن کرده و با ساير توابع بدون انتظار براي قفل شدن PLL کار کنيم و بعد از قفل شده حلقه از طريق وقفه اي که ايجاد مي کنيم واحد PLL را متصل کنيم. همانطور که گفته شد اين وقفه تنها براي PLL0 پيش بيني شده است و وجود دارد.

رجيستر PLL0FEED و PLL1FEED :

رشته ي مناسب که بايد در اين رجيستر نوشته شود تا مقادير رجيستر هاي PLLCON و PLLCFG اعمال شوند :

ابتدا مقدار 0xAA را در رجيستر PLLFEED نوشته شود. سپس مقدار 0x55 نوشته شود. در طول اين عمکرد اين رجيستر با وقفه ها غير فعال باشند.

 

تالیف و ترجمه : علی آقایی فر

لینک به دیدگاه

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...