| module user_proj_example ( |
| `ifdef USE_POWER_PINS |
| inout vccd1, // User area 1 1.8V supply |
| inout vssd1, // User area 1 digital ground |
| `endif |
| // Global Signals |
| input iClk, |
| input iRst_n, // Synchronous Reset_n |
| // Inputs |
| // Control Signals |
| input iValid, |
| input [2:0] iSize, // 000->2p; 001->4p; 010->8p; 011->16p; 1xx->32p |
| // Data Signals |
| input iSVAL, |
| input iSDAT, |
| // Outputs |
| output reg oSVAL, |
| output reg oSDAT |
| ); |
| |
| /***************************************************************************** |
| * Internal Wires and Registers Declarations * |
| *****************************************************************************/ |
| |
| wire Valid_n; |
| reg [2:0] Size; |
| |
| // Input ShiftRegs |
| wire [255:0] RegIn_w; |
| reg [255:0] RegIn; // 32*8bit |
| |
| // Core Signals |
| // Input Signals |
| wire [7:0] X0, X1, X2, X3, X4, X5, X6, X7, |
| /* 8.0 */ X8, X9, X10, X11, X12, X13, X14, X15, |
| X16, X17, X18, X19, X20, X21, X22, X23, |
| X24, X25, X26, X27, X28, X29, X30, X31; |
| // Output Signals |
| wire [12:0] /*13.0*/ Y0, Y16; |
| wire [18:0] /*14.5*/ Y8, Y24; |
| wire [19:0] /*14.6*/ Y4, Y20, Y12, Y28; |
| wire [21:0] /*14.8*/ Y2, Y18, Y10, Y26, Y6, Y22, Y14, Y30; |
| wire [23:0] /*14.10*/ Y1, Y17, Y9, Y25, Y5, Y21, Y13, Y29, |
| Y3, Y19, Y11, Y27, Y7, Y23, Y15, Y31; |
| |
| // Output ShiftRegs |
| reg [9:0] CounterOut; // count 0 to 768 |
| wire [9:0] CounterOut_plus1; |
| wire [9:0] CounterOut_w; |
| wire CounterOut_Rstn; |
| wire CounterEnd; |
| wire CounterEnd32, CounterEnd16, CounterEnd8, CounterEnd4, CounterEnd2; |
| |
| wire ShiftCtrl; |
| reg [767:0] RegOut; |
| wire [767:0] RegOut_Sft; |
| wire [23:0] RegOut0, RegOut1, RegOut2, RegOut3, |
| RegOut4, RegOut5, RegOut6, RegOut7, |
| RegOut8, RegOut9, RegOut10, RegOut11, |
| RegOut12, RegOut13, RegOut14, RegOut15, |
| RegOut16, RegOut17, RegOut18, RegOut19, |
| RegOut20, RegOut21, RegOut22, RegOut23, |
| RegOut24, RegOut25, RegOut26, RegOut27, |
| RegOut28, RegOut29, RegOut30, RegOut31; |
| |
| /***************************************************************************** |
| * Input ShiftRegs * |
| *****************************************************************************/ |
| |
| assign RegIn_w = (iSVAL) ? {RegIn[254:0], iSDAT} : RegIn; |
| always@(posedge iClk) |
| begin |
| RegIn <= {(256){iRst_n}} & RegIn_w; |
| end |
| |
| assign X0 = RegIn[7:0]; |
| assign X1 = RegIn[15:8]; |
| assign X2 = RegIn[23:16]; |
| assign X3 = RegIn[31:24]; |
| assign X4 = RegIn[39:32]; |
| assign X5 = RegIn[47:40]; |
| assign X6 = RegIn[55:48]; |
| assign X7 = RegIn[63:56]; |
| assign X8 = RegIn[71:64]; |
| assign X9 = RegIn[79:72]; |
| assign X10 = RegIn[87:80]; |
| assign X11 = RegIn[95:88]; |
| assign X12 = RegIn[103:96]; |
| assign X13 = RegIn[111:104]; |
| assign X14 = RegIn[119:112]; |
| assign X15 = RegIn[127:120]; |
| assign X16 = RegIn[135:128]; |
| assign X17 = RegIn[143:136]; |
| assign X18 = RegIn[151:144]; |
| assign X19 = RegIn[159:152]; |
| assign X20 = RegIn[167:160]; |
| assign X21 = RegIn[175:168]; |
| assign X22 = RegIn[183:176]; |
| assign X23 = RegIn[191:184]; |
| assign X24 = RegIn[199:192]; |
| assign X25 = RegIn[207:200]; |
| assign X26 = RegIn[215:208]; |
| assign X27 = RegIn[223:216]; |
| assign X28 = RegIn[231:224]; |
| assign X29 = RegIn[239:232]; |
| assign X30 = RegIn[247:240]; |
| assign X31 = RegIn[255:248]; |
| |
| /***************************************************************************** |
| * Internal Modules * |
| *****************************************************************************/ |
| |
| ACor_DCT_32p DCT32p ( |
| // Input Signals |
| .iX0 (X0), .iX1 (X1), .iX2 (X2), .iX3 (X3), |
| .iX4 (X4), .iX5 (X5), .iX6 (X6), .iX7 (X7), |
| .iX8 (X8), .iX9 (X9), .iX10 (X10), .iX11 (X11), |
| .iX12 (X12), .iX13 (X13), .iX14 (X14), .iX15 (X15), |
| .iX16 (X16), .iX17 (X17), .iX18 (X18), .iX19 (X19), |
| .iX20 (X20), .iX21 (X21), .iX22 (X22), .iX23 (X23), |
| .iX24 (X24), .iX25 (X25), .iX26 (X26), .iX27 (X27), |
| .iX28 (X28), .iX29 (X29), .iX30 (X30), .iX31 (X31), |
| |
| // Output Signals |
| .oY0 (Y0), .oY1 (Y1), .oY2 (Y2), .oY3 (Y3), |
| .oY4 (Y4), .oY5 (Y5), .oY6 (Y6), .oY7 (Y7), |
| .oY8 (Y8), .oY9 (Y9), .oY10 (Y10), .oY11 (Y11), |
| .oY12 (Y12), .oY13 (Y13), .oY14 (Y14), .oY15 (Y15), |
| .oY16 (Y16), .oY17 (Y17), .oY18 (Y18), .oY19 (Y19), |
| .oY20 (Y20), .oY21 (Y21), .oY22 (Y22), .oY23 (Y23), |
| .oY24 (Y24), .oY25 (Y25), .oY26 (Y26), .oY27 (Y27), |
| .oY28 (Y28), .oY29 (Y29), .oY30 (Y30), .oY31 (Y31) |
| ); |
| |
| /***************************************************************************** |
| * Output ShiftRegs * |
| *****************************************************************************/ |
| |
| always@(posedge iClk) |
| begin |
| Size <= iSize; |
| end |
| |
| // ShiftCtrl = (CounterOut!=0); |
| assign ShiftCtrl = ((CounterOut[9]|CounterOut[8]) | (CounterOut[7]|CounterOut[6])) | |
| ((CounterOut[5]|CounterOut[4]) | (CounterOut[3]|CounterOut[2])) | |
| (CounterOut[1]|CounterOut[0]); |
| |
| // CounterEnd = (Size[2]) ? (CounterOut==768) : |
| // (Size[1]) ? ( (Size[0]) ? (CounterOut==384) : (CounterOut==192) ) : |
| // ( (Size[0]) ? (CounterOut== 96) : (CounterOut== 48) ); |
| assign CounterEnd32 = CounterOut[9] & CounterOut[8]; |
| assign CounterEnd16 = CounterOut[8] & CounterOut[7]; |
| assign CounterEnd8 = CounterOut[7] & CounterOut[6]; |
| assign CounterEnd4 = CounterOut[6] & CounterOut[5]; |
| assign CounterEnd2 = CounterOut[5] & CounterOut[4]; |
| assign CounterEnd = (Size[2]) ? CounterEnd32 : |
| (Size[1]) ? ( (Size[0]) ? CounterEnd16 : CounterEnd8 ) : |
| ( (Size[0]) ? CounterEnd4 : CounterEnd2 ); |
| |
| /*always@(posedge iClk) |
| begin |
| if (~iRst_n|CounterEnd) |
| CounterOut <= 10'b0; |
| else if (iValid|ShiftCtrl) |
| CounterOut <= CounterOut + 1'b1; |
| else |
| CounterOut <= CounterOut; |
| end*/ |
| Ripple_Add_10bit_plus1 CounterPlus1 (.iA (CounterOut), .oS (CounterOut_plus1)); |
| assign CounterOut_w = (iValid|ShiftCtrl) ? CounterOut_plus1 : CounterOut; |
| assign CounterOut_Rstn = iRst_n & ~CounterEnd; |
| always@(posedge iClk) |
| begin |
| CounterOut <= {(10){CounterOut_Rstn}} & CounterOut_w; |
| end |
| |
| always@(posedge iClk) |
| begin |
| oSVAL <= ShiftCtrl; |
| end |
| |
| /*always@(posedge iClk) |
| begin |
| if (iValid) |
| RegOut <= { Y31, {Y30,2'b0}, Y29, { Y28, 4'b0}, |
| Y27, {Y26,2'b0}, Y25, { Y24, 5'b0}, |
| Y23, {Y22,2'b0}, Y21, { Y20, 4'b0}, |
| Y19, {Y18,2'b0}, Y17, {Y16[12],Y16,10'b0}, |
| Y15, {Y14,2'b0}, Y13, { Y12, 4'b0}, |
| Y11, {Y10,2'b0}, Y9, { Y8, 5'b0}, |
| Y7, {Y6 ,2'b0}, Y5, { Y4, 4'b0}, |
| Y3, {Y2 ,2'b0}, Y1, {Y0[12], Y0, 10'b0}}; |
| else if (ShiftCtrl) |
| RegOut <= {1'b0, RegOut[767:1]}; |
| else |
| RegOut <= RegOut; |
| end*/ |
| assign RegOut_Sft[766:0] = (ShiftCtrl) ? RegOut[767:1] : RegOut[766:0]; |
| assign RegOut_Sft[767] = ~ShiftCtrl & RegOut[767]; |
| |
| assign Valid_n = ~iValid; |
| |
| assign RegOut0[9:0] = {(10){Valid_n}} & RegOut_Sft[9:0]; |
| assign RegOut0[23:10] = (iValid) ? {Y0[12], Y0} : RegOut_Sft[23:10]; |
| assign RegOut1 = (iValid) ? Y1 : RegOut_Sft[47:24]; |
| assign RegOut2[1:0] = {(2){Valid_n}} & RegOut_Sft[49:48]; |
| assign RegOut2[23:2] = (iValid) ? Y2 : RegOut_Sft[71:50]; |
| assign RegOut3 = (iValid) ? Y3 : RegOut_Sft[95:72]; |
| assign RegOut4[3:0] = {(4){Valid_n}} & RegOut_Sft[99:96]; |
| assign RegOut4[23:4] = (iValid) ? Y4 : RegOut_Sft[119:100]; |
| assign RegOut5 = (iValid) ? Y5 : RegOut_Sft[143:120]; |
| assign RegOut6[1:0] = {(2){Valid_n}} & RegOut_Sft[145:144]; |
| assign RegOut6[23:2] = (iValid) ? Y6 : RegOut_Sft[167:146]; |
| assign RegOut7 = (iValid) ? Y7 : RegOut_Sft[191:168]; |
| assign RegOut8[4:0] = {(5){Valid_n}} & RegOut_Sft[196:192]; |
| assign RegOut8[23:5] = (iValid) ? Y8 : RegOut_Sft[215:197]; |
| assign RegOut9 = (iValid) ? Y9 : RegOut_Sft[239:216]; |
| assign RegOut10[1:0] = {(2){Valid_n}} & RegOut_Sft[241:240]; |
| assign RegOut10[23:2] = (iValid) ? Y10 : RegOut_Sft[263:242]; |
| assign RegOut11 = (iValid) ? Y11 : RegOut_Sft[287:264]; |
| assign RegOut12[3:0] = {(4){Valid_n}} & RegOut_Sft[291:288]; |
| assign RegOut12[23:4] = (iValid) ? Y12 : RegOut_Sft[311:292]; |
| assign RegOut13 = (iValid) ? Y13 : RegOut_Sft[335:312]; |
| assign RegOut14[1:0] = {(2){Valid_n}} & RegOut_Sft[337:336]; |
| assign RegOut14[23:2] = (iValid) ? Y14 : RegOut_Sft[359:338]; |
| assign RegOut15 = (iValid) ? Y15 : RegOut_Sft[383:360]; |
| assign RegOut16[9:0] = {(10){Valid_n}} & RegOut_Sft[393:384]; |
| assign RegOut16[23:10] = (iValid) ? {Y16[12],Y16} : RegOut_Sft[407:394]; |
| assign RegOut17 = (iValid) ? Y17 : RegOut_Sft[431:408]; |
| assign RegOut18[1:0] = {(2){Valid_n}} & RegOut_Sft[433:432]; |
| assign RegOut18[23:2] = (iValid) ? Y18 : RegOut_Sft[455:434]; |
| assign RegOut19 = (iValid) ? Y19 : RegOut_Sft[479:456]; |
| assign RegOut20[3:0] = {(4){Valid_n}} & RegOut_Sft[483:480]; |
| assign RegOut20[23:4] = (iValid) ? Y20 : RegOut_Sft[503:484]; |
| assign RegOut21 = (iValid) ? Y21 : RegOut_Sft[527:504]; |
| assign RegOut22[1:0] = {(2){Valid_n}} & RegOut_Sft[529:528]; |
| assign RegOut22[23:2] = (iValid) ? Y22 : RegOut_Sft[551:530]; |
| assign RegOut23 = (iValid) ? Y23 : RegOut_Sft[575:552]; |
| assign RegOut24[4:0] = {(5){Valid_n}} & RegOut_Sft[580:576]; |
| assign RegOut24[23:5] = (iValid) ? Y24 : RegOut_Sft[599:581]; |
| assign RegOut25 = (iValid) ? Y25 : RegOut_Sft[623:600]; |
| assign RegOut26[1:0] = {(2){Valid_n}} & RegOut_Sft[625:624]; |
| assign RegOut26[23:2] = (iValid) ? Y26 : RegOut_Sft[647:626]; |
| assign RegOut27 = (iValid) ? Y27 : RegOut_Sft[671:648]; |
| assign RegOut28[3:0] = {(4){Valid_n}} & RegOut_Sft[675:672]; |
| assign RegOut28[23:4] = (iValid) ? Y28 : RegOut_Sft[695:676]; |
| assign RegOut29 = (iValid) ? Y29 : RegOut_Sft[719:696]; |
| assign RegOut30[1:0] = {(2){Valid_n}} & RegOut_Sft[721:720]; |
| assign RegOut30[23:2] = (iValid) ? Y30 : RegOut_Sft[743:722]; |
| assign RegOut31 = (iValid) ? Y31 : RegOut_Sft[767:744]; |
| |
| always@(posedge iClk) |
| begin |
| RegOut <= {RegOut31, RegOut30, RegOut29, RegOut28, |
| RegOut27, RegOut26, RegOut25, RegOut24, |
| RegOut23, RegOut22, RegOut21, RegOut20, |
| RegOut19, RegOut18, RegOut17, RegOut16, |
| RegOut15, RegOut14, RegOut13, RegOut12, |
| RegOut11, RegOut10, RegOut9, RegOut8, |
| RegOut7, RegOut6, RegOut5, RegOut4, |
| RegOut3, RegOut2, RegOut1, RegOut0}; |
| end |
| |
| always@(posedge iClk) |
| begin |
| oSDAT <= RegOut[0]; |
| end |
| |
| endmodule |
| |
| module Ripple_Add_10bit_plus1 ( |
| // Input Signals |
| input [9:0] iA, |
| |
| // Output Signals |
| output [9:0] oS |
| ); |
| |
| wire [7:0] C; |
| |
| assign oS[0] = ~iA[0]; |
| FA_Cir_Cin0 S1 (.iA (iA[1]), .iB (iA[0]), .oS (oS[1]), .oC (C[0])); |
| FA_Cir_Cin0 S2 (.iA (iA[2]), .iB (C[0]), .oS (oS[2]), .oC (C[1])); |
| FA_Cir_Cin0 S3 (.iA (iA[3]), .iB (C[1]), .oS (oS[3]), .oC (C[2])); |
| FA_Cir_Cin0 S4 (.iA (iA[4]), .iB (C[2]), .oS (oS[4]), .oC (C[3])); |
| FA_Cir_Cin0 S5 (.iA (iA[5]), .iB (C[3]), .oS (oS[5]), .oC (C[4])); |
| FA_Cir_Cin0 S6 (.iA (iA[6]), .iB (C[4]), .oS (oS[6]), .oC (C[5])); |
| FA_Cir_Cin0 S7 (.iA (iA[7]), .iB (C[5]), .oS (oS[7]), .oC (C[6])); |
| FA_Cir_Cin0 S8 (.iA (iA[8]), .iB (C[6]), .oS (oS[8]), .oC (C[7])); |
| assign oS[9] = iA[9]^C[7]; |
| |
| endmodule |
| |
| module ACor_DCT_32p ( |
| // Input Signals |
| input [7:0] iX0, iX1, iX2, iX3, iX4, iX5, iX6, iX7, |
| /* 8.0 */ iX8, iX9, iX10, iX11, iX12, iX13, iX14, iX15, |
| iX16, iX17, iX18, iX19, iX20, iX21, iX22, iX23, |
| iX24, iX25, iX26, iX27, iX28, iX29, iX30, iX31, |
| |
| // Output Signals |
| output [12:0] /*13.0*/ oY0, oY16, |
| output [18:0] /*14.5*/ oY8, oY24, |
| output [19:0] /*14.6*/ oY4, oY20, oY12, oY28, |
| output [21:0] /*14.8*/ oY2, oY18, oY10, oY26, |
| oY6, oY22, oY14, oY30, |
| output [23:0] /*14.10*/ oY1, oY17, oY9, oY25, |
| oY5, oY21, oY13, oY29, |
| oY3, oY19, oY11, oY27, |
| oY7, oY23, oY15, oY31 |
| ); |
| |
| /***************************************************************************** |
| * Internal Wires and Registers Declarations * |
| *****************************************************************************/ |
| |
| // Stage1 |
| wire [8:0] A0, A1, A2, A3, A4, A5, A6, A7, |
| /* 9.0 */ A8, A9, A10, A11, A12, A13, A14, A15, |
| A16, A17, A18, A19, A20, A21, A22, A23, |
| A24, A25, A26, A27, A28, A29, A30, A31; |
| |
| // Stage2 |
| wire [9:0] B0, B1, B2, B3, B4, B5, B6, B7, |
| /*10. 0*/ B8, B9, B10, B11, B12, B13, B14, B15; |
| |
| wire [20:0] B16_0a, B16_0b, B17_4a, B17_4b, B18_6a, B18_6b, B19_3a, B19_3b, |
| /*11.10*/ B20_3a, B20_3b, B21_6a, B21_6b, B22_4a, B22_4b, B23_0a, B23_0b; |
| |
| wire [19:0] B16_7a, B16_7b, B17_1a, B17_1b, B18_3a, B18_3b, B19_5a, B19_5b, |
| /*11.9 */ B20_5a, B20_5b, B21_3a, B21_3b, B22_1a, B22_1b, B23_7a, B23_7b; |
| |
| wire [20:0] B16_4a, B16_4b, B17_3a, B17_3b, B18_0a, B18_0b, B19_7a, B19_7b, |
| /*11.10*/ B20_7a, B20_7b, B21_0a, B21_0b, B22_3a, B22_3b, B23_4a, B23_4b; |
| |
| wire [15:0] B16_3a, B16_3b, B17_7a, B17_7b, B18_4a, B18_4b, B19_1a, B19_1b, |
| /*11.5 */ B20_1a, B20_1b, B21_4a, B21_4b, B22_7a, B22_7b, B23_3a, B23_3b; |
| |
| wire [17:0] B16_2a, B16_2b, B17_6a, B17_6b, B18_5a, B18_5b, B19_0a, B19_0b, |
| /*11.7 */ B20_0a, B20_0b, B21_5a, B21_5b, B22_6a, B22_6b, B23_2a, B23_2b; |
| |
| wire [15:0] B16_5a, B16_5b, B17_2a, B17_2b, B18_1a, B18_1b, B19_6a, B19_6b, |
| /*11.5 */ B20_6a, B20_6b, B21_1a, B21_1b, B22_2a, B22_2b, B23_5a, B23_5b; |
| |
| wire [13:0] B16_6a, B16_6b, B17_0a, B17_0b, B18_2a, B18_2b, B19_4a, B19_4b, |
| /*11.3 */ B20_4a, B20_4b, B21_2a, B21_2b, B22_0a, B22_0b, B23_6a, B23_6b; |
| |
| wire [14:0] B16_1a, B16_1b, B17_5a, B17_5b, B18_7a, B18_7b, B19_2a, B19_2b, |
| /*11.4 */ B20_2a, B20_2b, B21_7a, B21_7b, B22_5a, B22_5b, B23_1a, B23_1b; |
| |
| // Stage3 |
| wire [10:0] /*11.0*/ C0, C1, C2, C3, C4, C5, C6, C7; |
| |
| wire [19:0] /*12.8 */ C8_0a, C8_0b, C9_3a, C9_3b, |
| C10_3a, C10_3b, C11_0a, C11_0b; |
| wire [17:0] /*12.6 */ C8_3a, C8_3b, C9_1a, C9_1b, |
| C10_1a, C10_1b, C11_3a, C11_3b; |
| wire [17:0] /*12.6 */ C8_2a, C8_2b, C9_0a, C9_0b, |
| C10_0a, C10_0b, C11_2a, C11_2b; |
| wire [14:0] /*12.3 */ C8_1a, C8_1b, C9_2a, C9_2b, |
| C10_2a, C10_2b, C11_1a, C11_1b; |
| |
| wire [21:0] /*12.10*/ C12_0a, C12_0b, C12_1a, C12_1b; |
| wire [18:0] /*12.7 */ C12_2a, C12_2b, C12_3a, C12_3b; |
| wire [21:0] /*12.10*/ C12_4a, C12_4b, C12_5a, C12_5b; |
| wire [20:0] /*12.9 */ C12_6a, C12_6b, C12_7a, C12_7b; |
| |
| wire [21:0] /*12.10*/ C13_0a, C13_0b, C13_1a, C13_1b; |
| wire [20:0] /*12.9 */ C13_2a, C13_2b, C13_3a, C13_3b; |
| wire [18:0] /*12.7 */ C13_4a, C13_4b, C13_5a, C13_5b; |
| wire [21:0] /*12.10*/ C13_6a, C13_6b, C13_7a, C13_7b; |
| |
| wire [18:0] /*12.7 */ C14_0a, C14_0b, C14_1a, C14_1b; |
| wire [21:0] /*12.10*/ C14_2a, C14_2b, C14_3a, C14_3b; |
| wire [20:0] /*12.9 */ C14_4a, C14_4b, C14_5a, C14_5b; |
| wire [21:0] /*12.10*/ C14_6a, C14_6b, C14_7a, C14_7b; |
| |
| wire [20:0] /*12.9 */ C15_0a, C15_0b, C15_1a, C15_1b; |
| wire [21:0] /*12.10*/ C15_2a, C15_2b, C15_3a, C15_3b; |
| wire [21:0] /*12.10*/ C15_4a, C15_4b, C15_5a, C15_5b; |
| wire [18:0] /*12.7 */ C15_6a, C15_6b, C15_7a, C15_7b; |
| |
| // Stage4 |
| wire [11:0] /*12.0*/ D0, D1, D2, D3; |
| |
| wire [18:0] /*13.6 */ D4_0a, D4_0b, D5_1a, D5_1b; |
| wire [16:0] /*13.4 */ D4_1a, D4_1b, D5_0a, D5_0b; |
| |
| wire [20:0] /*13.8 */ D6_0a, D6_0b, D6_1a, D6_1b; |
| wire [18:0] /*13.6 */ D6_2a, D6_2b, D6_3a, D6_3b; |
| |
| wire [18:0] /*13.6 */ D7_0a, D7_0b, D7_1a, D7_1b; |
| wire [20:0] /*13.8 */ D7_2a, D7_2b, D7_3a, D7_3b; |
| |
| wire [22:0] /*13.10*/ D8_0a, D8_0b, D8_1a, D8_1b, |
| D8_2a, D8_2b, D8_3a, D8_3b, |
| D8_4a, D8_4b, D8_5a, D8_5b, |
| D8_6a, D8_6b, D8_7a, D8_7b; |
| |
| wire [22:0] /*13.10*/ D9_0a, D9_0b, D9_1a, D9_1b, |
| D9_2a, D9_2b, D9_3a, D9_3b, |
| D9_4a, D9_4b, D9_5a, D9_5b, |
| D9_6a, D9_6b, D9_7a, D9_7b; |
| |
| // Stage5 |
| wire [12:0] /*13.0*/ E0, E1; |
| |
| wire [18:0] /*14.5 */ E2, E3; |
| |
| wire [19:0] /*14.6 */ E4, E5, E6, E7; |
| |
| wire [21:0] /*14.8 */ E8, E9, E10, E11, |
| E12, E13, E14, E15; |
| |
| wire [23:0] /*14.10 */ E16, E17, E18, E19, |
| E20, E21, E22, E23, |
| E24, E25, E26, E27, |
| E28, E29, E30, E31; |
| |
| /***************************************************************************** |
| * Internal Modules * |
| *****************************************************************************/ |
| |
| // Stage1 |
| ACor_DCT_32p_S1 Stage1 ( |
| // Input Signals |
| .iX0 (iX0), .iX1 (iX1), .iX2 (iX2), .iX3 (iX3), |
| .iX4 (iX4), .iX5 (iX5), .iX6 (iX6), .iX7 (iX7), |
| .iX8 (iX8), .iX9 (iX9), .iX10 (iX10), .iX11 (iX11), |
| .iX12 (iX12), .iX13 (iX13), .iX14 (iX14), .iX15 (iX15), |
| .iX16 (iX16), .iX17 (iX17), .iX18 (iX18), .iX19 (iX19), |
| .iX20 (iX20), .iX21 (iX21), .iX22 (iX22), .iX23 (iX23), |
| .iX24 (iX24), .iX25 (iX25), .iX26 (iX26), .iX27 (iX27), |
| .iX28 (iX28), .iX29 (iX29), .iX30 (iX30), .iX31 (iX31), |
| |
| // Output Signals |
| .oA0 (A0), .oA1 (A1), .oA2 (A2), .oA3 (A3), |
| .oA4 (A4), .oA5 (A5), .oA6 (A6), .oA7 (A7), |
| .oA8 (A8), .oA9 (A9), .oA10 (A10), .oA11 (A11), |
| .oA12 (A12), .oA13 (A13), .oA14 (A14), .oA15 (A15), |
| .oA16 (A16), .oA17 (A17), .oA18 (A18), .oA19 (A19), |
| .oA20 (A20), .oA21 (A21), .oA22 (A22), .oA23 (A23), |
| .oA24 (A24), .oA25 (A25), .oA26 (A26), .oA27 (A27), |
| .oA28 (A28), .oA29 (A29), .oA30 (A30), .oA31 (A31) |
| ); |
| |
| // Stage2 |
| ACor_DCT_32p_S2 Stage2 ( |
| // Input Signals |
| .iA0 (A0), .iA1 (A1), .iA2 (A2), .iA3 (A3), |
| .iA4 (A4), .iA5 (A5), .iA6 (A6), .iA7 (A7), |
| .iA8 (A8), .iA9 (A9), .iA10 (A10), .iA11 (A11), |
| .iA12 (A12), .iA13 (A13), .iA14 (A14), .iA15 (A15), |
| .iA16 (A16), .iA17 (A17), .iA18 (A18), .iA19 (A19), |
| .iA20 (A20), .iA21 (A21), .iA22 (A22), .iA23 (A23), |
| .iA24 (A24), .iA25 (A25), .iA26 (A26), .iA27 (A27), |
| .iA28 (A28), .iA29 (A29), .iA30 (A30), .iA31 (A31), |
| |
| // Output Signals |
| .oB0 (B0), .oB1 (B1), .oB2 (B2), .oB3 (B3), |
| .oB4 (B4), .oB5 (B5), .oB6 (B6), .oB7 (B7), |
| .oB8 (B8), .oB9 (B9), .oB10 (B10), .oB11 (B11), |
| .oB12 (B12), .oB13 (B13), .oB14 (B14), .oB15 (B15), |
| .oB16_0a (B16_0a), .oB16_0b (B16_0b), .oB16_1a (B16_1a), .oB16_1b (B16_1b), |
| .oB16_2a (B16_2a), .oB16_2b (B16_2b), .oB16_3a (B16_3a), .oB16_3b (B16_3b), |
| .oB16_4a (B16_4a), .oB16_4b (B16_4b), .oB16_5a (B16_5a), .oB16_5b (B16_5b), |
| .oB16_6a (B16_6a), .oB16_6b (B16_6b), .oB16_7a (B16_7a), .oB16_7b (B16_7b), |
| .oB17_0a (B17_0a), .oB17_0b (B17_0b), .oB17_1a (B17_1a), .oB17_1b (B17_1b), |
| .oB17_2a (B17_2a), .oB17_2b (B17_2b), .oB17_3a (B17_3a), .oB17_3b (B17_3b), |
| .oB17_4a (B17_4a), .oB17_4b (B17_4b), .oB17_5a (B17_5a), .oB17_5b (B17_5b), |
| .oB17_6a (B17_6a), .oB17_6b (B17_6b), .oB17_7a (B17_7a), .oB17_7b (B17_7b), |
| .oB18_0a (B18_0a), .oB18_0b (B18_0b), .oB18_1a (B18_1a), .oB18_1b (B18_1b), |
| .oB18_2a (B18_2a), .oB18_2b (B18_2b), .oB18_3a (B18_3a), .oB18_3b (B18_3b), |
| .oB18_4a (B18_4a), .oB18_4b (B18_4b), .oB18_5a (B18_5a), .oB18_5b (B18_5b), |
| .oB18_6a (B18_6a), .oB18_6b (B18_6b), .oB18_7a (B18_7a), .oB18_7b (B18_7b), |
| .oB19_0a (B19_0a), .oB19_0b (B19_0b), .oB19_1a (B19_1a), .oB19_1b (B19_1b), |
| .oB19_2a (B19_2a), .oB19_2b (B19_2b), .oB19_3a (B19_3a), .oB19_3b (B19_3b), |
| .oB19_4a (B19_4a), .oB19_4b (B19_4b), .oB19_5a (B19_5a), .oB19_5b (B19_5b), |
| .oB19_6a (B19_6a), .oB19_6b (B19_6b), .oB19_7a (B19_7a), .oB19_7b (B19_7b), |
| .oB20_0a (B20_0a), .oB20_0b (B20_0b), .oB20_1a (B20_1a), .oB20_1b (B20_1b), |
| .oB20_2a (B20_2a), .oB20_2b (B20_2b), .oB20_3a (B20_3a), .oB20_3b (B20_3b), |
| .oB20_4a (B20_4a), .oB20_4b (B20_4b), .oB20_5a (B20_5a), .oB20_5b (B20_5b), |
| .oB20_6a (B20_6a), .oB20_6b (B20_6b), .oB20_7a (B20_7a), .oB20_7b (B20_7b), |
| .oB21_0a (B21_0a), .oB21_0b (B21_0b), .oB21_1a (B21_1a), .oB21_1b (B21_1b), |
| .oB21_2a (B21_2a), .oB21_2b (B21_2b), .oB21_3a (B21_3a), .oB21_3b (B21_3b), |
| .oB21_4a (B21_4a), .oB21_4b (B21_4b), .oB21_5a (B21_5a), .oB21_5b (B21_5b), |
| .oB21_6a (B21_6a), .oB21_6b (B21_6b), .oB21_7a (B21_7a), .oB21_7b (B21_7b), |
| .oB22_0a (B22_0a), .oB22_0b (B22_0b), .oB22_1a (B22_1a), .oB22_1b (B22_1b), |
| .oB22_2a (B22_2a), .oB22_2b (B22_2b), .oB22_3a (B22_3a), .oB22_3b (B22_3b), |
| .oB22_4a (B22_4a), .oB22_4b (B22_4b), .oB22_5a (B22_5a), .oB22_5b (B22_5b), |
| .oB22_6a (B22_6a), .oB22_6b (B22_6b), .oB22_7a (B22_7a), .oB22_7b (B22_7b), |
| .oB23_0a (B23_0a), .oB23_0b (B23_0b), .oB23_1a (B23_1a), .oB23_1b (B23_1b), |
| .oB23_2a (B23_2a), .oB23_2b (B23_2b), .oB23_3a (B23_3a), .oB23_3b (B23_3b), |
| .oB23_4a (B23_4a), .oB23_4b (B23_4b), .oB23_5a (B23_5a), .oB23_5b (B23_5b), |
| .oB23_6a (B23_6a), .oB23_6b (B23_6b), .oB23_7a (B23_7a), .oB23_7b (B23_7b) |
| ); |
| |
| // Stage3 |
| ACor_DCT_32p_S3 Stage3 ( |
| // Input Signals |
| .iB0 (B0), .iB1 (B1), .iB2 (B2), .iB3 (B3), |
| .iB4 (B4), .iB5 (B5), .iB6 (B6), .iB7 (B7), |
| .iB8 (B8), .iB9 (B9), .iB10 (B10), .iB11 (B11), |
| .iB12 (B12), .iB13 (B13), .iB14 (B14), .iB15 (B15), |
| .iB16_0a (B16_0a), .iB16_0b (B16_0b), .iB16_1a (B16_1a), .iB16_1b (B16_1b), |
| .iB16_2a (B16_2a), .iB16_2b (B16_2b), .iB16_3a (B16_3a), .iB16_3b (B16_3b), |
| .iB16_4a (B16_4a), .iB16_4b (B16_4b), .iB16_5a (B16_5a), .iB16_5b (B16_5b), |
| .iB16_6a (B16_6a), .iB16_6b (B16_6b), .iB16_7a (B16_7a), .iB16_7b (B16_7b), |
| .iB17_0a (B17_0a), .iB17_0b (B17_0b), .iB17_1a (B17_1a), .iB17_1b (B17_1b), |
| .iB17_2a (B17_2a), .iB17_2b (B17_2b), .iB17_3a (B17_3a), .iB17_3b (B17_3b), |
| .iB17_4a (B17_4a), .iB17_4b (B17_4b), .iB17_5a (B17_5a), .iB17_5b (B17_5b), |
| .iB17_6a (B17_6a), .iB17_6b (B17_6b), .iB17_7a (B17_7a), .iB17_7b (B17_7b), |
| .iB18_0a (B18_0a), .iB18_0b (B18_0b), .iB18_1a (B18_1a), .iB18_1b (B18_1b), |
| .iB18_2a (B18_2a), .iB18_2b (B18_2b), .iB18_3a (B18_3a), .iB18_3b (B18_3b), |
| .iB18_4a (B18_4a), .iB18_4b (B18_4b), .iB18_5a (B18_5a), .iB18_5b (B18_5b), |
| .iB18_6a (B18_6a), .iB18_6b (B18_6b), .iB18_7a (B18_7a), .iB18_7b (B18_7b), |
| .iB19_0a (B19_0a), .iB19_0b (B19_0b), .iB19_1a (B19_1a), .iB19_1b (B19_1b), |
| .iB19_2a (B19_2a), .iB19_2b (B19_2b), .iB19_3a (B19_3a), .iB19_3b (B19_3b), |
| .iB19_4a (B19_4a), .iB19_4b (B19_4b), .iB19_5a (B19_5a), .iB19_5b (B19_5b), |
| .iB19_6a (B19_6a), .iB19_6b (B19_6b), .iB19_7a (B19_7a), .iB19_7b (B19_7b), |
| .iB20_0a (B20_0a), .iB20_0b (B20_0b), .iB20_1a (B20_1a), .iB20_1b (B20_1b), |
| .iB20_2a (B20_2a), .iB20_2b (B20_2b), .iB20_3a (B20_3a), .iB20_3b (B20_3b), |
| .iB20_4a (B20_4a), .iB20_4b (B20_4b), .iB20_5a (B20_5a), .iB20_5b (B20_5b), |
| .iB20_6a (B20_6a), .iB20_6b (B20_6b), .iB20_7a (B20_7a), .iB20_7b (B20_7b), |
| .iB21_0a (B21_0a), .iB21_0b (B21_0b), .iB21_1a (B21_1a), .iB21_1b (B21_1b), |
| .iB21_2a (B21_2a), .iB21_2b (B21_2b), .iB21_3a (B21_3a), .iB21_3b (B21_3b), |
| .iB21_4a (B21_4a), .iB21_4b (B21_4b), .iB21_5a (B21_5a), .iB21_5b (B21_5b), |
| .iB21_6a (B21_6a), .iB21_6b (B21_6b), .iB21_7a (B21_7a), .iB21_7b (B21_7b), |
| .iB22_0a (B22_0a), .iB22_0b (B22_0b), .iB22_1a (B22_1a), .iB22_1b (B22_1b), |
| .iB22_2a (B22_2a), .iB22_2b (B22_2b), .iB22_3a (B22_3a), .iB22_3b (B22_3b), |
| .iB22_4a (B22_4a), .iB22_4b (B22_4b), .iB22_5a (B22_5a), .iB22_5b (B22_5b), |
| .iB22_6a (B22_6a), .iB22_6b (B22_6b), .iB22_7a (B22_7a), .iB22_7b (B22_7b), |
| .iB23_0a (B23_0a), .iB23_0b (B23_0b), .iB23_1a (B23_1a), .iB23_1b (B23_1b), |
| .iB23_2a (B23_2a), .iB23_2b (B23_2b), .iB23_3a (B23_3a), .iB23_3b (B23_3b), |
| .iB23_4a (B23_4a), .iB23_4b (B23_4b), .iB23_5a (B23_5a), .iB23_5b (B23_5b), |
| .iB23_6a (B23_6a), .iB23_6b (B23_6b), .iB23_7a (B23_7a), .iB23_7b (B23_7b), |
| |
| // Output Signals |
| .oC0 (C0), .oC1 (C1), .oC2 (C2), .oC3 (C3), |
| .oC4 (C4), .oC5 (C5), .oC6 (C6), .oC7 (C7), |
| .oC8_0a (C8_0a), .oC8_0b (C8_0b), .oC8_1a (C8_1a), .oC8_1b (C8_1b), |
| .oC8_2a (C8_2a), .oC8_2b (C8_2b), .oC8_3a (C8_3a), .oC8_3b (C8_3b), |
| .oC9_0a (C9_0a), .oC9_0b (C9_0b), .oC9_1a (C9_1a), .oC9_1b (C9_1b), |
| .oC9_2a (C9_2a), .oC9_2b (C9_2b), .oC9_3a (C9_3a), .oC9_3b (C9_3b), |
| .oC10_0a (C10_0a), .oC10_0b (C10_0b), .oC10_1a (C10_1a), .oC10_1b (C10_1b), |
| .oC10_2a (C10_2a), .oC10_2b (C10_2b), .oC10_3a (C10_3a), .oC10_3b (C10_3b), |
| .oC11_0a (C11_0a), .oC11_0b (C11_0b), .oC11_1a (C11_1a), .oC11_1b (C11_1b), |
| .oC11_2a (C11_2a), .oC11_2b (C11_2b), .oC11_3a (C11_3a), .oC11_3b (C11_3b), |
| .oC12_0a (C12_0a), .oC12_0b (C12_0b), .oC12_1a (C12_1a), .oC12_1b (C12_1b), |
| .oC12_2a (C12_2a), .oC12_2b (C12_2b), .oC12_3a (C12_3a), .oC12_3b (C12_3b), |
| .oC12_4a (C12_4a), .oC12_4b (C12_4b), .oC12_5a (C12_5a), .oC12_5b (C12_5b), |
| .oC12_6a (C12_6a), .oC12_6b (C12_6b), .oC12_7a (C12_7a), .oC12_7b (C12_7b), |
| .oC13_0a (C13_0a), .oC13_0b (C13_0b), .oC13_1a (C13_1a), .oC13_1b (C13_1b), |
| .oC13_2a (C13_2a), .oC13_2b (C13_2b), .oC13_3a (C13_3a), .oC13_3b (C13_3b), |
| .oC13_4a (C13_4a), .oC13_4b (C13_4b), .oC13_5a (C13_5a), .oC13_5b (C13_5b), |
| .oC13_6a (C13_6a), .oC13_6b (C13_6b), .oC13_7a (C13_7a), .oC13_7b (C13_7b), |
| .oC14_0a (C14_0a), .oC14_0b (C14_0b), .oC14_1a (C14_1a), .oC14_1b (C14_1b), |
| .oC14_2a (C14_2a), .oC14_2b (C14_2b), .oC14_3a (C14_3a), .oC14_3b (C14_3b), |
| .oC14_4a (C14_4a), .oC14_4b (C14_4b), .oC14_5a (C14_5a), .oC14_5b (C14_5b), |
| .oC14_6a (C14_6a), .oC14_6b (C14_6b), .oC14_7a (C14_7a), .oC14_7b (C14_7b), |
| .oC15_0a (C15_0a), .oC15_0b (C15_0b), .oC15_1a (C15_1a), .oC15_1b (C15_1b), |
| .oC15_2a (C15_2a), .oC15_2b (C15_2b), .oC15_3a (C15_3a), .oC15_3b (C15_3b), |
| .oC15_4a (C15_4a), .oC15_4b (C15_4b), .oC15_5a (C15_5a), .oC15_5b (C15_5b), |
| .oC15_6a (C15_6a), .oC15_6b (C15_6b), .oC15_7a (C15_7a), .oC15_7b (C15_7b) |
| ); |
| |
| // Stage4 |
| ACor_DCT_32p_S4 Stage4 ( |
| // Input Signals |
| .iC0 (C0), .iC1 (C1), .iC2 (C2), .iC3 (C3), |
| .iC4 (C4), .iC5 (C5), .iC6 (C6), .iC7 (C7), |
| .iC8_0a (C8_0a), .iC8_0b (C8_0b), .iC8_1a (C8_1a), .iC8_1b (C8_1b), |
| .iC8_2a (C8_2a), .iC8_2b (C8_2b), .iC8_3a (C8_3a), .iC8_3b (C8_3b), |
| .iC9_0a (C9_0a), .iC9_0b (C9_0b), .iC9_1a (C9_1a), .iC9_1b (C9_1b), |
| .iC9_2a (C9_2a), .iC9_2b (C9_2b), .iC9_3a (C9_3a), .iC9_3b (C9_3b), |
| .iC10_0a (C10_0a), .iC10_0b (C10_0b), .iC10_1a (C10_1a), .iC10_1b (C10_1b), |
| .iC10_2a (C10_2a), .iC10_2b (C10_2b), .iC10_3a (C10_3a), .iC10_3b (C10_3b), |
| .iC11_0a (C11_0a), .iC11_0b (C11_0b), .iC11_1a (C11_1a), .iC11_1b (C11_1b), |
| .iC11_2a (C11_2a), .iC11_2b (C11_2b), .iC11_3a (C11_3a), .iC11_3b (C11_3b), |
| .iC12_0a (C12_0a), .iC12_0b (C12_0b), .iC12_1a (C12_1a), .iC12_1b (C12_1b), |
| .iC12_2a (C12_2a), .iC12_2b (C12_2b), .iC12_3a (C12_3a), .iC12_3b (C12_3b), |
| .iC12_4a (C12_4a), .iC12_4b (C12_4b), .iC12_5a (C12_5a), .iC12_5b (C12_5b), |
| .iC12_6a (C12_6a), .iC12_6b (C12_6b), .iC12_7a (C12_7a), .iC12_7b (C12_7b), |
| .iC13_0a (C13_0a), .iC13_0b (C13_0b), .iC13_1a (C13_1a), .iC13_1b (C13_1b), |
| .iC13_2a (C13_2a), .iC13_2b (C13_2b), .iC13_3a (C13_3a), .iC13_3b (C13_3b), |
| .iC13_4a (C13_4a), .iC13_4b (C13_4b), .iC13_5a (C13_5a), .iC13_5b (C13_5b), |
| .iC13_6a (C13_6a), .iC13_6b (C13_6b), .iC13_7a (C13_7a), .iC13_7b (C13_7b), |
| .iC14_0a (C14_0a), .iC14_0b (C14_0b), .iC14_1a (C14_1a), .iC14_1b (C14_1b), |
| .iC14_2a (C14_2a), .iC14_2b (C14_2b), .iC14_3a (C14_3a), .iC14_3b (C14_3b), |
| .iC14_4a (C14_4a), .iC14_4b (C14_4b), .iC14_5a (C14_5a), .iC14_5b (C14_5b), |
| .iC14_6a (C14_6a), .iC14_6b (C14_6b), .iC14_7a (C14_7a), .iC14_7b (C14_7b), |
| .iC15_0a (C15_0a), .iC15_0b (C15_0b), .iC15_1a (C15_1a), .iC15_1b (C15_1b), |
| .iC15_2a (C15_2a), .iC15_2b (C15_2b), .iC15_3a (C15_3a), .iC15_3b (C15_3b), |
| .iC15_4a (C15_4a), .iC15_4b (C15_4b), .iC15_5a (C15_5a), .iC15_5b (C15_5b), |
| .iC15_6a (C15_6a), .iC15_6b (C15_6b), .iC15_7a (C15_7a), .iC15_7b (C15_7b), |
| |
| // Output Signals |
| .oD0 (D0), .oD1 (D1), .oD2 (D2), .oD3 (D3), |
| .oD4_0a (D4_0a), .oD4_0b (D4_0b), .oD4_1a (D4_1a), .oD4_1b (D4_1b), |
| .oD5_0a (D5_0a), .oD5_0b (D5_0b), .oD5_1a (D5_1a), .oD5_1b (D5_1b), |
| .oD6_0a (D6_0a), .oD6_0b (D6_0b), .oD6_1a (D6_1a), .oD6_1b (D6_1b), |
| .oD6_2a (D6_2a), .oD6_2b (D6_2b), .oD6_3a (D6_3a), .oD6_3b (D6_3b), |
| .oD7_0a (D7_0a), .oD7_0b (D7_0b), .oD7_1a (D7_1a), .oD7_1b (D7_1b), |
| .oD7_2a (D7_2a), .oD7_2b (D7_2b), .oD7_3a (D7_3a), .oD7_3b (D7_3b), |
| .oD8_0a (D8_0a), .oD8_0b (D8_0b), .oD8_1a (D8_1a), .oD8_1b (D8_1b), |
| .oD8_2a (D8_2a), .oD8_2b (D8_2b), .oD8_3a (D8_3a), .oD8_3b (D8_3b), |
| .oD8_4a (D8_4a), .oD8_4b (D8_4b), .oD8_5a (D8_5a), .oD8_5b (D8_5b), |
| .oD8_6a (D8_6a), .oD8_6b (D8_6b), .oD8_7a (D8_7a), .oD8_7b (D8_7b), |
| .oD9_0a (D9_0a), .oD9_0b (D9_0b), .oD9_1a (D9_1a), .oD9_1b (D9_1b), |
| .oD9_2a (D9_2a), .oD9_2b (D9_2b), .oD9_3a (D9_3a), .oD9_3b (D9_3b), |
| .oD9_4a (D9_4a), .oD9_4b (D9_4b), .oD9_5a (D9_5a), .oD9_5b (D9_5b), |
| .oD9_6a (D9_6a), .oD9_6b (D9_6b), .oD9_7a (D9_7a), .oD9_7b (D9_7b) |
| ); |
| |
| // Stage5 |
| ACor_DCT_32p_S5 Stage5 ( |
| // Input Signals |
| .iD0 (D0), .iD1 (D1), .iD2 (D2), .iD3 (D3), |
| .iD4_0a (D4_0a), .iD4_0b (D4_0b), .iD4_1a (D4_1a), .iD4_1b (D4_1b), |
| .iD5_0a (D5_0a), .iD5_0b (D5_0b), .iD5_1a (D5_1a), .iD5_1b (D5_1b), |
| .iD6_0a (D6_0a), .iD6_0b (D6_0b), .iD6_1a (D6_1a), .iD6_1b (D6_1b), |
| .iD6_2a (D6_2a), .iD6_2b (D6_2b), .iD6_3a (D6_3a), .iD6_3b (D6_3b), |
| .iD7_0a (D7_0a), .iD7_0b (D7_0b), .iD7_1a (D7_1a), .iD7_1b (D7_1b), |
| .iD7_2a (D7_2a), .iD7_2b (D7_2b), .iD7_3a (D7_3a), .iD7_3b (D7_3b), |
| .iD8_0a (D8_0a), .iD8_0b (D8_0b), .iD8_1a (D8_1a), .iD8_1b (D8_1b), |
| .iD8_2a (D8_2a), .iD8_2b (D8_2b), .iD8_3a (D8_3a), .iD8_3b (D8_3b), |
| .iD8_4a (D8_4a), .iD8_4b (D8_4b), .iD8_5a (D8_5a), .iD8_5b (D8_5b), |
| .iD8_6a (D8_6a), .iD8_6b (D8_6b), .iD8_7a (D8_7a), .iD8_7b (D8_7b), |
| .iD9_0a (D9_0a), .iD9_0b (D9_0b), .iD9_1a (D9_1a), .iD9_1b (D9_1b), |
| .iD9_2a (D9_2a), .iD9_2b (D9_2b), .iD9_3a (D9_3a), .iD9_3b (D9_3b), |
| .iD9_4a (D9_4a), .iD9_4b (D9_4b), .iD9_5a (D9_5a), .iD9_5b (D9_5b), |
| .iD9_6a (D9_6a), .iD9_6b (D9_6b), .iD9_7a (D9_7a), .iD9_7b (D9_7b), |
| |
| // Output Signals |
| .oE0 (E0), .oE1 (E1), .oE2 (E2), .oE3 (E3), |
| .oE4 (E4), .oE5 (E5), .oE6 (E6), .oE7 (E7), |
| .oE8 (E8), .oE9 (E9), .oE10 (E10), .oE11 (E11), |
| .oE12 (E12), .oE13 (E13), .oE14 (E14), .oE15 (E15), |
| .oE16 (E16), .oE17 (E17), .oE18 (E18), .oE19 (E19), |
| .oE20 (E20), .oE21 (E21), .oE22 (E22), .oE23 (E23), |
| .oE24 (E24), .oE25 (E25), .oE26 (E26), .oE27 (E27), |
| .oE28 (E28), .oE29 (E29), .oE30 (E30), .oE31 (E31) |
| ); |
| |
| /***************************************************************************** |
| * Combinational Logic * |
| *****************************************************************************/ |
| |
| // 13.0 [12:0] |
| assign oY0 = E0; // *sqrt(2)/8 |
| assign oY16 = E1; // *sqrt(2)/8 |
| |
| // 14.5 [18:0] |
| assign oY8 = E2; // *1/4 |
| assign oY24 = E3; // *1/4 |
| |
| // 14.6 [19:0] |
| assign oY4 = E4; // *1/4 |
| assign oY20 = E6; // *1/4 |
| assign oY12 = E7; // *-1/4 |
| assign oY28 = E5; // *1/4 |
| |
| // 14.8 [21:0] |
| assign oY2 = E8; // *1/4 |
| assign oY18 = E10; // *1/4 |
| assign oY10 = E12; // *1/4 |
| assign oY26 = E14; // *1/4 |
| assign oY6 = E15; // *1/4 |
| assign oY22 = E13; // *1/4 |
| assign oY14 = E11; // *1/4 |
| assign oY30 = E9; // *1/4 |
| |
| // 14.10 [23:0] |
| assign oY1 = E16; // *1/4 |
| assign oY17 = E18; // *1/4 |
| assign oY9 = E20; // *1/4 |
| assign oY25 = E22; // *1/4 |
| assign oY5 = E24; // *1/4 |
| assign oY21 = E26; // *1/4 |
| assign oY13 = E28; // *1/4 |
| assign oY29 = E30; // *1/4 |
| assign oY3 = E31; // *1/4 |
| assign oY19 = E29; // *1/4 |
| assign oY11 = E27; // *1/4 |
| assign oY27 = E25; // *1/4 |
| assign oY7 = E23; // *1/4 |
| assign oY23 = E21; // *1/4 |
| assign oY15 = E19; // *1/4 |
| assign oY31 = E17; // *1/4 |
| |
| endmodule |
| |
| module ACor_DCT_32p_S1 ( |
| // Input Signals |
| input [7:0] iX0, iX1, iX2, iX3, iX4, iX5, iX6, iX7, |
| /* 8.0 */ iX8, iX9, iX10, iX11, iX12, iX13, iX14, iX15, |
| iX16, iX17, iX18, iX19, iX20, iX21, iX22, iX23, |
| iX24, iX25, iX26, iX27, iX28, iX29, iX30, iX31, |
| |
| // Output Signals |
| output [8:0] oA0, oA1, oA2, oA3, oA4, oA5, oA6, oA7, |
| /* 9.0 */ oA8, oA9, oA10, oA11, oA12, oA13, oA14, oA15, |
| oA16, oA17, oA18, oA19, oA20, oA21, oA22, oA23, |
| oA24, oA25, oA26, oA27, oA28, oA29, oA30, oA31 |
| ); |
| |
| // assign oA0 = { iX0[7], iX0} + {iX31[7],iX31}; |
| wire A0_c0; |
| FA_Cir_Cin0 A0m0 (.iA (iX0[0]), .iB (iX31[0]), .oS (oA0[0]), .oC (A0_c0)); |
| Ripple_Add_8bit A0m1 ( |
| .iA (iX0[7:1]), .iB (iX31[7:1]), |
| .iC (A0_c0), .oS (oA0[8:1])); |
| |
| // assign oA1 = { iX1[7], iX1} + {iX30[7],iX30}; |
| wire A1_c0; |
| FA_Cir_Cin0 A1m0 (.iA (iX1[0]), .iB (iX30[0]), .oS (oA1[0]), .oC (A1_c0)); |
| Ripple_Add_8bit A1m1 ( |
| .iA (iX1[7:1]), .iB (iX30[7:1]), |
| .iC (A1_c0), .oS (oA1[8:1])); |
| |
| // assign oA2 = { iX2[7], iX2} + {iX29[7],iX29}; |
| wire A2_c0; |
| FA_Cir_Cin0 A2m0 (.iA (iX2[0]), .iB (iX29[0]), .oS (oA2[0]), .oC (A2_c0)); |
| Ripple_Add_8bit A2m1 ( |
| .iA (iX2[7:1]), .iB (iX29[7:1]), |
| .iC (A2_c0), .oS (oA2[8:1])); |
| |
| // assign oA3 = { iX3[7], iX3} + {iX28[7],iX28}; |
| wire A3_c0; |
| FA_Cir_Cin0 A3m0 (.iA (iX3[0]), .iB (iX28[0]), .oS (oA3[0]), .oC (A3_c0)); |
| Ripple_Add_8bit A3m1 ( |
| .iA (iX3[7:1]), .iB (iX28[7:1]), |
| .iC (A3_c0), .oS (oA3[8:1])); |
| |
| // assign oA4 = { iX4[7], iX4} + {iX27[7],iX27}; |
| wire A4_c0; |
| FA_Cir_Cin0 A4m0 (.iA (iX4[0]), .iB (iX27[0]), .oS (oA4[0]), .oC (A4_c0)); |
| Ripple_Add_8bit A4m1 ( |
| .iA (iX4[7:1]), .iB (iX27[7:1]), |
| .iC (A4_c0), .oS (oA4[8:1])); |
| |
| // assign oA5 = { iX5[7], iX5} + {iX26[7],iX26}; |
| wire A5_c0; |
| FA_Cir_Cin0 A5m0 (.iA (iX5[0]), .iB (iX26[0]), .oS (oA5[0]), .oC (A5_c0)); |
| Ripple_Add_8bit A5m1 ( |
| .iA (iX5[7:1]), .iB (iX26[7:1]), |
| .iC (A5_c0), .oS (oA5[8:1])); |
| |
| // assign oA6 = { iX6[7], iX6} + {iX25[7],iX25}; |
| wire A6_c0; |
| FA_Cir_Cin0 A6m0 (.iA (iX6[0]), .iB (iX25[0]), .oS (oA6[0]), .oC (A6_c0)); |
| Ripple_Add_8bit A6m1 ( |
| .iA (iX6[7:1]), .iB (iX25[7:1]), |
| .iC (A6_c0), .oS (oA6[8:1])); |
| |
| // assign oA7 = { iX7[7], iX7} + {iX24[7],iX24}; |
| wire A7_c0; |
| FA_Cir_Cin0 A7m0 (.iA (iX7[0]), .iB (iX24[0]), .oS (oA7[0]), .oC (A7_c0)); |
| Ripple_Add_8bit A7m1 ( |
| .iA (iX7[7:1]), .iB (iX24[7:1]), |
| .iC (A7_c0), .oS (oA7[8:1])); |
| |
| // assign oA8 = { iX8[7], iX8} + {iX23[7],iX23}; |
| wire A8_c0; |
| FA_Cir_Cin0 A8m0 (.iA (iX8[0]), .iB (iX23[0]), .oS (oA8[0]), .oC (A8_c0)); |
| Ripple_Add_8bit A8m1 ( |
| .iA (iX8[7:1]), .iB (iX23[7:1]), |
| .iC (A8_c0), .oS (oA8[8:1])); |
| |
| // assign oA9 = { iX9[7], iX9} + {iX22[7],iX22}; |
| wire A9_c0; |
| FA_Cir_Cin0 A9m0 (.iA (iX9[0]), .iB (iX22[0]), .oS (oA9[0]), .oC (A9_c0)); |
| Ripple_Add_8bit A9m1 ( |
| .iA (iX9[7:1]), .iB (iX22[7:1]), |
| .iC (A9_c0), .oS (oA9[8:1])); |
| |
| // assign oA10 = {iX10[7],iX10} + {iX21[7],iX21}; |
| wire A10_c0; |
| FA_Cir_Cin0 A10m0 (.iA (iX10[0]), .iB (iX21[0]), .oS (oA10[0]), .oC (A10_c0)); |
| Ripple_Add_8bit A10m1 ( |
| .iA (iX10[7:1]),.iB (iX21[7:1]), |
| .iC (A10_c0), .oS (oA10[8:1])); |
| |
| // assign oA11 = {iX11[7],iX11} + {iX20[7],iX20}; |
| wire A11_c0; |
| FA_Cir_Cin0 A11m0 (.iA (iX11[0]), .iB (iX20[0]), .oS (oA11[0]), .oC (A11_c0)); |
| Ripple_Add_8bit A11m1 ( |
| .iA (iX11[7:1]),.iB (iX20[7:1]), |
| .iC (A11_c0), .oS (oA11[8:1])); |
| |
| // assign oA12 = {iX12[7],iX12} + {iX19[7],iX19}; |
| wire A12_c0; |
| FA_Cir_Cin0 A12m0 (.iA (iX12[0]), .iB (iX19[0]), .oS (oA12[0]), .oC (A12_c0)); |
| Ripple_Add_8bit A12m1 ( |
| .iA (iX12[7:1]),.iB (iX19[7:1]), |
| .iC (A12_c0), .oS (oA12[8:1])); |
| |
| // assign oA13 = {iX13[7],iX13} + {iX18[7],iX18}; |
| wire A13_c0; |
| FA_Cir_Cin0 A13m0 (.iA (iX13[0]), .iB (iX18[0]), .oS (oA13[0]), .oC (A13_c0)); |
| Ripple_Add_8bit A13m1 ( |
| .iA (iX13[7:1]),.iB (iX18[7:1]), |
| .iC (A13_c0), .oS (oA13[8:1])); |
| |
| // assign oA14 = {iX14[7],iX14} + {iX17[7],iX17}; |
| wire A14_c0; |
| FA_Cir_Cin0 A14m0 (.iA (iX14[0]), .iB (iX17[0]), .oS (oA14[0]), .oC (A14_c0)); |
| Ripple_Add_8bit A14m1 ( |
| .iA (iX14[7:1]),.iB (iX17[7:1]), |
| .iC (A14_c0), .oS (oA14[8:1])); |
| |
| // assign oA15 = {iX15[7],iX15} + {iX16[7],iX16}; |
| wire A15_c0; |
| FA_Cir_Cin0 A15m0 (.iA (iX15[0]), .iB (iX16[0]), .oS (oA15[0]), .oC (A15_c0)); |
| Ripple_Add_8bit A15m1 ( |
| .iA (iX15[7:1]),.iB (iX16[7:1]), |
| .iC (A15_c0), .oS (oA15[8:1])); |
| |
| // assign oA16 = {iX15[7],iX15} - {iX16[7],iX16}; |
| wire A16_c0; |
| FA_Cir_Cin1 A16m0 (.iA (iX15[0]), .iB (~iX16[0]), .oS (oA16[0]), .oC (A16_c0)); |
| Ripple_Add_8bit A16m1 ( |
| .iA (iX15[7:1]),.iB (~iX16[7:1]), |
| .iC (A16_c0), .oS (oA16[8:1])); |
| |
| // assign oA17 = {iX14[7],iX14} - {iX17[7],iX17}; |
| wire A17_c0; |
| FA_Cir_Cin1 A17m0 (.iA (iX14[0]), .iB (~iX17[0]), .oS (oA17[0]), .oC (A17_c0)); |
| Ripple_Add_8bit A17m1 ( |
| .iA (iX14[7:1]),.iB (~iX17[7:1]), |
| .iC (A17_c0), .oS (oA17[8:1])); |
| |
| // assign oA18 = {iX13[7],iX13} - {iX18[7],iX18}; |
| wire A18_c0; |
| FA_Cir_Cin1 A18m0 (.iA (iX13[0]), .iB (~iX18[0]), .oS (oA18[0]), .oC (A18_c0)); |
| Ripple_Add_8bit A18m1 ( |
| .iA (iX13[7:1]),.iB (~iX18[7:1]), |
| .iC (A18_c0), .oS (oA18[8:1])); |
| |
| // assign oA19 = {iX12[7],iX12} - {iX19[7],iX19}; |
| wire A19_c0; |
| FA_Cir_Cin1 A19m0 (.iA (iX12[0]), .iB (~iX19[0]), .oS (oA19[0]), .oC (A19_c0)); |
| Ripple_Add_8bit A19m1 ( |
| .iA (iX12[7:1]),.iB (~iX19[7:1]), |
| .iC (A19_c0), .oS (oA19[8:1])); |
| |
| // assign oA20 = {iX11[7],iX11} - {iX20[7],iX20}; |
| wire A20_c0; |
| FA_Cir_Cin1 A20m0 (.iA (iX11[0]), .iB (~iX20[0]), .oS (oA20[0]), .oC (A20_c0)); |
| Ripple_Add_8bit A20m1 ( |
| .iA (iX11[7:1]),.iB (~iX20[7:1]), |
| .iC (A20_c0), .oS (oA20[8:1])); |
| |
| // assign oA21 = {iX10[7],iX10} - {iX21[7],iX21}; |
| wire A21_c0; |
| FA_Cir_Cin1 A21m0 (.iA (iX10[0]), .iB (~iX21[0]), .oS (oA21[0]), .oC (A21_c0)); |
| Ripple_Add_8bit A21m1 ( |
| .iA (iX10[7:1]),.iB (~iX21[7:1]), |
| .iC (A21_c0), .oS (oA21[8:1])); |
| |
| // assign oA22 = { iX9[7], iX9} - {iX22[7],iX22}; |
| wire A22_c0; |
| FA_Cir_Cin1 A22m0 (.iA (iX9[0]), .iB (~iX22[0]), .oS (oA22[0]), .oC (A22_c0)); |
| Ripple_Add_8bit A22m1 ( |
| .iA (iX9[7:1]), .iB (~iX22[7:1]), |
| .iC (A22_c0), .oS (oA22[8:1])); |
| |
| // assign oA23 = { iX8[7], iX8} - {iX23[7],iX23}; |
| wire A23_c0; |
| FA_Cir_Cin1 A23m0 (.iA (iX8[0]), .iB (~iX23[0]), .oS (oA23[0]), .oC (A23_c0)); |
| Ripple_Add_8bit A23m1 ( |
| .iA (iX8[7:1]), .iB (~iX23[7:1]), |
| .iC (A23_c0), .oS (oA23[8:1])); |
| |
| // assign oA24 = { iX7[7], iX7} - {iX24[7],iX24}; |
| wire A24_c0; |
| FA_Cir_Cin1 A24m0 (.iA (iX7[0]), .iB (~iX24[0]), .oS (oA24[0]), .oC (A24_c0)); |
| Ripple_Add_8bit A24m1 ( |
| .iA (iX7[7:1]), .iB (~iX24[7:1]), |
| .iC (A24_c0), .oS (oA24[8:1])); |
| |
| // assign oA25 = { iX6[7], iX6} - {iX25[7],iX25}; |
| wire A25_c0; |
| FA_Cir_Cin1 A25m0 (.iA (iX6[0]), .iB (~iX25[0]), .oS (oA25[0]), .oC (A25_c0)); |
| Ripple_Add_8bit A25m1 ( |
| .iA (iX6[7:1]), .iB (~iX25[7:1]), |
| .iC (A25_c0), .oS (oA25[8:1])); |
| |
| // assign oA26 = { iX5[7], iX5} - {iX26[7],iX26}; |
| wire A26_c0; |
| FA_Cir_Cin1 A26m0 (.iA (iX5[0]), .iB (~iX26[0]), .oS (oA26[0]), .oC (A26_c0)); |
| Ripple_Add_8bit A26m1 ( |
| .iA (iX5[7:1]), .iB (~iX26[7:1]), |
| .iC (A26_c0), .oS (oA26[8:1])); |
| |
| // assign oA27 = { iX4[7], iX4} - {iX27[7],iX27}; |
| wire A27_c0; |
| FA_Cir_Cin1 A27m0 (.iA (iX4[0]), .iB (~iX27[0]), .oS (oA27[0]), .oC (A27_c0)); |
| Ripple_Add_8bit A27m1 ( |
| .iA (iX4[7:1]), .iB (~iX27[7:1]), |
| .iC (A27_c0), .oS (oA27[8:1])); |
| |
| // assign oA28 = { iX3[7], iX3} - {iX28[7],iX28}; |
| wire A28_c0; |
| FA_Cir_Cin1 A28m0 (.iA (iX3[0]), .iB (~iX28[0]), .oS (oA28[0]), .oC (A28_c0)); |
| Ripple_Add_8bit A28m1 ( |
| .iA (iX3[7:1]), .iB (~iX28[7:1]), |
| .iC (A28_c0), .oS (oA28[8:1])); |
| |
| // assign oA29 = { iX2[7], iX2} - {iX29[7],iX29}; |
| wire A29_c0; |
| FA_Cir_Cin1 A29m0 (.iA (iX2[0]), .iB (~iX29[0]), .oS (oA29[0]), .oC (A29_c0)); |
| Ripple_Add_8bit A29m1 ( |
| .iA (iX2[7:1]), .iB (~iX29[7:1]), |
| .iC (A29_c0), .oS (oA29[8:1])); |
| |
| // assign oA30 = { iX1[7], iX1} - {iX30[7],iX30}; |
| wire A30_c0; |
| FA_Cir_Cin1 A30m0 (.iA (iX1[0]), .iB (~iX30[0]), .oS (oA30[0]), .oC (A30_c0)); |
| Ripple_Add_8bit A30m1 ( |
| .iA (iX1[7:1]), .iB (~iX30[7:1]), |
| .iC (A30_c0), .oS (oA30[8:1])); |
| |
| // assign oA31 = { iX0[7], iX0} - {iX31[7],iX31}; |
| wire A31_c0; |
| FA_Cir_Cin1 A31m0 (.iA (iX0[0]), .iB (~iX31[0]), .oS (oA31[0]), .oC (A31_c0)); |
| Ripple_Add_8bit A31m1 ( |
| .iA (iX0[7:1]), .iB (~iX31[7:1]), |
| .iC (A31_c0), .oS (oA31[8:1])); |
| |
| endmodule |
| |
| module ACor_DCT_32p_S2 ( |
| // Input Signals |
| input [8:0] iA0, iA1, iA2, iA3, iA4, iA5, iA6, iA7, |
| /* 9.0 */ iA8, iA9, iA10, iA11, iA12, iA13, iA14, iA15, |
| iA16, iA17, iA18, iA19, iA20, iA21, iA22, iA23, |
| iA24, iA25, iA26, iA27, iA28, iA29, iA30, iA31, |
| |
| // Output Signals |
| output [9:0] oB0, oB1, oB2, oB3, oB4, oB5, oB6, oB7, |
| /*10.0 */ oB8, oB9, oB10, oB11, oB12, oB13, oB14, oB15, |
| |
| output [20:0] oB16_0a, oB16_0b, oB17_4a, oB17_4b, oB18_6a, oB18_6b, oB19_3a, oB19_3b, |
| /*11.10*/ oB20_3a, oB20_3b, oB21_6a, oB21_6b, oB22_4a, oB22_4b, oB23_0a, oB23_0b, |
| |
| output [19:0] oB16_7a, oB16_7b, oB17_1a, oB17_1b, oB18_3a, oB18_3b, oB19_5a, oB19_5b, |
| /*11.9 */ oB20_5a, oB20_5b, oB21_3a, oB21_3b, oB22_1a, oB22_1b, oB23_7a, oB23_7b, |
| |
| output [20:0] oB16_4a, oB16_4b, oB17_3a, oB17_3b, oB18_0a, oB18_0b, oB19_7a, oB19_7b, |
| /*11.10*/ oB20_7a, oB20_7b, oB21_0a, oB21_0b, oB22_3a, oB22_3b, oB23_4a, oB23_4b, |
| |
| output [15:0] oB16_3a, oB16_3b, oB17_7a, oB17_7b, oB18_4a, oB18_4b, oB19_1a, oB19_1b, |
| /*11.5 */ oB20_1a, oB20_1b, oB21_4a, oB21_4b, oB22_7a, oB22_7b, oB23_3a, oB23_3b, |
| |
| output [17:0] oB16_2a, oB16_2b, oB17_6a, oB17_6b, oB18_5a, oB18_5b, oB19_0a, oB19_0b, |
| /*11.7 */ oB20_0a, oB20_0b, oB21_5a, oB21_5b, oB22_6a, oB22_6b, oB23_2a, oB23_2b, |
| |
| output [15:0] oB16_5a, oB16_5b, oB17_2a, oB17_2b, oB18_1a, oB18_1b, oB19_6a, oB19_6b, |
| /*11.5 */ oB20_6a, oB20_6b, oB21_1a, oB21_1b, oB22_2a, oB22_2b, oB23_5a, oB23_5b, |
| |
| output [13:0] oB16_6a, oB16_6b, oB17_0a, oB17_0b, oB18_2a, oB18_2b, oB19_4a, oB19_4b, |
| /*11.3 */ oB20_4a, oB20_4b, oB21_2a, oB21_2b, oB22_0a, oB22_0b, oB23_6a, oB23_6b, |
| |
| output [14:0] oB16_1a, oB16_1b, oB17_5a, oB17_5b, oB18_7a, oB18_7b, oB19_2a, oB19_2b, |
| /*11.4 */ oB20_2a, oB20_2b, oB21_7a, oB21_7b, oB22_5a, oB22_5b, oB23_1a, oB23_1b |
| ); |
| |
| // assign oB0 = {iA0[8],iA0} + {iA15[8],iA15}; |
| wire B0_c0; |
| FA_Cir_Cin0 B0m0 (.iA (iA0[0]), .iB (iA15[0]), .oS (oB0[0]), .oC (B0_c0)); |
| Ripple_Add_9bit B0m1 ( |
| .iA (iA0[8:1]), .iB (iA15[8:1]), |
| .iC (B0_c0), .oS (oB0[9:1])); |
| |
| // assign oB1 = {iA1[8],iA1} + {iA14[8],iA14}; |
| wire B1_c0; |
| FA_Cir_Cin0 B1m0 (.iA (iA1[0]), .iB (iA14[0]), .oS (oB1[0]), .oC (B1_c0)); |
| Ripple_Add_9bit B1m1 ( |
| .iA (iA1[8:1]), .iB (iA14[8:1]), |
| .iC (B1_c0), .oS (oB1[9:1])); |
| |
| // assign oB2 = {iA2[8],iA2} + {iA13[8],iA13}; |
| wire B2_c0; |
| FA_Cir_Cin0 B2m0 (.iA (iA2[0]), .iB (iA13[0]), .oS (oB2[0]), .oC (B2_c0)); |
| Ripple_Add_9bit B2m1 ( |
| .iA (iA2[8:1]), .iB (iA13[8:1]), |
| .iC (B2_c0), .oS (oB2[9:1])); |
| |
| // assign oB3 = {iA3[8],iA3} + {iA12[8],iA12}; |
| wire B3_c0; |
| FA_Cir_Cin0 B3m0 (.iA (iA3[0]), .iB (iA12[0]), .oS (oB3[0]), .oC (B3_c0)); |
| Ripple_Add_9bit B3m1 ( |
| .iA (iA3[8:1]), .iB (iA12[8:1]), |
| .iC (B3_c0), .oS (oB3[9:1])); |
| |
| // assign oB4 = {iA4[8],iA4} + {iA11[8],iA11}; |
| wire B4_c0; |
| FA_Cir_Cin0 B4m0 (.iA (iA4[0]), .iB (iA11[0]), .oS (oB4[0]), .oC (B4_c0)); |
| Ripple_Add_9bit B4m1 ( |
| .iA (iA4[8:1]), .iB (iA11[8:1]), |
| .iC (B4_c0), .oS (oB4[9:1])); |
| |
| // assign oB5 = {iA5[8],iA5} + {iA10[8],iA10}; |
| wire B5_c0; |
| FA_Cir_Cin0 B5m0 (.iA (iA5[0]), .iB (iA10[0]), .oS (oB5[0]), .oC (B5_c0)); |
| Ripple_Add_9bit B5m1 ( |
| .iA (iA5[8:1]), .iB (iA10[8:1]), |
| .iC (B5_c0), .oS (oB5[9:1])); |
| |
| // assign oB6 = {iA6[8],iA6} + { iA9[8], iA9}; |
| wire B6_c0; |
| FA_Cir_Cin0 B6m0 (.iA (iA6[0]), .iB (iA9[0]), .oS (oB6[0]), .oC (B6_c0)); |
| Ripple_Add_9bit B6m1 ( |
| .iA (iA6[8:1]), .iB (iA9[8:1]), |
| .iC (B6_c0), .oS (oB6[9:1])); |
| |
| // assign oB7 = {iA7[8],iA7} + { iA8[8], iA8}; |
| wire B7_c0; |
| FA_Cir_Cin0 B7m0 (.iA (iA7[0]), .iB (iA8[0]), .oS (oB7[0]), .oC (B7_c0)); |
| Ripple_Add_9bit B7m1 ( |
| .iA (iA7[8:1]), .iB (iA8[8:1]), |
| .iC (B7_c0), .oS (oB7[9:1])); |
| |
| // assign oB8 = {iA7[8],iA7} - { iA8[8], iA8}; |
| wire B8_c0; |
| FA_Cir_Cin1 B8m0 (.iA (iA7[0]), .iB (~iA8[0]), .oS (oB8[0]), .oC (B8_c0)); |
| Ripple_Add_9bit B8m1 ( |
| .iA (iA7[8:1]), .iB (~iA8[8:1]), |
| .iC (B8_c0), .oS (oB8[9:1])); |
| |
| // assign oB9 = {iA6[8],iA6} - { iA9[8], iA9}; |
| wire B9_c0; |
| FA_Cir_Cin1 B9m0 (.iA (iA6[0]), .iB (~iA9[0]), .oS (oB9[0]), .oC (B9_c0)); |
| Ripple_Add_9bit B9m1 ( |
| .iA (iA6[8:1]), .iB (~iA9[8:1]), |
| .iC (B9_c0), .oS (oB9[9:1])); |
| |
| // assign oB10 = {iA5[8],iA5} - {iA10[8],iA10}; |
| wire B10_c0; |
| FA_Cir_Cin1 B10m0 (.iA (iA5[0]), .iB (~iA10[0]), .oS (oB10[0]), .oC (B10_c0)); |
| Ripple_Add_9bit B10m1 ( |
| .iA (iA5[8:1]), .iB (~iA10[8:1]), |
| .iC (B10_c0), .oS (oB10[9:1])); |
| |
| // assign oB11 = {iA4[8],iA4} - {iA11[8],iA11}; |
| wire B11_c0; |
| FA_Cir_Cin1 B11m0 (.iA (iA4[0]), .iB (~iA11[0]), .oS (oB11[0]), .oC (B11_c0)); |
| Ripple_Add_9bit B11m1 ( |
| .iA (iA4[8:1]), .iB (~iA11[8:1]), |
| .iC (B11_c0), .oS (oB11[9:1])); |
| |
| // assign oB12 = {iA3[8],iA3} - {iA12[8],iA12}; |
| wire B12_c0; |
| FA_Cir_Cin1 B12m0 (.iA (iA3[0]), .iB (~iA12[0]), .oS (oB12[0]), .oC (B12_c0)); |
| Ripple_Add_9bit B12m1 ( |
| .iA (iA3[8:1]), .iB (~iA12[8:1]), |
| .iC (B12_c0), .oS (oB12[9:1])); |
| |
| // assign oB13 = {iA2[8],iA2} - {iA13[8],iA13}; |
| wire B13_c0; |
| FA_Cir_Cin1 B13m0 (.iA (iA2[0]), .iB (~iA13[0]), .oS (oB13[0]), .oC (B13_c0)); |
| Ripple_Add_9bit B13m1 ( |
| .iA (iA2[8:1]), .iB (~iA13[8:1]), |
| .iC (B13_c0), .oS (oB13[9:1])); |
| |
| // assign oB14 = {iA1[8],iA1} - {iA14[8],iA14}; |
| wire B14_c0; |
| FA_Cir_Cin1 B14m0 (.iA (iA1[0]), .iB (~iA14[0]), .oS (oB14[0]), .oC (B14_c0)); |
| Ripple_Add_9bit B14m1 ( |
| .iA (iA1[8:1]), .iB (~iA14[8:1]), |
| .iC (B14_c0), .oS (oB14[9:1])); |
| |
| // assign oB15 = {iA0[8],iA0} - {iA15[8],iA15}; |
| wire B15_c0; |
| FA_Cir_Cin1 B15m0 (.iA (iA0[0]), .iB (~iA15[0]), .oS (oB15[0]), .oC (B15_c0)); |
| Ripple_Add_9bit B15m1 ( |
| .iA (iA0[8:1]), .iB (~iA15[8:1]), |
| .iC (B15_c0), .oS (oB15[9:1])); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B16m0 ( |
| // Input Signals |
| .iA (iA16), .iB (iA31), |
| |
| // Output Signals |
| .o0a (oB16_0a), .o0b(oB16_0b), .o1a (oB16_7a), .o1b (oB16_7b), |
| .o2a (oB16_4a), .o2b(oB16_4b), .o3a (oB16_3a), .o3b (oB16_3b), |
| .o4a (oB16_2a), .o4b(oB16_2b), .o5a (oB16_5a), .o5b (oB16_5b), |
| .o6a (oB16_6a), .o6b(oB16_6b), .o7a (oB16_1a), .o7b (oB16_1b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B17m0 ( |
| // Input Signals |
| .iA (iA30), .iB (iA17), |
| |
| // Output Signals |
| .o0a (oB17_4a), .o0b(oB17_4b), .o1a (oB17_1a), .o1b (oB17_1b), |
| .o2a (oB17_3a), .o2b(oB17_3b), .o3a (oB17_7a), .o3b (oB17_7b), |
| .o4a (oB17_6a), .o4b(oB17_6b), .o5a (oB17_2a), .o5b (oB17_2b), |
| .o6a (oB17_0a), .o6b(oB17_0b), .o7a (oB17_5a), .o7b (oB17_5b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B18m0 ( |
| // Input Signals |
| .iA (iA18), .iB (iA29), |
| |
| // Output Signals |
| .o0a (oB18_6a), .o0b(oB18_6b), .o1a (oB18_3a), .o1b (oB18_3b), |
| .o2a (oB18_0a), .o2b(oB18_0b), .o3a (oB18_4a), .o3b (oB18_4b), |
| .o4a (oB18_5a), .o4b(oB18_5b), .o5a (oB18_1a), .o5b (oB18_1b), |
| .o6a (oB18_2a), .o6b(oB18_2b), .o7a (oB18_7a), .o7b (oB18_7b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B19m0 ( |
| // Input Signals |
| .iA (iA28), .iB (iA19), |
| |
| // Output Signals |
| .o0a (oB19_3a), .o0b(oB19_3b), .o1a (oB19_5a), .o1b (oB19_5b), |
| .o2a (oB19_7a), .o2b(oB19_7b), .o3a (oB19_1a), .o3b (oB19_1b), |
| .o4a (oB19_0a), .o4b(oB19_0b), .o5a (oB19_6a), .o5b (oB19_6b), |
| .o6a (oB19_4a), .o6b(oB19_4b), .o7a (oB19_2a), .o7b (oB19_2b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B20m0 ( |
| // Input Signals |
| .iA (iA20), .iB (iA27), |
| |
| // Output Signals |
| .o0a (oB20_3a), .o0b(oB20_3b), .o1a (oB20_5a), .o1b (oB20_5b), |
| .o2a (oB20_7a), .o2b(oB20_7b), .o3a (oB20_1a), .o3b (oB20_1b), |
| .o4a (oB20_0a), .o4b(oB20_0b), .o5a (oB20_6a), .o5b (oB20_6b), |
| .o6a (oB20_4a), .o6b(oB20_4b), .o7a (oB20_2a), .o7b (oB20_2b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B21m0 ( |
| // Input Signals |
| .iA (iA26), .iB (iA21), |
| |
| // Output Signals |
| .o0a (oB21_6a), .o0b(oB21_6b), .o1a (oB21_3a), .o1b (oB21_3b), |
| .o2a (oB21_0a), .o2b(oB21_0b), .o3a (oB21_4a), .o3b (oB21_4b), |
| .o4a (oB21_5a), .o4b(oB21_5b), .o5a (oB21_1a), .o5b (oB21_1b), |
| .o6a (oB21_2a), .o6b(oB21_2b), .o7a (oB21_7a), .o7b (oB21_7b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B22m0 ( |
| // Input Signals |
| .iA (iA22), .iB (iA25), |
| |
| // Output Signals |
| .o0a (oB22_4a), .o0b(oB22_4b), .o1a (oB22_1a), .o1b (oB22_1b), |
| .o2a (oB22_3a), .o2b(oB22_3b), .o3a (oB22_7a), .o3b (oB22_7b), |
| .o4a (oB22_6a), .o4b(oB22_6b), .o5a (oB22_2a), .o5b (oB22_2b), |
| .o6a (oB22_0a), .o6b(oB22_0b), .o7a (oB22_5a), .o7b (oB22_5b)); |
| |
| ACor_DCT_32p_1to15_pi64_2Stg B23m0 ( |
| // Input Signals |
| .iA (iA24), .iB (iA23), |
| |
| // Output Signals |
| .o0a (oB23_0a), .o0b(oB23_0b), .o1a (oB23_7a), .o1b (oB23_7b), |
| .o2a (oB23_4a), .o2b(oB23_4b), .o3a (oB23_3a), .o3b (oB23_3b), |
| .o4a (oB23_2a), .o4b(oB23_2b), .o5a (oB23_5a), .o5b (oB23_5b), |
| .o6a (oB23_6a), .o6b(oB23_6b), .o7a (oB23_1a), .o7b (oB23_1b)); |
| |
| endmodule |
| |
| module ACor_DCT_32p_S3 ( |
| // Input Signals |
| input [9:0] iB0, iB1, iB2, iB3, iB4, iB5, iB6, iB7, |
| /*10.0 */ iB8, iB9, iB10, iB11, iB12, iB13, iB14, iB15, |
| |
| input [20:0] iB16_0a, iB16_0b, iB17_4a, iB17_4b, iB18_6a, iB18_6b, iB19_3a, iB19_3b, |
| /*11.10*/ iB20_3a, iB20_3b, iB21_6a, iB21_6b, iB22_4a, iB22_4b, iB23_0a, iB23_0b, |
| |
| input [19:0] iB16_7a, iB16_7b, iB17_1a, iB17_1b, iB18_3a, iB18_3b, iB19_5a, iB19_5b, |
| /*11.9 */ iB20_5a, iB20_5b, iB21_3a, iB21_3b, iB22_1a, iB22_1b, iB23_7a, iB23_7b, |
| |
| input [20:0] iB16_4a, iB16_4b, iB17_3a, iB17_3b, iB18_0a, iB18_0b, iB19_7a, iB19_7b, |
| /*11.10*/ iB20_7a, iB20_7b, iB21_0a, iB21_0b, iB22_3a, iB22_3b, iB23_4a, iB23_4b, |
| |
| input [15:0] iB16_3a, iB16_3b, iB17_7a, iB17_7b, iB18_4a, iB18_4b, iB19_1a, iB19_1b, |
| /*11.5 */ iB20_1a, iB20_1b, iB21_4a, iB21_4b, iB22_7a, iB22_7b, iB23_3a, iB23_3b, |
| |
| input [17:0] iB16_2a, iB16_2b, iB17_6a, iB17_6b, iB18_5a, iB18_5b, iB19_0a, iB19_0b, |
| /*11.7 */ iB20_0a, iB20_0b, iB21_5a, iB21_5b, iB22_6a, iB22_6b, iB23_2a, iB23_2b, |
| |
| input [15:0] iB16_5a, iB16_5b, iB17_2a, iB17_2b, iB18_1a, iB18_1b, iB19_6a, iB19_6b, |
| /*11.5 */ iB20_6a, iB20_6b, iB21_1a, iB21_1b, iB22_2a, iB22_2b, iB23_5a, iB23_5b, |
| |
| input [13:0] iB16_6a, iB16_6b, iB17_0a, iB17_0b, iB18_2a, iB18_2b, iB19_4a, iB19_4b, |
| /*11.3 */ iB20_4a, iB20_4b, iB21_2a, iB21_2b, iB22_0a, iB22_0b, iB23_6a, iB23_6b, |
| |
| input [14:0] iB16_1a, iB16_1b, iB17_5a, iB17_5b, iB18_7a, iB18_7b, iB19_2a, iB19_2b, |
| /*11.4 */ iB20_2a, iB20_2b, iB21_7a, iB21_7b, iB22_5a, iB22_5b, iB23_1a, iB23_1b, |
| |
| // Output Signals |
| output [10:0] /*11.0 */ oC0, oC1, oC2, oC3, oC4, oC5, oC6, oC7, |
| |
| output [19:0] /*12.8 */ oC8_0a, oC8_0b, oC9_3a, oC9_3b, oC10_3a, oC10_3b, oC11_0a, oC11_0b, |
| output [17:0] /*12.6 */ oC8_3a, oC8_3b, oC9_1a, oC9_1b, oC10_1a, oC10_1b, oC11_3a, oC11_3b, |
| output [17:0] /*12.6 */ oC8_2a, oC8_2b, oC9_0a, oC9_0b, oC10_0a, oC10_0b, oC11_2a, oC11_2b, |
| output [14:0] /*12.3 */ oC8_1a, oC8_1b, oC9_2a, oC9_2b, oC10_2a, oC10_2b, oC11_1a, oC11_1b, |
| |
| output [21:0] /*12.10*/ oC12_0a, oC12_0b, oC12_1a, oC12_1b, |
| output [18:0] /*12.7 */ oC12_2a, oC12_2b, oC12_3a, oC12_3b, |
| output [21:0] /*12.10*/ oC12_4a, oC12_4b, oC12_5a, oC12_5b, |
| output [20:0] /*12.9 */ oC12_6a, oC12_6b, oC12_7a, oC12_7b, |
| |
| output [21:0] /*12.10*/ oC13_0a, oC13_0b, oC13_1a, oC13_1b, |
| output [20:0] /*12.9 */ oC13_2a, oC13_2b, oC13_3a, oC13_3b, |
| output [18:0] /*12.7 */ oC13_4a, oC13_4b, oC13_5a, oC13_5b, |
| output [21:0] /*12.10*/ oC13_6a, oC13_6b, oC13_7a, oC13_7b, |
| |
| output [18:0] /*12.7 */ oC14_0a, oC14_0b, oC14_1a, oC14_1b, |
| output [21:0] /*12.10*/ oC14_2a, oC14_2b, oC14_3a, oC14_3b, |
| output [20:0] /*12.9 */ oC14_4a, oC14_4b, oC14_5a, oC14_5b, |
| output [21:0] /*12.10*/ oC14_6a, oC14_6b, oC14_7a, oC14_7b, |
| |
| output [20:0] /*12.9 */ oC15_0a, oC15_0b, oC15_1a, oC15_1b, |
| output [21:0] /*12.10*/ oC15_2a, oC15_2b, oC15_3a, oC15_3b, |
| output [21:0] /*12.10*/ oC15_4a, oC15_4b, oC15_5a, oC15_5b, |
| output [18:0] /*12.7 */ oC15_6a, oC15_6b, oC15_7a, oC15_7b |
| ); |
| |
| // assign oC0 = {iB0[9],iB0} + {iB7[9],iB7}; |
| wire C0_c0; |
| FA_Cir_Cin0 C0m0 (.iA (iB0[0]), .iB (iB7[0]), .oS (oC0[0]), .oC (C0_c0)); |
| Ripple_Add_10bit C0m1 ( |
| .iA (iB0[9:1]), .iB (iB7[9:1]), |
| .iC (C0_c0), .oS (oC0[10:1])); |
| |
| // assign oC1 = {iB1[9],iB1} + {iB6[9],iB6}; |
| wire C1_c0; |
| FA_Cir_Cin0 C1m0 (.iA (iB1[0]), .iB (iB6[0]), .oS (oC1[0]), .oC (C1_c0)); |
| Ripple_Add_10bit C1m1 ( |
| .iA (iB1[9:1]), .iB (iB6[9:1]), |
| .iC (C1_c0), .oS (oC1[10:1])); |
| |
| // assign oC2 = {iB2[9],iB2} + {iB5[9],iB5}; |
| wire C2_c0; |
| FA_Cir_Cin0 C2m0 (.iA (iB2[0]), .iB (iB5[0]), .oS (oC2[0]), .oC (C2_c0)); |
| Ripple_Add_10bit C2m1 ( |
| .iA (iB2[9:1]), .iB (iB5[9:1]), |
| .iC (C2_c0), .oS (oC2[10:1])); |
| |
| // assign oC3 = {iB3[9],iB3} + {iB4[9],iB4}; |
| wire C3_c0; |
| FA_Cir_Cin0 C3m0 (.iA (iB3[0]), .iB (iB4[0]), .oS (oC3[0]), .oC (C3_c0)); |
| Ripple_Add_10bit C3m1 ( |
| .iA (iB3[9:1]), .iB (iB4[9:1]), |
| .iC (C3_c0), .oS (oC3[10:1])); |
| |
| // assign oC4 = {iB3[9],iB3} - {iB4[9],iB4}; |
| wire C4_c0; |
| FA_Cir_Cin1 C4m0 (.iA (iB3[0]), .iB (~iB4[0]), .oS (oC4[0]), .oC (C4_c0)); |
| Ripple_Add_10bit C4m1 ( |
| .iA (iB3[9:1]), .iB (~iB4[9:1]), |
| .iC (C4_c0), .oS (oC4[10:1])); |
| |
| // assign oC5 = {iB2[9],iB2} - {iB5[9],iB5}; |
| wire C5_c0; |
| FA_Cir_Cin1 C5m0 (.iA (iB2[0]), .iB (~iB5[0]), .oS (oC5[0]), .oC (C5_c0)); |
| Ripple_Add_10bit C5m1 ( |
| .iA (iB2[9:1]), .iB (~iB5[9:1]), |
| .iC (C5_c0), .oS (oC5[10:1])); |
| |
| // assign oC6 = {iB1[9],iB1} - {iB6[9],iB6}; |
| wire C6_c0; |
| FA_Cir_Cin1 C6m0 (.iA (iB1[0]), .iB (~iB6[0]), .oS (oC6[0]), .oC (C6_c0)); |
| Ripple_Add_10bit C6m1 ( |
| .iA (iB1[9:1]), .iB (~iB6[9:1]), |
| .iC (C6_c0), .oS (oC6[10:1])); |
| |
| // assign oC7 = {iB0[9],iB0} - {iB7[9],iB7}; |
| wire C7_c0; |
| FA_Cir_Cin1 C7m0 (.iA (iB0[0]), .iB (~iB7[0]), .oS (oC7[0]), .oC (C7_c0)); |
| Ripple_Add_10bit C7m1 ( |
| .iA (iB0[9:1]), .iB (~iB7[9:1]), |
| .iC (C7_c0), .oS (oC7[10:1])); |
| |
| ACor_DCT_32p_1to7_pi32_2Stg C8m0 ( |
| // Input Signals |
| .iA (iB8), .iB (iB15), |
| |
| // Output Signals |
| .o0a (oC8_0a), .o0b (oC8_0b), .o1a (oC8_3a), .o1b (oC8_3b), |
| .o2a (oC8_2a), .o2b (oC8_2b), .o3a (oC8_1a), .o3b (oC8_1b)); |
| |
| ACor_DCT_32p_1to7_pi32_2Stg C9m0 ( |
| // Input Signals |
| .iA (iB14), .iB (iB9), |
| |
| // Output Signals |
| .o0a (oC9_3a), .o0b (oC9_3b), .o1a (oC9_1a), .o1b (oC9_1b), |
| .o2a (oC9_0a), .o2b (oC9_0b), .o3a (oC9_2a), .o3b (oC9_2b)); |
| |
| ACor_DCT_32p_1to7_pi32_2Stg C10m0 ( |
| // Input Signals |
| .iA (iB10), .iB (iB13), |
| |
| // Output Signals |
| .o0a (oC10_3a), .o0b (oC10_3b), .o1a (oC10_1a), .o1b (oC10_1b), |
| .o2a (oC10_0a), .o2b (oC10_0b), .o3a (oC10_2a), .o3b (oC10_2b)); |
| |
| ACor_DCT_32p_1to7_pi32_2Stg C11m0 ( |
| // Input Signals |
| .iA (iB12), .iB (iB11), |
| |
| // Output Signals |
| .o0a (oC11_0a), .o0b (oC11_0b), .o1a (oC11_3a), .o1b (oC11_3b), |
| .o2a (oC11_2a), .o2b (oC11_2b), .o3a (oC11_1a), .o3b (oC11_1b)); |
| |
| /********************************** |
| ************** C12 ************** |
| **********************************/ |
| // 12.10 [21:0] 11.10 [20:0] 11.4 [14:0] |
| //assign oC12_0a = {iB16_0a[20],iB16_0a} + {iB23_1a[14],iB23_1a,6'b0}; |
| wire C12_0a_c6; |
| assign oC12_0a[5:0] = iB16_0a[5:0]; |
| FA_Cir_Cin0 C120am6 (.iA (iB16_0a[6]), .iB (iB23_1a[0]), .oS (oC12_0a[6]), .oC (C12_0a_c6)); |
| Ripple_Add_15bit C120am7 ( |
| .iA (iB16_0a[20:7]), .iB (iB23_1a[14:1]), |
| .iC (C12_0a_c6), .oS (oC12_0a[21:7])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC12_0b = {iB23_1b[14],iB23_1b,6'b0} - {iB16_0b[20],iB16_0b}; |
| wire C12_0b_c1, C12_0b_c2, C12_0b_c3, C12_0b_c4, C12_0b_c5; |
| assign oC12_0b[0] = iB16_0b[0]; |
| FA_Cir_Cin0 C120bm1 (.iA (~iB16_0b[1]), .iB (~iB16_0b[0]), .oS (oC12_0b[1]), .oC (C12_0b_c1)); |
| FA_Cir_Cin0 C120bm2 (.iA (~iB16_0b[2]), .iB (C12_0b_c1), .oS (oC12_0b[2]), .oC (C12_0b_c2)); |
| FA_Cir_Cin0 C120bm3 (.iA (~iB16_0b[3]), .iB (C12_0b_c2), .oS (oC12_0b[3]), .oC (C12_0b_c3)); |
| FA_Cir_Cin0 C120bm4 (.iA (~iB16_0b[4]), .iB (C12_0b_c3), .oS (oC12_0b[4]), .oC (C12_0b_c4)); |
| FA_Cir_Cin0 C120bm5 (.iA (~iB16_0b[5]), .iB (C12_0b_c4), .oS (oC12_0b[5]), .oC (C12_0b_c5)); |
| Ripple_Add_16bit C120bm6 ( |
| .iA (iB23_1b), .iB (~iB16_0b[20:6]), |
| .iC (C12_0b_c5), .oS (oC12_0b[21:6])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC12_1a = {iB16_1a[14],iB16_1a,6'b0} + {iB23_0b[20],iB23_0b}; |
| wire C12_1a_c6; |
| assign oC12_1a[5:0] = iB23_0b[5:0]; |
| FA_Cir_Cin0 C121am6 (.iA (iB16_1a[0]), .iB (iB23_0b[6]), .oS (oC12_1a[6]), .oC (C12_1a_c6)); |
| Ripple_Add_15bit C121am7 ( |
| .iA (iB16_1a[14:1]), .iB (iB23_0b[20:7]), |
| .iC (C12_1a_c6), .oS (oC12_1a[21:7])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC12_1b = {iB16_1b[14],iB16_1b,6'b0} + {iB23_0a[20],iB23_0a}; |
| wire C12_1b_c6; |
| assign oC12_1b[5:0] = iB23_0a[5:0]; |
| FA_Cir_Cin0 C121bm6 (.iA (iB16_1b[0]), .iB (iB23_0a[6]), .oS (oC12_1b[6]), .oC (C12_1b_c6)); |
| Ripple_Add_15bit C121bm7 ( |
| .iA (iB16_1b[14:1]), .iB (iB23_0a[20:7]), |
| .iC (C12_1b_c6), .oS (oC12_1b[21:7])); |
| |
| // 12.7 [18:0] 11.7 [17:0] 11.5 [15:0] |
| //assign oC12_2a = {iB16_2a[17],iB16_2a} + {iB23_3a[15],iB23_3a,2'b0}; |
| wire C12_2a_c3; |
| assign oC12_2a[1:0] = iB16_2a[1:0]; |
| FA_Cir_Cin0 C122am2 (.iA (iB16_2a[2]), .iB (iB23_3a[0]), .oS (oC12_2a[2]), .oC (C12_2a_c3)); |
| Ripple_Add_16bit C122am3 ( |
| .iA (iB16_2a[17:3]), .iB (iB23_3a[15:1]), |
| .iC (C12_2a_c3), .oS (oC12_2a[18:3])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC12_2b = {iB23_3b[15],iB23_3b,2'b0} - {iB16_2b[17],iB16_2b}; |
| wire C12_2b_c1; |
| assign oC12_2b[0] = iB16_2b[0]; |
| FA_Cir_Cin0 C122bm1 (.iA (~iB16_2b[1]), .iB (~iB16_2b[0]), .oS (oC12_2b[1]), .oC (C12_2b_c1)); |
| Ripple_Add_17bit C122bm2 ( |
| .iA (iB23_3b), .iB (~iB16_2b[17:2]), |
| .iC (C12_2b_c1), .oS (oC12_2b[18:2])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC12_3a = {iB16_3a[15],iB16_3a,2'b0} + {iB23_2b[17],iB23_2b}; |
| wire C12_3a_c3; |
| assign oC12_3a[1:0] = iB23_2b[1:0]; |
| FA_Cir_Cin0 C123am2 (.iA (iB16_3a[0]), .iB (iB23_2b[2]), .oS (oC12_3a[2]), .oC (C12_3a_c3)); |
| Ripple_Add_16bit C123am3 ( |
| .iA (iB16_3a[15:1]), .iB (iB23_2b[17:3]), |
| .iC (C12_3a_c3), .oS (oC12_3a[18:3])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC12_3b = {iB16_3b[15],iB16_3b,2'b0} + {iB23_2a[17],iB23_2a}; |
| wire C12_3b_c3; |
| assign oC12_3b[1:0] = iB23_2a[1:0]; |
| FA_Cir_Cin0 C123bm2 (.iA (iB16_3b[0]), .iB (iB23_2a[2]), .oS (oC12_3b[2]), .oC (C12_3b_c3)); |
| Ripple_Add_16bit C123bm3 ( |
| .iA (iB16_3b[15:1]), .iB (iB23_2a[17:3]), |
| .iC (C12_3b_c3), .oS (oC12_3b[18:3])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.5 [15:0] |
| //assign oC12_4a = {iB16_4a[20],iB16_4a} - {iB23_5a[15],iB23_5a,5'b0}; |
| wire C12_4a_c5; |
| assign oC12_4a[4:0] = iB16_4a[4:0]; |
| FA_Cir_Cin1 C124am5 (.iA (iB16_4a[5]), .iB (~iB23_5a[0]), .oS (oC12_4a[5]), .oC (C12_4a_c5)); |
| Ripple_Add_16bit C124am6 ( |
| .iA (iB16_4a[20:6]), .iB (~iB23_5a[15:1]), |
| .iC (C12_4a_c5), .oS (oC12_4a[21:6])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.5 [15:0] |
| //assign oC12_4b = {iB16_4b[20],iB16_4b} + {iB23_5b[15],iB23_5b,5'b0}; |
| wire C12_4b_c5; |
| assign oC12_4b[4:0] = iB16_4b[4:0]; |
| FA_Cir_Cin0 C124bm5 (.iA (iB16_4b[5]), .iB (iB23_5b[0]), .oS (oC12_4b[5]), .oC (C12_4b_c5)); |
| Ripple_Add_16bit C124bm6 ( |
| .iA (iB16_4b[20:6]), .iB (iB23_5b[15:1]), |
| .iC (C12_4b_c5), .oS (oC12_4b[21:6])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC12_5a = {iB16_5a[15],iB16_5a,5'b0} - {iB23_4b[20],iB23_4b}; |
| wire C12_5a_c1, C12_5a_c2, C12_5a_c3, C12_5a_c4; |
| assign oC12_5a[0] = iB23_4b[0]; |
| FA_Cir_Cin0 C125am1 (.iA (~iB23_4b[1]), .iB (~iB23_4b[0]), .oS (oC12_5a[1]), .oC (C12_5a_c1)); |
| FA_Cir_Cin0 C125am2 (.iA (~iB23_4b[2]), .iB (C12_5a_c1), .oS (oC12_5a[2]), .oC (C12_5a_c2)); |
| FA_Cir_Cin0 C125am3 (.iA (~iB23_4b[3]), .iB (C12_5a_c2), .oS (oC12_5a[3]), .oC (C12_5a_c3)); |
| FA_Cir_Cin0 C125am4 (.iA (~iB23_4b[4]), .iB (C12_5a_c3), .oS (oC12_5a[4]), .oC (C12_5a_c4)); |
| Ripple_Add_17bit C125am5 ( |
| .iA (iB16_5a), .iB (~iB23_4b[20:5]), |
| .iC (C12_5a_c4), .oS (oC12_5a[21:5])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC12_5b = {iB16_5b[15],iB16_5b,5'b0} - {iB23_4a[20],iB23_4a}; |
| wire C12_5b_c1, C12_5b_c2, C12_5b_c3, C12_5b_c4; |
| assign oC12_5b[0] = iB23_4a[0]; |
| FA_Cir_Cin0 C125bm1 (.iA (~iB23_4a[1]), .iB (~iB23_4a[0]), .oS (oC12_5b[1]), .oC (C12_5b_c1)); |
| FA_Cir_Cin0 C125bm2 (.iA (~iB23_4a[2]), .iB (C12_5b_c1), .oS (oC12_5b[2]), .oC (C12_5b_c2)); |
| FA_Cir_Cin0 C125bm3 (.iA (~iB23_4a[3]), .iB (C12_5b_c2), .oS (oC12_5b[3]), .oC (C12_5b_c3)); |
| FA_Cir_Cin0 C125bm4 (.iA (~iB23_4a[4]), .iB (C12_5b_c3), .oS (oC12_5b[4]), .oC (C12_5b_c4)); |
| Ripple_Add_17bit C125bm5 ( |
| .iA (iB16_5b), .iB (~iB23_4a[20:5]), |
| .iC (C12_5b_c4), .oS (oC12_5b[21:5])); |
| |
| // 12.9 [20:0] 11.3 [13:0] 11.9 [19:0] |
| //assign oC12_6a = {iB16_6a[13],iB16_6a,6'b0} - {iB23_7a[19],iB23_7a}; |
| wire C12_6a_c1, C12_6a_c2, C12_6a_c3, C12_6a_c4, C12_6a_c5; |
| assign oC12_6a[0] = iB23_7a[0]; |
| FA_Cir_Cin0 C126am1 (.iA (~iB23_7a[1]), .iB (~iB23_7a[0]), .oS (oC12_6a[1]), .oC (C12_6a_c1)); |
| FA_Cir_Cin0 C126am2 (.iA (~iB23_7a[2]), .iB (C12_6a_c1), .oS (oC12_6a[2]), .oC (C12_6a_c2)); |
| FA_Cir_Cin0 C126am3 (.iA (~iB23_7a[3]), .iB (C12_6a_c2), .oS (oC12_6a[3]), .oC (C12_6a_c3)); |
| FA_Cir_Cin0 C126am4 (.iA (~iB23_7a[4]), .iB (C12_6a_c3), .oS (oC12_6a[4]), .oC (C12_6a_c4)); |
| FA_Cir_Cin0 C126am5 (.iA (~iB23_7a[5]), .iB (C12_6a_c4), .oS (oC12_6a[5]), .oC (C12_6a_c5)); |
| Ripple_Add_15bit C126am6 ( |
| .iA (iB16_6a), .iB (~iB23_7a[19:6]), |
| .iC (C12_6a_c5), .oS (oC12_6a[20:6])); |
| |
| // 12.9 [20:0] 11.3 [13:0] 11.9 [19:0] |
| //assign oC12_6b = {iB16_6b[13],iB16_6b,6'b0} + {iB23_7b[19],iB23_7b}; |
| wire C12_6b_c6; |
| assign oC12_6b[5:0] = iB23_7b[5:0]; |
| FA_Cir_Cin0 C126bm6 (.iA (iB16_6b[0]), .iB (iB23_7b[6]), .oS (oC12_6b[6]), .oC (C12_6b_c6)); |
| Ripple_Add_14bit C126bm7 ( |
| .iA (iB16_6b[13:1]), .iB (iB23_7b[19:7]), |
| .iC (C12_6b_c6), .oS (oC12_6b[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC12_7a = {iB16_7a[19],iB16_7a} - {iB23_6b[13],iB23_6b,6'b0}; |
| wire C12_7a_c6; |
| assign oC12_7a[5:0] = iB16_7a[5:0]; |
| FA_Cir_Cin1 C127am6 (.iA (iB16_7a[6]), .iB (~iB23_6b[0]), .oS (oC12_7a[6]), .oC (C12_7a_c6)); |
| Ripple_Add_14bit C127am7 ( |
| .iA (iB16_7a[19:7]), .iB (~iB23_6b[13:1]), |
| .iC (C12_7a_c6), .oS (oC12_7a[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC12_7b = {iB16_7b[19],iB16_7b} - {iB23_6a[13],iB23_6a,6'b0}; |
| wire C12_7b_c6; |
| assign oC12_7b[5:0] = iB16_7b[5:0]; |
| FA_Cir_Cin1 C127bm6 (.iA (iB16_7b[6]), .iB (~iB23_6a[0]), .oS (oC12_7b[6]), .oC (C12_7b_c6)); |
| Ripple_Add_14bit C127bm7 ( |
| .iA (iB16_7b[19:7]), .iB (~iB23_6a[13:1]), |
| .iC (C12_7b_c6), .oS (oC12_7b[20:7])); |
| |
| /********************************** |
| ************** C13 ************** |
| **********************************/ |
| // 12.10 [21:0] 11.10 [20:0] 11.5 [15:0] |
| //assign oC13_0a = {iB18_0a[20],iB18_0a} + {iB21_1a[15],iB21_1a,5'b0}; |
| wire C13_0a_c5; |
| assign oC13_0a[4:0] = iB18_0a[4:0]; |
| FA_Cir_Cin0 C130am5 (.iA (iB18_0a[5]), .iB (iB21_1a[0]), .oS (oC13_0a[5]), .oC (C13_0a_c5)); |
| Ripple_Add_16bit C130am6 ( |
| .iA (iB18_0a[20:6]), .iB (iB21_1a[15:1]), |
| .iC (C13_0a_c5), .oS (oC13_0a[21:6])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC13_0b = {iB21_1b[15],iB21_1b,5'b0} - {iB18_0b[20],iB18_0b}; |
| wire C13_0b_c1, C13_0b_c2, C13_0b_c3, C13_0b_c4; |
| assign oC13_0b[0] = iB18_0b[0]; |
| FA_Cir_Cin0 C130bm1 (.iA (~iB18_0b[1]), .iB (~iB18_0b[0]), .oS (oC13_0b[1]), .oC (C13_0b_c1)); |
| FA_Cir_Cin0 C130bm2 (.iA (~iB18_0b[2]), .iB (C13_0b_c1), .oS (oC13_0b[2]), .oC (C13_0b_c2)); |
| FA_Cir_Cin0 C130bm3 (.iA (~iB18_0b[3]), .iB (C13_0b_c2), .oS (oC13_0b[3]), .oC (C13_0b_c3)); |
| FA_Cir_Cin0 C130bm4 (.iA (~iB18_0b[4]), .iB (C13_0b_c3), .oS (oC13_0b[4]), .oC (C13_0b_c4)); |
| Ripple_Add_17bit C130bm5 ( |
| .iA (iB21_1b), .iB (~iB18_0b[20:5]), |
| .iC (C13_0b_c4), .oS (oC13_0b[21:5])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC13_1a = {iB18_1a[15],iB18_1a,5'b0} + {iB21_0b[20],iB21_0b}; |
| wire C13_1a_c5; |
| assign oC13_1a[4:0] = iB21_0b[4:0]; |
| FA_Cir_Cin0 C131am5 (.iA (iB18_1a[0]), .iB (iB21_0b[5]), .oS (oC13_1a[5]), .oC (C13_1a_c5)); |
| Ripple_Add_16bit C131am6 ( |
| .iA (iB18_1a[15:1]), .iB (iB21_0b[20:6]), |
| .iC (C13_1a_c5), .oS (oC13_1a[21:6])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC13_1b = {iB18_1b[15],iB18_1b,5'b0} + {iB21_0a[20],iB21_0a}; |
| wire C13_1b_c5; |
| assign oC13_1b[4:0] = iB21_0a[4:0]; |
| FA_Cir_Cin0 C131bm5 (.iA (iB18_1b[0]), .iB (iB21_0a[5]), .oS (oC13_1b[5]), .oC (C13_1b_c5)); |
| Ripple_Add_16bit C131bm6 ( |
| .iA (iB18_1b[15:1]), .iB (iB21_0a[20:6]), |
| .iC (C13_1b_c5), .oS (oC13_1b[21:6])); |
| |
| // 12.9 [20:0] 11.3 [13:0] 11.9 [19:0] |
| //assign oC13_2a = {iB18_2a[13],iB18_2a,6'b0} + {iB21_3a[19],iB21_3a}; |
| wire C13_2a_c6; |
| assign oC13_2a[5:0] = iB21_3a[5:0]; |
| FA_Cir_Cin0 C132am6 (.iA (iB18_2a[0]), .iB (iB21_3a[6]), .oS (oC13_2a[6]), .oC (C13_2a_c6)); |
| Ripple_Add_14bit C132am7 ( |
| .iA (iB18_2a[13:1]), .iB (iB21_3a[19:7]), |
| .iC (C13_2a_c6), .oS (oC13_2a[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC13_2b = {iB21_3b[19],iB21_3b} - {iB18_2b[13],iB18_2b,6'b0}; |
| wire C13_2b_c6; |
| assign oC13_2b[5:0] = iB21_3b[5:0]; |
| FA_Cir_Cin1 C132bm6 (.iA (iB21_3b[6]), .iB (~iB18_2b[0]), .oS (oC13_2b[6]), .oC (C13_2b_c6)); |
| Ripple_Add_14bit C132bm7 ( |
| .iA (iB21_3b[19:7]), .iB (~iB18_2b[13:1]), |
| .iC (C13_2b_c6), .oS (oC13_2b[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC13_3a = {iB18_3a[19],iB18_3a} + {iB21_2b[13],iB21_2b,6'b0}; |
| wire C13_3a_c6; |
| assign oC13_3a[5:0] = iB18_3a[5:0]; |
| FA_Cir_Cin0 C133am6 (.iA (iB18_3a[6]), .iB (iB21_2b[0]), .oS (oC13_3a[6]), .oC (C13_3a_c6)); |
| Ripple_Add_14bit C133am7 ( |
| .iA (iB18_3a[19:7]), .iB (iB21_2b[13:1]), |
| .iC (C13_3a_c6), .oS (oC13_3a[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC13_3b = {iB18_3b[19],iB18_3b} + {iB21_2a[13],iB21_2a,6'b0}; |
| wire C13_3b_c6; |
| assign oC13_3b[5:0] = iB18_3b[5:0]; |
| FA_Cir_Cin0 C133bm6 (.iA (iB18_3b[6]), .iB (iB21_2a[0]), .oS (oC13_3b[6]), .oC (C13_3b_c6)); |
| Ripple_Add_14bit C133bm7 ( |
| .iA (iB18_3b[19:7]), .iB (iB21_2a[13:1]), |
| .iC (C13_3b_c6), .oS (oC13_3b[20:7])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC13_4a = {iB18_4a[15],iB18_4a,2'b0} - {iB21_5b[17],iB21_5b}; |
| wire C13_4a_c1; |
| assign oC13_4a[0] = iB21_5b[0]; |
| FA_Cir_Cin0 C134am1 (.iA (~iB21_5b[1]), .iB (~iB21_5b[0]), .oS (oC13_4a[1]), .oC (C13_4a_c1)); |
| Ripple_Add_17bit C134am2 ( |
| .iA (iB18_4a), .iB (~iB21_5b[17:2]), |
| .iC (C13_4a_c1), .oS (oC13_4a[18:2])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC13_4b = {iB18_4b[15],iB18_4b,2'b0} - {iB21_5a[17],iB21_5a}; |
| wire C13_4b_c1; |
| assign oC13_4b[0] = iB21_5a[0]; |
| FA_Cir_Cin0 C134bm1 (.iA (~iB21_5a[1]), .iB (~iB21_5a[0]), .oS (oC13_4b[1]), .oC (C13_4b_c1)); |
| Ripple_Add_17bit C134bm2 ( |
| .iA (iB18_4b), .iB (~iB21_5a[17:2]), |
| .iC (C13_4b_c1), .oS (oC13_4b[18:2])); |
| |
| // 12.7 [18:0] 11.7 [17:0] 11.5 [15:0] |
| //assign oC13_5a = {iB18_5a[17],iB18_5a} - {iB21_4a[15],iB21_4a,2'b0}; |
| wire C13_5a_c2; |
| assign oC13_5a[1:0] = iB18_5a[1:0]; |
| FA_Cir_Cin1 C135am2 (.iA (iB18_5a[2]), .iB (~iB21_4a[0]), .oS (oC13_5a[2]), .oC (C13_5a_c2)); |
| Ripple_Add_16bit C135am3 ( |
| .iA (iB18_5a[17:3]), .iB (~iB21_4a[15:1]), |
| .iC (C13_5a_c2), .oS (oC13_5a[18:3])); |
| |
| // 12.7 [18:0] 11.7 [17:0] 11.5 [15:0] |
| //assign oC13_5b = {iB18_5b[17],iB18_5b} + {iB21_4b[15],iB21_4b,2'b0}; |
| wire C13_5b_c3; |
| assign oC13_5b[1:0] = iB18_5b[1:0]; |
| FA_Cir_Cin0 C135bm2 (.iA (iB18_5b[2]), .iB (iB21_4b[0]), .oS (oC13_5b[2]), .oC (C13_5b_c3)); |
| Ripple_Add_16bit C135bm3 ( |
| .iA (iB18_5b[17:3]), .iB (iB21_4b[15:1]), |
| .iC (C13_5b_c3), .oS (oC13_5b[18:3])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.4 [14:0] |
| //assign oC13_6a = {iB18_6a[20],iB18_6a} - {iB21_7a[14],iB21_7a,6'b0}; |
| wire C13_6a_c6; |
| assign oC13_6a[5:0] = iB18_6a[5:0]; |
| FA_Cir_Cin1 C136am6 (.iA (iB18_6a[6]), .iB (~iB21_7a[0]), .oS (oC13_6a[6]), .oC (C13_6a_c6)); |
| Ripple_Add_15bit C136am7 ( |
| .iA (iB18_6a[20:7]), .iB (~iB21_7a[14:1]), |
| .iC (C13_6a_c6), .oS (oC13_6a[21:7])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.4 [14:0] |
| //assign oC13_6b = {iB18_6b[20],iB18_6b} + {iB21_7b[14],iB21_7b,6'b0}; |
| wire C13_6b_c6; |
| assign oC13_6b[5:0] = iB18_6b[5:0]; |
| FA_Cir_Cin0 C136bm6 (.iA (iB18_6b[6]), .iB (iB21_7b[0]), .oS (oC13_6b[6]), .oC (C13_6b_c6)); |
| Ripple_Add_15bit C136bm7 ( |
| .iA (iB18_6b[20:7]), .iB (iB21_7b[14:1]), |
| .iC (C13_6b_c6), .oS (oC13_6b[21:7])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC13_7a = {iB18_7a[14],iB18_7a,6'b0} - {iB21_6b[20],iB21_6b}; |
| wire C13_7a_c1, C13_7a_c2, C13_7a_c3, C13_7a_c4, C13_7a_c5; |
| assign oC13_7a[0] = iB21_6b[0]; |
| FA_Cir_Cin0 C137am1 (.iA (~iB21_6b[1]), .iB (~iB21_6b[0]), .oS (oC13_7a[1]), .oC (C13_7a_c1)); |
| FA_Cir_Cin0 C137am2 (.iA (~iB21_6b[2]), .iB (C13_7a_c1), .oS (oC13_7a[2]), .oC (C13_7a_c2)); |
| FA_Cir_Cin0 C137am3 (.iA (~iB21_6b[3]), .iB (C13_7a_c2), .oS (oC13_7a[3]), .oC (C13_7a_c3)); |
| FA_Cir_Cin0 C137am4 (.iA (~iB21_6b[4]), .iB (C13_7a_c3), .oS (oC13_7a[4]), .oC (C13_7a_c4)); |
| FA_Cir_Cin0 C137am5 (.iA (~iB21_6b[5]), .iB (C13_7a_c4), .oS (oC13_7a[5]), .oC (C13_7a_c5)); |
| Ripple_Add_16bit C137am6 ( |
| .iA (iB18_7a), .iB (~iB21_6b[20:6]), |
| .iC (C13_7a_c5), .oS (oC13_7a[21:6])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC13_7b = {iB18_7b[14],iB18_7b,6'b0} - {iB21_6a[20],iB21_6a}; |
| wire C13_7b_c1, C13_7b_c2, C13_7b_c3, C13_7b_c4, C13_7b_c5; |
| assign oC13_7b[0] = iB21_6a[0]; |
| FA_Cir_Cin0 C137bm1 (.iA (~iB21_6a[1]), .iB (~iB21_6a[0]), .oS (oC13_7b[1]), .oC (C13_7b_c1)); |
| FA_Cir_Cin0 C137bm2 (.iA (~iB21_6a[2]), .iB (C13_7b_c1), .oS (oC13_7b[2]), .oC (C13_7b_c2)); |
| FA_Cir_Cin0 C137bm3 (.iA (~iB21_6a[3]), .iB (C13_7b_c2), .oS (oC13_7b[3]), .oC (C13_7b_c3)); |
| FA_Cir_Cin0 C137bm4 (.iA (~iB21_6a[4]), .iB (C13_7b_c3), .oS (oC13_7b[4]), .oC (C13_7b_c4)); |
| FA_Cir_Cin0 C137bm5 (.iA (~iB21_6a[5]), .iB (C13_7b_c4), .oS (oC13_7b[5]), .oC (C13_7b_c5)); |
| Ripple_Add_16bit C137bm6 ( |
| .iA (iB18_7b), .iB (~iB21_6a[20:6]), |
| .iC (C13_7b_c5), .oS (oC13_7b[21:6])); |
| |
| /********************************** |
| ************** C14 ************** |
| **********************************/ |
| // 12.7 [18:0] 11.7 [17:0] 11.5 [15:0] |
| //assign oC14_0a = {iB20_0a[17],iB20_0a} + {iB19_1a[15],iB19_1a,2'b0}; |
| wire C14_0a_c3; |
| assign oC14_0a[1:0] = iB20_0a[1:0]; |
| FA_Cir_Cin0 C140am2 (.iA (iB20_0a[2]), .iB (iB19_1a[0]), .oS (oC14_0a[2]), .oC (C14_0a_c3)); |
| Ripple_Add_16bit C140am3 ( |
| .iA (iB20_0a[17:3]), .iB (iB19_1a[15:1]), |
| .iC (C14_0a_c3), .oS (oC14_0a[18:3])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC14_0b = {iB19_1b[15],iB19_1b,2'b0} - {iB20_0b[17],iB20_0b}; |
| wire C14_0b_c1; |
| assign oC14_0b[0] = iB20_0b[0]; |
| FA_Cir_Cin0 C140bm1 (.iA (~iB20_0b[1]), .iB (~iB20_0b[0]), .oS (oC14_0b[1]), .oC (C14_0b_c1)); |
| Ripple_Add_17bit C140bm2 ( |
| .iA (iB19_1b), .iB (~iB20_0b[17:2]), |
| .iC (C14_0b_c1), .oS (oC14_0b[18:2])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC14_1a = {iB20_1a[15],iB20_1a,2'b0} + {iB19_0b[17],iB19_0b}; |
| wire C14_1a_c3; |
| assign oC14_1a[1:0] = iB19_0b[1:0]; |
| FA_Cir_Cin0 C141am2 (.iA (iB20_1a[0]), .iB (iB19_0b[2]), .oS (oC14_1a[2]), .oC (C14_1a_c3)); |
| Ripple_Add_16bit C141am3 ( |
| .iA (iB20_1a[15:1]), .iB (iB19_0b[17:3]), |
| .iC (C14_1a_c3), .oS (oC14_1a[18:3])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC14_1b = {iB20_1b[15],iB20_1b,2'b0} + {iB19_0a[17],iB19_0a}; |
| wire C14_1b_c3; |
| assign oC14_1b[1:0] = iB19_0a[1:0]; |
| FA_Cir_Cin0 C141bm2 (.iA (iB20_1b[0]), .iB (iB19_0a[2]), .oS (oC14_1b[2]), .oC (C14_1b_c3)); |
| Ripple_Add_16bit C141bm3 ( |
| .iA (iB20_1b[15:1]), .iB (iB19_0a[17:3]), |
| .iC (C14_1b_c3), .oS (oC14_1b[18:3])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC14_2a = {iB20_2a[14],iB20_2a,6'b0} + {iB19_3b[20],iB19_3b}; |
| wire C14_2a_c6; |
| assign oC14_2a[5:0] = iB19_3b[5:0]; |
| FA_Cir_Cin0 C142am6 (.iA (iB20_2a[0]), .iB (iB19_3b[6]), .oS (oC14_2a[6]), .oC (C14_2a_c6)); |
| Ripple_Add_15bit C142am7 ( |
| .iA (iB20_2a[14:1]), .iB (iB19_3b[20:7]), |
| .iC (C14_2a_c6), .oS (oC14_2a[21:7])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC14_2b = {iB20_2b[14],iB20_2b,6'b0} + {iB19_3a[20],iB19_3a}; |
| wire C14_2b_c6; |
| assign oC14_2b[5:0] = iB19_3a[5:0]; |
| FA_Cir_Cin0 C142bm6 (.iA (iB20_2b[0]), .iB (iB19_3a[6]), .oS (oC14_2b[6]), .oC (C14_2b_c6)); |
| Ripple_Add_15bit C142bm7 ( |
| .iA (iB20_2b[14:1]), .iB (iB19_3a[20:7]), |
| .iC (C14_2b_c6), .oS (oC14_2b[21:7])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.4 [14:0] |
| //assign oC14_3a = {iB20_3a[20],iB20_3a} + {iB19_2a[14],iB19_2a,6'b0}; |
| wire C14_3a_c6; |
| assign oC14_3a[5:0] = iB20_3a[5:0]; |
| FA_Cir_Cin0 C143am6 (.iA (iB20_3a[6]), .iB (iB19_2a[0]), .oS (oC14_3a[6]), .oC (C14_3a_c6)); |
| Ripple_Add_15bit C143am7 ( |
| .iA (iB20_3a[20:7]), .iB (iB19_2a[14:1]), |
| .iC (C14_3a_c6), .oS (oC14_3a[21:7])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC14_3b = {iB19_2b[14],iB19_2b,6'b0} - {iB20_3b[20],iB20_3b}; |
| wire C14_3b_c1, C14_3b_c2, C14_3b_c3, C14_3b_c4, C14_3b_c5; |
| assign oC14_3b[0] = iB20_3b[0]; |
| FA_Cir_Cin0 C143bm1 (.iA (~iB20_3b[1]), .iB (~iB20_3b[0]), .oS (oC14_3b[1]), .oC (C14_3b_c1)); |
| FA_Cir_Cin0 C143bm2 (.iA (~iB20_3b[2]), .iB (C14_3b_c1), .oS (oC14_3b[2]), .oC (C14_3b_c2)); |
| FA_Cir_Cin0 C143bm3 (.iA (~iB20_3b[3]), .iB (C14_3b_c2), .oS (oC14_3b[3]), .oC (C14_3b_c3)); |
| FA_Cir_Cin0 C143bm4 (.iA (~iB20_3b[4]), .iB (C14_3b_c3), .oS (oC14_3b[4]), .oC (C14_3b_c4)); |
| FA_Cir_Cin0 C143bm5 (.iA (~iB20_3b[5]), .iB (C14_3b_c4), .oS (oC14_3b[5]), .oC (C14_3b_c5)); |
| Ripple_Add_16bit C143bm6 ( |
| .iA (iB19_2b), .iB (~iB20_3b[20:6]), |
| .iC (C14_3b_c5), .oS (oC14_3b[21:6])); |
| |
| // 12.9 [20:0] 11.3 [13:0] 11.9 [19:0] |
| //assign oC14_4a = {iB20_4a[13],iB20_4a,6'b0} - {iB19_5a[19],iB19_5a}; |
| wire C14_4a_c1, C14_4a_c2, C14_4a_c3, C14_4a_c4, C14_4a_c5; |
| assign oC14_4a[0] = iB19_5a[0]; |
| FA_Cir_Cin0 C144am1 (.iA (~iB19_5a[1]), .iB (~iB19_5a[0]), .oS (oC14_4a[1]), .oC (C14_4a_c1)); |
| FA_Cir_Cin0 C144am2 (.iA (~iB19_5a[2]), .iB (C14_4a_c1), .oS (oC14_4a[2]), .oC (C14_4a_c2)); |
| FA_Cir_Cin0 C144am3 (.iA (~iB19_5a[3]), .iB (C14_4a_c2), .oS (oC14_4a[3]), .oC (C14_4a_c3)); |
| FA_Cir_Cin0 C144am4 (.iA (~iB19_5a[4]), .iB (C14_4a_c3), .oS (oC14_4a[4]), .oC (C14_4a_c4)); |
| FA_Cir_Cin0 C144am5 (.iA (~iB19_5a[5]), .iB (C14_4a_c4), .oS (oC14_4a[5]), .oC (C14_4a_c5)); |
| Ripple_Add_15bit C144am6 ( |
| .iA (iB20_4a), .iB (~iB19_5a[19:6]), |
| .iC (C14_4a_c5), .oS (oC14_4a[20:6])); |
| |
| // 12.9 [20:0] 11.3 [13:0] 11.9 [19:0] |
| //assign oC14_4b = {iB20_4b[13],iB20_4b,6'b0} + {iB19_5b[19],iB19_5b}; |
| wire C14_4b_c6; |
| assign oC14_4b[5:0] = iB19_5b[5:0]; |
| FA_Cir_Cin0 C144bm6 (.iA (iB20_4b[0]), .iB (iB19_5b[6]), .oS (oC14_4b[6]), .oC (C14_4b_c6)); |
| Ripple_Add_14bit C144bm7 ( |
| .iA (iB20_4b[13:1]), .iB (iB19_5b[19:7]), |
| .iC (C14_4b_c6), .oS (oC14_4b[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC14_5a = {iB20_5a[19],iB20_5a} - {iB19_4b[13],iB19_4b,6'b0}; |
| wire C14_5a_c6; |
| assign oC14_5a[5:0] = iB20_5a[5:0]; |
| FA_Cir_Cin1 C145am6 (.iA (iB20_5a[6]), .iB (~iB19_4b[0]), .oS (oC14_5a[6]), .oC (C14_5a_c6)); |
| Ripple_Add_14bit C145am7 ( |
| .iA (iB20_5a[19:7]), .iB (~iB19_4b[13:1]), |
| .iC (C14_5a_c6), .oS (oC14_5a[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC14_5b = {iB20_5b[19],iB20_5b} - {iB19_4a[13],iB19_4a,6'b0}; |
| wire C14_5b_c6; |
| assign oC14_5b[5:0] = iB20_5b[5:0]; |
| FA_Cir_Cin1 C145bm6 (.iA (iB20_5b[6]), .iB (~iB19_4a[0]), .oS (oC14_5b[6]), .oC (C14_5b_c6)); |
| Ripple_Add_14bit C145bm7 ( |
| .iA (iB20_5b[19:7]), .iB (~iB19_4a[13:1]), |
| .iC (C14_5b_c6), .oS (oC14_5b[20:7])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC14_6a = {iB20_6a[15],iB20_6a,5'b0} - {iB19_7b[20],iB19_7b}; |
| wire C14_6a_c1, C14_6a_c2, C14_6a_c3, C14_6a_c4; |
| assign oC14_6a[0] = iB19_7b[0]; |
| FA_Cir_Cin0 C146am1 (.iA (~iB19_7b[1]), .iB (~iB19_7b[0]), .oS (oC14_6a[1]), .oC (C14_6a_c1)); |
| FA_Cir_Cin0 C146am2 (.iA (~iB19_7b[2]), .iB (C14_6a_c1), .oS (oC14_6a[2]), .oC (C14_6a_c2)); |
| FA_Cir_Cin0 C146am3 (.iA (~iB19_7b[3]), .iB (C14_6a_c2), .oS (oC14_6a[3]), .oC (C14_6a_c3)); |
| FA_Cir_Cin0 C146am4 (.iA (~iB19_7b[4]), .iB (C14_6a_c3), .oS (oC14_6a[4]), .oC (C14_6a_c4)); |
| Ripple_Add_17bit C146am5 ( |
| .iA (iB20_6a), .iB (~iB19_7b[20:5]), |
| .iC (C14_6a_c4), .oS (oC14_6a[21:5])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC14_6b = {iB20_6b[15],iB20_6b,5'b0} - {iB19_7a[20],iB19_7a}; |
| wire C14_6b_c1, C14_6b_c2, C14_6b_c3, C14_6b_c4; |
| assign oC14_6b[0] = iB19_7a[0]; |
| FA_Cir_Cin0 C146bm1 (.iA (~iB19_7a[1]), .iB (~iB19_7a[0]), .oS (oC14_6b[1]), .oC (C14_6b_c1)); |
| FA_Cir_Cin0 C146bm2 (.iA (~iB19_7a[2]), .iB (C14_6b_c1), .oS (oC14_6b[2]), .oC (C14_6b_c2)); |
| FA_Cir_Cin0 C146bm3 (.iA (~iB19_7a[3]), .iB (C14_6b_c2), .oS (oC14_6b[3]), .oC (C14_6b_c3)); |
| FA_Cir_Cin0 C146bm4 (.iA (~iB19_7a[4]), .iB (C14_6b_c3), .oS (oC14_6b[4]), .oC (C14_6b_c4)); |
| Ripple_Add_17bit C146bm5 ( |
| .iA (iB20_6b), .iB (~iB19_7a[20:5]), |
| .iC (C14_6b_c4), .oS (oC14_6b[21:5])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.5 [15:0] |
| //assign oC14_7a = {iB20_7a[20],iB20_7a} - {iB19_6a[15],iB19_6a,5'b0}; |
| wire C14_7a_c5; |
| assign oC14_7a[4:0] = iB20_7a[4:0]; |
| FA_Cir_Cin1 C147am5 (.iA (iB20_7a[5]), .iB (~iB19_6a[0]), .oS (oC14_7a[5]), .oC (C14_7a_c5)); |
| Ripple_Add_16bit C147am6 ( |
| .iA (iB20_7a[20:6]), .iB (~iB19_6a[15:1]), |
| .iC (C14_7a_c5), .oS (oC14_7a[21:6])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.5 [15:0] |
| //assign oC14_7b = {iB20_7b[20],iB20_7b} + {iB19_6b[15],iB19_6b,5'b0}; |
| wire C14_7b_c5; |
| assign oC14_7b[4:0] = iB20_7b[4:0]; |
| FA_Cir_Cin0 C147bm5 (.iA (iB20_7b[5]), .iB (iB19_6b[0]), .oS (oC14_7b[5]), .oC (C14_7b_c5)); |
| Ripple_Add_16bit C147bm6 ( |
| .iA (iB20_7b[20:6]), .iB (iB19_6b[15:1]), |
| .iC (C14_7b_c5), .oS (oC14_7b[21:6])); |
| |
| /********************************** |
| ************** C15 ************** |
| **********************************/ |
| // 12.9 [20:0] 11.3 [13:0] 11.9 [19:0] |
| //assign oC15_0a = {iB22_0a[13],iB22_0a,6'b0} + {iB17_1a[19],iB17_1a}; |
| wire C15_0a_c6; |
| assign oC15_0a[5:0] = iB17_1a[5:0]; |
| FA_Cir_Cin0 C150am6 (.iA (iB22_0a[0]), .iB (iB17_1a[6]), .oS (oC15_0a[6]), .oC (C15_0a_c6)); |
| Ripple_Add_14bit C150am7 ( |
| .iA (iB22_0a[13:1]), .iB (iB17_1a[19:7]), |
| .iC (C15_0a_c6), .oS (oC15_0a[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC15_0b = {iB17_1b[19],iB17_1b} - {iB22_0b[13],iB22_0b,6'b0}; |
| wire C15_0b_c6; |
| assign oC15_0b[5:0] = iB17_1b[5:0]; |
| FA_Cir_Cin1 C150bm6 (.iA (iB17_1b[6]), .iB (~iB22_0b[0]), .oS (oC15_0b[6]), .oC (C15_0b_c6)); |
| Ripple_Add_14bit C150bm7 ( |
| .iA (iB17_1b[19:7]), .iB (~iB22_0b[13:1]), |
| .iC (C15_0b_c6), .oS (oC15_0b[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC15_1a = {iB22_1a[19],iB22_1a} + {iB17_0b[13],iB17_0b,6'b0}; |
| wire C15_1a_c6; |
| assign oC15_1a[5:0] = iB22_1a[5:0]; |
| FA_Cir_Cin0 C151am6 (.iA (iB22_1a[6]), .iB (iB17_0b[0]), .oS (oC15_1a[6]), .oC (C15_1a_c6)); |
| Ripple_Add_14bit C151am7 ( |
| .iA (iB22_1a[19:7]), .iB (iB17_0b[13:1]), |
| .iC (C15_1a_c6), .oS (oC15_1a[20:7])); |
| |
| // 12.9 [20:0] 11.9 [19:0] 11.3 [13:0] |
| //assign oC15_1b = {iB22_1b[19],iB22_1b} + {iB17_0a[13],iB17_0a,6'b0}; |
| wire C15_1b_c6; |
| assign oC15_1b[5:0] = iB22_1b[5:0]; |
| FA_Cir_Cin0 C151bm6 (.iA (iB22_1b[6]), .iB (iB17_0a[0]), .oS (oC15_1b[6]), .oC (C15_1b_c6)); |
| Ripple_Add_14bit C151bm7 ( |
| .iA (iB22_1b[19:7]), .iB (iB17_0a[13:1]), |
| .iC (C15_1b_c6), .oS (oC15_1b[20:7])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC15_2a = {iB22_2a[15],iB22_2a,5'b0} + {iB17_3b[20],iB17_3b}; |
| wire C15_2a_c5; |
| assign oC15_2a[4:0] = iB17_3b[4:0]; |
| FA_Cir_Cin0 C152am5 (.iA (iB22_2a[0]), .iB (iB17_3b[5]), .oS (oC15_2a[5]), .oC (C15_2a_c5)); |
| Ripple_Add_16bit C152am6 ( |
| .iA (iB22_2a[15:1]), .iB (iB17_3b[20:6]), |
| .iC (C15_2a_c5), .oS (oC15_2a[21:6])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC15_2b = {iB22_2b[15],iB22_2b,5'b0} + {iB17_3a[20],iB17_3a}; |
| wire C15_2b_c5; |
| assign oC15_2b[4:0] = iB17_3a[4:0]; |
| FA_Cir_Cin0 C152bm5 (.iA (iB22_2b[0]), .iB (iB17_3a[5]), .oS (oC15_2b[5]), .oC (C15_2b_c5)); |
| Ripple_Add_16bit C152bm6 ( |
| .iA (iB22_2b[15:1]), .iB (iB17_3a[20:6]), |
| .iC (C15_2b_c5), .oS (oC15_2b[21:6])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.5 [15:0] |
| //assign oC15_3a = {iB22_3a[20],iB22_3a} + {iB17_2a[15],iB17_2a,5'b0}; |
| wire C15_3a_c5; |
| assign oC15_3a[4:0] = iB22_3a[4:0]; |
| FA_Cir_Cin0 C153am5 (.iA (iB22_3a[5]), .iB (iB17_2a[0]), .oS (oC15_3a[5]), .oC (C15_3a_c5)); |
| Ripple_Add_16bit C153am6 ( |
| .iA (iB22_3a[20:6]), .iB (iB17_2a[15:1]), |
| .iC (C15_3a_c5), .oS (oC15_3a[21:6])); |
| |
| // 12.10 [21:0] 11.5 [15:0] 11.10 [20:0] |
| //assign oC15_3b = {iB17_2b[15],iB17_2b,5'b0} - {iB22_3b[20],iB22_3b}; |
| wire C15_3b_c1, C15_3b_c2, C15_3b_c3, C15_3b_c4; |
| assign oC15_3b[0] = iB22_3b[0]; |
| FA_Cir_Cin0 C153bm1 (.iA (~iB22_3b[1]), .iB (~iB22_3b[0]), .oS (oC15_3b[1]), .oC (C15_3b_c1)); |
| FA_Cir_Cin0 C153bm2 (.iA (~iB22_3b[2]), .iB (C15_3b_c1), .oS (oC15_3b[2]), .oC (C15_3b_c2)); |
| FA_Cir_Cin0 C153bm3 (.iA (~iB22_3b[3]), .iB (C15_3b_c2), .oS (oC15_3b[3]), .oC (C15_3b_c3)); |
| FA_Cir_Cin0 C153bm4 (.iA (~iB22_3b[4]), .iB (C15_3b_c3), .oS (oC15_3b[4]), .oC (C15_3b_c4)); |
| Ripple_Add_17bit C153bm5 ( |
| .iA (iB17_2b), .iB (~iB22_3b[20:5]), |
| .iC (C15_3b_c4), .oS (oC15_3b[21:5])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.4 [14:0] |
| //assign oC15_4a = {iB22_4a[20],iB22_4a} - {iB17_5a[14],iB17_5a,6'b0}; |
| wire C15_4a_c6; |
| assign oC15_4a[5:0] = iB22_4a[5:0]; |
| FA_Cir_Cin1 C154am6 (.iA (iB22_4a[6]), .iB (~iB17_5a[0]), .oS (oC15_4a[6]), .oC (C15_4a_c6)); |
| Ripple_Add_15bit C154am7 ( |
| .iA (iB22_4a[20:7]), .iB (~iB17_5a[14:1]), |
| .iC (C15_4a_c6), .oS (oC15_4a[21:7])); |
| |
| // 12.10 [21:0] 11.10 [20:0] 11.4 [14:0] |
| //assign oC15_4b = {iB22_4b[20],iB22_4b} + {iB17_5b[14],iB17_5b,6'b0}; |
| wire C15_4b_c6; |
| assign oC15_4b[5:0] = iB22_4b[5:0]; |
| FA_Cir_Cin0 C154bm6 (.iA (iB22_4b[6]), .iB (iB17_5b[0]), .oS (oC15_4b[6]), .oC (C15_4b_c6)); |
| Ripple_Add_15bit C154bm7 ( |
| .iA (iB22_4b[20:7]), .iB (iB17_5b[14:1]), |
| .iC (C15_4b_c6), .oS (oC15_4b[21:7])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC15_5a = {iB22_5a[14],iB22_5a,6'b0} - {iB17_4b[20],iB17_4b}; |
| wire C15_5a_c1, C15_5a_c2, C15_5a_c3, C15_5a_c4, C15_5a_c5; |
| assign oC15_5a[0] = iB17_4b[0]; |
| FA_Cir_Cin0 C155am1 (.iA (~iB17_4b[1]), .iB (~iB17_4b[0]), .oS (oC15_5a[1]), .oC (C15_5a_c1)); |
| FA_Cir_Cin0 C155am2 (.iA (~iB17_4b[2]), .iB (C15_5a_c1), .oS (oC15_5a[2]), .oC (C15_5a_c2)); |
| FA_Cir_Cin0 C155am3 (.iA (~iB17_4b[3]), .iB (C15_5a_c2), .oS (oC15_5a[3]), .oC (C15_5a_c3)); |
| FA_Cir_Cin0 C155am4 (.iA (~iB17_4b[4]), .iB (C15_5a_c3), .oS (oC15_5a[4]), .oC (C15_5a_c4)); |
| FA_Cir_Cin0 C155am5 (.iA (~iB17_4b[5]), .iB (C15_5a_c4), .oS (oC15_5a[5]), .oC (C15_5a_c5)); |
| Ripple_Add_16bit C155am6 ( |
| .iA (iB22_5a), .iB (~iB17_4b[20:6]), |
| .iC (C15_5a_c5), .oS (oC15_5a[21:6])); |
| |
| // 12.10 [21:0] 11.4 [14:0] 11.10 [20:0] |
| //assign oC15_5b = {iB22_5b[14],iB22_5b,6'b0} - {iB17_4a[20],iB17_4a}; |
| wire C15_5b_c1, C15_5b_c2, C15_5b_c3, C15_5b_c4, C15_5b_c5; |
| assign oC15_5b[0] = iB17_4a[0]; |
| FA_Cir_Cin0 C155bm1 (.iA (~iB17_4a[1]), .iB (~iB17_4a[0]), .oS (oC15_5b[1]), .oC (C15_5b_c1)); |
| FA_Cir_Cin0 C155bm2 (.iA (~iB17_4a[2]), .iB (C15_5b_c1), .oS (oC15_5b[2]), .oC (C15_5b_c2)); |
| FA_Cir_Cin0 C155bm3 (.iA (~iB17_4a[3]), .iB (C15_5b_c2), .oS (oC15_5b[3]), .oC (C15_5b_c3)); |
| FA_Cir_Cin0 C155bm4 (.iA (~iB17_4a[4]), .iB (C15_5b_c3), .oS (oC15_5b[4]), .oC (C15_5b_c4)); |
| FA_Cir_Cin0 C155bm5 (.iA (~iB17_4a[5]), .iB (C15_5b_c4), .oS (oC15_5b[5]), .oC (C15_5b_c5)); |
| Ripple_Add_16bit C155bm6 ( |
| .iA (iB22_5b), .iB (~iB17_4a[20:6]), |
| .iC (C15_5b_c5), .oS (oC15_5b[21:6])); |
| |
| // 12.7 [18:0] 11.7 [17:0] 11.5 [15:0] |
| //assign oC15_6a = {iB22_6a[17],iB22_6a} - {iB17_7a[15],iB17_7a,2'b0}; |
| wire C15_6a_c2; |
| assign oC15_6a[1:0] = iB22_6a[1:0]; |
| FA_Cir_Cin1 C156am2 (.iA (iB22_6a[2]), .iB (~iB17_7a[0]), .oS (oC15_6a[2]), .oC (C15_6a_c2)); |
| Ripple_Add_16bit C156am3 ( |
| .iA (iB22_6a[17:3]), .iB (~iB17_7a[15:1]), |
| .iC (C15_6a_c2), .oS (oC15_6a[18:3])); |
| |
| // 12.7 [18:0] 11.7 [17:0] 11.5 [15:0] |
| //assign oC15_6b = {iB22_6b[17],iB22_6b} + {iB17_7b[15],iB17_7b,2'b0}; |
| wire C15_6b_c3; |
| assign oC15_6b[1:0] = iB22_6b[1:0]; |
| FA_Cir_Cin0 C156bm2 (.iA (iB22_6b[2]), .iB (iB17_7b[0]), .oS (oC15_6b[2]), .oC (C15_6b_c3)); |
| Ripple_Add_16bit C156bm3 ( |
| .iA (iB22_6b[17:3]), .iB (iB17_7b[15:1]), |
| .iC (C15_6b_c3), .oS (oC15_6b[18:3])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC15_7a = {iB22_7a[15],iB22_7a,2'b0} - {iB17_6b[17],iB17_6b}; |
| wire C15_7a_c1; |
| assign oC15_7a[0] = iB17_6b[0]; |
| FA_Cir_Cin0 C157am1 (.iA (~iB17_6b[1]), .iB (~iB17_6b[0]), .oS (oC15_7a[1]), .oC (C15_7a_c1)); |
| Ripple_Add_17bit C157am2 ( |
| .iA (iB22_7a), .iB (~iB17_6b[17:2]), |
| .iC (C15_7a_c1), .oS (oC15_7a[18:2])); |
| |
| // 12.7 [18:0] 11.5 [15:0] 11.7 [17:0] |
| //assign oC15_7b = {iB22_7b[15],iB22_7b,2'b0} - {iB17_6a[17],iB17_6a}; |
| wire C15_7b_c1; |
| assign oC15_7b[0] = iB17_6a[0]; |
| FA_Cir_Cin0 C157bm1 (.iA (~iB17_6a[1]), .iB (~iB17_6a[0]), .oS (oC15_7b[1]), .oC (C15_7b_c1)); |
| Ripple_Add_17bit C157bm2 ( |
| .iA (iB22_7b), .iB (~iB17_6a[17:2]), |
| .iC (C15_7b_c1), .oS (oC15_7b[18:2])); |
| |
| endmodule |
| |
| module ACor_DCT_32p_S4 ( |
| // Input Signals |
| input [10:0] /*11.0 */ iC0, iC1, iC2, iC3, iC4, iC5, iC6, iC7, |
| |
| input [19:0] /*12.8 */ iC8_0a, iC8_0b, iC9_3a, iC9_3b, iC10_3a, iC10_3b, iC11_0a, iC11_0b, |
| input [17:0] /*12.6 */ iC8_3a, iC8_3b, iC9_1a, iC9_1b, iC10_1a, iC10_1b, iC11_3a, iC11_3b, |
| input [17:0] /*12.6 */ iC8_2a, iC8_2b, iC9_0a, iC9_0b, iC10_0a, iC10_0b, iC11_2a, iC11_2b, |
| input [14:0] /*12.3 */ iC8_1a, iC8_1b, iC9_2a, iC9_2b, iC10_2a, iC10_2b, iC11_1a, iC11_1b, |
| |
| input [21:0] /*12.10*/ iC12_0a, iC12_0b, iC12_1a, iC12_1b, |
| input [18:0] /*12.7 */ iC12_2a, iC12_2b, iC12_3a, iC12_3b, |
| input [21:0] /*12.10*/ iC12_4a, iC12_4b, iC12_5a, iC12_5b, |
| input [20:0] /*12.9 */ iC12_6a, iC12_6b, iC12_7a, iC12_7b, |
| |
| input [21:0] /*12.10*/ iC13_0a, iC13_0b, iC13_1a, iC13_1b, |
| input [20:0] /*12.9 */ iC13_2a, iC13_2b, iC13_3a, iC13_3b, |
| input [18:0] /*12.7 */ iC13_4a, iC13_4b, iC13_5a, iC13_5b, |
| input [21:0] /*12.10*/ iC13_6a, iC13_6b, iC13_7a, iC13_7b, |
| |
| input [18:0] /*12.7 */ iC14_0a, iC14_0b, iC14_1a, iC14_1b, |
| input [21:0] /*12.10*/ iC14_2a, iC14_2b, iC14_3a, iC14_3b, |
| input [20:0] /*12.9 */ iC14_4a, iC14_4b, iC14_5a, iC14_5b, |
| input [21:0] /*12.10*/ iC14_6a, iC14_6b, iC14_7a, iC14_7b, |
| |
| input [20:0] /*12.9 */ iC15_0a, iC15_0b, iC15_1a, iC15_1b, |
| input [21:0] /*12.10*/ iC15_2a, iC15_2b, iC15_3a, iC15_3b, |
| input [21:0] /*12.10*/ iC15_4a, iC15_4b, iC15_5a, iC15_5b, |
| input [18:0] /*12.7 */ iC15_6a, iC15_6b, iC15_7a, iC15_7b, |
| |
| // Output Signals |
| output [11:0] /*12.0 */ oD0, oD1, oD2, oD3, |
| |
| output [18:0] /*13.6 */ oD4_0a, oD4_0b, oD5_1a, oD5_1b, |
| output [16:0] /*13.4 */ oD4_1a, oD4_1b, oD5_0a, oD5_0b, |
|