ID:13048 Converted tri-state node <name> into a selector
CAUSE: The design contains a tri-state node that feeds a non-tri-state logic, but the chip does not support internal tri-states. As a result, the Quartus Prime software converts the tri-state node to an equivalent logic (a selector). The tri-state node is fed by two or more tri-state buffers. When exactly one of the tri-state buffers is enabled, the value of the new logic will be equal to the data feeding that tri-state buffer. But, when zero, or two, or more tri-state buffers is enabled, the value of the new logic is considered a "don't care", and can therefore be an arbitrary value. For example in the following design, the node triwire will be converted to a selector.
module test1 (input oe1, data1, oe2, data2, in, output out); wire triwire, tmp; assign triwire = oe1 ? data1 : 1'bz; assign triwire = oe2 ? data2 : 1'bz; and(tmp, in, triwire); assign out = tmp; endmodule
ACTION: Avoid this warning by replacing the tri-state node with a non-tri-state logic.