رمزگذار اولویت دار همه ورودی‌های داده را یکجا و یک بار می‌گیرند و در خروجی خود، آنها را به یک کد دودویی معادل تبدیل می‌کنند.

رمزگذار اولویت دار

برخلاف مولتی پلکسر که یک خط ورودی داده جداگانه را انتخاب می‌کند و سپس آن داده ها را به یک خط یا سوئیچ خروجی واحد می‌فرستد، رمزگذار دیجیتالی که معمولاً به نام رمزگذاری دودویی خوانده می‌شود، تمام ورودی‌های داده‌های خود را یکجا انجام می‌گیرد و سپس آنها را به یک خروجی رمزگذاری شده واحد تبدیل می‌کند.

بنابراین می‌توانیم بگوییم که رمزگذار دودویی، یک مدار منطقی ترکیبی چند ورودی است که داده های منطق “1” را در ورودی‌های خود به یک کد دودویی معادل در خروجی خود تبدیل می‌کند. معمولاً رمزگذارهای دیجیتال بسته به تعداد خطوط ورودی داده، خروجی کدهای 2 بیتی، 3 بیتی یا 4 بیتی تولید می‌کنند. رمزگذار دودویی “n  بیتی” دارای 2 خط ورودی و خطوط خروجی n بیتی با انواع متداول است که شامل پیکربندی خط 4 به 2، 8 به 3 و 16 به 4 می‌باشد.

خطوط خروجی یک رمزگذار دیجیتالی معادل دودیی خط ورودی را تولید می‌کند که مقدار آن برابر با “1” است و برای رمزگذاری الگوی ورودی اعشاری یا هگزا دسیمال به طور معمول یک کد خروجی باینری یا “BCD” (اعشاری رمزگذاری شده دودویی) در موجود است.

رمزگذار اولویت دار دودویی 4 به 2 بیتی

رمزگذار اولویت دار دودویی 4 به 2 بیتی

یکی از معایب اصلی رمزگذارهای دیجیتالی استاندارد این است که وقتی بیش از یک ورودی در سطح منطقی “1” وجود داشته باشد، می‌توانند کد خروجی اشتباه را تولید کنند. به عنوان مثال، اگر ورودی‌ها D1 و D2  بالا را در منطق “1” به طور همزمان ایجاد کنیم، خروجی حاصل در “01” یا “10” نیست بلکه در “11” خواهد بود که یک عدد دودویی خروجی است که با ورودی واقعی موجود متفاوت است.

هنگامی که تمام ورودی‌های آن در “0” باشد یا وقتی ورودی D0 برابر با یک باشد، می‌توان کد خروجی را از همه منطق “0” ایجاد کرد. یک راه ساده برای رفع این مشکل، “اولویت‌بندی” سطح هر پین ورودی است.

بنابراین اگر بیش از یک ورودی در سطح منطقی “1” به طور همزمان وجود داشته باشد، کد خروجی واقعی فقط با ورودی با بالاترین اولویت تعیین شده مطابقت دارد. سپس این نوع رمزگذار دیجیتالی معمولاً به عنوان رمزگذار اولویتی یا رمز گذار P به طور کوتاه شناخته می‌شود.

رمزگذار اولویت دار با اختصاص سطح اولویت به هر ورودی، مشکلات ذکر شده در بالا را حل می‌کند. خروجی رمزگذار اولویت دار متناظر با ورودی فعال فعلی که بالاترین اولویت را دارد، است. بنابراین وقتی ورودی با اولویت بالاتر وجود دارد، تمام ورودی‌های دیگر با اولویت پایین نادیده گرفته می‌شوند. رمزگذار اولویت دار در اشکال مختلف با نمونه‌ای از رمزگذار اولویتی 8 ورودی به همراه جدول درستی آن در زیر آمده است.

رمز گذار اولویت دار 8 به 3 بیتی

رمز گذار اولویت دار 8 به 3 بیتی

رمزگذار اولویت دار به صورت IC استاندارد در دسترس هستند و TTL 74LS148 یک رمزگذار اولویت دار 8 به 3 بیتی است که دارای هشت ورودی فعال LOW (منطق “0”) است و یک کد 3 بیتی از بالاترین ورودی را در خروجی خود ارائه می‌دهد.

رمزگذارهای اولویت دار بالاترین مقدار ورودی را مرتباً وارد می‌کنند، به عنوان مثال، اگر خطوط ورودی “D2” ، “D3” و “D5” بطور همزمان استفاده شوند، کد خروجی برای ورودی (“D5” (“101” خواهد بود زیرا این از 3 ورودی بالاترین مرتبه را دارد. پس از حذف ورودی “D5″، بالاترین کد خروجی بعدی برای ورودی (“D3” (“011” و غیره خواهد بود.

جدول درستی رمزگذار اولویت دار 8 به 3 بیتی

بطوریکه X معادل با “بدون اهمیت” که منطق “0” یا منطق “1” است.

از این جدول درستی، عبارت بولی برای رمزگذار فوق با ورودی‌های D0 تا D7 و خروجی‌های Q0 ،Q1 ،Q2 به شرح زیر است:

خروجی Q0

خروجی Q1

خروجی Q2

سپس عبارت بولی نهایی برای رمز گذار اولویتی شامل ورودی های صفر است که بصورت زیر تعریف شده است.

عبارت خروجی رمزگذار الویت دار

در عمل این ورودی‌های صفر نادیده گرفته می‌شوند و اجازه اعمال عبارت بولی نهایی برای خروجی رمزگذار اولویت 8 به 3 را می‌دهند. ما می‌توانیم یک رمزگذار ساده را از عبارت فوق با استفاده از گیت‌های انفرادی به صورت زیر بسازیم.

رمزگذار دیجیتال با استفاده از گیت های منطقی

رمزگذار دیجیتال با استفاده از گیت‌های منطقی

رمزگذار صفحه کلید

از رمزگذارهای اولویت دار می‌توان برای کاهش تعداد سیم مورد نیاز در یک مدار خاص یا برنامه خاص که دارای ورودی های متعدد هستند استفاده کرد. به عنوان مثال، فرض کنید که یک میکرو کامپیوتر می‌بایست 104 کلید یک صفحه کلید QWERTY استاندارد را بخواند که در آن زمان فقط یک کلید می‌تواند “HIGH” یا “LOW” فشرده شود.

یک راه این است که تمام 104 سیم را از کلیدهای جداگانه روی صفحه کلید به طور مستقیم به ورودی رایانه‌ها متصل کنید اما این برای یک کامپیوتر خانگی کوچک غیر عملی است. راه جایگزین و بهتر دیگر این است که رابط صفحه کلید با رایانه شخصی با استفاده از رمزگذار اولویت دار باشد.

104 دکمه یا کلید جداگانه می‌توانند در یک کد استاندارد ASCII فقط با 7 بیت (0 تا 127 اعشار) رمزگذاری شوند تا هر کلید یا کاراکتر کیبورد را نشان دهد و سپس به عنوان یک کد BCD بسیار کوچکتر 7 بیتی مستقیماً به رایانه وارد شود. . رمزگذارهای صفحه کلید مانند رمزگذار 20 کلیدی 74C923 برای انجام این کار در دسترس هستند.

رمزگذارهای موقعیتی

کاربرد متداول دیگر در کنترل موقعیت مکانی مغناطیسی است که در جهت یابی کشتی‌ها یا برای قرارگیری بازوی روباتیک و غیره استفاده می‌شود در اینجا برای مثال، موقعیت زاویه‌ای یا چرخشی یک قطب نما توسط یک رمزگذار اولویت دار 8 به 3 خط 74LS148 به کد دیجیتال تبدیل می‌شود و ورودی به رایانه سیستم‌ها برای تهیه داده‌های جهت‌یابی و نمونه‌ای از رمزگذار ساده خروجی 8 بیت به 3 بیتی در زیر نشان داده شده است. در هر نقطه  از قطب نما از آهنرباها و سوئیچ‌ها برای نشان دادن  موقعیت زاویه‌ای سوزن‌ها استفاده می‌شود.

جهت یابی رمزگذار اولویت دار

جهت‌یابی رمزگذار اولویت دار

درخواست های وقفه در رمزگذار اولویت دار

کاربردهای دیگر بخصوص برای رمزگذارهای اولویت دار ممکن است شامل وقفه در برنامه‌های ریز پردازنده باشد. در اینجا ریزپردازنده از وقفه استفاده می‌کند تا دستگاه‌های جانبی مانند درایو دیسک، اسکنر، ماوس یا پرینتر و غیره بتوانند با آن ارتباط برقرار کنن، اما ریزپردازنده فقط می‌تواند “صحبت” با یک دستگاه محیطی را در یک زمان انجام دهد بنابراین نیاز به دانستن اینکه یک دستگاه خاص محیطی می‌خواهد با آن ارتباط برقرار کند دارد.

پردازنده این کار را با استفاده از سیگنال‌های “درخواست‌های “وقفه” یا “IRQ” انجام می‌دهد تا اولویت را به همه دستگاه‌های جانبی اختصاص دهد تا از مهمترین دستگاه جانبی سرویس استفاده کنند. از آنجا که اجرای چنین سیستمی با استفاده از رمزگذارهای اولویت دار مانند رمزگذار اولویت دار استاندارد 74LS148 شامل مدارهای منطقی اضافی است، مدارهای یکپارچه ساخته شده با هدف مانند کنترل کننده قطع اولویت قابل‌برنامه ریزی 8259 در دسترس است.

خلاصه رمزگذار دیجیتال

برای خلاصه کردن رمز گذار دیجیتال، یک مدار ترکیبی است که در پاسخ به یک یا چند ورودی فعال، یک کد خاص را در خروجی‌های خود مانند دودویی  یا BCD ایجاد می‌کند. دو رمزگذار اصلی دیجیتال وجود دارد. رمزگذار دودویی و رمزگذار اولویتی

دیدم که رمز گذار دودویی یکی از 2 ورودی را به خروجی n  بیتی تبدیل می‌کند. سپس یک رمزگذار دودویی تعداد بیت‌های خروجی کمتری نسبت به کد ورودی دارد. رمزگذارهای باینری برای فشرده‌سازی داده‌ها مفید هستند و می توانند از گیت‌های ساده AND یا OR ساخته شد. یکی از معایب اصلی رمزگذار باینری استاندارد این است که اگر بیش از یک ورودی هم زمان فعال باشد، در خروجی‌ها خطا ایجاد می‌شود. برای غلبه بر این مشکل، رمزگذارهای اولویتی توسعه داده شدند.

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