π LUT
LUT (Look-Up Table) β Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ΅ΠΌΡΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² FPGA, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠ΅ Π±ΡΠ»Π΅Π²Ρ ΡΡΠ½ΠΊΡΠΈΠΈ Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π²Ρ ΠΎΠ΄ΠΎΠ².
π§ ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
LUT ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ ΠΏΠ°ΠΌΡΡΡ (ΠΎΠ±ΡΡΠ½ΠΎ 4β6 Π±ΠΈΡ Π²Ρ
ΠΎΠ΄Π°), Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π°ΠΏΠΈΡΠ°Π½Ρ Π²ΡΡ
ΠΎΠ΄Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ Π²Ρ
ΠΎΠ΄ΠΎΠ².
ΠΡΠΈ ΠΏΠΎΠ΄Π°ΡΠ΅ Π²Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° Π°Π΄ΡΠ΅ΡΡΠ΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΡΡΠ΅ΠΉΠΊΠ° β ΠΈ Π½Π° Π²ΡΡ
ΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
ΠΡΠΈΠΌΠ΅Ρ: 2-Π²Ρ
ΠΎΠ΄ΠΎΠ²Π°Ρ LUT ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΡ ΡΡΠ½ΠΊΡΠΈΡ f(A, B)
β AND, OR, XOR ΠΈ Π΄Ρ., Π·Π°Π΄Π°Π² ΡΠ°Π±Π»ΠΈΡΡ ΠΈΡΡΠΈΠ½Π½ΠΎΡΡΠΈ.
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ LUT:
n
Π²Ρ ΠΎΠ΄ΠΎΠ² (ΠΎΠ±ΡΡΠ½ΠΎ 4, 5 ΠΈΠ»ΠΈ 6)2^n
Π±ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΡΡΠΈΠ½Π½ΠΎΡΡΠΈ)- 1 Π²ΡΡ ΠΎΠ΄ (ΠΈΠ½ΠΎΠ³Π΄Π° Π±ΠΎΠ»ΡΡΠ΅, Π΅ΡΠ»ΠΈ LUT ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π°)
- ΠΠ½ΠΎΠ³Π΄Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ MUX ΠΈ ΡΡΠΈΠ³Π³Π΅Ρ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅
βοΈ ΠΠ΄Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ
ΠΠ±Π»Π°ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ | ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
---|---|
FPGA | ΠΠ°Π·ΠΎΠ²ΡΠΉ ΡΡΡΠΎΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π±Π»ΠΎΠΊ Π² CLB |
Programmable Logic | Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π±ΡΠ»Π΅Π²ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ |
Finite State Machine FSM | ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ |
DSP Blocks | ΠΡΡΡΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΏΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ |
π» ΠΡΠΈΠΌΠ΅Ρ (Π½Π° Verilog)
// Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ XOR ΡΠ΅ΡΠ΅Π· LUT-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ
module xor_gate(input a, input b, output y);
assign y = a ^ b;
endmodule
π Π‘Ρ Π΅ΠΌΠ° LUT-4
ΠΡ
ΠΎΠ΄Ρ: A, B, C, D
ββββ
+------------------+
| Π’Π°Π±Π»ΠΈΡΠ° 16 Π±ΠΈΡ | β (Π°Π΄ΡΠ΅ΡΠΈΡΡΠ΅ΡΡΡ Π²Ρ
ΠΎΠ΄Π°ΠΌΠΈ)
+------------------+
β
ΠΡΡ
ΠΎΠ΄
β ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°
-
ΠΠΈΠ±ΠΊΠΎΡΡΡ: ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π»ΡΠ±ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ n Π²Ρ ΠΎΠ΄Π°ΠΌΠΈ
-
ΠΡΡΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ° β ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅
-
ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π»ΠΎΠ³ΠΈΠΊΠΈ
β ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ
-
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΈΡΠ»Ρ Π²Ρ ΠΎΠ΄ΠΎΠ² (ΠΎΠ±ΡΡΠ½ΠΎ Π΄ΠΎ 6)
-
Π‘Π»ΠΎΠΆΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΡΠ΅Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ LUT ΠΈ Routing Matrix
-
ΠΠΈΠ·ΠΊΠ°Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠΈ Π±Π΅Π· DSP Blocks