LUT , яка виступає за таблиці перекодування , в загальних рисах, в основному це таблиця , яка визначає те , що вихід для будь-якого заданого входу (ів). У контексті комбінаційної логіки це таблиця істини . Ця таблиця істинності ефективно визначає, як поводиться ваша комбінаторна логіка.
Іншими словами, будь-яка поведінка, яку ви отримуєте, з'єднуючи будь-яку кількість воріт (наприклад, AND, NOR тощо), без шляхів зворотного зв’язку (щоб переконатися, що вони відсутні в стані), може бути реалізована LUT.
Те, як FPGA зазвичай реалізують комбінаторну логіку, відбувається за допомогою LUT, і коли FPGA конфігурується, вона просто заповнює вихідні значення таблиці, які називаються "LUT-маска", і фізично складається з бітів SRAM. Отже, той самий фізичний LUT може реалізувати Y = AB і Y = AB ', але LUT-маска інша, оскільки таблиця правдивості різна.
Ви також можете створити власні таблиці пошуку. Наприклад, ви можете побудувати таблицю для складної математичної функції, яка працювала б набагато швидше, ніж фактично обчислювати значення, дотримуючись алгоритм. Ця таблиця зберігатиметься в оперативній пам’яті чи ПЗУ.
Це приводить нас до розгляду LUT просто як пам'яті, де вхідними даними є адреса, а відповідні виходи - це дані, що зберігаються за вказаною адресою.
Ось знімок з FPGA Architecture від Altera: