در شمارندههای سنکرون، سیگنال کلاک تمام فلیپ فلاپها یکی است
در مقالهی قبلی درباره شمارندههای باینری آسنکرون دیدیم که خروجی یک شمارنده مستقیماً به ورودی کلاک شمارنده بعدی متصل شده است.
در نتیجه شمارنده آسنکرون دچار مشکل تأخیر انتشار میباشد. هر فلیپفلاپ باعث ایجاد مقدار تأخیر میشود که در شمارندههای فوقالعاده بزرگ مجموع این تاخیرها رقمی بسیار یزرگ و قابل توجه خواهد بود.
به هر حال در شمارنده سنکرون، سیگنال کلاک به پایه کلاک ورودی تمام فلیپفلاپ هایی که در شمارنده هستند، متصل است بنابراین تمام فلیپفلاپها به صورت همزمان با یکدیگر سیگنال کلاک را دریافت میکنند.
و در نتیجه این همزمانی تمام بیتهای خروجی در یک زمان به سیگنال پاسخ میدهند و حالت شان را عوض میکنند همچنین دیگر خبری از اثر ریپل و تأخیر انتشار نیست.
شمارندههای بالارونده سنکرون باینری ۴ بیتی
در شکل بالا مشخص است که پالسهای کلاک خارجی به صورت مستقیم به هر فلیپفلاپ JK ارسال میشود و هر دو ورودی J و K به یکدیگر متصل هستند اما تنها در اولین فلیپفلاپ (LBS) منطق یک برقرار است تا اجازه دهد فلیپفلاپ با هر پالس کلاک تغییر وضعیت دهد سپس شمارنده سنکرون یک ترتیب از پیش مشخص شده را در پاسخ به سیگنال کلاک مشترک طی میکند و با هر پالس یک مرحله به جلو میرود.
ورودیهای J و K فلیپفلاپ دوم مستقیماً به خروجی فلیپفلاپ اول (QA) متصل هستند اما ورودیهای Jو K فلیپفلاپهای سوم و چهارم با استفاده از گیتهای AND جداگانه راهاندازی میشوند که توسط سیگنالهایی که از ورودی دریافت میکنند و خروجی مرحله قبل تغذیه میشوند. این گیتهای AND منطق مورد نیاز برای ورودیهای JK مرحله بعد را میسازند.
اگر ما هر فلیپفلاپ JK را فعال کنیم تا بر اساس وضعیت خروجی دیگر فلیپفلاپها تغییر کند، میتوانیم به یک ترتیب شمارش همانند مدارات غیرسنکرون دست پیدا کنیم با این تفاوت که دارای ریپل نمیباشد؛ چرا که فلیپفلاپها در این مدار به صورت همزمان سیگنال کلاک را دریافت میکنند.
از آن جایی که هیچ تأخیر انتشاری در شمارندههای سنکرون وجود ندارد و فلیپفلاپها به صورت موازی تحریک میشوند، حداکثر فرکانس راهاندازی این شمارنده فرکانسی خیلی بالاتر از مدار شمارنده آسنکرون مشابه میباشد.
دیاگرام زمانبندی شکل موج شمارنده سنکرون ۴ بیتی
از آن جایی که این شمارنده سنکرون ۴ بیتی با هر پالس کلاک به ترتیب شمارش میکند، خروجی از ۰ (۰۰۰۰) تا ۱۵ (۱۱۱۱) بالا میرود. بنابراین این نوع شمارنده به شمارنده بالارونده سنکرون ۴ بیتی نیز معروف میباشد.
در ضمن ساخت شمارنده پایین روده سنکرون ۴ بیتی نیز کار راحتی میباشد برای نیل به این منظور، باید گیتهای AND به خروج Q فلیپفلاپها متصل شوند تا یک دیاگرام زمانبندی شکل موج ایجاد شود که معکوس دیاگرام بالاست. در اینجا شمارنده در حالتی که سطح تمام خروجی ها بالا است (۱۱۱۱) کارش را شروع میکند و با اعمال هر سیگنال کلاک یک شماره پایین میرود تا به صفر (۰۰۰۰) برسد و این چرخه دوباره از ابتدا تکرار میشود.
شمارنده پایینرونده سنکرون باینری ۴ بیتی
ازآن جایی که شمارندههای سنکرون توسط اتصال فلیپفلاپها به یکدیگر شکل میگیرند و هر تعداد از فلیپفلاپها میتوانند به یکدیگر متصل شوند تا یک شمارنده باینری را به وجود بیاورند، عدد MOD همانند شمارندههای غیرسنکرون برای شمارندههای سنکرون نیز اعمال میشود. بنابراین یک شمارنده دهدهی یا BCD که میتواند از ۰ تا ۲n-۱ بشمارد؛ میتواند شمارش ناتمام داشته باشد و شمارش را تا هر عدد دلخواه خاتمه ده.د تنها کاری که باید انجام دهیم این است که با افزایش یا کاهش یک یا چند فلیپفلاپ به همراه گیت AND عدد MOD شمارنده را تنظیم کنیم.
شمارنده سنکرون ۴ بیتی دهدهی
یک شمارنده سنکرون دهدهی ۴ بیتی میتواند با استفاده از شمارندههای باینری سنکرون ساخته شود تا به ترتیب از ۰ تا ۹ بشمارد یک شمارنده باینری استاندارد به راحتی میتواند تبدیل به یک شمارنده دهدهی بشود تا پس از رسیدن به مقدار ۱۰۰۱ دوباره به عدد ۰۰۰۰ بازگردد و یک شمارندهMOD_10 را به وجود بیاورد.
شمارنده سنکرون دهدهی ۴ بیتی
گیتهای AND که به مدار اضافه شدند ، تشخیص میدهند چه زمانی شمارش به ۱۰۰۱ میرسد و فلیپفلاپ سوم در پالس کلاک بعدی تغییر وضعیت میدهد فلیپفلاپ اول با هر پالس کلاک تغییر وضعیت میدهد بنابراین شمارنده ریست میشود و دوباره از مقدار ۰۰۰۰ شروع به شمارش میکند تا یک شمارنده سنکرون دهدهی به وجود بیاید.
میتوانیم گیتهای AND دیگری را به مدار بالا اضافه کنیم تا شمارنده MOD-12 به دست بیاید که میتواند از ۰۰۰۰ (صفر) تا (۱۰۱۱) (یازده) بشمارد.
تحریک یک شمارنده سنکرون
شمارندههای سنکرون از فلیپفلاپهایی که در گوشه پالس تحریک میشوند؛ استفاده میکنند این فلیپفلاپها در گوشه بالارونده یا گوشه پایین رونده تغییر وضعیت میدهند و این تغییر وضعیت یک شماره رو به جلو یا عقب محسوب میشود.
به طور کلی شمارندههای سنکرون در گوشهی بالارونده سیگنال کلاک تغییر وضعیت میدهند و شمارندههای ریپل غیرسنکرون در گوشهی پایین رونده ( در هنگام تغییر وضعیت سیگنال از بالا به پایین ) تغییر وضعیت میدهند.
شاید به نظرتان عجیب بیاید که شمارندههای ریپل از گوشهی پایین رونده برای تغییر وضعیت استفاده میکنند اما استفاده از قسمت پایین رونده سیگنال، پیوندزدن شمارندهها به یکدیگر را سادهتر میکند چرا که باارزش ترین بیت (MSB) (Most Significant Bit) یک شمارنده میتواند سیگنال کلاک شمارنده بعدی را به وجود بیاورد.
استفاده از این روش مهم است چرا که ممکن است بیت بعدی هنگامی که بیت قبلی از سطح بالا به پایین میرود تغییر وضعیت دهد شمارندههای سنکرون معمولاً دارای یک پایه هستند که شمارندهها را بدون ایجاد تأخیر انتشار به یکدیگر پیوند میدهد.
خلاصهی شمارندههای سنکرون
- شمارندههای سنکرون میتوانند از فلیپفلاپهای نوع D یا T ساخته شوند.
- طراحی شمارندههای سنکرون نسبت به شمارندههای غیرسنکرون سادهتر میباشد.
- به این دلیل شمارنده سنکرون نامیده میشوند که سیگنال ورودی کلاک تمام فلیپفلاپها به طور همزمان دریافت میشود علاوه بر این، این سیگنال برای تمام فلیپفلاپها یکسان است.
- این پالس کلاک مشترک باعث میشود که تمام خروجی ها به طور همزمان وضعیت شان را تغییر دهند.
- به دلیل اتصال تمام ورودیهای کلاک به یکدیگر تأخیر انتشار وجود ندارد.
- شمارندههای سنکرون، شمارندههای موازی نیز نامیده میشوند چرا که کلاک به صورت موازی توسط تمام فلیپفلاپها دریافت میشود.
- مدارات دارای حافظه وضعیت فعلی شمارندهها را ثبت میکنند.
- ترتیب شمارش توسط دروازههای منطقی کنترل میشود.
- به طور کلی از شمارندههای آسنکرون سریعتر میباشند.
در مقاله بعدی شمارندههای دو جهته را شرح خواهیم داد که قادر هستند هم از بالا به پایین و هم از پایین به بالا شمارش را انجام بدهند.