aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoachim StroĢˆmbergson <joachim@secworks.se>2018-05-21 17:50:37 +0200
committerJoachim StroĢˆmbergson <joachim@secworks.se>2018-05-21 17:50:37 +0200
commit1da09286cf7657fc23366c596ea594e4b6cc8f96 (patch)
treef72f92583f7b612314332f13ce4cfd3d8899a8d1
parentb25a4d4dcc274d791cf7997eb88fcedc395c8a6f (diff)
Removed the sbox word mux. Removed ports for sbox access in the encipher datapath since it now has its own sboxes.
-rw-r--r--src/rtl/aes_core.v26
-rw-r--r--src/rtl/aes_encipher_block.v3
-rw-r--r--src/tb/tb_aes_encipher_block.v14
3 files changed, 1 insertions, 42 deletions
diff --git a/src/rtl/aes_core.v b/src/rtl/aes_core.v
index 5196a1f..7c5720d 100644
--- a/src/rtl/aes_core.v
+++ b/src/rtl/aes_core.v
@@ -94,7 +94,6 @@ module aes_core(
wire [3 : 0] enc_round_nr;
wire [127 : 0] enc_new_block;
wire enc_ready;
- wire [31 : 0] enc_sboxw;
reg dec_next;
wire [3 : 0] dec_round_nr;
@@ -107,7 +106,6 @@ module aes_core(
wire [31 : 0] keymem_sboxw;
- reg [31 : 0] muxed_sboxw;
wire [31 : 0] new_sboxw;
@@ -124,9 +122,6 @@ module aes_core(
.round(enc_round_nr),
.round_key(round_key),
- .sboxw(enc_sboxw),
- .new_sboxw(new_sboxw),
-
.block(block),
.new_block(enc_new_block),
.ready(enc_ready)
@@ -166,7 +161,7 @@ module aes_core(
);
- aes_sbox sbox_inst(.sboxw(muxed_sboxw), .new_sboxw(new_sboxw));
+ aes_sbox sbox_inst(.sboxw(keymem_sboxw), .new_sboxw(new_sboxw));
//----------------------------------------------------------------
@@ -207,25 +202,6 @@ module aes_core(
//----------------------------------------------------------------
- // sbox_mux
- //
- // Controls which of the encipher datapath or the key memory
- // that gets access to the sbox.
- //----------------------------------------------------------------
- always @*
- begin : sbox_mux
- if (init_state)
- begin
- muxed_sboxw = keymem_sboxw;
- end
- else
- begin
- muxed_sboxw = enc_sboxw;
- end
- end // sbox_mux
-
-
- //----------------------------------------------------------------
// encdex_mux
//
// Controls which of the datapaths that get the next signal, have
diff --git a/src/rtl/aes_encipher_block.v b/src/rtl/aes_encipher_block.v
index c3e672c..c4440d7 100644
--- a/src/rtl/aes_encipher_block.v
+++ b/src/rtl/aes_encipher_block.v
@@ -49,9 +49,6 @@ module aes_encipher_block(
output wire [3 : 0] round,
input wire [127 : 0] round_key,
- output wire [31 : 0] sboxw,
- input wire [31 : 0] new_sboxw,
-
input wire [127 : 0] block,
output wire [127 : 0] new_block,
output wire ready
diff --git a/src/tb/tb_aes_encipher_block.v b/src/tb/tb_aes_encipher_block.v
index cc08d8e..87bab2c 100644
--- a/src/tb/tb_aes_encipher_block.v
+++ b/src/tb/tb_aes_encipher_block.v
@@ -74,9 +74,6 @@ module tb_aes_encipher_block();
wire [3 : 0] tb_round;
wire [127 : 0] tb_round_key;
- wire [31 : 0] tb_sboxw;
- wire [31 : 0] tb_new_sboxw;
-
reg [127 : 0] tb_block;
wire [127 : 0] tb_new_block;
@@ -92,13 +89,6 @@ module tb_aes_encipher_block();
//----------------------------------------------------------------
// Device Under Test.
//----------------------------------------------------------------
- // We need an sbox for the tests.
- aes_sbox sbox(
- .sboxw(tb_sboxw),
- .new_sboxw(tb_new_sboxw)
- );
-
-
// The device under test.
aes_encipher_block dut(
.clk(tb_clk),
@@ -110,9 +100,6 @@ module tb_aes_encipher_block();
.round(tb_round),
.round_key(tb_round_key),
- .sboxw(tb_sboxw),
- .new_sboxw(tb_new_sboxw),
-
.block(tb_block),
.new_block(tb_new_block),
.ready(tb_ready)
@@ -172,7 +159,6 @@ module tb_aes_encipher_block();
$display("Internal data values");
$display("round_key = 0x%016x", dut.round_key);
- $display("sboxw = 0x%08x, new_sboxw = 0x%08x", dut.sboxw, dut.new_sboxw);
$display("block_w0_reg = 0x%08x, block_w1_reg = 0x%08x, block_w2_reg = 0x%08x, block_w3_reg = 0x%08x",
dut.block_w0_reg, dut.block_w1_reg, dut.block_w2_reg, dut.block_w3_reg);
$display("");