Primitive: CLB MUX to connect two MUXF8s Together
- PRIMITIVE_GROUP: CLB
- PRIMITIVE_SUBGROUP: MUXF
- Families: UltraScale, UltraScale+
Introduction
This design element is a two input multiplexer which, in combination with two MUXF8s, four MUXF7s and eight LUT6 elements will let you create any 9-input logic function, a 32-to-1 multiplexer, or other logic functions up to 55-bits wide all within a single CLB. Outputs of the MUXF8 elements are connected to the I0 and I1 inputs of the MUXF9. 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 MUXF8 located in the same CLB. |
I1 | Input | 1 | MUX data input. Connects to the output of a MUXF8 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;
-- MUXF9: CLB MUX to connect two MUXF8s Together
-- UltraScale
-- Xilinx HDL Language Template, version 2022.2
MUXF9_inst : MUXF9
port map (
O => O, -- 1-bit output: Output of MUX
I0 => I0, -- 1-bit input: Connect to MUXF8 output
I1 => I1, -- 1-bit input: Connect to MUXF8 output
S => S -- 1-bit input: Input select to MUX
);
-- End of MUXF9_inst instantiation
Verilog Instantiation Template
// MUXF9: CLB MUX to connect two MUXF8s Together
// UltraScale
// Xilinx HDL Language Template, version 2022.2
MUXF9 MUXF9_inst (
.O(O), // 1-bit output: Output of MUX
.I0(I0), // 1-bit input: Connect to MUXF8 output
.I1(I1), // 1-bit input: Connect to MUXF8 output
.S(S) // 1-bit input: Input select to MUX
);
// End of MUXF9_inst instantiation
Related Information
- See the UltraScale Architecture Configurable Logic Block User Guide (UG574).