📄 tb_des.v
字号:
x[ZZZ]=192'h1046913489980131_0000000000000000_88D55E54F54C97B4; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007103489988020_0000000000000000_0C0CC00C83EA48FD; ZZZ=ZZZ+1;
x[ZZZ]=192'h10071034C8980120_0000000000000000_83BC8EF3A6570183; ZZZ=ZZZ+1;
x[ZZZ]=192'h1046103489988020_0000000000000000_DF725DCAD94EA2E9; ZZZ=ZZZ+1;
x[ZZZ]=192'h1086911519190101_0000000000000000_E652B53B550BE8B0; ZZZ=ZZZ+1;
x[ZZZ]=192'h1086911519580101_0000000000000000_AF527120C485CBB0; ZZZ=ZZZ+1;
x[ZZZ]=192'h5107B01519580101_0000000000000000_0F04CE393DB926D5; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007B01519190101_0000000000000000_C9F00FFC74079067; ZZZ=ZZZ+1;
x[ZZZ]=192'h3107915498080101_0000000000000000_7CFD82A593252B4E; ZZZ=ZZZ+1;
x[ZZZ]=192'h3107919498080101_0000000000000000_CB49A2F9E91363E3; ZZZ=ZZZ+1;
x[ZZZ]=192'h10079115B9080140_0000000000000000_00B588BE70D23F56; ZZZ=ZZZ+1;
x[ZZZ]=192'h3107911598080140_0000000000000000_406A9A6AB43399AE; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007D01589980101_0000000000000000_6CB773611DCA9ADA; ZZZ=ZZZ+1;
x[ZZZ]=192'h9107911589980101_0000000000000000_67FD21C17DBB5D70; ZZZ=ZZZ+1;
x[ZZZ]=192'h9107D01589190101_0000000000000000_9592CB4110430787; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007D01598980120_0000000000000000_A6B7FF68A318DDD3; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007940498190101_0000000000000000_4D102196C914CA16; ZZZ=ZZZ+1;
x[ZZZ]=192'h0107910491190401_0000000000000000_2DFA9F4573594965; ZZZ=ZZZ+1;
x[ZZZ]=192'h0107910491190101_0000000000000000_B46604816C0E0774; ZZZ=ZZZ+1;
x[ZZZ]=192'h0107940491190401_0000000000000000_6E7E6221A4F34E87; ZZZ=ZZZ+1;
x[ZZZ]=192'h19079210981A0101_0000000000000000_AA85E74643233199; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007911998190801_0000000000000000_2E5A19DB4D1962D6; ZZZ=ZZZ+1;
x[ZZZ]=192'h10079119981A0801_0000000000000000_23A866A809D30894; ZZZ=ZZZ+1;
x[ZZZ]=192'h1007921098190101_0000000000000000_D812D961F017D320; ZZZ=ZZZ+1;
x[ZZZ]=192'h100791159819010B_0000000000000000_055605816E58608F; ZZZ=ZZZ+1;
x[ZZZ]=192'h1004801598190101_0000000000000000_ABD88E8B1B7716F1; ZZZ=ZZZ+1;
x[ZZZ]=192'h1004801598190102_0000000000000000_537AC95BE69DA1E1; ZZZ=ZZZ+1;
x[ZZZ]=192'h1004801598190108_0000000000000000_AED0F6AE3C25CDD8; ZZZ=ZZZ+1;
x[ZZZ]=192'h1002911498100104_0000000000000000_B3E35A5EE53E7B8D; ZZZ=ZZZ+1;
x[ZZZ]=192'h1002911598190104_0000000000000000_61C79C71921A2EF8; ZZZ=ZZZ+1;
x[ZZZ]=192'h1002911598100201_0000000000000000_E2F5728F0995013C; ZZZ=ZZZ+1;
x[ZZZ]=192'h1002911698100101_0000000000000000_1AEAC39A61F0A464; ZZZ=ZZZ+1;
x[ZZZ]=192'h7CA110454A1A6E57_01A1D6D039776742_690F5B0D9A26939B; ZZZ=ZZZ+1;
x[ZZZ]=192'h0131D9619DC1376E_5CD54CA83DEF57DA_7A389D10354BD271; ZZZ=ZZZ+1;
x[ZZZ]=192'h07A1133E4A0B2686_0248D43806F67172_868EBB51CAB4599A; ZZZ=ZZZ+1;
x[ZZZ]=192'h3849674C2602319E_51454B582DDF440A_7178876E01F19B2A; ZZZ=ZZZ+1;
x[ZZZ]=192'h04B915BA43FEB5B6_42FD443059577FA2_AF37FB421F8C4095; ZZZ=ZZZ+1;
x[ZZZ]=192'h0113B970FD34F2CE_059B5E0851CF143A_86A560F10EC6D85B; ZZZ=ZZZ+1;
x[ZZZ]=192'h0170F175468FB5E6_0756D8E0774761D2_0CD3DA020021DC09; ZZZ=ZZZ+1;
x[ZZZ]=192'h43297FAD38E373FE_762514B829BF486A_EA676B2CB7DB2B7A; ZZZ=ZZZ+1;
x[ZZZ]=192'h07A7137045DA2A16_3BDD119049372802_DFD64A815CAF1A0F; ZZZ=ZZZ+1;
x[ZZZ]=192'h04689104C2FD3B2F_26955F6835AF609A_5C513C9C4886C088; ZZZ=ZZZ+1;
x[ZZZ]=192'h37D06BB516CB7546_164D5E404F275232_0A2AEEAE3FF4AB77; ZZZ=ZZZ+1;
x[ZZZ]=192'h1F08260D1AC2465E_6B056E18759F5CCA_EF1BF03E5DFA575A; ZZZ=ZZZ+1;
x[ZZZ]=192'h584023641ABA6176_004BD6EF09176062_88BF0DB6D70DEE56; ZZZ=ZZZ+1;
x[ZZZ]=192'h025816164629B007_480D39006EE762F2_A1F9915541020B56; ZZZ=ZZZ+1;
x[ZZZ]=192'h49793EBC79B3258F_437540C8698F3CFA_6FBF1CAFCFFD0556; ZZZ=ZZZ+1;
x[ZZZ]=192'h4FB05E1515AB73A7_072D43A077075292_2F22E49BAB7CA1AC; ZZZ=ZZZ+1;
x[ZZZ]=192'h49E95D6D4CA229BF_02FE55778117F12A_5A6B612CC26CCE4A; ZZZ=ZZZ+1;
x[ZZZ]=192'h018310DC409B26D6_1D9D5C5018F728C2_5F4C038ED12B2E41; ZZZ=ZZZ+1;
x[ZZZ]=192'h1C587F1C13924FEF_305532286D6F295A_63FAC0D034D9F793; ZZZ=ZZZ+1;
x[ZZZ]=192'h0000000000000000_0000000000000000_8CA64DE9C1B123A7; ZZZ=ZZZ+1;
x[ZZZ]=192'hFFFFFFFFFFFFFFFF_FFFFFFFFFFFFFFFF_7359B2163E4EDC58; ZZZ=ZZZ+1;
x[ZZZ]=192'h3000000000000000_1000000000000001_958E6E627A05557B; ZZZ=ZZZ+1;
x[ZZZ]=192'h1111111111111111_1111111111111111_F40379AB9E0EC533; ZZZ=ZZZ+1;
x[ZZZ]=192'h0123456789ABCDEF_1111111111111111_17668DFC7292532D; ZZZ=ZZZ+1;
x[ZZZ]=192'h1111111111111111_0123456789ABCDEF_8A5AE1F81AB8F2DD; ZZZ=ZZZ+1;
x[ZZZ]=192'h0000000000000000_0000000000000000_8CA64DE9C1B123A7; ZZZ=ZZZ+1;
x[ZZZ]=192'hFEDCBA9876543210_0123456789ABCDEF_ED39D950FA74BCC4; ZZZ=ZZZ+1;
x[ZZZ]=192'h7CA110454A1A6E57_01A1D6D039776742_690F5B0D9A26939B; ZZZ=ZZZ+1;
x[ZZZ]=192'h0131D9619DC1376E_5CD54CA83DEF57DA_7A389D10354BD271; ZZZ=ZZZ+1;
x[ZZZ]=192'h07A1133E4A0B2686_0248D43806F67172_868EBB51CAB4599A; ZZZ=ZZZ+1;
x[ZZZ]=192'h3849674C2602319E_51454B582DDF440A_7178876E01F19B2A; ZZZ=ZZZ+1;
x[ZZZ]=192'h04B915BA43FEB5B6_42FD443059577FA2_AF37FB421F8C4095; ZZZ=ZZZ+1;
x[ZZZ]=192'h0113B970FD34F2CE_059B5E0851CF143A_86A560F10EC6D85B; ZZZ=ZZZ+1;
x[ZZZ]=192'h0170F175468FB5E6_0756D8E0774761D2_0CD3DA020021DC09; ZZZ=ZZZ+1;
x[ZZZ]=192'h43297FAD38E373FE_762514B829BF486A_EA676B2CB7DB2B7A; ZZZ=ZZZ+1;
x[ZZZ]=192'h07A7137045DA2A16_3BDD119049372802_DFD64A815CAF1A0F; ZZZ=ZZZ+1;
x[ZZZ]=192'h04689104C2FD3B2F_26955F6835AF609A_5C513C9C4886C088; ZZZ=ZZZ+1;
x[ZZZ]=192'h37D06BB516CB7546_164D5E404F275232_0A2AEEAE3FF4AB77; ZZZ=ZZZ+1;
x[ZZZ]=192'h1F08260D1AC2465E_6B056E18759F5CCA_EF1BF03E5DFA575A; ZZZ=ZZZ+1;
x[ZZZ]=192'h584023641ABA6176_004BD6EF09176062_88BF0DB6D70DEE56; ZZZ=ZZZ+1;
x[ZZZ]=192'h025816164629B007_480D39006EE762F2_A1F9915541020B56; ZZZ=ZZZ+1;
x[ZZZ]=192'h49793EBC79B3258F_437540C8698F3CFA_6FBF1CAFCFFD0556; ZZZ=ZZZ+1;
x[ZZZ]=192'h4FB05E1515AB73A7_072D43A077075292_2F22E49BAB7CA1AC; ZZZ=ZZZ+1;
x[ZZZ]=192'h49E95D6D4CA229BF_02FE55778117F12A_5A6B612CC26CCE4A; ZZZ=ZZZ+1;
x[ZZZ]=192'h018310DC409B26D6_1D9D5C5018F728C2_5F4C038ED12B2E41; ZZZ=ZZZ+1;
x[ZZZ]=192'h1C587F1C13924FEF_305532286D6F295A_63FAC0D034D9F793; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010101_0123456789ABCDEF_617B3A0CE8F07100; ZZZ=ZZZ+1;
x[ZZZ]=192'h1F1F1F1F0E0E0E0E_0123456789ABCDEF_DB958605F8C8C606; ZZZ=ZZZ+1;
x[ZZZ]=192'hE0FEE0FEF1FEF1FE_0123456789ABCDEF_EDBFD1C66C29CCC7; ZZZ=ZZZ+1;
x[ZZZ]=192'h0000000000000000_FFFFFFFFFFFFFFFF_355550B2150E2451; ZZZ=ZZZ+1;
x[ZZZ]=192'hFFFFFFFFFFFFFFFF_0000000000000000_CAAAAF4DEAF1DBAE; ZZZ=ZZZ+1;
x[ZZZ]=192'h0123456789ABCDEF_0000000000000000_D5D44FF720683D0D; ZZZ=ZZZ+1;
x[ZZZ]=192'hFEDCBA9876543210_FFFFFFFFFFFFFFFF_2A2BB008DF97C2F2; ZZZ=ZZZ+1;
//decrypt
x[ZZZ]=192'h8001010101010101_95A8D72813DAA94D_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h4001010101010101_0EEC1487DD8C26D5_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h2001010101010101_7AD16FFB79C45926_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h1001010101010101_D3746294CA6A6CF3_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0801010101010101_809F5F873C1FD761_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0401010101010101_C02FAFFEC989D1FC_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0201010101010101_4615AA1D33E72F10_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0180010101010101_2055123350C00858_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0140010101010101_DF3B99D6577397C8_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0120010101010101_31FE17369B5288C9_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0110010101010101_DFDD3CC64DAE1642_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0108010101010101_178C83CE2B399D94_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0104010101010101_50F636324A9B7F80_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0102010101010101_A8468EE3BC18F06D_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101800101010101_A2DC9E92FD3CDE92_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101400101010101_CAC09F797D031287_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101200101010101_90BA680B22AEB525_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101100101010101_CE7A24F350E280B6_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101080101010101_882BFF0AA01A0B87_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101040101010101_25610288924511C2_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101020101010101_C71516C29C75D170_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101018001010101_5199C29A52C9F059_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101014001010101_C22F0A294A71F29F_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101012001010101_EE371483714C02EA_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101011001010101_A81FBD448F9E522F_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010801010101_4F644C92E192DFED_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010401010101_1AFA9A66A6DF92AE_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010201010101_B3C1CC715CB879D8_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010180010101_19D032E64AB0BD8B_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010140010101_3CFAA7A7DC8720DC_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010120010101_B7265F7F447AC6F3_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010110010101_9DB73B3C0D163F54_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010108010101_8181B65BABF4A975_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010104010101_93C9B64042EAA240_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010102010101_5570530829705592_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101800101_8638809E878787A0_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101400101_41B9A79AF79AC208_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101200101_7A9BE42F2009A892_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101100101_29038D56BA6D2745_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101080101_5495C6ABF1E5DF51_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101040101_AE13DBD561488933_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101020101_024D1FFA8904E389_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101018001_D1399712F99BF02E_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101014001_14C1D7C1CFFEC79E_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101012001_1DE5279DAE3BED6F_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101011001_E941A33F85501303_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010801_DA99DBBC9A03F379_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010401_B7FC92F91D8E92E9_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010201_AE8E5CAA3CA04E85_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010180_9CC62DF43B6EED74_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010140_D863DBB5C59A91A0_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010120_A1AB2190545B91D7_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010110_0875041E64C570F7_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010108_5A594528BEBEF1CC_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010104_FCDB3291DE21F0C0_0000000000000000; ZZZ=ZZZ+1;
x[ZZZ]=192'h0101010101010102_869EFD7F9F265A09_0000000000000000; ZZZ=ZZZ+1;
load = 0;
$fdisplay(file,"**************************************");
$fdisplay(file,"* DES Start ... *");
$fdisplay(file,"**************************************");
#13 rst_n = 0;
#20 rst_n = 1;
$fdisplay(file,"Running Decrypt test ...\n");
@(posedge des_clk)
select = 0;
tmp = x[0];
mode = 0;
@(posedge des_clk)
load <= #1 1;
@(posedge des_clk)
for(select=1;select<(326);select=select+1)
begin
tmp = x[select];
@(posedge des_clk);
end
load <= #1 0;
repeat (16)@(posedge des_clk);
$fdisplay(file,"Running Encrypt test ...\n");
@(posedge des_clk)
select = 0;
tmp = x[0];
mode = 1;
@(posedge des_clk)
load <= #1 1;
@(posedge des_clk)
for(select=1;select<(326);select=select+1)
begin
tmp <= #1 x[select];
@(posedge des_clk);
end
load <= #1 0;
repeat (16)@(posedge des_clk);
$fdisplay(file,"**************************************");
$fdisplay(file,"* DES Test done ... *");
$fdisplay(file,"**************************************");
$stop;
$fclose(file);
end
always @(posedge des_clk)
begin
if(ready)
$fdisplay(file,"des_exp: %x, des_out: %x-----%x",des_exp[16], des_out,des_exp[16]==des_out);
end
always #5 des_clk = ~des_clk;
assign reverse = select > 269;
assign #1 key = tmp[191:128];
assign #1 des_in = (mode^reverse)? tmp[63:0]:tmp[127:64];
assign exp_out_d = (mode^reverse) ? tmp[127:64] : tmp[63:0];
DES_TOP U_DES_TOP(
.des_clk (des_clk ) ,
.rst_n (rst_n ) ,
.load (load ) ,
.des_in (des_in ) ,
.key (key ) ,
.mode (mode ) ,
.des_out (des_out ) ,
.ready (ready )
);
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -