Digital Signal Processing Reference
In-Depth Information
h +
s +
h 7
h 0
s 0
h 1
s 1
h 2
s 2
h 3
s 3
= =
= =
= =
= =
= =
= =
. . . . . . . . . . . . . . . . . . . . .
h 7
s 0
s 0
s 1
s 1
s 1
= =
= =
= =
s 2
s 3
. . . . . . . . . . . . . . . . . . . . .
= =
s 3
s 4
= =
s 6
s 7
= =
Pointers
lengths
Figure 13.23 Digital design implementing multiple iterations of the LZ77 algorithm
// Nb = 4
// Nr = 10, 12, 14 for 128, 192 and 256 bit AES
// Hard parameter, Nk=4,6,8 for 128, 192, 256 AES
// UWord8 and UWord32 are 8-bit and 32-bit unsigned numbers
UWord32 key[Nk];
UWord32 w[Nb*(Nr-1)]; /* Expended Key */
AES_encryption (
UWord8 plain_text[4*Nb],
UWord8 cipher_text[4*Nb],
UWord32 w[Nb*(Nr-1)]);
begin
UWord8 state [4*Nb];
state = Plain_text;
ARK(state, w[0, Nb-1]);
for(round=1, round<=Nr-1, round++)
begin
SB(state);
SR(state);
MC(state);
ARK(state, w[round*Nb, (round+1)*Nb-1)]);
end
SB(state);
SR(state);
ARK(state, w[Nr*Nb, (Nr+1)*Nb-1)]);
end
 
Search WWH ::




Custom Search