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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fft_ctrl.v

?? rtl實現的fft變換
?? V
字號:
// FFT controll

// point=512
//`define THE_LAST_STAGE 4'b1000   // 9-1=8
//`define THE_LAST_BFLY  8'hFF     // 512/2-1=255
//point = 2048
//`define THE_LAST_STAGE 4'b1010;   // point=2048
//`define THE_LAST_BFLY  10'h3FF;   // 2048/2-1=1023


module fft_ctrl (
  rst,
  clk,
  frame_in_dav,
  frame_in_enb,
  frame_in_sop,
  frame_out_dav,
  frame_out_enb,
  frame_out_sop,
  frame_out_eop,

  ram_up_wen,
  ram_up_ren,
  ram_up_waddr,
  ram_up_raddr,

  ram_dn_wen,
  ram_dn_ren,
  ram_dn_waddr,
  ram_dn_raddr,
   
  rom_ren,
  rom_raddr,
  
  ram_up_wsel,
  ram_up_rsel,
  frame_input_on,   // to input multiplexer
  ram_rdata_valid,
  wr_stage_cmplt,
  bfly_finish
);

input rst, clk;
input frame_in_dav, frame_out_dav;
output frame_in_enb,frame_out_enb;
input frame_in_sop;
output frame_out_sop, frame_out_eop;
output ram_up_wen, ram_up_ren;
output [9:0] ram_up_waddr, ram_up_raddr;
output ram_dn_wen, ram_dn_ren;
output [9:0] ram_dn_waddr, ram_dn_raddr;
output rom_ren;
output [9:0] rom_raddr;
output ram_up_wsel;
output ram_up_rsel;
output frame_input_on;
output ram_rdata_valid;
output wr_stage_cmplt, bfly_finish;

reg frame_in_enb, frame_out_enb;
reg frame_out_sop, frame_out_eop;
wire ram_up_wsel;
reg ram_up_rsel;
wire frame_input_on;
reg ram_rdata_valid;
wire wr_stage_cmplt;
wire bfly_finish;

//=================================================
// Input control
//=================================================
reg ram_full;
reg [10:0] frame_in_cnt;  //2^11= 2048
reg frame_in_cnt_enb;
wire frame_in_eop;

always @(posedge rst or posedge clk) begin
  if(rst)
	  ram_full <= 1'b0;
  else if(frame_in_eop)
	  ram_full <= 1'b1;
  else if(frame_out_eop)
	  ram_full <= 1'b0;
end

always @(posedge rst or posedge clk) begin
  if(rst)
	  frame_in_enb <= 1'b0;
  else if(frame_in_eop)
	  frame_in_enb <= 1'b0;
  else if(frame_in_dav && !ram_full)
	  frame_in_enb <= 1'b1;
end

always @(posedge rst or posedge clk) begin
  if(rst)
	  frame_in_cnt_enb <= 1'b0;
  else if(frame_in_eop)
	  frame_in_cnt_enb <= 1'b0;
  else if(frame_in_enb && frame_in_sop)
	  frame_in_cnt_enb <= 1'b1;
end

// input switch control
assign frame_input_on = frame_in_sop | frame_in_cnt_enb;

// fram_in_cnt
always @(posedge rst or posedge clk) begin
  if(rst)
	  frame_in_cnt <= 11'h0;  // point=2048
  else if(frame_in_enb && frame_input_on)
	  frame_in_cnt <= frame_in_cnt + 1'b1;
end

assign frame_in_eop = (frame_in_cnt==11'h7FF);  // 2^11=2048

// input writing address
wire [10:0] ram_input_addr;

assign ram_input_addr = { frame_in_cnt[0],
	                  frame_in_cnt[1],
	                  frame_in_cnt[2],
	                  frame_in_cnt[3],
	                  frame_in_cnt[4],
	                  frame_in_cnt[5],
	                  frame_in_cnt[6],
	                  frame_in_cnt[7],
	                  frame_in_cnt[8],
	                  frame_in_cnt[9],
	                  frame_in_cnt[10]
			 };

//=================================================
// RAM read control in butterfly
//=================================================
reg [13:0] rd_cnt;
reg rd_cnt_enb;
wire [3:0] rd_stage;
wire [9:0] rd_index;
wire rd_index_eop;
wire rd_stage_eop;
reg [2:0] stage_end_delay;
reg rd_cnt_wait;

always @(posedge rst or posedge clk) begin
  if(rst)
	rd_cnt <= 14'h0;
  else if(frame_in_eop)
	rd_cnt <= 14'h0;
  else if(rd_cnt_enb && !rd_cnt_wait )
	rd_cnt <= rd_cnt + 1'b1;
end

assign rd_stage = rd_cnt[13:10];
assign rd_index = rd_cnt[9:0];

assign rd_index_eop = (rd_index==10'b11_1111_1111) && rd_cnt_enb;    // the last butterfly in the stage  
assign rd_stage_eop = (rd_stage==4'b1010) && rd_index_eop;    // the last stage 11-1=10

always @(posedge rst or posedge clk) begin
  if(rst)
	  stage_end_delay <= 3'b111;
  else if(rd_index_eop)            
	  stage_end_delay <= 3'b000;
  else if(stage_end_delay!=3'b111)
	  stage_end_delay <= stage_end_delay + 1'b1;
end 

always @(posedge rst or posedge clk) begin
  if(rst)
	  rd_cnt_wait <= 1'b0;
  else if(rd_index_eop)            
	  rd_cnt_wait <= 1'b1;
  else if(stage_end_delay==3'b101)  // end of writing delay 6clk(0~5)
	  rd_cnt_wait <= 1'b0;
end 

always @(posedge rst or posedge clk) begin
  if(rst)
	rd_cnt_enb <= 1'b0;
  else if(frame_in_eop)
	rd_cnt_enb <= 1'b1;
  else if(rd_stage_eop )
	rd_cnt_enb <= 1'b0;
end

//-------------------------------------------------
// map the RAM read address
reg [9:0] raddr_up;  //1024
wire [9:0] raddr_dn;
wire ren_up;
wire ren_dn;

assign ren_up = rd_cnt_enb & ~rd_cnt_wait;

// circle left shift
always @(rd_stage or rd_index) begin
	case(rd_stage)
        	4'b0000,
		4'b1010: raddr_up <= rd_index[9:0];
        	4'b0001: raddr_up <= {rd_index[8:0],rd_index[9]};
        	4'b0010: raddr_up <= {rd_index[7:0],rd_index[9:8]};
        	4'b0011: raddr_up <= {rd_index[6:0],rd_index[9:7]};
        	4'b0100: raddr_up <= {rd_index[5:0],rd_index[9:6]};
        	4'b0101: raddr_up <= {rd_index[4:0],rd_index[9:5]};
        	4'b0110: raddr_up <= {rd_index[3:0],rd_index[9:4]};
        	4'b0111: raddr_up <= {rd_index[2:0],rd_index[9:3]};
        	4'b1000: raddr_up <= {rd_index[1:0],rd_index[9:2]};
        	4'b1001: raddr_up <= {rd_index[0],rd_index[9:1]};
        	default: raddr_up <= 10'b00_0000_0000;
	endcase
end

assign ren_dn = ren_up;
assign raddr_dn = raddr_up;

//=================================================
// RAM write control in butterfly
//=================================================
reg [13:0] wr_cnt;
reg wr_cnt_enb;
wire [3:0] wr_stage;
wire [9:0] wr_index;
wire wr_index_sop;
wire wr_index_eop;
wire wr_stage_eop;
reg [2:0] stage_start_delay;
reg wr_cnt_wait;

wire wen_up;
reg wen_dn;

always @(posedge rst or posedge clk) begin
  if(rst)
	wr_cnt <= 14'h0;
  else if(frame_in_eop)   // cleared by input finish
	wr_cnt <= 14'h0;
  else if(wr_cnt_enb && !wr_cnt_wait )
	wr_cnt <= wr_cnt + 1'b1;
end

assign wr_stage = wr_cnt[13:10];
assign wr_index = wr_cnt[9:0];

assign wr_index_sop = ((stage_end_delay==3'b101) && wr_cnt_enb) || frame_in_eop;   // the last butterfly in the stage 

assign wr_index_eop = (wr_index==10'b11_1111_1111) && wr_cnt_enb;
assign wr_stage_eop = (wr_stage==4'b1010) && wr_index_eop; // 11-1=10  

always @(posedge rst or posedge clk) begin
  if(rst)
	  stage_start_delay <= 3'b111;
  //else if(wr_index_sop || frame_in_eop)  // the start of each write stage or the end of frame_in   
  else if(wr_index_sop)  // the start of each write stage or the end of frame_in   
	  stage_start_delay <= 3'b000;
  else if(stage_start_delay!=3'b111)
	  stage_start_delay <= stage_start_delay + 1'b1;
end 

always @(posedge rst or posedge clk) begin
  if(rst)
	  wr_cnt_wait <= 1'b0;
  else if(wr_index_eop || frame_in_eop)            
	  wr_cnt_wait <= 1'b1;
  else if(stage_start_delay==3'b100)  // end of writing delay 5clk(0~4)
	  wr_cnt_wait <= 1'b0;
end 

always @(posedge rst or posedge clk) begin
  if(rst)
	wr_cnt_enb <= 1'b0;
else if(frame_in_eop)
	wr_cnt_enb <= 1'b1;
  else if(wr_stage_eop )  // the last writing stage
	wr_cnt_enb <= 1'b0;
end

assign wen_up = wr_cnt_enb & ~wr_cnt_wait;

always @(posedge rst or posedge clk) begin
  if(rst)
	  wen_dn <= 1'b0;
  else 
	  wen_dn <= wen_up;  // 1clk dealy
end 

//assign ram_up_wsel = ~wr_cnt[0] & wen_up;
//assign ram_up_wsel = ~wr_cnt[0] & wen_up & ~wr_index_eop;  // avoid glach at the end of every stage
assign ram_up_wsel = ~wr_cnt[0] & (wen_up | wen_dn); 

//-------------------------------------------------
// map the RAM write address
reg [9:0] waddr1, waddr2;

always @(wr_stage or wr_index) begin
	case(wr_stage)
        	4'b0000,4'b1010: begin
			waddr1 <= {wr_index[9:1],1'b0};
			waddr2 <= {wr_index[9:1],1'b1};
		end
        	4'b0001: begin
			waddr1 <= {wr_index[8:1],1'b0,wr_index[9]};
			waddr2 <= {wr_index[8:1],1'b1,wr_index[9]};
		end
        	4'b0010: begin
			waddr1 <= {wr_index[7:1],1'b0,wr_index[9:8]};
			waddr2 <= {wr_index[7:1],1'b1,wr_index[9:8]};
		end
        	4'b0011: begin
			waddr1 <= {wr_index[6:1],1'b0,wr_index[9:7]};
			waddr2 <= {wr_index[6:1],1'b1,wr_index[9:7]};
		end
        	4'b0100: begin
			waddr1 <= {wr_index[5:1],1'b0,wr_index[9:6]};
			waddr2 <= {wr_index[5:1],1'b1,wr_index[9:6]};
		end
        	4'b0101: begin
			waddr1 <= {wr_index[4:1],1'b0,wr_index[9:5]};
			waddr2 <= {wr_index[4:1],1'b1,wr_index[9:5]};
		end
        	4'b0110: begin
			waddr1 <= {wr_index[3:1],1'b0,wr_index[9:4]};
			waddr2 <= {wr_index[3:1],1'b1,wr_index[9:4]};
		end
        	4'b0111: begin
			waddr1 <= {wr_index[2:1],1'b0,wr_index[9:3]};
			waddr2 <= {wr_index[2:1],1'b1,wr_index[9:3]};
		end
        	4'b1000: begin
			waddr1 <= {wr_index[1],1'b0,wr_index[9:2]};
			waddr2 <= {wr_index[1],1'b1,wr_index[9:2]};
		end
        	4'b1001: begin
			waddr1 <= {1'b0,wr_index[9:1]};
			waddr2 <= {1'b1,wr_index[9:1]};
		end
        	default: begin
			waddr1 <= 10'b00_0000_0000;
			waddr2 <= 10'b00_0000_0000;
		end
	endcase
end

// waddr2 buffer
reg [9:0] waddr2_d1t_up, waddr2_d1t_dn;

always @(posedge rst or posedge clk) begin
  if(rst)
	waddr2_d1t_up = 10'h0;
  else if(!wr_cnt[0] && wr_cnt_enb)
	waddr2_d1t_up = waddr2;  // write after 1 clk delay
end

always @(posedge rst or posedge clk) begin
  if(rst)
	waddr2_d1t_dn = 10'h0;
  else if(wr_cnt[0] && wr_cnt_enb)
	waddr2_d1t_dn = waddr2;  // write after 1 clk delay
end

//=================================================
// output control
//=================================================
reg bfly_finish_flg;
reg [10:0] frame_out_cnt; //2^11=2048
reg frame_out_cnt_enb;
wire frame_out_cnt_sop;
wire frame_out_cnt_eop;

//assign bfly_finish = (wr_stage==4'b1000) && (waddr2_d1t_dn==8'b1111_1111);
assign bfly_finish = (wr_stage==4'b1010) && (waddr2==10'b11_1111_1111);

always @(posedge rst or posedge clk) begin
  if(rst)
	  bfly_finish_flg <= 1'b0;
  else if(bfly_finish)
	  bfly_finish_flg <= 1'b1;
  else if(frame_out_dav)
	  bfly_finish_flg <= 1'b0;
end
  
always @(posedge rst or posedge clk) begin
  if(rst)
	  frame_out_cnt_enb <= 1'b0;
  else if(frame_out_dav && bfly_finish_flg)
	  frame_out_cnt_enb <= 1'b1;
  else if(frame_out_cnt_eop)
	  frame_out_cnt_enb <= 1'b0;
end

assign frame_out_cnt_sop = (frame_out_cnt==11'h000) && frame_out_cnt_enb;
assign frame_out_cnt_eop = (frame_out_cnt==11'h7FF) && frame_out_cnt_enb;

always @(posedge rst or posedge clk) begin
  if(rst)
	  frame_out_cnt <= 11'h0;
  else if(frame_out_cnt_eop)
	  frame_out_cnt <= 11'h0;
  else if(frame_out_cnt_enb)
	  frame_out_cnt <= frame_out_cnt + 1'b1;
end

// delay 2clk output
reg frame_out_cnt_enb_d1t;
reg frame_out_cnt_sop_d1t;
reg frame_out_cnt_eop_d1t;

always @(posedge rst or posedge clk) begin
  if(rst) begin
	  frame_out_cnt_enb_d1t <= 1'b0;
	  frame_out_cnt_sop_d1t <= 1'b0;
	  frame_out_cnt_eop_d1t <= 1'b0;
	  frame_out_enb <= 1'b0;
	  frame_out_sop <= 1'b0;
	  frame_out_eop <= 1'b0;
  end
  else begin
	  frame_out_cnt_enb_d1t <= frame_out_cnt_enb;
	  frame_out_cnt_sop_d1t <= frame_out_cnt_sop;
	  frame_out_cnt_eop_d1t <= frame_out_cnt_eop;
	  frame_out_enb <= frame_out_cnt_enb_d1t;
	  frame_out_sop <= frame_out_cnt_sop_d1t;
	  frame_out_eop <= frame_out_cnt_eop_d1t;
  end
end


//=================================================
// RAM control output 
//=================================================
assign ram_up_ren = ren_up | (frame_out_cnt_enb & ~frame_out_cnt[0]);
assign ram_dn_ren = ren_dn | (frame_out_cnt_enb &  frame_out_cnt[0]);
assign ram_up_raddr = (frame_out_cnt_enb) ? {frame_out_cnt[9:1],frame_out_cnt[10]} : 
	                                    raddr_up;
assign ram_dn_raddr = (frame_out_cnt_enb) ? {frame_out_cnt[9:1],frame_out_cnt[10]} : 
	                                    raddr_dn;

assign ram_up_wen = (~ram_input_addr[0] & frame_input_on) | wen_up ; 
assign ram_dn_wen = ( ram_input_addr[0] & frame_input_on) | wen_dn ; 
assign ram_up_waddr = (frame_input_on) ? ram_input_addr[10:1] : 
	                                (wr_cnt[0]) ? waddr2_d1t_up : waddr1;
assign ram_dn_waddr = (frame_input_on) ? ram_input_addr[10:1] : 
	                                (wr_cnt[0]) ? waddr1 : waddr2_d1t_dn;

				
//=================================================
// map the ROM read address
//=================================================
reg rom_ren;
reg [10:0] right_shift;
reg [9:0] rom_raddr;
wire [9:0] rom_offset;
reg [9:0] tw_cnt;
wire [9:0] field_num;

always @(posedge rst or posedge clk) begin
  if(rst)
        rom_ren <= 1'b0;
  else if(stage_start_delay==3'b000)  // 1clk delay with ram_ren
        rom_ren <= 1'b1;
  else if(stage_end_delay==3'b000)
        rom_ren <= 1'b0;
end

always @(posedge rst or posedge clk) begin
  if(rst)
	right_shift <= 11'b000_0000_0000;
  else if(frame_in_eop)
	right_shift <= 11'b100_0000_0000;
  //else if(rd_index_eop)
  else if(stage_end_delay==3'b001)
	right_shift <= {1'b0,right_shift[10:1]};
end

assign rom_offset = right_shift[9:0];

assign field_num = rom_offset - 1'b1;

always @(posedge rst or posedge clk) begin
  if(rst) begin
	  tw_cnt <= 9'h0;
  end
  else begin 
	  if( (tw_cnt == field_num) && rom_ren )
	  	tw_cnt <= 9'h0;
	  else if (rom_ren)
	  	tw_cnt <= tw_cnt + 1'b1;
  end
end
	 
always @(posedge rst or posedge clk) begin
  if(rst)
	rom_raddr <= 10'b00_0000_0000;
  else if(frame_in_eop)
	rom_raddr <= 10'b00_0000_0000;
  else if(rom_ren && (tw_cnt == field_num) )
	rom_raddr <= rom_raddr + rom_offset;
end

//=================================================
// internal control out
//=================================================
reg frame_out_ram_up;

always @(posedge rst or posedge clk) begin
  if(rst)
	  ram_rdata_valid <= 1'b0;
  else if(stage_start_delay==3'b001) // 2clk delay after ram_ren
	  ram_rdata_valid <= 1'b1;
  else if(stage_end_delay==3'b001)
	  ram_rdata_valid <= 1'b0;
end 

assign wr_stage_cmplt = wr_index_eop;

always @(posedge rst or posedge clk) begin
  if(rst) begin
        frame_out_ram_up <= 1'b0;
	ram_up_rsel      <= 1'b0;
  end
  else begin
        frame_out_ram_up <= frame_out_cnt_enb & ~frame_out_cnt[0];
	ram_up_rsel      <= frame_out_ram_up;
  end
end

endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久久久图文区| 91免费看`日韩一区二区| 国产成人av在线影院| 久久久久久久久久久久久女国产乱 | 国产精品久久久久婷婷二区次| 精品一区二区国语对白| 国产精品欧美一区二区三区| 国产成人免费av在线| 亚洲丝袜精品丝袜在线| 色88888久久久久久影院按摩| 亚洲一区在线视频| 欧美一区二区三区视频在线观看| 免费亚洲电影在线| 国产精品国产三级国产有无不卡| 成人一区二区三区视频在线观看| 中文字幕不卡三区| 欧美日韩精品一区二区三区蜜桃 | 国产精品污网站| 欧美性受极品xxxx喷水| 日韩av电影天堂| 国产精品美女久久久久久| jlzzjlzz国产精品久久| 免费不卡在线视频| 一区二区三区在线视频观看58 | 国产在线精品一区二区不卡了 | 欧美日韩亚洲综合一区| 成人一道本在线| 激情综合网av| 久久99久久99小草精品免视看| 亚洲成av人片一区二区| 亚洲综合免费观看高清完整版在线 | 91成人免费网站| 色噜噜狠狠色综合中国| 欧美性大战xxxxx久久久| 欧美午夜精品一区| 欧美日韩国产a| 日韩欧美在线网站| 久久亚洲影视婷婷| 亚洲人成小说网站色在线 | 国产亚洲精品bt天堂精选| 日韩一区二区在线看| 久久久久久久性| 国产精品入口麻豆九色| 亚洲一区精品在线| 免费在线看成人av| 丁香啪啪综合成人亚洲小说| 高清不卡在线观看| 在线精品亚洲一区二区不卡| 欧美精品第一页| 国产精品色婷婷久久58| 亚洲欧美aⅴ...| 久久黄色级2电影| 美女诱惑一区二区| 久久国产日韩欧美精品| 97精品电影院| 欧美国产激情二区三区| 成人一区二区三区视频| 亚洲精品大片www| 久久久久高清精品| 成人免费在线观看入口| 亚洲日本青草视频在线怡红院 | 免费观看一级特黄欧美大片| 99精品视频在线观看免费| 精品卡一卡二卡三卡四在线| 男男视频亚洲欧美| 亚洲欧美偷拍另类a∨色屁股| 国产不卡视频一区二区三区| 亚洲成人精品在线观看| 日韩一区二区三区视频| 欧美日本高清视频在线观看| 国产成人小视频| 免费在线看一区| 亚洲精品老司机| 亚洲精品中文字幕乱码三区| 久久久久国产精品麻豆ai换脸| 国产成人综合精品三级| 日本91福利区| 日本欧美加勒比视频| 中文字幕电影一区| 91日韩精品一区| 日韩国产在线一| 久久理论电影网| 色婷婷综合久久久| 日韩国产一区二| 国产精品久久久久久户外露出| 成人h版在线观看| 日韩精品免费视频人成| 久久精品一区二区三区av| 在线一区二区视频| 国产成人啪午夜精品网站男同| 亚洲伦在线观看| 日韩成人av影视| av在线不卡观看免费观看| 久久精品国产**网站演员| 亚洲黄色免费电影| 国产欧美综合色| 精品第一国产综合精品aⅴ| 欧美日韩国产一级片| 91看片淫黄大片一级在线观看| 国产精品一线二线三线精华| 日韩精品成人一区二区在线| 亚洲精品成人少妇| 日韩一区在线播放| 国产精品国产自产拍在线| 久久久国产精品不卡| 精品噜噜噜噜久久久久久久久试看| 欧美人牲a欧美精品| 欧美午夜不卡视频| 在线亚洲一区二区| 在线精品视频一区二区三四| 99re视频精品| 91免费看视频| 色成年激情久久综合| 在线一区二区三区| 欧美日韩一区二区不卡| 欧美日韩在线播放三区四区| 欧美日韩久久久一区| 欧美日本高清视频在线观看| 欧美精品一卡二卡| 欧美一级视频精品观看| 欧美成人伊人久久综合网| 精品91自产拍在线观看一区| 久久久精品国产99久久精品芒果| 久久久久久亚洲综合| 国产视频一区二区三区在线观看| 欧美激情一区二区在线| 亚洲欧洲成人精品av97| 亚洲色图在线视频| 水野朝阳av一区二区三区| 青青草国产成人99久久| 激情综合一区二区三区| 顶级嫩模精品视频在线看| 99久久777色| 精品视频色一区| 欧美成人video| 中文字幕欧美区| 亚洲综合色网站| 蜜桃精品视频在线| 成人在线视频一区二区| 日本韩国欧美在线| 91精品婷婷国产综合久久竹菊| 精品99久久久久久| 亚洲欧洲精品天堂一级| 亚洲国产一区二区在线播放| 麻豆极品一区二区三区| 成人性生交大合| 欧美日韩国产另类不卡| 久久久www免费人成精品| 亚洲视频在线一区| 久久99精品久久久久久久久久久久| 粉嫩欧美一区二区三区高清影视| 欧美专区日韩专区| 久久影院视频免费| 一区二区在线观看av| 久久国产精品99久久人人澡| 99视频有精品| 精品国产一区二区三区久久久蜜月 | 久久久精品国产免大香伊| 亚洲人成影院在线观看| 国产一区二区三区免费| 欧美亚洲国产一区在线观看网站| 精品国产乱码久久久久久久久| 亚洲精品自拍动漫在线| 国产精品一区二区免费不卡 | www精品美女久久久tv| 亚洲一区二区四区蜜桃| 成人午夜激情片| 精品久久久久久最新网址| 亚洲综合自拍偷拍| 国产91露脸合集magnet| 欧美一个色资源| 亚洲一级电影视频| caoporn国产精品| 精品美女在线观看| 日本aⅴ亚洲精品中文乱码| 在线国产电影不卡| **网站欧美大片在线观看| 国产精品一区专区| 精品区一区二区| 日韩高清在线一区| 欧美性猛片aaaaaaa做受| 国产精品免费视频网站| 国产麻豆精品在线观看| 精品不卡在线视频| 美女视频网站久久| 5月丁香婷婷综合| 午夜伦欧美伦电影理论片| 91福利资源站| 一个色妞综合视频在线观看| 91麻豆6部合集magnet| 自拍av一区二区三区| 波多野结衣中文一区| 国产精品全国免费观看高清| 国产成a人亚洲精| 久久影院午夜片一区| 国产成人午夜99999| 国产色婷婷亚洲99精品小说| 国产精品中文字幕欧美| 亚洲国产精品二十页| 大尺度一区二区|