Add opt_rmdff tests
[yosys.git] / tests / simple / aes_kexp128.v
1
2 // test taken from aes_core from iwls2005
3
4 module aes_key_expand_128(clk, kld, key, wo_0, wo_1, wo_2, wo_3);
5
6 input clk, kld;
7 input [15:0] key;
8 output [3:0] wo_0, wo_1, wo_2, wo_3;
9 reg [3:0] w[3:0];
10
11 assign wo_0 = w[0];
12 assign wo_1 = w[1];
13 assign wo_2 = w[2];
14 assign wo_3 = w[3];
15
16 always @(posedge clk) begin
17 w[0] <= kld ? key[15:12] : w[0];
18 w[1] <= kld ? key[11: 8] : w[0]^w[1];
19 w[2] <= kld ? key[ 7: 4] : w[0]^w[1]^w[2];
20 w[3] <= kld ? key[ 3: 0] : w[0]^w[1]^w[2]^w[3];
21 end
22
23 endmodule
24