Adaptive Logic Module (ALM) Definition
The Adaptive Logic Module (ALM) is the basic building block of supported device families (Arria® series, Cyclone® V, Stratix® IV, and Stratix® V) and is designed to maximize performance and resource usage. Each ALM can support up to eight inputs and eight outputs, contains two or four register logic cells (lc_ff) and two combinational logic cells (lc_comb), two dedicated full adders, a carry chain, a register chain, and a 64-bit LUT mask. In Stratix® IV, and Stratix® V family devices, you can implement the two combinational logic cells (mp_comb) as register, combinational, or MLAB logic cells. In Arria® V, Cyclone® V, and Stratix® V family devices, you can implement the two combinational logic cells (mp_comb) as combinational, or MLAB logic cells
Each LAB inArria® V , Cyclone® V , Stratix® IV, and Stratix® V family devices contains ten ALMs. Each ALM drives the local, row, column, carry chain, register chain, and direct link interconnects.
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
The ALM operates in adaptive combinational logic mode (normal mode), extended LUT mode (7-input function mode), arithmetic mode, and shared arithmetic mode.