dp_8to1mx16.v 5.93 KB
/*
*************************************************************************
*									*
*               Copyright (C) 1994, Silicon Graphics, Inc.		*
*									*
*  These coded instructions, statements, and computer programs  contain	*
*  unpublished  proprietary  information of Silicon Graphics, Inc., and	*
*  are protected by Federal copyright  law.  They  may not be disclosed	*
*  to  third  parties  or copied or duplicated in any form, in whole or	*
*  in part, without the prior written consent of Silicon Graphics, Inc.	*
*									*
*************************************************************************
*/

/*
*************************************************************************
*									*
*  Project Reality							*
*									*
*  module:	dp_8to1mx16.v						*
*  description:	16 bit 8 to 1 high performance mux using mx81d1h cells	*
*									*
*  designer:	Brian Ferguson						*
*  date:	3/15/95							*
*									*
*************************************************************************
*/

// $Id: dp_8to1mx16.v,v 1.1 2002/03/28 00:26:14 berndt Exp $

module dp_8to1mx16 (
			input0,
			input1,
			input2,
			input3,
			input4,
			input5,
			input6,
			input7,
			select,
			output_data
		     ) ;

input	[15:0]	input0 ;
input	[15:0]	input1 ;
input	[15:0]	input2 ;
input	[15:0]	input3 ;
input	[15:0]	input4 ;
input	[15:0]	input5 ;
input	[15:0]	input6 ;
input	[15:0]	input7 ;

input	[2:0]	select ;

output	[15:0]	output_data ;


	mx81d1h	mx_b0 (	.z		(output_data[0]),
			.i0		(input0[0]),
			.i1		(input1[0]),
			.i2		(input2[0]),
			.i3		(input3[0]),
			.i4		(input4[0]),
			.i5		(input5[0]),
			.i6		(input6[0]),
			.i7		(input7[0]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b1 (	.z		(output_data[1]),
			.i0		(input0[1]),
			.i1		(input1[1]),
			.i2		(input2[1]),
			.i3		(input3[1]),
			.i4		(input4[1]),
			.i5		(input5[1]),
			.i6		(input6[1]),
			.i7		(input7[1]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b2 (	.z		(output_data[2]),
			.i0		(input0[2]),
			.i1		(input1[2]),
			.i2		(input2[2]),
			.i3		(input3[2]),
			.i4		(input4[2]),
			.i5		(input5[2]),
			.i6		(input6[2]),
			.i7		(input7[2]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b3 (	.z		(output_data[3]),
			.i0		(input0[3]),
			.i1		(input1[3]),
			.i2		(input2[3]),
			.i3		(input3[3]),
			.i4		(input4[3]),
			.i5		(input5[3]),
			.i6		(input6[3]),
			.i7		(input7[3]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b4 (	.z		(output_data[4]),
			.i0		(input0[4]),
			.i1		(input1[4]),
			.i2		(input2[4]),
			.i3		(input3[4]),
			.i4		(input4[4]),
			.i5		(input5[4]),
			.i6		(input6[4]),
			.i7		(input7[4]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b5 (	.z		(output_data[5]),
			.i0		(input0[5]),
			.i1		(input1[5]),
			.i2		(input2[5]),
			.i3		(input3[5]),
			.i4		(input4[5]),
			.i5		(input5[5]),
			.i6		(input6[5]),
			.i7		(input7[5]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b6 (	.z		(output_data[6]),
			.i0		(input0[6]),
			.i1		(input1[6]),
			.i2		(input2[6]),
			.i3		(input3[6]),
			.i4		(input4[6]),
			.i5		(input5[6]),
			.i6		(input6[6]),
			.i7		(input7[6]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b7 (	.z		(output_data[7]),
			.i0		(input0[7]),
			.i1		(input1[7]),
			.i2		(input2[7]),
			.i3		(input3[7]),
			.i4		(input4[7]),
			.i5		(input5[7]),
			.i6		(input6[7]),
			.i7		(input7[7]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b8 (	.z		(output_data[8]),
			.i0		(input0[8]),
			.i1		(input1[8]),
			.i2		(input2[8]),
			.i3		(input3[8]),
			.i4		(input4[8]),
			.i5		(input5[8]),
			.i6		(input6[8]),
			.i7		(input7[8]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b9 (	.z		(output_data[9]),
			.i0		(input0[9]),
			.i1		(input1[9]),
			.i2		(input2[9]),
			.i3		(input3[9]),
			.i4		(input4[9]),
			.i5		(input5[9]),
			.i6		(input6[9]),
			.i7		(input7[9]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b10 (.z		(output_data[10]),
			.i0		(input0[10]),
			.i1		(input1[10]),
			.i2		(input2[10]),
			.i3		(input3[10]),
			.i4		(input4[10]),
			.i5		(input5[10]),
			.i6		(input6[10]),
			.i7		(input7[10]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b11 (.z		(output_data[11]),
			.i0		(input0[11]),
			.i1		(input1[11]),
			.i2		(input2[11]),
			.i3		(input3[11]),
			.i4		(input4[11]),
			.i5		(input5[11]),
			.i6		(input6[11]),
			.i7		(input7[11]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b12 (.z		(output_data[12]),
			.i0		(input0[12]),
			.i1		(input1[12]),
			.i2		(input2[12]),
			.i3		(input3[12]),
			.i4		(input4[12]),
			.i5		(input5[12]),
			.i6		(input6[12]),
			.i7		(input7[12]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b13 (.z		(output_data[13]),
			.i0		(input0[13]),
			.i1		(input1[13]),
			.i2		(input2[13]),
			.i3		(input3[13]),
			.i4		(input4[13]),
			.i5		(input5[13]),
			.i6		(input6[13]),
			.i7		(input7[13]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b14 (.z		(output_data[14]),
			.i0		(input0[14]),
			.i1		(input1[14]),
			.i2		(input2[14]),
			.i3		(input3[14]),
			.i4		(input4[14]),
			.i5		(input5[14]),
			.i6		(input6[14]),
			.i7		(input7[14]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;


	mx81d1h	mx_b15 (.z		(output_data[15]),
			.i0		(input0[15]),
			.i1		(input1[15]),
			.i2		(input2[15]),
			.i3		(input3[15]),
			.i4		(input4[15]),
			.i5		(input5[15]),
			.i6		(input6[15]),
			.i7		(input7[15]),
			.s0		(select[0]),
			.s1		(select[1]),
			.s2		(select[2])
		      ) ;



endmodule  //  dp_8to1mx16