Бінарний Код Ґрея Унітарний 000 000 00000001 001 001 00000010 010 011 00000100 011 010 00001000 100 110 00010000 101 111 00100000 110 101 01000000 111 100 10000000
В цифрових схемах та машинному навчанні уніта́рний код, або прями́й уніта́рний код () — це група бітів, серед яких дозволеними комбінаціями значень є лише ті, в яких встановлено (1) лише один біт, а всі інші вимкнено (0). Подібне втілення, в якому всі біти є «1», крім одного «0», іноді називають зворотним (інверсним) унітарним кодом (). У статистиці подібну методику для представлення категорійних даних представляють .
Застосування
Унітарний код часто використовують для вказування стану скінченного автомата. При використанні двійкового коду або коду Ґрея для визначення стану потрібен дешифратор. Проте скінченний автомат з унітарним кодом не потребує дешифратора, оскільки він перебуває в n-тому стані тоді й лише тоді, коли встановлено n-тий біт.
Прикладом скінченного автомата є з 15 послідовно впорядкованими станами. «Унітарне» втілення матиме 15 з'єднаних ланцюжком тригерів, де вихід Q кожного з тригерів з'єднано з входом D кожного наступного, а вхід D першого тригера з'єднано з виходом Q 15-го. Перший тригер в цьому ланцюжкові представляє перший стан, другий представляє другий стан, і так далі, до 15-го тригера, що представляє крайній стан. При скиданні цього скінченного автомата всі тригери встановлюються в «0», крім першого в ланцюжку, який встановлюється в «1». Прибуття на ці тригери фронту наступного синхроімпульсу просуває цей єдиний встановлений біт до другого тригера. Встановлений біт просувається таким чином до 15-го стану, після чого скінченний автомат повертається до першого стану.
здійснює перетворення з двійкового коду або коду Ґрея на унітарне представлення. перетворює унітарне представлення на двійковий код або код Ґрея.
В обробці природних мов вектор унітарного коду є матрицею 1 × N (вектором), який використовують, щоби відрізняти кожне слово зі словника від кожного іншого слова з цього словника. Цей вектор складається з 0-ів у всіх комірках, за виключенням у вигляді єдиної 1-ці в комірці, що використовуються виключно щоби ідентифікувати це слово.
Відмінності від інших методів кодування
Переваги Визначення стану має низькі та сталі витрати на доступ до одного тригера Зміна стану має низькі витрати на доступ до двох тригерів Простора проєктування та модифікації Простота виявляння недозволених станів Використання переваги численності тригерів ПКВМ
Використання унітарного втілення зазвичай дозволяє скінченному автоматові працювати на вищій частоті, ніж будь-якому іншому кодуванню цього скінченного автомата.Xilinx. "HDL Synthesis for FPGAs Design Guide". section 3.13: "Encoding State Machines". Appendix A: "Accelerate FPGA Macros with One-Hot Approach". 1995.
Недоліки Вимагає більше тригерів, ніж інші кодування, роблячи його непрактичним для пристроїв ПМЛ Багато станів є недозволеними
Див. також Двійково-п'ятіркове десяткове кодування Унарна система числення Єдиність Виключне або (логічний вентиль) Дешифратор
Примітки