亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? des3_top.v

?? 3des加密算法實(shí)現(xiàn)
?? V
字號(hào):
//////////////////////////////////////////////////////////////////////////                                                                    //  Abstract: This function of the top module mostly deals with interface of the datain and dataout.                                                      
//            Change 8 bit data into 64 data.
//            Address 8h'00-8h'17 is key,8h'18-8h'1f is data. 
//                                                             //  Module  : top_3des                                //                                                                    //  Version : ver 01.00                                  //                                                                    //  Modification History:                                            //  Date By         Change Description                         //  ----------------------------------------------------------------- //  2008/08/06  jackie                                           
//  YYYY/MM/DD  author     Revision content                           
//                                                                    ////////////////////////////////////////////////////////////////////////
`timescale 1ns/1ns
module des3_top(des_datao,des_addr,des_oe,des_we,des_done,des_datai,des_en,des3,des_decode,clk,rst,
                 load_1,load_2,load_3,done_1,done_2,done_3);
output  [7:0]   des_datao;
output  [7:0]   des_addr;
output          des_oe;
output          des_we;
output          des_done;
input   [7:0]   des_datai;
input           des_en;
input           des3;
input           des_decode;
input           clk;
input           rst;
output          load_1;
output          load_2;
output          load_3;
output          done_1;
output          done_2;
output          done_3;


reg	[7:0]	key10, key11, key12, key13, key14, key15, key16, key17;
reg	[7:0]	key20, key21, key22, key23, key24, key25, key26, key27;
reg	[7:0]	key30, key31, key32, key33, key34, key35, key36, key37;
reg     [7:0]   datain_00,datain_01,datain_02,datain_03,datain_04,datain_05,datain_06,datain_07;
reg     [7:0]   in_cnt;
reg     [7:0]   out_cnt;
reg             des_en_delay1;
reg             des_en_delay2;
reg             done_temp1;
reg             done_temp2;
reg     [7:0]   des_addr_r;
reg     [7:0]   des_addr_w;
reg             en;
reg     [7:0]   des_datao;
reg             des_done;


wire    [7:0]     dataout_00,dataout_01,dataout_02,dataout_03,dataout_04,dataout_05,dataout_06,dataout_07; 
wire    [55:0]    key1;
wire    [55:0]    key2;
wire    [55:0]    key3;
wire    [63:0]    datain;
wire    [63:0]    dataout;
wire    [63:0]    cipdataout;
wire    [63:0]    invdataout;
wire              done;
wire              invdone;
wire              cipdone;
wire              des3_sta;
wire              cipen;
wire              inven;  
wire              load_1;
wire              load_2;
wire              load_3;
wire              done_1;
wire              done_2;
wire              done_3;


parameter delay = 1'b1;
parameter Low = 1'b0;

always @(posedge clk)
  if (rst)
      des_en_delay1 <= #delay 1'b0;
  else 
      des_en_delay1 <= #delay des_en;

always @(posedge clk)
  if (rst)
      des_en_delay2 <= #delay 1'b0;
  else 
      des_en_delay2 <= #delay des_en_delay1;

assign des_oe = des_en&&(!en); 

assign des_we = done_temp1&&done_temp2;

always @(posedge clk)
   if (rst)
      done_temp1 <= #delay 1'b0;
   else if (done)
      done_temp1 <= #delay 1'b1;
   else if (!des_en)
      done_temp1 <= #delay 1'b0; 
      
always @(posedge clk)
   if (rst)
      done_temp2 <= #delay 1'b0;
    else
      done_temp2 <= #delay done_temp1;       

always @(posedge clk)
   if (rst)
      en <= #delay 1'b0;    
   else if (in_cnt==8'h1f)  
      en <= #delay des_en_delay2;
   

//des_done
always @(posedge clk)
  if (rst) 
      des_done <= #delay 1'b0;
  else if (out_cnt==8'h1e)
      des_done <= #delay 1'b1;
  else 
      des_done <= #delay 1'b0;
          
assign des3_sta = des_en&&(!des_en_delay1);

always @(posedge clk)
   if (rst)
      in_cnt <= #delay 8'h00;    
   else if (des3_sta)  
      in_cnt <= #delay in_cnt-1;
   else if (des_en_delay2)  
      in_cnt <= #delay in_cnt+1;
   else
      in_cnt <= #delay 8'h00;     

//data out count
always @(posedge clk)
   if (rst)
      out_cnt <= #delay 8'h18;
   else if (done_temp1)  
      out_cnt <= #delay out_cnt+1;
   else 
      out_cnt <= #delay 8'h18;

always @(posedge clk)
   if (rst)
     begin 
        key10 <= #delay 8'h00;
        key11 <= #delay 8'h00;
        key12 <= #delay 8'h00;
        key13 <= #delay 8'h00;
        key14 <= #delay 8'h00;
        key15 <= #delay 8'h00;
        key16 <= #delay 8'h00;
        key17 <= #delay 8'h00;
        key20 <= #delay 8'h00;
        key21 <= #delay 8'h00;
        key22 <= #delay 8'h00;
        key23 <= #delay 8'h00;
        key24 <= #delay 8'h00;
        key25 <= #delay 8'h00;
        key26 <= #delay 8'h00;
        key27 <= #delay 8'h00;
        key30 <= #delay 8'h00;
        key31 <= #delay 8'h00;
        key32 <= #delay 8'h00;
        key33 <= #delay 8'h00;
        key34 <= #delay 8'h00;
        key35 <= #delay 8'h00;
        key36 <= #delay 8'h00;
        key37 <= #delay 8'h00;
        datain_00 <= #delay 8'h00;
        datain_01 <= #delay 8'h00;
        datain_02 <= #delay 8'h00;
        datain_03 <= #delay 8'h00;
        datain_04 <= #delay 8'h00;  
        datain_05 <= #delay 8'h00;  
        datain_06 <= #delay 8'h00;  
        datain_07 <= #delay 8'h00;        
     end  
   else if(des_en_delay2)
     case(in_cnt)      
      8'h00:  key10 <= #delay des_datai;
      8'h01:  key11 <= #delay des_datai;
      8'h02:  key12 <= #delay des_datai;
      8'h03:  key13 <= #delay des_datai;
      8'h04:  key14 <= #delay des_datai;
      8'h05:  key15 <= #delay des_datai;
      8'h06:  key16 <= #delay des_datai;
      8'h07:  key17 <= #delay des_datai;
      8'h08:  key20 <= #delay des_datai;
      8'h09:  key21 <= #delay des_datai;
      8'h0a:  key22 <= #delay des_datai;
      8'h0b:  key23 <= #delay des_datai;
      8'h0c:  key24 <= #delay des_datai;
      8'h0d:  key25 <= #delay des_datai;
      8'h0e:  key26 <= #delay des_datai;
      8'h0f:  key27 <= #delay des_datai;
      8'h10:  key30 <= #delay des_datai;
      8'h11:  key31 <= #delay des_datai;
      8'h12:  key32 <= #delay des_datai;
      8'h13:  key33 <= #delay des_datai;
      8'h14:  key34 <= #delay des_datai;
      8'h15:  key35 <= #delay des_datai;
      8'h16:  key36 <= #delay des_datai;
      8'h17:  key37 <= #delay des_datai;
      8'h18:  datain_00 <= #delay des_datai;
      8'h19:  datain_01 <= #delay des_datai;
      8'h1a:  datain_02 <= #delay des_datai;
      8'h1b:  datain_03 <= #delay des_datai;
      8'h1c:  datain_04 <= #delay des_datai;
      8'h1d:  datain_05 <= #delay des_datai;
      8'h1e:  datain_06 <= #delay des_datai;
      8'h1f:  datain_07 <= #delay des_datai;   
     endcase             

always @(posedge clk)
   if (rst)
     begin       
        des_datao <= #delay 8'h00;            
     end 
   else if(done_temp1)          
     case(out_cnt)
      8'h18:  des_datao <= #delay dataout_00;
      8'h19:  des_datao <= #delay dataout_01;
      8'h1a:  des_datao <= #delay dataout_02; 
      8'h1b:  des_datao <= #delay dataout_03;
      8'h1c:  des_datao <= #delay dataout_04;
      8'h1d:  des_datao <= #delay dataout_05; 
      8'h1e:  des_datao <= #delay dataout_06;
      8'h1f:  des_datao <= #delay dataout_07;
     endcase
     
//word address  of reading data 
always @(posedge clk)
    if (rst)        
        des_addr_r <= #delay 8'h00;                      
    else if (des_en_delay1)        
        des_addr_r <= #delay des_addr_r + 1;                       
    else if (done_temp1)   
        des_addr_r <= #delay 8'h00;

//word address  of writting data 
always @(posedge clk)
    if (rst)        
        des_addr_w <= #delay 8'h17;                  
    else if (done_temp1)        
        des_addr_w <= #delay des_addr_w + 1;
    
        
//mux des_addr_r or des_addr_w
assign des_addr  =  done_temp1? des_addr_w:des_addr_r;

//key  
assign	key1 = {key17[7:1],key16[7:1],key15[7:1],key14[7:1],key13[7:1],key12[7:1],key11[7:1],key10[7:1] };assign	key2 = {key27[7:1],key26[7:1],key25[7:1],key24[7:1],key23[7:1],key22[7:1],key21[7:1],key20[7:1] };
assign	key3 = {key37[7:1],key36[7:1],key35[7:1],key34[7:1],key33[7:1],key32[7:1],key31[7:1],key30[7:1] };

//data
assign  datain = {datain_07,datain_06,datain_05,datain_04,datain_03,datain_02,datain_01,datain_00};
assign  dataout_07 = dataout[63:56];
assign  dataout_06 = dataout[55:48];
assign  dataout_05 = dataout[47:40];
assign  dataout_04 = dataout[39:32];
assign  dataout_03 = dataout[31:24];
assign  dataout_02 = dataout[23:16];
assign  dataout_01 = dataout[15:8];
assign  dataout_00 = dataout[7:0];

des3_cipher  des3__cipher_dut(.cipdataout(cipdataout),.cipdone(cipdone),.datain(datain),
               .key1(key1),.key2(key2),.key3(key3),
               .cipen(cipen),.des3(des3),.rst(rst),.clk(clk),
               .load_1(load_1),.load_2(load_2),.load_3(load_3),
               .done_1(done_1),.done_2(done_2),.done_3(done_3));
               
des3_inv_cipher  des3__inv_cipher_dut(.invdataout(invdataout),.invdone(invdone),.datain(datain),
               .key1(key1),.key2(key2),.key3(key3),
               .inven(inven),.des3(des3),.rst(rst),.clk(clk));               

//MUX des3_decode
assign dataout = des_decode ? invdataout:cipdataout;
assign done = des_decode ? invdone:cipdone;
assign cipen = des_decode ? Low:en;
assign inven = des_decode ? en:Low;      

 
 
 
endmodule

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91亚洲国产成人精品一区二三| 激情文学综合网| 欧美在线观看视频一区二区三区| 国产精品久久久久三级| 成人网在线播放| 国产精品久久久99| 欧洲色大大久久| 蜜臀国产一区二区三区在线播放 | 精一区二区三区| 欧美成人video| 国产精品香蕉一区二区三区| 国产清纯白嫩初高生在线观看91 | 日韩在线卡一卡二| 精品久久久久久无| www.久久久久久久久| 亚洲在线视频一区| 欧美xxx久久| 粉嫩13p一区二区三区| 亚洲三级在线观看| 91精品国产综合久久福利| 国产一区二区免费在线| 樱花草国产18久久久久| 日韩一级片在线播放| 国产精品99久久久| 亚洲欧美激情小说另类| 6080日韩午夜伦伦午夜伦| 国产成人超碰人人澡人人澡| 一区二区在线看| 久久奇米777| 欧美日韩视频在线一区二区| 国产精品自在在线| 亚洲在线中文字幕| 欧美国产欧美综合| 欧美日韩日日骚| 国产精品一区二区果冻传媒| 亚洲自拍偷拍综合| 亚洲国产经典视频| 欧美一区三区四区| 色婷婷狠狠综合| 极品尤物av久久免费看| 午夜天堂影视香蕉久久| 中文字幕一区二区三区在线观看 | 日韩一级片在线观看| 91热门视频在线观看| 九九**精品视频免费播放| 亚洲综合小说图片| 国产精品美女久久久久av爽李琼| 91精品国产综合久久精品| 在线亚洲人成电影网站色www| 国产一区日韩二区欧美三区| 亚洲超丰满肉感bbw| 国产精品不卡一区| 久久午夜羞羞影院免费观看| 91精品视频网| 欧美日本一道本| 欧美性猛交xxxx乱大交退制版| 成人永久免费视频| 成人午夜视频网站| 国产精品一线二线三线精华| 日韩高清电影一区| 亚洲午夜影视影院在线观看| 成人免费在线视频观看| 国产视频一区二区三区在线观看| 精品蜜桃在线看| 日韩一卡二卡三卡国产欧美| 欧美日韩亚洲另类| 欧美三级视频在线| 欧美综合在线视频| 欧美综合欧美视频| 欧美亚洲国产一区在线观看网站| 91污片在线观看| 91视视频在线观看入口直接观看www | 色噜噜狠狠色综合中国| 99精品视频在线免费观看| 国产成人在线免费观看| 国产一区二区三区精品欧美日韩一区二区三区 | 日本电影欧美片| 91免费观看视频在线| av电影在线观看一区| 不卡视频在线看| 欧美美女喷水视频| 8x福利精品第一导航| 欧美日韩一级视频| 91精品久久久久久久99蜜桃 | 国模大尺度一区二区三区| 久久精工是国产品牌吗| 久久91精品国产91久久小草| 激情综合五月婷婷| 国产成人鲁色资源国产91色综| 国产精品一线二线三线| av亚洲精华国产精华精| 色播五月激情综合网| 欧美日韩精品是欧美日韩精品| 欧美日韩免费一区二区三区| 91精品国产综合久久久久久久 | 亚洲美女一区二区三区| 一区二区在线观看视频在线观看| 亚洲国产日韩a在线播放性色| 天天综合天天做天天综合| 美美哒免费高清在线观看视频一区二区 | 国产精品99久久久久久久vr| www.视频一区| 欧美色爱综合网| 日韩精品专区在线影院观看| 久久久精品tv| 中文字幕制服丝袜一区二区三区| 夜夜嗨av一区二区三区网页| 日韩福利电影在线| 成人免费视频网站在线观看| 国产精品国产a级| 亚洲综合免费观看高清完整版在线 | 欧美va在线播放| 国产网红主播福利一区二区| ...av二区三区久久精品| 亚洲与欧洲av电影| 久久99国产精品成人| 白白色 亚洲乱淫| 欧美日韩国产一级| 欧美国产欧美亚州国产日韩mv天天看完整| 玉米视频成人免费看| 国产一区二区三区| 欧美日韩国产高清一区二区 | 91丨九色丨蝌蚪丨老版| 777亚洲妇女| 国产精品福利一区二区三区| 日韩福利电影在线| 99免费精品视频| 精品剧情在线观看| 亚洲午夜影视影院在线观看| 粉嫩av一区二区三区粉嫩 | 色婷婷av一区| 欧美精品一区二区在线播放| 一区二区三区久久| 国产大片一区二区| 日韩精品在线一区二区| 亚洲一区在线观看视频| 成人av在线一区二区| 欧美成人精品二区三区99精品| 亚洲韩国一区二区三区| 成人久久久精品乱码一区二区三区| 91精品在线麻豆| 亚洲一区av在线| 9i在线看片成人免费| 国产日韩av一区二区| 久久电影网电视剧免费观看| 欧美日韩电影在线| 一区二区三区精品在线| 粉嫩久久99精品久久久久久夜 | 欧美日韩亚州综合| 亚洲女与黑人做爰| 成人av资源站| 国产日产欧美一区二区三区| 精品中文字幕一区二区小辣椒| 欧美日韩不卡一区二区| 亚洲成人先锋电影| 欧美在线观看一区二区| 亚洲综合成人在线视频| 色菇凉天天综合网| 亚洲天堂网中文字| 不卡av电影在线播放| 国产精品女上位| 成人app下载| 亚洲私人黄色宅男| 色哟哟精品一区| 夜夜精品浪潮av一区二区三区| 97aⅴ精品视频一二三区| 亚洲欧洲日韩综合一区二区| 国产成人av影院| 中文字幕免费不卡| 成人va在线观看| 日韩美女视频一区| 欧美午夜影院一区| 亚洲18影院在线观看| 9191成人精品久久| 另类欧美日韩国产在线| 精品久久久久久久久久久院品网| 精品制服美女丁香| 欧美精品一区二区三区四区| 国产精品一级二级三级| 国产欧美一区二区三区沐欲| 懂色av中文一区二区三区 | 亚洲最新在线观看| 欧美撒尿777hd撒尿| 日韩和欧美一区二区三区| 日韩亚洲欧美一区| 国产精品亚洲视频| 尤物视频一区二区| 欧美色图在线观看| 蜜桃视频在线观看一区二区| 精品美女被调教视频大全网站| 国产精品综合二区| 亚洲毛片av在线| 欧美一区午夜精品| 成人激情黄色小说| 亚洲香肠在线观看| 久久亚洲一区二区三区四区| 成人黄色国产精品网站大全在线免费观看| 亚洲人成伊人成综合网小说| 欧美精品成人一区二区三区四区| 狠狠久久亚洲欧美|