Eine LUT ist die Implementierung einer Wahrheitstabelle als Speicher. Betrachtet man die Eingänge der LUT als Adressleitungen des Speichers, kodiert jede Kombination von Eingangssignalen eine Speicheradresse. Am Ausgang der LUT liegt immer der Inhalt der ausgewählten Speicherzelle an. Dieser entspricht dem Wert der logischen Funktion für diese Eingangsbelegung. Durch Festlegen der Speicherinhalte lässt sich die logische Funktion, die die LUT modelliert, frei bestimmen. Um ein Logikgatter auf eine LUT abzubilden, wird die Wahrheitstabelle des Gatters auf die LUT übertragen. Hat das Logikgatter weniger oder gleich viele Eingänge wie die LUT, ist die Abbildung direkt möglich. Bleibt ein Eingang unbelegt, muss die Wahrheitstabelle doppelt in der LUT abgelegt werden, so dass das Ergebnis am Ausgang vom Wert des nicht belegten Signals unbeeinflusst bleibt. Sieht man die LUT als Speicher, halbiert sich der verwendete Adressraum. Hat ein Logikgatter mehr Eingänge als eine LUT, muss es auf mehrere LUTs aufgeteilt werden. Diese enthalten dann jeweils einen Teil der logischen Funktion des Gatters und bilden zusammengenommen die Funktion korrekt ab.