cbus_driver.v 2.86 KB
// cbus_driver.v v1 Frank Berndt;
// cbus tri-state driver;

module cbus_driver (
	cbus_data_out,
	cbus_enable,
	cbus_data
);

	input [31:0] cbus_data_out;
	input cbus_enable;
	output [31:0] cbus_data;

	// use define to assign tri-state driver from cell library;
	// XXX replace nt01d5


        assign cbus_data = cbus_enable ? cbus_data_out : {32{1'bz}};


// `define	CBUS_DRV nt01d5

	// `CBUS_DRV g00(.i(cbus_data_out[00]), .oe(cbus_enable), .z(cbus_data[00]));
	// `CBUS_DRV g01(.i(cbus_data_out[01]), .oe(cbus_enable), .z(cbus_data[01]));
	// `CBUS_DRV g02(.i(cbus_data_out[02]), .oe(cbus_enable), .z(cbus_data[02]));
	// `CBUS_DRV g03(.i(cbus_data_out[03]), .oe(cbus_enable), .z(cbus_data[03]));
	// `CBUS_DRV g04(.i(cbus_data_out[04]), .oe(cbus_enable), .z(cbus_data[04]));
	// `CBUS_DRV g05(.i(cbus_data_out[05]), .oe(cbus_enable), .z(cbus_data[05]));
	// `CBUS_DRV g06(.i(cbus_data_out[06]), .oe(cbus_enable), .z(cbus_data[06]));
	// `CBUS_DRV g07(.i(cbus_data_out[07]), .oe(cbus_enable), .z(cbus_data[07]));
	// `CBUS_DRV g08(.i(cbus_data_out[08]), .oe(cbus_enable), .z(cbus_data[08]));
	// `CBUS_DRV g09(.i(cbus_data_out[09]), .oe(cbus_enable), .z(cbus_data[09]));
	// `CBUS_DRV g10(.i(cbus_data_out[10]), .oe(cbus_enable), .z(cbus_data[10]));
	// `CBUS_DRV g11(.i(cbus_data_out[11]), .oe(cbus_enable), .z(cbus_data[11]));
	// `CBUS_DRV g12(.i(cbus_data_out[12]), .oe(cbus_enable), .z(cbus_data[12]));
	// `CBUS_DRV g13(.i(cbus_data_out[13]), .oe(cbus_enable), .z(cbus_data[13]));
	// `CBUS_DRV g14(.i(cbus_data_out[14]), .oe(cbus_enable), .z(cbus_data[14]));
	// `CBUS_DRV g15(.i(cbus_data_out[15]), .oe(cbus_enable), .z(cbus_data[15]));
	// `CBUS_DRV g16(.i(cbus_data_out[16]), .oe(cbus_enable), .z(cbus_data[16]));
	// `CBUS_DRV g17(.i(cbus_data_out[17]), .oe(cbus_enable), .z(cbus_data[17]));
	// `CBUS_DRV g18(.i(cbus_data_out[18]), .oe(cbus_enable), .z(cbus_data[18]));
	// `CBUS_DRV g19(.i(cbus_data_out[19]), .oe(cbus_enable), .z(cbus_data[19]));
	// `CBUS_DRV g20(.i(cbus_data_out[20]), .oe(cbus_enable), .z(cbus_data[20]));
	// `CBUS_DRV g21(.i(cbus_data_out[21]), .oe(cbus_enable), .z(cbus_data[21]));
	// `CBUS_DRV g22(.i(cbus_data_out[22]), .oe(cbus_enable), .z(cbus_data[22]));
	// `CBUS_DRV g23(.i(cbus_data_out[23]), .oe(cbus_enable), .z(cbus_data[23]));
	// `CBUS_DRV g24(.i(cbus_data_out[24]), .oe(cbus_enable), .z(cbus_data[24]));
	// `CBUS_DRV g25(.i(cbus_data_out[25]), .oe(cbus_enable), .z(cbus_data[25]));
	// `CBUS_DRV g26(.i(cbus_data_out[26]), .oe(cbus_enable), .z(cbus_data[26]));
	// `CBUS_DRV g27(.i(cbus_data_out[27]), .oe(cbus_enable), .z(cbus_data[27]));
	// `CBUS_DRV g28(.i(cbus_data_out[28]), .oe(cbus_enable), .z(cbus_data[28]));
	// `CBUS_DRV g29(.i(cbus_data_out[29]), .oe(cbus_enable), .z(cbus_data[29]));
	// `CBUS_DRV g30(.i(cbus_data_out[30]), .oe(cbus_enable), .z(cbus_data[30]));
	// `CBUS_DRV g31(.i(cbus_data_out[31]), .oe(cbus_enable), .z(cbus_data[31]));

endmodule