Primitive: CLB MUX to connect two MUXF7's Together
- PRIMITIVE_GROUP: CLB
- PRIMITIVE_SUBGROUP: MUXF
- Families: UltraScale, UltraScale+
Introduction
This design element is a two input multiplexer which, in combination with two MUXF7 and four LUT6 elements will let you create any 8-input logic function, an 16-to-1 multiplexer, or other logic functions up to 27-bits wide all within a single CLB. Outputs of the MUXF7 elements are connected to the I0 and I1 inputs of the MUXF8. The S input is driven from any net. When Low, S selects I0. When High, S selects I1.
Logic Table
Inputs | Outputs | ||
---|---|---|---|
S | I0 | I1 | O |
0 | I0 | X | I0 |
1 | X | I1 | I1 |
X | 0 | 0 | 0 |
X | 1 | 1 | 1 |
Port Descriptions
Port | Direction | Width | Function |
---|---|---|---|
I0 | Input | 1 | MUX data input. Connects to the output of a MUXF7 located in the same CLB. |
I1 | Input | 1 | MUX data input. Connects to the output of a MUXF7 located in the same CLB. |
O | Output | 1 | Data output from the CLB MUX. |
S | Input | 1 | Selects between the I0 (S=0) or I1 (S=1) inputs to the MUX. |
Design Entry Method
Instantiation | Yes |
Inference | Recommended |
IP and IP Integrator Catalog | No |
VHDL Instantiation Template
Unless they already exist, copy the following
two statements and paste them before the entity declaration.
Library UNISIM;
use UNISIM.vcomponents.all;
-- MUXF8: CLB MUX to connect two MUXF7's Together
-- UltraScale
-- Xilinx HDL Language Template, version 2022.1
MUXF8_inst : MUXF8
port map (
O => O, -- 1-bit output: Output of MUX
I0 => I0, -- 1-bit input: Connect to MUXF7 output
I1 => I1, -- 1-bit input: Connect to MUXF7 output
S => S -- 1-bit input: Input select to MUX
);
-- End of MUXF8_inst instantiation
Verilog Instantiation Template
// MUXF8: CLB MUX to connect two MUXF7's Together
// UltraScale
// Xilinx HDL Language Template, version 2022.1
MUXF8 MUXF8_inst (
.O(O), // 1-bit output: Output of MUX
.I0(I0), // 1-bit input: Connect to MUXF7 output
.I1(I1), // 1-bit input: Connect to MUXF7 output
.S(S) // 1-bit input: Input select to MUX
);
// End of MUXF8_inst instantiation
Related Information
- See the UltraScale Architecture Configurable Logic Block User Guide (UG574).