شمارنده حلقه جانسون شامل تعدادی شمارنده است که بهمراه خروجی فیدبک شده به ورودی به هم متصل شده اند.
فهرست مطالب
شمارنده جانسون چیست
در آموزش قبلی شیفت رجیستر دیدیم که اگر یک سیگنال داده سریال را به ورودی سریال به سریال شیفت رجیستر اعمال کنیم، همان توالی داده از آخرین فلیپ فلاپ در زنجیره رجیستر خارج میشود.
این حرکت سری دادهها از طریق مقاومت، پس از تعداد چرخههای تنظیم شده از پیش تعیین شده رخ میدهد و در نتیجه به رجیستر SISO اجازه عمل کردن به عنوان نوعی مدار تاخیر زمانی به سیگنال اصلی داده ورودی را میدهد.
اما اگر بخواهیم خروجی این رجیستر شیفت را به ورودی آن متصل کنیم، به طوری که خروجی از آخرین فلیپ فلاپ QD به ورودی اولین فلیپ فلاپ QA تبدیل شود. پس از آن یک مدار حلقه بسته خواهیم داشت که همان بیت DATA را برای هر حالت دنباله آن “دوباره می چرخاند” ، و این عملکرد اصلی یک شمارنده حلقه است.
سپس با حلقه زدن خروجی به ورودی، (بازخورد) می توانیم یک مدار شیفت رجیستر استاندارد را به یک شمارنده حلقه تبدیل کنیم. مدار زیر را در نظر بگیرید.
شمارنده جانسون 4 بیتی
مثال شمارنده حلقه همزمان فوق از پیش تعیین شده است به طوری که دقیقاً یک بیت داده در رجیستر بر روی منطق “1” تنظیم شده و بیت های دیگر روی “0” تنظیم میشوند. برای دستیابی به این هدف، ابتدا یک سیگنال “پاک کردن” روی همه فلیپ فلاپها با هم اعمال می شود تا خروجی های آنها را “ریست” کند تا به سطح منطقی “0” برسد و سپس یک پالس “PRESET” به ورودی اولین فلیپ فلاپ قبل از اعمال پالسهای ساعت (FFA) اعمال میشود. سپس این یک مقدار منطقی “1” را در مدار شمارنده حلقه قرار میدهد.
بنابراین در هر پالس ساعت پی در پی، شمارنده در هر چهارمین چرخه ساعت، بیت داده یکسان را بین چهار فلیپ فلاپ بارها و بارها در اطراف “حلقه” میپرخاند. اما برای چرخه درست دادهها در اطراف شمارنده، ابتدا باید شمارنده را با یک الگوی داده مناسب “بارگیری” کنیم زیرا تمام منطق “0” یا تمام منطق “1” خروجی در هر چرخه ساعت شمارنده حلقه را نامعتبر میکند.
این نوع حرکت داده “چرخش” نامیده میشود و مانند شیفت رجیستر قبلی، اثر حرکت بیت داده از چپ به راست از طریق یک شمارنده حلقه می تواند به صورت زیر به همراه نمودار زمان بندی آن به صورت زیر ارائه شود:
حرکت دوار شمارنده حلقه
از آنجا که مثال شمارنده حلقه نشان داده شده در بالا دارای چهار حالت مجزا است، که به عنوان یک شمارنده “ماژول 4” یا “mod-4” نیز شناخته میشود که هر خروجی فلیپ فلاپ دارای مقدار فرکانس برابر با یک چهارم یا یک چهارم است (4/1) از فرکانس اصلی ساعت است.
“ماژول” یا “MODULUS” یک شمارنده تعداد حالاتی است که شمارنده ها یا توالی ها را از طریق تکرار قبل از تکرار، تکرار می کند و شمارنده حلقه می تواند برای تولید هر عدد مدول ایجاد شود. یک شمارنده حلقه “mod-n” برای گردش یک بیت داده واحد با ارائه “n” حالت های مختلف خروجی، به “n” تعداد فلیپ فلاپ متصل به هم نیاز دارد.
به عنوان مثال، شمارنده حلقه mod-8 به هشت فلیپ فلاپ و شمارنده حلقه mod-16 به شانزده فلیپ فلاپ نیاز دارد. با این حال، همانطور که در مثال ما در بالا وجود دارد، فقط چهار حالت از شانزده حالت ممکن استفاده میشود، که شمارنده های حلقه را از نظر استفاده از حالت خروجی بسیار ناکارآمد میکند.
شمارنده حلقه جانسون
شمارنده حلقه جانسون یا “شمارنده های حلقه پیچ خورده”، شیفت رجیستر دیگری با بازخورد دقیقاً مشابه شمارنده حلقه استاندارد فوق است، با این تفاوت که این بار خروجی معکوس آخرین فلیپ فلاپ به ورودی D از اولین فلیپ فلاپ همانطور که در زیر نشان داده شده است، وصل شده است.
مزیت اصلی این نوع شمارنده حلقه این است که فقط به نصف تعداد فلیپ فلاپ در مقایسه با شمارنده استاندارد حلقه نیاز دارد و سپس تعداد ماژول آن نصف میشود. بنابراین یک شمارنده جانسون “n-حالت” یک بیت داده واحد را با توالی n2 حالت مختلف به گردش در می آورد و بنابراین میتواند به عنوان شمارنده حالت 2n- در نظر گرفته شود.
شمارنده حلقه جانسون 4 بیتی
این وارونگی Q قبل از اینکه دوباره به ورودی D برگردانده شود باعث می شود شمارنده به روشی دیگر “شمارش” کند. به جای شمارش از طریق یک مجموعه ثابت از الگوها مانند شمارنده حلقه ای عادی مانند یک شمارنده 4 بیتی، “0001” (1) ، “0010” (2) ، “0100” (4) ، “1000” (8) میشمارد و تکرار میکند، شمارنده جانسون در حالی که منطق اولیه “1” از آن به سمت راست عبور میکند و جایگزین منطق قبلی “0” میشود، شمارش میکند و سپس پایین میآید.
شمارنده حلقه ای 4 بیتی جانسون بلوک های چهار منطقی “0” و سپس چهار منطقی “1” را عبور میدهد در نتیجه الگوی 8 بیتی تولید میشود. همانطور که خروجی معکوس Q به ورودی D متصل میشود، این الگوی 8 بیتی به طور مداوم تکرار میشود. به عنوان مثال، “1000” ، “1100” ، “1110” ، “1111” ، “0111” ، “0011” ، “0001” ، “0000” و این در جدول زیر نشان داده شده است.
جدول درستی برای یک شمارنده حلقه جانسون 4 بیتی
علاوه بر شمارش یا چرخش دادهها به دور یک حلقه پیوسته، از شمارندههای حلقه نیز میتوان الگوهای مختلف یا مقادیر عددی را در مجموعه داده ها شناسایی یا تشخیص داد. با اتصال گیت های منطقی ساده مانند گیت های AND یا OR به خروجی های فلیپ فلاپ می توان مدار را برای تشخیص تعداد یا مقدار تنظیم شده ایجاد کرد.
شمارنده های حلقه جانسون استاندارد 2 ، 3 یا 4 مرحله ای همچنین می توانند برای تقسیم فرکانس سیگنال ساعت با تغییر اتصالات بازخورد آنها و خروجی های تقسیم بر 3 یا تقسیم بر 5 نیز در دسترس باشند.
به عنوان مثال، یک شمارنده حلقه جانسون 3 مرحله ای میتواند به عنوان یک مولد موج مربعی تغییر فاز 3 فاز ، 120 درجه با اتصال به خروجی داده ها در A ، B و NOT-B استفاده شود.
شمارنده استاندارد 5 مرحله ای جانسون مانند CD4017 که عموما در دسترس است معمولاً به عنوان مدار شمارنده / راه انداز دهی همزمان استفاده میشود.
از ترکیبات دیگر مانند مدار کوچکتر 2 مرحله ای که نوسانگر یا ژنراتور “ربعی” (سینوس / کسینوس) نیز نامیده می شود میتوان برای تولید چهار خروجی جداگانه استفاده کرد که هر کدام با توجه به یکدیگر 90 درجه “غیر هم فاز” برای تولید سیگنال زمان 4 فاز هستند که در زیر نشان داده شده است.
مولد ربعی دو بیتی
همانطور که چهار خروجی، A تا D با 90 درجه نسبت به یکدیگرتغییر مییابند، میتوان آنها را با مدارهای اضافی برای هدایت یک موتور پله ای تمام پله دو مرحله ای برای کنترل موقعیت یا توانایی چرخش موتور به یک مکان خاص همانطور که در زیر نشان داده شده است، استفاده کرد.
کنترل موتور پله ای
سرعت چرخش موتور پله ای عمدتا به فرکانس ساعت بستگی دارد و مدارهای اضافی برای هدایت “قدرت” موتور مورد نیاز است. از آنجا که این بخش فقط به منظور درک اساسی خواننده از شمارندههای حلقه جانسون و کاربردهای آن است، وب سایت های خوب دیگر انواع و نیازهای درایو موتورهای پله ای را با جزئیات بیشتری توضیح میدهند.
شمارندههای حلقه ای جانسون به صورت استاندارد TTL یا CMOS IC مانند شمارنده حلقه CD4017 5 مرحله ای، شمارنده حلقه جانسون با 10 خروجی های رمزگشایی شده HIGH فعال یا CD4022 4 مرحله ای، شمارنده جانسون تقسیم بر 8 با خروجی 8 HIGH فعال رمزگشایی شده موجود هستند.