| //SPDX-FileCopyrightText: 2021 Anish Singhani |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // SPDX-License-Identifier: Apache-2.0 |
| // This file is auto-generated and should not be edited by hand |
| module ShiftRegister( |
| input clock, |
| input [127:0] io_input, |
| input io_enable, |
| input io_rev, |
| input io_cyc, |
| input io_tap, |
| output [127:0] io_output_0, |
| output [127:0] io_output_1, |
| output [127:0] io_output_2, |
| output [127:0] io_output_3, |
| output [127:0] io_output_4, |
| output [127:0] io_output_5, |
| output [127:0] io_output_6, |
| output [127:0] io_output_7, |
| output [127:0] io_output_8, |
| output [127:0] io_output_9, |
| output [127:0] io_output_10, |
| output [127:0] io_output_11, |
| output [127:0] io_output_12, |
| output [127:0] io_output_13, |
| output [127:0] io_output_14 |
| ); |
| `ifdef RANDOMIZE_REG_INIT |
| reg [127:0] _RAND_0; |
| reg [127:0] _RAND_1; |
| reg [127:0] _RAND_2; |
| reg [127:0] _RAND_3; |
| reg [127:0] _RAND_4; |
| reg [127:0] _RAND_5; |
| reg [127:0] _RAND_6; |
| reg [127:0] _RAND_7; |
| reg [127:0] _RAND_8; |
| reg [127:0] _RAND_9; |
| reg [127:0] _RAND_10; |
| reg [127:0] _RAND_11; |
| reg [127:0] _RAND_12; |
| reg [127:0] _RAND_13; |
| reg [127:0] _RAND_14; |
| `endif // RANDOMIZE_REG_INIT |
| reg [127:0] reg_0; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_1; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_2; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_3; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_4; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_5; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_6; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_7; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_8; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_9; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_10; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_11; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_12; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_13; // @[ShiftRegister.scala 34:18] |
| reg [127:0] reg_14; // @[ShiftRegister.scala 34:18] |
| wire [2:0] _T = io_tap ? 3'h0 : 3'h4; // @[ShiftRegister.scala 42:36] |
| wire [3:0] _GEN_75 = {{1'd0}, _T}; // @[ShiftRegister.scala 42:26] |
| assign io_output_0 = reg_0; // @[ShiftRegister.scala 53:15] |
| assign io_output_1 = reg_1; // @[ShiftRegister.scala 53:15] |
| assign io_output_2 = reg_2; // @[ShiftRegister.scala 53:15] |
| assign io_output_3 = reg_3; // @[ShiftRegister.scala 53:15] |
| assign io_output_4 = reg_4; // @[ShiftRegister.scala 53:15] |
| assign io_output_5 = reg_5; // @[ShiftRegister.scala 53:15] |
| assign io_output_6 = reg_6; // @[ShiftRegister.scala 53:15] |
| assign io_output_7 = reg_7; // @[ShiftRegister.scala 53:15] |
| assign io_output_8 = reg_8; // @[ShiftRegister.scala 53:15] |
| assign io_output_9 = reg_9; // @[ShiftRegister.scala 53:15] |
| assign io_output_10 = reg_10; // @[ShiftRegister.scala 53:15] |
| assign io_output_11 = reg_11; // @[ShiftRegister.scala 53:15] |
| assign io_output_12 = reg_12; // @[ShiftRegister.scala 53:15] |
| assign io_output_13 = reg_13; // @[ShiftRegister.scala 53:15] |
| assign io_output_14 = reg_14; // @[ShiftRegister.scala 53:15] |
| `ifdef RANDOMIZE_GARBAGE_ASSIGN |
| `define RANDOMIZE |
| `endif |
| `ifdef RANDOMIZE_INVALID_ASSIGN |
| `define RANDOMIZE |
| `endif |
| `ifdef RANDOMIZE_REG_INIT |
| `define RANDOMIZE |
| `endif |
| `ifdef RANDOMIZE_MEM_INIT |
| `define RANDOMIZE |
| `endif |
| `ifndef RANDOM |
| `define RANDOM $random |
| `endif |
| `ifdef RANDOMIZE_MEM_INIT |
| integer initvar; |
| `endif |
| `ifndef SYNTHESIS |
| `ifdef FIRRTL_BEFORE_INITIAL |
| `FIRRTL_BEFORE_INITIAL |
| `endif |
| initial begin |
| `ifdef RANDOMIZE |
| `ifdef INIT_RANDOM |
| `INIT_RANDOM |
| `endif |
| `ifndef VERILATOR |
| `ifdef RANDOMIZE_DELAY |
| #`RANDOMIZE_DELAY begin end |
| `else |
| #0.002 begin end |
| `endif |
| `endif |
| `ifdef RANDOMIZE_REG_INIT |
| _RAND_0 = {4{`RANDOM}}; |
| reg_0 = _RAND_0[127:0]; |
| _RAND_1 = {4{`RANDOM}}; |
| reg_1 = _RAND_1[127:0]; |
| _RAND_2 = {4{`RANDOM}}; |
| reg_2 = _RAND_2[127:0]; |
| _RAND_3 = {4{`RANDOM}}; |
| reg_3 = _RAND_3[127:0]; |
| _RAND_4 = {4{`RANDOM}}; |
| reg_4 = _RAND_4[127:0]; |
| _RAND_5 = {4{`RANDOM}}; |
| reg_5 = _RAND_5[127:0]; |
| _RAND_6 = {4{`RANDOM}}; |
| reg_6 = _RAND_6[127:0]; |
| _RAND_7 = {4{`RANDOM}}; |
| reg_7 = _RAND_7[127:0]; |
| _RAND_8 = {4{`RANDOM}}; |
| reg_8 = _RAND_8[127:0]; |
| _RAND_9 = {4{`RANDOM}}; |
| reg_9 = _RAND_9[127:0]; |
| _RAND_10 = {4{`RANDOM}}; |
| reg_10 = _RAND_10[127:0]; |
| _RAND_11 = {4{`RANDOM}}; |
| reg_11 = _RAND_11[127:0]; |
| _RAND_12 = {4{`RANDOM}}; |
| reg_12 = _RAND_12[127:0]; |
| _RAND_13 = {4{`RANDOM}}; |
| reg_13 = _RAND_13[127:0]; |
| _RAND_14 = {4{`RANDOM}}; |
| reg_14 = _RAND_14[127:0]; |
| `endif // RANDOMIZE_REG_INIT |
| `endif // RANDOMIZE |
| end // initial |
| `ifdef FIRRTL_AFTER_INITIAL |
| `FIRRTL_AFTER_INITIAL |
| `endif |
| `endif // SYNTHESIS |
| always @(posedge clock) begin |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_0 <= reg_1; |
| end else if (io_cyc) begin |
| if (3'h0 == _T) begin |
| reg_0 <= reg_14; |
| end |
| end else begin |
| reg_0 <= io_input; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_1 <= reg_2; |
| end else if (io_cyc) begin |
| if (3'h1 == _T) begin |
| reg_1 <= reg_14; |
| end else begin |
| reg_1 <= reg_0; |
| end |
| end else begin |
| reg_1 <= reg_0; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_2 <= reg_3; |
| end else if (io_cyc) begin |
| if (3'h2 == _T) begin |
| reg_2 <= reg_14; |
| end else begin |
| reg_2 <= reg_1; |
| end |
| end else begin |
| reg_2 <= reg_1; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_3 <= reg_4; |
| end else if (io_cyc) begin |
| if (3'h3 == _T) begin |
| reg_3 <= reg_14; |
| end else begin |
| reg_3 <= reg_2; |
| end |
| end else begin |
| reg_3 <= reg_2; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_4 <= reg_5; |
| end else if (io_cyc) begin |
| if (3'h4 == _T) begin |
| reg_4 <= reg_14; |
| end else begin |
| reg_4 <= reg_3; |
| end |
| end else begin |
| reg_4 <= reg_3; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_5 <= reg_6; |
| end else if (io_cyc) begin |
| if (3'h5 == _T) begin |
| reg_5 <= reg_14; |
| end else begin |
| reg_5 <= reg_4; |
| end |
| end else begin |
| reg_5 <= reg_4; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_6 <= reg_7; |
| end else if (io_cyc) begin |
| if (3'h6 == _T) begin |
| reg_6 <= reg_14; |
| end else begin |
| reg_6 <= reg_5; |
| end |
| end else begin |
| reg_6 <= reg_5; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_7 <= reg_8; |
| end else if (io_cyc) begin |
| if (3'h7 == _T) begin |
| reg_7 <= reg_14; |
| end else begin |
| reg_7 <= reg_6; |
| end |
| end else begin |
| reg_7 <= reg_6; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_8 <= reg_9; |
| end else if (io_cyc) begin |
| if (4'h8 == _GEN_75) begin |
| reg_8 <= reg_14; |
| end else begin |
| reg_8 <= reg_7; |
| end |
| end else begin |
| reg_8 <= reg_7; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_9 <= reg_10; |
| end else if (io_cyc) begin |
| if (4'h9 == _GEN_75) begin |
| reg_9 <= reg_14; |
| end else begin |
| reg_9 <= reg_8; |
| end |
| end else begin |
| reg_9 <= reg_8; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_10 <= reg_11; |
| end else if (io_cyc) begin |
| if (4'ha == _GEN_75) begin |
| reg_10 <= reg_14; |
| end else begin |
| reg_10 <= reg_9; |
| end |
| end else begin |
| reg_10 <= reg_9; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_11 <= reg_12; |
| end else if (io_cyc) begin |
| if (4'hb == _GEN_75) begin |
| reg_11 <= reg_14; |
| end else begin |
| reg_11 <= reg_10; |
| end |
| end else begin |
| reg_11 <= reg_10; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_12 <= reg_13; |
| end else if (io_cyc) begin |
| if (4'hc == _GEN_75) begin |
| reg_12 <= reg_14; |
| end else begin |
| reg_12 <= reg_11; |
| end |
| end else begin |
| reg_12 <= reg_11; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| reg_13 <= reg_14; |
| end else if (io_cyc) begin |
| if (4'hd == _GEN_75) begin |
| reg_13 <= reg_14; |
| end else begin |
| reg_13 <= reg_12; |
| end |
| end else begin |
| reg_13 <= reg_12; |
| end |
| end |
| if (io_enable) begin |
| if (io_rev) begin |
| if (!(4'he == _GEN_75)) begin |
| if (4'hd == _GEN_75) begin |
| reg_14 <= reg_13; |
| end else if (4'hc == _GEN_75) begin |
| reg_14 <= reg_12; |
| end else if (4'hb == _GEN_75) begin |
| reg_14 <= reg_11; |
| end else if (4'ha == _GEN_75) begin |
| reg_14 <= reg_10; |
| end else if (4'h9 == _GEN_75) begin |
| reg_14 <= reg_9; |
| end else if (4'h8 == _GEN_75) begin |
| reg_14 <= reg_8; |
| end else if (3'h7 == _T) begin |
| reg_14 <= reg_7; |
| end else if (3'h6 == _T) begin |
| reg_14 <= reg_6; |
| end else if (3'h5 == _T) begin |
| reg_14 <= reg_5; |
| end else if (3'h4 == _T) begin |
| reg_14 <= reg_4; |
| end else if (3'h3 == _T) begin |
| reg_14 <= reg_3; |
| end else if (3'h2 == _T) begin |
| reg_14 <= reg_2; |
| end else if (3'h1 == _T) begin |
| reg_14 <= reg_1; |
| end else begin |
| reg_14 <= reg_0; |
| end |
| end |
| end else if (io_cyc) begin |
| if (!(4'he == _GEN_75)) begin |
| reg_14 <= reg_13; |
| end |
| end else begin |
| reg_14 <= reg_13; |
| end |
| end |
| end |
| endmodule |
| module MixColsModule( |
| input [7:0] io_in_0_0, |
| input [7:0] io_in_0_1, |
| input [7:0] io_in_0_2, |
| input [7:0] io_in_0_3, |
| input [7:0] io_in_1_0, |
| input [7:0] io_in_1_1, |
| input [7:0] io_in_1_2, |
| input [7:0] io_in_1_3, |
| input [7:0] io_in_2_0, |
| input [7:0] io_in_2_1, |
| input [7:0] io_in_2_2, |
| input [7:0] io_in_2_3, |
| input [7:0] io_in_3_0, |
| input [7:0] io_in_3_1, |
| input [7:0] io_in_3_2, |
| input [7:0] io_in_3_3, |
| output [7:0] io_out_0_0, |
| output [7:0] io_out_0_1, |
| output [7:0] io_out_0_2, |
| output [7:0] io_out_0_3, |
| output [7:0] io_out_1_0, |
| output [7:0] io_out_1_1, |
| output [7:0] io_out_1_2, |
| output [7:0] io_out_1_3, |
| output [7:0] io_out_2_0, |
| output [7:0] io_out_2_1, |
| output [7:0] io_out_2_2, |
| output [7:0] io_out_2_3, |
| output [7:0] io_out_3_0, |
| output [7:0] io_out_3_1, |
| output [7:0] io_out_3_2, |
| output [7:0] io_out_3_3 |
| ); |
| wire [7:0] _T = io_in_0_0 ^ io_in_0_1; // @[AesComponents.scala 30:29] |
| wire [7:0] _T_1 = _T ^ io_in_0_2; // @[AesComponents.scala 30:43] |
| wire [7:0] _T_2 = _T_1 ^ io_in_0_3; // @[AesComponents.scala 30:57] |
| wire [7:0] _T_3 = io_in_0_0 ^ _T_2; // @[AesComponents.scala 31:37] |
| wire [7:0] _T_5 = _T & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_6 = _T_5 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_7 = {_T, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_8 = _T_7 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_9 = _T_8 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_11 = _T_6 ? _T_9 : _T_7; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_0 = {{1'd0}, _T_3}; // @[AesComponents.scala 31:41] |
| wire [8:0] _T_12 = _GEN_0 ^ _T_11; // @[AesComponents.scala 31:41] |
| wire [7:0] _T_13 = io_in_0_1 ^ _T_2; // @[AesComponents.scala 32:37] |
| wire [7:0] _T_14 = io_in_0_1 ^ io_in_0_2; // @[AesComponents.scala 32:64] |
| wire [7:0] _T_15 = _T_14 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_16 = _T_15 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_17 = {_T_14, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_18 = _T_17 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_19 = _T_18 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_21 = _T_16 ? _T_19 : _T_17; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_1 = {{1'd0}, _T_13}; // @[AesComponents.scala 32:41] |
| wire [8:0] _T_22 = _GEN_1 ^ _T_21; // @[AesComponents.scala 32:41] |
| wire [7:0] _T_23 = io_in_0_2 ^ _T_2; // @[AesComponents.scala 33:37] |
| wire [7:0] _T_24 = io_in_0_2 ^ io_in_0_3; // @[AesComponents.scala 33:64] |
| wire [7:0] _T_25 = _T_24 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_26 = _T_25 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_27 = {_T_24, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_28 = _T_27 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_29 = _T_28 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_31 = _T_26 ? _T_29 : _T_27; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_2 = {{1'd0}, _T_23}; // @[AesComponents.scala 33:41] |
| wire [8:0] _T_32 = _GEN_2 ^ _T_31; // @[AesComponents.scala 33:41] |
| wire [7:0] _T_33 = io_in_0_3 ^ _T_2; // @[AesComponents.scala 34:37] |
| wire [7:0] _T_34 = io_in_0_3 ^ io_in_0_0; // @[AesComponents.scala 34:64] |
| wire [7:0] _T_35 = _T_34 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_36 = _T_35 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_37 = {_T_34, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_38 = _T_37 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_39 = _T_38 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_41 = _T_36 ? _T_39 : _T_37; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_3 = {{1'd0}, _T_33}; // @[AesComponents.scala 34:41] |
| wire [8:0] _T_42 = _GEN_3 ^ _T_41; // @[AesComponents.scala 34:41] |
| wire [7:0] _T_43 = io_in_1_0 ^ io_in_1_1; // @[AesComponents.scala 30:29] |
| wire [7:0] _T_44 = _T_43 ^ io_in_1_2; // @[AesComponents.scala 30:43] |
| wire [7:0] _T_45 = _T_44 ^ io_in_1_3; // @[AesComponents.scala 30:57] |
| wire [7:0] _T_46 = io_in_1_0 ^ _T_45; // @[AesComponents.scala 31:37] |
| wire [7:0] _T_48 = _T_43 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_49 = _T_48 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_50 = {_T_43, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_51 = _T_50 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_52 = _T_51 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_54 = _T_49 ? _T_52 : _T_50; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_4 = {{1'd0}, _T_46}; // @[AesComponents.scala 31:41] |
| wire [8:0] _T_55 = _GEN_4 ^ _T_54; // @[AesComponents.scala 31:41] |
| wire [7:0] _T_56 = io_in_1_1 ^ _T_45; // @[AesComponents.scala 32:37] |
| wire [7:0] _T_57 = io_in_1_1 ^ io_in_1_2; // @[AesComponents.scala 32:64] |
| wire [7:0] _T_58 = _T_57 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_59 = _T_58 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_60 = {_T_57, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_61 = _T_60 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_62 = _T_61 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_64 = _T_59 ? _T_62 : _T_60; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_5 = {{1'd0}, _T_56}; // @[AesComponents.scala 32:41] |
| wire [8:0] _T_65 = _GEN_5 ^ _T_64; // @[AesComponents.scala 32:41] |
| wire [7:0] _T_66 = io_in_1_2 ^ _T_45; // @[AesComponents.scala 33:37] |
| wire [7:0] _T_67 = io_in_1_2 ^ io_in_1_3; // @[AesComponents.scala 33:64] |
| wire [7:0] _T_68 = _T_67 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_69 = _T_68 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_70 = {_T_67, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_71 = _T_70 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_72 = _T_71 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_74 = _T_69 ? _T_72 : _T_70; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_6 = {{1'd0}, _T_66}; // @[AesComponents.scala 33:41] |
| wire [8:0] _T_75 = _GEN_6 ^ _T_74; // @[AesComponents.scala 33:41] |
| wire [7:0] _T_76 = io_in_1_3 ^ _T_45; // @[AesComponents.scala 34:37] |
| wire [7:0] _T_77 = io_in_1_3 ^ io_in_1_0; // @[AesComponents.scala 34:64] |
| wire [7:0] _T_78 = _T_77 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_79 = _T_78 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_80 = {_T_77, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_81 = _T_80 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_82 = _T_81 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_84 = _T_79 ? _T_82 : _T_80; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_7 = {{1'd0}, _T_76}; // @[AesComponents.scala 34:41] |
| wire [8:0] _T_85 = _GEN_7 ^ _T_84; // @[AesComponents.scala 34:41] |
| wire [7:0] _T_86 = io_in_2_0 ^ io_in_2_1; // @[AesComponents.scala 30:29] |
| wire [7:0] _T_87 = _T_86 ^ io_in_2_2; // @[AesComponents.scala 30:43] |
| wire [7:0] _T_88 = _T_87 ^ io_in_2_3; // @[AesComponents.scala 30:57] |
| wire [7:0] _T_89 = io_in_2_0 ^ _T_88; // @[AesComponents.scala 31:37] |
| wire [7:0] _T_91 = _T_86 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_92 = _T_91 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_93 = {_T_86, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_94 = _T_93 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_95 = _T_94 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_97 = _T_92 ? _T_95 : _T_93; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_8 = {{1'd0}, _T_89}; // @[AesComponents.scala 31:41] |
| wire [8:0] _T_98 = _GEN_8 ^ _T_97; // @[AesComponents.scala 31:41] |
| wire [7:0] _T_99 = io_in_2_1 ^ _T_88; // @[AesComponents.scala 32:37] |
| wire [7:0] _T_100 = io_in_2_1 ^ io_in_2_2; // @[AesComponents.scala 32:64] |
| wire [7:0] _T_101 = _T_100 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_102 = _T_101 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_103 = {_T_100, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_104 = _T_103 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_105 = _T_104 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_107 = _T_102 ? _T_105 : _T_103; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_9 = {{1'd0}, _T_99}; // @[AesComponents.scala 32:41] |
| wire [8:0] _T_108 = _GEN_9 ^ _T_107; // @[AesComponents.scala 32:41] |
| wire [7:0] _T_109 = io_in_2_2 ^ _T_88; // @[AesComponents.scala 33:37] |
| wire [7:0] _T_110 = io_in_2_2 ^ io_in_2_3; // @[AesComponents.scala 33:64] |
| wire [7:0] _T_111 = _T_110 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_112 = _T_111 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_113 = {_T_110, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_114 = _T_113 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_115 = _T_114 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_117 = _T_112 ? _T_115 : _T_113; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_10 = {{1'd0}, _T_109}; // @[AesComponents.scala 33:41] |
| wire [8:0] _T_118 = _GEN_10 ^ _T_117; // @[AesComponents.scala 33:41] |
| wire [7:0] _T_119 = io_in_2_3 ^ _T_88; // @[AesComponents.scala 34:37] |
| wire [7:0] _T_120 = io_in_2_3 ^ io_in_2_0; // @[AesComponents.scala 34:64] |
| wire [7:0] _T_121 = _T_120 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_122 = _T_121 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_123 = {_T_120, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_124 = _T_123 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_125 = _T_124 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_127 = _T_122 ? _T_125 : _T_123; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_11 = {{1'd0}, _T_119}; // @[AesComponents.scala 34:41] |
| wire [8:0] _T_128 = _GEN_11 ^ _T_127; // @[AesComponents.scala 34:41] |
| wire [7:0] _T_129 = io_in_3_0 ^ io_in_3_1; // @[AesComponents.scala 30:29] |
| wire [7:0] _T_130 = _T_129 ^ io_in_3_2; // @[AesComponents.scala 30:43] |
| wire [7:0] _T_131 = _T_130 ^ io_in_3_3; // @[AesComponents.scala 30:57] |
| wire [7:0] _T_132 = io_in_3_0 ^ _T_131; // @[AesComponents.scala 31:37] |
| wire [7:0] _T_134 = _T_129 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_135 = _T_134 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_136 = {_T_129, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_137 = _T_136 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_138 = _T_137 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_140 = _T_135 ? _T_138 : _T_136; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_12 = {{1'd0}, _T_132}; // @[AesComponents.scala 31:41] |
| wire [8:0] _T_141 = _GEN_12 ^ _T_140; // @[AesComponents.scala 31:41] |
| wire [7:0] _T_142 = io_in_3_1 ^ _T_131; // @[AesComponents.scala 32:37] |
| wire [7:0] _T_143 = io_in_3_1 ^ io_in_3_2; // @[AesComponents.scala 32:64] |
| wire [7:0] _T_144 = _T_143 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_145 = _T_144 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_146 = {_T_143, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_147 = _T_146 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_148 = _T_147 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_150 = _T_145 ? _T_148 : _T_146; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_13 = {{1'd0}, _T_142}; // @[AesComponents.scala 32:41] |
| wire [8:0] _T_151 = _GEN_13 ^ _T_150; // @[AesComponents.scala 32:41] |
| wire [7:0] _T_152 = io_in_3_2 ^ _T_131; // @[AesComponents.scala 33:37] |
| wire [7:0] _T_153 = io_in_3_2 ^ io_in_3_3; // @[AesComponents.scala 33:64] |
| wire [7:0] _T_154 = _T_153 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_155 = _T_154 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_156 = {_T_153, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_157 = _T_156 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_158 = _T_157 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_160 = _T_155 ? _T_158 : _T_156; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_14 = {{1'd0}, _T_152}; // @[AesComponents.scala 33:41] |
| wire [8:0] _T_161 = _GEN_14 ^ _T_160; // @[AesComponents.scala 33:41] |
| wire [7:0] _T_162 = io_in_3_3 ^ _T_131; // @[AesComponents.scala 34:37] |
| wire [7:0] _T_163 = io_in_3_3 ^ io_in_3_0; // @[AesComponents.scala 34:64] |
| wire [7:0] _T_164 = _T_163 & 8'h80; // @[AesComponents.scala 88:42] |
| wire _T_165 = _T_164 != 8'h0; // @[AesComponents.scala 88:52] |
| wire [8:0] _T_166 = {_T_163, 1'h0}; // @[AesComponents.scala 88:65] |
| wire [8:0] _T_167 = _T_166 ^ 9'h1b; // @[AesComponents.scala 88:78] |
| wire [8:0] _T_168 = _T_167 & 9'hff; // @[AesComponents.scala 88:88] |
| wire [8:0] _T_170 = _T_165 ? _T_168 : _T_166; // @[AesComponents.scala 88:38] |
| wire [8:0] _GEN_15 = {{1'd0}, _T_162}; // @[AesComponents.scala 34:41] |
| wire [8:0] _T_171 = _GEN_15 ^ _T_170; // @[AesComponents.scala 34:41] |
| assign io_out_0_0 = _T_12[7:0]; // @[AesComponents.scala 31:22] |
| assign io_out_0_1 = _T_22[7:0]; // @[AesComponents.scala 32:22] |
| assign io_out_0_2 = _T_32[7:0]; // @[AesComponents.scala 33:22] |
| assign io_out_0_3 = _T_42[7:0]; // @[AesComponents.scala 34:22] |
| assign io_out_1_0 = _T_55[7:0]; // @[AesComponents.scala 31:22] |
| assign io_out_1_1 = _T_65[7:0]; // @[AesComponents.scala 32:22] |
| assign io_out_1_2 = _T_75[7:0]; // @[AesComponents.scala 33:22] |
| assign io_out_1_3 = _T_85[7:0]; // @[AesComponents.scala 34:22] |
| assign io_out_2_0 = _T_98[7:0]; // @[AesComponents.scala 31:22] |
| assign io_out_2_1 = _T_108[7:0]; // @[AesComponents.scala 32:22] |
| assign io_out_2_2 = _T_118[7:0]; // @[AesComponents.scala 33:22] |
| assign io_out_2_3 = _T_128[7:0]; // @[AesComponents.scala 34:22] |
| assign io_out_3_0 = _T_141[7:0]; // @[AesComponents.scala 31:22] |
| assign io_out_3_1 = _T_151[7:0]; // @[AesComponents.scala 32:22] |
| assign io_out_3_2 = _T_161[7:0]; // @[AesComponents.scala 33:22] |
| assign io_out_3_3 = _T_171[7:0]; // @[AesComponents.scala 34:22] |
| endmodule |
| module AesEncrypt( |
| input clock, |
| input reset, |
| input [127:0] io_dataIn, |
| input [127:0] io_ivIn, |
| input io_dataValid, |
| input [7:0] io_keys_0_0_0, |
| input [7:0] io_keys_0_0_1, |
| input [7:0] io_keys_0_0_2, |
| input [7:0] io_keys_0_0_3, |
| input [7:0] io_keys_0_1_0, |
| input [7:0] io_keys_0_1_1, |
| input [7:0] io_keys_0_1_2, |
| input [7:0] io_keys_0_1_3, |
| input [7:0] io_keys_0_2_0, |
| input [7:0] io_keys_0_2_1, |
| input [7:0] io_keys_0_2_2, |
| input [7:0] io_keys_0_2_3, |
| input [7:0] io_keys_0_3_0, |
| input [7:0] io_keys_0_3_1, |
| input [7:0] io_keys_0_3_2, |
| input [7:0] io_keys_0_3_3, |
| input io_aes256, |
| output io_shiftCyc, |
| output io_shift, |
| output io_ready, |
| output [127:0] io_dataOut, |
| output [127:0] io_ivOut, |
| output io_outputValid |
| ); |
| `ifdef RANDOMIZE_REG_INIT |
| reg [31:0] _RAND_0; |
| reg [31:0] _RAND_1; |
| reg [31:0] _RAND_2; |
| reg [31:0] _RAND_3; |
| reg [31:0] _RAND_4; |
| reg [31:0] _RAND_5; |
| reg [31:0] _RAND_6; |
| reg [31:0] _RAND_7; |
| reg [31:0] _RAND_8; |
| reg [31:0] _RAND_9; |
| reg [31:0] _RAND_10; |
| reg [31:0] _RAND_11; |
| reg [31:0] _RAND_12; |
| reg [31:0] _RAND_13; |
| reg [31:0] _RAND_14; |
| reg [31:0] _RAND_15; |
| reg [31:0] _RAND_16; |
| `endif // RANDOMIZE_REG_INIT |
| wire [7:0] MixColsModule_io_in_0_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_0_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_0_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_0_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_3; // @[AesComponents.scala 91:35] |
| reg [5:0] state; // @[AesEncrypt.scala 54:24] |
| wire _T = state == 6'h0; // @[AesEncrypt.scala 56:24] |
| wire _T_1 = state == 6'h1; // @[AesEncrypt.scala 56:43] |
| wire _T_2 = _T | _T_1; // @[AesEncrypt.scala 56:33] |
| wire _T_3 = state == 6'h1e; // @[AesEncrypt.scala 56:62] |
| wire _T_6 = ~io_ready; // @[AesEncrypt.scala 59:31] |
| reg [7:0] matrix_0_0; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_0_1; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_0_2; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_0_3; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_1_0; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_1_1; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_1_2; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_1_3; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_2_0; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_2_1; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_2_2; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_2_3; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_3_0; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_3_1; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_3_2; // @[AesEncrypt.scala 63:21] |
| reg [7:0] matrix_3_3; // @[AesEncrypt.scala 63:21] |
| wire [63:0] _T_16 = {matrix_2_0,matrix_2_1,matrix_2_2,matrix_2_3,matrix_3_0,matrix_3_1,matrix_3_2,matrix_3_3}; // @[Cat.scala 29:58] |
| wire [63:0] _T_23 = {matrix_0_0,matrix_0_1,matrix_0_2,matrix_0_3,matrix_1_0,matrix_1_1,matrix_1_2,matrix_1_3}; // @[Cat.scala 29:58] |
| wire [127:0] _T_25 = io_dataIn ^ io_ivIn; // @[AesEncrypt.scala 69:38] |
| wire [63:0] _T_32 = {io_keys_0_2_0,io_keys_0_2_1,io_keys_0_2_2,io_keys_0_2_3,io_keys_0_3_0,io_keys_0_3_1,io_keys_0_3_2,io_keys_0_3_3}; // @[Cat.scala 29:58] |
| wire [127:0] _T_40 = {io_keys_0_0_0,io_keys_0_0_1,io_keys_0_0_2,io_keys_0_0_3,io_keys_0_1_0,io_keys_0_1_1,io_keys_0_1_2,io_keys_0_1_3,_T_32}; // @[Cat.scala 29:58] |
| wire [127:0] _T_41 = _T_25 ^ _T_40; // @[AesEncrypt.scala 69:48] |
| wire [7:0] initOut_0_0 = _T_41[127:120]; // @[AesComponents.scala 43:25] |
| wire [7:0] initOut_0_1 = _T_41[119:112]; // @[AesComponents.scala 43:45] |
| wire [7:0] initOut_0_2 = _T_41[111:104]; // @[AesComponents.scala 43:65] |
| wire [7:0] initOut_0_3 = _T_41[103:96]; // @[AesComponents.scala 43:85] |
| wire [7:0] initOut_1_0 = _T_41[95:88]; // @[AesComponents.scala 44:25] |
| wire [7:0] initOut_1_1 = _T_41[87:80]; // @[AesComponents.scala 44:45] |
| wire [7:0] initOut_1_2 = _T_41[79:72]; // @[AesComponents.scala 44:65] |
| wire [7:0] initOut_1_3 = _T_41[71:64]; // @[AesComponents.scala 44:85] |
| wire [7:0] initOut_2_0 = _T_41[63:56]; // @[AesComponents.scala 45:25] |
| wire [7:0] initOut_2_1 = _T_41[55:48]; // @[AesComponents.scala 45:45] |
| wire [7:0] initOut_2_2 = _T_41[47:40]; // @[AesComponents.scala 45:65] |
| wire [7:0] initOut_2_3 = _T_41[39:32]; // @[AesComponents.scala 45:85] |
| wire [7:0] initOut_3_0 = _T_41[31:24]; // @[AesComponents.scala 46:25] |
| wire [7:0] initOut_3_1 = _T_41[23:16]; // @[AesComponents.scala 46:45] |
| wire [7:0] initOut_3_2 = _T_41[15:8]; // @[AesComponents.scala 46:65] |
| wire [7:0] initOut_3_3 = _T_41[7:0]; // @[AesComponents.scala 46:85] |
| wire _T_79 = matrix_0_0[1] ^ matrix_0_0[3]; // @[AesSbox.scala 40:63] |
| wire _T_81 = matrix_0_0[4] ^ matrix_0_0[7]; // @[AesSbox.scala 40:63] |
| wire _T_83 = matrix_0_0[6] ^ matrix_0_0[5]; // @[AesSbox.scala 40:63] |
| wire _T_85 = matrix_0_0[0] ^ _T_83; // @[AesSbox.scala 40:63] |
| wire _T_87 = _T_79 ^ _T_81; // @[AesSbox.scala 40:63] |
| wire _T_89 = matrix_0_0[6] ^ matrix_0_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_91 = matrix_0_0[7] ^ matrix_0_0[1]; // @[AesSbox.scala 40:63] |
| wire _T_93 = _T_79 ^ _T_89; // @[AesSbox.scala 40:63] |
| wire _T_95 = matrix_0_0[1] ^ _T_85; // @[AesSbox.scala 40:63] |
| wire _T_97 = matrix_0_0[4] ^ _T_85; // @[AesSbox.scala 40:63] |
| wire _T_99 = matrix_0_0[0] ^ _T_87; // @[AesSbox.scala 40:63] |
| wire _T_101 = _T_87 ^ _T_89; // @[AesSbox.scala 40:63] |
| wire _T_103 = matrix_0_0[5] ^ matrix_0_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_105 = _T_83 ^ _T_87; // @[AesSbox.scala 40:63] |
| wire _T_107 = matrix_0_0[2] ^ _T_91; // @[AesSbox.scala 40:63] |
| wire _T_109 = matrix_0_0[7] ^ matrix_0_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_111 = matrix_0_0[0] ^ _T_93; // @[AesSbox.scala 40:63] |
| wire _T_113 = matrix_0_0[1] ^ matrix_0_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_115 = _T_81 ^ _T_113; // @[AesSbox.scala 40:63] |
| wire _T_117 = _T_85 ^ _T_107; // @[AesSbox.scala 40:63] |
| wire _T_119 = _T_79 ^ _T_103; // @[AesSbox.scala 40:63] |
| wire _T_121 = matrix_0_0[7] ^ _T_85; // @[AesSbox.scala 40:63] |
| wire _T_123 = _T_119 ^ _T_87; // @[AesSbox.scala 40:63] |
| wire _T_125 = _T_119 ^ _T_91; // @[AesSbox.scala 40:63] |
| wire _T_127 = _T_91 ^ _T_115; // @[AesSbox.scala 40:63] |
| wire _T_129 = _T_109 ^ _T_105; // @[AesSbox.scala 40:63] |
| wire _T_131 = _T_121 ^ _T_111; // @[AesSbox.scala 40:63] |
| wire _T_133 = _T_115 & _T_87; // @[AesSbox.scala 41:63] |
| wire _T_135 = _T_117 & _T_99; // @[AesSbox.scala 41:63] |
| wire _T_137 = _T_101 ^ _T_133; // @[AesSbox.scala 40:63] |
| wire _T_139 = _T_97 & matrix_0_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_141 = _T_139 ^ _T_133; // @[AesSbox.scala 40:63] |
| wire _T_143 = _T_91 & _T_119; // @[AesSbox.scala 41:63] |
| wire _T_145 = _T_95 & _T_85; // @[AesSbox.scala 41:63] |
| wire _T_147 = _T_125 ^ _T_143; // @[AesSbox.scala 40:63] |
| wire _T_149 = _T_121 & _T_111; // @[AesSbox.scala 41:63] |
| wire _T_151 = _T_149 ^ _T_143; // @[AesSbox.scala 40:63] |
| wire _T_153 = _T_81 & _T_93; // @[AesSbox.scala 41:63] |
| wire _T_155 = _T_127 & _T_123; // @[AesSbox.scala 41:63] |
| wire _T_157 = _T_155 ^ _T_153; // @[AesSbox.scala 40:63] |
| wire _T_159 = _T_109 & _T_105; // @[AesSbox.scala 41:63] |
| wire _T_161 = _T_159 ^ _T_153; // @[AesSbox.scala 40:63] |
| wire _T_163 = _T_137 ^ _T_135; // @[AesSbox.scala 40:63] |
| wire _T_165 = _T_141 ^ _T_129; // @[AesSbox.scala 40:63] |
| wire _T_167 = _T_147 ^ _T_145; // @[AesSbox.scala 40:63] |
| wire _T_169 = _T_151 ^ _T_161; // @[AesSbox.scala 40:63] |
| wire _T_171 = _T_163 ^ _T_157; // @[AesSbox.scala 40:63] |
| wire _T_173 = _T_165 ^ _T_161; // @[AesSbox.scala 40:63] |
| wire _T_175 = _T_167 ^ _T_157; // @[AesSbox.scala 40:63] |
| wire _T_177 = _T_169 ^ _T_131; // @[AesSbox.scala 40:63] |
| wire _T_179 = _T_175 ^ _T_177; // @[AesSbox.scala 40:63] |
| wire _T_181 = _T_175 & _T_171; // @[AesSbox.scala 41:63] |
| wire _T_183 = _T_173 ^ _T_181; // @[AesSbox.scala 40:63] |
| wire _T_185 = _T_171 ^ _T_173; // @[AesSbox.scala 40:63] |
| wire _T_187 = _T_177 ^ _T_181; // @[AesSbox.scala 40:63] |
| wire _T_189 = _T_187 & _T_185; // @[AesSbox.scala 41:63] |
| wire _T_191 = _T_183 & _T_179; // @[AesSbox.scala 41:63] |
| wire _T_193 = _T_171 & _T_177; // @[AesSbox.scala 41:63] |
| wire _T_195 = _T_185 & _T_193; // @[AesSbox.scala 41:63] |
| wire _T_197 = _T_185 ^ _T_181; // @[AesSbox.scala 40:63] |
| wire _T_199 = _T_173 & _T_175; // @[AesSbox.scala 41:63] |
| wire _T_201 = _T_179 & _T_199; // @[AesSbox.scala 41:63] |
| wire _T_203 = _T_179 ^ _T_181; // @[AesSbox.scala 40:63] |
| wire _T_205 = _T_173 ^ _T_189; // @[AesSbox.scala 40:63] |
| wire _T_207 = _T_195 ^ _T_197; // @[AesSbox.scala 40:63] |
| wire _T_209 = _T_177 ^ _T_191; // @[AesSbox.scala 40:63] |
| wire _T_211 = _T_201 ^ _T_203; // @[AesSbox.scala 40:63] |
| wire _T_213 = _T_207 ^ _T_211; // @[AesSbox.scala 40:63] |
| wire _T_215 = _T_205 ^ _T_209; // @[AesSbox.scala 40:63] |
| wire _T_217 = _T_205 ^ _T_207; // @[AesSbox.scala 40:63] |
| wire _T_219 = _T_209 ^ _T_211; // @[AesSbox.scala 40:63] |
| wire _T_221 = _T_215 ^ _T_213; // @[AesSbox.scala 40:63] |
| wire _T_223 = _T_219 & _T_87; // @[AesSbox.scala 41:63] |
| wire _T_225 = _T_211 & _T_99; // @[AesSbox.scala 41:63] |
| wire _T_227 = _T_209 & matrix_0_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_229 = _T_217 & _T_119; // @[AesSbox.scala 41:63] |
| wire _T_231 = _T_207 & _T_85; // @[AesSbox.scala 41:63] |
| wire _T_233 = _T_205 & _T_111; // @[AesSbox.scala 41:63] |
| wire _T_235 = _T_215 & _T_93; // @[AesSbox.scala 41:63] |
| wire _T_237 = _T_221 & _T_123; // @[AesSbox.scala 41:63] |
| wire _T_239 = _T_213 & _T_105; // @[AesSbox.scala 41:63] |
| wire _T_241 = _T_219 & _T_115; // @[AesSbox.scala 41:63] |
| wire _T_243 = _T_211 & _T_117; // @[AesSbox.scala 41:63] |
| wire _T_245 = _T_209 & _T_97; // @[AesSbox.scala 41:63] |
| wire _T_247 = _T_217 & _T_91; // @[AesSbox.scala 41:63] |
| wire _T_249 = _T_207 & _T_95; // @[AesSbox.scala 41:63] |
| wire _T_251 = _T_205 & _T_121; // @[AesSbox.scala 41:63] |
| wire _T_253 = _T_215 & _T_81; // @[AesSbox.scala 41:63] |
| wire _T_255 = _T_221 & _T_127; // @[AesSbox.scala 41:63] |
| wire _T_257 = _T_213 & _T_109; // @[AesSbox.scala 41:63] |
| wire _T_259 = _T_253 ^ _T_255; // @[AesSbox.scala 40:63] |
| wire _T_261 = _T_231 ^ _T_243; // @[AesSbox.scala 40:63] |
| wire _T_263 = _T_237 ^ _T_259; // @[AesSbox.scala 40:63] |
| wire _T_265 = _T_241 ^ _T_261; // @[AesSbox.scala 40:63] |
| wire _T_267 = _T_227 ^ _T_247; // @[AesSbox.scala 40:63] |
| wire _T_269 = _T_223 ^ _T_229; // @[AesSbox.scala 40:63] |
| wire _T_271 = _T_259 ^ _T_269; // @[AesSbox.scala 40:63] |
| wire _T_273 = _T_225 ^ _T_265; // @[AesSbox.scala 40:63] |
| wire _T_275 = _T_223 ^ _T_235; // @[AesSbox.scala 40:63] |
| wire _T_277 = _T_233 ^ _T_249; // @[AesSbox.scala 40:63] |
| wire _T_279 = _T_239 ^ _T_251; // @[AesSbox.scala 40:63] |
| wire _T_281 = _T_227 ^ _T_273; // @[AesSbox.scala 40:63] |
| wire _T_283 = _T_267 ^ _T_279; // @[AesSbox.scala 40:63] |
| wire _T_285 = _T_245 ^ _T_261; // @[AesSbox.scala 40:63] |
| wire _T_287 = _T_229 ^ _T_235; // @[AesSbox.scala 40:63] |
| wire _T_289 = _T_265 ^ _T_287; // @[AesSbox.scala 40:63] |
| wire _T_291 = _T_257 ^ _T_283; // @[AesSbox.scala 40:63] |
| wire _T_293 = _T_253 ^ _T_275; // @[AesSbox.scala 40:63] |
| wire _T_295 = _T_267 ^ _T_277; // @[AesSbox.scala 40:63] |
| wire _T_296 = _T_263 ^ _T_289; // @[AesSbox.scala 40:63] |
| wire _T_297 = _T_291 ^ _T_293; // @[AesSbox.scala 42:65] |
| wire _T_298 = ~_T_297; // @[AesSbox.scala 42:51] |
| wire _T_300 = _T_233 ^ _T_259; // @[AesSbox.scala 40:63] |
| wire _T_301 = _T_271 ^ _T_273; // @[AesSbox.scala 40:63] |
| wire _T_302 = _T_281 ^ _T_300; // @[AesSbox.scala 40:63] |
| wire _T_304 = _T_231 ^ _T_247; // @[AesSbox.scala 40:63] |
| wire _T_306 = _T_269 ^ _T_285; // @[AesSbox.scala 40:63] |
| wire _T_307 = _T_271 ^ _T_295; // @[AesSbox.scala 42:65] |
| wire _T_308 = ~_T_307; // @[AesSbox.scala 42:51] |
| wire _T_310 = _T_239 ^ _T_277; // @[AesSbox.scala 40:63] |
| wire _T_312 = _T_304 ^ _T_310; // @[AesSbox.scala 40:63] |
| wire _T_314 = _T_231 ^ _T_275; // @[AesSbox.scala 40:63] |
| wire _T_315 = _T_263 ^ _T_312; // @[AesSbox.scala 42:65] |
| wire _T_316 = ~_T_315; // @[AesSbox.scala 42:51] |
| wire _T_318 = _T_283 ^ _T_306; // @[AesSbox.scala 40:63] |
| wire _T_319 = _T_263 ^ _T_318; // @[AesSbox.scala 40:63] |
| wire _T_321 = _T_273 ^ _T_314; // @[AesSbox.scala 40:63] |
| wire _T_322 = _T_263 ^ _T_321; // @[AesSbox.scala 42:65] |
| wire _T_323 = ~_T_322; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_0_0 = {_T_296,_T_323,_T_298,_T_301,_T_302,_T_319,_T_316,_T_308}; // @[Cat.scala 29:58] |
| wire _T_348 = matrix_0_1[1] ^ matrix_0_1[3]; // @[AesSbox.scala 40:63] |
| wire _T_350 = matrix_0_1[4] ^ matrix_0_1[7]; // @[AesSbox.scala 40:63] |
| wire _T_352 = matrix_0_1[6] ^ matrix_0_1[5]; // @[AesSbox.scala 40:63] |
| wire _T_354 = matrix_0_1[0] ^ _T_352; // @[AesSbox.scala 40:63] |
| wire _T_356 = _T_348 ^ _T_350; // @[AesSbox.scala 40:63] |
| wire _T_358 = matrix_0_1[6] ^ matrix_0_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_360 = matrix_0_1[7] ^ matrix_0_1[1]; // @[AesSbox.scala 40:63] |
| wire _T_362 = _T_348 ^ _T_358; // @[AesSbox.scala 40:63] |
| wire _T_364 = matrix_0_1[1] ^ _T_354; // @[AesSbox.scala 40:63] |
| wire _T_366 = matrix_0_1[4] ^ _T_354; // @[AesSbox.scala 40:63] |
| wire _T_368 = matrix_0_1[0] ^ _T_356; // @[AesSbox.scala 40:63] |
| wire _T_370 = _T_356 ^ _T_358; // @[AesSbox.scala 40:63] |
| wire _T_372 = matrix_0_1[5] ^ matrix_0_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_374 = _T_352 ^ _T_356; // @[AesSbox.scala 40:63] |
| wire _T_376 = matrix_0_1[2] ^ _T_360; // @[AesSbox.scala 40:63] |
| wire _T_378 = matrix_0_1[7] ^ matrix_0_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_380 = matrix_0_1[0] ^ _T_362; // @[AesSbox.scala 40:63] |
| wire _T_382 = matrix_0_1[1] ^ matrix_0_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_384 = _T_350 ^ _T_382; // @[AesSbox.scala 40:63] |
| wire _T_386 = _T_354 ^ _T_376; // @[AesSbox.scala 40:63] |
| wire _T_388 = _T_348 ^ _T_372; // @[AesSbox.scala 40:63] |
| wire _T_390 = matrix_0_1[7] ^ _T_354; // @[AesSbox.scala 40:63] |
| wire _T_392 = _T_388 ^ _T_356; // @[AesSbox.scala 40:63] |
| wire _T_394 = _T_388 ^ _T_360; // @[AesSbox.scala 40:63] |
| wire _T_396 = _T_360 ^ _T_384; // @[AesSbox.scala 40:63] |
| wire _T_398 = _T_378 ^ _T_374; // @[AesSbox.scala 40:63] |
| wire _T_400 = _T_390 ^ _T_380; // @[AesSbox.scala 40:63] |
| wire _T_402 = _T_384 & _T_356; // @[AesSbox.scala 41:63] |
| wire _T_404 = _T_386 & _T_368; // @[AesSbox.scala 41:63] |
| wire _T_406 = _T_370 ^ _T_402; // @[AesSbox.scala 40:63] |
| wire _T_408 = _T_366 & matrix_0_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_410 = _T_408 ^ _T_402; // @[AesSbox.scala 40:63] |
| wire _T_412 = _T_360 & _T_388; // @[AesSbox.scala 41:63] |
| wire _T_414 = _T_364 & _T_354; // @[AesSbox.scala 41:63] |
| wire _T_416 = _T_394 ^ _T_412; // @[AesSbox.scala 40:63] |
| wire _T_418 = _T_390 & _T_380; // @[AesSbox.scala 41:63] |
| wire _T_420 = _T_418 ^ _T_412; // @[AesSbox.scala 40:63] |
| wire _T_422 = _T_350 & _T_362; // @[AesSbox.scala 41:63] |
| wire _T_424 = _T_396 & _T_392; // @[AesSbox.scala 41:63] |
| wire _T_426 = _T_424 ^ _T_422; // @[AesSbox.scala 40:63] |
| wire _T_428 = _T_378 & _T_374; // @[AesSbox.scala 41:63] |
| wire _T_430 = _T_428 ^ _T_422; // @[AesSbox.scala 40:63] |
| wire _T_432 = _T_406 ^ _T_404; // @[AesSbox.scala 40:63] |
| wire _T_434 = _T_410 ^ _T_398; // @[AesSbox.scala 40:63] |
| wire _T_436 = _T_416 ^ _T_414; // @[AesSbox.scala 40:63] |
| wire _T_438 = _T_420 ^ _T_430; // @[AesSbox.scala 40:63] |
| wire _T_440 = _T_432 ^ _T_426; // @[AesSbox.scala 40:63] |
| wire _T_442 = _T_434 ^ _T_430; // @[AesSbox.scala 40:63] |
| wire _T_444 = _T_436 ^ _T_426; // @[AesSbox.scala 40:63] |
| wire _T_446 = _T_438 ^ _T_400; // @[AesSbox.scala 40:63] |
| wire _T_448 = _T_444 ^ _T_446; // @[AesSbox.scala 40:63] |
| wire _T_450 = _T_444 & _T_440; // @[AesSbox.scala 41:63] |
| wire _T_452 = _T_442 ^ _T_450; // @[AesSbox.scala 40:63] |
| wire _T_454 = _T_440 ^ _T_442; // @[AesSbox.scala 40:63] |
| wire _T_456 = _T_446 ^ _T_450; // @[AesSbox.scala 40:63] |
| wire _T_458 = _T_456 & _T_454; // @[AesSbox.scala 41:63] |
| wire _T_460 = _T_452 & _T_448; // @[AesSbox.scala 41:63] |
| wire _T_462 = _T_440 & _T_446; // @[AesSbox.scala 41:63] |
| wire _T_464 = _T_454 & _T_462; // @[AesSbox.scala 41:63] |
| wire _T_466 = _T_454 ^ _T_450; // @[AesSbox.scala 40:63] |
| wire _T_468 = _T_442 & _T_444; // @[AesSbox.scala 41:63] |
| wire _T_470 = _T_448 & _T_468; // @[AesSbox.scala 41:63] |
| wire _T_472 = _T_448 ^ _T_450; // @[AesSbox.scala 40:63] |
| wire _T_474 = _T_442 ^ _T_458; // @[AesSbox.scala 40:63] |
| wire _T_476 = _T_464 ^ _T_466; // @[AesSbox.scala 40:63] |
| wire _T_478 = _T_446 ^ _T_460; // @[AesSbox.scala 40:63] |
| wire _T_480 = _T_470 ^ _T_472; // @[AesSbox.scala 40:63] |
| wire _T_482 = _T_476 ^ _T_480; // @[AesSbox.scala 40:63] |
| wire _T_484 = _T_474 ^ _T_478; // @[AesSbox.scala 40:63] |
| wire _T_486 = _T_474 ^ _T_476; // @[AesSbox.scala 40:63] |
| wire _T_488 = _T_478 ^ _T_480; // @[AesSbox.scala 40:63] |
| wire _T_490 = _T_484 ^ _T_482; // @[AesSbox.scala 40:63] |
| wire _T_492 = _T_488 & _T_356; // @[AesSbox.scala 41:63] |
| wire _T_494 = _T_480 & _T_368; // @[AesSbox.scala 41:63] |
| wire _T_496 = _T_478 & matrix_0_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_498 = _T_486 & _T_388; // @[AesSbox.scala 41:63] |
| wire _T_500 = _T_476 & _T_354; // @[AesSbox.scala 41:63] |
| wire _T_502 = _T_474 & _T_380; // @[AesSbox.scala 41:63] |
| wire _T_504 = _T_484 & _T_362; // @[AesSbox.scala 41:63] |
| wire _T_506 = _T_490 & _T_392; // @[AesSbox.scala 41:63] |
| wire _T_508 = _T_482 & _T_374; // @[AesSbox.scala 41:63] |
| wire _T_510 = _T_488 & _T_384; // @[AesSbox.scala 41:63] |
| wire _T_512 = _T_480 & _T_386; // @[AesSbox.scala 41:63] |
| wire _T_514 = _T_478 & _T_366; // @[AesSbox.scala 41:63] |
| wire _T_516 = _T_486 & _T_360; // @[AesSbox.scala 41:63] |
| wire _T_518 = _T_476 & _T_364; // @[AesSbox.scala 41:63] |
| wire _T_520 = _T_474 & _T_390; // @[AesSbox.scala 41:63] |
| wire _T_522 = _T_484 & _T_350; // @[AesSbox.scala 41:63] |
| wire _T_524 = _T_490 & _T_396; // @[AesSbox.scala 41:63] |
| wire _T_526 = _T_482 & _T_378; // @[AesSbox.scala 41:63] |
| wire _T_528 = _T_522 ^ _T_524; // @[AesSbox.scala 40:63] |
| wire _T_530 = _T_500 ^ _T_512; // @[AesSbox.scala 40:63] |
| wire _T_532 = _T_506 ^ _T_528; // @[AesSbox.scala 40:63] |
| wire _T_534 = _T_510 ^ _T_530; // @[AesSbox.scala 40:63] |
| wire _T_536 = _T_496 ^ _T_516; // @[AesSbox.scala 40:63] |
| wire _T_538 = _T_492 ^ _T_498; // @[AesSbox.scala 40:63] |
| wire _T_540 = _T_528 ^ _T_538; // @[AesSbox.scala 40:63] |
| wire _T_542 = _T_494 ^ _T_534; // @[AesSbox.scala 40:63] |
| wire _T_544 = _T_492 ^ _T_504; // @[AesSbox.scala 40:63] |
| wire _T_546 = _T_502 ^ _T_518; // @[AesSbox.scala 40:63] |
| wire _T_548 = _T_508 ^ _T_520; // @[AesSbox.scala 40:63] |
| wire _T_550 = _T_496 ^ _T_542; // @[AesSbox.scala 40:63] |
| wire _T_552 = _T_536 ^ _T_548; // @[AesSbox.scala 40:63] |
| wire _T_554 = _T_514 ^ _T_530; // @[AesSbox.scala 40:63] |
| wire _T_556 = _T_498 ^ _T_504; // @[AesSbox.scala 40:63] |
| wire _T_558 = _T_534 ^ _T_556; // @[AesSbox.scala 40:63] |
| wire _T_560 = _T_526 ^ _T_552; // @[AesSbox.scala 40:63] |
| wire _T_562 = _T_522 ^ _T_544; // @[AesSbox.scala 40:63] |
| wire _T_564 = _T_536 ^ _T_546; // @[AesSbox.scala 40:63] |
| wire _T_565 = _T_532 ^ _T_558; // @[AesSbox.scala 40:63] |
| wire _T_566 = _T_560 ^ _T_562; // @[AesSbox.scala 42:65] |
| wire _T_567 = ~_T_566; // @[AesSbox.scala 42:51] |
| wire _T_569 = _T_502 ^ _T_528; // @[AesSbox.scala 40:63] |
| wire _T_570 = _T_540 ^ _T_542; // @[AesSbox.scala 40:63] |
| wire _T_571 = _T_550 ^ _T_569; // @[AesSbox.scala 40:63] |
| wire _T_573 = _T_500 ^ _T_516; // @[AesSbox.scala 40:63] |
| wire _T_575 = _T_538 ^ _T_554; // @[AesSbox.scala 40:63] |
| wire _T_576 = _T_540 ^ _T_564; // @[AesSbox.scala 42:65] |
| wire _T_577 = ~_T_576; // @[AesSbox.scala 42:51] |
| wire _T_579 = _T_508 ^ _T_546; // @[AesSbox.scala 40:63] |
| wire _T_581 = _T_573 ^ _T_579; // @[AesSbox.scala 40:63] |
| wire _T_583 = _T_500 ^ _T_544; // @[AesSbox.scala 40:63] |
| wire _T_584 = _T_532 ^ _T_581; // @[AesSbox.scala 42:65] |
| wire _T_585 = ~_T_584; // @[AesSbox.scala 42:51] |
| wire _T_587 = _T_552 ^ _T_575; // @[AesSbox.scala 40:63] |
| wire _T_588 = _T_532 ^ _T_587; // @[AesSbox.scala 40:63] |
| wire _T_590 = _T_542 ^ _T_583; // @[AesSbox.scala 40:63] |
| wire _T_591 = _T_532 ^ _T_590; // @[AesSbox.scala 42:65] |
| wire _T_592 = ~_T_591; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_3_1 = {_T_565,_T_592,_T_567,_T_570,_T_571,_T_588,_T_585,_T_577}; // @[Cat.scala 29:58] |
| wire _T_617 = matrix_0_2[1] ^ matrix_0_2[3]; // @[AesSbox.scala 40:63] |
| wire _T_619 = matrix_0_2[4] ^ matrix_0_2[7]; // @[AesSbox.scala 40:63] |
| wire _T_621 = matrix_0_2[6] ^ matrix_0_2[5]; // @[AesSbox.scala 40:63] |
| wire _T_623 = matrix_0_2[0] ^ _T_621; // @[AesSbox.scala 40:63] |
| wire _T_625 = _T_617 ^ _T_619; // @[AesSbox.scala 40:63] |
| wire _T_627 = matrix_0_2[6] ^ matrix_0_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_629 = matrix_0_2[7] ^ matrix_0_2[1]; // @[AesSbox.scala 40:63] |
| wire _T_631 = _T_617 ^ _T_627; // @[AesSbox.scala 40:63] |
| wire _T_633 = matrix_0_2[1] ^ _T_623; // @[AesSbox.scala 40:63] |
| wire _T_635 = matrix_0_2[4] ^ _T_623; // @[AesSbox.scala 40:63] |
| wire _T_637 = matrix_0_2[0] ^ _T_625; // @[AesSbox.scala 40:63] |
| wire _T_639 = _T_625 ^ _T_627; // @[AesSbox.scala 40:63] |
| wire _T_641 = matrix_0_2[5] ^ matrix_0_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_643 = _T_621 ^ _T_625; // @[AesSbox.scala 40:63] |
| wire _T_645 = matrix_0_2[2] ^ _T_629; // @[AesSbox.scala 40:63] |
| wire _T_647 = matrix_0_2[7] ^ matrix_0_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_649 = matrix_0_2[0] ^ _T_631; // @[AesSbox.scala 40:63] |
| wire _T_651 = matrix_0_2[1] ^ matrix_0_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_653 = _T_619 ^ _T_651; // @[AesSbox.scala 40:63] |
| wire _T_655 = _T_623 ^ _T_645; // @[AesSbox.scala 40:63] |
| wire _T_657 = _T_617 ^ _T_641; // @[AesSbox.scala 40:63] |
| wire _T_659 = matrix_0_2[7] ^ _T_623; // @[AesSbox.scala 40:63] |
| wire _T_661 = _T_657 ^ _T_625; // @[AesSbox.scala 40:63] |
| wire _T_663 = _T_657 ^ _T_629; // @[AesSbox.scala 40:63] |
| wire _T_665 = _T_629 ^ _T_653; // @[AesSbox.scala 40:63] |
| wire _T_667 = _T_647 ^ _T_643; // @[AesSbox.scala 40:63] |
| wire _T_669 = _T_659 ^ _T_649; // @[AesSbox.scala 40:63] |
| wire _T_671 = _T_653 & _T_625; // @[AesSbox.scala 41:63] |
| wire _T_673 = _T_655 & _T_637; // @[AesSbox.scala 41:63] |
| wire _T_675 = _T_639 ^ _T_671; // @[AesSbox.scala 40:63] |
| wire _T_677 = _T_635 & matrix_0_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_679 = _T_677 ^ _T_671; // @[AesSbox.scala 40:63] |
| wire _T_681 = _T_629 & _T_657; // @[AesSbox.scala 41:63] |
| wire _T_683 = _T_633 & _T_623; // @[AesSbox.scala 41:63] |
| wire _T_685 = _T_663 ^ _T_681; // @[AesSbox.scala 40:63] |
| wire _T_687 = _T_659 & _T_649; // @[AesSbox.scala 41:63] |
| wire _T_689 = _T_687 ^ _T_681; // @[AesSbox.scala 40:63] |
| wire _T_691 = _T_619 & _T_631; // @[AesSbox.scala 41:63] |
| wire _T_693 = _T_665 & _T_661; // @[AesSbox.scala 41:63] |
| wire _T_695 = _T_693 ^ _T_691; // @[AesSbox.scala 40:63] |
| wire _T_697 = _T_647 & _T_643; // @[AesSbox.scala 41:63] |
| wire _T_699 = _T_697 ^ _T_691; // @[AesSbox.scala 40:63] |
| wire _T_701 = _T_675 ^ _T_673; // @[AesSbox.scala 40:63] |
| wire _T_703 = _T_679 ^ _T_667; // @[AesSbox.scala 40:63] |
| wire _T_705 = _T_685 ^ _T_683; // @[AesSbox.scala 40:63] |
| wire _T_707 = _T_689 ^ _T_699; // @[AesSbox.scala 40:63] |
| wire _T_709 = _T_701 ^ _T_695; // @[AesSbox.scala 40:63] |
| wire _T_711 = _T_703 ^ _T_699; // @[AesSbox.scala 40:63] |
| wire _T_713 = _T_705 ^ _T_695; // @[AesSbox.scala 40:63] |
| wire _T_715 = _T_707 ^ _T_669; // @[AesSbox.scala 40:63] |
| wire _T_717 = _T_713 ^ _T_715; // @[AesSbox.scala 40:63] |
| wire _T_719 = _T_713 & _T_709; // @[AesSbox.scala 41:63] |
| wire _T_721 = _T_711 ^ _T_719; // @[AesSbox.scala 40:63] |
| wire _T_723 = _T_709 ^ _T_711; // @[AesSbox.scala 40:63] |
| wire _T_725 = _T_715 ^ _T_719; // @[AesSbox.scala 40:63] |
| wire _T_727 = _T_725 & _T_723; // @[AesSbox.scala 41:63] |
| wire _T_729 = _T_721 & _T_717; // @[AesSbox.scala 41:63] |
| wire _T_731 = _T_709 & _T_715; // @[AesSbox.scala 41:63] |
| wire _T_733 = _T_723 & _T_731; // @[AesSbox.scala 41:63] |
| wire _T_735 = _T_723 ^ _T_719; // @[AesSbox.scala 40:63] |
| wire _T_737 = _T_711 & _T_713; // @[AesSbox.scala 41:63] |
| wire _T_739 = _T_717 & _T_737; // @[AesSbox.scala 41:63] |
| wire _T_741 = _T_717 ^ _T_719; // @[AesSbox.scala 40:63] |
| wire _T_743 = _T_711 ^ _T_727; // @[AesSbox.scala 40:63] |
| wire _T_745 = _T_733 ^ _T_735; // @[AesSbox.scala 40:63] |
| wire _T_747 = _T_715 ^ _T_729; // @[AesSbox.scala 40:63] |
| wire _T_749 = _T_739 ^ _T_741; // @[AesSbox.scala 40:63] |
| wire _T_751 = _T_745 ^ _T_749; // @[AesSbox.scala 40:63] |
| wire _T_753 = _T_743 ^ _T_747; // @[AesSbox.scala 40:63] |
| wire _T_755 = _T_743 ^ _T_745; // @[AesSbox.scala 40:63] |
| wire _T_757 = _T_747 ^ _T_749; // @[AesSbox.scala 40:63] |
| wire _T_759 = _T_753 ^ _T_751; // @[AesSbox.scala 40:63] |
| wire _T_761 = _T_757 & _T_625; // @[AesSbox.scala 41:63] |
| wire _T_763 = _T_749 & _T_637; // @[AesSbox.scala 41:63] |
| wire _T_765 = _T_747 & matrix_0_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_767 = _T_755 & _T_657; // @[AesSbox.scala 41:63] |
| wire _T_769 = _T_745 & _T_623; // @[AesSbox.scala 41:63] |
| wire _T_771 = _T_743 & _T_649; // @[AesSbox.scala 41:63] |
| wire _T_773 = _T_753 & _T_631; // @[AesSbox.scala 41:63] |
| wire _T_775 = _T_759 & _T_661; // @[AesSbox.scala 41:63] |
| wire _T_777 = _T_751 & _T_643; // @[AesSbox.scala 41:63] |
| wire _T_779 = _T_757 & _T_653; // @[AesSbox.scala 41:63] |
| wire _T_781 = _T_749 & _T_655; // @[AesSbox.scala 41:63] |
| wire _T_783 = _T_747 & _T_635; // @[AesSbox.scala 41:63] |
| wire _T_785 = _T_755 & _T_629; // @[AesSbox.scala 41:63] |
| wire _T_787 = _T_745 & _T_633; // @[AesSbox.scala 41:63] |
| wire _T_789 = _T_743 & _T_659; // @[AesSbox.scala 41:63] |
| wire _T_791 = _T_753 & _T_619; // @[AesSbox.scala 41:63] |
| wire _T_793 = _T_759 & _T_665; // @[AesSbox.scala 41:63] |
| wire _T_795 = _T_751 & _T_647; // @[AesSbox.scala 41:63] |
| wire _T_797 = _T_791 ^ _T_793; // @[AesSbox.scala 40:63] |
| wire _T_799 = _T_769 ^ _T_781; // @[AesSbox.scala 40:63] |
| wire _T_801 = _T_775 ^ _T_797; // @[AesSbox.scala 40:63] |
| wire _T_803 = _T_779 ^ _T_799; // @[AesSbox.scala 40:63] |
| wire _T_805 = _T_765 ^ _T_785; // @[AesSbox.scala 40:63] |
| wire _T_807 = _T_761 ^ _T_767; // @[AesSbox.scala 40:63] |
| wire _T_809 = _T_797 ^ _T_807; // @[AesSbox.scala 40:63] |
| wire _T_811 = _T_763 ^ _T_803; // @[AesSbox.scala 40:63] |
| wire _T_813 = _T_761 ^ _T_773; // @[AesSbox.scala 40:63] |
| wire _T_815 = _T_771 ^ _T_787; // @[AesSbox.scala 40:63] |
| wire _T_817 = _T_777 ^ _T_789; // @[AesSbox.scala 40:63] |
| wire _T_819 = _T_765 ^ _T_811; // @[AesSbox.scala 40:63] |
| wire _T_821 = _T_805 ^ _T_817; // @[AesSbox.scala 40:63] |
| wire _T_823 = _T_783 ^ _T_799; // @[AesSbox.scala 40:63] |
| wire _T_825 = _T_767 ^ _T_773; // @[AesSbox.scala 40:63] |
| wire _T_827 = _T_803 ^ _T_825; // @[AesSbox.scala 40:63] |
| wire _T_829 = _T_795 ^ _T_821; // @[AesSbox.scala 40:63] |
| wire _T_831 = _T_791 ^ _T_813; // @[AesSbox.scala 40:63] |
| wire _T_833 = _T_805 ^ _T_815; // @[AesSbox.scala 40:63] |
| wire _T_834 = _T_801 ^ _T_827; // @[AesSbox.scala 40:63] |
| wire _T_835 = _T_829 ^ _T_831; // @[AesSbox.scala 42:65] |
| wire _T_836 = ~_T_835; // @[AesSbox.scala 42:51] |
| wire _T_838 = _T_771 ^ _T_797; // @[AesSbox.scala 40:63] |
| wire _T_839 = _T_809 ^ _T_811; // @[AesSbox.scala 40:63] |
| wire _T_840 = _T_819 ^ _T_838; // @[AesSbox.scala 40:63] |
| wire _T_842 = _T_769 ^ _T_785; // @[AesSbox.scala 40:63] |
| wire _T_844 = _T_807 ^ _T_823; // @[AesSbox.scala 40:63] |
| wire _T_845 = _T_809 ^ _T_833; // @[AesSbox.scala 42:65] |
| wire _T_846 = ~_T_845; // @[AesSbox.scala 42:51] |
| wire _T_848 = _T_777 ^ _T_815; // @[AesSbox.scala 40:63] |
| wire _T_850 = _T_842 ^ _T_848; // @[AesSbox.scala 40:63] |
| wire _T_852 = _T_769 ^ _T_813; // @[AesSbox.scala 40:63] |
| wire _T_853 = _T_801 ^ _T_850; // @[AesSbox.scala 42:65] |
| wire _T_854 = ~_T_853; // @[AesSbox.scala 42:51] |
| wire _T_856 = _T_821 ^ _T_844; // @[AesSbox.scala 40:63] |
| wire _T_857 = _T_801 ^ _T_856; // @[AesSbox.scala 40:63] |
| wire _T_859 = _T_811 ^ _T_852; // @[AesSbox.scala 40:63] |
| wire _T_860 = _T_801 ^ _T_859; // @[AesSbox.scala 42:65] |
| wire _T_861 = ~_T_860; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_2_2 = {_T_834,_T_861,_T_836,_T_839,_T_840,_T_857,_T_854,_T_846}; // @[Cat.scala 29:58] |
| wire _T_886 = matrix_0_3[1] ^ matrix_0_3[3]; // @[AesSbox.scala 40:63] |
| wire _T_888 = matrix_0_3[4] ^ matrix_0_3[7]; // @[AesSbox.scala 40:63] |
| wire _T_890 = matrix_0_3[6] ^ matrix_0_3[5]; // @[AesSbox.scala 40:63] |
| wire _T_892 = matrix_0_3[0] ^ _T_890; // @[AesSbox.scala 40:63] |
| wire _T_894 = _T_886 ^ _T_888; // @[AesSbox.scala 40:63] |
| wire _T_896 = matrix_0_3[6] ^ matrix_0_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_898 = matrix_0_3[7] ^ matrix_0_3[1]; // @[AesSbox.scala 40:63] |
| wire _T_900 = _T_886 ^ _T_896; // @[AesSbox.scala 40:63] |
| wire _T_902 = matrix_0_3[1] ^ _T_892; // @[AesSbox.scala 40:63] |
| wire _T_904 = matrix_0_3[4] ^ _T_892; // @[AesSbox.scala 40:63] |
| wire _T_906 = matrix_0_3[0] ^ _T_894; // @[AesSbox.scala 40:63] |
| wire _T_908 = _T_894 ^ _T_896; // @[AesSbox.scala 40:63] |
| wire _T_910 = matrix_0_3[5] ^ matrix_0_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_912 = _T_890 ^ _T_894; // @[AesSbox.scala 40:63] |
| wire _T_914 = matrix_0_3[2] ^ _T_898; // @[AesSbox.scala 40:63] |
| wire _T_916 = matrix_0_3[7] ^ matrix_0_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_918 = matrix_0_3[0] ^ _T_900; // @[AesSbox.scala 40:63] |
| wire _T_920 = matrix_0_3[1] ^ matrix_0_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_922 = _T_888 ^ _T_920; // @[AesSbox.scala 40:63] |
| wire _T_924 = _T_892 ^ _T_914; // @[AesSbox.scala 40:63] |
| wire _T_926 = _T_886 ^ _T_910; // @[AesSbox.scala 40:63] |
| wire _T_928 = matrix_0_3[7] ^ _T_892; // @[AesSbox.scala 40:63] |
| wire _T_930 = _T_926 ^ _T_894; // @[AesSbox.scala 40:63] |
| wire _T_932 = _T_926 ^ _T_898; // @[AesSbox.scala 40:63] |
| wire _T_934 = _T_898 ^ _T_922; // @[AesSbox.scala 40:63] |
| wire _T_936 = _T_916 ^ _T_912; // @[AesSbox.scala 40:63] |
| wire _T_938 = _T_928 ^ _T_918; // @[AesSbox.scala 40:63] |
| wire _T_940 = _T_922 & _T_894; // @[AesSbox.scala 41:63] |
| wire _T_942 = _T_924 & _T_906; // @[AesSbox.scala 41:63] |
| wire _T_944 = _T_908 ^ _T_940; // @[AesSbox.scala 40:63] |
| wire _T_946 = _T_904 & matrix_0_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_948 = _T_946 ^ _T_940; // @[AesSbox.scala 40:63] |
| wire _T_950 = _T_898 & _T_926; // @[AesSbox.scala 41:63] |
| wire _T_952 = _T_902 & _T_892; // @[AesSbox.scala 41:63] |
| wire _T_954 = _T_932 ^ _T_950; // @[AesSbox.scala 40:63] |
| wire _T_956 = _T_928 & _T_918; // @[AesSbox.scala 41:63] |
| wire _T_958 = _T_956 ^ _T_950; // @[AesSbox.scala 40:63] |
| wire _T_960 = _T_888 & _T_900; // @[AesSbox.scala 41:63] |
| wire _T_962 = _T_934 & _T_930; // @[AesSbox.scala 41:63] |
| wire _T_964 = _T_962 ^ _T_960; // @[AesSbox.scala 40:63] |
| wire _T_966 = _T_916 & _T_912; // @[AesSbox.scala 41:63] |
| wire _T_968 = _T_966 ^ _T_960; // @[AesSbox.scala 40:63] |
| wire _T_970 = _T_944 ^ _T_942; // @[AesSbox.scala 40:63] |
| wire _T_972 = _T_948 ^ _T_936; // @[AesSbox.scala 40:63] |
| wire _T_974 = _T_954 ^ _T_952; // @[AesSbox.scala 40:63] |
| wire _T_976 = _T_958 ^ _T_968; // @[AesSbox.scala 40:63] |
| wire _T_978 = _T_970 ^ _T_964; // @[AesSbox.scala 40:63] |
| wire _T_980 = _T_972 ^ _T_968; // @[AesSbox.scala 40:63] |
| wire _T_982 = _T_974 ^ _T_964; // @[AesSbox.scala 40:63] |
| wire _T_984 = _T_976 ^ _T_938; // @[AesSbox.scala 40:63] |
| wire _T_986 = _T_982 ^ _T_984; // @[AesSbox.scala 40:63] |
| wire _T_988 = _T_982 & _T_978; // @[AesSbox.scala 41:63] |
| wire _T_990 = _T_980 ^ _T_988; // @[AesSbox.scala 40:63] |
| wire _T_992 = _T_978 ^ _T_980; // @[AesSbox.scala 40:63] |
| wire _T_994 = _T_984 ^ _T_988; // @[AesSbox.scala 40:63] |
| wire _T_996 = _T_994 & _T_992; // @[AesSbox.scala 41:63] |
| wire _T_998 = _T_990 & _T_986; // @[AesSbox.scala 41:63] |
| wire _T_1000 = _T_978 & _T_984; // @[AesSbox.scala 41:63] |
| wire _T_1002 = _T_992 & _T_1000; // @[AesSbox.scala 41:63] |
| wire _T_1004 = _T_992 ^ _T_988; // @[AesSbox.scala 40:63] |
| wire _T_1006 = _T_980 & _T_982; // @[AesSbox.scala 41:63] |
| wire _T_1008 = _T_986 & _T_1006; // @[AesSbox.scala 41:63] |
| wire _T_1010 = _T_986 ^ _T_988; // @[AesSbox.scala 40:63] |
| wire _T_1012 = _T_980 ^ _T_996; // @[AesSbox.scala 40:63] |
| wire _T_1014 = _T_1002 ^ _T_1004; // @[AesSbox.scala 40:63] |
| wire _T_1016 = _T_984 ^ _T_998; // @[AesSbox.scala 40:63] |
| wire _T_1018 = _T_1008 ^ _T_1010; // @[AesSbox.scala 40:63] |
| wire _T_1020 = _T_1014 ^ _T_1018; // @[AesSbox.scala 40:63] |
| wire _T_1022 = _T_1012 ^ _T_1016; // @[AesSbox.scala 40:63] |
| wire _T_1024 = _T_1012 ^ _T_1014; // @[AesSbox.scala 40:63] |
| wire _T_1026 = _T_1016 ^ _T_1018; // @[AesSbox.scala 40:63] |
| wire _T_1028 = _T_1022 ^ _T_1020; // @[AesSbox.scala 40:63] |
| wire _T_1030 = _T_1026 & _T_894; // @[AesSbox.scala 41:63] |
| wire _T_1032 = _T_1018 & _T_906; // @[AesSbox.scala 41:63] |
| wire _T_1034 = _T_1016 & matrix_0_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_1036 = _T_1024 & _T_926; // @[AesSbox.scala 41:63] |
| wire _T_1038 = _T_1014 & _T_892; // @[AesSbox.scala 41:63] |
| wire _T_1040 = _T_1012 & _T_918; // @[AesSbox.scala 41:63] |
| wire _T_1042 = _T_1022 & _T_900; // @[AesSbox.scala 41:63] |
| wire _T_1044 = _T_1028 & _T_930; // @[AesSbox.scala 41:63] |
| wire _T_1046 = _T_1020 & _T_912; // @[AesSbox.scala 41:63] |
| wire _T_1048 = _T_1026 & _T_922; // @[AesSbox.scala 41:63] |
| wire _T_1050 = _T_1018 & _T_924; // @[AesSbox.scala 41:63] |
| wire _T_1052 = _T_1016 & _T_904; // @[AesSbox.scala 41:63] |
| wire _T_1054 = _T_1024 & _T_898; // @[AesSbox.scala 41:63] |
| wire _T_1056 = _T_1014 & _T_902; // @[AesSbox.scala 41:63] |
| wire _T_1058 = _T_1012 & _T_928; // @[AesSbox.scala 41:63] |
| wire _T_1060 = _T_1022 & _T_888; // @[AesSbox.scala 41:63] |
| wire _T_1062 = _T_1028 & _T_934; // @[AesSbox.scala 41:63] |
| wire _T_1064 = _T_1020 & _T_916; // @[AesSbox.scala 41:63] |
| wire _T_1066 = _T_1060 ^ _T_1062; // @[AesSbox.scala 40:63] |
| wire _T_1068 = _T_1038 ^ _T_1050; // @[AesSbox.scala 40:63] |
| wire _T_1070 = _T_1044 ^ _T_1066; // @[AesSbox.scala 40:63] |
| wire _T_1072 = _T_1048 ^ _T_1068; // @[AesSbox.scala 40:63] |
| wire _T_1074 = _T_1034 ^ _T_1054; // @[AesSbox.scala 40:63] |
| wire _T_1076 = _T_1030 ^ _T_1036; // @[AesSbox.scala 40:63] |
| wire _T_1078 = _T_1066 ^ _T_1076; // @[AesSbox.scala 40:63] |
| wire _T_1080 = _T_1032 ^ _T_1072; // @[AesSbox.scala 40:63] |
| wire _T_1082 = _T_1030 ^ _T_1042; // @[AesSbox.scala 40:63] |
| wire _T_1084 = _T_1040 ^ _T_1056; // @[AesSbox.scala 40:63] |
| wire _T_1086 = _T_1046 ^ _T_1058; // @[AesSbox.scala 40:63] |
| wire _T_1088 = _T_1034 ^ _T_1080; // @[AesSbox.scala 40:63] |
| wire _T_1090 = _T_1074 ^ _T_1086; // @[AesSbox.scala 40:63] |
| wire _T_1092 = _T_1052 ^ _T_1068; // @[AesSbox.scala 40:63] |
| wire _T_1094 = _T_1036 ^ _T_1042; // @[AesSbox.scala 40:63] |
| wire _T_1096 = _T_1072 ^ _T_1094; // @[AesSbox.scala 40:63] |
| wire _T_1098 = _T_1064 ^ _T_1090; // @[AesSbox.scala 40:63] |
| wire _T_1100 = _T_1060 ^ _T_1082; // @[AesSbox.scala 40:63] |
| wire _T_1102 = _T_1074 ^ _T_1084; // @[AesSbox.scala 40:63] |
| wire _T_1103 = _T_1070 ^ _T_1096; // @[AesSbox.scala 40:63] |
| wire _T_1104 = _T_1098 ^ _T_1100; // @[AesSbox.scala 42:65] |
| wire _T_1105 = ~_T_1104; // @[AesSbox.scala 42:51] |
| wire _T_1107 = _T_1040 ^ _T_1066; // @[AesSbox.scala 40:63] |
| wire _T_1108 = _T_1078 ^ _T_1080; // @[AesSbox.scala 40:63] |
| wire _T_1109 = _T_1088 ^ _T_1107; // @[AesSbox.scala 40:63] |
| wire _T_1111 = _T_1038 ^ _T_1054; // @[AesSbox.scala 40:63] |
| wire _T_1113 = _T_1076 ^ _T_1092; // @[AesSbox.scala 40:63] |
| wire _T_1114 = _T_1078 ^ _T_1102; // @[AesSbox.scala 42:65] |
| wire _T_1115 = ~_T_1114; // @[AesSbox.scala 42:51] |
| wire _T_1117 = _T_1046 ^ _T_1084; // @[AesSbox.scala 40:63] |
| wire _T_1119 = _T_1111 ^ _T_1117; // @[AesSbox.scala 40:63] |
| wire _T_1121 = _T_1038 ^ _T_1082; // @[AesSbox.scala 40:63] |
| wire _T_1122 = _T_1070 ^ _T_1119; // @[AesSbox.scala 42:65] |
| wire _T_1123 = ~_T_1122; // @[AesSbox.scala 42:51] |
| wire _T_1125 = _T_1090 ^ _T_1113; // @[AesSbox.scala 40:63] |
| wire _T_1126 = _T_1070 ^ _T_1125; // @[AesSbox.scala 40:63] |
| wire _T_1128 = _T_1080 ^ _T_1121; // @[AesSbox.scala 40:63] |
| wire _T_1129 = _T_1070 ^ _T_1128; // @[AesSbox.scala 42:65] |
| wire _T_1130 = ~_T_1129; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_1_3 = {_T_1103,_T_1130,_T_1105,_T_1108,_T_1109,_T_1126,_T_1123,_T_1115}; // @[Cat.scala 29:58] |
| wire _T_1156 = matrix_1_0[1] ^ matrix_1_0[3]; // @[AesSbox.scala 40:63] |
| wire _T_1158 = matrix_1_0[4] ^ matrix_1_0[7]; // @[AesSbox.scala 40:63] |
| wire _T_1160 = matrix_1_0[6] ^ matrix_1_0[5]; // @[AesSbox.scala 40:63] |
| wire _T_1162 = matrix_1_0[0] ^ _T_1160; // @[AesSbox.scala 40:63] |
| wire _T_1164 = _T_1156 ^ _T_1158; // @[AesSbox.scala 40:63] |
| wire _T_1166 = matrix_1_0[6] ^ matrix_1_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_1168 = matrix_1_0[7] ^ matrix_1_0[1]; // @[AesSbox.scala 40:63] |
| wire _T_1170 = _T_1156 ^ _T_1166; // @[AesSbox.scala 40:63] |
| wire _T_1172 = matrix_1_0[1] ^ _T_1162; // @[AesSbox.scala 40:63] |
| wire _T_1174 = matrix_1_0[4] ^ _T_1162; // @[AesSbox.scala 40:63] |
| wire _T_1176 = matrix_1_0[0] ^ _T_1164; // @[AesSbox.scala 40:63] |
| wire _T_1178 = _T_1164 ^ _T_1166; // @[AesSbox.scala 40:63] |
| wire _T_1180 = matrix_1_0[5] ^ matrix_1_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_1182 = _T_1160 ^ _T_1164; // @[AesSbox.scala 40:63] |
| wire _T_1184 = matrix_1_0[2] ^ _T_1168; // @[AesSbox.scala 40:63] |
| wire _T_1186 = matrix_1_0[7] ^ matrix_1_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_1188 = matrix_1_0[0] ^ _T_1170; // @[AesSbox.scala 40:63] |
| wire _T_1190 = matrix_1_0[1] ^ matrix_1_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_1192 = _T_1158 ^ _T_1190; // @[AesSbox.scala 40:63] |
| wire _T_1194 = _T_1162 ^ _T_1184; // @[AesSbox.scala 40:63] |
| wire _T_1196 = _T_1156 ^ _T_1180; // @[AesSbox.scala 40:63] |
| wire _T_1198 = matrix_1_0[7] ^ _T_1162; // @[AesSbox.scala 40:63] |
| wire _T_1200 = _T_1196 ^ _T_1164; // @[AesSbox.scala 40:63] |
| wire _T_1202 = _T_1196 ^ _T_1168; // @[AesSbox.scala 40:63] |
| wire _T_1204 = _T_1168 ^ _T_1192; // @[AesSbox.scala 40:63] |
| wire _T_1206 = _T_1186 ^ _T_1182; // @[AesSbox.scala 40:63] |
| wire _T_1208 = _T_1198 ^ _T_1188; // @[AesSbox.scala 40:63] |
| wire _T_1210 = _T_1192 & _T_1164; // @[AesSbox.scala 41:63] |
| wire _T_1212 = _T_1194 & _T_1176; // @[AesSbox.scala 41:63] |
| wire _T_1214 = _T_1178 ^ _T_1210; // @[AesSbox.scala 40:63] |
| wire _T_1216 = _T_1174 & matrix_1_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_1218 = _T_1216 ^ _T_1210; // @[AesSbox.scala 40:63] |
| wire _T_1220 = _T_1168 & _T_1196; // @[AesSbox.scala 41:63] |
| wire _T_1222 = _T_1172 & _T_1162; // @[AesSbox.scala 41:63] |
| wire _T_1224 = _T_1202 ^ _T_1220; // @[AesSbox.scala 40:63] |
| wire _T_1226 = _T_1198 & _T_1188; // @[AesSbox.scala 41:63] |
| wire _T_1228 = _T_1226 ^ _T_1220; // @[AesSbox.scala 40:63] |
| wire _T_1230 = _T_1158 & _T_1170; // @[AesSbox.scala 41:63] |
| wire _T_1232 = _T_1204 & _T_1200; // @[AesSbox.scala 41:63] |
| wire _T_1234 = _T_1232 ^ _T_1230; // @[AesSbox.scala 40:63] |
| wire _T_1236 = _T_1186 & _T_1182; // @[AesSbox.scala 41:63] |
| wire _T_1238 = _T_1236 ^ _T_1230; // @[AesSbox.scala 40:63] |
| wire _T_1240 = _T_1214 ^ _T_1212; // @[AesSbox.scala 40:63] |
| wire _T_1242 = _T_1218 ^ _T_1206; // @[AesSbox.scala 40:63] |
| wire _T_1244 = _T_1224 ^ _T_1222; // @[AesSbox.scala 40:63] |
| wire _T_1246 = _T_1228 ^ _T_1238; // @[AesSbox.scala 40:63] |
| wire _T_1248 = _T_1240 ^ _T_1234; // @[AesSbox.scala 40:63] |
| wire _T_1250 = _T_1242 ^ _T_1238; // @[AesSbox.scala 40:63] |
| wire _T_1252 = _T_1244 ^ _T_1234; // @[AesSbox.scala 40:63] |
| wire _T_1254 = _T_1246 ^ _T_1208; // @[AesSbox.scala 40:63] |
| wire _T_1256 = _T_1252 ^ _T_1254; // @[AesSbox.scala 40:63] |
| wire _T_1258 = _T_1252 & _T_1248; // @[AesSbox.scala 41:63] |
| wire _T_1260 = _T_1250 ^ _T_1258; // @[AesSbox.scala 40:63] |
| wire _T_1262 = _T_1248 ^ _T_1250; // @[AesSbox.scala 40:63] |
| wire _T_1264 = _T_1254 ^ _T_1258; // @[AesSbox.scala 40:63] |
| wire _T_1266 = _T_1264 & _T_1262; // @[AesSbox.scala 41:63] |
| wire _T_1268 = _T_1260 & _T_1256; // @[AesSbox.scala 41:63] |
| wire _T_1270 = _T_1248 & _T_1254; // @[AesSbox.scala 41:63] |
| wire _T_1272 = _T_1262 & _T_1270; // @[AesSbox.scala 41:63] |
| wire _T_1274 = _T_1262 ^ _T_1258; // @[AesSbox.scala 40:63] |
| wire _T_1276 = _T_1250 & _T_1252; // @[AesSbox.scala 41:63] |
| wire _T_1278 = _T_1256 & _T_1276; // @[AesSbox.scala 41:63] |
| wire _T_1280 = _T_1256 ^ _T_1258; // @[AesSbox.scala 40:63] |
| wire _T_1282 = _T_1250 ^ _T_1266; // @[AesSbox.scala 40:63] |
| wire _T_1284 = _T_1272 ^ _T_1274; // @[AesSbox.scala 40:63] |
| wire _T_1286 = _T_1254 ^ _T_1268; // @[AesSbox.scala 40:63] |
| wire _T_1288 = _T_1278 ^ _T_1280; // @[AesSbox.scala 40:63] |
| wire _T_1290 = _T_1284 ^ _T_1288; // @[AesSbox.scala 40:63] |
| wire _T_1292 = _T_1282 ^ _T_1286; // @[AesSbox.scala 40:63] |
| wire _T_1294 = _T_1282 ^ _T_1284; // @[AesSbox.scala 40:63] |
| wire _T_1296 = _T_1286 ^ _T_1288; // @[AesSbox.scala 40:63] |
| wire _T_1298 = _T_1292 ^ _T_1290; // @[AesSbox.scala 40:63] |
| wire _T_1300 = _T_1296 & _T_1164; // @[AesSbox.scala 41:63] |
| wire _T_1302 = _T_1288 & _T_1176; // @[AesSbox.scala 41:63] |
| wire _T_1304 = _T_1286 & matrix_1_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_1306 = _T_1294 & _T_1196; // @[AesSbox.scala 41:63] |
| wire _T_1308 = _T_1284 & _T_1162; // @[AesSbox.scala 41:63] |
| wire _T_1310 = _T_1282 & _T_1188; // @[AesSbox.scala 41:63] |
| wire _T_1312 = _T_1292 & _T_1170; // @[AesSbox.scala 41:63] |
| wire _T_1314 = _T_1298 & _T_1200; // @[AesSbox.scala 41:63] |
| wire _T_1316 = _T_1290 & _T_1182; // @[AesSbox.scala 41:63] |
| wire _T_1318 = _T_1296 & _T_1192; // @[AesSbox.scala 41:63] |
| wire _T_1320 = _T_1288 & _T_1194; // @[AesSbox.scala 41:63] |
| wire _T_1322 = _T_1286 & _T_1174; // @[AesSbox.scala 41:63] |
| wire _T_1324 = _T_1294 & _T_1168; // @[AesSbox.scala 41:63] |
| wire _T_1326 = _T_1284 & _T_1172; // @[AesSbox.scala 41:63] |
| wire _T_1328 = _T_1282 & _T_1198; // @[AesSbox.scala 41:63] |
| wire _T_1330 = _T_1292 & _T_1158; // @[AesSbox.scala 41:63] |
| wire _T_1332 = _T_1298 & _T_1204; // @[AesSbox.scala 41:63] |
| wire _T_1334 = _T_1290 & _T_1186; // @[AesSbox.scala 41:63] |
| wire _T_1336 = _T_1330 ^ _T_1332; // @[AesSbox.scala 40:63] |
| wire _T_1338 = _T_1308 ^ _T_1320; // @[AesSbox.scala 40:63] |
| wire _T_1340 = _T_1314 ^ _T_1336; // @[AesSbox.scala 40:63] |
| wire _T_1342 = _T_1318 ^ _T_1338; // @[AesSbox.scala 40:63] |
| wire _T_1344 = _T_1304 ^ _T_1324; // @[AesSbox.scala 40:63] |
| wire _T_1346 = _T_1300 ^ _T_1306; // @[AesSbox.scala 40:63] |
| wire _T_1348 = _T_1336 ^ _T_1346; // @[AesSbox.scala 40:63] |
| wire _T_1350 = _T_1302 ^ _T_1342; // @[AesSbox.scala 40:63] |
| wire _T_1352 = _T_1300 ^ _T_1312; // @[AesSbox.scala 40:63] |
| wire _T_1354 = _T_1310 ^ _T_1326; // @[AesSbox.scala 40:63] |
| wire _T_1356 = _T_1316 ^ _T_1328; // @[AesSbox.scala 40:63] |
| wire _T_1358 = _T_1304 ^ _T_1350; // @[AesSbox.scala 40:63] |
| wire _T_1360 = _T_1344 ^ _T_1356; // @[AesSbox.scala 40:63] |
| wire _T_1362 = _T_1322 ^ _T_1338; // @[AesSbox.scala 40:63] |
| wire _T_1364 = _T_1306 ^ _T_1312; // @[AesSbox.scala 40:63] |
| wire _T_1366 = _T_1342 ^ _T_1364; // @[AesSbox.scala 40:63] |
| wire _T_1368 = _T_1334 ^ _T_1360; // @[AesSbox.scala 40:63] |
| wire _T_1370 = _T_1330 ^ _T_1352; // @[AesSbox.scala 40:63] |
| wire _T_1372 = _T_1344 ^ _T_1354; // @[AesSbox.scala 40:63] |
| wire _T_1373 = _T_1340 ^ _T_1366; // @[AesSbox.scala 40:63] |
| wire _T_1374 = _T_1368 ^ _T_1370; // @[AesSbox.scala 42:65] |
| wire _T_1375 = ~_T_1374; // @[AesSbox.scala 42:51] |
| wire _T_1377 = _T_1310 ^ _T_1336; // @[AesSbox.scala 40:63] |
| wire _T_1378 = _T_1348 ^ _T_1350; // @[AesSbox.scala 40:63] |
| wire _T_1379 = _T_1358 ^ _T_1377; // @[AesSbox.scala 40:63] |
| wire _T_1381 = _T_1308 ^ _T_1324; // @[AesSbox.scala 40:63] |
| wire _T_1383 = _T_1346 ^ _T_1362; // @[AesSbox.scala 40:63] |
| wire _T_1384 = _T_1348 ^ _T_1372; // @[AesSbox.scala 42:65] |
| wire _T_1385 = ~_T_1384; // @[AesSbox.scala 42:51] |
| wire _T_1387 = _T_1316 ^ _T_1354; // @[AesSbox.scala 40:63] |
| wire _T_1389 = _T_1381 ^ _T_1387; // @[AesSbox.scala 40:63] |
| wire _T_1391 = _T_1308 ^ _T_1352; // @[AesSbox.scala 40:63] |
| wire _T_1392 = _T_1340 ^ _T_1389; // @[AesSbox.scala 42:65] |
| wire _T_1393 = ~_T_1392; // @[AesSbox.scala 42:51] |
| wire _T_1395 = _T_1360 ^ _T_1383; // @[AesSbox.scala 40:63] |
| wire _T_1396 = _T_1340 ^ _T_1395; // @[AesSbox.scala 40:63] |
| wire _T_1398 = _T_1350 ^ _T_1391; // @[AesSbox.scala 40:63] |
| wire _T_1399 = _T_1340 ^ _T_1398; // @[AesSbox.scala 42:65] |
| wire _T_1400 = ~_T_1399; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_1_0 = {_T_1373,_T_1400,_T_1375,_T_1378,_T_1379,_T_1396,_T_1393,_T_1385}; // @[Cat.scala 29:58] |
| wire _T_1425 = matrix_1_1[1] ^ matrix_1_1[3]; // @[AesSbox.scala 40:63] |
| wire _T_1427 = matrix_1_1[4] ^ matrix_1_1[7]; // @[AesSbox.scala 40:63] |
| wire _T_1429 = matrix_1_1[6] ^ matrix_1_1[5]; // @[AesSbox.scala 40:63] |
| wire _T_1431 = matrix_1_1[0] ^ _T_1429; // @[AesSbox.scala 40:63] |
| wire _T_1433 = _T_1425 ^ _T_1427; // @[AesSbox.scala 40:63] |
| wire _T_1435 = matrix_1_1[6] ^ matrix_1_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_1437 = matrix_1_1[7] ^ matrix_1_1[1]; // @[AesSbox.scala 40:63] |
| wire _T_1439 = _T_1425 ^ _T_1435; // @[AesSbox.scala 40:63] |
| wire _T_1441 = matrix_1_1[1] ^ _T_1431; // @[AesSbox.scala 40:63] |
| wire _T_1443 = matrix_1_1[4] ^ _T_1431; // @[AesSbox.scala 40:63] |
| wire _T_1445 = matrix_1_1[0] ^ _T_1433; // @[AesSbox.scala 40:63] |
| wire _T_1447 = _T_1433 ^ _T_1435; // @[AesSbox.scala 40:63] |
| wire _T_1449 = matrix_1_1[5] ^ matrix_1_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_1451 = _T_1429 ^ _T_1433; // @[AesSbox.scala 40:63] |
| wire _T_1453 = matrix_1_1[2] ^ _T_1437; // @[AesSbox.scala 40:63] |
| wire _T_1455 = matrix_1_1[7] ^ matrix_1_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_1457 = matrix_1_1[0] ^ _T_1439; // @[AesSbox.scala 40:63] |
| wire _T_1459 = matrix_1_1[1] ^ matrix_1_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_1461 = _T_1427 ^ _T_1459; // @[AesSbox.scala 40:63] |
| wire _T_1463 = _T_1431 ^ _T_1453; // @[AesSbox.scala 40:63] |
| wire _T_1465 = _T_1425 ^ _T_1449; // @[AesSbox.scala 40:63] |
| wire _T_1467 = matrix_1_1[7] ^ _T_1431; // @[AesSbox.scala 40:63] |
| wire _T_1469 = _T_1465 ^ _T_1433; // @[AesSbox.scala 40:63] |
| wire _T_1471 = _T_1465 ^ _T_1437; // @[AesSbox.scala 40:63] |
| wire _T_1473 = _T_1437 ^ _T_1461; // @[AesSbox.scala 40:63] |
| wire _T_1475 = _T_1455 ^ _T_1451; // @[AesSbox.scala 40:63] |
| wire _T_1477 = _T_1467 ^ _T_1457; // @[AesSbox.scala 40:63] |
| wire _T_1479 = _T_1461 & _T_1433; // @[AesSbox.scala 41:63] |
| wire _T_1481 = _T_1463 & _T_1445; // @[AesSbox.scala 41:63] |
| wire _T_1483 = _T_1447 ^ _T_1479; // @[AesSbox.scala 40:63] |
| wire _T_1485 = _T_1443 & matrix_1_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_1487 = _T_1485 ^ _T_1479; // @[AesSbox.scala 40:63] |
| wire _T_1489 = _T_1437 & _T_1465; // @[AesSbox.scala 41:63] |
| wire _T_1491 = _T_1441 & _T_1431; // @[AesSbox.scala 41:63] |
| wire _T_1493 = _T_1471 ^ _T_1489; // @[AesSbox.scala 40:63] |
| wire _T_1495 = _T_1467 & _T_1457; // @[AesSbox.scala 41:63] |
| wire _T_1497 = _T_1495 ^ _T_1489; // @[AesSbox.scala 40:63] |
| wire _T_1499 = _T_1427 & _T_1439; // @[AesSbox.scala 41:63] |
| wire _T_1501 = _T_1473 & _T_1469; // @[AesSbox.scala 41:63] |
| wire _T_1503 = _T_1501 ^ _T_1499; // @[AesSbox.scala 40:63] |
| wire _T_1505 = _T_1455 & _T_1451; // @[AesSbox.scala 41:63] |
| wire _T_1507 = _T_1505 ^ _T_1499; // @[AesSbox.scala 40:63] |
| wire _T_1509 = _T_1483 ^ _T_1481; // @[AesSbox.scala 40:63] |
| wire _T_1511 = _T_1487 ^ _T_1475; // @[AesSbox.scala 40:63] |
| wire _T_1513 = _T_1493 ^ _T_1491; // @[AesSbox.scala 40:63] |
| wire _T_1515 = _T_1497 ^ _T_1507; // @[AesSbox.scala 40:63] |
| wire _T_1517 = _T_1509 ^ _T_1503; // @[AesSbox.scala 40:63] |
| wire _T_1519 = _T_1511 ^ _T_1507; // @[AesSbox.scala 40:63] |
| wire _T_1521 = _T_1513 ^ _T_1503; // @[AesSbox.scala 40:63] |
| wire _T_1523 = _T_1515 ^ _T_1477; // @[AesSbox.scala 40:63] |
| wire _T_1525 = _T_1521 ^ _T_1523; // @[AesSbox.scala 40:63] |
| wire _T_1527 = _T_1521 & _T_1517; // @[AesSbox.scala 41:63] |
| wire _T_1529 = _T_1519 ^ _T_1527; // @[AesSbox.scala 40:63] |
| wire _T_1531 = _T_1517 ^ _T_1519; // @[AesSbox.scala 40:63] |
| wire _T_1533 = _T_1523 ^ _T_1527; // @[AesSbox.scala 40:63] |
| wire _T_1535 = _T_1533 & _T_1531; // @[AesSbox.scala 41:63] |
| wire _T_1537 = _T_1529 & _T_1525; // @[AesSbox.scala 41:63] |
| wire _T_1539 = _T_1517 & _T_1523; // @[AesSbox.scala 41:63] |
| wire _T_1541 = _T_1531 & _T_1539; // @[AesSbox.scala 41:63] |
| wire _T_1543 = _T_1531 ^ _T_1527; // @[AesSbox.scala 40:63] |
| wire _T_1545 = _T_1519 & _T_1521; // @[AesSbox.scala 41:63] |
| wire _T_1547 = _T_1525 & _T_1545; // @[AesSbox.scala 41:63] |
| wire _T_1549 = _T_1525 ^ _T_1527; // @[AesSbox.scala 40:63] |
| wire _T_1551 = _T_1519 ^ _T_1535; // @[AesSbox.scala 40:63] |
| wire _T_1553 = _T_1541 ^ _T_1543; // @[AesSbox.scala 40:63] |
| wire _T_1555 = _T_1523 ^ _T_1537; // @[AesSbox.scala 40:63] |
| wire _T_1557 = _T_1547 ^ _T_1549; // @[AesSbox.scala 40:63] |
| wire _T_1559 = _T_1553 ^ _T_1557; // @[AesSbox.scala 40:63] |
| wire _T_1561 = _T_1551 ^ _T_1555; // @[AesSbox.scala 40:63] |
| wire _T_1563 = _T_1551 ^ _T_1553; // @[AesSbox.scala 40:63] |
| wire _T_1565 = _T_1555 ^ _T_1557; // @[AesSbox.scala 40:63] |
| wire _T_1567 = _T_1561 ^ _T_1559; // @[AesSbox.scala 40:63] |
| wire _T_1569 = _T_1565 & _T_1433; // @[AesSbox.scala 41:63] |
| wire _T_1571 = _T_1557 & _T_1445; // @[AesSbox.scala 41:63] |
| wire _T_1573 = _T_1555 & matrix_1_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_1575 = _T_1563 & _T_1465; // @[AesSbox.scala 41:63] |
| wire _T_1577 = _T_1553 & _T_1431; // @[AesSbox.scala 41:63] |
| wire _T_1579 = _T_1551 & _T_1457; // @[AesSbox.scala 41:63] |
| wire _T_1581 = _T_1561 & _T_1439; // @[AesSbox.scala 41:63] |
| wire _T_1583 = _T_1567 & _T_1469; // @[AesSbox.scala 41:63] |
| wire _T_1585 = _T_1559 & _T_1451; // @[AesSbox.scala 41:63] |
| wire _T_1587 = _T_1565 & _T_1461; // @[AesSbox.scala 41:63] |
| wire _T_1589 = _T_1557 & _T_1463; // @[AesSbox.scala 41:63] |
| wire _T_1591 = _T_1555 & _T_1443; // @[AesSbox.scala 41:63] |
| wire _T_1593 = _T_1563 & _T_1437; // @[AesSbox.scala 41:63] |
| wire _T_1595 = _T_1553 & _T_1441; // @[AesSbox.scala 41:63] |
| wire _T_1597 = _T_1551 & _T_1467; // @[AesSbox.scala 41:63] |
| wire _T_1599 = _T_1561 & _T_1427; // @[AesSbox.scala 41:63] |
| wire _T_1601 = _T_1567 & _T_1473; // @[AesSbox.scala 41:63] |
| wire _T_1603 = _T_1559 & _T_1455; // @[AesSbox.scala 41:63] |
| wire _T_1605 = _T_1599 ^ _T_1601; // @[AesSbox.scala 40:63] |
| wire _T_1607 = _T_1577 ^ _T_1589; // @[AesSbox.scala 40:63] |
| wire _T_1609 = _T_1583 ^ _T_1605; // @[AesSbox.scala 40:63] |
| wire _T_1611 = _T_1587 ^ _T_1607; // @[AesSbox.scala 40:63] |
| wire _T_1613 = _T_1573 ^ _T_1593; // @[AesSbox.scala 40:63] |
| wire _T_1615 = _T_1569 ^ _T_1575; // @[AesSbox.scala 40:63] |
| wire _T_1617 = _T_1605 ^ _T_1615; // @[AesSbox.scala 40:63] |
| wire _T_1619 = _T_1571 ^ _T_1611; // @[AesSbox.scala 40:63] |
| wire _T_1621 = _T_1569 ^ _T_1581; // @[AesSbox.scala 40:63] |
| wire _T_1623 = _T_1579 ^ _T_1595; // @[AesSbox.scala 40:63] |
| wire _T_1625 = _T_1585 ^ _T_1597; // @[AesSbox.scala 40:63] |
| wire _T_1627 = _T_1573 ^ _T_1619; // @[AesSbox.scala 40:63] |
| wire _T_1629 = _T_1613 ^ _T_1625; // @[AesSbox.scala 40:63] |
| wire _T_1631 = _T_1591 ^ _T_1607; // @[AesSbox.scala 40:63] |
| wire _T_1633 = _T_1575 ^ _T_1581; // @[AesSbox.scala 40:63] |
| wire _T_1635 = _T_1611 ^ _T_1633; // @[AesSbox.scala 40:63] |
| wire _T_1637 = _T_1603 ^ _T_1629; // @[AesSbox.scala 40:63] |
| wire _T_1639 = _T_1599 ^ _T_1621; // @[AesSbox.scala 40:63] |
| wire _T_1641 = _T_1613 ^ _T_1623; // @[AesSbox.scala 40:63] |
| wire _T_1642 = _T_1609 ^ _T_1635; // @[AesSbox.scala 40:63] |
| wire _T_1643 = _T_1637 ^ _T_1639; // @[AesSbox.scala 42:65] |
| wire _T_1644 = ~_T_1643; // @[AesSbox.scala 42:51] |
| wire _T_1646 = _T_1579 ^ _T_1605; // @[AesSbox.scala 40:63] |
| wire _T_1647 = _T_1617 ^ _T_1619; // @[AesSbox.scala 40:63] |
| wire _T_1648 = _T_1627 ^ _T_1646; // @[AesSbox.scala 40:63] |
| wire _T_1650 = _T_1577 ^ _T_1593; // @[AesSbox.scala 40:63] |
| wire _T_1652 = _T_1615 ^ _T_1631; // @[AesSbox.scala 40:63] |
| wire _T_1653 = _T_1617 ^ _T_1641; // @[AesSbox.scala 42:65] |
| wire _T_1654 = ~_T_1653; // @[AesSbox.scala 42:51] |
| wire _T_1656 = _T_1585 ^ _T_1623; // @[AesSbox.scala 40:63] |
| wire _T_1658 = _T_1650 ^ _T_1656; // @[AesSbox.scala 40:63] |
| wire _T_1660 = _T_1577 ^ _T_1621; // @[AesSbox.scala 40:63] |
| wire _T_1661 = _T_1609 ^ _T_1658; // @[AesSbox.scala 42:65] |
| wire _T_1662 = ~_T_1661; // @[AesSbox.scala 42:51] |
| wire _T_1664 = _T_1629 ^ _T_1652; // @[AesSbox.scala 40:63] |
| wire _T_1665 = _T_1609 ^ _T_1664; // @[AesSbox.scala 40:63] |
| wire _T_1667 = _T_1619 ^ _T_1660; // @[AesSbox.scala 40:63] |
| wire _T_1668 = _T_1609 ^ _T_1667; // @[AesSbox.scala 42:65] |
| wire _T_1669 = ~_T_1668; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_0_1 = {_T_1642,_T_1669,_T_1644,_T_1647,_T_1648,_T_1665,_T_1662,_T_1654}; // @[Cat.scala 29:58] |
| wire _T_1694 = matrix_1_2[1] ^ matrix_1_2[3]; // @[AesSbox.scala 40:63] |
| wire _T_1696 = matrix_1_2[4] ^ matrix_1_2[7]; // @[AesSbox.scala 40:63] |
| wire _T_1698 = matrix_1_2[6] ^ matrix_1_2[5]; // @[AesSbox.scala 40:63] |
| wire _T_1700 = matrix_1_2[0] ^ _T_1698; // @[AesSbox.scala 40:63] |
| wire _T_1702 = _T_1694 ^ _T_1696; // @[AesSbox.scala 40:63] |
| wire _T_1704 = matrix_1_2[6] ^ matrix_1_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_1706 = matrix_1_2[7] ^ matrix_1_2[1]; // @[AesSbox.scala 40:63] |
| wire _T_1708 = _T_1694 ^ _T_1704; // @[AesSbox.scala 40:63] |
| wire _T_1710 = matrix_1_2[1] ^ _T_1700; // @[AesSbox.scala 40:63] |
| wire _T_1712 = matrix_1_2[4] ^ _T_1700; // @[AesSbox.scala 40:63] |
| wire _T_1714 = matrix_1_2[0] ^ _T_1702; // @[AesSbox.scala 40:63] |
| wire _T_1716 = _T_1702 ^ _T_1704; // @[AesSbox.scala 40:63] |
| wire _T_1718 = matrix_1_2[5] ^ matrix_1_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_1720 = _T_1698 ^ _T_1702; // @[AesSbox.scala 40:63] |
| wire _T_1722 = matrix_1_2[2] ^ _T_1706; // @[AesSbox.scala 40:63] |
| wire _T_1724 = matrix_1_2[7] ^ matrix_1_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_1726 = matrix_1_2[0] ^ _T_1708; // @[AesSbox.scala 40:63] |
| wire _T_1728 = matrix_1_2[1] ^ matrix_1_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_1730 = _T_1696 ^ _T_1728; // @[AesSbox.scala 40:63] |
| wire _T_1732 = _T_1700 ^ _T_1722; // @[AesSbox.scala 40:63] |
| wire _T_1734 = _T_1694 ^ _T_1718; // @[AesSbox.scala 40:63] |
| wire _T_1736 = matrix_1_2[7] ^ _T_1700; // @[AesSbox.scala 40:63] |
| wire _T_1738 = _T_1734 ^ _T_1702; // @[AesSbox.scala 40:63] |
| wire _T_1740 = _T_1734 ^ _T_1706; // @[AesSbox.scala 40:63] |
| wire _T_1742 = _T_1706 ^ _T_1730; // @[AesSbox.scala 40:63] |
| wire _T_1744 = _T_1724 ^ _T_1720; // @[AesSbox.scala 40:63] |
| wire _T_1746 = _T_1736 ^ _T_1726; // @[AesSbox.scala 40:63] |
| wire _T_1748 = _T_1730 & _T_1702; // @[AesSbox.scala 41:63] |
| wire _T_1750 = _T_1732 & _T_1714; // @[AesSbox.scala 41:63] |
| wire _T_1752 = _T_1716 ^ _T_1748; // @[AesSbox.scala 40:63] |
| wire _T_1754 = _T_1712 & matrix_1_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_1756 = _T_1754 ^ _T_1748; // @[AesSbox.scala 40:63] |
| wire _T_1758 = _T_1706 & _T_1734; // @[AesSbox.scala 41:63] |
| wire _T_1760 = _T_1710 & _T_1700; // @[AesSbox.scala 41:63] |
| wire _T_1762 = _T_1740 ^ _T_1758; // @[AesSbox.scala 40:63] |
| wire _T_1764 = _T_1736 & _T_1726; // @[AesSbox.scala 41:63] |
| wire _T_1766 = _T_1764 ^ _T_1758; // @[AesSbox.scala 40:63] |
| wire _T_1768 = _T_1696 & _T_1708; // @[AesSbox.scala 41:63] |
| wire _T_1770 = _T_1742 & _T_1738; // @[AesSbox.scala 41:63] |
| wire _T_1772 = _T_1770 ^ _T_1768; // @[AesSbox.scala 40:63] |
| wire _T_1774 = _T_1724 & _T_1720; // @[AesSbox.scala 41:63] |
| wire _T_1776 = _T_1774 ^ _T_1768; // @[AesSbox.scala 40:63] |
| wire _T_1778 = _T_1752 ^ _T_1750; // @[AesSbox.scala 40:63] |
| wire _T_1780 = _T_1756 ^ _T_1744; // @[AesSbox.scala 40:63] |
| wire _T_1782 = _T_1762 ^ _T_1760; // @[AesSbox.scala 40:63] |
| wire _T_1784 = _T_1766 ^ _T_1776; // @[AesSbox.scala 40:63] |
| wire _T_1786 = _T_1778 ^ _T_1772; // @[AesSbox.scala 40:63] |
| wire _T_1788 = _T_1780 ^ _T_1776; // @[AesSbox.scala 40:63] |
| wire _T_1790 = _T_1782 ^ _T_1772; // @[AesSbox.scala 40:63] |
| wire _T_1792 = _T_1784 ^ _T_1746; // @[AesSbox.scala 40:63] |
| wire _T_1794 = _T_1790 ^ _T_1792; // @[AesSbox.scala 40:63] |
| wire _T_1796 = _T_1790 & _T_1786; // @[AesSbox.scala 41:63] |
| wire _T_1798 = _T_1788 ^ _T_1796; // @[AesSbox.scala 40:63] |
| wire _T_1800 = _T_1786 ^ _T_1788; // @[AesSbox.scala 40:63] |
| wire _T_1802 = _T_1792 ^ _T_1796; // @[AesSbox.scala 40:63] |
| wire _T_1804 = _T_1802 & _T_1800; // @[AesSbox.scala 41:63] |
| wire _T_1806 = _T_1798 & _T_1794; // @[AesSbox.scala 41:63] |
| wire _T_1808 = _T_1786 & _T_1792; // @[AesSbox.scala 41:63] |
| wire _T_1810 = _T_1800 & _T_1808; // @[AesSbox.scala 41:63] |
| wire _T_1812 = _T_1800 ^ _T_1796; // @[AesSbox.scala 40:63] |
| wire _T_1814 = _T_1788 & _T_1790; // @[AesSbox.scala 41:63] |
| wire _T_1816 = _T_1794 & _T_1814; // @[AesSbox.scala 41:63] |
| wire _T_1818 = _T_1794 ^ _T_1796; // @[AesSbox.scala 40:63] |
| wire _T_1820 = _T_1788 ^ _T_1804; // @[AesSbox.scala 40:63] |
| wire _T_1822 = _T_1810 ^ _T_1812; // @[AesSbox.scala 40:63] |
| wire _T_1824 = _T_1792 ^ _T_1806; // @[AesSbox.scala 40:63] |
| wire _T_1826 = _T_1816 ^ _T_1818; // @[AesSbox.scala 40:63] |
| wire _T_1828 = _T_1822 ^ _T_1826; // @[AesSbox.scala 40:63] |
| wire _T_1830 = _T_1820 ^ _T_1824; // @[AesSbox.scala 40:63] |
| wire _T_1832 = _T_1820 ^ _T_1822; // @[AesSbox.scala 40:63] |
| wire _T_1834 = _T_1824 ^ _T_1826; // @[AesSbox.scala 40:63] |
| wire _T_1836 = _T_1830 ^ _T_1828; // @[AesSbox.scala 40:63] |
| wire _T_1838 = _T_1834 & _T_1702; // @[AesSbox.scala 41:63] |
| wire _T_1840 = _T_1826 & _T_1714; // @[AesSbox.scala 41:63] |
| wire _T_1842 = _T_1824 & matrix_1_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_1844 = _T_1832 & _T_1734; // @[AesSbox.scala 41:63] |
| wire _T_1846 = _T_1822 & _T_1700; // @[AesSbox.scala 41:63] |
| wire _T_1848 = _T_1820 & _T_1726; // @[AesSbox.scala 41:63] |
| wire _T_1850 = _T_1830 & _T_1708; // @[AesSbox.scala 41:63] |
| wire _T_1852 = _T_1836 & _T_1738; // @[AesSbox.scala 41:63] |
| wire _T_1854 = _T_1828 & _T_1720; // @[AesSbox.scala 41:63] |
| wire _T_1856 = _T_1834 & _T_1730; // @[AesSbox.scala 41:63] |
| wire _T_1858 = _T_1826 & _T_1732; // @[AesSbox.scala 41:63] |
| wire _T_1860 = _T_1824 & _T_1712; // @[AesSbox.scala 41:63] |
| wire _T_1862 = _T_1832 & _T_1706; // @[AesSbox.scala 41:63] |
| wire _T_1864 = _T_1822 & _T_1710; // @[AesSbox.scala 41:63] |
| wire _T_1866 = _T_1820 & _T_1736; // @[AesSbox.scala 41:63] |
| wire _T_1868 = _T_1830 & _T_1696; // @[AesSbox.scala 41:63] |
| wire _T_1870 = _T_1836 & _T_1742; // @[AesSbox.scala 41:63] |
| wire _T_1872 = _T_1828 & _T_1724; // @[AesSbox.scala 41:63] |
| wire _T_1874 = _T_1868 ^ _T_1870; // @[AesSbox.scala 40:63] |
| wire _T_1876 = _T_1846 ^ _T_1858; // @[AesSbox.scala 40:63] |
| wire _T_1878 = _T_1852 ^ _T_1874; // @[AesSbox.scala 40:63] |
| wire _T_1880 = _T_1856 ^ _T_1876; // @[AesSbox.scala 40:63] |
| wire _T_1882 = _T_1842 ^ _T_1862; // @[AesSbox.scala 40:63] |
| wire _T_1884 = _T_1838 ^ _T_1844; // @[AesSbox.scala 40:63] |
| wire _T_1886 = _T_1874 ^ _T_1884; // @[AesSbox.scala 40:63] |
| wire _T_1888 = _T_1840 ^ _T_1880; // @[AesSbox.scala 40:63] |
| wire _T_1890 = _T_1838 ^ _T_1850; // @[AesSbox.scala 40:63] |
| wire _T_1892 = _T_1848 ^ _T_1864; // @[AesSbox.scala 40:63] |
| wire _T_1894 = _T_1854 ^ _T_1866; // @[AesSbox.scala 40:63] |
| wire _T_1896 = _T_1842 ^ _T_1888; // @[AesSbox.scala 40:63] |
| wire _T_1898 = _T_1882 ^ _T_1894; // @[AesSbox.scala 40:63] |
| wire _T_1900 = _T_1860 ^ _T_1876; // @[AesSbox.scala 40:63] |
| wire _T_1902 = _T_1844 ^ _T_1850; // @[AesSbox.scala 40:63] |
| wire _T_1904 = _T_1880 ^ _T_1902; // @[AesSbox.scala 40:63] |
| wire _T_1906 = _T_1872 ^ _T_1898; // @[AesSbox.scala 40:63] |
| wire _T_1908 = _T_1868 ^ _T_1890; // @[AesSbox.scala 40:63] |
| wire _T_1910 = _T_1882 ^ _T_1892; // @[AesSbox.scala 40:63] |
| wire _T_1911 = _T_1878 ^ _T_1904; // @[AesSbox.scala 40:63] |
| wire _T_1912 = _T_1906 ^ _T_1908; // @[AesSbox.scala 42:65] |
| wire _T_1913 = ~_T_1912; // @[AesSbox.scala 42:51] |
| wire _T_1915 = _T_1848 ^ _T_1874; // @[AesSbox.scala 40:63] |
| wire _T_1916 = _T_1886 ^ _T_1888; // @[AesSbox.scala 40:63] |
| wire _T_1917 = _T_1896 ^ _T_1915; // @[AesSbox.scala 40:63] |
| wire _T_1919 = _T_1846 ^ _T_1862; // @[AesSbox.scala 40:63] |
| wire _T_1921 = _T_1884 ^ _T_1900; // @[AesSbox.scala 40:63] |
| wire _T_1922 = _T_1886 ^ _T_1910; // @[AesSbox.scala 42:65] |
| wire _T_1923 = ~_T_1922; // @[AesSbox.scala 42:51] |
| wire _T_1925 = _T_1854 ^ _T_1892; // @[AesSbox.scala 40:63] |
| wire _T_1927 = _T_1919 ^ _T_1925; // @[AesSbox.scala 40:63] |
| wire _T_1929 = _T_1846 ^ _T_1890; // @[AesSbox.scala 40:63] |
| wire _T_1930 = _T_1878 ^ _T_1927; // @[AesSbox.scala 42:65] |
| wire _T_1931 = ~_T_1930; // @[AesSbox.scala 42:51] |
| wire _T_1933 = _T_1898 ^ _T_1921; // @[AesSbox.scala 40:63] |
| wire _T_1934 = _T_1878 ^ _T_1933; // @[AesSbox.scala 40:63] |
| wire _T_1936 = _T_1888 ^ _T_1929; // @[AesSbox.scala 40:63] |
| wire _T_1937 = _T_1878 ^ _T_1936; // @[AesSbox.scala 42:65] |
| wire _T_1938 = ~_T_1937; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_3_2 = {_T_1911,_T_1938,_T_1913,_T_1916,_T_1917,_T_1934,_T_1931,_T_1923}; // @[Cat.scala 29:58] |
| wire _T_1963 = matrix_1_3[1] ^ matrix_1_3[3]; // @[AesSbox.scala 40:63] |
| wire _T_1965 = matrix_1_3[4] ^ matrix_1_3[7]; // @[AesSbox.scala 40:63] |
| wire _T_1967 = matrix_1_3[6] ^ matrix_1_3[5]; // @[AesSbox.scala 40:63] |
| wire _T_1969 = matrix_1_3[0] ^ _T_1967; // @[AesSbox.scala 40:63] |
| wire _T_1971 = _T_1963 ^ _T_1965; // @[AesSbox.scala 40:63] |
| wire _T_1973 = matrix_1_3[6] ^ matrix_1_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_1975 = matrix_1_3[7] ^ matrix_1_3[1]; // @[AesSbox.scala 40:63] |
| wire _T_1977 = _T_1963 ^ _T_1973; // @[AesSbox.scala 40:63] |
| wire _T_1979 = matrix_1_3[1] ^ _T_1969; // @[AesSbox.scala 40:63] |
| wire _T_1981 = matrix_1_3[4] ^ _T_1969; // @[AesSbox.scala 40:63] |
| wire _T_1983 = matrix_1_3[0] ^ _T_1971; // @[AesSbox.scala 40:63] |
| wire _T_1985 = _T_1971 ^ _T_1973; // @[AesSbox.scala 40:63] |
| wire _T_1987 = matrix_1_3[5] ^ matrix_1_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_1989 = _T_1967 ^ _T_1971; // @[AesSbox.scala 40:63] |
| wire _T_1991 = matrix_1_3[2] ^ _T_1975; // @[AesSbox.scala 40:63] |
| wire _T_1993 = matrix_1_3[7] ^ matrix_1_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_1995 = matrix_1_3[0] ^ _T_1977; // @[AesSbox.scala 40:63] |
| wire _T_1997 = matrix_1_3[1] ^ matrix_1_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_1999 = _T_1965 ^ _T_1997; // @[AesSbox.scala 40:63] |
| wire _T_2001 = _T_1969 ^ _T_1991; // @[AesSbox.scala 40:63] |
| wire _T_2003 = _T_1963 ^ _T_1987; // @[AesSbox.scala 40:63] |
| wire _T_2005 = matrix_1_3[7] ^ _T_1969; // @[AesSbox.scala 40:63] |
| wire _T_2007 = _T_2003 ^ _T_1971; // @[AesSbox.scala 40:63] |
| wire _T_2009 = _T_2003 ^ _T_1975; // @[AesSbox.scala 40:63] |
| wire _T_2011 = _T_1975 ^ _T_1999; // @[AesSbox.scala 40:63] |
| wire _T_2013 = _T_1993 ^ _T_1989; // @[AesSbox.scala 40:63] |
| wire _T_2015 = _T_2005 ^ _T_1995; // @[AesSbox.scala 40:63] |
| wire _T_2017 = _T_1999 & _T_1971; // @[AesSbox.scala 41:63] |
| wire _T_2019 = _T_2001 & _T_1983; // @[AesSbox.scala 41:63] |
| wire _T_2021 = _T_1985 ^ _T_2017; // @[AesSbox.scala 40:63] |
| wire _T_2023 = _T_1981 & matrix_1_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_2025 = _T_2023 ^ _T_2017; // @[AesSbox.scala 40:63] |
| wire _T_2027 = _T_1975 & _T_2003; // @[AesSbox.scala 41:63] |
| wire _T_2029 = _T_1979 & _T_1969; // @[AesSbox.scala 41:63] |
| wire _T_2031 = _T_2009 ^ _T_2027; // @[AesSbox.scala 40:63] |
| wire _T_2033 = _T_2005 & _T_1995; // @[AesSbox.scala 41:63] |
| wire _T_2035 = _T_2033 ^ _T_2027; // @[AesSbox.scala 40:63] |
| wire _T_2037 = _T_1965 & _T_1977; // @[AesSbox.scala 41:63] |
| wire _T_2039 = _T_2011 & _T_2007; // @[AesSbox.scala 41:63] |
| wire _T_2041 = _T_2039 ^ _T_2037; // @[AesSbox.scala 40:63] |
| wire _T_2043 = _T_1993 & _T_1989; // @[AesSbox.scala 41:63] |
| wire _T_2045 = _T_2043 ^ _T_2037; // @[AesSbox.scala 40:63] |
| wire _T_2047 = _T_2021 ^ _T_2019; // @[AesSbox.scala 40:63] |
| wire _T_2049 = _T_2025 ^ _T_2013; // @[AesSbox.scala 40:63] |
| wire _T_2051 = _T_2031 ^ _T_2029; // @[AesSbox.scala 40:63] |
| wire _T_2053 = _T_2035 ^ _T_2045; // @[AesSbox.scala 40:63] |
| wire _T_2055 = _T_2047 ^ _T_2041; // @[AesSbox.scala 40:63] |
| wire _T_2057 = _T_2049 ^ _T_2045; // @[AesSbox.scala 40:63] |
| wire _T_2059 = _T_2051 ^ _T_2041; // @[AesSbox.scala 40:63] |
| wire _T_2061 = _T_2053 ^ _T_2015; // @[AesSbox.scala 40:63] |
| wire _T_2063 = _T_2059 ^ _T_2061; // @[AesSbox.scala 40:63] |
| wire _T_2065 = _T_2059 & _T_2055; // @[AesSbox.scala 41:63] |
| wire _T_2067 = _T_2057 ^ _T_2065; // @[AesSbox.scala 40:63] |
| wire _T_2069 = _T_2055 ^ _T_2057; // @[AesSbox.scala 40:63] |
| wire _T_2071 = _T_2061 ^ _T_2065; // @[AesSbox.scala 40:63] |
| wire _T_2073 = _T_2071 & _T_2069; // @[AesSbox.scala 41:63] |
| wire _T_2075 = _T_2067 & _T_2063; // @[AesSbox.scala 41:63] |
| wire _T_2077 = _T_2055 & _T_2061; // @[AesSbox.scala 41:63] |
| wire _T_2079 = _T_2069 & _T_2077; // @[AesSbox.scala 41:63] |
| wire _T_2081 = _T_2069 ^ _T_2065; // @[AesSbox.scala 40:63] |
| wire _T_2083 = _T_2057 & _T_2059; // @[AesSbox.scala 41:63] |
| wire _T_2085 = _T_2063 & _T_2083; // @[AesSbox.scala 41:63] |
| wire _T_2087 = _T_2063 ^ _T_2065; // @[AesSbox.scala 40:63] |
| wire _T_2089 = _T_2057 ^ _T_2073; // @[AesSbox.scala 40:63] |
| wire _T_2091 = _T_2079 ^ _T_2081; // @[AesSbox.scala 40:63] |
| wire _T_2093 = _T_2061 ^ _T_2075; // @[AesSbox.scala 40:63] |
| wire _T_2095 = _T_2085 ^ _T_2087; // @[AesSbox.scala 40:63] |
| wire _T_2097 = _T_2091 ^ _T_2095; // @[AesSbox.scala 40:63] |
| wire _T_2099 = _T_2089 ^ _T_2093; // @[AesSbox.scala 40:63] |
| wire _T_2101 = _T_2089 ^ _T_2091; // @[AesSbox.scala 40:63] |
| wire _T_2103 = _T_2093 ^ _T_2095; // @[AesSbox.scala 40:63] |
| wire _T_2105 = _T_2099 ^ _T_2097; // @[AesSbox.scala 40:63] |
| wire _T_2107 = _T_2103 & _T_1971; // @[AesSbox.scala 41:63] |
| wire _T_2109 = _T_2095 & _T_1983; // @[AesSbox.scala 41:63] |
| wire _T_2111 = _T_2093 & matrix_1_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_2113 = _T_2101 & _T_2003; // @[AesSbox.scala 41:63] |
| wire _T_2115 = _T_2091 & _T_1969; // @[AesSbox.scala 41:63] |
| wire _T_2117 = _T_2089 & _T_1995; // @[AesSbox.scala 41:63] |
| wire _T_2119 = _T_2099 & _T_1977; // @[AesSbox.scala 41:63] |
| wire _T_2121 = _T_2105 & _T_2007; // @[AesSbox.scala 41:63] |
| wire _T_2123 = _T_2097 & _T_1989; // @[AesSbox.scala 41:63] |
| wire _T_2125 = _T_2103 & _T_1999; // @[AesSbox.scala 41:63] |
| wire _T_2127 = _T_2095 & _T_2001; // @[AesSbox.scala 41:63] |
| wire _T_2129 = _T_2093 & _T_1981; // @[AesSbox.scala 41:63] |
| wire _T_2131 = _T_2101 & _T_1975; // @[AesSbox.scala 41:63] |
| wire _T_2133 = _T_2091 & _T_1979; // @[AesSbox.scala 41:63] |
| wire _T_2135 = _T_2089 & _T_2005; // @[AesSbox.scala 41:63] |
| wire _T_2137 = _T_2099 & _T_1965; // @[AesSbox.scala 41:63] |
| wire _T_2139 = _T_2105 & _T_2011; // @[AesSbox.scala 41:63] |
| wire _T_2141 = _T_2097 & _T_1993; // @[AesSbox.scala 41:63] |
| wire _T_2143 = _T_2137 ^ _T_2139; // @[AesSbox.scala 40:63] |
| wire _T_2145 = _T_2115 ^ _T_2127; // @[AesSbox.scala 40:63] |
| wire _T_2147 = _T_2121 ^ _T_2143; // @[AesSbox.scala 40:63] |
| wire _T_2149 = _T_2125 ^ _T_2145; // @[AesSbox.scala 40:63] |
| wire _T_2151 = _T_2111 ^ _T_2131; // @[AesSbox.scala 40:63] |
| wire _T_2153 = _T_2107 ^ _T_2113; // @[AesSbox.scala 40:63] |
| wire _T_2155 = _T_2143 ^ _T_2153; // @[AesSbox.scala 40:63] |
| wire _T_2157 = _T_2109 ^ _T_2149; // @[AesSbox.scala 40:63] |
| wire _T_2159 = _T_2107 ^ _T_2119; // @[AesSbox.scala 40:63] |
| wire _T_2161 = _T_2117 ^ _T_2133; // @[AesSbox.scala 40:63] |
| wire _T_2163 = _T_2123 ^ _T_2135; // @[AesSbox.scala 40:63] |
| wire _T_2165 = _T_2111 ^ _T_2157; // @[AesSbox.scala 40:63] |
| wire _T_2167 = _T_2151 ^ _T_2163; // @[AesSbox.scala 40:63] |
| wire _T_2169 = _T_2129 ^ _T_2145; // @[AesSbox.scala 40:63] |
| wire _T_2171 = _T_2113 ^ _T_2119; // @[AesSbox.scala 40:63] |
| wire _T_2173 = _T_2149 ^ _T_2171; // @[AesSbox.scala 40:63] |
| wire _T_2175 = _T_2141 ^ _T_2167; // @[AesSbox.scala 40:63] |
| wire _T_2177 = _T_2137 ^ _T_2159; // @[AesSbox.scala 40:63] |
| wire _T_2179 = _T_2151 ^ _T_2161; // @[AesSbox.scala 40:63] |
| wire _T_2180 = _T_2147 ^ _T_2173; // @[AesSbox.scala 40:63] |
| wire _T_2181 = _T_2175 ^ _T_2177; // @[AesSbox.scala 42:65] |
| wire _T_2182 = ~_T_2181; // @[AesSbox.scala 42:51] |
| wire _T_2184 = _T_2117 ^ _T_2143; // @[AesSbox.scala 40:63] |
| wire _T_2185 = _T_2155 ^ _T_2157; // @[AesSbox.scala 40:63] |
| wire _T_2186 = _T_2165 ^ _T_2184; // @[AesSbox.scala 40:63] |
| wire _T_2188 = _T_2115 ^ _T_2131; // @[AesSbox.scala 40:63] |
| wire _T_2190 = _T_2153 ^ _T_2169; // @[AesSbox.scala 40:63] |
| wire _T_2191 = _T_2155 ^ _T_2179; // @[AesSbox.scala 42:65] |
| wire _T_2192 = ~_T_2191; // @[AesSbox.scala 42:51] |
| wire _T_2194 = _T_2123 ^ _T_2161; // @[AesSbox.scala 40:63] |
| wire _T_2196 = _T_2188 ^ _T_2194; // @[AesSbox.scala 40:63] |
| wire _T_2198 = _T_2115 ^ _T_2159; // @[AesSbox.scala 40:63] |
| wire _T_2199 = _T_2147 ^ _T_2196; // @[AesSbox.scala 42:65] |
| wire _T_2200 = ~_T_2199; // @[AesSbox.scala 42:51] |
| wire _T_2202 = _T_2167 ^ _T_2190; // @[AesSbox.scala 40:63] |
| wire _T_2203 = _T_2147 ^ _T_2202; // @[AesSbox.scala 40:63] |
| wire _T_2205 = _T_2157 ^ _T_2198; // @[AesSbox.scala 40:63] |
| wire _T_2206 = _T_2147 ^ _T_2205; // @[AesSbox.scala 42:65] |
| wire _T_2207 = ~_T_2206; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_2_3 = {_T_2180,_T_2207,_T_2182,_T_2185,_T_2186,_T_2203,_T_2200,_T_2192}; // @[Cat.scala 29:58] |
| wire _T_2233 = matrix_2_0[1] ^ matrix_2_0[3]; // @[AesSbox.scala 40:63] |
| wire _T_2235 = matrix_2_0[4] ^ matrix_2_0[7]; // @[AesSbox.scala 40:63] |
| wire _T_2237 = matrix_2_0[6] ^ matrix_2_0[5]; // @[AesSbox.scala 40:63] |
| wire _T_2239 = matrix_2_0[0] ^ _T_2237; // @[AesSbox.scala 40:63] |
| wire _T_2241 = _T_2233 ^ _T_2235; // @[AesSbox.scala 40:63] |
| wire _T_2243 = matrix_2_0[6] ^ matrix_2_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_2245 = matrix_2_0[7] ^ matrix_2_0[1]; // @[AesSbox.scala 40:63] |
| wire _T_2247 = _T_2233 ^ _T_2243; // @[AesSbox.scala 40:63] |
| wire _T_2249 = matrix_2_0[1] ^ _T_2239; // @[AesSbox.scala 40:63] |
| wire _T_2251 = matrix_2_0[4] ^ _T_2239; // @[AesSbox.scala 40:63] |
| wire _T_2253 = matrix_2_0[0] ^ _T_2241; // @[AesSbox.scala 40:63] |
| wire _T_2255 = _T_2241 ^ _T_2243; // @[AesSbox.scala 40:63] |
| wire _T_2257 = matrix_2_0[5] ^ matrix_2_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_2259 = _T_2237 ^ _T_2241; // @[AesSbox.scala 40:63] |
| wire _T_2261 = matrix_2_0[2] ^ _T_2245; // @[AesSbox.scala 40:63] |
| wire _T_2263 = matrix_2_0[7] ^ matrix_2_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_2265 = matrix_2_0[0] ^ _T_2247; // @[AesSbox.scala 40:63] |
| wire _T_2267 = matrix_2_0[1] ^ matrix_2_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_2269 = _T_2235 ^ _T_2267; // @[AesSbox.scala 40:63] |
| wire _T_2271 = _T_2239 ^ _T_2261; // @[AesSbox.scala 40:63] |
| wire _T_2273 = _T_2233 ^ _T_2257; // @[AesSbox.scala 40:63] |
| wire _T_2275 = matrix_2_0[7] ^ _T_2239; // @[AesSbox.scala 40:63] |
| wire _T_2277 = _T_2273 ^ _T_2241; // @[AesSbox.scala 40:63] |
| wire _T_2279 = _T_2273 ^ _T_2245; // @[AesSbox.scala 40:63] |
| wire _T_2281 = _T_2245 ^ _T_2269; // @[AesSbox.scala 40:63] |
| wire _T_2283 = _T_2263 ^ _T_2259; // @[AesSbox.scala 40:63] |
| wire _T_2285 = _T_2275 ^ _T_2265; // @[AesSbox.scala 40:63] |
| wire _T_2287 = _T_2269 & _T_2241; // @[AesSbox.scala 41:63] |
| wire _T_2289 = _T_2271 & _T_2253; // @[AesSbox.scala 41:63] |
| wire _T_2291 = _T_2255 ^ _T_2287; // @[AesSbox.scala 40:63] |
| wire _T_2293 = _T_2251 & matrix_2_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_2295 = _T_2293 ^ _T_2287; // @[AesSbox.scala 40:63] |
| wire _T_2297 = _T_2245 & _T_2273; // @[AesSbox.scala 41:63] |
| wire _T_2299 = _T_2249 & _T_2239; // @[AesSbox.scala 41:63] |
| wire _T_2301 = _T_2279 ^ _T_2297; // @[AesSbox.scala 40:63] |
| wire _T_2303 = _T_2275 & _T_2265; // @[AesSbox.scala 41:63] |
| wire _T_2305 = _T_2303 ^ _T_2297; // @[AesSbox.scala 40:63] |
| wire _T_2307 = _T_2235 & _T_2247; // @[AesSbox.scala 41:63] |
| wire _T_2309 = _T_2281 & _T_2277; // @[AesSbox.scala 41:63] |
| wire _T_2311 = _T_2309 ^ _T_2307; // @[AesSbox.scala 40:63] |
| wire _T_2313 = _T_2263 & _T_2259; // @[AesSbox.scala 41:63] |
| wire _T_2315 = _T_2313 ^ _T_2307; // @[AesSbox.scala 40:63] |
| wire _T_2317 = _T_2291 ^ _T_2289; // @[AesSbox.scala 40:63] |
| wire _T_2319 = _T_2295 ^ _T_2283; // @[AesSbox.scala 40:63] |
| wire _T_2321 = _T_2301 ^ _T_2299; // @[AesSbox.scala 40:63] |
| wire _T_2323 = _T_2305 ^ _T_2315; // @[AesSbox.scala 40:63] |
| wire _T_2325 = _T_2317 ^ _T_2311; // @[AesSbox.scala 40:63] |
| wire _T_2327 = _T_2319 ^ _T_2315; // @[AesSbox.scala 40:63] |
| wire _T_2329 = _T_2321 ^ _T_2311; // @[AesSbox.scala 40:63] |
| wire _T_2331 = _T_2323 ^ _T_2285; // @[AesSbox.scala 40:63] |
| wire _T_2333 = _T_2329 ^ _T_2331; // @[AesSbox.scala 40:63] |
| wire _T_2335 = _T_2329 & _T_2325; // @[AesSbox.scala 41:63] |
| wire _T_2337 = _T_2327 ^ _T_2335; // @[AesSbox.scala 40:63] |
| wire _T_2339 = _T_2325 ^ _T_2327; // @[AesSbox.scala 40:63] |
| wire _T_2341 = _T_2331 ^ _T_2335; // @[AesSbox.scala 40:63] |
| wire _T_2343 = _T_2341 & _T_2339; // @[AesSbox.scala 41:63] |
| wire _T_2345 = _T_2337 & _T_2333; // @[AesSbox.scala 41:63] |
| wire _T_2347 = _T_2325 & _T_2331; // @[AesSbox.scala 41:63] |
| wire _T_2349 = _T_2339 & _T_2347; // @[AesSbox.scala 41:63] |
| wire _T_2351 = _T_2339 ^ _T_2335; // @[AesSbox.scala 40:63] |
| wire _T_2353 = _T_2327 & _T_2329; // @[AesSbox.scala 41:63] |
| wire _T_2355 = _T_2333 & _T_2353; // @[AesSbox.scala 41:63] |
| wire _T_2357 = _T_2333 ^ _T_2335; // @[AesSbox.scala 40:63] |
| wire _T_2359 = _T_2327 ^ _T_2343; // @[AesSbox.scala 40:63] |
| wire _T_2361 = _T_2349 ^ _T_2351; // @[AesSbox.scala 40:63] |
| wire _T_2363 = _T_2331 ^ _T_2345; // @[AesSbox.scala 40:63] |
| wire _T_2365 = _T_2355 ^ _T_2357; // @[AesSbox.scala 40:63] |
| wire _T_2367 = _T_2361 ^ _T_2365; // @[AesSbox.scala 40:63] |
| wire _T_2369 = _T_2359 ^ _T_2363; // @[AesSbox.scala 40:63] |
| wire _T_2371 = _T_2359 ^ _T_2361; // @[AesSbox.scala 40:63] |
| wire _T_2373 = _T_2363 ^ _T_2365; // @[AesSbox.scala 40:63] |
| wire _T_2375 = _T_2369 ^ _T_2367; // @[AesSbox.scala 40:63] |
| wire _T_2377 = _T_2373 & _T_2241; // @[AesSbox.scala 41:63] |
| wire _T_2379 = _T_2365 & _T_2253; // @[AesSbox.scala 41:63] |
| wire _T_2381 = _T_2363 & matrix_2_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_2383 = _T_2371 & _T_2273; // @[AesSbox.scala 41:63] |
| wire _T_2385 = _T_2361 & _T_2239; // @[AesSbox.scala 41:63] |
| wire _T_2387 = _T_2359 & _T_2265; // @[AesSbox.scala 41:63] |
| wire _T_2389 = _T_2369 & _T_2247; // @[AesSbox.scala 41:63] |
| wire _T_2391 = _T_2375 & _T_2277; // @[AesSbox.scala 41:63] |
| wire _T_2393 = _T_2367 & _T_2259; // @[AesSbox.scala 41:63] |
| wire _T_2395 = _T_2373 & _T_2269; // @[AesSbox.scala 41:63] |
| wire _T_2397 = _T_2365 & _T_2271; // @[AesSbox.scala 41:63] |
| wire _T_2399 = _T_2363 & _T_2251; // @[AesSbox.scala 41:63] |
| wire _T_2401 = _T_2371 & _T_2245; // @[AesSbox.scala 41:63] |
| wire _T_2403 = _T_2361 & _T_2249; // @[AesSbox.scala 41:63] |
| wire _T_2405 = _T_2359 & _T_2275; // @[AesSbox.scala 41:63] |
| wire _T_2407 = _T_2369 & _T_2235; // @[AesSbox.scala 41:63] |
| wire _T_2409 = _T_2375 & _T_2281; // @[AesSbox.scala 41:63] |
| wire _T_2411 = _T_2367 & _T_2263; // @[AesSbox.scala 41:63] |
| wire _T_2413 = _T_2407 ^ _T_2409; // @[AesSbox.scala 40:63] |
| wire _T_2415 = _T_2385 ^ _T_2397; // @[AesSbox.scala 40:63] |
| wire _T_2417 = _T_2391 ^ _T_2413; // @[AesSbox.scala 40:63] |
| wire _T_2419 = _T_2395 ^ _T_2415; // @[AesSbox.scala 40:63] |
| wire _T_2421 = _T_2381 ^ _T_2401; // @[AesSbox.scala 40:63] |
| wire _T_2423 = _T_2377 ^ _T_2383; // @[AesSbox.scala 40:63] |
| wire _T_2425 = _T_2413 ^ _T_2423; // @[AesSbox.scala 40:63] |
| wire _T_2427 = _T_2379 ^ _T_2419; // @[AesSbox.scala 40:63] |
| wire _T_2429 = _T_2377 ^ _T_2389; // @[AesSbox.scala 40:63] |
| wire _T_2431 = _T_2387 ^ _T_2403; // @[AesSbox.scala 40:63] |
| wire _T_2433 = _T_2393 ^ _T_2405; // @[AesSbox.scala 40:63] |
| wire _T_2435 = _T_2381 ^ _T_2427; // @[AesSbox.scala 40:63] |
| wire _T_2437 = _T_2421 ^ _T_2433; // @[AesSbox.scala 40:63] |
| wire _T_2439 = _T_2399 ^ _T_2415; // @[AesSbox.scala 40:63] |
| wire _T_2441 = _T_2383 ^ _T_2389; // @[AesSbox.scala 40:63] |
| wire _T_2443 = _T_2419 ^ _T_2441; // @[AesSbox.scala 40:63] |
| wire _T_2445 = _T_2411 ^ _T_2437; // @[AesSbox.scala 40:63] |
| wire _T_2447 = _T_2407 ^ _T_2429; // @[AesSbox.scala 40:63] |
| wire _T_2449 = _T_2421 ^ _T_2431; // @[AesSbox.scala 40:63] |
| wire _T_2450 = _T_2417 ^ _T_2443; // @[AesSbox.scala 40:63] |
| wire _T_2451 = _T_2445 ^ _T_2447; // @[AesSbox.scala 42:65] |
| wire _T_2452 = ~_T_2451; // @[AesSbox.scala 42:51] |
| wire _T_2454 = _T_2387 ^ _T_2413; // @[AesSbox.scala 40:63] |
| wire _T_2455 = _T_2425 ^ _T_2427; // @[AesSbox.scala 40:63] |
| wire _T_2456 = _T_2435 ^ _T_2454; // @[AesSbox.scala 40:63] |
| wire _T_2458 = _T_2385 ^ _T_2401; // @[AesSbox.scala 40:63] |
| wire _T_2460 = _T_2423 ^ _T_2439; // @[AesSbox.scala 40:63] |
| wire _T_2461 = _T_2425 ^ _T_2449; // @[AesSbox.scala 42:65] |
| wire _T_2462 = ~_T_2461; // @[AesSbox.scala 42:51] |
| wire _T_2464 = _T_2393 ^ _T_2431; // @[AesSbox.scala 40:63] |
| wire _T_2466 = _T_2458 ^ _T_2464; // @[AesSbox.scala 40:63] |
| wire _T_2468 = _T_2385 ^ _T_2429; // @[AesSbox.scala 40:63] |
| wire _T_2469 = _T_2417 ^ _T_2466; // @[AesSbox.scala 42:65] |
| wire _T_2470 = ~_T_2469; // @[AesSbox.scala 42:51] |
| wire _T_2472 = _T_2437 ^ _T_2460; // @[AesSbox.scala 40:63] |
| wire _T_2473 = _T_2417 ^ _T_2472; // @[AesSbox.scala 40:63] |
| wire _T_2475 = _T_2427 ^ _T_2468; // @[AesSbox.scala 40:63] |
| wire _T_2476 = _T_2417 ^ _T_2475; // @[AesSbox.scala 42:65] |
| wire _T_2477 = ~_T_2476; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_2_0 = {_T_2450,_T_2477,_T_2452,_T_2455,_T_2456,_T_2473,_T_2470,_T_2462}; // @[Cat.scala 29:58] |
| wire _T_2502 = matrix_2_1[1] ^ matrix_2_1[3]; // @[AesSbox.scala 40:63] |
| wire _T_2504 = matrix_2_1[4] ^ matrix_2_1[7]; // @[AesSbox.scala 40:63] |
| wire _T_2506 = matrix_2_1[6] ^ matrix_2_1[5]; // @[AesSbox.scala 40:63] |
| wire _T_2508 = matrix_2_1[0] ^ _T_2506; // @[AesSbox.scala 40:63] |
| wire _T_2510 = _T_2502 ^ _T_2504; // @[AesSbox.scala 40:63] |
| wire _T_2512 = matrix_2_1[6] ^ matrix_2_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_2514 = matrix_2_1[7] ^ matrix_2_1[1]; // @[AesSbox.scala 40:63] |
| wire _T_2516 = _T_2502 ^ _T_2512; // @[AesSbox.scala 40:63] |
| wire _T_2518 = matrix_2_1[1] ^ _T_2508; // @[AesSbox.scala 40:63] |
| wire _T_2520 = matrix_2_1[4] ^ _T_2508; // @[AesSbox.scala 40:63] |
| wire _T_2522 = matrix_2_1[0] ^ _T_2510; // @[AesSbox.scala 40:63] |
| wire _T_2524 = _T_2510 ^ _T_2512; // @[AesSbox.scala 40:63] |
| wire _T_2526 = matrix_2_1[5] ^ matrix_2_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_2528 = _T_2506 ^ _T_2510; // @[AesSbox.scala 40:63] |
| wire _T_2530 = matrix_2_1[2] ^ _T_2514; // @[AesSbox.scala 40:63] |
| wire _T_2532 = matrix_2_1[7] ^ matrix_2_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_2534 = matrix_2_1[0] ^ _T_2516; // @[AesSbox.scala 40:63] |
| wire _T_2536 = matrix_2_1[1] ^ matrix_2_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_2538 = _T_2504 ^ _T_2536; // @[AesSbox.scala 40:63] |
| wire _T_2540 = _T_2508 ^ _T_2530; // @[AesSbox.scala 40:63] |
| wire _T_2542 = _T_2502 ^ _T_2526; // @[AesSbox.scala 40:63] |
| wire _T_2544 = matrix_2_1[7] ^ _T_2508; // @[AesSbox.scala 40:63] |
| wire _T_2546 = _T_2542 ^ _T_2510; // @[AesSbox.scala 40:63] |
| wire _T_2548 = _T_2542 ^ _T_2514; // @[AesSbox.scala 40:63] |
| wire _T_2550 = _T_2514 ^ _T_2538; // @[AesSbox.scala 40:63] |
| wire _T_2552 = _T_2532 ^ _T_2528; // @[AesSbox.scala 40:63] |
| wire _T_2554 = _T_2544 ^ _T_2534; // @[AesSbox.scala 40:63] |
| wire _T_2556 = _T_2538 & _T_2510; // @[AesSbox.scala 41:63] |
| wire _T_2558 = _T_2540 & _T_2522; // @[AesSbox.scala 41:63] |
| wire _T_2560 = _T_2524 ^ _T_2556; // @[AesSbox.scala 40:63] |
| wire _T_2562 = _T_2520 & matrix_2_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_2564 = _T_2562 ^ _T_2556; // @[AesSbox.scala 40:63] |
| wire _T_2566 = _T_2514 & _T_2542; // @[AesSbox.scala 41:63] |
| wire _T_2568 = _T_2518 & _T_2508; // @[AesSbox.scala 41:63] |
| wire _T_2570 = _T_2548 ^ _T_2566; // @[AesSbox.scala 40:63] |
| wire _T_2572 = _T_2544 & _T_2534; // @[AesSbox.scala 41:63] |
| wire _T_2574 = _T_2572 ^ _T_2566; // @[AesSbox.scala 40:63] |
| wire _T_2576 = _T_2504 & _T_2516; // @[AesSbox.scala 41:63] |
| wire _T_2578 = _T_2550 & _T_2546; // @[AesSbox.scala 41:63] |
| wire _T_2580 = _T_2578 ^ _T_2576; // @[AesSbox.scala 40:63] |
| wire _T_2582 = _T_2532 & _T_2528; // @[AesSbox.scala 41:63] |
| wire _T_2584 = _T_2582 ^ _T_2576; // @[AesSbox.scala 40:63] |
| wire _T_2586 = _T_2560 ^ _T_2558; // @[AesSbox.scala 40:63] |
| wire _T_2588 = _T_2564 ^ _T_2552; // @[AesSbox.scala 40:63] |
| wire _T_2590 = _T_2570 ^ _T_2568; // @[AesSbox.scala 40:63] |
| wire _T_2592 = _T_2574 ^ _T_2584; // @[AesSbox.scala 40:63] |
| wire _T_2594 = _T_2586 ^ _T_2580; // @[AesSbox.scala 40:63] |
| wire _T_2596 = _T_2588 ^ _T_2584; // @[AesSbox.scala 40:63] |
| wire _T_2598 = _T_2590 ^ _T_2580; // @[AesSbox.scala 40:63] |
| wire _T_2600 = _T_2592 ^ _T_2554; // @[AesSbox.scala 40:63] |
| wire _T_2602 = _T_2598 ^ _T_2600; // @[AesSbox.scala 40:63] |
| wire _T_2604 = _T_2598 & _T_2594; // @[AesSbox.scala 41:63] |
| wire _T_2606 = _T_2596 ^ _T_2604; // @[AesSbox.scala 40:63] |
| wire _T_2608 = _T_2594 ^ _T_2596; // @[AesSbox.scala 40:63] |
| wire _T_2610 = _T_2600 ^ _T_2604; // @[AesSbox.scala 40:63] |
| wire _T_2612 = _T_2610 & _T_2608; // @[AesSbox.scala 41:63] |
| wire _T_2614 = _T_2606 & _T_2602; // @[AesSbox.scala 41:63] |
| wire _T_2616 = _T_2594 & _T_2600; // @[AesSbox.scala 41:63] |
| wire _T_2618 = _T_2608 & _T_2616; // @[AesSbox.scala 41:63] |
| wire _T_2620 = _T_2608 ^ _T_2604; // @[AesSbox.scala 40:63] |
| wire _T_2622 = _T_2596 & _T_2598; // @[AesSbox.scala 41:63] |
| wire _T_2624 = _T_2602 & _T_2622; // @[AesSbox.scala 41:63] |
| wire _T_2626 = _T_2602 ^ _T_2604; // @[AesSbox.scala 40:63] |
| wire _T_2628 = _T_2596 ^ _T_2612; // @[AesSbox.scala 40:63] |
| wire _T_2630 = _T_2618 ^ _T_2620; // @[AesSbox.scala 40:63] |
| wire _T_2632 = _T_2600 ^ _T_2614; // @[AesSbox.scala 40:63] |
| wire _T_2634 = _T_2624 ^ _T_2626; // @[AesSbox.scala 40:63] |
| wire _T_2636 = _T_2630 ^ _T_2634; // @[AesSbox.scala 40:63] |
| wire _T_2638 = _T_2628 ^ _T_2632; // @[AesSbox.scala 40:63] |
| wire _T_2640 = _T_2628 ^ _T_2630; // @[AesSbox.scala 40:63] |
| wire _T_2642 = _T_2632 ^ _T_2634; // @[AesSbox.scala 40:63] |
| wire _T_2644 = _T_2638 ^ _T_2636; // @[AesSbox.scala 40:63] |
| wire _T_2646 = _T_2642 & _T_2510; // @[AesSbox.scala 41:63] |
| wire _T_2648 = _T_2634 & _T_2522; // @[AesSbox.scala 41:63] |
| wire _T_2650 = _T_2632 & matrix_2_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_2652 = _T_2640 & _T_2542; // @[AesSbox.scala 41:63] |
| wire _T_2654 = _T_2630 & _T_2508; // @[AesSbox.scala 41:63] |
| wire _T_2656 = _T_2628 & _T_2534; // @[AesSbox.scala 41:63] |
| wire _T_2658 = _T_2638 & _T_2516; // @[AesSbox.scala 41:63] |
| wire _T_2660 = _T_2644 & _T_2546; // @[AesSbox.scala 41:63] |
| wire _T_2662 = _T_2636 & _T_2528; // @[AesSbox.scala 41:63] |
| wire _T_2664 = _T_2642 & _T_2538; // @[AesSbox.scala 41:63] |
| wire _T_2666 = _T_2634 & _T_2540; // @[AesSbox.scala 41:63] |
| wire _T_2668 = _T_2632 & _T_2520; // @[AesSbox.scala 41:63] |
| wire _T_2670 = _T_2640 & _T_2514; // @[AesSbox.scala 41:63] |
| wire _T_2672 = _T_2630 & _T_2518; // @[AesSbox.scala 41:63] |
| wire _T_2674 = _T_2628 & _T_2544; // @[AesSbox.scala 41:63] |
| wire _T_2676 = _T_2638 & _T_2504; // @[AesSbox.scala 41:63] |
| wire _T_2678 = _T_2644 & _T_2550; // @[AesSbox.scala 41:63] |
| wire _T_2680 = _T_2636 & _T_2532; // @[AesSbox.scala 41:63] |
| wire _T_2682 = _T_2676 ^ _T_2678; // @[AesSbox.scala 40:63] |
| wire _T_2684 = _T_2654 ^ _T_2666; // @[AesSbox.scala 40:63] |
| wire _T_2686 = _T_2660 ^ _T_2682; // @[AesSbox.scala 40:63] |
| wire _T_2688 = _T_2664 ^ _T_2684; // @[AesSbox.scala 40:63] |
| wire _T_2690 = _T_2650 ^ _T_2670; // @[AesSbox.scala 40:63] |
| wire _T_2692 = _T_2646 ^ _T_2652; // @[AesSbox.scala 40:63] |
| wire _T_2694 = _T_2682 ^ _T_2692; // @[AesSbox.scala 40:63] |
| wire _T_2696 = _T_2648 ^ _T_2688; // @[AesSbox.scala 40:63] |
| wire _T_2698 = _T_2646 ^ _T_2658; // @[AesSbox.scala 40:63] |
| wire _T_2700 = _T_2656 ^ _T_2672; // @[AesSbox.scala 40:63] |
| wire _T_2702 = _T_2662 ^ _T_2674; // @[AesSbox.scala 40:63] |
| wire _T_2704 = _T_2650 ^ _T_2696; // @[AesSbox.scala 40:63] |
| wire _T_2706 = _T_2690 ^ _T_2702; // @[AesSbox.scala 40:63] |
| wire _T_2708 = _T_2668 ^ _T_2684; // @[AesSbox.scala 40:63] |
| wire _T_2710 = _T_2652 ^ _T_2658; // @[AesSbox.scala 40:63] |
| wire _T_2712 = _T_2688 ^ _T_2710; // @[AesSbox.scala 40:63] |
| wire _T_2714 = _T_2680 ^ _T_2706; // @[AesSbox.scala 40:63] |
| wire _T_2716 = _T_2676 ^ _T_2698; // @[AesSbox.scala 40:63] |
| wire _T_2718 = _T_2690 ^ _T_2700; // @[AesSbox.scala 40:63] |
| wire _T_2719 = _T_2686 ^ _T_2712; // @[AesSbox.scala 40:63] |
| wire _T_2720 = _T_2714 ^ _T_2716; // @[AesSbox.scala 42:65] |
| wire _T_2721 = ~_T_2720; // @[AesSbox.scala 42:51] |
| wire _T_2723 = _T_2656 ^ _T_2682; // @[AesSbox.scala 40:63] |
| wire _T_2724 = _T_2694 ^ _T_2696; // @[AesSbox.scala 40:63] |
| wire _T_2725 = _T_2704 ^ _T_2723; // @[AesSbox.scala 40:63] |
| wire _T_2727 = _T_2654 ^ _T_2670; // @[AesSbox.scala 40:63] |
| wire _T_2729 = _T_2692 ^ _T_2708; // @[AesSbox.scala 40:63] |
| wire _T_2730 = _T_2694 ^ _T_2718; // @[AesSbox.scala 42:65] |
| wire _T_2731 = ~_T_2730; // @[AesSbox.scala 42:51] |
| wire _T_2733 = _T_2662 ^ _T_2700; // @[AesSbox.scala 40:63] |
| wire _T_2735 = _T_2727 ^ _T_2733; // @[AesSbox.scala 40:63] |
| wire _T_2737 = _T_2654 ^ _T_2698; // @[AesSbox.scala 40:63] |
| wire _T_2738 = _T_2686 ^ _T_2735; // @[AesSbox.scala 42:65] |
| wire _T_2739 = ~_T_2738; // @[AesSbox.scala 42:51] |
| wire _T_2741 = _T_2706 ^ _T_2729; // @[AesSbox.scala 40:63] |
| wire _T_2742 = _T_2686 ^ _T_2741; // @[AesSbox.scala 40:63] |
| wire _T_2744 = _T_2696 ^ _T_2737; // @[AesSbox.scala 40:63] |
| wire _T_2745 = _T_2686 ^ _T_2744; // @[AesSbox.scala 42:65] |
| wire _T_2746 = ~_T_2745; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_1_1 = {_T_2719,_T_2746,_T_2721,_T_2724,_T_2725,_T_2742,_T_2739,_T_2731}; // @[Cat.scala 29:58] |
| wire _T_2771 = matrix_2_2[1] ^ matrix_2_2[3]; // @[AesSbox.scala 40:63] |
| wire _T_2773 = matrix_2_2[4] ^ matrix_2_2[7]; // @[AesSbox.scala 40:63] |
| wire _T_2775 = matrix_2_2[6] ^ matrix_2_2[5]; // @[AesSbox.scala 40:63] |
| wire _T_2777 = matrix_2_2[0] ^ _T_2775; // @[AesSbox.scala 40:63] |
| wire _T_2779 = _T_2771 ^ _T_2773; // @[AesSbox.scala 40:63] |
| wire _T_2781 = matrix_2_2[6] ^ matrix_2_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_2783 = matrix_2_2[7] ^ matrix_2_2[1]; // @[AesSbox.scala 40:63] |
| wire _T_2785 = _T_2771 ^ _T_2781; // @[AesSbox.scala 40:63] |
| wire _T_2787 = matrix_2_2[1] ^ _T_2777; // @[AesSbox.scala 40:63] |
| wire _T_2789 = matrix_2_2[4] ^ _T_2777; // @[AesSbox.scala 40:63] |
| wire _T_2791 = matrix_2_2[0] ^ _T_2779; // @[AesSbox.scala 40:63] |
| wire _T_2793 = _T_2779 ^ _T_2781; // @[AesSbox.scala 40:63] |
| wire _T_2795 = matrix_2_2[5] ^ matrix_2_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_2797 = _T_2775 ^ _T_2779; // @[AesSbox.scala 40:63] |
| wire _T_2799 = matrix_2_2[2] ^ _T_2783; // @[AesSbox.scala 40:63] |
| wire _T_2801 = matrix_2_2[7] ^ matrix_2_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_2803 = matrix_2_2[0] ^ _T_2785; // @[AesSbox.scala 40:63] |
| wire _T_2805 = matrix_2_2[1] ^ matrix_2_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_2807 = _T_2773 ^ _T_2805; // @[AesSbox.scala 40:63] |
| wire _T_2809 = _T_2777 ^ _T_2799; // @[AesSbox.scala 40:63] |
| wire _T_2811 = _T_2771 ^ _T_2795; // @[AesSbox.scala 40:63] |
| wire _T_2813 = matrix_2_2[7] ^ _T_2777; // @[AesSbox.scala 40:63] |
| wire _T_2815 = _T_2811 ^ _T_2779; // @[AesSbox.scala 40:63] |
| wire _T_2817 = _T_2811 ^ _T_2783; // @[AesSbox.scala 40:63] |
| wire _T_2819 = _T_2783 ^ _T_2807; // @[AesSbox.scala 40:63] |
| wire _T_2821 = _T_2801 ^ _T_2797; // @[AesSbox.scala 40:63] |
| wire _T_2823 = _T_2813 ^ _T_2803; // @[AesSbox.scala 40:63] |
| wire _T_2825 = _T_2807 & _T_2779; // @[AesSbox.scala 41:63] |
| wire _T_2827 = _T_2809 & _T_2791; // @[AesSbox.scala 41:63] |
| wire _T_2829 = _T_2793 ^ _T_2825; // @[AesSbox.scala 40:63] |
| wire _T_2831 = _T_2789 & matrix_2_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_2833 = _T_2831 ^ _T_2825; // @[AesSbox.scala 40:63] |
| wire _T_2835 = _T_2783 & _T_2811; // @[AesSbox.scala 41:63] |
| wire _T_2837 = _T_2787 & _T_2777; // @[AesSbox.scala 41:63] |
| wire _T_2839 = _T_2817 ^ _T_2835; // @[AesSbox.scala 40:63] |
| wire _T_2841 = _T_2813 & _T_2803; // @[AesSbox.scala 41:63] |
| wire _T_2843 = _T_2841 ^ _T_2835; // @[AesSbox.scala 40:63] |
| wire _T_2845 = _T_2773 & _T_2785; // @[AesSbox.scala 41:63] |
| wire _T_2847 = _T_2819 & _T_2815; // @[AesSbox.scala 41:63] |
| wire _T_2849 = _T_2847 ^ _T_2845; // @[AesSbox.scala 40:63] |
| wire _T_2851 = _T_2801 & _T_2797; // @[AesSbox.scala 41:63] |
| wire _T_2853 = _T_2851 ^ _T_2845; // @[AesSbox.scala 40:63] |
| wire _T_2855 = _T_2829 ^ _T_2827; // @[AesSbox.scala 40:63] |
| wire _T_2857 = _T_2833 ^ _T_2821; // @[AesSbox.scala 40:63] |
| wire _T_2859 = _T_2839 ^ _T_2837; // @[AesSbox.scala 40:63] |
| wire _T_2861 = _T_2843 ^ _T_2853; // @[AesSbox.scala 40:63] |
| wire _T_2863 = _T_2855 ^ _T_2849; // @[AesSbox.scala 40:63] |
| wire _T_2865 = _T_2857 ^ _T_2853; // @[AesSbox.scala 40:63] |
| wire _T_2867 = _T_2859 ^ _T_2849; // @[AesSbox.scala 40:63] |
| wire _T_2869 = _T_2861 ^ _T_2823; // @[AesSbox.scala 40:63] |
| wire _T_2871 = _T_2867 ^ _T_2869; // @[AesSbox.scala 40:63] |
| wire _T_2873 = _T_2867 & _T_2863; // @[AesSbox.scala 41:63] |
| wire _T_2875 = _T_2865 ^ _T_2873; // @[AesSbox.scala 40:63] |
| wire _T_2877 = _T_2863 ^ _T_2865; // @[AesSbox.scala 40:63] |
| wire _T_2879 = _T_2869 ^ _T_2873; // @[AesSbox.scala 40:63] |
| wire _T_2881 = _T_2879 & _T_2877; // @[AesSbox.scala 41:63] |
| wire _T_2883 = _T_2875 & _T_2871; // @[AesSbox.scala 41:63] |
| wire _T_2885 = _T_2863 & _T_2869; // @[AesSbox.scala 41:63] |
| wire _T_2887 = _T_2877 & _T_2885; // @[AesSbox.scala 41:63] |
| wire _T_2889 = _T_2877 ^ _T_2873; // @[AesSbox.scala 40:63] |
| wire _T_2891 = _T_2865 & _T_2867; // @[AesSbox.scala 41:63] |
| wire _T_2893 = _T_2871 & _T_2891; // @[AesSbox.scala 41:63] |
| wire _T_2895 = _T_2871 ^ _T_2873; // @[AesSbox.scala 40:63] |
| wire _T_2897 = _T_2865 ^ _T_2881; // @[AesSbox.scala 40:63] |
| wire _T_2899 = _T_2887 ^ _T_2889; // @[AesSbox.scala 40:63] |
| wire _T_2901 = _T_2869 ^ _T_2883; // @[AesSbox.scala 40:63] |
| wire _T_2903 = _T_2893 ^ _T_2895; // @[AesSbox.scala 40:63] |
| wire _T_2905 = _T_2899 ^ _T_2903; // @[AesSbox.scala 40:63] |
| wire _T_2907 = _T_2897 ^ _T_2901; // @[AesSbox.scala 40:63] |
| wire _T_2909 = _T_2897 ^ _T_2899; // @[AesSbox.scala 40:63] |
| wire _T_2911 = _T_2901 ^ _T_2903; // @[AesSbox.scala 40:63] |
| wire _T_2913 = _T_2907 ^ _T_2905; // @[AesSbox.scala 40:63] |
| wire _T_2915 = _T_2911 & _T_2779; // @[AesSbox.scala 41:63] |
| wire _T_2917 = _T_2903 & _T_2791; // @[AesSbox.scala 41:63] |
| wire _T_2919 = _T_2901 & matrix_2_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_2921 = _T_2909 & _T_2811; // @[AesSbox.scala 41:63] |
| wire _T_2923 = _T_2899 & _T_2777; // @[AesSbox.scala 41:63] |
| wire _T_2925 = _T_2897 & _T_2803; // @[AesSbox.scala 41:63] |
| wire _T_2927 = _T_2907 & _T_2785; // @[AesSbox.scala 41:63] |
| wire _T_2929 = _T_2913 & _T_2815; // @[AesSbox.scala 41:63] |
| wire _T_2931 = _T_2905 & _T_2797; // @[AesSbox.scala 41:63] |
| wire _T_2933 = _T_2911 & _T_2807; // @[AesSbox.scala 41:63] |
| wire _T_2935 = _T_2903 & _T_2809; // @[AesSbox.scala 41:63] |
| wire _T_2937 = _T_2901 & _T_2789; // @[AesSbox.scala 41:63] |
| wire _T_2939 = _T_2909 & _T_2783; // @[AesSbox.scala 41:63] |
| wire _T_2941 = _T_2899 & _T_2787; // @[AesSbox.scala 41:63] |
| wire _T_2943 = _T_2897 & _T_2813; // @[AesSbox.scala 41:63] |
| wire _T_2945 = _T_2907 & _T_2773; // @[AesSbox.scala 41:63] |
| wire _T_2947 = _T_2913 & _T_2819; // @[AesSbox.scala 41:63] |
| wire _T_2949 = _T_2905 & _T_2801; // @[AesSbox.scala 41:63] |
| wire _T_2951 = _T_2945 ^ _T_2947; // @[AesSbox.scala 40:63] |
| wire _T_2953 = _T_2923 ^ _T_2935; // @[AesSbox.scala 40:63] |
| wire _T_2955 = _T_2929 ^ _T_2951; // @[AesSbox.scala 40:63] |
| wire _T_2957 = _T_2933 ^ _T_2953; // @[AesSbox.scala 40:63] |
| wire _T_2959 = _T_2919 ^ _T_2939; // @[AesSbox.scala 40:63] |
| wire _T_2961 = _T_2915 ^ _T_2921; // @[AesSbox.scala 40:63] |
| wire _T_2963 = _T_2951 ^ _T_2961; // @[AesSbox.scala 40:63] |
| wire _T_2965 = _T_2917 ^ _T_2957; // @[AesSbox.scala 40:63] |
| wire _T_2967 = _T_2915 ^ _T_2927; // @[AesSbox.scala 40:63] |
| wire _T_2969 = _T_2925 ^ _T_2941; // @[AesSbox.scala 40:63] |
| wire _T_2971 = _T_2931 ^ _T_2943; // @[AesSbox.scala 40:63] |
| wire _T_2973 = _T_2919 ^ _T_2965; // @[AesSbox.scala 40:63] |
| wire _T_2975 = _T_2959 ^ _T_2971; // @[AesSbox.scala 40:63] |
| wire _T_2977 = _T_2937 ^ _T_2953; // @[AesSbox.scala 40:63] |
| wire _T_2979 = _T_2921 ^ _T_2927; // @[AesSbox.scala 40:63] |
| wire _T_2981 = _T_2957 ^ _T_2979; // @[AesSbox.scala 40:63] |
| wire _T_2983 = _T_2949 ^ _T_2975; // @[AesSbox.scala 40:63] |
| wire _T_2985 = _T_2945 ^ _T_2967; // @[AesSbox.scala 40:63] |
| wire _T_2987 = _T_2959 ^ _T_2969; // @[AesSbox.scala 40:63] |
| wire _T_2988 = _T_2955 ^ _T_2981; // @[AesSbox.scala 40:63] |
| wire _T_2989 = _T_2983 ^ _T_2985; // @[AesSbox.scala 42:65] |
| wire _T_2990 = ~_T_2989; // @[AesSbox.scala 42:51] |
| wire _T_2992 = _T_2925 ^ _T_2951; // @[AesSbox.scala 40:63] |
| wire _T_2993 = _T_2963 ^ _T_2965; // @[AesSbox.scala 40:63] |
| wire _T_2994 = _T_2973 ^ _T_2992; // @[AesSbox.scala 40:63] |
| wire _T_2996 = _T_2923 ^ _T_2939; // @[AesSbox.scala 40:63] |
| wire _T_2998 = _T_2961 ^ _T_2977; // @[AesSbox.scala 40:63] |
| wire _T_2999 = _T_2963 ^ _T_2987; // @[AesSbox.scala 42:65] |
| wire _T_3000 = ~_T_2999; // @[AesSbox.scala 42:51] |
| wire _T_3002 = _T_2931 ^ _T_2969; // @[AesSbox.scala 40:63] |
| wire _T_3004 = _T_2996 ^ _T_3002; // @[AesSbox.scala 40:63] |
| wire _T_3006 = _T_2923 ^ _T_2967; // @[AesSbox.scala 40:63] |
| wire _T_3007 = _T_2955 ^ _T_3004; // @[AesSbox.scala 42:65] |
| wire _T_3008 = ~_T_3007; // @[AesSbox.scala 42:51] |
| wire _T_3010 = _T_2975 ^ _T_2998; // @[AesSbox.scala 40:63] |
| wire _T_3011 = _T_2955 ^ _T_3010; // @[AesSbox.scala 40:63] |
| wire _T_3013 = _T_2965 ^ _T_3006; // @[AesSbox.scala 40:63] |
| wire _T_3014 = _T_2955 ^ _T_3013; // @[AesSbox.scala 42:65] |
| wire _T_3015 = ~_T_3014; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_0_2 = {_T_2988,_T_3015,_T_2990,_T_2993,_T_2994,_T_3011,_T_3008,_T_3000}; // @[Cat.scala 29:58] |
| wire _T_3040 = matrix_2_3[1] ^ matrix_2_3[3]; // @[AesSbox.scala 40:63] |
| wire _T_3042 = matrix_2_3[4] ^ matrix_2_3[7]; // @[AesSbox.scala 40:63] |
| wire _T_3044 = matrix_2_3[6] ^ matrix_2_3[5]; // @[AesSbox.scala 40:63] |
| wire _T_3046 = matrix_2_3[0] ^ _T_3044; // @[AesSbox.scala 40:63] |
| wire _T_3048 = _T_3040 ^ _T_3042; // @[AesSbox.scala 40:63] |
| wire _T_3050 = matrix_2_3[6] ^ matrix_2_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_3052 = matrix_2_3[7] ^ matrix_2_3[1]; // @[AesSbox.scala 40:63] |
| wire _T_3054 = _T_3040 ^ _T_3050; // @[AesSbox.scala 40:63] |
| wire _T_3056 = matrix_2_3[1] ^ _T_3046; // @[AesSbox.scala 40:63] |
| wire _T_3058 = matrix_2_3[4] ^ _T_3046; // @[AesSbox.scala 40:63] |
| wire _T_3060 = matrix_2_3[0] ^ _T_3048; // @[AesSbox.scala 40:63] |
| wire _T_3062 = _T_3048 ^ _T_3050; // @[AesSbox.scala 40:63] |
| wire _T_3064 = matrix_2_3[5] ^ matrix_2_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_3066 = _T_3044 ^ _T_3048; // @[AesSbox.scala 40:63] |
| wire _T_3068 = matrix_2_3[2] ^ _T_3052; // @[AesSbox.scala 40:63] |
| wire _T_3070 = matrix_2_3[7] ^ matrix_2_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_3072 = matrix_2_3[0] ^ _T_3054; // @[AesSbox.scala 40:63] |
| wire _T_3074 = matrix_2_3[1] ^ matrix_2_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_3076 = _T_3042 ^ _T_3074; // @[AesSbox.scala 40:63] |
| wire _T_3078 = _T_3046 ^ _T_3068; // @[AesSbox.scala 40:63] |
| wire _T_3080 = _T_3040 ^ _T_3064; // @[AesSbox.scala 40:63] |
| wire _T_3082 = matrix_2_3[7] ^ _T_3046; // @[AesSbox.scala 40:63] |
| wire _T_3084 = _T_3080 ^ _T_3048; // @[AesSbox.scala 40:63] |
| wire _T_3086 = _T_3080 ^ _T_3052; // @[AesSbox.scala 40:63] |
| wire _T_3088 = _T_3052 ^ _T_3076; // @[AesSbox.scala 40:63] |
| wire _T_3090 = _T_3070 ^ _T_3066; // @[AesSbox.scala 40:63] |
| wire _T_3092 = _T_3082 ^ _T_3072; // @[AesSbox.scala 40:63] |
| wire _T_3094 = _T_3076 & _T_3048; // @[AesSbox.scala 41:63] |
| wire _T_3096 = _T_3078 & _T_3060; // @[AesSbox.scala 41:63] |
| wire _T_3098 = _T_3062 ^ _T_3094; // @[AesSbox.scala 40:63] |
| wire _T_3100 = _T_3058 & matrix_2_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_3102 = _T_3100 ^ _T_3094; // @[AesSbox.scala 40:63] |
| wire _T_3104 = _T_3052 & _T_3080; // @[AesSbox.scala 41:63] |
| wire _T_3106 = _T_3056 & _T_3046; // @[AesSbox.scala 41:63] |
| wire _T_3108 = _T_3086 ^ _T_3104; // @[AesSbox.scala 40:63] |
| wire _T_3110 = _T_3082 & _T_3072; // @[AesSbox.scala 41:63] |
| wire _T_3112 = _T_3110 ^ _T_3104; // @[AesSbox.scala 40:63] |
| wire _T_3114 = _T_3042 & _T_3054; // @[AesSbox.scala 41:63] |
| wire _T_3116 = _T_3088 & _T_3084; // @[AesSbox.scala 41:63] |
| wire _T_3118 = _T_3116 ^ _T_3114; // @[AesSbox.scala 40:63] |
| wire _T_3120 = _T_3070 & _T_3066; // @[AesSbox.scala 41:63] |
| wire _T_3122 = _T_3120 ^ _T_3114; // @[AesSbox.scala 40:63] |
| wire _T_3124 = _T_3098 ^ _T_3096; // @[AesSbox.scala 40:63] |
| wire _T_3126 = _T_3102 ^ _T_3090; // @[AesSbox.scala 40:63] |
| wire _T_3128 = _T_3108 ^ _T_3106; // @[AesSbox.scala 40:63] |
| wire _T_3130 = _T_3112 ^ _T_3122; // @[AesSbox.scala 40:63] |
| wire _T_3132 = _T_3124 ^ _T_3118; // @[AesSbox.scala 40:63] |
| wire _T_3134 = _T_3126 ^ _T_3122; // @[AesSbox.scala 40:63] |
| wire _T_3136 = _T_3128 ^ _T_3118; // @[AesSbox.scala 40:63] |
| wire _T_3138 = _T_3130 ^ _T_3092; // @[AesSbox.scala 40:63] |
| wire _T_3140 = _T_3136 ^ _T_3138; // @[AesSbox.scala 40:63] |
| wire _T_3142 = _T_3136 & _T_3132; // @[AesSbox.scala 41:63] |
| wire _T_3144 = _T_3134 ^ _T_3142; // @[AesSbox.scala 40:63] |
| wire _T_3146 = _T_3132 ^ _T_3134; // @[AesSbox.scala 40:63] |
| wire _T_3148 = _T_3138 ^ _T_3142; // @[AesSbox.scala 40:63] |
| wire _T_3150 = _T_3148 & _T_3146; // @[AesSbox.scala 41:63] |
| wire _T_3152 = _T_3144 & _T_3140; // @[AesSbox.scala 41:63] |
| wire _T_3154 = _T_3132 & _T_3138; // @[AesSbox.scala 41:63] |
| wire _T_3156 = _T_3146 & _T_3154; // @[AesSbox.scala 41:63] |
| wire _T_3158 = _T_3146 ^ _T_3142; // @[AesSbox.scala 40:63] |
| wire _T_3160 = _T_3134 & _T_3136; // @[AesSbox.scala 41:63] |
| wire _T_3162 = _T_3140 & _T_3160; // @[AesSbox.scala 41:63] |
| wire _T_3164 = _T_3140 ^ _T_3142; // @[AesSbox.scala 40:63] |
| wire _T_3166 = _T_3134 ^ _T_3150; // @[AesSbox.scala 40:63] |
| wire _T_3168 = _T_3156 ^ _T_3158; // @[AesSbox.scala 40:63] |
| wire _T_3170 = _T_3138 ^ _T_3152; // @[AesSbox.scala 40:63] |
| wire _T_3172 = _T_3162 ^ _T_3164; // @[AesSbox.scala 40:63] |
| wire _T_3174 = _T_3168 ^ _T_3172; // @[AesSbox.scala 40:63] |
| wire _T_3176 = _T_3166 ^ _T_3170; // @[AesSbox.scala 40:63] |
| wire _T_3178 = _T_3166 ^ _T_3168; // @[AesSbox.scala 40:63] |
| wire _T_3180 = _T_3170 ^ _T_3172; // @[AesSbox.scala 40:63] |
| wire _T_3182 = _T_3176 ^ _T_3174; // @[AesSbox.scala 40:63] |
| wire _T_3184 = _T_3180 & _T_3048; // @[AesSbox.scala 41:63] |
| wire _T_3186 = _T_3172 & _T_3060; // @[AesSbox.scala 41:63] |
| wire _T_3188 = _T_3170 & matrix_2_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_3190 = _T_3178 & _T_3080; // @[AesSbox.scala 41:63] |
| wire _T_3192 = _T_3168 & _T_3046; // @[AesSbox.scala 41:63] |
| wire _T_3194 = _T_3166 & _T_3072; // @[AesSbox.scala 41:63] |
| wire _T_3196 = _T_3176 & _T_3054; // @[AesSbox.scala 41:63] |
| wire _T_3198 = _T_3182 & _T_3084; // @[AesSbox.scala 41:63] |
| wire _T_3200 = _T_3174 & _T_3066; // @[AesSbox.scala 41:63] |
| wire _T_3202 = _T_3180 & _T_3076; // @[AesSbox.scala 41:63] |
| wire _T_3204 = _T_3172 & _T_3078; // @[AesSbox.scala 41:63] |
| wire _T_3206 = _T_3170 & _T_3058; // @[AesSbox.scala 41:63] |
| wire _T_3208 = _T_3178 & _T_3052; // @[AesSbox.scala 41:63] |
| wire _T_3210 = _T_3168 & _T_3056; // @[AesSbox.scala 41:63] |
| wire _T_3212 = _T_3166 & _T_3082; // @[AesSbox.scala 41:63] |
| wire _T_3214 = _T_3176 & _T_3042; // @[AesSbox.scala 41:63] |
| wire _T_3216 = _T_3182 & _T_3088; // @[AesSbox.scala 41:63] |
| wire _T_3218 = _T_3174 & _T_3070; // @[AesSbox.scala 41:63] |
| wire _T_3220 = _T_3214 ^ _T_3216; // @[AesSbox.scala 40:63] |
| wire _T_3222 = _T_3192 ^ _T_3204; // @[AesSbox.scala 40:63] |
| wire _T_3224 = _T_3198 ^ _T_3220; // @[AesSbox.scala 40:63] |
| wire _T_3226 = _T_3202 ^ _T_3222; // @[AesSbox.scala 40:63] |
| wire _T_3228 = _T_3188 ^ _T_3208; // @[AesSbox.scala 40:63] |
| wire _T_3230 = _T_3184 ^ _T_3190; // @[AesSbox.scala 40:63] |
| wire _T_3232 = _T_3220 ^ _T_3230; // @[AesSbox.scala 40:63] |
| wire _T_3234 = _T_3186 ^ _T_3226; // @[AesSbox.scala 40:63] |
| wire _T_3236 = _T_3184 ^ _T_3196; // @[AesSbox.scala 40:63] |
| wire _T_3238 = _T_3194 ^ _T_3210; // @[AesSbox.scala 40:63] |
| wire _T_3240 = _T_3200 ^ _T_3212; // @[AesSbox.scala 40:63] |
| wire _T_3242 = _T_3188 ^ _T_3234; // @[AesSbox.scala 40:63] |
| wire _T_3244 = _T_3228 ^ _T_3240; // @[AesSbox.scala 40:63] |
| wire _T_3246 = _T_3206 ^ _T_3222; // @[AesSbox.scala 40:63] |
| wire _T_3248 = _T_3190 ^ _T_3196; // @[AesSbox.scala 40:63] |
| wire _T_3250 = _T_3226 ^ _T_3248; // @[AesSbox.scala 40:63] |
| wire _T_3252 = _T_3218 ^ _T_3244; // @[AesSbox.scala 40:63] |
| wire _T_3254 = _T_3214 ^ _T_3236; // @[AesSbox.scala 40:63] |
| wire _T_3256 = _T_3228 ^ _T_3238; // @[AesSbox.scala 40:63] |
| wire _T_3257 = _T_3224 ^ _T_3250; // @[AesSbox.scala 40:63] |
| wire _T_3258 = _T_3252 ^ _T_3254; // @[AesSbox.scala 42:65] |
| wire _T_3259 = ~_T_3258; // @[AesSbox.scala 42:51] |
| wire _T_3261 = _T_3194 ^ _T_3220; // @[AesSbox.scala 40:63] |
| wire _T_3262 = _T_3232 ^ _T_3234; // @[AesSbox.scala 40:63] |
| wire _T_3263 = _T_3242 ^ _T_3261; // @[AesSbox.scala 40:63] |
| wire _T_3265 = _T_3192 ^ _T_3208; // @[AesSbox.scala 40:63] |
| wire _T_3267 = _T_3230 ^ _T_3246; // @[AesSbox.scala 40:63] |
| wire _T_3268 = _T_3232 ^ _T_3256; // @[AesSbox.scala 42:65] |
| wire _T_3269 = ~_T_3268; // @[AesSbox.scala 42:51] |
| wire _T_3271 = _T_3200 ^ _T_3238; // @[AesSbox.scala 40:63] |
| wire _T_3273 = _T_3265 ^ _T_3271; // @[AesSbox.scala 40:63] |
| wire _T_3275 = _T_3192 ^ _T_3236; // @[AesSbox.scala 40:63] |
| wire _T_3276 = _T_3224 ^ _T_3273; // @[AesSbox.scala 42:65] |
| wire _T_3277 = ~_T_3276; // @[AesSbox.scala 42:51] |
| wire _T_3279 = _T_3244 ^ _T_3267; // @[AesSbox.scala 40:63] |
| wire _T_3280 = _T_3224 ^ _T_3279; // @[AesSbox.scala 40:63] |
| wire _T_3282 = _T_3234 ^ _T_3275; // @[AesSbox.scala 40:63] |
| wire _T_3283 = _T_3224 ^ _T_3282; // @[AesSbox.scala 42:65] |
| wire _T_3284 = ~_T_3283; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_3_3 = {_T_3257,_T_3284,_T_3259,_T_3262,_T_3263,_T_3280,_T_3277,_T_3269}; // @[Cat.scala 29:58] |
| wire _T_3310 = matrix_3_0[1] ^ matrix_3_0[3]; // @[AesSbox.scala 40:63] |
| wire _T_3312 = matrix_3_0[4] ^ matrix_3_0[7]; // @[AesSbox.scala 40:63] |
| wire _T_3314 = matrix_3_0[6] ^ matrix_3_0[5]; // @[AesSbox.scala 40:63] |
| wire _T_3316 = matrix_3_0[0] ^ _T_3314; // @[AesSbox.scala 40:63] |
| wire _T_3318 = _T_3310 ^ _T_3312; // @[AesSbox.scala 40:63] |
| wire _T_3320 = matrix_3_0[6] ^ matrix_3_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_3322 = matrix_3_0[7] ^ matrix_3_0[1]; // @[AesSbox.scala 40:63] |
| wire _T_3324 = _T_3310 ^ _T_3320; // @[AesSbox.scala 40:63] |
| wire _T_3326 = matrix_3_0[1] ^ _T_3316; // @[AesSbox.scala 40:63] |
| wire _T_3328 = matrix_3_0[4] ^ _T_3316; // @[AesSbox.scala 40:63] |
| wire _T_3330 = matrix_3_0[0] ^ _T_3318; // @[AesSbox.scala 40:63] |
| wire _T_3332 = _T_3318 ^ _T_3320; // @[AesSbox.scala 40:63] |
| wire _T_3334 = matrix_3_0[5] ^ matrix_3_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_3336 = _T_3314 ^ _T_3318; // @[AesSbox.scala 40:63] |
| wire _T_3338 = matrix_3_0[2] ^ _T_3322; // @[AesSbox.scala 40:63] |
| wire _T_3340 = matrix_3_0[7] ^ matrix_3_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_3342 = matrix_3_0[0] ^ _T_3324; // @[AesSbox.scala 40:63] |
| wire _T_3344 = matrix_3_0[1] ^ matrix_3_0[2]; // @[AesSbox.scala 40:63] |
| wire _T_3346 = _T_3312 ^ _T_3344; // @[AesSbox.scala 40:63] |
| wire _T_3348 = _T_3316 ^ _T_3338; // @[AesSbox.scala 40:63] |
| wire _T_3350 = _T_3310 ^ _T_3334; // @[AesSbox.scala 40:63] |
| wire _T_3352 = matrix_3_0[7] ^ _T_3316; // @[AesSbox.scala 40:63] |
| wire _T_3354 = _T_3350 ^ _T_3318; // @[AesSbox.scala 40:63] |
| wire _T_3356 = _T_3350 ^ _T_3322; // @[AesSbox.scala 40:63] |
| wire _T_3358 = _T_3322 ^ _T_3346; // @[AesSbox.scala 40:63] |
| wire _T_3360 = _T_3340 ^ _T_3336; // @[AesSbox.scala 40:63] |
| wire _T_3362 = _T_3352 ^ _T_3342; // @[AesSbox.scala 40:63] |
| wire _T_3364 = _T_3346 & _T_3318; // @[AesSbox.scala 41:63] |
| wire _T_3366 = _T_3348 & _T_3330; // @[AesSbox.scala 41:63] |
| wire _T_3368 = _T_3332 ^ _T_3364; // @[AesSbox.scala 40:63] |
| wire _T_3370 = _T_3328 & matrix_3_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_3372 = _T_3370 ^ _T_3364; // @[AesSbox.scala 40:63] |
| wire _T_3374 = _T_3322 & _T_3350; // @[AesSbox.scala 41:63] |
| wire _T_3376 = _T_3326 & _T_3316; // @[AesSbox.scala 41:63] |
| wire _T_3378 = _T_3356 ^ _T_3374; // @[AesSbox.scala 40:63] |
| wire _T_3380 = _T_3352 & _T_3342; // @[AesSbox.scala 41:63] |
| wire _T_3382 = _T_3380 ^ _T_3374; // @[AesSbox.scala 40:63] |
| wire _T_3384 = _T_3312 & _T_3324; // @[AesSbox.scala 41:63] |
| wire _T_3386 = _T_3358 & _T_3354; // @[AesSbox.scala 41:63] |
| wire _T_3388 = _T_3386 ^ _T_3384; // @[AesSbox.scala 40:63] |
| wire _T_3390 = _T_3340 & _T_3336; // @[AesSbox.scala 41:63] |
| wire _T_3392 = _T_3390 ^ _T_3384; // @[AesSbox.scala 40:63] |
| wire _T_3394 = _T_3368 ^ _T_3366; // @[AesSbox.scala 40:63] |
| wire _T_3396 = _T_3372 ^ _T_3360; // @[AesSbox.scala 40:63] |
| wire _T_3398 = _T_3378 ^ _T_3376; // @[AesSbox.scala 40:63] |
| wire _T_3400 = _T_3382 ^ _T_3392; // @[AesSbox.scala 40:63] |
| wire _T_3402 = _T_3394 ^ _T_3388; // @[AesSbox.scala 40:63] |
| wire _T_3404 = _T_3396 ^ _T_3392; // @[AesSbox.scala 40:63] |
| wire _T_3406 = _T_3398 ^ _T_3388; // @[AesSbox.scala 40:63] |
| wire _T_3408 = _T_3400 ^ _T_3362; // @[AesSbox.scala 40:63] |
| wire _T_3410 = _T_3406 ^ _T_3408; // @[AesSbox.scala 40:63] |
| wire _T_3412 = _T_3406 & _T_3402; // @[AesSbox.scala 41:63] |
| wire _T_3414 = _T_3404 ^ _T_3412; // @[AesSbox.scala 40:63] |
| wire _T_3416 = _T_3402 ^ _T_3404; // @[AesSbox.scala 40:63] |
| wire _T_3418 = _T_3408 ^ _T_3412; // @[AesSbox.scala 40:63] |
| wire _T_3420 = _T_3418 & _T_3416; // @[AesSbox.scala 41:63] |
| wire _T_3422 = _T_3414 & _T_3410; // @[AesSbox.scala 41:63] |
| wire _T_3424 = _T_3402 & _T_3408; // @[AesSbox.scala 41:63] |
| wire _T_3426 = _T_3416 & _T_3424; // @[AesSbox.scala 41:63] |
| wire _T_3428 = _T_3416 ^ _T_3412; // @[AesSbox.scala 40:63] |
| wire _T_3430 = _T_3404 & _T_3406; // @[AesSbox.scala 41:63] |
| wire _T_3432 = _T_3410 & _T_3430; // @[AesSbox.scala 41:63] |
| wire _T_3434 = _T_3410 ^ _T_3412; // @[AesSbox.scala 40:63] |
| wire _T_3436 = _T_3404 ^ _T_3420; // @[AesSbox.scala 40:63] |
| wire _T_3438 = _T_3426 ^ _T_3428; // @[AesSbox.scala 40:63] |
| wire _T_3440 = _T_3408 ^ _T_3422; // @[AesSbox.scala 40:63] |
| wire _T_3442 = _T_3432 ^ _T_3434; // @[AesSbox.scala 40:63] |
| wire _T_3444 = _T_3438 ^ _T_3442; // @[AesSbox.scala 40:63] |
| wire _T_3446 = _T_3436 ^ _T_3440; // @[AesSbox.scala 40:63] |
| wire _T_3448 = _T_3436 ^ _T_3438; // @[AesSbox.scala 40:63] |
| wire _T_3450 = _T_3440 ^ _T_3442; // @[AesSbox.scala 40:63] |
| wire _T_3452 = _T_3446 ^ _T_3444; // @[AesSbox.scala 40:63] |
| wire _T_3454 = _T_3450 & _T_3318; // @[AesSbox.scala 41:63] |
| wire _T_3456 = _T_3442 & _T_3330; // @[AesSbox.scala 41:63] |
| wire _T_3458 = _T_3440 & matrix_3_0[0]; // @[AesSbox.scala 41:63] |
| wire _T_3460 = _T_3448 & _T_3350; // @[AesSbox.scala 41:63] |
| wire _T_3462 = _T_3438 & _T_3316; // @[AesSbox.scala 41:63] |
| wire _T_3464 = _T_3436 & _T_3342; // @[AesSbox.scala 41:63] |
| wire _T_3466 = _T_3446 & _T_3324; // @[AesSbox.scala 41:63] |
| wire _T_3468 = _T_3452 & _T_3354; // @[AesSbox.scala 41:63] |
| wire _T_3470 = _T_3444 & _T_3336; // @[AesSbox.scala 41:63] |
| wire _T_3472 = _T_3450 & _T_3346; // @[AesSbox.scala 41:63] |
| wire _T_3474 = _T_3442 & _T_3348; // @[AesSbox.scala 41:63] |
| wire _T_3476 = _T_3440 & _T_3328; // @[AesSbox.scala 41:63] |
| wire _T_3478 = _T_3448 & _T_3322; // @[AesSbox.scala 41:63] |
| wire _T_3480 = _T_3438 & _T_3326; // @[AesSbox.scala 41:63] |
| wire _T_3482 = _T_3436 & _T_3352; // @[AesSbox.scala 41:63] |
| wire _T_3484 = _T_3446 & _T_3312; // @[AesSbox.scala 41:63] |
| wire _T_3486 = _T_3452 & _T_3358; // @[AesSbox.scala 41:63] |
| wire _T_3488 = _T_3444 & _T_3340; // @[AesSbox.scala 41:63] |
| wire _T_3490 = _T_3484 ^ _T_3486; // @[AesSbox.scala 40:63] |
| wire _T_3492 = _T_3462 ^ _T_3474; // @[AesSbox.scala 40:63] |
| wire _T_3494 = _T_3468 ^ _T_3490; // @[AesSbox.scala 40:63] |
| wire _T_3496 = _T_3472 ^ _T_3492; // @[AesSbox.scala 40:63] |
| wire _T_3498 = _T_3458 ^ _T_3478; // @[AesSbox.scala 40:63] |
| wire _T_3500 = _T_3454 ^ _T_3460; // @[AesSbox.scala 40:63] |
| wire _T_3502 = _T_3490 ^ _T_3500; // @[AesSbox.scala 40:63] |
| wire _T_3504 = _T_3456 ^ _T_3496; // @[AesSbox.scala 40:63] |
| wire _T_3506 = _T_3454 ^ _T_3466; // @[AesSbox.scala 40:63] |
| wire _T_3508 = _T_3464 ^ _T_3480; // @[AesSbox.scala 40:63] |
| wire _T_3510 = _T_3470 ^ _T_3482; // @[AesSbox.scala 40:63] |
| wire _T_3512 = _T_3458 ^ _T_3504; // @[AesSbox.scala 40:63] |
| wire _T_3514 = _T_3498 ^ _T_3510; // @[AesSbox.scala 40:63] |
| wire _T_3516 = _T_3476 ^ _T_3492; // @[AesSbox.scala 40:63] |
| wire _T_3518 = _T_3460 ^ _T_3466; // @[AesSbox.scala 40:63] |
| wire _T_3520 = _T_3496 ^ _T_3518; // @[AesSbox.scala 40:63] |
| wire _T_3522 = _T_3488 ^ _T_3514; // @[AesSbox.scala 40:63] |
| wire _T_3524 = _T_3484 ^ _T_3506; // @[AesSbox.scala 40:63] |
| wire _T_3526 = _T_3498 ^ _T_3508; // @[AesSbox.scala 40:63] |
| wire _T_3527 = _T_3494 ^ _T_3520; // @[AesSbox.scala 40:63] |
| wire _T_3528 = _T_3522 ^ _T_3524; // @[AesSbox.scala 42:65] |
| wire _T_3529 = ~_T_3528; // @[AesSbox.scala 42:51] |
| wire _T_3531 = _T_3464 ^ _T_3490; // @[AesSbox.scala 40:63] |
| wire _T_3532 = _T_3502 ^ _T_3504; // @[AesSbox.scala 40:63] |
| wire _T_3533 = _T_3512 ^ _T_3531; // @[AesSbox.scala 40:63] |
| wire _T_3535 = _T_3462 ^ _T_3478; // @[AesSbox.scala 40:63] |
| wire _T_3537 = _T_3500 ^ _T_3516; // @[AesSbox.scala 40:63] |
| wire _T_3538 = _T_3502 ^ _T_3526; // @[AesSbox.scala 42:65] |
| wire _T_3539 = ~_T_3538; // @[AesSbox.scala 42:51] |
| wire _T_3541 = _T_3470 ^ _T_3508; // @[AesSbox.scala 40:63] |
| wire _T_3543 = _T_3535 ^ _T_3541; // @[AesSbox.scala 40:63] |
| wire _T_3545 = _T_3462 ^ _T_3506; // @[AesSbox.scala 40:63] |
| wire _T_3546 = _T_3494 ^ _T_3543; // @[AesSbox.scala 42:65] |
| wire _T_3547 = ~_T_3546; // @[AesSbox.scala 42:51] |
| wire _T_3549 = _T_3514 ^ _T_3537; // @[AesSbox.scala 40:63] |
| wire _T_3550 = _T_3494 ^ _T_3549; // @[AesSbox.scala 40:63] |
| wire _T_3552 = _T_3504 ^ _T_3545; // @[AesSbox.scala 40:63] |
| wire _T_3553 = _T_3494 ^ _T_3552; // @[AesSbox.scala 42:65] |
| wire _T_3554 = ~_T_3553; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_3_0 = {_T_3527,_T_3554,_T_3529,_T_3532,_T_3533,_T_3550,_T_3547,_T_3539}; // @[Cat.scala 29:58] |
| wire _T_3579 = matrix_3_1[1] ^ matrix_3_1[3]; // @[AesSbox.scala 40:63] |
| wire _T_3581 = matrix_3_1[4] ^ matrix_3_1[7]; // @[AesSbox.scala 40:63] |
| wire _T_3583 = matrix_3_1[6] ^ matrix_3_1[5]; // @[AesSbox.scala 40:63] |
| wire _T_3585 = matrix_3_1[0] ^ _T_3583; // @[AesSbox.scala 40:63] |
| wire _T_3587 = _T_3579 ^ _T_3581; // @[AesSbox.scala 40:63] |
| wire _T_3589 = matrix_3_1[6] ^ matrix_3_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_3591 = matrix_3_1[7] ^ matrix_3_1[1]; // @[AesSbox.scala 40:63] |
| wire _T_3593 = _T_3579 ^ _T_3589; // @[AesSbox.scala 40:63] |
| wire _T_3595 = matrix_3_1[1] ^ _T_3585; // @[AesSbox.scala 40:63] |
| wire _T_3597 = matrix_3_1[4] ^ _T_3585; // @[AesSbox.scala 40:63] |
| wire _T_3599 = matrix_3_1[0] ^ _T_3587; // @[AesSbox.scala 40:63] |
| wire _T_3601 = _T_3587 ^ _T_3589; // @[AesSbox.scala 40:63] |
| wire _T_3603 = matrix_3_1[5] ^ matrix_3_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_3605 = _T_3583 ^ _T_3587; // @[AesSbox.scala 40:63] |
| wire _T_3607 = matrix_3_1[2] ^ _T_3591; // @[AesSbox.scala 40:63] |
| wire _T_3609 = matrix_3_1[7] ^ matrix_3_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_3611 = matrix_3_1[0] ^ _T_3593; // @[AesSbox.scala 40:63] |
| wire _T_3613 = matrix_3_1[1] ^ matrix_3_1[2]; // @[AesSbox.scala 40:63] |
| wire _T_3615 = _T_3581 ^ _T_3613; // @[AesSbox.scala 40:63] |
| wire _T_3617 = _T_3585 ^ _T_3607; // @[AesSbox.scala 40:63] |
| wire _T_3619 = _T_3579 ^ _T_3603; // @[AesSbox.scala 40:63] |
| wire _T_3621 = matrix_3_1[7] ^ _T_3585; // @[AesSbox.scala 40:63] |
| wire _T_3623 = _T_3619 ^ _T_3587; // @[AesSbox.scala 40:63] |
| wire _T_3625 = _T_3619 ^ _T_3591; // @[AesSbox.scala 40:63] |
| wire _T_3627 = _T_3591 ^ _T_3615; // @[AesSbox.scala 40:63] |
| wire _T_3629 = _T_3609 ^ _T_3605; // @[AesSbox.scala 40:63] |
| wire _T_3631 = _T_3621 ^ _T_3611; // @[AesSbox.scala 40:63] |
| wire _T_3633 = _T_3615 & _T_3587; // @[AesSbox.scala 41:63] |
| wire _T_3635 = _T_3617 & _T_3599; // @[AesSbox.scala 41:63] |
| wire _T_3637 = _T_3601 ^ _T_3633; // @[AesSbox.scala 40:63] |
| wire _T_3639 = _T_3597 & matrix_3_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_3641 = _T_3639 ^ _T_3633; // @[AesSbox.scala 40:63] |
| wire _T_3643 = _T_3591 & _T_3619; // @[AesSbox.scala 41:63] |
| wire _T_3645 = _T_3595 & _T_3585; // @[AesSbox.scala 41:63] |
| wire _T_3647 = _T_3625 ^ _T_3643; // @[AesSbox.scala 40:63] |
| wire _T_3649 = _T_3621 & _T_3611; // @[AesSbox.scala 41:63] |
| wire _T_3651 = _T_3649 ^ _T_3643; // @[AesSbox.scala 40:63] |
| wire _T_3653 = _T_3581 & _T_3593; // @[AesSbox.scala 41:63] |
| wire _T_3655 = _T_3627 & _T_3623; // @[AesSbox.scala 41:63] |
| wire _T_3657 = _T_3655 ^ _T_3653; // @[AesSbox.scala 40:63] |
| wire _T_3659 = _T_3609 & _T_3605; // @[AesSbox.scala 41:63] |
| wire _T_3661 = _T_3659 ^ _T_3653; // @[AesSbox.scala 40:63] |
| wire _T_3663 = _T_3637 ^ _T_3635; // @[AesSbox.scala 40:63] |
| wire _T_3665 = _T_3641 ^ _T_3629; // @[AesSbox.scala 40:63] |
| wire _T_3667 = _T_3647 ^ _T_3645; // @[AesSbox.scala 40:63] |
| wire _T_3669 = _T_3651 ^ _T_3661; // @[AesSbox.scala 40:63] |
| wire _T_3671 = _T_3663 ^ _T_3657; // @[AesSbox.scala 40:63] |
| wire _T_3673 = _T_3665 ^ _T_3661; // @[AesSbox.scala 40:63] |
| wire _T_3675 = _T_3667 ^ _T_3657; // @[AesSbox.scala 40:63] |
| wire _T_3677 = _T_3669 ^ _T_3631; // @[AesSbox.scala 40:63] |
| wire _T_3679 = _T_3675 ^ _T_3677; // @[AesSbox.scala 40:63] |
| wire _T_3681 = _T_3675 & _T_3671; // @[AesSbox.scala 41:63] |
| wire _T_3683 = _T_3673 ^ _T_3681; // @[AesSbox.scala 40:63] |
| wire _T_3685 = _T_3671 ^ _T_3673; // @[AesSbox.scala 40:63] |
| wire _T_3687 = _T_3677 ^ _T_3681; // @[AesSbox.scala 40:63] |
| wire _T_3689 = _T_3687 & _T_3685; // @[AesSbox.scala 41:63] |
| wire _T_3691 = _T_3683 & _T_3679; // @[AesSbox.scala 41:63] |
| wire _T_3693 = _T_3671 & _T_3677; // @[AesSbox.scala 41:63] |
| wire _T_3695 = _T_3685 & _T_3693; // @[AesSbox.scala 41:63] |
| wire _T_3697 = _T_3685 ^ _T_3681; // @[AesSbox.scala 40:63] |
| wire _T_3699 = _T_3673 & _T_3675; // @[AesSbox.scala 41:63] |
| wire _T_3701 = _T_3679 & _T_3699; // @[AesSbox.scala 41:63] |
| wire _T_3703 = _T_3679 ^ _T_3681; // @[AesSbox.scala 40:63] |
| wire _T_3705 = _T_3673 ^ _T_3689; // @[AesSbox.scala 40:63] |
| wire _T_3707 = _T_3695 ^ _T_3697; // @[AesSbox.scala 40:63] |
| wire _T_3709 = _T_3677 ^ _T_3691; // @[AesSbox.scala 40:63] |
| wire _T_3711 = _T_3701 ^ _T_3703; // @[AesSbox.scala 40:63] |
| wire _T_3713 = _T_3707 ^ _T_3711; // @[AesSbox.scala 40:63] |
| wire _T_3715 = _T_3705 ^ _T_3709; // @[AesSbox.scala 40:63] |
| wire _T_3717 = _T_3705 ^ _T_3707; // @[AesSbox.scala 40:63] |
| wire _T_3719 = _T_3709 ^ _T_3711; // @[AesSbox.scala 40:63] |
| wire _T_3721 = _T_3715 ^ _T_3713; // @[AesSbox.scala 40:63] |
| wire _T_3723 = _T_3719 & _T_3587; // @[AesSbox.scala 41:63] |
| wire _T_3725 = _T_3711 & _T_3599; // @[AesSbox.scala 41:63] |
| wire _T_3727 = _T_3709 & matrix_3_1[0]; // @[AesSbox.scala 41:63] |
| wire _T_3729 = _T_3717 & _T_3619; // @[AesSbox.scala 41:63] |
| wire _T_3731 = _T_3707 & _T_3585; // @[AesSbox.scala 41:63] |
| wire _T_3733 = _T_3705 & _T_3611; // @[AesSbox.scala 41:63] |
| wire _T_3735 = _T_3715 & _T_3593; // @[AesSbox.scala 41:63] |
| wire _T_3737 = _T_3721 & _T_3623; // @[AesSbox.scala 41:63] |
| wire _T_3739 = _T_3713 & _T_3605; // @[AesSbox.scala 41:63] |
| wire _T_3741 = _T_3719 & _T_3615; // @[AesSbox.scala 41:63] |
| wire _T_3743 = _T_3711 & _T_3617; // @[AesSbox.scala 41:63] |
| wire _T_3745 = _T_3709 & _T_3597; // @[AesSbox.scala 41:63] |
| wire _T_3747 = _T_3717 & _T_3591; // @[AesSbox.scala 41:63] |
| wire _T_3749 = _T_3707 & _T_3595; // @[AesSbox.scala 41:63] |
| wire _T_3751 = _T_3705 & _T_3621; // @[AesSbox.scala 41:63] |
| wire _T_3753 = _T_3715 & _T_3581; // @[AesSbox.scala 41:63] |
| wire _T_3755 = _T_3721 & _T_3627; // @[AesSbox.scala 41:63] |
| wire _T_3757 = _T_3713 & _T_3609; // @[AesSbox.scala 41:63] |
| wire _T_3759 = _T_3753 ^ _T_3755; // @[AesSbox.scala 40:63] |
| wire _T_3761 = _T_3731 ^ _T_3743; // @[AesSbox.scala 40:63] |
| wire _T_3763 = _T_3737 ^ _T_3759; // @[AesSbox.scala 40:63] |
| wire _T_3765 = _T_3741 ^ _T_3761; // @[AesSbox.scala 40:63] |
| wire _T_3767 = _T_3727 ^ _T_3747; // @[AesSbox.scala 40:63] |
| wire _T_3769 = _T_3723 ^ _T_3729; // @[AesSbox.scala 40:63] |
| wire _T_3771 = _T_3759 ^ _T_3769; // @[AesSbox.scala 40:63] |
| wire _T_3773 = _T_3725 ^ _T_3765; // @[AesSbox.scala 40:63] |
| wire _T_3775 = _T_3723 ^ _T_3735; // @[AesSbox.scala 40:63] |
| wire _T_3777 = _T_3733 ^ _T_3749; // @[AesSbox.scala 40:63] |
| wire _T_3779 = _T_3739 ^ _T_3751; // @[AesSbox.scala 40:63] |
| wire _T_3781 = _T_3727 ^ _T_3773; // @[AesSbox.scala 40:63] |
| wire _T_3783 = _T_3767 ^ _T_3779; // @[AesSbox.scala 40:63] |
| wire _T_3785 = _T_3745 ^ _T_3761; // @[AesSbox.scala 40:63] |
| wire _T_3787 = _T_3729 ^ _T_3735; // @[AesSbox.scala 40:63] |
| wire _T_3789 = _T_3765 ^ _T_3787; // @[AesSbox.scala 40:63] |
| wire _T_3791 = _T_3757 ^ _T_3783; // @[AesSbox.scala 40:63] |
| wire _T_3793 = _T_3753 ^ _T_3775; // @[AesSbox.scala 40:63] |
| wire _T_3795 = _T_3767 ^ _T_3777; // @[AesSbox.scala 40:63] |
| wire _T_3796 = _T_3763 ^ _T_3789; // @[AesSbox.scala 40:63] |
| wire _T_3797 = _T_3791 ^ _T_3793; // @[AesSbox.scala 42:65] |
| wire _T_3798 = ~_T_3797; // @[AesSbox.scala 42:51] |
| wire _T_3800 = _T_3733 ^ _T_3759; // @[AesSbox.scala 40:63] |
| wire _T_3801 = _T_3771 ^ _T_3773; // @[AesSbox.scala 40:63] |
| wire _T_3802 = _T_3781 ^ _T_3800; // @[AesSbox.scala 40:63] |
| wire _T_3804 = _T_3731 ^ _T_3747; // @[AesSbox.scala 40:63] |
| wire _T_3806 = _T_3769 ^ _T_3785; // @[AesSbox.scala 40:63] |
| wire _T_3807 = _T_3771 ^ _T_3795; // @[AesSbox.scala 42:65] |
| wire _T_3808 = ~_T_3807; // @[AesSbox.scala 42:51] |
| wire _T_3810 = _T_3739 ^ _T_3777; // @[AesSbox.scala 40:63] |
| wire _T_3812 = _T_3804 ^ _T_3810; // @[AesSbox.scala 40:63] |
| wire _T_3814 = _T_3731 ^ _T_3775; // @[AesSbox.scala 40:63] |
| wire _T_3815 = _T_3763 ^ _T_3812; // @[AesSbox.scala 42:65] |
| wire _T_3816 = ~_T_3815; // @[AesSbox.scala 42:51] |
| wire _T_3818 = _T_3783 ^ _T_3806; // @[AesSbox.scala 40:63] |
| wire _T_3819 = _T_3763 ^ _T_3818; // @[AesSbox.scala 40:63] |
| wire _T_3821 = _T_3773 ^ _T_3814; // @[AesSbox.scala 40:63] |
| wire _T_3822 = _T_3763 ^ _T_3821; // @[AesSbox.scala 42:65] |
| wire _T_3823 = ~_T_3822; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_2_1 = {_T_3796,_T_3823,_T_3798,_T_3801,_T_3802,_T_3819,_T_3816,_T_3808}; // @[Cat.scala 29:58] |
| wire _T_3848 = matrix_3_2[1] ^ matrix_3_2[3]; // @[AesSbox.scala 40:63] |
| wire _T_3850 = matrix_3_2[4] ^ matrix_3_2[7]; // @[AesSbox.scala 40:63] |
| wire _T_3852 = matrix_3_2[6] ^ matrix_3_2[5]; // @[AesSbox.scala 40:63] |
| wire _T_3854 = matrix_3_2[0] ^ _T_3852; // @[AesSbox.scala 40:63] |
| wire _T_3856 = _T_3848 ^ _T_3850; // @[AesSbox.scala 40:63] |
| wire _T_3858 = matrix_3_2[6] ^ matrix_3_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_3860 = matrix_3_2[7] ^ matrix_3_2[1]; // @[AesSbox.scala 40:63] |
| wire _T_3862 = _T_3848 ^ _T_3858; // @[AesSbox.scala 40:63] |
| wire _T_3864 = matrix_3_2[1] ^ _T_3854; // @[AesSbox.scala 40:63] |
| wire _T_3866 = matrix_3_2[4] ^ _T_3854; // @[AesSbox.scala 40:63] |
| wire _T_3868 = matrix_3_2[0] ^ _T_3856; // @[AesSbox.scala 40:63] |
| wire _T_3870 = _T_3856 ^ _T_3858; // @[AesSbox.scala 40:63] |
| wire _T_3872 = matrix_3_2[5] ^ matrix_3_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_3874 = _T_3852 ^ _T_3856; // @[AesSbox.scala 40:63] |
| wire _T_3876 = matrix_3_2[2] ^ _T_3860; // @[AesSbox.scala 40:63] |
| wire _T_3878 = matrix_3_2[7] ^ matrix_3_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_3880 = matrix_3_2[0] ^ _T_3862; // @[AesSbox.scala 40:63] |
| wire _T_3882 = matrix_3_2[1] ^ matrix_3_2[2]; // @[AesSbox.scala 40:63] |
| wire _T_3884 = _T_3850 ^ _T_3882; // @[AesSbox.scala 40:63] |
| wire _T_3886 = _T_3854 ^ _T_3876; // @[AesSbox.scala 40:63] |
| wire _T_3888 = _T_3848 ^ _T_3872; // @[AesSbox.scala 40:63] |
| wire _T_3890 = matrix_3_2[7] ^ _T_3854; // @[AesSbox.scala 40:63] |
| wire _T_3892 = _T_3888 ^ _T_3856; // @[AesSbox.scala 40:63] |
| wire _T_3894 = _T_3888 ^ _T_3860; // @[AesSbox.scala 40:63] |
| wire _T_3896 = _T_3860 ^ _T_3884; // @[AesSbox.scala 40:63] |
| wire _T_3898 = _T_3878 ^ _T_3874; // @[AesSbox.scala 40:63] |
| wire _T_3900 = _T_3890 ^ _T_3880; // @[AesSbox.scala 40:63] |
| wire _T_3902 = _T_3884 & _T_3856; // @[AesSbox.scala 41:63] |
| wire _T_3904 = _T_3886 & _T_3868; // @[AesSbox.scala 41:63] |
| wire _T_3906 = _T_3870 ^ _T_3902; // @[AesSbox.scala 40:63] |
| wire _T_3908 = _T_3866 & matrix_3_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_3910 = _T_3908 ^ _T_3902; // @[AesSbox.scala 40:63] |
| wire _T_3912 = _T_3860 & _T_3888; // @[AesSbox.scala 41:63] |
| wire _T_3914 = _T_3864 & _T_3854; // @[AesSbox.scala 41:63] |
| wire _T_3916 = _T_3894 ^ _T_3912; // @[AesSbox.scala 40:63] |
| wire _T_3918 = _T_3890 & _T_3880; // @[AesSbox.scala 41:63] |
| wire _T_3920 = _T_3918 ^ _T_3912; // @[AesSbox.scala 40:63] |
| wire _T_3922 = _T_3850 & _T_3862; // @[AesSbox.scala 41:63] |
| wire _T_3924 = _T_3896 & _T_3892; // @[AesSbox.scala 41:63] |
| wire _T_3926 = _T_3924 ^ _T_3922; // @[AesSbox.scala 40:63] |
| wire _T_3928 = _T_3878 & _T_3874; // @[AesSbox.scala 41:63] |
| wire _T_3930 = _T_3928 ^ _T_3922; // @[AesSbox.scala 40:63] |
| wire _T_3932 = _T_3906 ^ _T_3904; // @[AesSbox.scala 40:63] |
| wire _T_3934 = _T_3910 ^ _T_3898; // @[AesSbox.scala 40:63] |
| wire _T_3936 = _T_3916 ^ _T_3914; // @[AesSbox.scala 40:63] |
| wire _T_3938 = _T_3920 ^ _T_3930; // @[AesSbox.scala 40:63] |
| wire _T_3940 = _T_3932 ^ _T_3926; // @[AesSbox.scala 40:63] |
| wire _T_3942 = _T_3934 ^ _T_3930; // @[AesSbox.scala 40:63] |
| wire _T_3944 = _T_3936 ^ _T_3926; // @[AesSbox.scala 40:63] |
| wire _T_3946 = _T_3938 ^ _T_3900; // @[AesSbox.scala 40:63] |
| wire _T_3948 = _T_3944 ^ _T_3946; // @[AesSbox.scala 40:63] |
| wire _T_3950 = _T_3944 & _T_3940; // @[AesSbox.scala 41:63] |
| wire _T_3952 = _T_3942 ^ _T_3950; // @[AesSbox.scala 40:63] |
| wire _T_3954 = _T_3940 ^ _T_3942; // @[AesSbox.scala 40:63] |
| wire _T_3956 = _T_3946 ^ _T_3950; // @[AesSbox.scala 40:63] |
| wire _T_3958 = _T_3956 & _T_3954; // @[AesSbox.scala 41:63] |
| wire _T_3960 = _T_3952 & _T_3948; // @[AesSbox.scala 41:63] |
| wire _T_3962 = _T_3940 & _T_3946; // @[AesSbox.scala 41:63] |
| wire _T_3964 = _T_3954 & _T_3962; // @[AesSbox.scala 41:63] |
| wire _T_3966 = _T_3954 ^ _T_3950; // @[AesSbox.scala 40:63] |
| wire _T_3968 = _T_3942 & _T_3944; // @[AesSbox.scala 41:63] |
| wire _T_3970 = _T_3948 & _T_3968; // @[AesSbox.scala 41:63] |
| wire _T_3972 = _T_3948 ^ _T_3950; // @[AesSbox.scala 40:63] |
| wire _T_3974 = _T_3942 ^ _T_3958; // @[AesSbox.scala 40:63] |
| wire _T_3976 = _T_3964 ^ _T_3966; // @[AesSbox.scala 40:63] |
| wire _T_3978 = _T_3946 ^ _T_3960; // @[AesSbox.scala 40:63] |
| wire _T_3980 = _T_3970 ^ _T_3972; // @[AesSbox.scala 40:63] |
| wire _T_3982 = _T_3976 ^ _T_3980; // @[AesSbox.scala 40:63] |
| wire _T_3984 = _T_3974 ^ _T_3978; // @[AesSbox.scala 40:63] |
| wire _T_3986 = _T_3974 ^ _T_3976; // @[AesSbox.scala 40:63] |
| wire _T_3988 = _T_3978 ^ _T_3980; // @[AesSbox.scala 40:63] |
| wire _T_3990 = _T_3984 ^ _T_3982; // @[AesSbox.scala 40:63] |
| wire _T_3992 = _T_3988 & _T_3856; // @[AesSbox.scala 41:63] |
| wire _T_3994 = _T_3980 & _T_3868; // @[AesSbox.scala 41:63] |
| wire _T_3996 = _T_3978 & matrix_3_2[0]; // @[AesSbox.scala 41:63] |
| wire _T_3998 = _T_3986 & _T_3888; // @[AesSbox.scala 41:63] |
| wire _T_4000 = _T_3976 & _T_3854; // @[AesSbox.scala 41:63] |
| wire _T_4002 = _T_3974 & _T_3880; // @[AesSbox.scala 41:63] |
| wire _T_4004 = _T_3984 & _T_3862; // @[AesSbox.scala 41:63] |
| wire _T_4006 = _T_3990 & _T_3892; // @[AesSbox.scala 41:63] |
| wire _T_4008 = _T_3982 & _T_3874; // @[AesSbox.scala 41:63] |
| wire _T_4010 = _T_3988 & _T_3884; // @[AesSbox.scala 41:63] |
| wire _T_4012 = _T_3980 & _T_3886; // @[AesSbox.scala 41:63] |
| wire _T_4014 = _T_3978 & _T_3866; // @[AesSbox.scala 41:63] |
| wire _T_4016 = _T_3986 & _T_3860; // @[AesSbox.scala 41:63] |
| wire _T_4018 = _T_3976 & _T_3864; // @[AesSbox.scala 41:63] |
| wire _T_4020 = _T_3974 & _T_3890; // @[AesSbox.scala 41:63] |
| wire _T_4022 = _T_3984 & _T_3850; // @[AesSbox.scala 41:63] |
| wire _T_4024 = _T_3990 & _T_3896; // @[AesSbox.scala 41:63] |
| wire _T_4026 = _T_3982 & _T_3878; // @[AesSbox.scala 41:63] |
| wire _T_4028 = _T_4022 ^ _T_4024; // @[AesSbox.scala 40:63] |
| wire _T_4030 = _T_4000 ^ _T_4012; // @[AesSbox.scala 40:63] |
| wire _T_4032 = _T_4006 ^ _T_4028; // @[AesSbox.scala 40:63] |
| wire _T_4034 = _T_4010 ^ _T_4030; // @[AesSbox.scala 40:63] |
| wire _T_4036 = _T_3996 ^ _T_4016; // @[AesSbox.scala 40:63] |
| wire _T_4038 = _T_3992 ^ _T_3998; // @[AesSbox.scala 40:63] |
| wire _T_4040 = _T_4028 ^ _T_4038; // @[AesSbox.scala 40:63] |
| wire _T_4042 = _T_3994 ^ _T_4034; // @[AesSbox.scala 40:63] |
| wire _T_4044 = _T_3992 ^ _T_4004; // @[AesSbox.scala 40:63] |
| wire _T_4046 = _T_4002 ^ _T_4018; // @[AesSbox.scala 40:63] |
| wire _T_4048 = _T_4008 ^ _T_4020; // @[AesSbox.scala 40:63] |
| wire _T_4050 = _T_3996 ^ _T_4042; // @[AesSbox.scala 40:63] |
| wire _T_4052 = _T_4036 ^ _T_4048; // @[AesSbox.scala 40:63] |
| wire _T_4054 = _T_4014 ^ _T_4030; // @[AesSbox.scala 40:63] |
| wire _T_4056 = _T_3998 ^ _T_4004; // @[AesSbox.scala 40:63] |
| wire _T_4058 = _T_4034 ^ _T_4056; // @[AesSbox.scala 40:63] |
| wire _T_4060 = _T_4026 ^ _T_4052; // @[AesSbox.scala 40:63] |
| wire _T_4062 = _T_4022 ^ _T_4044; // @[AesSbox.scala 40:63] |
| wire _T_4064 = _T_4036 ^ _T_4046; // @[AesSbox.scala 40:63] |
| wire _T_4065 = _T_4032 ^ _T_4058; // @[AesSbox.scala 40:63] |
| wire _T_4066 = _T_4060 ^ _T_4062; // @[AesSbox.scala 42:65] |
| wire _T_4067 = ~_T_4066; // @[AesSbox.scala 42:51] |
| wire _T_4069 = _T_4002 ^ _T_4028; // @[AesSbox.scala 40:63] |
| wire _T_4070 = _T_4040 ^ _T_4042; // @[AesSbox.scala 40:63] |
| wire _T_4071 = _T_4050 ^ _T_4069; // @[AesSbox.scala 40:63] |
| wire _T_4073 = _T_4000 ^ _T_4016; // @[AesSbox.scala 40:63] |
| wire _T_4075 = _T_4038 ^ _T_4054; // @[AesSbox.scala 40:63] |
| wire _T_4076 = _T_4040 ^ _T_4064; // @[AesSbox.scala 42:65] |
| wire _T_4077 = ~_T_4076; // @[AesSbox.scala 42:51] |
| wire _T_4079 = _T_4008 ^ _T_4046; // @[AesSbox.scala 40:63] |
| wire _T_4081 = _T_4073 ^ _T_4079; // @[AesSbox.scala 40:63] |
| wire _T_4083 = _T_4000 ^ _T_4044; // @[AesSbox.scala 40:63] |
| wire _T_4084 = _T_4032 ^ _T_4081; // @[AesSbox.scala 42:65] |
| wire _T_4085 = ~_T_4084; // @[AesSbox.scala 42:51] |
| wire _T_4087 = _T_4052 ^ _T_4075; // @[AesSbox.scala 40:63] |
| wire _T_4088 = _T_4032 ^ _T_4087; // @[AesSbox.scala 40:63] |
| wire _T_4090 = _T_4042 ^ _T_4083; // @[AesSbox.scala 40:63] |
| wire _T_4091 = _T_4032 ^ _T_4090; // @[AesSbox.scala 42:65] |
| wire _T_4092 = ~_T_4091; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_1_2 = {_T_4065,_T_4092,_T_4067,_T_4070,_T_4071,_T_4088,_T_4085,_T_4077}; // @[Cat.scala 29:58] |
| wire _T_4117 = matrix_3_3[1] ^ matrix_3_3[3]; // @[AesSbox.scala 40:63] |
| wire _T_4119 = matrix_3_3[4] ^ matrix_3_3[7]; // @[AesSbox.scala 40:63] |
| wire _T_4121 = matrix_3_3[6] ^ matrix_3_3[5]; // @[AesSbox.scala 40:63] |
| wire _T_4123 = matrix_3_3[0] ^ _T_4121; // @[AesSbox.scala 40:63] |
| wire _T_4125 = _T_4117 ^ _T_4119; // @[AesSbox.scala 40:63] |
| wire _T_4127 = matrix_3_3[6] ^ matrix_3_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_4129 = matrix_3_3[7] ^ matrix_3_3[1]; // @[AesSbox.scala 40:63] |
| wire _T_4131 = _T_4117 ^ _T_4127; // @[AesSbox.scala 40:63] |
| wire _T_4133 = matrix_3_3[1] ^ _T_4123; // @[AesSbox.scala 40:63] |
| wire _T_4135 = matrix_3_3[4] ^ _T_4123; // @[AesSbox.scala 40:63] |
| wire _T_4137 = matrix_3_3[0] ^ _T_4125; // @[AesSbox.scala 40:63] |
| wire _T_4139 = _T_4125 ^ _T_4127; // @[AesSbox.scala 40:63] |
| wire _T_4141 = matrix_3_3[5] ^ matrix_3_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_4143 = _T_4121 ^ _T_4125; // @[AesSbox.scala 40:63] |
| wire _T_4145 = matrix_3_3[2] ^ _T_4129; // @[AesSbox.scala 40:63] |
| wire _T_4147 = matrix_3_3[7] ^ matrix_3_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_4149 = matrix_3_3[0] ^ _T_4131; // @[AesSbox.scala 40:63] |
| wire _T_4151 = matrix_3_3[1] ^ matrix_3_3[2]; // @[AesSbox.scala 40:63] |
| wire _T_4153 = _T_4119 ^ _T_4151; // @[AesSbox.scala 40:63] |
| wire _T_4155 = _T_4123 ^ _T_4145; // @[AesSbox.scala 40:63] |
| wire _T_4157 = _T_4117 ^ _T_4141; // @[AesSbox.scala 40:63] |
| wire _T_4159 = matrix_3_3[7] ^ _T_4123; // @[AesSbox.scala 40:63] |
| wire _T_4161 = _T_4157 ^ _T_4125; // @[AesSbox.scala 40:63] |
| wire _T_4163 = _T_4157 ^ _T_4129; // @[AesSbox.scala 40:63] |
| wire _T_4165 = _T_4129 ^ _T_4153; // @[AesSbox.scala 40:63] |
| wire _T_4167 = _T_4147 ^ _T_4143; // @[AesSbox.scala 40:63] |
| wire _T_4169 = _T_4159 ^ _T_4149; // @[AesSbox.scala 40:63] |
| wire _T_4171 = _T_4153 & _T_4125; // @[AesSbox.scala 41:63] |
| wire _T_4173 = _T_4155 & _T_4137; // @[AesSbox.scala 41:63] |
| wire _T_4175 = _T_4139 ^ _T_4171; // @[AesSbox.scala 40:63] |
| wire _T_4177 = _T_4135 & matrix_3_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_4179 = _T_4177 ^ _T_4171; // @[AesSbox.scala 40:63] |
| wire _T_4181 = _T_4129 & _T_4157; // @[AesSbox.scala 41:63] |
| wire _T_4183 = _T_4133 & _T_4123; // @[AesSbox.scala 41:63] |
| wire _T_4185 = _T_4163 ^ _T_4181; // @[AesSbox.scala 40:63] |
| wire _T_4187 = _T_4159 & _T_4149; // @[AesSbox.scala 41:63] |
| wire _T_4189 = _T_4187 ^ _T_4181; // @[AesSbox.scala 40:63] |
| wire _T_4191 = _T_4119 & _T_4131; // @[AesSbox.scala 41:63] |
| wire _T_4193 = _T_4165 & _T_4161; // @[AesSbox.scala 41:63] |
| wire _T_4195 = _T_4193 ^ _T_4191; // @[AesSbox.scala 40:63] |
| wire _T_4197 = _T_4147 & _T_4143; // @[AesSbox.scala 41:63] |
| wire _T_4199 = _T_4197 ^ _T_4191; // @[AesSbox.scala 40:63] |
| wire _T_4201 = _T_4175 ^ _T_4173; // @[AesSbox.scala 40:63] |
| wire _T_4203 = _T_4179 ^ _T_4167; // @[AesSbox.scala 40:63] |
| wire _T_4205 = _T_4185 ^ _T_4183; // @[AesSbox.scala 40:63] |
| wire _T_4207 = _T_4189 ^ _T_4199; // @[AesSbox.scala 40:63] |
| wire _T_4209 = _T_4201 ^ _T_4195; // @[AesSbox.scala 40:63] |
| wire _T_4211 = _T_4203 ^ _T_4199; // @[AesSbox.scala 40:63] |
| wire _T_4213 = _T_4205 ^ _T_4195; // @[AesSbox.scala 40:63] |
| wire _T_4215 = _T_4207 ^ _T_4169; // @[AesSbox.scala 40:63] |
| wire _T_4217 = _T_4213 ^ _T_4215; // @[AesSbox.scala 40:63] |
| wire _T_4219 = _T_4213 & _T_4209; // @[AesSbox.scala 41:63] |
| wire _T_4221 = _T_4211 ^ _T_4219; // @[AesSbox.scala 40:63] |
| wire _T_4223 = _T_4209 ^ _T_4211; // @[AesSbox.scala 40:63] |
| wire _T_4225 = _T_4215 ^ _T_4219; // @[AesSbox.scala 40:63] |
| wire _T_4227 = _T_4225 & _T_4223; // @[AesSbox.scala 41:63] |
| wire _T_4229 = _T_4221 & _T_4217; // @[AesSbox.scala 41:63] |
| wire _T_4231 = _T_4209 & _T_4215; // @[AesSbox.scala 41:63] |
| wire _T_4233 = _T_4223 & _T_4231; // @[AesSbox.scala 41:63] |
| wire _T_4235 = _T_4223 ^ _T_4219; // @[AesSbox.scala 40:63] |
| wire _T_4237 = _T_4211 & _T_4213; // @[AesSbox.scala 41:63] |
| wire _T_4239 = _T_4217 & _T_4237; // @[AesSbox.scala 41:63] |
| wire _T_4241 = _T_4217 ^ _T_4219; // @[AesSbox.scala 40:63] |
| wire _T_4243 = _T_4211 ^ _T_4227; // @[AesSbox.scala 40:63] |
| wire _T_4245 = _T_4233 ^ _T_4235; // @[AesSbox.scala 40:63] |
| wire _T_4247 = _T_4215 ^ _T_4229; // @[AesSbox.scala 40:63] |
| wire _T_4249 = _T_4239 ^ _T_4241; // @[AesSbox.scala 40:63] |
| wire _T_4251 = _T_4245 ^ _T_4249; // @[AesSbox.scala 40:63] |
| wire _T_4253 = _T_4243 ^ _T_4247; // @[AesSbox.scala 40:63] |
| wire _T_4255 = _T_4243 ^ _T_4245; // @[AesSbox.scala 40:63] |
| wire _T_4257 = _T_4247 ^ _T_4249; // @[AesSbox.scala 40:63] |
| wire _T_4259 = _T_4253 ^ _T_4251; // @[AesSbox.scala 40:63] |
| wire _T_4261 = _T_4257 & _T_4125; // @[AesSbox.scala 41:63] |
| wire _T_4263 = _T_4249 & _T_4137; // @[AesSbox.scala 41:63] |
| wire _T_4265 = _T_4247 & matrix_3_3[0]; // @[AesSbox.scala 41:63] |
| wire _T_4267 = _T_4255 & _T_4157; // @[AesSbox.scala 41:63] |
| wire _T_4269 = _T_4245 & _T_4123; // @[AesSbox.scala 41:63] |
| wire _T_4271 = _T_4243 & _T_4149; // @[AesSbox.scala 41:63] |
| wire _T_4273 = _T_4253 & _T_4131; // @[AesSbox.scala 41:63] |
| wire _T_4275 = _T_4259 & _T_4161; // @[AesSbox.scala 41:63] |
| wire _T_4277 = _T_4251 & _T_4143; // @[AesSbox.scala 41:63] |
| wire _T_4279 = _T_4257 & _T_4153; // @[AesSbox.scala 41:63] |
| wire _T_4281 = _T_4249 & _T_4155; // @[AesSbox.scala 41:63] |
| wire _T_4283 = _T_4247 & _T_4135; // @[AesSbox.scala 41:63] |
| wire _T_4285 = _T_4255 & _T_4129; // @[AesSbox.scala 41:63] |
| wire _T_4287 = _T_4245 & _T_4133; // @[AesSbox.scala 41:63] |
| wire _T_4289 = _T_4243 & _T_4159; // @[AesSbox.scala 41:63] |
| wire _T_4291 = _T_4253 & _T_4119; // @[AesSbox.scala 41:63] |
| wire _T_4293 = _T_4259 & _T_4165; // @[AesSbox.scala 41:63] |
| wire _T_4295 = _T_4251 & _T_4147; // @[AesSbox.scala 41:63] |
| wire _T_4297 = _T_4291 ^ _T_4293; // @[AesSbox.scala 40:63] |
| wire _T_4299 = _T_4269 ^ _T_4281; // @[AesSbox.scala 40:63] |
| wire _T_4301 = _T_4275 ^ _T_4297; // @[AesSbox.scala 40:63] |
| wire _T_4303 = _T_4279 ^ _T_4299; // @[AesSbox.scala 40:63] |
| wire _T_4305 = _T_4265 ^ _T_4285; // @[AesSbox.scala 40:63] |
| wire _T_4307 = _T_4261 ^ _T_4267; // @[AesSbox.scala 40:63] |
| wire _T_4309 = _T_4297 ^ _T_4307; // @[AesSbox.scala 40:63] |
| wire _T_4311 = _T_4263 ^ _T_4303; // @[AesSbox.scala 40:63] |
| wire _T_4313 = _T_4261 ^ _T_4273; // @[AesSbox.scala 40:63] |
| wire _T_4315 = _T_4271 ^ _T_4287; // @[AesSbox.scala 40:63] |
| wire _T_4317 = _T_4277 ^ _T_4289; // @[AesSbox.scala 40:63] |
| wire _T_4319 = _T_4265 ^ _T_4311; // @[AesSbox.scala 40:63] |
| wire _T_4321 = _T_4305 ^ _T_4317; // @[AesSbox.scala 40:63] |
| wire _T_4323 = _T_4283 ^ _T_4299; // @[AesSbox.scala 40:63] |
| wire _T_4325 = _T_4267 ^ _T_4273; // @[AesSbox.scala 40:63] |
| wire _T_4327 = _T_4303 ^ _T_4325; // @[AesSbox.scala 40:63] |
| wire _T_4329 = _T_4295 ^ _T_4321; // @[AesSbox.scala 40:63] |
| wire _T_4331 = _T_4291 ^ _T_4313; // @[AesSbox.scala 40:63] |
| wire _T_4333 = _T_4305 ^ _T_4315; // @[AesSbox.scala 40:63] |
| wire _T_4334 = _T_4301 ^ _T_4327; // @[AesSbox.scala 40:63] |
| wire _T_4335 = _T_4329 ^ _T_4331; // @[AesSbox.scala 42:65] |
| wire _T_4336 = ~_T_4335; // @[AesSbox.scala 42:51] |
| wire _T_4338 = _T_4271 ^ _T_4297; // @[AesSbox.scala 40:63] |
| wire _T_4339 = _T_4309 ^ _T_4311; // @[AesSbox.scala 40:63] |
| wire _T_4340 = _T_4319 ^ _T_4338; // @[AesSbox.scala 40:63] |
| wire _T_4342 = _T_4269 ^ _T_4285; // @[AesSbox.scala 40:63] |
| wire _T_4344 = _T_4307 ^ _T_4323; // @[AesSbox.scala 40:63] |
| wire _T_4345 = _T_4309 ^ _T_4333; // @[AesSbox.scala 42:65] |
| wire _T_4346 = ~_T_4345; // @[AesSbox.scala 42:51] |
| wire _T_4348 = _T_4277 ^ _T_4315; // @[AesSbox.scala 40:63] |
| wire _T_4350 = _T_4342 ^ _T_4348; // @[AesSbox.scala 40:63] |
| wire _T_4352 = _T_4269 ^ _T_4313; // @[AesSbox.scala 40:63] |
| wire _T_4353 = _T_4301 ^ _T_4350; // @[AesSbox.scala 42:65] |
| wire _T_4354 = ~_T_4353; // @[AesSbox.scala 42:51] |
| wire _T_4356 = _T_4321 ^ _T_4344; // @[AesSbox.scala 40:63] |
| wire _T_4357 = _T_4301 ^ _T_4356; // @[AesSbox.scala 40:63] |
| wire _T_4359 = _T_4311 ^ _T_4352; // @[AesSbox.scala 40:63] |
| wire _T_4360 = _T_4301 ^ _T_4359; // @[AesSbox.scala 42:65] |
| wire _T_4361 = ~_T_4360; // @[AesSbox.scala 42:51] |
| wire [7:0] roundPart1_0_3 = {_T_4334,_T_4361,_T_4336,_T_4339,_T_4340,_T_4357,_T_4354,_T_4346}; // @[Cat.scala 29:58] |
| wire [7:0] roundPart2_0_0 = MixColsModule_io_out_0_0 ^ io_keys_0_0_0; // @[AesComponents.scala 57:30] |
| wire [7:0] roundPart2_0_1 = MixColsModule_io_out_0_1 ^ io_keys_0_0_1; // @[AesComponents.scala 57:51] |
| wire [7:0] roundPart2_0_2 = MixColsModule_io_out_0_2 ^ io_keys_0_0_2; // @[AesComponents.scala 57:72] |
| wire [7:0] roundPart2_0_3 = MixColsModule_io_out_0_3 ^ io_keys_0_0_3; // @[AesComponents.scala 57:93] |
| wire [7:0] roundPart2_1_0 = MixColsModule_io_out_1_0 ^ io_keys_0_1_0; // @[AesComponents.scala 58:30] |
| wire [7:0] roundPart2_1_1 = MixColsModule_io_out_1_1 ^ io_keys_0_1_1; // @[AesComponents.scala 58:51] |
| wire [7:0] roundPart2_1_2 = MixColsModule_io_out_1_2 ^ io_keys_0_1_2; // @[AesComponents.scala 58:72] |
| wire [7:0] roundPart2_1_3 = MixColsModule_io_out_1_3 ^ io_keys_0_1_3; // @[AesComponents.scala 58:93] |
| wire [7:0] roundPart2_2_0 = MixColsModule_io_out_2_0 ^ io_keys_0_2_0; // @[AesComponents.scala 59:30] |
| wire [7:0] roundPart2_2_1 = MixColsModule_io_out_2_1 ^ io_keys_0_2_1; // @[AesComponents.scala 59:51] |
| wire [7:0] roundPart2_2_2 = MixColsModule_io_out_2_2 ^ io_keys_0_2_2; // @[AesComponents.scala 59:72] |
| wire [7:0] roundPart2_2_3 = MixColsModule_io_out_2_3 ^ io_keys_0_2_3; // @[AesComponents.scala 59:93] |
| wire [7:0] roundPart2_3_0 = MixColsModule_io_out_3_0 ^ io_keys_0_3_0; // @[AesComponents.scala 60:30] |
| wire [7:0] roundPart2_3_1 = MixColsModule_io_out_3_1 ^ io_keys_0_3_1; // @[AesComponents.scala 60:51] |
| wire [7:0] roundPart2_3_2 = MixColsModule_io_out_3_2 ^ io_keys_0_3_2; // @[AesComponents.scala 60:72] |
| wire [7:0] roundPart2_3_3 = MixColsModule_io_out_3_3 ^ io_keys_0_3_3; // @[AesComponents.scala 60:93] |
| wire [7:0] roundPart2_last_0_0 = matrix_0_0 ^ io_keys_0_0_0; // @[AesComponents.scala 57:30] |
| wire [7:0] roundPart2_last_0_1 = matrix_0_1 ^ io_keys_0_0_1; // @[AesComponents.scala 57:51] |
| wire [7:0] roundPart2_last_0_2 = matrix_0_2 ^ io_keys_0_0_2; // @[AesComponents.scala 57:72] |
| wire [7:0] roundPart2_last_0_3 = matrix_0_3 ^ io_keys_0_0_3; // @[AesComponents.scala 57:93] |
| wire [7:0] roundPart2_last_1_0 = matrix_1_0 ^ io_keys_0_1_0; // @[AesComponents.scala 58:30] |
| wire [7:0] roundPart2_last_1_1 = matrix_1_1 ^ io_keys_0_1_1; // @[AesComponents.scala 58:51] |
| wire [7:0] roundPart2_last_1_2 = matrix_1_2 ^ io_keys_0_1_2; // @[AesComponents.scala 58:72] |
| wire [7:0] roundPart2_last_1_3 = matrix_1_3 ^ io_keys_0_1_3; // @[AesComponents.scala 58:93] |
| wire [7:0] roundPart2_last_2_0 = matrix_2_0 ^ io_keys_0_2_0; // @[AesComponents.scala 59:30] |
| wire [7:0] roundPart2_last_2_1 = matrix_2_1 ^ io_keys_0_2_1; // @[AesComponents.scala 59:51] |
| wire [7:0] roundPart2_last_2_2 = matrix_2_2 ^ io_keys_0_2_2; // @[AesComponents.scala 59:72] |
| wire [7:0] roundPart2_last_2_3 = matrix_2_3 ^ io_keys_0_2_3; // @[AesComponents.scala 59:93] |
| wire [7:0] roundPart2_last_3_0 = matrix_3_0 ^ io_keys_0_3_0; // @[AesComponents.scala 60:30] |
| wire [7:0] roundPart2_last_3_1 = matrix_3_1 ^ io_keys_0_3_1; // @[AesComponents.scala 60:51] |
| wire [7:0] roundPart2_last_3_2 = matrix_3_2 ^ io_keys_0_3_2; // @[AesComponents.scala 60:72] |
| wire [7:0] roundPart2_last_3_3 = matrix_3_3 ^ io_keys_0_3_3; // @[AesComponents.scala 60:93] |
| wire _T_4415 = io_ready & io_dataValid; // @[AesEncrypt.scala 75:20] |
| wire _T_4417 = state == 6'h1d; // @[AesEncrypt.scala 82:41] |
| wire _T_4418 = state == 6'h15; // @[AesEncrypt.scala 82:57] |
| wire _T_4419 = io_aes256 ? _T_4417 : _T_4418; // @[AesEncrypt.scala 82:23] |
| wire _T_4421 = ~state[0]; // @[AesEncrypt.scala 84:24] |
| wire _GEN_34 = _T_4421 ? _T_4415 : 1'h1; // @[AesEncrypt.scala 84:33] |
| wire [5:0] _T_4424 = state + 6'h1; // @[AesEncrypt.scala 91:24] |
| MixColsModule MixColsModule ( // @[AesComponents.scala 91:35] |
| .io_in_0_0(MixColsModule_io_in_0_0), |
| .io_in_0_1(MixColsModule_io_in_0_1), |
| .io_in_0_2(MixColsModule_io_in_0_2), |
| .io_in_0_3(MixColsModule_io_in_0_3), |
| .io_in_1_0(MixColsModule_io_in_1_0), |
| .io_in_1_1(MixColsModule_io_in_1_1), |
| .io_in_1_2(MixColsModule_io_in_1_2), |
| .io_in_1_3(MixColsModule_io_in_1_3), |
| .io_in_2_0(MixColsModule_io_in_2_0), |
| .io_in_2_1(MixColsModule_io_in_2_1), |
| .io_in_2_2(MixColsModule_io_in_2_2), |
| .io_in_2_3(MixColsModule_io_in_2_3), |
| .io_in_3_0(MixColsModule_io_in_3_0), |
| .io_in_3_1(MixColsModule_io_in_3_1), |
| .io_in_3_2(MixColsModule_io_in_3_2), |
| .io_in_3_3(MixColsModule_io_in_3_3), |
| .io_out_0_0(MixColsModule_io_out_0_0), |
| .io_out_0_1(MixColsModule_io_out_0_1), |
| .io_out_0_2(MixColsModule_io_out_0_2), |
| .io_out_0_3(MixColsModule_io_out_0_3), |
| .io_out_1_0(MixColsModule_io_out_1_0), |
| .io_out_1_1(MixColsModule_io_out_1_1), |
| .io_out_1_2(MixColsModule_io_out_1_2), |
| .io_out_1_3(MixColsModule_io_out_1_3), |
| .io_out_2_0(MixColsModule_io_out_2_0), |
| .io_out_2_1(MixColsModule_io_out_2_1), |
| .io_out_2_2(MixColsModule_io_out_2_2), |
| .io_out_2_3(MixColsModule_io_out_2_3), |
| .io_out_3_0(MixColsModule_io_out_3_0), |
| .io_out_3_1(MixColsModule_io_out_3_1), |
| .io_out_3_2(MixColsModule_io_out_3_2), |
| .io_out_3_3(MixColsModule_io_out_3_3) |
| ); |
| assign io_shiftCyc = _T_6 | io_dataValid; // @[AesEncrypt.scala 60:17] |
| assign io_shift = _T_6 ? _GEN_34 : _T_4415; // @[AesEncrypt.scala 61:14 AesEncrypt.scala 78:18 AesEncrypt.scala 88:22] |
| assign io_ready = _T_2 | _T_3; // @[AesEncrypt.scala 56:14] |
| assign io_dataOut = {_T_23,_T_16}; // @[AesEncrypt.scala 65:16] |
| assign io_ivOut = io_dataOut; // @[AesEncrypt.scala 66:14] |
| assign io_outputValid = state == 6'h1e; // @[AesEncrypt.scala 57:20] |
| assign MixColsModule_io_in_0_0 = matrix_0_0; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_0_1 = matrix_0_1; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_0_2 = matrix_0_2; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_0_3 = matrix_0_3; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_1_0 = matrix_1_0; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_1_1 = matrix_1_1; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_1_2 = matrix_1_2; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_1_3 = matrix_1_3; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_2_0 = matrix_2_0; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_2_1 = matrix_2_1; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_2_2 = matrix_2_2; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_2_3 = matrix_2_3; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_3_0 = matrix_3_0; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_3_1 = matrix_3_1; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_3_2 = matrix_3_2; // @[AesComponents.scala 92:29] |
| assign MixColsModule_io_in_3_3 = matrix_3_3; // @[AesComponents.scala 92:29] |
| `ifdef RANDOMIZE_GARBAGE_ASSIGN |
| `define RANDOMIZE |
| `endif |
| `ifdef RANDOMIZE_INVALID_ASSIGN |
| `define RANDOMIZE |
| `endif |
| `ifdef RANDOMIZE_REG_INIT |
| `define RANDOMIZE |
| `endif |
| `ifdef RANDOMIZE_MEM_INIT |
| `define RANDOMIZE |
| `endif |
| `ifndef RANDOM |
| `define RANDOM $random |
| `endif |
| `ifdef RANDOMIZE_MEM_INIT |
| integer initvar; |
| `endif |
| `ifndef SYNTHESIS |
| `ifdef FIRRTL_BEFORE_INITIAL |
| `FIRRTL_BEFORE_INITIAL |
| `endif |
| initial begin |
| `ifdef RANDOMIZE |
| `ifdef INIT_RANDOM |
| `INIT_RANDOM |
| `endif |
| `ifndef VERILATOR |
| `ifdef RANDOMIZE_DELAY |
| #`RANDOMIZE_DELAY begin end |
| `else |
| #0.002 begin end |
| `endif |
| `endif |
| `ifdef RANDOMIZE_REG_INIT |
| _RAND_0 = {1{`RANDOM}}; |
| state = _RAND_0[5:0]; |
| _RAND_1 = {1{`RANDOM}}; |
| matrix_0_0 = _RAND_1[7:0]; |
| _RAND_2 = {1{`RANDOM}}; |
| matrix_0_1 = _RAND_2[7:0]; |
| _RAND_3 = {1{`RANDOM}}; |
| matrix_0_2 = _RAND_3[7:0]; |
| _RAND_4 = {1{`RANDOM}}; |
| matrix_0_3 = _RAND_4[7:0]; |
| _RAND_5 = {1{`RANDOM}}; |
| matrix_1_0 = _RAND_5[7:0]; |
| _RAND_6 = {1{`RANDOM}}; |
| matrix_1_1 = _RAND_6[7:0]; |
| _RAND_7 = {1{`RANDOM}}; |
| matrix_1_2 = _RAND_7[7:0]; |
| _RAND_8 = {1{`RANDOM}}; |
| matrix_1_3 = _RAND_8[7:0]; |
| _RAND_9 = {1{`RANDOM}}; |
| matrix_2_0 = _RAND_9[7:0]; |
| _RAND_10 = {1{`RANDOM}}; |
| matrix_2_1 = _RAND_10[7:0]; |
| _RAND_11 = {1{`RANDOM}}; |
| matrix_2_2 = _RAND_11[7:0]; |
| _RAND_12 = {1{`RANDOM}}; |
| matrix_2_3 = _RAND_12[7:0]; |
| _RAND_13 = {1{`RANDOM}}; |
| matrix_3_0 = _RAND_13[7:0]; |
| _RAND_14 = {1{`RANDOM}}; |
| matrix_3_1 = _RAND_14[7:0]; |
| _RAND_15 = {1{`RANDOM}}; |
| matrix_3_2 = _RAND_15[7:0]; |
| _RAND_16 = {1{`RANDOM}}; |
| matrix_3_3 = _RAND_16[7:0]; |
| `endif // RANDOMIZE_REG_INIT |
| `endif // RANDOMIZE |
| end // initial |
| `ifdef FIRRTL_AFTER_INITIAL |
| `FIRRTL_AFTER_INITIAL |
| `endif |
| `endif // SYNTHESIS |
| always @(posedge clock) begin |
| if (reset) begin |
| state <= 6'h1; |
| end else if (_T_6) begin |
| if (_T_4419) begin |
| state <= 6'h1e; |
| end else begin |
| state <= _T_4424; |
| end |
| end else if (_T_4415) begin |
| state <= 6'h2; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_0_0 <= roundPart1_0_0; |
| end else if (_T_4419) begin |
| matrix_0_0 <= roundPart2_last_0_0; |
| end else begin |
| matrix_0_0 <= roundPart2_0_0; |
| end |
| end else if (_T_4415) begin |
| matrix_0_0 <= initOut_0_0; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_0_1 <= roundPart1_0_1; |
| end else if (_T_4419) begin |
| matrix_0_1 <= roundPart2_last_0_1; |
| end else begin |
| matrix_0_1 <= roundPart2_0_1; |
| end |
| end else if (_T_4415) begin |
| matrix_0_1 <= initOut_0_1; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_0_2 <= roundPart1_0_2; |
| end else if (_T_4419) begin |
| matrix_0_2 <= roundPart2_last_0_2; |
| end else begin |
| matrix_0_2 <= roundPart2_0_2; |
| end |
| end else if (_T_4415) begin |
| matrix_0_2 <= initOut_0_2; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_0_3 <= roundPart1_0_3; |
| end else if (_T_4419) begin |
| matrix_0_3 <= roundPart2_last_0_3; |
| end else begin |
| matrix_0_3 <= roundPart2_0_3; |
| end |
| end else if (_T_4415) begin |
| matrix_0_3 <= initOut_0_3; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_1_0 <= roundPart1_1_0; |
| end else if (_T_4419) begin |
| matrix_1_0 <= roundPart2_last_1_0; |
| end else begin |
| matrix_1_0 <= roundPart2_1_0; |
| end |
| end else if (_T_4415) begin |
| matrix_1_0 <= initOut_1_0; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_1_1 <= roundPart1_1_1; |
| end else if (_T_4419) begin |
| matrix_1_1 <= roundPart2_last_1_1; |
| end else begin |
| matrix_1_1 <= roundPart2_1_1; |
| end |
| end else if (_T_4415) begin |
| matrix_1_1 <= initOut_1_1; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_1_2 <= roundPart1_1_2; |
| end else if (_T_4419) begin |
| matrix_1_2 <= roundPart2_last_1_2; |
| end else begin |
| matrix_1_2 <= roundPart2_1_2; |
| end |
| end else if (_T_4415) begin |
| matrix_1_2 <= initOut_1_2; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_1_3 <= roundPart1_1_3; |
| end else if (_T_4419) begin |
| matrix_1_3 <= roundPart2_last_1_3; |
| end else begin |
| matrix_1_3 <= roundPart2_1_3; |
| end |
| end else if (_T_4415) begin |
| matrix_1_3 <= initOut_1_3; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_2_0 <= roundPart1_2_0; |
| end else if (_T_4419) begin |
| matrix_2_0 <= roundPart2_last_2_0; |
| end else begin |
| matrix_2_0 <= roundPart2_2_0; |
| end |
| end else if (_T_4415) begin |
| matrix_2_0 <= initOut_2_0; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_2_1 <= roundPart1_2_1; |
| end else if (_T_4419) begin |
| matrix_2_1 <= roundPart2_last_2_1; |
| end else begin |
| matrix_2_1 <= roundPart2_2_1; |
| end |
| end else if (_T_4415) begin |
| matrix_2_1 <= initOut_2_1; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_2_2 <= roundPart1_2_2; |
| end else if (_T_4419) begin |
| matrix_2_2 <= roundPart2_last_2_2; |
| end else begin |
| matrix_2_2 <= roundPart2_2_2; |
| end |
| end else if (_T_4415) begin |
| matrix_2_2 <= initOut_2_2; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_2_3 <= roundPart1_2_3; |
| end else if (_T_4419) begin |
| matrix_2_3 <= roundPart2_last_2_3; |
| end else begin |
| matrix_2_3 <= roundPart2_2_3; |
| end |
| end else if (_T_4415) begin |
| matrix_2_3 <= initOut_2_3; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_3_0 <= roundPart1_3_0; |
| end else if (_T_4419) begin |
| matrix_3_0 <= roundPart2_last_3_0; |
| end else begin |
| matrix_3_0 <= roundPart2_3_0; |
| end |
| end else if (_T_4415) begin |
| matrix_3_0 <= initOut_3_0; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_3_1 <= roundPart1_3_1; |
| end else if (_T_4419) begin |
| matrix_3_1 <= roundPart2_last_3_1; |
| end else begin |
| matrix_3_1 <= roundPart2_3_1; |
| end |
| end else if (_T_4415) begin |
| matrix_3_1 <= initOut_3_1; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_3_2 <= roundPart1_3_2; |
| end else if (_T_4419) begin |
| matrix_3_2 <= roundPart2_last_3_2; |
| end else begin |
| matrix_3_2 <= roundPart2_3_2; |
| end |
| end else if (_T_4415) begin |
| matrix_3_2 <= initOut_3_2; |
| end |
| if (_T_6) begin |
| if (_T_4421) begin |
| matrix_3_3 <= roundPart1_3_3; |
| end else if (_T_4419) begin |
| matrix_3_3 <= roundPart2_last_3_3; |
| end else begin |
| matrix_3_3 <= roundPart2_3_3; |
| end |
| end else if (_T_4415) begin |
| matrix_3_3 <= initOut_3_3; |
| end |
| end |
| endmodule |
| module AesDecrypt( |
| input clock, |
| input reset, |
| input [127:0] io_dataIn, |
| input [127:0] io_ivIn, |
| input io_dataValid, |
| input [7:0] io_keys_0_0_0, |
| input [7:0] io_keys_0_0_1, |
| input [7:0] io_keys_0_0_2, |
| input [7:0] io_keys_0_0_3, |
| input [7:0] io_keys_0_1_0, |
| input [7:0] io_keys_0_1_1, |
| input [7:0] io_keys_0_1_2, |
| input [7:0] io_keys_0_1_3, |
| input [7:0] io_keys_0_2_0, |
| input [7:0] io_keys_0_2_1, |
| input [7:0] io_keys_0_2_2, |
| input [7:0] io_keys_0_2_3, |
| input [7:0] io_keys_0_3_0, |
| input [7:0] io_keys_0_3_1, |
| input [7:0] io_keys_0_3_2, |
| input [7:0] io_keys_0_3_3, |
| input [7:0] io_keys_1_0_0, |
| input [7:0] io_keys_1_0_1, |
| input [7:0] io_keys_1_0_2, |
| input [7:0] io_keys_1_0_3, |
| input [7:0] io_keys_1_1_0, |
| input [7:0] io_keys_1_1_1, |
| input [7:0] io_keys_1_1_2, |
| input [7:0] io_keys_1_1_3, |
| input [7:0] io_keys_1_2_0, |
| input [7:0] io_keys_1_2_1, |
| input [7:0] io_keys_1_2_2, |
| input [7:0] io_keys_1_2_3, |
| input [7:0] io_keys_1_3_0, |
| input [7:0] io_keys_1_3_1, |
| input [7:0] io_keys_1_3_2, |
| input [7:0] io_keys_1_3_3, |
| input [7:0] io_keys_2_0_0, |
| input [7:0] io_keys_2_0_1, |
| input [7:0] io_keys_2_0_2, |
| input [7:0] io_keys_2_0_3, |
| input [7:0] io_keys_2_1_0, |
| input [7:0] io_keys_2_1_1, |
| input [7:0] io_keys_2_1_2, |
| input [7:0] io_keys_2_1_3, |
| input [7:0] io_keys_2_2_0, |
| input [7:0] io_keys_2_2_1, |
| input [7:0] io_keys_2_2_2, |
| input [7:0] io_keys_2_2_3, |
| input [7:0] io_keys_2_3_0, |
| input [7:0] io_keys_2_3_1, |
| input [7:0] io_keys_2_3_2, |
| input [7:0] io_keys_2_3_3, |
| input [7:0] io_keys_3_0_0, |
| input [7:0] io_keys_3_0_1, |
| input [7:0] io_keys_3_0_2, |
| input [7:0] io_keys_3_0_3, |
| input [7:0] io_keys_3_1_0, |
| input [7:0] io_keys_3_1_1, |
| input [7:0] io_keys_3_1_2, |
| input [7:0] io_keys_3_1_3, |
| input [7:0] io_keys_3_2_0, |
| input [7:0] io_keys_3_2_1, |
| input [7:0] io_keys_3_2_2, |
| input [7:0] io_keys_3_2_3, |
| input [7:0] io_keys_3_3_0, |
| input [7:0] io_keys_3_3_1, |
| input [7:0] io_keys_3_3_2, |
| input [7:0] io_keys_3_3_3, |
| input [7:0] io_keys_4_0_0, |
| input [7:0] io_keys_4_0_1, |
| input [7:0] io_keys_4_0_2, |
| input [7:0] io_keys_4_0_3, |
| input [7:0] io_keys_4_1_0, |
| input [7:0] io_keys_4_1_1, |
| input [7:0] io_keys_4_1_2, |
| input [7:0] io_keys_4_1_3, |
| input [7:0] io_keys_4_2_0, |
| input [7:0] io_keys_4_2_1, |
| input [7:0] io_keys_4_2_2, |
| input [7:0] io_keys_4_2_3, |
| input [7:0] io_keys_4_3_0, |
| input [7:0] io_keys_4_3_1, |
| input [7:0] io_keys_4_3_2, |
| input [7:0] io_keys_4_3_3, |
| input [7:0] io_keys_5_0_0, |
| input [7:0] io_keys_5_0_1, |
| input [7:0] io_keys_5_0_2, |
| input [7:0] io_keys_5_0_3, |
| input [7:0] io_keys_5_1_0, |
| input [7:0] io_keys_5_1_1, |
| input [7:0] io_keys_5_1_2, |
| input [7:0] io_keys_5_1_3, |
| input [7:0] io_keys_5_2_0, |
| input [7:0] io_keys_5_2_1, |
| input [7:0] io_keys_5_2_2, |
| input [7:0] io_keys_5_2_3, |
| input [7:0] io_keys_5_3_0, |
| input [7:0] io_keys_5_3_1, |
| input [7:0] io_keys_5_3_2, |
| input [7:0] io_keys_5_3_3, |
| input [7:0] io_keys_6_0_0, |
| input [7:0] io_keys_6_0_1, |
| input [7:0] io_keys_6_0_2, |
| input [7:0] io_keys_6_0_3, |
| input [7:0] io_keys_6_1_0, |
| input [7:0] io_keys_6_1_1, |
| input [7:0] io_keys_6_1_2, |
| input [7:0] io_keys_6_1_3, |
| input [7:0] io_keys_6_2_0, |
| input [7:0] io_keys_6_2_1, |
| input [7:0] io_keys_6_2_2, |
| input [7:0] io_keys_6_2_3, |
| input [7:0] io_keys_6_3_0, |
| input [7:0] io_keys_6_3_1, |
| input [7:0] io_keys_6_3_2, |
| input [7:0] io_keys_6_3_3, |
| input [7:0] io_keys_7_0_0, |
| input [7:0] io_keys_7_0_1, |
| input [7:0] io_keys_7_0_2, |
| input [7:0] io_keys_7_0_3, |
| input [7:0] io_keys_7_1_0, |
| input [7:0] io_keys_7_1_1, |
| input [7:0] io_keys_7_1_2, |
| input [7:0] io_keys_7_1_3, |
| input [7:0] io_keys_7_2_0, |
| input [7:0] io_keys_7_2_1, |
| input [7:0] io_keys_7_2_2, |
| input [7:0] io_keys_7_2_3, |
| input [7:0] io_keys_7_3_0, |
| input [7:0] io_keys_7_3_1, |
| input [7:0] io_keys_7_3_2, |
| input [7:0] io_keys_7_3_3, |
| input [7:0] io_keys_8_0_0, |
| input [7:0] io_keys_8_0_1, |
| input [7:0] io_keys_8_0_2, |
| input [7:0] io_keys_8_0_3, |
| input [7:0] io_keys_8_1_0, |
| input [7:0] io_keys_8_1_1, |
| input [7:0] io_keys_8_1_2, |
| input [7:0] io_keys_8_1_3, |
| input [7:0] io_keys_8_2_0, |
| input [7:0] io_keys_8_2_1, |
| input [7:0] io_keys_8_2_2, |
| input [7:0] io_keys_8_2_3, |
| input [7:0] io_keys_8_3_0, |
| input [7:0] io_keys_8_3_1, |
| input [7:0] io_keys_8_3_2, |
| input [7:0] io_keys_8_3_3, |
| input [7:0] io_keys_9_0_0, |
| input [7:0] io_keys_9_0_1, |
| input [7:0] io_keys_9_0_2, |
| input [7:0] io_keys_9_0_3, |
| input [7:0] io_keys_9_1_0, |
| input [7:0] io_keys_9_1_1, |
| input [7:0] io_keys_9_1_2, |
| input [7:0] io_keys_9_1_3, |
| input [7:0] io_keys_9_2_0, |
| input [7:0] io_keys_9_2_1, |
| input [7:0] io_keys_9_2_2, |
| input [7:0] io_keys_9_2_3, |
| input [7:0] io_keys_9_3_0, |
| input [7:0] io_keys_9_3_1, |
| input [7:0] io_keys_9_3_2, |
| input [7:0] io_keys_9_3_3, |
| input [7:0] io_keys_10_0_0, |
| input [7:0] io_keys_10_0_1, |
| input [7:0] io_keys_10_0_2, |
| input [7:0] io_keys_10_0_3, |
| input [7:0] io_keys_10_1_0, |
| input [7:0] io_keys_10_1_1, |
| input [7:0] io_keys_10_1_2, |
| input [7:0] io_keys_10_1_3, |
| input [7:0] io_keys_10_2_0, |
| input [7:0] io_keys_10_2_1, |
| input [7:0] io_keys_10_2_2, |
| input [7:0] io_keys_10_2_3, |
| input [7:0] io_keys_10_3_0, |
| input [7:0] io_keys_10_3_1, |
| input [7:0] io_keys_10_3_2, |
| input [7:0] io_keys_10_3_3, |
| input [7:0] io_keys_11_0_0, |
| input [7:0] io_keys_11_0_1, |
| input [7:0] io_keys_11_0_2, |
| input [7:0] io_keys_11_0_3, |
| input [7:0] io_keys_11_1_0, |
| input [7:0] io_keys_11_1_1, |
| input [7:0] io_keys_11_1_2, |
| input [7:0] io_keys_11_1_3, |
| input [7:0] io_keys_11_2_0, |
| input [7:0] io_keys_11_2_1, |
| input [7:0] io_keys_11_2_2, |
| input [7:0] io_keys_11_2_3, |
| input [7:0] io_keys_11_3_0, |
| input [7:0] io_keys_11_3_1, |
| input [7:0] io_keys_11_3_2, |
| input [7:0] io_keys_11_3_3, |
| input [7:0] io_keys_12_0_0, |
| input [7:0] io_keys_12_0_1, |
| input [7:0] io_keys_12_0_2, |
| input [7:0] io_keys_12_0_3, |
| input [7:0] io_keys_12_1_0, |
| input [7:0] io_keys_12_1_1, |
| input [7:0] io_keys_12_1_2, |
| input [7:0] io_keys_12_1_3, |
| input [7:0] io_keys_12_2_0, |
| input [7:0] io_keys_12_2_1, |
| input [7:0] io_keys_12_2_2, |
| input [7:0] io_keys_12_2_3, |
| input [7:0] io_keys_12_3_0, |
| input [7:0] io_keys_12_3_1, |
| input [7:0] io_keys_12_3_2, |
| input [7:0] io_keys_12_3_3, |
| input [7:0] io_keys_13_0_0, |
| input [7:0] io_keys_13_0_1, |
| input [7:0] io_keys_13_0_2, |
| input [7:0] io_keys_13_0_3, |
| input [7:0] io_keys_13_1_0, |
| input [7:0] io_keys_13_1_1, |
| input [7:0] io_keys_13_1_2, |
| input [7:0] io_keys_13_1_3, |
| input [7:0] io_keys_13_2_0, |
| input [7:0] io_keys_13_2_1, |
| input [7:0] io_keys_13_2_2, |
| input [7:0] io_keys_13_2_3, |
| input [7:0] io_keys_13_3_0, |
| input [7:0] io_keys_13_3_1, |
| input [7:0] io_keys_13_3_2, |
| input [7:0] io_keys_13_3_3, |
| input [7:0] io_keys_14_0_0, |
| input [7:0] io_keys_14_0_1, |
| input [7:0] io_keys_14_0_2, |
| input [7:0] io_keys_14_0_3, |
| input [7:0] io_keys_14_1_0, |
| input [7:0] io_keys_14_1_1, |
| input [7:0] io_keys_14_1_2, |
| input [7:0] io_keys_14_1_3, |
| input [7:0] io_keys_14_2_0, |
| input [7:0] io_keys_14_2_1, |
| input [7:0] io_keys_14_2_2, |
| input [7:0] io_keys_14_2_3, |
| input [7:0] io_keys_14_3_0, |
| input [7:0] io_keys_14_3_1, |
| input [7:0] io_keys_14_3_2, |
| input [7:0] io_keys_14_3_3, |
| input io_aes256, |
| output io_shiftCyc, |
| output io_shiftRev, |
| output io_shift, |
| output io_ready, |
| output [127:0] io_dataOut, |
| output [127:0] io_ivOut, |
| output io_outputValid |
| ); |
| `ifdef RANDOMIZE_REG_INIT |
| reg [31:0] _RAND_0; |
| reg [127:0] _RAND_1; |
| reg [31:0] _RAND_2; |
| reg [31:0] _RAND_3; |
| reg [31:0] _RAND_4; |
| reg [31:0] _RAND_5; |
| reg [31:0] _RAND_6; |
| reg [31:0] _RAND_7; |
| reg [31:0] _RAND_8; |
| reg [31:0] _RAND_9; |
| reg [31:0] _RAND_10; |
| reg [31:0] _RAND_11; |
| reg [31:0] _RAND_12; |
| reg [31:0] _RAND_13; |
| reg [31:0] _RAND_14; |
| reg [31:0] _RAND_15; |
| reg [31:0] _RAND_16; |
| reg [31:0] _RAND_17; |
| `endif // RANDOMIZE_REG_INIT |
| wire [7:0] MixColsModule_io_in_0_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_0_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_0_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_0_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_1_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_2_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_in_3_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_0_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_1_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_2_3; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_0; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_1; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_2; // @[AesComponents.scala 91:35] |
| wire [7:0] MixColsModule_io_out_3_3; // @[AesComponents.scala 91:35] |
| reg [5:0] state; // @[AesDecrypt.scala 53:24] |
| wire _T = state == 6'h0; // @[AesDecrypt.scala 55:25] |
| wire _T_1 = state == 6'h1e; // @[AesDecrypt.scala 55:44] |
| reg [127:0] ctSaved; // @[AesDecrypt.scala 62:22] |
| reg [7:0] matrix_0_0; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_0_1; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_0_2; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_0_3; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_1_0; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_1_1; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_1_2; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_1_3; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_2_0; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_2_1; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_2_2; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_2_3; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_3_0; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_3_1; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_3_2; // @[AesDecrypt.scala 65:21] |
| reg [7:0] matrix_3_3; // @[AesDecrypt.scala 65:21] |
| wire [63:0] _T_10 = {matrix_2_0,matrix_2_1,matrix_2_2,matrix_2_3,matrix_3_0,matrix_3_1,matrix_3_2,matrix_3_3}; // @[Cat.scala 29:58] |
| wire [63:0] _T_17 = {matrix_0_0,matrix_0_1,matrix_0_2,matrix_0_3,matrix_1_0,matrix_1_1,matrix_1_2,matrix_1_3}; // @[Cat.scala 29:58] |
| wire _T_41 = matrix_0_0[7] ^ matrix_0_0[4]; // @[AesSbox.scala 40:63] |
| wire _T_43 = matrix_0_0[6] ^ matrix_0_0[4]; // @[AesSbox.scala 42:65] |
| wire _T_44 = ~_T_43; // @[AesSbox.scala 42:51] |
| wire _T_46 = matrix_0_0[7] ^ matrix_0_0[6]; // @[AesSbox.scala 42:65] |
| wire _T_47 = ~_T_46; // @[AesSbox.scala 42:51] |
| wire _T_49 = matrix_0_0[4] ^ matrix_0_0[3]; // @[AesSbox.scala 40:63] |
| wire _T_51 = matrix_0_0[3] ^ matrix_0_0[0]; // @[AesSbox.scala 42:65] |
| wire _T_52 = ~_T_51; // @[AesSbox.scala 42:51] |
| wire _T_54 = matrix_0_0[1] ^ matrix_0_0[0]; // @[AesSbox.scala 40:63] |
| wire _T_56 = matrix_0_0[6] ^ _T_41; // @[AesSbox.scala 42:65] |
| wire _T_57 = ~_T_56; // @[AesSbox.scala 42:51] |
| wire _T_59 = _T_44 ^ _T_54; // @[AesSbox.scala 40:63] |
| wire _T_61 = matrix_0_0[0] ^ _T_49; // @[AesSbox.scala 42:65] |
| wire _T_62 = ~_T_61; // @[AesSbox.scala 42:51] |
| wire _T_64 = _T_47 ^ _T_52; // @[AesSbox.scala 40:63] |
| wire _T_66 = _T_47 ^ _T_54; // @[AesSbox.scala 40:63] |
| wire _T_68 = _T_49 ^ _T_54; // @[AesSbox.scala 40:63] |
| wire _T_70 = matrix_0_0[5] ^ _T_49; // @[AesSbox.scala 42:65] |
| wire _T_71 = ~_T_70; // @[AesSbox.scala 42:51] |
| wire _T_73 = matrix_0_0[6] ^ matrix_0_0[1]; // @[AesSbox.scala 40:63] |
| wire _T_75 = matrix_0_0[5] ^ _T_59; // @[AesSbox.scala 42:65] |
| wire _T_76 = ~_T_75; // @[AesSbox.scala 42:51] |
| wire _T_78 = _T_52 ^ _T_73; // @[AesSbox.scala 40:63] |
| wire _T_80 = matrix_0_0[3] ^ _T_57; // @[AesSbox.scala 40:63] |
| wire _T_82 = matrix_0_0[5] ^ matrix_0_0[2]; // @[AesSbox.scala 42:65] |
| wire _T_83 = ~_T_82; // @[AesSbox.scala 42:51] |
| wire _T_85 = matrix_0_0[2] ^ matrix_0_0[1]; // @[AesSbox.scala 42:65] |
| wire _T_86 = ~_T_85; // @[AesSbox.scala 42:51] |
| wire _T_88 = matrix_0_0[5] ^ matrix_0_0[3]; // @[AesSbox.scala 42:65] |
| wire _T_89 = ~_T_88; // @[AesSbox.scala 42:51] |
| wire _T_91 = matrix_0_0[7] ^ _T_83; // @[AesSbox.scala 40:63] |
| wire _T_93 = _T_44 ^ _T_83; // @[AesSbox.scala 40:63] |
| wire _T_95 = _T_73 ^ _T_89; // @[AesSbox.scala 40:63] |
| wire _T_97 = _T_49 ^ _T_86; // @[AesSbox.scala 40:63] |
| wire _T_99 = _T_64 ^ _T_97; // @[AesSbox.scala 40:63] |
| wire _T_101 = _T_64 ^ _T_86; // @[AesSbox.scala 40:63] |
| wire _T_103 = _T_68 ^ _T_95; // @[AesSbox.scala 40:63] |
| wire _T_105 = _T_66 & _T_93; // @[AesSbox.scala 41:63] |
| wire _T_107 = _T_41 & _T_57; // @[AesSbox.scala 41:63] |
| wire _T_109 = _T_101 ^ _T_105; // @[AesSbox.scala 40:63] |
| wire _T_111 = _T_59 & _T_91; // @[AesSbox.scala 41:63] |
| wire _T_113 = _T_111 ^ _T_105; // @[AesSbox.scala 40:63] |
| wire _T_115 = _T_68 & _T_95; // @[AesSbox.scala 41:63] |
| wire _T_117 = _T_44 & _T_62; // @[AesSbox.scala 41:63] |
| wire _T_119 = _T_103 ^ _T_115; // @[AesSbox.scala 40:63] |
| wire _T_121 = _T_78 & _T_76; // @[AesSbox.scala 41:63] |
| wire _T_123 = _T_121 ^ _T_115; // @[AesSbox.scala 40:63] |
| wire _T_125 = _T_49 & _T_99; // @[AesSbox.scala 41:63] |
| wire _T_127 = _T_80 & _T_97; // @[AesSbox.scala 41:63] |
| wire _T_129 = _T_127 ^ _T_125; // @[AesSbox.scala 40:63] |
| wire _T_131 = _T_47 & _T_64; // @[AesSbox.scala 41:63] |
| wire _T_133 = _T_131 ^ _T_125; // @[AesSbox.scala 40:63] |
| wire _T_135 = _T_109 ^ _T_107; // @[AesSbox.scala 40:63] |
| wire _T_137 = _T_113 ^ _T_52; // @[AesSbox.scala 40:63] |
| wire _T_139 = _T_119 ^ _T_117; // @[AesSbox.scala 40:63] |
| wire _T_141 = _T_123 ^ _T_133; // @[AesSbox.scala 40:63] |
| wire _T_143 = _T_135 ^ _T_129; // @[AesSbox.scala 40:63] |
| wire _T_145 = _T_137 ^ _T_133; // @[AesSbox.scala 40:63] |
| wire _T_147 = _T_139 ^ _T_129; // @[AesSbox.scala 40:63] |
| wire _T_149 = _T_141 ^ _T_71; // @[AesSbox.scala 40:63] |
| wire _T_151 = _T_147 ^ _T_149; // @[AesSbox.scala 40:63] |
| wire _T_153 = _T_147 & _T_143; // @[AesSbox.scala 41:63] |
| wire _T_155 = _T_145 ^ _T_153; // @[AesSbox.scala 40:63] |
| wire _T_157 = _T_143 ^ _T_145; // @[AesSbox.scala 40:63] |
| wire _T_159 = _T_149 ^ _T_153; // @[AesSbox.scala 40:63] |
| wire _T_161 = _T_159 & _T_157; // @[AesSbox.scala 41:63] |
| wire _T_163 = _T_155 & _T_151; // @[AesSbox.scala 41:63] |
| wire _T_165 = _T_143 & _T_149; // @[AesSbox.scala 41:63] |
| wire _T_167 = _T_157 & _T_165; // @[AesSbox.scala 41:63] |
| wire _T_169 = _T_157 ^ _T_153; // @[AesSbox.scala 40:63] |
| wire _T_171 = _T_145 & _T_147; // @[AesSbox.scala 41:63] |
| wire _T_173 = _T_151 & _T_171; // @[AesSbox.scala 41:63] |
| wire _T_175 = _T_151 ^ _T_153; // @[AesSbox.scala 40:63] |
| wire _T_177 = _T_145 ^ _T_161; // @[AesSbox.scala 40:63] |
| wire _T_179 = _T_167 ^ _T_169; // @[AesSbox.scala 40:63] |
| wire _T_181 = _T_149 ^ _T_163; // @[AesSbox.scala 40:63] |
| wire _T_183 = _T_173 ^ _T_175; // @[AesSbox.scala 40:63] |
| wire _T_185 = _T_179 ^ _T_183; // @[AesSbox.scala 40:63] |
| wire _T_187 = _T_177 ^ _T_181; // @[AesSbox.scala 40:63] |
| wire _T_189 = _T_177 ^ _T_179; // @[AesSbox.scala 40:63] |
| wire _T_191 = _T_181 ^ _T_183; // @[AesSbox.scala 40:63] |
| wire _T_193 = _T_187 ^ _T_185; // @[AesSbox.scala 40:63] |
| wire _T_195 = _T_191 & _T_93; // @[AesSbox.scala 41:63] |
| wire _T_197 = _T_183 & _T_57; // @[AesSbox.scala 41:63] |
| wire _T_199 = _T_181 & _T_91; // @[AesSbox.scala 41:63] |
| wire _T_201 = _T_189 & _T_95; // @[AesSbox.scala 41:63] |
| wire _T_203 = _T_179 & _T_62; // @[AesSbox.scala 41:63] |
| wire _T_205 = _T_177 & _T_76; // @[AesSbox.scala 41:63] |
| wire _T_207 = _T_187 & _T_99; // @[AesSbox.scala 41:63] |
| wire _T_209 = _T_193 & _T_97; // @[AesSbox.scala 41:63] |
| wire _T_211 = _T_185 & _T_64; // @[AesSbox.scala 41:63] |
| wire _T_213 = _T_191 & _T_66; // @[AesSbox.scala 41:63] |
| wire _T_215 = _T_183 & _T_41; // @[AesSbox.scala 41:63] |
| wire _T_217 = _T_181 & _T_59; // @[AesSbox.scala 41:63] |
| wire _T_219 = _T_189 & _T_68; // @[AesSbox.scala 41:63] |
| wire _T_221 = _T_179 & _T_44; // @[AesSbox.scala 41:63] |
| wire _T_223 = _T_177 & _T_78; // @[AesSbox.scala 41:63] |
| wire _T_225 = _T_187 & _T_49; // @[AesSbox.scala 41:63] |
| wire _T_227 = _T_193 & _T_80; // @[AesSbox.scala 41:63] |
| wire _T_229 = _T_185 & _T_47; // @[AesSbox.scala 41:63] |
| wire _T_231 = _T_207 ^ _T_225; // @[AesSbox.scala 40:63] |
| wire _T_233 = _T_219 ^ _T_221; // @[AesSbox.scala 40:63] |
| wire _T_235 = _T_211 ^ _T_227; // @[AesSbox.scala 40:63] |
| wire _T_237 = _T_197 ^ _T_203; // @[AesSbox.scala 40:63] |
| wire _T_239 = _T_199 ^ _T_215; // @[AesSbox.scala 40:63] |
| wire _T_241 = _T_195 ^ _T_205; // @[AesSbox.scala 40:63] |
| wire _T_243 = _T_201 ^ _T_223; // @[AesSbox.scala 40:63] |
| wire _T_245 = _T_231 ^ _T_233; // @[AesSbox.scala 40:63] |
| wire _T_247 = _T_203 ^ _T_209; // @[AesSbox.scala 40:63] |
| wire _T_249 = _T_213 ^ _T_229; // @[AesSbox.scala 40:63] |
| wire _T_251 = _T_217 ^ _T_239; // @[AesSbox.scala 40:63] |
| wire _T_253 = _T_231 ^ _T_237; // @[AesSbox.scala 40:63] |
| wire _T_255 = _T_195 ^ _T_199; // @[AesSbox.scala 40:63] |
| wire _T_257 = _T_201 ^ _T_205; // @[AesSbox.scala 40:63] |
| wire _T_259 = _T_201 ^ _T_227; // @[AesSbox.scala 40:63] |
| wire _T_261 = _T_211 ^ _T_221; // @[AesSbox.scala 40:63] |
| wire _T_263 = _T_217 ^ _T_225; // @[AesSbox.scala 40:63] |
| wire _T_265 = _T_219 ^ _T_235; // @[AesSbox.scala 40:63] |
| wire _T_267 = _T_229 ^ _T_241; // @[AesSbox.scala 40:63] |
| wire _T_269 = _T_235 ^ _T_237; // @[AesSbox.scala 40:63] |
| wire _T_271 = _T_239 ^ _T_243; // @[AesSbox.scala 40:63] |
| wire _T_273 = _T_235 ^ _T_245; // @[AesSbox.scala 40:63] |
| wire _T_275 = _T_245 ^ _T_247; // @[AesSbox.scala 40:63] |
| wire _T_277 = _T_241 ^ _T_245; // @[AesSbox.scala 40:63] |
| wire _T_279 = _T_243 ^ _T_251; // @[AesSbox.scala 40:63] |
| wire _T_281 = _T_249 ^ _T_253; // @[AesSbox.scala 40:63] |
| wire _T_283 = _T_251 ^ _T_267; // @[AesSbox.scala 40:63] |
| wire _T_285 = _T_253 ^ _T_279; // @[AesSbox.scala 40:63] |
| wire _T_287 = _T_261 ^ _T_271; // @[AesSbox.scala 40:63] |
| wire _T_288 = _T_257 ^ _T_273; // @[AesSbox.scala 40:63] |
| wire _T_289 = _T_281 ^ _T_287; // @[AesSbox.scala 40:63] |
| wire _T_290 = _T_265 ^ _T_285; // @[AesSbox.scala 40:63] |
| wire _T_291 = _T_255 ^ _T_273; // @[AesSbox.scala 40:63] |
| wire _T_292 = _T_275 ^ _T_283; // @[AesSbox.scala 40:63] |
| wire _T_293 = _T_269 ^ _T_277; // @[AesSbox.scala 40:63] |
| wire _T_294 = _T_259 ^ _T_275; // @[AesSbox.scala 40:63] |
| wire _T_295 = _T_249 ^ _T_263; // @[AesSbox.scala 40:63] |
| wire [7:0] roundPart1_0_0 = {_T_288,_T_289,_T_290,_T_291,_T_292,_T_293,_T_294,_T_295}; // @[Cat.scala 29:58] |
| wire _T_320 = matrix_3_1[7] ^ matrix_3_1[4]; // @[AesSbox.scala 40:63] |
| wire _T_322 = matrix_3_1[6] ^ matrix_3_1[4]; // @[AesSbox.scala 42:65] |
| wire _T_323 = ~_T_322; // @[AesSbox.scala 42:51] |
| wire _T_325 = matrix_3_1[7] ^ matrix_3_1[6]; // @[AesSbox.scala 42:65] |
| wire _T_326 = ~_T_325; // @[AesSbox.scala 42:51] |
| wire _T_328 = matrix_3_1[4] ^ matrix_3_1[3]; // @[AesSbox.scala 40:63] |
| wire _T_330 = matrix_3_1[3] ^ matrix_3_1[0]; // @[AesSbox.scala 42:65] |
| wire _T_331 = ~_T_330; // @[AesSbox.scala 42:51] |
| wire _T_333 = matrix_3_1[1] ^ matrix_3_1[0]; // @[AesSbox.scala 40:63] |
| wire _T_335 = matrix_3_1[6] ^ _T_320; // @[AesSbox.scala 42:65] |
| wire _T_336 = ~_T_335; // @[AesSbox.scala 42:51] |
| wire _T_338 = _T_323 ^ _T_333; // @[AesSbox.scala 40:63] |
| wire _T_340 = matrix_3_1[0] ^ _T_328; // @[AesSbox.scala 42:65] |
| wire _T_341 = ~_T_340; // @[AesSbox.scala 42:51] |
| wire _T_343 = _T_326 ^ _T_331; // @[AesSbox.scala 40:63] |
| wire _T_345 = _T_326 ^ _T_333; // @[AesSbox.scala 40:63] |
| wire _T_347 = _T_328 ^ _T_333; // @[AesSbox.scala 40:63] |
| wire _T_349 = matrix_3_1[5] ^ _T_328; // @[AesSbox.scala 42:65] |
| wire _T_350 = ~_T_349; // @[AesSbox.scala 42:51] |
| wire _T_352 = matrix_3_1[6] ^ matrix_3_1[1]; // @[AesSbox.scala 40:63] |
| wire _T_354 = matrix_3_1[5] ^ _T_338; // @[AesSbox.scala 42:65] |
| wire _T_355 = ~_T_354; // @[AesSbox.scala 42:51] |
| wire _T_357 = _T_331 ^ _T_352; // @[AesSbox.scala 40:63] |
| wire _T_359 = matrix_3_1[3] ^ _T_336; // @[AesSbox.scala 40:63] |
| wire _T_361 = matrix_3_1[5] ^ matrix_3_1[2]; // @[AesSbox.scala 42:65] |
| wire _T_362 = ~_T_361; // @[AesSbox.scala 42:51] |
| wire _T_364 = matrix_3_1[2] ^ matrix_3_1[1]; // @[AesSbox.scala 42:65] |
| wire _T_365 = ~_T_364; // @[AesSbox.scala 42:51] |
| wire _T_367 = matrix_3_1[5] ^ matrix_3_1[3]; // @[AesSbox.scala 42:65] |
| wire _T_368 = ~_T_367; // @[AesSbox.scala 42:51] |
| wire _T_370 = matrix_3_1[7] ^ _T_362; // @[AesSbox.scala 40:63] |
| wire _T_372 = _T_323 ^ _T_362; // @[AesSbox.scala 40:63] |
| wire _T_374 = _T_352 ^ _T_368; // @[AesSbox.scala 40:63] |
| wire _T_376 = _T_328 ^ _T_365; // @[AesSbox.scala 40:63] |
| wire _T_378 = _T_343 ^ _T_376; // @[AesSbox.scala 40:63] |
| wire _T_380 = _T_343 ^ _T_365; // @[AesSbox.scala 40:63] |
| wire _T_382 = _T_347 ^ _T_374; // @[AesSbox.scala 40:63] |
| wire _T_384 = _T_345 & _T_372; // @[AesSbox.scala 41:63] |
| wire _T_386 = _T_320 & _T_336; // @[AesSbox.scala 41:63] |
| wire _T_388 = _T_380 ^ _T_384; // @[AesSbox.scala 40:63] |
| wire _T_390 = _T_338 & _T_370; // @[AesSbox.scala 41:63] |
| wire _T_392 = _T_390 ^ _T_384; // @[AesSbox.scala 40:63] |
| wire _T_394 = _T_347 & _T_374; // @[AesSbox.scala 41:63] |
| wire _T_396 = _T_323 & _T_341; // @[AesSbox.scala 41:63] |
| wire _T_398 = _T_382 ^ _T_394; // @[AesSbox.scala 40:63] |
| wire _T_400 = _T_357 & _T_355; // @[AesSbox.scala 41:63] |
| wire _T_402 = _T_400 ^ _T_394; // @[AesSbox.scala 40:63] |
| wire _T_404 = _T_328 & _T_378; // @[AesSbox.scala 41:63] |
| wire _T_406 = _T_359 & _T_376; // @[AesSbox.scala 41:63] |
| wire _T_408 = _T_406 ^ _T_404; // @[AesSbox.scala 40:63] |
| wire _T_410 = _T_326 & _T_343; // @[AesSbox.scala 41:63] |
| wire _T_412 = _T_410 ^ _T_404; // @[AesSbox.scala 40:63] |
| wire _T_414 = _T_388 ^ _T_386; // @[AesSbox.scala 40:63] |
| wire _T_416 = _T_392 ^ _T_331; // @[AesSbox.scala 40:63] |
| wire _T_418 = _T_398 ^ _T_396; // @[AesSbox.scala 40:63] |
| wire _T_420 = _T_402 ^ _T_412; // @[AesSbox.scala 40:63] |
| wire _T_422 = _T_414 ^ _T_408; // @[AesSbox.scala 40:63] |
| wire _T_424 = _T_416 ^ _T_412; // @[AesSbox.scala 40:63] |
| wire _T_426 = _T_418 ^ _T_408; // @[AesSbox.scala 40:63] |
| wire _T_428 = _T_420 ^ _T_350; // @[AesSbox.scala 40:63] |
| wire _T_430 = _T_426 ^ _T_428; // @[AesSbox.scala 40:63] |
| wire _T_432 = _T_426 & _T_422; // @[AesSbox.scala 41:63] |
| wire _T_434 = _T_424 ^ _T_432; // @[AesSbox.scala 40:63] |
| wire _T_436 = _T_422 ^ _T_424; // @[AesSbox.scala 40:63] |
| wire _T_438 = _T_428 ^ _T_432; // @[AesSbox.scala 40:63] |
| wire _T_440 = _T_438 & _T_436; // @[AesSbox.scala 41:63] |
| wire _T_442 = _T_434 & _T_430; // @[AesSbox.scala 41:63] |
| wire _T_444 = _T_422 & _T_428; // @[AesSbox.scala 41:63] |
| wire _T_446 = _T_436 & _T_444; // @[AesSbox.scala 41:63] |
| wire _T_448 = _T_436 ^ _T_432; // @[AesSbox.scala 40:63] |
| wire _T_450 = _T_424 & _T_426; // @[AesSbox.scala 41:63] |
| wire _T_452 = _T_430 & _T_450; // @[AesSbox.scala 41:63] |
| wire _T_454 = _T_430 ^ _T_432; // @[AesSbox.scala 40:63] |
| wire _T_456 = _T_424 ^ _T_440; // @[AesSbox.scala 40:63] |
| wire _T_458 = _T_446 ^ _T_448; // @[AesSbox.scala 40:63] |
| wire _T_460 = _T_428 ^ _T_442; // @[AesSbox.scala 40:63] |
| wire _T_462 = _T_452 ^ _T_454; // @[AesSbox.scala 40:63] |
| wire _T_464 = _T_458 ^ _T_462; // @[AesSbox.scala 40:63] |
| wire _T_466 = _T_456 ^ _T_460; // @[AesSbox.scala 40:63] |
| wire _T_468 = _T_456 ^ _T_458; // @[AesSbox.scala 40:63] |
| wire _T_470 = _T_460 ^ _T_462; // @[AesSbox.scala 40:63] |
| wire _T_472 = _T_466 ^ _T_464; // @[AesSbox.scala 40:63] |
| wire _T_474 = _T_470 & _T_372; // @[AesSbox.scala 41:63] |
| wire _T_476 = _T_462 & _T_336; // @[AesSbox.scala 41:63] |
| wire _T_478 = _T_460 & _T_370; // @[AesSbox.scala 41:63] |
| wire _T_480 = _T_468 & _T_374; // @[AesSbox.scala 41:63] |
| wire _T_482 = _T_458 & _T_341; // @[AesSbox.scala 41:63] |
| wire _T_484 = _T_456 & _T_355; // @[AesSbox.scala 41:63] |
| wire _T_486 = _T_466 & _T_378; // @[AesSbox.scala 41:63] |
| wire _T_488 = _T_472 & _T_376; // @[AesSbox.scala 41:63] |
| wire _T_490 = _T_464 & _T_343; // @[AesSbox.scala 41:63] |
| wire _T_492 = _T_470 & _T_345; // @[AesSbox.scala 41:63] |
| wire _T_494 = _T_462 & _T_320; // @[AesSbox.scala 41:63] |
| wire _T_496 = _T_460 & _T_338; // @[AesSbox.scala 41:63] |
| wire _T_498 = _T_468 & _T_347; // @[AesSbox.scala 41:63] |
| wire _T_500 = _T_458 & _T_323; // @[AesSbox.scala 41:63] |
| wire _T_502 = _T_456 & _T_357; // @[AesSbox.scala 41:63] |
| wire _T_504 = _T_466 & _T_328; // @[AesSbox.scala 41:63] |
| wire _T_506 = _T_472 & _T_359; // @[AesSbox.scala 41:63] |
| wire _T_508 = _T_464 & _T_326; // @[AesSbox.scala 41:63] |
| wire _T_510 = _T_486 ^ _T_504; // @[AesSbox.scala 40:63] |
| wire _T_512 = _T_498 ^ _T_500; // @[AesSbox.scala 40:63] |
| wire _T_514 = _T_490 ^ _T_506; // @[AesSbox.scala 40:63] |
| wire _T_516 = _T_476 ^ _T_482; // @[AesSbox.scala 40:63] |
| wire _T_518 = _T_478 ^ _T_494; // @[AesSbox.scala 40:63] |
| wire _T_520 = _T_474 ^ _T_484; // @[AesSbox.scala 40:63] |
| wire _T_522 = _T_480 ^ _T_502; // @[AesSbox.scala 40:63] |
| wire _T_524 = _T_510 ^ _T_512; // @[AesSbox.scala 40:63] |
| wire _T_526 = _T_482 ^ _T_488; // @[AesSbox.scala 40:63] |
| wire _T_528 = _T_492 ^ _T_508; // @[AesSbox.scala 40:63] |
| wire _T_530 = _T_496 ^ _T_518; // @[AesSbox.scala 40:63] |
| wire _T_532 = _T_510 ^ _T_516; // @[AesSbox.scala 40:63] |
| wire _T_534 = _T_474 ^ _T_478; // @[AesSbox.scala 40:63] |
| wire _T_536 = _T_480 ^ _T_484; // @[AesSbox.scala 40:63] |
| wire _T_538 = _T_480 ^ _T_506; // @[AesSbox.scala 40:63] |
| wire _T_540 = _T_490 ^ _T_500; // @[AesSbox.scala 40:63] |
| wire _T_542 = _T_496 ^ _T_504; // @[AesSbox.scala 40:63] |
| wire _T_544 = _T_498 ^ _T_514; // @[AesSbox.scala 40:63] |
| wire _T_546 = _T_508 ^ _T_520; // @[AesSbox.scala 40:63] |
| wire _T_548 = _T_514 ^ _T_516; // @[AesSbox.scala 40:63] |
| wire _T_550 = _T_518 ^ _T_522; // @[AesSbox.scala 40:63] |
| wire _T_552 = _T_514 ^ _T_524; // @[AesSbox.scala 40:63] |
| wire _T_554 = _T_524 ^ _T_526; // @[AesSbox.scala 40:63] |
| wire _T_556 = _T_520 ^ _T_524; // @[AesSbox.scala 40:63] |
| wire _T_558 = _T_522 ^ _T_530; // @[AesSbox.scala 40:63] |
| wire _T_560 = _T_528 ^ _T_532; // @[AesSbox.scala 40:63] |
| wire _T_562 = _T_530 ^ _T_546; // @[AesSbox.scala 40:63] |
| wire _T_564 = _T_532 ^ _T_558; // @[AesSbox.scala 40:63] |
| wire _T_566 = _T_540 ^ _T_550; // @[AesSbox.scala 40:63] |
| wire _T_567 = _T_536 ^ _T_552; // @[AesSbox.scala 40:63] |
| wire _T_568 = _T_560 ^ _T_566; // @[AesSbox.scala 40:63] |
| wire _T_569 = _T_544 ^ _T_564; // @[AesSbox.scala 40:63] |
| wire _T_570 = _T_534 ^ _T_552; // @[AesSbox.scala 40:63] |
| wire _T_571 = _T_554 ^ _T_562; // @[AesSbox.scala 40:63] |
| wire _T_572 = _T_548 ^ _T_556; // @[AesSbox.scala 40:63] |
| wire _T_573 = _T_538 ^ _T_554; // @[AesSbox.scala 40:63] |
| wire _T_574 = _T_528 ^ _T_542; // @[AesSbox.scala 40:63] |
| wire [7:0] roundPart1_0_1 = {_T_567,_T_568,_T_569,_T_570,_T_571,_T_572,_T_573,_T_574}; // @[Cat.scala 29:58] |
| wire _T_599 = matrix_2_2[7] ^ matrix_2_2[4]; // @[AesSbox.scala 40:63] |
| wire _T_601 = matrix_2_2[6] ^ matrix_2_2[4]; // @[AesSbox.scala 42:65] |
| wire _T_602 = ~_T_601; // @[AesSbox.scala 42:51] |
| wire _T_604 = matrix_2_2[7] ^ matrix_2_2[6]; // @[AesSbox.scala 42:65] |
| wire _T_605 = ~_T_604; // @[AesSbox.scala 42:51] |
| wire _T_607 = matrix_2_2[4] ^ matrix_2_2[3]; // @[AesSbox.scala 40:63] |
| wire _T_609 = matrix_2_2[3] ^ matrix_2_2[0]; // @[AesSbox.scala 42:65] |
| wire _T_610 = ~_T_609; // @[AesSbox.scala 42:51] |
| wire _T_612 = matrix_2_2[1] ^ matrix_2_2[0]; // @[AesSbox.scala 40:63] |
| wire _T_614 = matrix_2_2[6] ^ _T_599; // @[AesSbox.scala 42:65] |
| wire _T_615 = ~_T_614; // @[AesSbox.scala 42:51] |
| wire _T_617 = _T_602 ^ _T_612; // @[AesSbox.scala 40:63] |
| wire _T_619 = matrix_2_2[0] ^ _T_607; // @[AesSbox.scala 42:65] |
| wire _T_620 = ~_T_619; // @[AesSbox.scala 42:51] |
| wire _T_622 = _T_605 ^ _T_610; // @[AesSbox.scala 40:63] |
| wire _T_624 = _T_605 ^ _T_612; // @[AesSbox.scala 40:63] |
| wire _T_626 = _T_607 ^ _T_612; // @[AesSbox.scala 40:63] |
| wire _T_628 = matrix_2_2[5] ^ _T_607; // @[AesSbox.scala 42:65] |
| wire _T_629 = ~_T_628; // @[AesSbox.scala 42:51] |
| wire _T_631 = matrix_2_2[6] ^ matrix_2_2[1]; // @[AesSbox.scala 40:63] |
| wire _T_633 = matrix_2_2[5] ^ _T_617; // @[AesSbox.scala 42:65] |
| wire _T_634 = ~_T_633; // @[AesSbox.scala 42:51] |
| wire _T_636 = _T_610 ^ _T_631; // @[AesSbox.scala 40:63] |
| wire _T_638 = matrix_2_2[3] ^ _T_615; // @[AesSbox.scala 40:63] |
| wire _T_640 = matrix_2_2[5] ^ matrix_2_2[2]; // @[AesSbox.scala 42:65] |
| wire _T_641 = ~_T_640; // @[AesSbox.scala 42:51] |
| wire _T_643 = matrix_2_2[2] ^ matrix_2_2[1]; // @[AesSbox.scala 42:65] |
| wire _T_644 = ~_T_643; // @[AesSbox.scala 42:51] |
| wire _T_646 = matrix_2_2[5] ^ matrix_2_2[3]; // @[AesSbox.scala 42:65] |
| wire _T_647 = ~_T_646; // @[AesSbox.scala 42:51] |
| wire _T_649 = matrix_2_2[7] ^ _T_641; // @[AesSbox.scala 40:63] |
| wire _T_651 = _T_602 ^ _T_641; // @[AesSbox.scala 40:63] |
| wire _T_653 = _T_631 ^ _T_647; // @[AesSbox.scala 40:63] |
| wire _T_655 = _T_607 ^ _T_644; // @[AesSbox.scala 40:63] |
| wire _T_657 = _T_622 ^ _T_655; // @[AesSbox.scala 40:63] |
| wire _T_659 = _T_622 ^ _T_644; // @[AesSbox.scala 40:63] |
| wire _T_661 = _T_626 ^ _T_653; // @[AesSbox.scala 40:63] |
| wire _T_663 = _T_624 & _T_651; // @[AesSbox.scala 41:63] |
| wire _T_665 = _T_599 & _T_615; // @[AesSbox.scala 41:63] |
| wire _T_667 = _T_659 ^ _T_663; // @[AesSbox.scala 40:63] |
| wire _T_669 = _T_617 & _T_649; // @[AesSbox.scala 41:63] |
| wire _T_671 = _T_669 ^ _T_663; // @[AesSbox.scala 40:63] |
| wire _T_673 = _T_626 & _T_653; // @[AesSbox.scala 41:63] |
| wire _T_675 = _T_602 & _T_620; // @[AesSbox.scala 41:63] |
| wire _T_677 = _T_661 ^ _T_673; // @[AesSbox.scala 40:63] |
| wire _T_679 = _T_636 & _T_634; // @[AesSbox.scala 41:63] |
| wire _T_681 = _T_679 ^ _T_673; // @[AesSbox.scala 40:63] |
| wire _T_683 = _T_607 & _T_657; // @[AesSbox.scala 41:63] |
| wire _T_685 = _T_638 & _T_655; // @[AesSbox.scala 41:63] |
| wire _T_687 = _T_685 ^ _T_683; // @[AesSbox.scala 40:63] |
| wire _T_689 = _T_605 & _T_622; // @[AesSbox.scala 41:63] |
| wire _T_691 = _T_689 ^ _T_683; // @[AesSbox.scala 40:63] |
| wire _T_693 = _T_667 ^ _T_665; // @[AesSbox.scala 40:63] |
| wire _T_695 = _T_671 ^ _T_610; // @[AesSbox.scala 40:63] |
| wire _T_697 = _T_677 ^ _T_675; // @[AesSbox.scala 40:63] |
| wire _T_699 = _T_681 ^ _T_691; // @[AesSbox.scala 40:63] |
| wire _T_701 = _T_693 ^ _T_687; // @[AesSbox.scala 40:63] |
| wire _T_703 = _T_695 ^ _T_691; // @[AesSbox.scala 40:63] |
| wire _T_705 = _T_697 ^ _T_687; // @[AesSbox.scala 40:63] |
| wire _T_707 = _T_699 ^ _T_629; // @[AesSbox.scala 40:63] |
| wire _T_709 = _T_705 ^ _T_707; // @[AesSbox.scala 40:63] |
| wire _T_711 = _T_705 & _T_701; // @[AesSbox.scala 41:63] |
| wire _T_713 = _T_703 ^ _T_711; // @[AesSbox.scala 40:63] |
| wire _T_715 = _T_701 ^ _T_703; // @[AesSbox.scala 40:63] |
| wire _T_717 = _T_707 ^ _T_711; // @[AesSbox.scala 40:63] |
| wire _T_719 = _T_717 & _T_715; // @[AesSbox.scala 41:63] |
| wire _T_721 = _T_713 & _T_709; // @[AesSbox.scala 41:63] |
| wire _T_723 = _T_701 & _T_707; // @[AesSbox.scala 41:63] |
| wire _T_725 = _T_715 & _T_723; // @[AesSbox.scala 41:63] |
| wire _T_727 = _T_715 ^ _T_711; // @[AesSbox.scala 40:63] |
| wire _T_729 = _T_703 & _T_705; // @[AesSbox.scala 41:63] |
| wire _T_731 = _T_709 & _T_729; // @[AesSbox.scala 41:63] |
| wire _T_733 = _T_709 ^ _T_711; // @[AesSbox.scala 40:63] |
| wire _T_735 = _T_703 ^ _T_719; // @[AesSbox.scala 40:63] |
| wire _T_737 = _T_725 ^ _T_727; // @[AesSbox.scala 40:63] |
| wire _T_739 = _T_707 ^ _T_721; // @[AesSbox.scala 40:63] |
| wire _T_741 = _T_731 ^ _T_733; // @[AesSbox.scala 40:63] |
| wire _T_743 = _T_737 ^ _T_741; // @[AesSbox.scala 40:63] |
| wire _T_745 = _T_735 ^ _T_739; // @[AesSbox.scala 40:63] |
| wire _T_747 = _T_735 ^ _T_737; // @[AesSbox.scala 40:63] |
| wire _T_749 = _T_739 ^ _T_741; // @[AesSbox.scala 40:63] |
| wire _T_751 = _T_745 ^ _T_743; // @[AesSbox.scala 40:63] |
| wire _T_753 = _T_749 & _T_651; // @[AesSbox.scala 41:63] |
| wire _T_755 = _T_741 & _T_615; // @[AesSbox.scala 41:63] |
| wire _T_757 = _T_739 & _T_649; // @[AesSbox.scala 41:63] |
| wire _T_759 = _T_747 & _T_653; // @[AesSbox.scala 41:63] |
| wire _T_761 = _T_737 & _T_620; // @[AesSbox.scala 41:63] |
| wire _T_763 = _T_735 & _T_634; // @[AesSbox.scala 41:63] |
| wire _T_765 = _T_745 & _T_657; // @[AesSbox.scala 41:63] |
| wire _T_767 = _T_751 & _T_655; // @[AesSbox.scala 41:63] |
| wire _T_769 = _T_743 & _T_622; // @[AesSbox.scala 41:63] |
| wire _T_771 = _T_749 & _T_624; // @[AesSbox.scala 41:63] |
| wire _T_773 = _T_741 & _T_599; // @[AesSbox.scala 41:63] |
| wire _T_775 = _T_739 & _T_617; // @[AesSbox.scala 41:63] |
| wire _T_777 = _T_747 & _T_626; // @[AesSbox.scala 41:63] |
| wire _T_779 = _T_737 & _T_602; // @[AesSbox.scala 41:63] |
| wire _T_781 = _T_735 & _T_636; // @[AesSbox.scala 41:63] |
| wire _T_783 = _T_745 & _T_607; // @[AesSbox.scala 41:63] |
| wire _T_785 = _T_751 & _T_638; // @[AesSbox.scala 41:63] |
| wire _T_787 = _T_743 & _T_605; // @[AesSbox.scala 41:63] |
| wire _T_789 = _T_765 ^ _T_783; // @[AesSbox.scala 40:63] |
| wire _T_791 = _T_777 ^ _T_779; // @[AesSbox.scala 40:63] |
| wire _T_793 = _T_769 ^ _T_785; // @[AesSbox.scala 40:63] |
| wire _T_795 = _T_755 ^ _T_761; // @[AesSbox.scala 40:63] |
| wire _T_797 = _T_757 ^ _T_773; // @[AesSbox.scala 40:63] |
| wire _T_799 = _T_753 ^ _T_763; // @[AesSbox.scala 40:63] |
| wire _T_801 = _T_759 ^ _T_781; // @[AesSbox.scala 40:63] |
| wire _T_803 = _T_789 ^ _T_791; // @[AesSbox.scala 40:63] |
| wire _T_805 = _T_761 ^ _T_767; // @[AesSbox.scala 40:63] |
| wire _T_807 = _T_771 ^ _T_787; // @[AesSbox.scala 40:63] |
| wire _T_809 = _T_775 ^ _T_797; // @[AesSbox.scala 40:63] |
| wire _T_811 = _T_789 ^ _T_795; // @[AesSbox.scala 40:63] |
| wire _T_813 = _T_753 ^ _T_757; // @[AesSbox.scala 40:63] |
| wire _T_815 = _T_759 ^ _T_763; // @[AesSbox.scala 40:63] |
| wire _T_817 = _T_759 ^ _T_785; // @[AesSbox.scala 40:63] |
| wire _T_819 = _T_769 ^ _T_779; // @[AesSbox.scala 40:63] |
| wire _T_821 = _T_775 ^ _T_783; // @[AesSbox.scala 40:63] |
| wire _T_823 = _T_777 ^ _T_793; // @[AesSbox.scala 40:63] |
| wire _T_825 = _T_787 ^ _T_799; // @[AesSbox.scala 40:63] |
| wire _T_827 = _T_793 ^ _T_795; // @[AesSbox.scala 40:63] |
| wire _T_829 = _T_797 ^ _T_801; // @[AesSbox.scala 40:63] |
| wire _T_831 = _T_793 ^ _T_803; // @[AesSbox.scala 40:63] |
| wire _T_833 = _T_803 ^ _T_805; // @[AesSbox.scala 40:63] |
| wire _T_835 = _T_799 ^ _T_803; // @[AesSbox.scala 40:63] |
| wire _T_837 = _T_801 ^ _T_809; // @[AesSbox.scala 40:63] |
| |