Gdy bramka mam 2 wejścia i jedno wyjście, potrzeba 4 bitów do zapisu typu bramki. Mamy 16 możliwości:
0000 - nudne, zawsze da zero
0001 - or
0010 - NOT implikacja
0011 - tylko drugi się liczy
0100 - NOT zamieniona implikacja
0101 - tylko pierwszy się liczy
0110 - xor
0111 - and
1000 - nand
1001 - xnor
1010 - tylko NOT pierwszego się liczy
1011 - zamieniona implikacja
1100 - tylko NOT drugiego się liczy
1101 - implikacja p,q
1110 - nor
1111 - nudne, zawsze da jeden
A jak to jest w FPGA? 1 CLB = 4 slice, które dzielą się na dwie tablice LUT, z których każda ma 4 wejścia i jedno wyjście. Programuje/konfiguruje się w ten sposób że dla LUT przekazuje się 16 bitową wartość określającą jak ma się zachowywać? Czy nie lepiej były by drobniejsze elementy, takie jednobramkowe? Choć ilość, mimo że układy FPGA są tworzone w technologii liczonej w nanometrach, nie jest imponująca. Ilość bramek i pamięci mierzy się w tysiącach, jak to się ma do 16 GB pamięci flash? Dlaczego pamięci mogą mieć znacznie więcej podstawowych elementów? Jeszcze Xilinx ma te układy bogatsze a układy innych firm mają dość mało bramek.