K
korgull
Guest
Hei,
Jeg er for øyeblikket modellering en AES design med en 256-biters nøkkel.Mitt dilemma er at jeg har et tilfelle hvor nøkkelen utvidelse rørledning er raskere enn rør som gjør det faktiske kryptering.Jeg har et eksempel på VHDL som forfatter parametrisk forsinkelsen for nøkkelen utvidelse slik at den samsvarer med kryptering rør og hver generert nøkkel kommer til riktig tid i addRoundKey syklus.
Nå ser jeg ikke en enkel måte å gjøre dette i Verilog, så jeg har vært manuelt angi registrerer jeg trenger dem og trykker på de kryptering runder når jeg trenger det:
Code:/ / Key Expansion Forsinkelse kretser
delayReg128 D0 (. IN (KEY [127:0]). clk (klokke). OUT (KEYDLY0));
delayReg128 D1 (. IN (KEYDLY0). clk (klokke). OUT (KEYDLY1));
delayReg256 D2 (. IN (KXP1). clk (klokke). OUT (KEYDLY2));
delayReg128 D3 (. IN (KEYDLY2 [255:128]). clk (klokke). OUT (KEYDLY3));
delayReg128 D4 (. IN (KEYDLY2 [127:0]). clk (klokke). OUT (KEYDLY4));
delayReg128 D5 (. IN (KEYDLY4). clk (klokke). OUT (KEYDLY5));
delayReg128 D6 (. IN (KEYDLY5). clk (klokke). OUT (KEYDLY6));
delayReg256 D7 (. IN (KXP2). clk (klokke). OUT (KEYDLY7));
[blah ..
blah.
blah ..
Jeg er for øyeblikket modellering en AES design med en 256-biters nøkkel.Mitt dilemma er at jeg har et tilfelle hvor nøkkelen utvidelse rørledning er raskere enn rør som gjør det faktiske kryptering.Jeg har et eksempel på VHDL som forfatter parametrisk forsinkelsen for nøkkelen utvidelse slik at den samsvarer med kryptering rør og hver generert nøkkel kommer til riktig tid i addRoundKey syklus.
Nå ser jeg ikke en enkel måte å gjøre dette i Verilog, så jeg har vært manuelt angi registrerer jeg trenger dem og trykker på de kryptering runder når jeg trenger det:
Code:/ / Key Expansion Forsinkelse kretser
delayReg128 D0 (. IN (KEY [127:0]). clk (klokke). OUT (KEYDLY0));
delayReg128 D1 (. IN (KEYDLY0). clk (klokke). OUT (KEYDLY1));
delayReg256 D2 (. IN (KXP1). clk (klokke). OUT (KEYDLY2));
delayReg128 D3 (. IN (KEYDLY2 [255:128]). clk (klokke). OUT (KEYDLY3));
delayReg128 D4 (. IN (KEYDLY2 [127:0]). clk (klokke). OUT (KEYDLY4));
delayReg128 D5 (. IN (KEYDLY4). clk (klokke). OUT (KEYDLY5));
delayReg128 D6 (. IN (KEYDLY5). clk (klokke). OUT (KEYDLY6));
delayReg256 D7 (. IN (KXP2). clk (klokke). OUT (KEYDLY7));
[blah ..
blah.
blah ..