?? get_max6x1.v
字號:
//////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
`include "define.v"
module min6x1(
//output
index,
D,
//inputs
D1,
D2,
D3,
D4,
D5,
D6
);
output [2:0] index;
output [`BIT_WIDTH_DATA-1:0] D;
input [`BIT_WIDTH_DATA-1:0] D1,
D2,
D3,
D4,
D5,
D6;
wire [`BIT_WIDTH_DATA-1:0] D7,
D8,
D9,
D10;
wire [2:0] index7,
index8,
index9,
index10;
assign index7=(D2>D1)? 3'b001:3'b010;
assign index8=(D4>D3)? 3'b011:3'b100;
assign index9=(D6>D5)? 3'b101:3'b110;
assign D7=(D2>D1)? D1:D2;
assign D8=(D4>D3)? D3:D4;
assign D9=(D6>D5)? D5:D6;
assign D10=(D8>D7)? D7:D8;
assign index10=(D8>D7)? index7:index8;
assign index=(D10>D9)?index9:index10;
assign D=(D10>D9)? D9:D10;
endmodule
/////////////////////////////////////////////////
module min6x1_with_index( //outputs
winner_x,
winner_y,
//inputs
D1,
D2,
D3,
D4,
D5,
D6,
index1,
index2,
index3,
index4,
index5,
index6
);
output [2:0] winner_x,
winner_y;
input [`BIT_WIDTH_DATA-1:0] D1,
D2,
D3,
D4,
D5,
D6;
input [2:0] index1,
index2,
index3,
index4,
index5,
index6;
wire [`BIT_WIDTH_DATA-1:0] D7,
D8,
D9,
D10;
wire [5:0] index7,
index8,
index9,
index10;
assign index7=(D2>D1)? {index1,3'b001}:{index2,3'b010};
assign index8=(D4>D3)? {index3,3'b011}:{index4,3'b100};
assign index9=(D6>D5)? {index5,3'b101}:{index6,3'b110};
assign D7=(D2>D1)? D1:D2;
assign D8=(D4>D3)? D3:D4;
assign D9=(D6>D5)? D5:D6;
assign D10=(D8>D7)? D7:D8;
assign index10=(D8>D7)? index7:index8;
assign {winner_y,winner_x}=(D10>D9)?index9:index10;
endmodule
/////////////////////////////////////////////////
module max6x1(
//output
D,
D_x,
D_y,
//inputs
D1,
D1_x,
D1_y,
D2,
D2_x,
D2_y,
D3,
D3_x,
D3_y,
D4,
D4_x,
D4_y,
D5,
D5_x,
D5_y,
D6,
D6_x,
D6_y
);
/////////////////////////////////////////////////
output [`BIT_WIDTH_DATA-1:0] D,D_x,D_y;
input [`BIT_WIDTH_DATA-1:0] D1,
D2,
D3,
D4,
D5,
D6;
input [`BIT_WIDTH_DATA-1:0] D1_x,D2_x,D3_x,D4_x,D5_x,D6_x;
input [`BIT_WIDTH_DATA-1:0] D1_y,D2_y,D3_y,D4_y,D5_y,D6_y;
wire [`BIT_WIDTH_DATA-1:0] D7,D7_x,D7_y,
D8,D8_x,D8_y,
D9,D9_x,D9_y,
D10,D10_x,D10_y;
assign D7=(D1>D2)? D1:D2;
assign D8=(D3>D4)? D3:D4;
assign D9=(D5>D6)? D5:D6;
assign D7_x=(D1>D2)? D1_x:D2_x;
assign D8_x=(D3>D4)? D3_x:D4_x;
assign D9_x=(D5>D6)? D5_x:D6_x;
assign D7_y=(D1>D2)? D1_y:D2_y;
assign D8_y=(D3>D4)? D3_y:D4_y;
assign D9_y=(D5>D6)? D5_y:D6_y;
assign D10=(D7>D8)? D7:D8;
assign D10_x=(D7>D8)? D7_x:D8_x;
assign D10_y=(D7>D8)? D7_y:D8_y;
assign D=(D9>D10)? D9:D10;
assign D_x=(D9>D10)? D9_x:D10_x;
assign D_y=(D9>D10)? D9_y:D10_y;
endmodule
/////////////////////////////////////////////////
module max6x1_without_index(
//output
D_x,
D_y,
//inputs
D1,
D1_x,
D1_y,
D2,
D2_x,
D2_y,
D3,
D3_x,
D3_y,
D4,
D4_x,
D4_y,
D5,
D5_x,
D5_y,
D6,
D6_x,
D6_y
);
/////////////////////////////////////////////////
output [`BIT_WIDTH_DATA-1:0] D_x,D_y;
input [`BIT_WIDTH_DATA-1:0] D1,
D2,
D3,
D4,
D5,
D6;
input [`BIT_WIDTH_DATA-1:0] D1_x,D2_x,D3_x,D4_x,D5_x,D6_x;
input [`BIT_WIDTH_DATA-1:0] D1_y,D2_y,D3_y,D4_y,D5_y,D6_y;
wire [`BIT_WIDTH_DATA-1:0] D7,D7_x,D7_y,
D8,D8_x,D8_y,
D9,D9_x,D9_y,
D10,D10_x,D10_y;
assign D7=(D1>D2)? D1:D2;
assign D8=(D3>D4)? D3:D4;
assign D9=(D5>D6)? D5:D6;
assign D7_x=(D1>D2)? D1_x:D2_x;
assign D8_x=(D3>D4)? D3_x:D4_x;
assign D9_x=(D5>D6)? D5_x:D6_x;
assign D7_y=(D1>D2)? D1_y:D2_y;
assign D8_y=(D3>D4)? D3_y:D4_y;
assign D9_y=(D5>D6)? D5_y:D6_y;
assign D10=(D7>D8)? D7:D8;
assign D10_x=(D7>D8)? D7_x:D8_x;
assign D10_y=(D7>D8)? D7_y:D8_y;
assign D_x=(D9>D10)? D9_x:D10_x;
assign D_y=(D9>D10)? D9_y:D10_y;
endmodule
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -