AES加密解密verilog代码

上传人:鲁** 文档编号:439148143 上传时间:2023-07-04 格式:DOC 页数:19 大小:278.50KB
返回 下载 相关 举报
AES加密解密verilog代码_第1页
第1页 / 共19页
AES加密解密verilog代码_第2页
第2页 / 共19页
AES加密解密verilog代码_第3页
第3页 / 共19页
AES加密解密verilog代码_第4页
第4页 / 共19页
AES加密解密verilog代码_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《AES加密解密verilog代码》由会员分享,可在线阅读,更多相关《AES加密解密verilog代码(19页珍藏版)》请在金锄头文库上搜索。

1、顶层代码includetimescale.vmoduleaes_top(clk,rst,kld,sel,ld,done,key,text_in,text_out);inputclk,rst;inputkld,ld,sel;outputdone;input127:0key;input127:0text_in;output127:0text_out;wire7:0wire7:0wire7:0wire7:0sa00_sub,sa10_sub,sa20_sub,sa30_sub,sa01_sub,sa11_sub,sa21_sub,sa31_sub,sa02_sub,sa12_sub,sa22_sub

2、,sa32_sub,sa03_sub;sa13_sub;sa23_sub;sa33_sub;wire7:0wire7:0wire7:0wire7:0sa00_sr,sa10_sr,sa20_sr,sa30_sr,sa01_sr,sa11_sr,sa21_sr,sa31_sr,sa02_sr,sa12_sr,sa22_sr,sa32_sr,sa03_sr;sa13_sr;sa23_sr;sa33_sr;wire7:0wire7:0wire7:0wire7:0sa00_ark,sa10_ark,sa20_ark,sa30_ark,sa01_ark,sa11_ark,sa21_ark,sa31_ar

3、k,sa02_ark,sa12_ark,sa22_ark,sa32_ark,sa03_ark;sa13_ark;sa23_ark;sa33_ark;reg31:0wk0,wk1,wk2,wk3;wire31:0w0,w1,w2,w3;reg31:0w_k0,w_k1,w_k2,w_k3;reg127:0text_in_r;reg127:0text_out;reg7:0sa00,sa01,sa02,sa03;reg7:0sa10,sa11,sa12,sa13;reg7:0sa20,sa21,sa22,sa23;reg7:0sa30,sa31,sa32,sa33;wire7:0sa00_next,

4、sa01_next,sa02_next,sa03_next;wire7:0sa10_next,sa11_next,sa12_next,sa13_next;wire7:0sa20_next,sa21_next,sa22_next,sa23_next;wire7:0sa30_next,sa31_next,sa32_next,sa33_next;regld_r,done;reg3:0dcnt;reggo=0;/shangshenggoalways(posedgeclk)if(!rst)go=#11b0;elseif(sel)go=#11b1;elseif(done)go=#11b0;always(p

5、osedgeclk)if(!rst)dcnt=#14h0;elseif(done)dcnt=#14h0;elseif(ld)dcnt=#14h1;elseif(go)dcnt=#1dcnt+4h1always(posedgeclk)done=#1(dcnt=4hb)&!ld;always(posedgeclk)if(ld)text_in_r=#1text_in;/readalways(posedgeclk)sa33=#1ld_r?text_in_r007000w30700:always(posedgeclk)sa23=#1ld_r?text_in_r015008w31508:always(po

6、sedgeclk)sa13=#1ld_r?text_in_r023016w32316:always(posedgeclk)sa03=#1ld_r?text_in_r031024w33124:always(posedgeclk)sa32=#1ld_r?text_in_r039032w20700:always(posedgeclk)sa22=#1ld_r?text_in_r047040w21508:always(posedgeclk)sa12=#1ld_r?text_in_r055048w22316:always(posedgeclk)sa02=#1ld_r?text_in_r063056w231

7、24:always(posedgeclk)sa31=#1ld_r?text_in_r071064w10700:always(posedgeclk)sa21=#1ld_r?text_in_r079072w11508:always(posedgeclk)sa11=#1ld_r?text_in_r087080w12316:always(posedgeclk)sa01=#1ld_r?text_in_r095088w13124:always(posedgeclk)sa30=#1ld_r?text_in_r103096w00700:always(posedgeclk)sa20=#1ld_r?text_in

8、_r111104w01508:always(posedgeclk)sa10=#1ld_r?text_in_r119112w02316:always(posedgeclk)sa00=#1ld_r?text_in_r127120w03124:always(posedgeclk)ld_r=#1ld;/ld为1时text_in与初始密钥异或,ld为0时等于saxx_nextsa33_next;sa23_next;sa13_next;sa03_next;sa32_next;sa22_next;sa12_next;sa02_next;sa31_next;sa21_next;sa11_next;sa01_n

9、ext;sa30_next;sa20_next;sa10_next;sa00_next;/sreplaceandassignsa00_sr=sa00_sub;assignsa01_sr=sa01_sub;assignsa02_sr=sa02_sub;assignsa03_sr=sa03_sub;assignsa10_sr=!go?sa13_sub:sa11sub;assignsa11_sr=!go?sa10_sub:sa12sub;assignsa12_sr=!go?sa11_sub:sa13sub;assignsa13_sr=!go?sa12_sub:sa10sub;assignsa20_s

10、r=!go?sa22_sub:sa22sub;assignsa21_sr=!go?sa23_sub:sa23sub;assignsa22_sr=!go?sa20_sub:sa20sub;assignsa23_sr=!go?sa21_sub:sa21sub;assignsa30_sr=!go?sa31_sub:sa33sub;assignsa31_sr=!go?sa32_sub:sa30sub;assignsa32_sr=!go?sa33_sub:sa31sub;assignsa33_sr=!go?sa30_sub:sa32sub;/hunhebianhuanassignsa00_ark,sa1

11、0_ark,sa20_ark,sa30_ark=gomix_col(sa00_sr,sa10_sr,sa20_sr,sa30_sr):inv_mix_col(sa00_sr,sa10_sr,sa20_sr,sa30_sr);assignsa01_ark,sa11_ark,sa21_ark,sa31_ark=gomix_col(sa01_sr,sa11_sr,sa21_sr,sa31_sr):inv_mix_col(sa01_sr,sa11_sr,sa21_sr,sa31_sr);assignsa02_ark,sa12_ark,sa22_ark,sa32_ark=gomix_col(sa02_s

12、r,sa12_sr,sa22_sr,sa32_sr):inv_mix_col(sa02_sr,sa12_sr,sa22_sr,sa32_sr);assignsa03_ark,sa13_ark,sa23_ark,sa33_ark=gomix_col(sa03_sr,sa13_sr,sa23_sr,sa33_sr):inv_mix_col(sa03_sr,sa13_sr,sa23_sr,sa33_sr);/nextcipterassignsa00_next=go?saOO_arkw03124sa00arkwk03124assignsa01_next=go?sa01_arkw13124sa01arkwk13124assignsa02_next=go?sa02_arkw23124sa02arkwk23124assignsa03_next=go?sa03_arkw33124sa03arkwk33124assignsa10_next=go?sa10_arkw02316sa10arkwk02316assignsa11_next=go?sa11_arkw12316sa11arkwk12316assignsa12_next=go?sa12_arkw22316sa12arkwk22316

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号