Estoy intentando implementar t flop usando d flip flop en veilog para lo cual mi código de flip flop es así:
module dff(D, CLK, RESET, Q, QOUT);
input D, CLK, RESET; // Inputs to flip flop
output Q, QOUT; // Output of flip flops
reg Q, QOUT; // Flip Flops need to store the previous value, therefore using reg
always @ (posedge CLK or posedge RESET) begin // This block executes every time at rising edge of clk or reset
if(RESET) // If reset is high
begin
Q <= 1'b0;
QOUT <= 1'b1;
end
else
begin
Q <= D;
QOUT <= ~D;
end
end
endmodule
Y estoy usando este dff en mi módulo t flip flop que se ve así
module tff(T, CLK, RESET, Q, QOUT);
input T, CLK, RESET;
output Q, QOUT;
wire out1;
wire out2;
assign out1 = T ^ out2;
dff uut(out1, CLK, RESET, Q, QOUT);
assign Q = out2;
endmodule
Pero al compilar el código obtengo un error que es Xst: 528 - Fuente múltiple en la unidad tff en la señal Q; esta señal está conectada a varios controladores.
Por favor, ayúdame cuando me equivoque en mi código