ID:13049 Converted tri-state buffer "<name>" feeding internal logic into a wire

CAUSE: The specified tri-state buffer only feeds non-tri-state logic, but the chip does not support internal tri-state buffers. Therefore, the behavior of the non-tri-state nodes is undefined when it is driven by High Impedance (Z). As a result, the Quartus Prime software converts the tri-state buffer to a wire as a "don't care" minimization. Consider the following design:
	module test1 (input oe1, data1, in, output out); 
	wire tribuf, tmp; 
	assign tribuf = oe1 ? data1 : 1'bz; 
	and(tmp, in, tribuf); 
	assign out = tmp; 
	endmodule 

               
Here, the tri-state buffer tribuf only drives a non-tri-state node (the AND gate). As a result, the tri-state buffer will be converted to a wire. Note that an inversion also counts as non-tri-state logic. So, the node tribuf in the design test2 will also be converted to a wire.
	module test2 (input oe1, data1, output out); 
	wire tribuf; 
	assign tribuf = oe1 ? data1 : 1'bz; 
	assign out = !tribuf; 
	endmodule 

               

ACTION: Avoid this warning by replacing the tri-state node with non-tri-state logic.