multiple drivers due to the non-tri-state driver
Can someone please help me with this error.
Warning (13035): Inserted always-enabled tri-state buffer between "VGAController:vgaController|dataH" and its non-tri-state driver.
Error (13076): The node "VGAController:vgaController|dataH" has multiple drivers due to the non-tri-state driver "SDRAMController8Bit:sdramController|ioData[8]"
Does this mean that there is more than one thing trying to drive ioData or dataH? I read the error as saying that more than one thing is trying to drive dataH because ioData is a driver. Either way, it makes no sense to me in my Verilog code:
module SDRAMController8Bit #( parameter ADDR_WIDTH=21, DATA_WIDTH=16 ) ( // ioData is wired to dataBus wire in my top module inout wire [DATA_WIDTH-1 : 0 ] ioData, .. module VGAController #( parameter ADDR_WIDTH=20, DATA_WIDTH=16 ) ( // iData is wired to dataBus wire in my top module input wire [DATA_WIDTH-1 : 0 ] iData, input logic iDataAvailable, .. byte unsigned dataH = 0; .. logic [15 : 0 ] iDataCopy = 0; always @( posedge iClk ) .. if( iDataAvailable ) begin iDataCopy = iData; dataH = iDataCopy[ 15 : 8 ];
There must be something wrong with that last if() statement? To me, dataH is not directly assigned or connected to iData because it is assigned what's in iDataCopy.
Can somebody please help me out here?