找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6893|回復(fù): 8
打印 上一主題 下一主題
收起左側(cè)

Verilog DEs AES加密與解密代碼 Quartus II可執(zhí)行

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:246585 發(fā)表于 2017-11-6 16:37 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
Quartus II可執(zhí)行的Verilog代碼 實現(xiàn)DEs AES加密和解密


全部資料51hei下載地址:
aes_top.zip (7.4 MB, 下載次數(shù): 87)

部分代碼:
  1. //`timescale 1 ns/ 1 ps
  2. module aes_top
  3. (
  4.   input clock,
  5.   output reg  over
  6.   //input rst,
  7.   //input flag,
  8.   //input [32:1] indata,
  9.   //output [32:1] outdata
  10. );
  11. reg rst;
  12. reg flag;
  13. //reg [32:1] indata;
  14. wire [32:1] outdata;
  15. wire overkey;
  16. wire overdecrp;
  17. wire overcrp;
  18. wire enkey,encrp,endecrp;
  19. wire [128:1] crp_out;
  20. wire [128:1] crp_in;
  21. wire [128:1] keyin;
  22. wire [128:1] key_out;
  23. wire [4:1] rn_key;  
  24. reg [4:1] state=4'h0;
  25. integer i=0;
  26. integer j=0;
  27. parameter s0=4'h0,s1=4'h1,s2=4'h2,s3=4'h3,s4=4'h4,s5=4'h5,s6=4'h6;
  28. //assign over=clock;
  29. always @(posedge clock)
  30. begin
  31.         case(state)
  32.         s0:
  33.           begin
  34.             rst=0;
  35.                  flag=1;
  36.                  state=s1;
  37.                  over=0;
  38.           end
  39.         s1:
  40.           begin
  41.             rst=1;
  42.                  state=s2;
  43.           end
  44.         s2:
  45.           begin
  46.             if(overcrp==1||overdecrp==1)
  47.                   begin
  48.                           if(i==100)
  49.                           begin
  50.                       over=1;
  51.                                 i=0;
  52.                            state=s3;
  53.                           end
  54.                           else if(i<100)
  55.                           begin
  56.                            i=i+1;
  57.                                 state=s0;
  58.                           end  
  59.                   end
  60.                  else
  61.                    state=s2;
  62.           end
  63.          s3:
  64.           begin
  65.             over=1;
  66.                  state=s4;
  67.           end
  68.          s4:
  69.           begin
  70.             over=1;
  71.                  if(j==10)
  72.                   begin
  73.                      j=0;
  74.                           state=s0;
  75.                   end
  76.                  else if(j<10)
  77.                   begin
  78.                     j=j+1;
  79.                    state=s3;
  80.                   end
  81.           end
  82.    endcase
  83. end

  84. regist regist
  85. (
  86.         //.indata(indata),
  87.    .clock(clock),
  88.         .rst(rst),
  89.         .overkey(overkey),
  90.         .flag(flag),
  91.         .overcrpc(overcrp),
  92.         .overcrpm(overdecrp),
  93.         .outcrp(crp_out),
  94.         .outdata(outdata),
  95.         .data(crp_in),
  96.         .key(keyin),
  97.         .enkey(enkey),
  98.         .encrpc(encrp),
  99.         .encrpm(endecrp)
  100. );

  101. key_sub key_sub
  102. (
  103.         .keyin(keyin),
  104.         .enkey(enkey),
  105.         .rn(rn_key),
  106.         .clock(clock),
  107.         .overkey(overkey),
  108.         .keyout(key_out)
  109. );

  110. crp_cl crp_cl
  111. (
  112.    .clock(clock),
  113.         .encrp(encrp),
  114.         .endecrp(endecrp),
  115.         .datain(crp_in),
  116.         .keyin(key_out),
  117.         .rn_key(rn_key),
  118.         .overcrp(overcrp),
  119.         .overdecrp(overdecrp),
  120.         .crp_out(crp_out)
  121. );

  122. endmodule
復(fù)制代碼



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

來自 8#
ID:613509 發(fā)表于 2019-9-19 13:57 | 只看該作者
aes128算法在ISE開發(fā)環(huán)境中工程源碼:http://www.torrancerestoration.com/bbs/dpj-170082-1.html
回復(fù)

使用道具 舉報

9#
ID:613509 發(fā)表于 2019-9-19 14:00 | 只看該作者
請問支持哪個系列FPGA?
回復(fù)

使用道具 舉報

7#
ID:396535 發(fā)表于 2018-11-29 13:20 | 只看該作者
非常感謝!
回復(fù)

使用道具 舉報

6#
ID:415459 發(fā)表于 2018-10-30 16:38 | 只看該作者
樓主可以解釋一下aes_top.v中的四個狀態(tài)嗎,下面是狀態(tài)s2的代碼
s2:
          begin
            if(overcrp==1||overdecrp==1)       // 100次加密或解密?
                  begin
                          if(i==100)
                          begin
                      over=1;
                                i=0;
                           state=s3;
                          end
                          else if(i<100)
                          begin
                           i=i+1;
                                state=s0;
                          end  
                  end
                 else
                   state=s2;
          end
這個是重復(fù)加密100次嗎?
其實沒太理解變量 i 和變量 j 的作用
回復(fù)

使用道具 舉報

5#
ID:271862 發(fā)表于 2018-8-31 10:07 | 只看該作者
做FPGA 反編譯么 ?
回復(fù)

使用道具 舉報

地板
ID:391408 發(fā)表于 2018-8-30 17:37 | 只看該作者
請問一下里面的各個文件都是做什么的
回復(fù)

使用道具 舉報

板凳
ID:318517 發(fā)表于 2018-4-28 16:23 | 只看該作者
學(xué)習(xí)下
回復(fù)

使用道具 舉報

沙發(fā)
ID:246585 發(fā)表于 2017-11-6 18:41 | 只看該作者
DES代碼
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表