📄 crc32_dat64.v
字号:
d19 ^ c0 ^ c30 ^ d6 ^ d62 ^ d55 ^ d10 ^ c21 ^ d18 ^ d25 ^
c18 ^ c28 ^ d2 ^ d42 ^ d47 ^ d22 ^ d16; // 46 ins 1 outs
assign x12 = d4 ^ d59 ^ d63 ^ d9 ^ c24 ^ c25 ^ c14 ^ c20 ^ d12 ^
d51 ^ c21 ^ d50 ^ d47 ^ d41 ^ d57 ^ d5 ^ d31 ^ d24 ^ c31 ^
d52 ^ c27 ^ d0 ^ d18 ^ c22 ^ d2 ^ c18 ^ c9 ^ c15 ^ c19 ^
d17 ^ d42 ^ d46 ^ c17 ^ d13 ^ d49 ^ d1 ^ d61 ^ d27 ^ d15 ^
d56 ^ d54 ^ d30 ^ d6 ^ d21 ^ c10 ^ d53 ^ c29; // 47 ins 1 outs
assign x11 = d15 ^ d28 ^ d58 ^ c25 ^ c18 ^ c19 ^ d14 ^ d36 ^ d40 ^
d59 ^ d33 ^ c16 ^ d41 ^ d26 ^ c4 ^ c11 ^ d43 ^ d16 ^ d1 ^
d47 ^ d27 ^ d50 ^ c27 ^ c9 ^ c13 ^ c24 ^ d56 ^ d54 ^ d48 ^
d51 ^ c26 ^ d57 ^ c1 ^ c8 ^ d0 ^ d45 ^ d3 ^ d24 ^ c12 ^
d17 ^ c23 ^ d25 ^ d9 ^ d12 ^ d31 ^ c22 ^ c15 ^ d44 ^ d4 ^
d55 ^ d20; // 51 ins 1 outs
assign x10 = c1 ^ c24 ^ d3 ^ d52 ^ d35 ^ d36 ^ d55 ^ d31 ^ d16 ^
c4 ^ d26 ^ d29 ^ d32 ^ d14 ^ c8 ^ c0 ^ c10 ^ d2 ^ d42 ^
d63 ^ c23 ^ c30 ^ c7 ^ d60 ^ c26 ^ d0 ^ d28 ^ d50 ^ c31 ^
d40 ^ d19 ^ d59 ^ c18 ^ c28 ^ c20 ^ d9 ^ c27 ^ d58 ^ d5 ^
d62 ^ d33 ^ d13 ^ d56 ^ d39 ^ c3; // 45 ins 1 outs
assign x9 = d32 ^ d29 ^ c1 ^ d51 ^ c29 ^ d34 ^ d11 ^ c2 ^ d52 ^
d33 ^ c23 ^ d58 ^ c28 ^ d41 ^ d60 ^ d61 ^ d23 ^ d13 ^ d24 ^
d9 ^ c3 ^ c26 ^ c11 ^ d1 ^ d5 ^ d18 ^ d47 ^ d12 ^ c19 ^
d2 ^ c9 ^ d43 ^ c20 ^ c12 ^ c0 ^ d44 ^ d36 ^ c15 ^ d46 ^
d55 ^ c4 ^ c6 ^ c14 ^ d35 ^ c21 ^ c7 ^ d39 ^ d38 ^ d53 ^
d4; // 50 ins 1 outs
assign x8 = d10 ^ d45 ^ c13 ^ c1 ^ d51 ^ d34 ^ c0 ^ d60 ^ d37 ^
c2 ^ d33 ^ c8 ^ c5 ^ d8 ^ d57 ^ d12 ^ c31 ^ d0 ^ d54 ^
d35 ^ d32 ^ d23 ^ d17 ^ d63 ^ d50 ^ d28 ^ c10 ^ c11 ^ c18 ^
d42 ^ c19 ^ c27 ^ d59 ^ d11 ^ c25 ^ d31 ^ c6 ^ d40 ^ d1 ^
c22 ^ d4 ^ d22 ^ d52 ^ d43 ^ c20 ^ c28 ^ d3 ^ d46 ^ d38 ^
c3 ^ c14; // 51 ins 1 outs
assign x7 = d47 ^ c5 ^ d24 ^ d28 ^ d60 ^ c0 ^ d29 ^ c25 ^ c24 ^
c20 ^ c19 ^ d22 ^ d7 ^ c13 ^ d2 ^ d54 ^ d3 ^ c11 ^ d41 ^
d56 ^ d37 ^ d57 ^ d25 ^ c18 ^ c10 ^ d45 ^ d51 ^ c22 ^ d43 ^
d46 ^ d23 ^ c7 ^ c2 ^ d16 ^ c9 ^ d10 ^ d15 ^ d39 ^ d42 ^
d58 ^ d21 ^ d5 ^ c15 ^ c26 ^ d0 ^ d32 ^ d50 ^ d52 ^ d8 ^
d34 ^ c28 ^ c14; // 52 ins 1 outs
assign x6 = d11 ^ d30 ^ c18 ^ c28 ^ c9 ^ d29 ^ d41 ^ c22 ^ d14 ^
d54 ^ c6 ^ d8 ^ d7 ^ d55 ^ d21 ^ d51 ^ c13 ^ d6 ^ d50 ^
c24 ^ d60 ^ d25 ^ d52 ^ d42 ^ d40 ^ d56 ^ c15 ^ d2 ^ d5 ^
d45 ^ d1 ^ d47 ^ c23 ^ d4 ^ d20 ^ d43 ^ c11 ^ c20 ^ c19 ^
d38 ^ c30 ^ c8 ^ d62 ^ c10 ^ d22; // 45 ins 1 outs
assign x5 = d53 ^ d10 ^ d24 ^ d50 ^ c14 ^ d59 ^ c29 ^ d51 ^ d20 ^
c12 ^ c31 ^ c5 ^ d5 ^ c23 ^ d0 ^ d42 ^ d54 ^ d44 ^ c21 ^
d29 ^ d41 ^ d37 ^ d4 ^ c27 ^ c17 ^ c7 ^ c19 ^ d46 ^ d13 ^
c22 ^ d61 ^ d21 ^ d7 ^ d49 ^ d39 ^ d1 ^ c9 ^ d55 ^ c10 ^
d19 ^ d3 ^ d6 ^ c18 ^ d63 ^ d40 ^ d28 ^ c8; // 47 ins 1 outs
assign x4 = c1 ^ d11 ^ d19 ^ d33 ^ d18 ^ d50 ^ d48 ^ c26 ^ c7 ^
d29 ^ d58 ^ d39 ^ c31 ^ c8 ^ d6 ^ d46 ^ d0 ^ d4 ^ d40 ^
c15 ^ d8 ^ d2 ^ c14 ^ d3 ^ d15 ^ c18 ^ d30 ^ c6 ^ d12 ^
d25 ^ c13 ^ d31 ^ d45 ^ d59 ^ d57 ^ c9 ^ d24 ^ c25 ^ d47 ^
d41 ^ c12 ^ c16 ^ d63 ^ d44 ^ d20 ^ c27 ^ d38; // 47 ins 1 outs
assign x3 = c22 ^ d39 ^ d38 ^ c20 ^ d14 ^ d58 ^ c1 ^ d32 ^ d3 ^
d52 ^ d40 ^ d17 ^ c8 ^ d8 ^ c21 ^ d59 ^ d9 ^ c24 ^ c6 ^
d45 ^ d25 ^ d27 ^ c26 ^ d31 ^ d54 ^ d19 ^ d1 ^ d36 ^ c5 ^
d60 ^ d18 ^ d2 ^ d7 ^ c4 ^ d15 ^ d33 ^ c0 ^ c28 ^ d53 ^
c13 ^ c27 ^ d56 ^ d37 ^ c7 ^ d10; // 45 ins 1 outs
assign x2 = d0 ^ d9 ^ d24 ^ d37 ^ c27 ^ c5 ^ d58 ^ d32 ^ c12 ^
c25 ^ c23 ^ d57 ^ d17 ^ d31 ^ d35 ^ c21 ^ d13 ^ d59 ^ d1 ^
d44 ^ d26 ^ d2 ^ d18 ^ c3 ^ d30 ^ d8 ^ d55 ^ c0 ^ d51 ^
d16 ^ d52 ^ d6 ^ d39 ^ c7 ^ d7 ^ d53 ^ c6 ^ c4 ^ d36 ^
c26 ^ d38 ^ c20 ^ d14 ^ c19; // 44 ins 1 outs
assign x1 = d44 ^ d47 ^ d12 ^ d58 ^ d0 ^ c26 ^ d16 ^ c2 ^ d53 ^
d56 ^ d27 ^ d63 ^ d24 ^ d28 ^ d1 ^ d49 ^ c27 ^ d34 ^ c6 ^
d59 ^ d35 ^ d33 ^ d7 ^ d6 ^ c15 ^ d13 ^ c17 ^ d17 ^ c21 ^
c12 ^ d50 ^ d60 ^ c1 ^ d51 ^ c31 ^ c14 ^ c3 ^ d11 ^ c24 ^
c18 ^ c28 ^ d62 ^ c30 ^ d38 ^ d46 ^ c19 ^ d9 ^ c5 ^ d37; // 49 ins 1 outs
assign x0 = c0 ^ d55 ^ d44 ^ d47 ^ c5 ^ c15 ^ c22 ^ d31 ^ d12 ^
d58 ^ d37 ^ d9 ^ d28 ^ d63 ^ c16 ^ d10 ^ d25 ^ c23 ^ c12 ^
d24 ^ d45 ^ d48 ^ c28 ^ c18 ^ c31 ^ d60 ^ c21 ^ d34 ^ c13 ^
d29 ^ d26 ^ c29 ^ d30 ^ d50 ^ d32 ^ d61 ^ d0 ^ c26 ^ d16 ^
c2 ^ d53 ^ d6 ^ d54; // 43 ins 1 outs
endmodule
////////////////////////////////////////////////////////////////
// Depth optimal factored version
////////////////////////////////////////////////////////////////
module crc32_dat64_factor (crc_in,dat_in,crc_out);
input [31:0] crc_in;
input [63:0] dat_in;
output [31:0] crc_out;
wire [31:0] crc_out;
wire x767, x766, x765, x764, x763, x762, x761,
x760, x759, x758, x757, x756, x755, x754, x753,
x752, x751, x750, x749, x748, x747, x746, x745,
x744, x743, x742, x741, x740, x739, x738, x737,
x736, x735, x734, x733, x732, x731, x730, x729,
x728, x727, x726, x725, x724, x723, x722, x721,
x720, x719, x718, x717, x716, x715, x714, x713,
x712, x711, x710, x709, x708, x707, x706, x705,
x704, x703, x702, x701, x700, x699, x698, x697,
x696, x695, x694, x693, x692, x691, x690, x689,
x688, x687, x686, x685, x684, x683, x682, x681,
x680, x679, x678, x677, x676, x675, x674, x673,
x672, x671, x670, x669, x668, x667, x666, x665,
x664, x663, x662, x661, x660, x659, x658, x657,
x656, x655, x654, x653, x652, x651, x650, x649,
x648, x647, x646, x645, x644, 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;
assign { 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 [63: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];
xor6 x767i (.out(x767),.a(x678),.b(d60),.c(d41),.d(c22),.e(d10),.f(1'b0)); // 5 ins 1 outs
xor6 x766i (.out(x766),.a(x644),.b(x664),.c(d60),.d(d34),.e(d11),.f(1'b0)); // 5 ins 1 outs
xor6 x765i (.out(x765),.a(d45),.b(d24),.c(d19),.d(d12),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x764i (.out(x764),.a(x648),.b(x660),.c(d18),.d(d40),.e(c21),.f(1'b0)); // 5 ins 1 outs
xor6 x763i (.out(x763),.a(x659),.b(x653),.c(d5),.d(d52),.e(c14),.f(1'b0)); // 5 ins 1 outs
xor6 x762i (.out(x762),.a(c16),.b(c28),.c(x738),.d(d26),.e(x658),.f(1'b0)); // 5 ins 1 outs
xor6 x761i (.out(x761),.a(x746),.b(d13),.c(d56),.d(d42),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x760i (.out(x760),.a(c6),.b(d16),.c(d55),.d(d32),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x759i (.out(x759),.a(d17),.b(d2),.c(d13),.d(d11),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x758i (.out(x758),.a(c28),.b(x731),.c(d60),.d(d50),.e(c18),.f(1'b0)); // 5 ins 1 outs
xor6 x757i (.out(x757),.a(x649),.b(d19),.c(d20),.d(d22),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x756i (.out(x756),.a(d45),.b(c15),.c(d48),.d(d27),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x755i (.out(x755),.a(x729),.b(d0),.c(x648),.d(x666),.e(x659),.f(1'b0)); // 5 ins 1 outs
xor6 x754i (.out(x754),.a(d18),.b(d14),.c(d27),.d(d7),.e(d62),.f(1'b0)); // 5 ins 1 outs
xor6 x753i (.out(x753),.a(x645),.b(d12),.c(d3),.d(d62),.e(d38),.f(1'b0)); // 5 ins 1 outs
xor6 x752i (.out(x752),.a(d3),.b(d52),.c(d0),.d(x662),.e(x664),.f(d13)); // 6 ins 1 outs
xor6 x751i (.out(x751),.a(x700),.b(c8),.c(x668),.d(d25),.e(d37),.f(c24)); // 6 ins 1 outs
xor6 x750i (.out(x750),.a(d49),.b(c8),.c(c12),.d(d2),.e(d21),.f(1'b0)); // 5 ins 1 outs
xor6 x749i (.out(x749),.a(c31),.b(d6),.c(d21),.d(x720),.e(x666),.f(1'b0)); // 5 ins 1 outs
xor6 x748i (.out(x748),.a(d14),.b(x645),.c(d27),.d(x667),.e(d19),.f(1'b0)); // 5 ins 1 outs
xor6 x747i (.out(x747),.a(d11),.b(x652),.c(x645),.d(d12),.e(x659),.f(1'b0)); // 5 ins 1 outs
xor6 x746i (.out(x746),.a(c22),.b(c21),.c(d9),.d(d7),.e(1'b0),.f(1'b0)); // 4 ins 1 outs
xor6 x745i (.out(x745),.a(x651),.b(d44),.c(d8),.d(d47),.e(c12),.f(d22)); // 6 ins 1 outs
xor6 x744i (.out(x744),.a(d55),.b(d39),.c(x662),.d(c10),.e(d47),.f(d29)); // 6 ins 1 outs
xor6 x743i (.out(x743),.a(x658),.b(d5),.c(d14),.d(c6),.e(c9),.f(x656)); // 6 ins 1 outs
xor6 x742i (.out(x742),.a(x652),.b(d10),.c(x670),.d(d34),.e(c2),.f(c14)); // 6 ins 1 outs
xor6 x741i (.out(x741),.a(d38),.b(d0),.c(d44),.d(c12),.e(d26),.f(x649)); // 6 ins 1 outs
xor6 x740i (.out(x740),.a(x667),.b(d8),.c(d21),.d(x647),.e(x658),.f(c30)); // 6 ins 1 outs
xor6 x739i (.out(x739),.a(d3),.b(x650),.c(x672),.d(d15),.e(d46),.f(d28)); // 6 ins 1 outs
xor6 x738i (.out(x738),.a(c4),.b(d9),.c(d24),.d(d14),.e(d36),.f(1'b0)); // 5 ins 1 outs
xor6 x737i (.out(x737),.a(d50),.b(c18),.c(c17),.d(x669),.e(x691),.f(x664)); // 6 ins 1 outs
xor6 x736i (.out(x736),.a(x647),.b(d32),.c(d25),.d(x660),.e(d5),.f(c6)); // 6 ins 1 outs
xor6 x735i (.out(x735),.a(d13),.b(d42),.c(d10),.d(x710),.e(x666),.f(x668)); // 6 ins 1 outs
xor6 x734i (.out(x734),.a(x667),.b(x659),.c(d30),.d(d27),.e(x654),.f(d19)); // 6 ins 1 outs
xor6 x733i (.out(x733),.a(d33),.b(c1),.c(x664),.d(x672),.e(c9),.f(1'b0)); // 5 ins 1 outs
xor6 x732i (.out(x732),.a(d33),.b(d6),.c(d52),.d(d15),.e(x646),.f(1'b0)); // 5 ins 1 outs
xor6 x731i (.out(x731),.a(d34),.b(d52),.c(d20),.d(d62),.e(d12),.f(1'b0)); // 5 ins 1 outs
xor6 x730i (.out(x730),.a(c24),.b(x694),.c(c13),.d(x660),.e(d23),.f(1'b0)); // 5 ins 1 outs
xor6 x729i (.out(x729),.a(d38),.b(c27),.c(d59),.d(c6),.e(d49),.f(c4)); // 6 ins 1 outs
xor6 x728i (.out(x728),.a(x665),.b(d36),.c(c5),.d(x678),.e(d10),.f(c16)); // 6 ins 1 outs
xor6 x727i (.out(x727),.a(d30),.b(d7),.c(d3),.d(x651),.e(d53),.f(x650)); // 6 ins 2 outs
xor6 x726i (.out(x726),.a(x655),.b(c24),.c(d63),.d(d2),.e(x662),.f(c20)); // 6 ins 1 outs
xor6 x725i (.out(x725),.a(c16),.b(c4),.c(d53),.d(x665),.e(d2),.f(c31)); // 6 ins 1 outs
xor6 x724i (.out(x724),.a(x665),.b(c8),.c(d16),.d(d14),.e(c30),.f(1'b0)); // 5 ins 1 outs
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -