📄 crc32_dat128.v
字号:
// Copyright 2007 Altera Corporation. All rights reserved.
// Altera products are protected under numerous U.S. and foreign patents,
// maskwork rights, copyrights and other intellectual property laws.
//
// This reference design file, and your use thereof, is subject to and governed
// by the terms and conditions of the applicable Altera Reference Design
// License Agreement (either as signed by you or found at www.altera.com). By
// using this reference design file, you indicate your acceptance of such terms
// and conditions between you and Altera Corporation. In the event that you do
// not agree with such terms and conditions, you may not use the reference
// design file and please promptly destroy any copies you have made.
//
// This reference design file is being provided on an "as-is" basis and as an
// accommodation and therefore all warranties, representations or guarantees of
// any kind (whether express, implied or statutory) including, without
// limitation, warranties of merchantability, non-infringement, or fitness for
// a particular purpose, are specifically disclaimed. By making this reference
// design file available, Altera expressly does not recommend, suggest or
// require that this reference design file be used in combination with any
// other product not provided by Altera.
/////////////////////////////////////////////////////////////////////////////
//// CRC-32 of 128 data bits. MSB used first.
// Polynomial 04c11db7 (MSB excluded)
// x^26 + x^23 + x^22 + x^16 + x^12 + x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x^1 + x^0
//
// Optimal LUT depth 3
//
// CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
// 00000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111
// 00000000001111111111222222222233 00000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222
// 01234567890123456789012345678901 01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567
//
// C00 = XXXX.X.XX.X...XX.XX.XXXX...X.XXX X.....X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXX
// C01 = ....XXXX.XXX..X.XX.XX...X..XXX.. XX....XX.X.XXX..XX......X..XX....XXX.XX.....X.XX.XXX.X..X.XXX.XXXX...X..X.X....XXX....XXX.....X.....XXXX.XXX..X.XX.XX...X..XXX..
// C02 = XXXX..X....XX.X.......XX.X.XX..X XXX...XXXX...XX.XXX.....X.X...XXX..XXXXX....X......XXX.X.XXX....X..XX.X.X..X...XX..XXX..XX....X.XXXX..X....XX.X.......XX.X.XX..X
// C03 = .XXXX..X....XX.X.......XX.X.XX.. .XXX...XXXX...XX.XXX.....X.X...XXX..XXXXX....X......XXX.X.XXX....X..XX.X.X..X...XX..XXX..XX....X.XXXX..X....XX.X.......XX.X.XX..
// C04 = .X..X..X..X..X.XXXX.XXXXXX.....X X.XXX.X.X..XX..X..XXX...XX...XXX.X....XXXX..XXXXX.X......XXX...X.X.XXXX..XX..X.X...XX.X...XX..XX.X..X..X..X..X.XXXX.XXXXXX.....X
// C05 = .X.X...X..XX...XX..XX...XXXX.XXX XX.XXXXX..X..X.....XXX..X...XX.......X.XXXX.X.X..XXX.XXX...X.X.XXX.X.XXXXXXX..XXXXXX.......XX.X..X.X...X..XX...XX..XX...XXXX.XXX
// C06 = ..X.X...X..XX...XX..XX...XXXX.XX .XX.XXXXX..X..X.....XXX..X...XX.......X.XXXX.X.X..XXX.XXX...X.X.XXX.X.XXXXXXX..XXXXXX.......XX.X..X.X...X..XX...XX..XX...XXXX.XX
// C07 = .XX....XXXX.XXXX....X..X..X.X.X. X.XX.X.XX.X....XX....XXXXX..XX..X.X..X.X.XXX.XXX..XXX.X.XXX.X.......XX.X..XXXX.XX......X.....X.X.XX....XXXX.XXXX....X..X..X.X.X.
// C08 = .X...X.X.X.X.X..XXX.X.XXX.....X. XX.XX...X.XXX....X....XX....X..XXXXX.XX.X.XX.XX...XXX.X..X.XX..X.XXXXXX..X.XXXXXX.XXXX.XX......X.X...X.X.X.X.X..XXX.X.XXX.....X.
// C09 = X.X...X.X.X.X.X..XXX.X.XXX.....X .XX.XX...X.XXX....X....XX....X..XXXXX.XX.X.XX.XX...XXX.X..X.XX..X.XXXXXX..X.XXXXXX.XXXX.XX......X.X...X.X.X.X.X..XXX.X.XXX.....X
// C10 = X.X..X..XXXX.XX..X.X.X.XXXXX.XXX X.XX.X...X...XX.X..X......X.XX.XXX.XX..XX.X.......X.X..XX.XXX.XX..X..XXX.X.X.XX.X..X..X..XX...XXX.X..X..XXXX.XX..X.X.X.XXXXX.XXX
// C11 = ..X..XXXXX.XX....X...X.XXXX.XX.. XX.XX....X..X.XXXX..X...XXXXX..X.X..X...XX.XXX.XX.XX..XXXXXX....XXX.X.XX.XX.X.X...XX.X....XX..X...X..XXXXX.XX....X...X.XXXX.XX..
// C12 = XXX..XX..X..XXXX.X..XX.XXXX....X XXX.XXX..X..XX.X.XX..X..X..X..XX.........XX...XX.XXXXXX.XX.X.X.X....XX.X.XXX.X...XX..XXX...XX.X.XXX..XX..X..XXXX.X..XX.XXXX....X
// C13 = .XXX..XX..X..XXXX.X..XX.XXXX.... .XXX.XXX..X..XX.X.XX..X..X..X..XX.........XX...XX.XXXXXX.XX.X.X.X....XX.X.XXX.X...XX..XXX...XX.X.XXX..XX..X..XXXX.X..XX.XXXX....
// C14 = X.XXX..XX..X..XXXX.X..XX.XXXX... ..XXX.XXX..X..XX.X.XX..X..X..X..XX.........XX...XX.XXXXXX.XX.X.X.X....XX.X.XXX.X...XX..XXX...XX.X.XXX..XX..X..XXXX.X..XX.XXXX...
// C15 = .X.XXX..XX..X..XXXX.X..XX.XXXX.. ...XXX.XXX..X..XX.X.XX..X..X..X..XX.........XX...XX.XXXXXX.XX.X.X.X....XX.X.XXX.X...XX..XXX...XX.X.XXX..XX..X..XXXX.X..XX.XXXX..
// C16 = .X.XX.XXXX...XXXX..XX.XXXX..X..X X...XX..X...XX...X.X.XX.X.X..XX.X..X.X......X.XXX..X....XX........X.X......X.XX...XXX.XX.XXX..X..X.XX.XXXX...XXXX..XX.XXXX..X..X
// C17 = ..X.XX.XXXX...XXXX..XX.XXXX..X.. .X...XX..X...XX...X.X.XX.X.X..XX.X..X.X......X.XXX..X....XX........X.X......X.XX...XXX.XX.XXX..X..X.XX.XXXX...XXXX..XX.XXXX..X..
// C18 = X..X.XX.XXXX...XXXX..XX.XXXX..X. ..X...XX..X...XX...X.X.XX.X.X..XX.X..X.X......X.XXX..X....XX........X.X......X.XX...XXX.XX.XXX..X..X.XX.XXXX...XXXX..XX.XXXX..X.
// C19 = .X..X.XX.XXXX...XXXX..XX.XXXX..X ...X...XX..X...XX...X.X.XX.X.X..XX.X..X.X......X.XXX..X....XX........X.X......X.XX...XXX.XX.XXX..X..X.XX.XXXX...XXXX..XX.XXXX..X
// C20 = ..X..X.XX.XXXX...XXXX..XX.XXXX.. ....X...XX..X...XX...X.X.XX.X.X..XX.X..X.X......X.XXX..X....XX........X.X......X.XX...XXX.XX.XXX..X..X.XX.XXXX...XXXX..XX.XXXX..
// C21 = X..X..X.XX.XXXX...XXXX..XX.XXXX. .....X...XX..X...XX...X.X.XX.X.X..XX.X..X.X......X.XXX..X....XX........X.X......X.XX...XXX.XX.XXX..X..X.XX.XXXX...XXXX..XX.XXXX.
// C22 = ..XXXX..XX..XX...XXX...X.XXXX... X........X.XX.X.X.XX...XX.XX.X.X..XXXXX..X.XXX.XX...X..X.XX.XXX..XXXX....XX....X..X..X.XXXX.XXX...XXXX..XX..XX...XXX...X.XXXX...
// C23 = XXX.X.XXXX...X.X.X.X.XXXX.X.X.XX XX....X..X...X.XXX.XX.....XX.X.X..XXX.XX..X...XX.XX...XXX..XX.X..X...X..XXXX...XXXX.XXXXXXXX.X..XXX.X.XXXX...X.X.X.X.XXXX.X.X.XX
// C24 = .XXX.X.XXXX...X.X.X.X.XXXX.X.X.X .XX....X..X...X.XXX.XX.....XX.X.X..XXX.XX..X...XX.XX...XXX..XX.X..X...X..XXXX...XXXX.XXXXXXXX.X..XXX.X.XXXX...X.X.X.X.XXXX.X.X.X
// C25 = ..XXX.X.XXXX...X.X.X.X.XXXX.X.X. ..XX....X..X...X.XXX.XX.....XX.X.X..XXX.XX..X...XX.XX...XXX..XX.X..X...X..XXXX...XXXX.XXXXXXXX.X..XXX.X.XXXX...X.X.X.X.XXXX.X.X.
// C26 = .XX.X...XX.XX.XXXX...X.XXXX...X. X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXXX...X.
// C27 = X.XX.X...XX.XX.XXXX...X.XXXX...X .X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXXX...X
// C28 = .X.XX.X...XX.XX.XXXX...X.XXXX... ..X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXXX...
// C29 = X.X.XX.X...XX.XX.XXXX...X.XXXX.. ...X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXXX..
// C30 = XX.X.XX.X...XX.XX.XXXX...X.XXXX. ....X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXXX.
// C31 = XXX.X.XX.X...XX.XX.XXXX...X.XXXX .....X..XX.X...X.......XXX.XXXXX.X..X......XX.XX.X..XXX..X.XX.X.XXXX...XX.....X.XXXXX.X......XXXXXX.X.XX.X...XX.XX.XXXX...X.XXXX
//
module crc32_dat128 (crc_in,dat_in,crc_out);
input [31:0] crc_in;
input [127:0] dat_in;
output [31:0] crc_out;
wire [31:0] crc_out;
parameter METHOD = 1;
generate
if (METHOD == 0)
crc32_dat128_flat cc (.crc_in(crc_in),.dat_in(dat_in),.crc_out(crc_out));
else
crc32_dat128_factor cc (.crc_in(crc_in),.dat_in(dat_in),.crc_out(crc_out));
endgenerate
endmodule
////////////////////////////////////////////////////////////////
// Flat version
////////////////////////////////////////////////////////////////
module crc32_dat128_flat (crc_in,dat_in,crc_out);
input [31:0] crc_in;
input [127:0] dat_in;
output [31:0] crc_out;
wire [31:0] crc_out;
wire x31, x30, x29, x28, x27, x26, x25,
x24, x23, x22, x21, x20, x19, x18, x17,
x16, x15, x14, x13, x12, x11, x10, x9,
x8, x7, x6, x5, x4, x3, x2, x1,
x0;
assign crc_out = {x31,x30,x29,x28,x27,x26,x25,x24,x23,x22,x21,x20,x19,x18,x17,
x16,x15,x14,x13,x12,x11,x10,x9,x8,x7,x6,x5,x4,x3,x2,x1,
x0};
wire d0,d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,
d15,d16,d17,d18,d19,d20,d21,d22,d23,d24,d25,d26,d27,d28,d29,d30,
d31,d32,d33,d34,d35,d36,d37,d38,d39,d40,d41,d42,d43,d44,d45,d46,
d47,d48,d49,d50,d51,d52,d53,d54,d55,d56,d57,d58,d59,d60,d61,d62,
d63,d64,d65,d66,d67,d68,d69,d70,d71,d72,d73,d74,d75,d76,d77,d78,
d79,d80,d81,d82,d83,d84,d85,d86,d87,d88,d89,d90,d91,d92,d93,d94,
d95,d96,d97,d98,d99,d100,d101,d102,d103,d104,d105,d106,d107,d108,d109,d110,
d111,d112,d113,d114,d115,d116,d117,d118,d119,d120,d121,d122,d123,d124,d125,d126,
d127;
assign { d127,d126,d125,d124,d123,d122,d121,d120,d119,d118,d117,d116,d115,d114,d113,
d112,d111,d110,d109,d108,d107,d106,d105,d104,d103,d102,d101,d100,d99,d98,d97,
d96,d95,d94,d93,d92,d91,d90,d89,d88,d87,d86,d85,d84,d83,d82,d81,
d80,d79,d78,d77,d76,d75,d74,d73,d72,d71,d70,d69,d68,d67,d66,d65,
d64,d63,d62,d61,d60,d59,d58,d57,d56,d55,d54,d53,d52,d51,d50,d49,
d48,d47,d46,d45,d44,d43,d42,d41,d40,d39,d38,d37,d36,d35,d34,d33,
d32,d31,d30,d29,d28,d27,d26,d25,d24,d23,d22,d21,d20,d19,d18,d17,
d16,d15,d14,d13,d12,d11,d10,d9,d8,d7,d6,d5,d4,d3,d2,d1,
d0} = dat_in [127:0];
wire c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,
c15,c16,c17,c18,c19,c20,c21,c22,c23,c24,c25,c26,c27,c28,c29,c30,
c31;
assign { c31,c30,c29,c28,c27,c26,c25,c24,c23,c22,c21,c20,c19,c18,c17,
c16,c15,c14,c13,c12,c11,c10,c9,c8,c7,c6,c5,c4,c3,c2,c1,
c0} = crc_in [31:0];
assign x31 = d80 ^ c13 ^ d122 ^ d59 ^ d127 ^ c20 ^ d112 ^ d60 ^ c7 ^
d5 ^ d65 ^ c26 ^ d93 ^ d11 ^ c30 ^ d9 ^ d66 ^ d24 ^ c21 ^
d94 ^ c22 ^ d95 ^ d25 ^ c9 ^ c16 ^ c2 ^ d125 ^ c14 ^ d36 ^
c29 ^ d124 ^ d43 ^ d44 ^ d102 ^ c17 ^ c19 ^ d86 ^ d71 ^ d84 ^
d49 ^ d64 ^ c31 ^ d29 ^ d47 ^ d8 ^ c0 ^ d72 ^ d52 ^ d116 ^
d62 ^ c6 ^ d31 ^ d23 ^ d103 ^ d83 ^ d57 ^ d82 ^ d67 ^ d117 ^
d109 ^ d46 ^ d126 ^ c28 ^ d54 ^ d115 ^ d98 ^ d113 ^ d97 ^ d15 ^
d118 ^ d33 ^ d100 ^ d53 ^ d28 ^ c1 ^ d96 ^ d81 ^ c4 ^ d30 ^
d78 ^ d105 ^ d27 ^ d110; // 83 ins 1 outs level 3
assign x30 = d29 ^ c15 ^ c28 ^ d64 ^ d94 ^ c19 ^ d101 ^ c6 ^ d53 ^
c27 ^ d114 ^ c18 ^ d112 ^ d71 ^ d52 ^ d63 ^ d61 ^ c20 ^ d80 ^
d124 ^ d42 ^ c0 ^ d56 ^ d23 ^ c13 ^ d10 ^ d109 ^ d81 ^ c16 ^
d79 ^ d123 ^ d95 ^ d92 ^ d121 ^ c12 ^ d111 ^ d65 ^ c3 ^ d116 ^
d117 ^ d43 ^ d59 ^ c30 ^ c21 ^ d85 ^ d96 ^ d108 ^ d30 ^ d14 ^
d27 ^ d93 ^ d22 ^ d66 ^ d104 ^ d35 ^ d70 ^ c1 ^ d102 ^ d24 ^
d99 ^ c5 ^ d8 ^ d126 ^ d46 ^ d32 ^ d115 ^ d77 ^ d82 ^ d28 ^
c8 ^ c29 ^ d4 ^ d125 ^ d51 ^ d83 ^ d26 ^ d97 ^ d58 ^ d48 ^
c25 ^ d7 ^ d45; // 82 ins 1 outs level 3
assign x29 = c4 ^ c20 ^ d29 ^ d3 ^ d82 ^ d107 ^ d57 ^ c7 ^ d27 ^
d100 ^ d9 ^ d114 ^ d81 ^ d21 ^ d110 ^ d116 ^ d103 ^ c14 ^ d101 ^
d70 ^ d98 ^ d120 ^ d42 ^ c19 ^ d80 ^ d7 ^ d108 ^ d58 ^ d45 ^
d125 ^ d123 ^ d63 ^ c29 ^ c17 ^ d76 ^ d115 ^ d84 ^ d64 ^ d47 ^
d113 ^ c0 ^ d31 ^ c28 ^ d96 ^ d34 ^ d94 ^ c2 ^ c15 ^ d69 ^
d111 ^ d25 ^ d122 ^ d50 ^ c24 ^ d93 ^ c5 ^ c11 ^ d22 ^ d55 ^
d13 ^ c27 ^ d62 ^ c12 ^ d44 ^ d6 ^ d26 ^ d95 ^ d92 ^ d124 ^
d41 ^ c18 ^ d78 ^ c26 ^ d23 ^ d91 ^ d52 ^ d65 ^ d28 ^ d51 ^
d60 ^ d79; // 81 ins 1 outs level 3
assign x28 = d100 ^ d68 ^ d63 ^ d2 ^ d92 ^ d75 ^ d8 ^ d21 ^ d69 ^
c26 ^ d124 ^ d77 ^ d91 ^ c27 ^ d22 ^ d90 ^ d40 ^ d20 ^ d99 ^
d83 ^ d56 ^ d64 ^ d78 ^ c11 ^ d113 ^ d121 ^ d44 ^ d54 ^ c17 ^
c4 ^ d123 ^ c14 ^ d110 ^ d30 ^ d57 ^ d62 ^ d33 ^ d27 ^ d46 ^
c16 ^ d5 ^ d12 ^ c3 ^ d115 ^ c23 ^ c10 ^ d24 ^ d106 ^ c13 ^
d109 ^ c28 ^ d114 ^ d26 ^ d97 ^ d81 ^ c1 ^ d43 ^ d51 ^ d102 ^
c18 ^ d112 ^ d59 ^ d122 ^ d107 ^ c6 ^ d28 ^ d80 ^ d95 ^ d94 ^
d119 ^ c25 ^ d50 ^ d49 ^ d61 ^ d41 ^ d79 ^ d93 ^ d25 ^ d6 ^
c19; // 80 ins 1 outs level 3
assign x27 = d111 ^ d67 ^ d123 ^ d1 ^ d48 ^ c5 ^ d26 ^ d21 ^ d61 ^
d96 ^ d25 ^ d49 ^ c27 ^ d78 ^ c3 ^ c10 ^ d121 ^ c25 ^ c18 ^
d32 ^ d101 ^ d23 ^ d53 ^ d42 ^ d5 ^ d20 ^ d98 ^ d45 ^ d105 ^
d92 ^ d127 ^ d40 ^ d90 ^ d74 ^ c17 ^ d122 ^ d80 ^ c31 ^ d112 ^
d106 ^ d89 ^ d93 ^ d11 ^ d56 ^ d114 ^ d55 ^ c16 ^ d118 ^ d43 ^
c2 ^ c0 ^ d63 ^ d39 ^ d79 ^ c12 ^ c24 ^ d68 ^ d4 ^ d50 ^
c22 ^ d120 ^ c26 ^ c13 ^ d76 ^ c15 ^ d60 ^ c9 ^ d62 ^ d7 ^
d58 ^ d108 ^ d82 ^ d24 ^ d77 ^ d94 ^ d27 ^ d109 ^ d113 ^ d19 ^
d99 ^ d91 ^ d29; // 82 ins 1 outs level 3
assign x26 = c2 ^ d55 ^ d110 ^ d48 ^ d119 ^ d26 ^ d6 ^ c4 ^ c21 ^
d61 ^ c26 ^ c17 ^ d49 ^ d75 ^ d24 ^ c9 ^ d54 ^ d0 ^ d104 ^
c23 ^ d79 ^ d28 ^ d88 ^ d93 ^ d111 ^ d112 ^ c1 ^ d107 ^ d4 ^
d57 ^ d122 ^ d67 ^ d47 ^ c16 ^ d98 ^ d76 ^ d73 ^ c12 ^ d66 ^
c15 ^ d95 ^ d10 ^ d60 ^ d121 ^ d31 ^ d120 ^ d38 ^ d108 ^ c14 ^
d52 ^ d105 ^ d22 ^ d78 ^ d90 ^ d126 ^ d89 ^ d39 ^ d42 ^ d62 ^
d19 ^ d100 ^ d20 ^ d25 ^ d18 ^ d92 ^ d59 ^ d3 ^ d97 ^ c11 ^
d81 ^ c24 ^ d77 ^ c8 ^ d23 ^ d41 ^ c30 ^ d113 ^ d91 ^ d44 ^
c25 ^ d117; // 81 ins 1 outs level 3
assign x25 = c17 ^ c24 ^ c4 ^ d89 ^ d86 ^ c25 ^ d121 ^ d61 ^ c21 ^
d90 ^ c2 ^ d41 ^ d44 ^ c28 ^ d17 ^ c3 ^ d75 ^ d77 ^ d64 ^
d62 ^ d122 ^ d21 ^ d87 ^ d48 ^ c23 ^ d106 ^ d37 ^ d99 ^ c8 ^
d51 ^ d119 ^ d124 ^ d28 ^ d33 ^ d57 ^ c30 ^ d84 ^ d100 ^ d67 ^
d126 ^ c10 ^ d36 ^ c26 ^ d104 ^ d38 ^ d74 ^ d95 ^ d29 ^ d83 ^
c9 ^ d52 ^ d3 ^ d19 ^ d115 ^ c15 ^ d22 ^ d18 ^ d105 ^ d2 ^
c6 ^ d92 ^ d102 ^ d91 ^ d8 ^ d107 ^ d76 ^ d117 ^ d31 ^ d120 ^
d88 ^ d71 ^ d15 ^ d81 ^ d82 ^ c11 ^ d49 ^ d58 ^ d40 ^ c19 ^
d56 ^ d11 ^ d111 ^ d93 ^ d98 ^ d113; // 85 ins 1 outs level 3
assign x24 = d27 ^ d56 ^ d30 ^ d114 ^ d28 ^ d125 ^ c27 ^ d48 ^ c14 ^
c29 ^ d98 ^ d123 ^ d2 ^ d14 ^ d40 ^ c16 ^ c20 ^ d85 ^ c18 ^
d37 ^ d83 ^ d73 ^ d103 ^ d55 ^ d89 ^ d81 ^ d51 ^ d63 ^ d57 ^
d43 ^ d35 ^ d10 ^ d74 ^ d17 ^ d97 ^ d90 ^ d106 ^ d88 ^ d47 ^
d110 ^ d101 ^ d92 ^ d105 ^ d60 ^ d80 ^ d119 ^ c5 ^ c8 ^ c3 ^
d91 ^ d116 ^ d121 ^ d1 ^ d18 ^ c7 ^ d32 ^ d50 ^ d104 ^ c25 ^
d70 ^ d36 ^ d66 ^ c24 ^ d127 ^ d112 ^ d16 ^ c31 ^ d21 ^ d75 ^
d20 ^ d76 ^ c10 ^ c22 ^ d61 ^ d82 ^ c23 ^ c9 ^ d118 ^ c1 ^
c2 ^ d94 ^ d39 ^ d87 ^ d120 ^ d7 ^ d99 ^ d86; // 87 ins 1 outs level 3
assign x23 = d50 ^ c2 ^ d113 ^ d74 ^ d60 ^ d16 ^ d124 ^ d85 ^ d29 ^
d111 ^ d119 ^ c13 ^ d120 ^ d34 ^ d26 ^ d117 ^ d96 ^ d122 ^ c8 ^
d1 ^ d118 ^ d104 ^ d38 ^ c6 ^ d54 ^ c21 ^ c9 ^ d72 ^ c17 ^
d105 ^ d39 ^ d84 ^ d127 ^ d97 ^ d115 ^ c1 ^ d98 ^ d55 ^ d80 ^
d36 ^ c31 ^ d59 ^ d126 ^ c23 ^ c30 ^ d75 ^ c0 ^ d47 ^ d65 ^
d27 ^ c7 ^ d87 ^ d93 ^ d91 ^ d20 ^ d89 ^ d69 ^ d86 ^ d82 ^
c26 ^ d100 ^ d102 ^ d0 ^ d56 ^ c15 ^ d42 ^ d103 ^ c4 ^ c22 ^
d35 ^ d109 ^ d9 ^ d46 ^ d62 ^ d88 ^ d79 ^ d49 ^ d73 ^ d81 ^
d13 ^ c28 ^ d90 ^ d31 ^ d19 ^ d15 ^ d17 ^ c24 ^ c19 ^ d6; // 89 ins 1 outs level 3
assign x22 = d101 ^ d62 ^ d26 ^ d89 ^ d18 ^ d65 ^ d0 ^ c28 ^ d31 ^
d66 ^ d19 ^ d61 ^ d122 ^ d60 ^ c9 ^ d105 ^ d113 ^ d74 ^ d108 ^
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -