Adaptive Logic Module (ALM) Definition
The Adaptive Logic Module (ALM) is a basic building block that maximizes performance and resource usage in Intel® FPGAs. Each ALM has the following characteristics:
- Supports up to eight inputs and eight outputs.
- Contains two or four register logic cells (lc_ff).
- Contains two combinational logic cells (lc_comb).
- Contains two dedicated full adders, a carry chain, a register chain, and a 64-bit LUT mask.
The ALM operates in adaptive combinational logic mode (normal mode), extended LUT mode (7-input function mode), arithmetic mode, and shared arithmetic mode.
The Intel® Stratix® 10 ALM has a high register count with 4 registers per 8-input fracturable LUT. The ALM operating in conjunction with the new HyperFlex architecture enables Intel® Stratix® 10 devices to maximize core performance at very high core logic utilization. The Intel® Stratix® 10 ALM implements select 7-input logic functions, all 6-input logic functions, and two independent functions consisting of smaller LUT sizes (such as two independent 4-input LUTs) to optimize core logic utilization.
You can implement the following types of functions in a single ALM:
- Two independent 4-input functions
- An independent 5-input function and an independent 3-input function
- A 5-input function and a 4-input function, if they share one input
- Two 5-input functions, if they share two inputs
- An independent 6-input function
- Two 6-input functions, if they share four inputs and share function
- Some 7-input functions