// File: Array8Sorter.v
// Generated by MyHDL 0.7dev
// Date: Thu Sep 30 16:28:51 2010


`timescale 1ns/10ps

module Array8Sorter (
    a0,
    a1,
    a2,
    a3,
    a4,
    a5,
    a6,
    a7,
    z0,
    z1,
    z2,
    z3,
    z4,
    z5,
    z6,
    z7
);


input [3:0] a0;
input [3:0] a1;
input [3:0] a2;
input [3:0] a3;
input [3:0] a4;
input [3:0] a5;
input [3:0] a6;
input [3:0] a7;
output [3:0] z0;
wire [3:0] z0;
output [3:0] z1;
wire [3:0] z1;
output [3:0] z2;
wire [3:0] z2;
output [3:0] z3;
wire [3:0] z3;
output [3:0] z4;
wire [3:0] z4;
output [3:0] z5;
wire [3:0] z5;
output [3:0] z6;
wire [3:0] z6;
output [3:0] z7;
wire [3:0] z7;

reg [3:0] sort_merge_hiMerge_hiMerge_hiMerge_feed_a;
reg [3:0] sort_merge_hiMerge_hiMerge_loMerge_feed_a;
reg [3:0] sort_merge_hiMerge_hiMerge_comp_0_a1;
reg [3:0] sort_merge_hiMerge_hiMerge_comp_0_a2;
reg [3:0] sort_merge_hiMerge_loMerge_hiMerge_feed_a;
reg [3:0] sort_merge_hiMerge_loMerge_loMerge_feed_a;
reg [3:0] sort_merge_hiMerge_loMerge_comp_0_a1;
reg [3:0] sort_merge_hiMerge_loMerge_comp_0_a2;
reg [3:0] sort_merge_hiMerge_comp_1_a1;
reg [3:0] sort_merge_hiMerge_comp_1_a2;
reg [3:0] sort_merge_hiMerge_comp_0_a1;
reg [3:0] sort_merge_hiMerge_comp_0_a2;
reg [3:0] sort_merge_loMerge_hiMerge_hiMerge_feed_a;
reg [3:0] sort_merge_loMerge_hiMerge_loMerge_feed_a;
reg [3:0] sort_merge_loMerge_hiMerge_comp_0_a1;
reg [3:0] sort_merge_loMerge_hiMerge_comp_0_a2;
reg [3:0] sort_merge_loMerge_loMerge_hiMerge_feed_a;
reg [3:0] sort_merge_loMerge_loMerge_loMerge_feed_a;
reg [3:0] sort_merge_loMerge_loMerge_comp_0_a1;
reg [3:0] sort_merge_loMerge_loMerge_comp_0_a2;
reg [3:0] sort_merge_loMerge_comp_1_a1;
reg [3:0] sort_merge_loMerge_comp_1_a2;
reg [3:0] sort_merge_loMerge_comp_0_a1;
reg [3:0] sort_merge_loMerge_comp_0_a2;
wire [3:0] sort_merge_comp_3_a1;
wire [3:0] sort_merge_comp_3_a2;
wire [3:0] sort_merge_comp_2_a1;
wire [3:0] sort_merge_comp_2_a2;
wire [3:0] sort_merge_comp_1_a1;
wire [3:0] sort_merge_comp_1_a2;
wire [3:0] sort_merge_comp_0_a1;
wire [3:0] sort_merge_comp_0_a2;
reg [3:0] sort_hiSort_merge_hiMerge_hiMerge_feed_a;
reg [3:0] sort_hiSort_merge_hiMerge_loMerge_feed_a;
reg [3:0] sort_hiSort_merge_hiMerge_comp_0_a1;
reg [3:0] sort_hiSort_merge_hiMerge_comp_0_a2;
reg [3:0] sort_hiSort_merge_loMerge_hiMerge_feed_a;
reg [3:0] sort_hiSort_merge_loMerge_loMerge_feed_a;
reg [3:0] sort_hiSort_merge_loMerge_comp_0_a1;
reg [3:0] sort_hiSort_merge_loMerge_comp_0_a2;
wire [3:0] sort_hiSort_merge_comp_1_a1;
wire [3:0] sort_hiSort_merge_comp_1_a2;
wire [3:0] sort_hiSort_merge_comp_0_a1;
wire [3:0] sort_hiSort_merge_comp_0_a2;
reg [3:0] sort_hiSort_hiSort_merge_hiMerge_feed_a;
reg [3:0] sort_hiSort_hiSort_merge_loMerge_feed_a;
wire [3:0] sort_hiSort_hiSort_merge_comp_0_a1;
wire [3:0] sort_hiSort_hiSort_merge_comp_0_a2;
reg [3:0] sort_hiSort_loSort_merge_hiMerge_feed_a;
reg [3:0] sort_hiSort_loSort_merge_loMerge_feed_a;
wire [3:0] sort_hiSort_loSort_merge_comp_0_a1;
wire [3:0] sort_hiSort_loSort_merge_comp_0_a2;
reg [3:0] sort_loSort_merge_hiMerge_hiMerge_feed_a;
reg [3:0] sort_loSort_merge_hiMerge_loMerge_feed_a;
reg [3:0] sort_loSort_merge_hiMerge_comp_0_a1;
reg [3:0] sort_loSort_merge_hiMerge_comp_0_a2;
reg [3:0] sort_loSort_merge_loMerge_hiMerge_feed_a;
reg [3:0] sort_loSort_merge_loMerge_loMerge_feed_a;
reg [3:0] sort_loSort_merge_loMerge_comp_0_a1;
reg [3:0] sort_loSort_merge_loMerge_comp_0_a2;
wire [3:0] sort_loSort_merge_comp_1_a1;
wire [3:0] sort_loSort_merge_comp_1_a2;
wire [3:0] sort_loSort_merge_comp_0_a1;
wire [3:0] sort_loSort_merge_comp_0_a2;
reg [3:0] sort_loSort_hiSort_merge_hiMerge_feed_a;
reg [3:0] sort_loSort_hiSort_merge_loMerge_feed_a;
wire [3:0] sort_loSort_hiSort_merge_comp_0_a1;
wire [3:0] sort_loSort_hiSort_merge_comp_0_a2;
reg [3:0] sort_loSort_loSort_merge_hiMerge_feed_a;
reg [3:0] sort_loSort_loSort_merge_loMerge_feed_a;
wire [3:0] sort_loSort_loSort_merge_comp_0_a1;
wire [3:0] sort_loSort_loSort_merge_comp_0_a2;






assign sort_loSort_loSort_merge_comp_0_a1 = a0;



assign sort_loSort_loSort_merge_comp_0_a2 = a1;


always @(sort_loSort_loSort_merge_comp_0_a1, sort_loSort_loSort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_LOSORT_LOSORT_MERGE_COMP_0_LOGIC
    sort_loSort_loSort_merge_loMerge_feed_a <= sort_loSort_loSort_merge_comp_0_a1;
    sort_loSort_loSort_merge_hiMerge_feed_a <= sort_loSort_loSort_merge_comp_0_a2;
    if ((1 == (sort_loSort_loSort_merge_comp_0_a1 > sort_loSort_loSort_merge_comp_0_a2))) begin
        sort_loSort_loSort_merge_loMerge_feed_a <= sort_loSort_loSort_merge_comp_0_a2;
        sort_loSort_loSort_merge_hiMerge_feed_a <= sort_loSort_loSort_merge_comp_0_a1;
    end
end



assign sort_loSort_merge_comp_0_a1 = sort_loSort_loSort_merge_loMerge_feed_a;



assign sort_loSort_merge_comp_1_a1 = sort_loSort_loSort_merge_hiMerge_feed_a;



assign sort_loSort_hiSort_merge_comp_0_a1 = a2;



assign sort_loSort_hiSort_merge_comp_0_a2 = a3;


always @(sort_loSort_hiSort_merge_comp_0_a1, sort_loSort_hiSort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_LOSORT_HISORT_MERGE_COMP_0_LOGIC
    sort_loSort_hiSort_merge_loMerge_feed_a <= sort_loSort_hiSort_merge_comp_0_a1;
    sort_loSort_hiSort_merge_hiMerge_feed_a <= sort_loSort_hiSort_merge_comp_0_a2;
    if ((0 == (sort_loSort_hiSort_merge_comp_0_a1 > sort_loSort_hiSort_merge_comp_0_a2))) begin
        sort_loSort_hiSort_merge_loMerge_feed_a <= sort_loSort_hiSort_merge_comp_0_a2;
        sort_loSort_hiSort_merge_hiMerge_feed_a <= sort_loSort_hiSort_merge_comp_0_a1;
    end
end



assign sort_loSort_merge_comp_0_a2 = sort_loSort_hiSort_merge_loMerge_feed_a;



assign sort_loSort_merge_comp_1_a2 = sort_loSort_hiSort_merge_hiMerge_feed_a;


always @(sort_loSort_merge_comp_0_a1, sort_loSort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_LOSORT_MERGE_COMP_0_LOGIC
    sort_loSort_merge_loMerge_comp_0_a1 <= sort_loSort_merge_comp_0_a1;
    sort_loSort_merge_hiMerge_comp_0_a1 <= sort_loSort_merge_comp_0_a2;
    if ((1 == (sort_loSort_merge_comp_0_a1 > sort_loSort_merge_comp_0_a2))) begin
        sort_loSort_merge_loMerge_comp_0_a1 <= sort_loSort_merge_comp_0_a2;
        sort_loSort_merge_hiMerge_comp_0_a1 <= sort_loSort_merge_comp_0_a1;
    end
end


always @(sort_loSort_merge_comp_1_a1, sort_loSort_merge_comp_1_a2) begin: ARRAY8SORTER_SORT_LOSORT_MERGE_COMP_1_LOGIC
    sort_loSort_merge_loMerge_comp_0_a2 <= sort_loSort_merge_comp_1_a1;
    sort_loSort_merge_hiMerge_comp_0_a2 <= sort_loSort_merge_comp_1_a2;
    if ((1 == (sort_loSort_merge_comp_1_a1 > sort_loSort_merge_comp_1_a2))) begin
        sort_loSort_merge_loMerge_comp_0_a2 <= sort_loSort_merge_comp_1_a2;
        sort_loSort_merge_hiMerge_comp_0_a2 <= sort_loSort_merge_comp_1_a1;
    end
end


always @(sort_loSort_merge_loMerge_comp_0_a1, sort_loSort_merge_loMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_LOSORT_MERGE_LOMERGE_COMP_0_LOGIC
    sort_loSort_merge_loMerge_loMerge_feed_a <= sort_loSort_merge_loMerge_comp_0_a1;
    sort_loSort_merge_loMerge_hiMerge_feed_a <= sort_loSort_merge_loMerge_comp_0_a2;
    if ((1 == (sort_loSort_merge_loMerge_comp_0_a1 > sort_loSort_merge_loMerge_comp_0_a2))) begin
        sort_loSort_merge_loMerge_loMerge_feed_a <= sort_loSort_merge_loMerge_comp_0_a2;
        sort_loSort_merge_loMerge_hiMerge_feed_a <= sort_loSort_merge_loMerge_comp_0_a1;
    end
end



assign sort_merge_comp_0_a1 = sort_loSort_merge_loMerge_loMerge_feed_a;



assign sort_merge_comp_1_a1 = sort_loSort_merge_loMerge_hiMerge_feed_a;


always @(sort_loSort_merge_hiMerge_comp_0_a1, sort_loSort_merge_hiMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_LOSORT_MERGE_HIMERGE_COMP_0_LOGIC
    sort_loSort_merge_hiMerge_loMerge_feed_a <= sort_loSort_merge_hiMerge_comp_0_a1;
    sort_loSort_merge_hiMerge_hiMerge_feed_a <= sort_loSort_merge_hiMerge_comp_0_a2;
    if ((1 == (sort_loSort_merge_hiMerge_comp_0_a1 > sort_loSort_merge_hiMerge_comp_0_a2))) begin
        sort_loSort_merge_hiMerge_loMerge_feed_a <= sort_loSort_merge_hiMerge_comp_0_a2;
        sort_loSort_merge_hiMerge_hiMerge_feed_a <= sort_loSort_merge_hiMerge_comp_0_a1;
    end
end



assign sort_merge_comp_2_a1 = sort_loSort_merge_hiMerge_loMerge_feed_a;



assign sort_merge_comp_3_a1 = sort_loSort_merge_hiMerge_hiMerge_feed_a;



assign sort_hiSort_loSort_merge_comp_0_a1 = a4;



assign sort_hiSort_loSort_merge_comp_0_a2 = a5;


always @(sort_hiSort_loSort_merge_comp_0_a1, sort_hiSort_loSort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_HISORT_LOSORT_MERGE_COMP_0_LOGIC
    sort_hiSort_loSort_merge_loMerge_feed_a <= sort_hiSort_loSort_merge_comp_0_a1;
    sort_hiSort_loSort_merge_hiMerge_feed_a <= sort_hiSort_loSort_merge_comp_0_a2;
    if ((1 == (sort_hiSort_loSort_merge_comp_0_a1 > sort_hiSort_loSort_merge_comp_0_a2))) begin
        sort_hiSort_loSort_merge_loMerge_feed_a <= sort_hiSort_loSort_merge_comp_0_a2;
        sort_hiSort_loSort_merge_hiMerge_feed_a <= sort_hiSort_loSort_merge_comp_0_a1;
    end
end



assign sort_hiSort_merge_comp_0_a1 = sort_hiSort_loSort_merge_loMerge_feed_a;



assign sort_hiSort_merge_comp_1_a1 = sort_hiSort_loSort_merge_hiMerge_feed_a;



assign sort_hiSort_hiSort_merge_comp_0_a1 = a6;



assign sort_hiSort_hiSort_merge_comp_0_a2 = a7;


always @(sort_hiSort_hiSort_merge_comp_0_a1, sort_hiSort_hiSort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_HISORT_HISORT_MERGE_COMP_0_LOGIC
    sort_hiSort_hiSort_merge_loMerge_feed_a <= sort_hiSort_hiSort_merge_comp_0_a1;
    sort_hiSort_hiSort_merge_hiMerge_feed_a <= sort_hiSort_hiSort_merge_comp_0_a2;
    if ((0 == (sort_hiSort_hiSort_merge_comp_0_a1 > sort_hiSort_hiSort_merge_comp_0_a2))) begin
        sort_hiSort_hiSort_merge_loMerge_feed_a <= sort_hiSort_hiSort_merge_comp_0_a2;
        sort_hiSort_hiSort_merge_hiMerge_feed_a <= sort_hiSort_hiSort_merge_comp_0_a1;
    end
end



assign sort_hiSort_merge_comp_0_a2 = sort_hiSort_hiSort_merge_loMerge_feed_a;



assign sort_hiSort_merge_comp_1_a2 = sort_hiSort_hiSort_merge_hiMerge_feed_a;


always @(sort_hiSort_merge_comp_0_a1, sort_hiSort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_HISORT_MERGE_COMP_0_LOGIC
    sort_hiSort_merge_loMerge_comp_0_a1 <= sort_hiSort_merge_comp_0_a1;
    sort_hiSort_merge_hiMerge_comp_0_a1 <= sort_hiSort_merge_comp_0_a2;
    if ((0 == (sort_hiSort_merge_comp_0_a1 > sort_hiSort_merge_comp_0_a2))) begin
        sort_hiSort_merge_loMerge_comp_0_a1 <= sort_hiSort_merge_comp_0_a2;
        sort_hiSort_merge_hiMerge_comp_0_a1 <= sort_hiSort_merge_comp_0_a1;
    end
end


always @(sort_hiSort_merge_comp_1_a1, sort_hiSort_merge_comp_1_a2) begin: ARRAY8SORTER_SORT_HISORT_MERGE_COMP_1_LOGIC
    sort_hiSort_merge_loMerge_comp_0_a2 <= sort_hiSort_merge_comp_1_a1;
    sort_hiSort_merge_hiMerge_comp_0_a2 <= sort_hiSort_merge_comp_1_a2;
    if ((0 == (sort_hiSort_merge_comp_1_a1 > sort_hiSort_merge_comp_1_a2))) begin
        sort_hiSort_merge_loMerge_comp_0_a2 <= sort_hiSort_merge_comp_1_a2;
        sort_hiSort_merge_hiMerge_comp_0_a2 <= sort_hiSort_merge_comp_1_a1;
    end
end


always @(sort_hiSort_merge_loMerge_comp_0_a1, sort_hiSort_merge_loMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_HISORT_MERGE_LOMERGE_COMP_0_LOGIC
    sort_hiSort_merge_loMerge_loMerge_feed_a <= sort_hiSort_merge_loMerge_comp_0_a1;
    sort_hiSort_merge_loMerge_hiMerge_feed_a <= sort_hiSort_merge_loMerge_comp_0_a2;
    if ((0 == (sort_hiSort_merge_loMerge_comp_0_a1 > sort_hiSort_merge_loMerge_comp_0_a2))) begin
        sort_hiSort_merge_loMerge_loMerge_feed_a <= sort_hiSort_merge_loMerge_comp_0_a2;
        sort_hiSort_merge_loMerge_hiMerge_feed_a <= sort_hiSort_merge_loMerge_comp_0_a1;
    end
end



assign sort_merge_comp_0_a2 = sort_hiSort_merge_loMerge_loMerge_feed_a;



assign sort_merge_comp_1_a2 = sort_hiSort_merge_loMerge_hiMerge_feed_a;


always @(sort_hiSort_merge_hiMerge_comp_0_a1, sort_hiSort_merge_hiMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_HISORT_MERGE_HIMERGE_COMP_0_LOGIC
    sort_hiSort_merge_hiMerge_loMerge_feed_a <= sort_hiSort_merge_hiMerge_comp_0_a1;
    sort_hiSort_merge_hiMerge_hiMerge_feed_a <= sort_hiSort_merge_hiMerge_comp_0_a2;
    if ((0 == (sort_hiSort_merge_hiMerge_comp_0_a1 > sort_hiSort_merge_hiMerge_comp_0_a2))) begin
        sort_hiSort_merge_hiMerge_loMerge_feed_a <= sort_hiSort_merge_hiMerge_comp_0_a2;
        sort_hiSort_merge_hiMerge_hiMerge_feed_a <= sort_hiSort_merge_hiMerge_comp_0_a1;
    end
end



assign sort_merge_comp_2_a2 = sort_hiSort_merge_hiMerge_loMerge_feed_a;



assign sort_merge_comp_3_a2 = sort_hiSort_merge_hiMerge_hiMerge_feed_a;


always @(sort_merge_comp_0_a1, sort_merge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_COMP_0_LOGIC
    sort_merge_loMerge_comp_0_a1 <= sort_merge_comp_0_a1;
    sort_merge_hiMerge_comp_0_a1 <= sort_merge_comp_0_a2;
    if ((1 == (sort_merge_comp_0_a1 > sort_merge_comp_0_a2))) begin
        sort_merge_loMerge_comp_0_a1 <= sort_merge_comp_0_a2;
        sort_merge_hiMerge_comp_0_a1 <= sort_merge_comp_0_a1;
    end
end


always @(sort_merge_comp_1_a1, sort_merge_comp_1_a2) begin: ARRAY8SORTER_SORT_MERGE_COMP_1_LOGIC
    sort_merge_loMerge_comp_1_a1 <= sort_merge_comp_1_a1;
    sort_merge_hiMerge_comp_1_a1 <= sort_merge_comp_1_a2;
    if ((1 == (sort_merge_comp_1_a1 > sort_merge_comp_1_a2))) begin
        sort_merge_loMerge_comp_1_a1 <= sort_merge_comp_1_a2;
        sort_merge_hiMerge_comp_1_a1 <= sort_merge_comp_1_a1;
    end
end


always @(sort_merge_comp_2_a1, sort_merge_comp_2_a2) begin: ARRAY8SORTER_SORT_MERGE_COMP_2_LOGIC
    sort_merge_loMerge_comp_0_a2 <= sort_merge_comp_2_a1;
    sort_merge_hiMerge_comp_0_a2 <= sort_merge_comp_2_a2;
    if ((1 == (sort_merge_comp_2_a1 > sort_merge_comp_2_a2))) begin
        sort_merge_loMerge_comp_0_a2 <= sort_merge_comp_2_a2;
        sort_merge_hiMerge_comp_0_a2 <= sort_merge_comp_2_a1;
    end
end


always @(sort_merge_comp_3_a1, sort_merge_comp_3_a2) begin: ARRAY8SORTER_SORT_MERGE_COMP_3_LOGIC
    sort_merge_loMerge_comp_1_a2 <= sort_merge_comp_3_a1;
    sort_merge_hiMerge_comp_1_a2 <= sort_merge_comp_3_a2;
    if ((1 == (sort_merge_comp_3_a1 > sort_merge_comp_3_a2))) begin
        sort_merge_loMerge_comp_1_a2 <= sort_merge_comp_3_a2;
        sort_merge_hiMerge_comp_1_a2 <= sort_merge_comp_3_a1;
    end
end


always @(sort_merge_loMerge_comp_0_a1, sort_merge_loMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_LOMERGE_COMP_0_LOGIC
    sort_merge_loMerge_loMerge_comp_0_a1 <= sort_merge_loMerge_comp_0_a1;
    sort_merge_loMerge_hiMerge_comp_0_a1 <= sort_merge_loMerge_comp_0_a2;
    if ((1 == (sort_merge_loMerge_comp_0_a1 > sort_merge_loMerge_comp_0_a2))) begin
        sort_merge_loMerge_loMerge_comp_0_a1 <= sort_merge_loMerge_comp_0_a2;
        sort_merge_loMerge_hiMerge_comp_0_a1 <= sort_merge_loMerge_comp_0_a1;
    end
end


always @(sort_merge_loMerge_comp_1_a1, sort_merge_loMerge_comp_1_a2) begin: ARRAY8SORTER_SORT_MERGE_LOMERGE_COMP_1_LOGIC
    sort_merge_loMerge_loMerge_comp_0_a2 <= sort_merge_loMerge_comp_1_a1;
    sort_merge_loMerge_hiMerge_comp_0_a2 <= sort_merge_loMerge_comp_1_a2;
    if ((1 == (sort_merge_loMerge_comp_1_a1 > sort_merge_loMerge_comp_1_a2))) begin
        sort_merge_loMerge_loMerge_comp_0_a2 <= sort_merge_loMerge_comp_1_a2;
        sort_merge_loMerge_hiMerge_comp_0_a2 <= sort_merge_loMerge_comp_1_a1;
    end
end


always @(sort_merge_loMerge_loMerge_comp_0_a1, sort_merge_loMerge_loMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_LOMERGE_LOMERGE_COMP_0_LOGIC
    sort_merge_loMerge_loMerge_loMerge_feed_a <= sort_merge_loMerge_loMerge_comp_0_a1;
    sort_merge_loMerge_loMerge_hiMerge_feed_a <= sort_merge_loMerge_loMerge_comp_0_a2;
    if ((1 == (sort_merge_loMerge_loMerge_comp_0_a1 > sort_merge_loMerge_loMerge_comp_0_a2))) begin
        sort_merge_loMerge_loMerge_loMerge_feed_a <= sort_merge_loMerge_loMerge_comp_0_a2;
        sort_merge_loMerge_loMerge_hiMerge_feed_a <= sort_merge_loMerge_loMerge_comp_0_a1;
    end
end



assign z0 = sort_merge_loMerge_loMerge_loMerge_feed_a;



assign z1 = sort_merge_loMerge_loMerge_hiMerge_feed_a;


always @(sort_merge_loMerge_hiMerge_comp_0_a1, sort_merge_loMerge_hiMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_LOMERGE_HIMERGE_COMP_0_LOGIC
    sort_merge_loMerge_hiMerge_loMerge_feed_a <= sort_merge_loMerge_hiMerge_comp_0_a1;
    sort_merge_loMerge_hiMerge_hiMerge_feed_a <= sort_merge_loMerge_hiMerge_comp_0_a2;
    if ((1 == (sort_merge_loMerge_hiMerge_comp_0_a1 > sort_merge_loMerge_hiMerge_comp_0_a2))) begin
        sort_merge_loMerge_hiMerge_loMerge_feed_a <= sort_merge_loMerge_hiMerge_comp_0_a2;
        sort_merge_loMerge_hiMerge_hiMerge_feed_a <= sort_merge_loMerge_hiMerge_comp_0_a1;
    end
end



assign z2 = sort_merge_loMerge_hiMerge_loMerge_feed_a;



assign z3 = sort_merge_loMerge_hiMerge_hiMerge_feed_a;


always @(sort_merge_hiMerge_comp_0_a1, sort_merge_hiMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_HIMERGE_COMP_0_LOGIC
    sort_merge_hiMerge_loMerge_comp_0_a1 <= sort_merge_hiMerge_comp_0_a1;
    sort_merge_hiMerge_hiMerge_comp_0_a1 <= sort_merge_hiMerge_comp_0_a2;
    if ((1 == (sort_merge_hiMerge_comp_0_a1 > sort_merge_hiMerge_comp_0_a2))) begin
        sort_merge_hiMerge_loMerge_comp_0_a1 <= sort_merge_hiMerge_comp_0_a2;
        sort_merge_hiMerge_hiMerge_comp_0_a1 <= sort_merge_hiMerge_comp_0_a1;
    end
end


always @(sort_merge_hiMerge_comp_1_a1, sort_merge_hiMerge_comp_1_a2) begin: ARRAY8SORTER_SORT_MERGE_HIMERGE_COMP_1_LOGIC
    sort_merge_hiMerge_loMerge_comp_0_a2 <= sort_merge_hiMerge_comp_1_a1;
    sort_merge_hiMerge_hiMerge_comp_0_a2 <= sort_merge_hiMerge_comp_1_a2;
    if ((1 == (sort_merge_hiMerge_comp_1_a1 > sort_merge_hiMerge_comp_1_a2))) begin
        sort_merge_hiMerge_loMerge_comp_0_a2 <= sort_merge_hiMerge_comp_1_a2;
        sort_merge_hiMerge_hiMerge_comp_0_a2 <= sort_merge_hiMerge_comp_1_a1;
    end
end


always @(sort_merge_hiMerge_loMerge_comp_0_a1, sort_merge_hiMerge_loMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_HIMERGE_LOMERGE_COMP_0_LOGIC
    sort_merge_hiMerge_loMerge_loMerge_feed_a <= sort_merge_hiMerge_loMerge_comp_0_a1;
    sort_merge_hiMerge_loMerge_hiMerge_feed_a <= sort_merge_hiMerge_loMerge_comp_0_a2;
    if ((1 == (sort_merge_hiMerge_loMerge_comp_0_a1 > sort_merge_hiMerge_loMerge_comp_0_a2))) begin
        sort_merge_hiMerge_loMerge_loMerge_feed_a <= sort_merge_hiMerge_loMerge_comp_0_a2;
        sort_merge_hiMerge_loMerge_hiMerge_feed_a <= sort_merge_hiMerge_loMerge_comp_0_a1;
    end
end



assign z4 = sort_merge_hiMerge_loMerge_loMerge_feed_a;



assign z5 = sort_merge_hiMerge_loMerge_hiMerge_feed_a;


always @(sort_merge_hiMerge_hiMerge_comp_0_a1, sort_merge_hiMerge_hiMerge_comp_0_a2) begin: ARRAY8SORTER_SORT_MERGE_HIMERGE_HIMERGE_COMP_0_LOGIC
    sort_merge_hiMerge_hiMerge_loMerge_feed_a <= sort_merge_hiMerge_hiMerge_comp_0_a1;
    sort_merge_hiMerge_hiMerge_hiMerge_feed_a <= sort_merge_hiMerge_hiMerge_comp_0_a2;
    if ((1 == (sort_merge_hiMerge_hiMerge_comp_0_a1 > sort_merge_hiMerge_hiMerge_comp_0_a2))) begin
        sort_merge_hiMerge_hiMerge_loMerge_feed_a <= sort_merge_hiMerge_hiMerge_comp_0_a2;
        sort_merge_hiMerge_hiMerge_hiMerge_feed_a <= sort_merge_hiMerge_hiMerge_comp_0_a1;
    end
end



assign z6 = sort_merge_hiMerge_hiMerge_loMerge_feed_a;



assign z7 = sort_merge_hiMerge_hiMerge_hiMerge_feed_a;

endmodule
