《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于脈動陣列的卷積計算模塊硬件設計
基于脈動陣列的卷積計算模塊硬件設計
2020年電子技術應用第1期
王春林,譚克俊
大連海事大學 信息科學技術學院,遼寧 大連116026
摘要: 針對FPGA實現卷積神經網絡中卷積計算的過程中,高并行度帶來長廣播、多扇入/扇出的數據通路問題,采用脈動陣列來實現卷積神經網絡中卷積計算模塊,將權重固定到每個處理單元中,并按照輸入和輸出特征圖的維度來設置脈動陣列的大小,最后通過Vivado高層次綜合實現卷積計算模塊的硬件設計。實驗結果表明,本設計在實現1級流水化時序要求的同時,具有較低的資源占用和良好的擴展性。
中圖分類號: TN402;TP391.41
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.191070
中文引用格式: 王春林,譚克俊. 基于脈動陣列的卷積計算模塊硬件設計[J].電子技術應用,2020,46(1):57-61.
英文引用格式: Wang Chunlin,Tan Kejun. Hardware design of convolution calculation module based on systolic array[J]. Application of Electronic Technique,2020,46(1):57-61.
Hardware design of convolution calculation module based on systolic array
Wang Chunlin,Tan Kejun
Information Science and Technology College,Dalian Maritime University,Dalian 116026,China
Abstract: Aiming at the long broadcast, much fan in/fan out data path problem brought by high parullelism in the process of the Field Programmable Gate Array(FPGA) to realize the convolution computation in convolutional neural network, this paper adopts pulse array to realize convolution calculation module of convolutional neural network, fixes weights to each processing unit, according to the dimension of the input and output characteristic figure sets to pulse array size, and finally by Vivado high level synthesis realizes convolution calculation module hardware design. The experimental results show that the design has low resource occupancy and good expansibility while realizing the time-series requirements of level 1 pipelining.
Key words : FPGA;systolic array;convolution computation;high level synthesis

0 引言

    在過去的幾年里,深度神經網絡(Deep Neural Network,DNN)在圖像分類、目標檢測[1]及圖像分割等領域起到十分重要的作用。這些使用的各種DNNs及其拓撲結構中,卷積神經網絡(Convolutional Neural Network,CNN)是其中最為常見的實現方式。目前在硬件加速方案中,主要有基于CPU、GPU以及FPGA三種主流方案??紤]到 CPU性能限制和GPU功耗高的問題,采用FPGA來實現卷積神經網絡成為了一種可行的實現方式,例如文獻[2]在FPGA中實現神經網絡目標檢測系統,其檢測速度與能效均優于CPU。采用傳統的Verilog HDL或者VHDL硬件描述語言實現卷積神經網絡較為困難[3],高層次綜合(High Level Synthesis,HLS)將C/C++代碼通過特定的編譯器轉化為相應的RTL級的代碼,降低了卷積神經網絡的開發難度,減少了卷積神經網絡的開發周期。

    使用FPGA實現卷積神經網絡中卷積計算模塊的過程中,通常采用循環平鋪和循環展開[4]的方式實現。這種方式以擴大并行度來達到網絡的時間復雜度。但是當輸入和輸出特征圖維度增加時,擴大并行度會帶來硬件設計中長廣播、多扇入/扇出的數據通路,導致卷積計算模塊無法在較高的主頻上運行。因此,很多神經網絡加速器都使用脈動陣列來優化加速器架構設計,如谷歌TPU加速器[5]、ShiDianNao加速器[6]等。而在這些加速器架構設計中大多是采用im2col[7]的方式,即將參與卷積計算的輸入特征圖和權重展開為兩個矩陣,然后進行矩陣乘法運算。這種實現方式因為卷積步長的存在而產生大量的數據重疊,不利于在FPGA的片上塊存儲器(Block RAM,BRAM)內進行存儲。

    為了解決上述存在的問題,本文提出一種基于脈動陣列的卷積計算模塊設計,將由并行展開所帶來的長數據通路變為每個處理單元的短數據通路;并按照存儲矩陣的坐標向卷積計算模塊中輸入特征圖數據,以解決im2col方式存在的數據重疊,不利于BRAM存儲的問題。整體設計使用Vivado HLS開發環境進行實現與優化。

1 本文工作

1.1 脈動陣列實現卷積計算模塊

    脈動陣列(Systiloc Array)[8]是1970年KUNG H T[9]提出的一種應用在片上多處理器的體系結構,由多個相同的、結構簡單的計算單元(Processing Element,PE)以網格狀形式連接而成,具有并行性、規律性和局部通信的特征。信號處理算法如卡爾曼濾波[10]和數值線性代數算法都可以用脈動陣列來實現。本文卷積計算模塊中采用的脈動陣列實現方式如圖1所示。

wdz5-t1.gif

    在圖1中,I表示輸入特征圖,W表示權重參數,O表示輸出特征圖,r、c分別表示特征圖的長和寬,m、n分別表示輸入特征圖與輸出特征圖的層數。在開始進行卷積運算之前,將特征圖數據輸入到BRAM中進行緩存,將權重輸入到每個PE中進行緩存。開始計算之后,輸入緩存中的數據沿脈動陣列的列方向進行傳輸,PE計算的結果沿脈動陣列行方向進行傳輸。非第0列的PE按照公式(1)進行計算:

     wdz5-gs1.gif

式中PEin表示從輸入緩存或者上一個PE讀取輸入數據,W表示PE緩存的權重數據,PEout表示每個PE儲存的計算結果,cho與chi分別表示當前PE的行列坐標。第0列的PE只進行乘法運算。在每一行PE的末尾處連接一個result緩存,用來累加和存儲每行最后一個PE輸出的結果,并在完成一個卷積核運算之后將存儲結果輸出到輸出緩存中。本文脈動陣列結構設置為矩形脈動陣列,長和寬分別以輸入特征圖和輸出特征圖的層數來部署,并且每個PE在一個時鐘周期內進行一個乘法和加法運算,根據這個條件可以得到所有PE完成計算所需要的時間計算公式:

    wdz5-gs2.gif

式中,Tsum表示完成所有輸出特征圖的計算所需要的時間,R、C分別表示輸出特征圖的長和寬,Cin、Cout分別表示輸入特征圖層數和輸出特征圖層數,K表示卷積核的邊長,Tprc表示每個時鐘周期所需要的時間。如果R和C的大小設置為5,Cin和Cout分別設置為3和8,K設置為3,Tprc為10 ns,根據公式(2)可以得到理論上需要的時間為2 340 ns。

1.2 卷積計算模塊硬件設計

    根據1.1節中脈動陣列在卷積計算模塊中的實現方式,在Vivado HLS開發環境上對卷積計算模塊進行設計。卷積計算模塊分為三個部分:輸入階段、計算階段和累加輸出階段。

    輸入階段的流程圖如圖2所示,圖中in(chi,ir,ic)表示BRAM存儲的輸入特征圖,ir、ic分別表示特征圖的長和寬。mid_in(cho,chi)和mid_out(cho,chi)分別表示每一個PE中的輸入和輸出緩存,CHI表示輸入特征圖的層數,CHO表示輸出特征圖層數,COUNT表示一個PE需要進行卷積運算的次數。chi、cho、loc表示三個變量,分別表示脈動陣列的列坐標、行坐標以及運行計數。根據圖2中的運行方式,每經過一個時鐘周期,位于脈動陣列非0列的mid_in會從上一個相同行的mid_in中讀取輸入數據。位于脈動陣列的第0列的mid_in,會根據運行狀態判斷是否需要從BRAM中讀取輸入特征圖數據。

wdz5-t2.gif

    計算階段的流程圖如圖3所示,其中weight(cho,chi,kr,kc)表示緩存到PE中權重參數,kr、kc分別表示卷積核的列坐標與行坐標。當輸入階段結束之后,進入計算階段。位于脈動陣列非0排的mid_out會將mid_in中的數據與weight中的數據做乘法,再和上一個相同列的mid_out中的輸出數據做加法。位于脈動陣列第0排的mid_out則只做一次乘法。PE計算結果保存在當前mid_out中。

wdz5-t3.gif

    累加輸出階段的流程圖如圖4所示,圖中out(cho,r,c)表示BRAM中輸出特征圖緩存,r、c分別表示輸出特征圖的列坐標與行坐標。result表示輸出緩存到BRAM之間的累加寄存器,用來將脈動陣列末尾行PE的結果進行累加,k表示寄存器運行的累加次數。當一個卷積核運算完成之后,將結果按照當前的行列坐標輸出到BRAM中的out緩存中,之后result寄存器清零,繼續下一次累加計算。

wdz5-t4.gif

    在這三個階段運行過程中,希望在每一個時鐘周期內,當前PE可以從外部或者相鄰的PE中讀取一個數據進行乘加計算。因此使用#pragma HLS PIPELINE管道操作優化指令,并設置流水為1級流水,保證每個時鐘內都能夠開啟一次新的計算。在使用流水化操作之后,為了保證在輸入階段和計算階段的數據不會被覆蓋,采用移位寄存器的運行方式,由末尾的PE開始依次從相鄰的上一個PE讀取數據,新數據最后再進行輸入。

    同時,因為采用將權重固定到PE中的計算模式,所以將In和Out以數組的形式存放到BRAM中。因為每個BRAM最大可配置的輸入輸出端口數為2,所以當同時從BRAM中輸入輸出數量大于2時,就需要等待上一個操作結束之后,再執行下一個操作,這樣就無法達到1級流水所需要的時間間隔。因此使用#pragma HLS ARRAY_PARTITION variable=<variable> complete dim=X指令,其中<variable>表示需要展開的數組名,X表示需要展開的數組維度,將in(chi,ir,ic)和out(cho,r,c)按照第一個維度展開成多個數組,來匹配脈動陣列的輸入與輸出。

2 實驗結果與分析

    本文在Vivado HLS 18.3開發環境上進行綜合與仿真,使用的FPGA芯片型號為賽靈思公司的xc7z020clg484-1,運行時鐘為100 MHz。使用輸入特征圖7×7大小的3層矩陣,得到的輸出特征圖為5×5的8層矩陣。卷積核采用8×3組大小為3×3的矩陣。單個PE的功能仿真波形如圖5所示。

wdz5-t5.gif

    其中,din0和din1分別表示輸入特征圖和權重數據,din2表示從上一個相鄰PE中讀取的計算結果。dout表示乘加計算之后的結果,d0表示result寄存器中的輸入數據,q0表示result寄存器的輸出數據。由于本文采用的時鐘頻率為100 MHz,每個時鐘周期為10 ns。從圖5中可以看出,當ce0信號置1時,表示開始進行運算。之后在每一個時鐘周期內,都進行一次乘加運算,并將結果通過dout進行輸出。因為采用1級流水優化指令,dout輸出的結果將會在下一個時鐘周期輸出到d0。然后進行累加操作。當完成3×3次加法運算,輸出標志位we0信號置1,然后result寄存器將當前的d0結果按照address0的地址通過q0輸出到指定BRAM上的輸出緩存中。然后d0清零,等待下一次計算開始。

    卷積計算模塊的輸出波形如圖6所示。從圖中可以看出,在ap_start使能信號置1之后,經過17個時鐘周期得到輸出結果。從開始輸出結果,到輸出完成,一共經過234個時鐘周期,也就是2 340 ns,與公式(2)中計算結果相同。

wdz5-t6.gif

    卷積計算模塊的總體時延如表1所示,從表中可以看出,每次計算PE需要17個時鐘周期才能夠得到結果。在使用了流水化操作,并且達到了1級流水的目標之后,每個時鐘周期都會開啟一個新的循環,PE無需等待到計算出結果就可以進行下一個循環。與圖6中的波形結果相同。

wdz5-b1.gif

    表2所示為卷積計算模塊的總體資源消耗,卷積計算的核心就是乘法運算。賽靈思xc7z020clg484-1型FPGA芯片內置了DSP48核,可同時進行一組乘法和加法運算。根據卷積模塊的設計,每一個PE使用一個DPS48核進行乘加計算。在CHI為3,CHO為8的情況下,一共需要24個DPS48核,與表中使用資源情況相符。觸發器和查找表資源使用也較少,為之后擴大卷積計算模塊和設計卷積神經網絡其余模塊預留了充足的資源。

wdz5-b2.gif

3 結論

    卷積神經網絡中存在著大量的卷積計算,本文在資源使用情況較少的情況下,基于脈動陣列的運行方式,對并行展開的卷積計算模塊進行改進,然后通過Vivado HLS在賽靈思xc7z020clg484-1型FPGA芯片上進行實現。在后續的研究中,可以將脈動陣列與循環展開和循環平鋪等并行展開方式相結合,從提高運行速度與降低使用資源上進一步提升卷積計算模塊的性能。

參考文獻

[1] 張杰,隋陽,李強,等.基于卷積神經網絡的火災視頻圖像檢測[J].電子技術應用,2019,45(4):34-38,44.

[2] 陳辰,嚴偉,夏珺,等.基于FPGA的深度學習目標檢測系統的設計與實現[J].電子技術應用,2019,45(8):40-43,47.

[3] Zhang Xiaofan,Wang Junson,Zhu Chao,et al.DNN-Builder:an automated tool for building high-performance DNN hardware accelerators for FPGAs[C].Proceedings of the International Conference on Computer-Aided Design.ACM,2018.

[4] Zhang Chen,Li Peng,Sun Guangyu,et al.Optimizing fpga-based accelerator design for deep convolutional neural networks[C]. Proceedings of the 2015 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays.ACM,2015.

[5] JOUPPI N P,YOUNG C,PATIL N,et al.In-datacenter performance analysis of a tensor processing unit[C].2017 ACM/IEEE 44th Annual International Symposium on Computer Architecture(ISCA).IEEE,2017.

[6] Chen Tianshi,Du Zidong,Sun Ninghui,et al.Diannao:a small-footprint high-throughput accelerator for ubiquitous machine-learning[C].ACM Sigplan Notices.ACM,2014:269-284.

[7] HU Y H,KUNG S Y.Systolic arrays.in:handbook of signal processing systems[M].Springer,Cham,2019:939-977.

[8] SANAULLAH A,HERBORDT M C.Unlocking performance-programmability by penetrating the Intel FPGA OpenCL Toolflow[C]. 2018 IEEE High Performance Extreme Computing Conference(HPEC).IEEE,2018.

[9] KUNG H T,LEISERSON C E.Systolic arrays(for VLSI)[C].Sparse Matrix Proceedings 1978,Society for Industrial and Applied Mathematics,1979.

[10] 王陽,陶華敏,肖山竹,等.基于脈動陣列的矩陣乘法器硬件加速技術研究[J].微電子學與計算機,2015,32(11):120-124.



作者信息:

王春林,譚克俊

(大連海事大學 信息科學技術學院,遼寧 大連116026)

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          一区免费视频| 国产精品视频久久| 亚洲一二区在线| 一本在线高清不卡dvd| 韩国v欧美v日本v亚洲v| 日韩性生活视频| 久久综合导航| 久久亚洲高清| 嫩草伊人久久精品少妇av杨幂| 国产精品videossex久久发布| 欧美精品一区在线| 国产精品一香蕉国产线看观看| 亚洲综合成人在线| 亚洲美女视频在线免费观看| 国产婷婷色一区二区三区| 亚洲卡通欧美制服中文| 亚洲免费影院| 91久久国产精品91久久性色| 国产精品99久久久久久人| 久久疯狂做爰流白浆xx| 国产精品久久久久久av福利软件| 亚洲一二区在线| 日韩一区二区福利| 亚洲视频二区| 久久久久久久综合日本| 亚洲欧洲日本专区| 国产自产v一区二区三区c| 一区精品久久| 久久综合网络一区二区| 欧美日本在线一区| 欧美精品在线视频观看| 国产欧美va欧美不卡在线| 亚洲区第一页| 国产女主播一区二区三区| 一本色道精品久久一区二区三区| 亚洲第一中文字幕在线观看| 国产精品区一区二区三区| 91久久精品国产91性色| 久久国产天堂福利天堂| 久久久久久一区二区| 91久久精品www人人做人人爽| 国产精品国产三级国产专播精品人| 欧美日韩成人免费| 在线观看91久久久久久| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美xart系列高清| 一区二区久久久久久| 国产精品素人视频| 一区二区欧美国产| 黑人中文字幕一区二区三区| 久久精品国产清自在天天线| 欧美电影免费观看高清完整版| 午夜精品久久一牛影视| 欧美日韩天天操| 欧美日韩不卡视频| 黑人巨大精品欧美一区二区| 久久视频精品在线| 一区在线视频观看| 久久精品99无色码中文字幕| 欧美日韩一二三区| 欧美jizz19性欧美| 国产在线播放一区二区三区| 美女图片一区二区| 国产日韩欧美黄色| 亚洲裸体俱乐部裸体舞表演av| 亚洲国产第一页| 在线精品亚洲一区二区| 宅男噜噜噜66一区二区| 久久国产精品久久w女人spa| 依依成人综合视频| 欧美午夜不卡在线观看免费| 欧美午夜视频在线观看| 99精品国产热久久91蜜凸| 欧美一区激情视频在线观看| 国产精品麻豆欧美日韩ww| 国产欧美一区二区精品婷婷| 亚洲一区二区在线视频| 国产精品丝袜久久久久久app| 日韩视频永久免费| 欧美亚洲成人精品| 国产视频一区在线| 欧美一区二区三区免费观看视频| 国产亚洲一级高清| 在线亚洲欧美视频| 国模套图日韩精品一区二区| 在线观看视频一区| 亚洲砖区区免费| 久久久久国色av免费观看性色| 91久久夜色精品国产网站| 欧美日韩中文字幕精品| 在线成人国产| 亚洲第一搞黄网站| 亚洲欧洲日韩综合二区| 国产精品在线看| 欧美日韩视频在线观看一区二区三区| 亚洲精品一区二区三区在线观看| 久久国产精品99国产精| 国产专区综合网| 国产主播喷水一区二区| 久久亚洲国产精品一区二区| 国产农村妇女精品一区二区| 亚洲精品在线观| 国产精品免费观看视频| 国产精品久久波多野结衣| 国产精品国产三级国产普通话蜜臀| 香蕉久久夜色精品| 亚洲图片在线| 久久综合伊人77777麻豆| 国产精品久久久久久久久久ktv| 欧美在线观看一区二区| 国产精品国色综合久久| 国产一区二区三区高清在线观看| 中文精品99久久国产香蕉| 亚洲日本欧美日韩高观看| 欧美成人午夜免费视在线看片| 亚洲欧美日韩精品一区二区| 欧美久久久久久久久| 欧美日韩午夜精品| 国产精品99久久99久久久二8| 亚洲国产精品久久91精品| 国产一区二区久久精品| 午夜精品久久久久久久蜜桃app| 亚洲欧美日本国产有色| 国产一区91精品张津瑜| 欧美电影免费观看| 欧美日韩亚洲一区二区三区| 国产精品免费aⅴ片在线观看| 国产精品免费观看视频| 在线视频免费在线观看一区二区| 久久琪琪电影院| 亚洲精品久久久久久一区二区| 你懂的国产精品| 午夜久久久久久久久久一区二区| 亚洲电影专区| 国产精品女同互慰在线看| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲欧美日韩国产另类专区| 久久精品国产清自在天天线| 免费看黄裸体一级大秀欧美| 日韩视频专区| 狠狠综合久久av一区二区老牛| 老牛嫩草一区二区三区日本| 亚洲精品一区在线观看香蕉| 国产精品一区一区三区| 欧美精品成人一区二区在线观看| 亚洲欧美日韩国产另类专区| 国产欧美精品在线播放| 一区二区免费在线播放| 欧美日韩另类丝袜其他| 国产日产欧产精品推荐色| 在线一区二区三区四区| 国产日韩欧美在线一区| 最新亚洲一区| 国产精品男人爽免费视频1| 美女黄色成人网| 久久久久久91香蕉国产| 亚洲第一精品福利| 老司机午夜精品| 欧美日韩日韩| 亚洲精品乱码久久久久久按摩观| 亚洲一品av免费观看| 影音先锋欧美精品| 老司机一区二区| 欧美大片在线看免费观看| 亚洲欧美国产制服动漫| 欧美—级a级欧美特级ar全黄| 1024成人网色www| 国产精品久久久久国产a级| 国产视频欧美| 激情五月婷婷综合| 亚洲美女中出| 亚洲国产裸拍裸体视频在线观看乱了| 欧美日韩黄色一区二区| 久久疯狂做爰流白浆xx| 欧美暴力喷水在线| 午夜久久tv| 国产精品久久久久久久久久妞妞| 国产精品私房写真福利视频| 韩日精品视频一区| 亚洲欧美三级伦理| 国产精品一区二区三区成人| 欧美性猛交xxxx免费看久久久| 夜夜嗨一区二区三区| 在线观看一区视频| 性高湖久久久久久久久| 国产精品久久久久999| 亚洲乱亚洲高清| 欧美成人精品在线观看| 激情久久影院| 最新日韩av| 亚洲欧美日韩一区| 国产女主播视频一区二区| 国产日韩欧美视频| 国产精品久久久久久久久久三级| 久久精品免费| 亚洲欧美视频在线观看| 国产精品无码专区在线观看| 久久久精品视频成人| 一区二区三区免费看| 国产精品二区在线观看| 国产精品久久久久影院色老大| 欧美日韩在线三区| 国产精品女同互慰在线看| 伊人狠狠色j香婷婷综合| 欧美无乱码久久久免费午夜一区| 欧美日韩一区二区三区在线观看免| 欧美韩日一区二区三区| 久久久久一区二区三区四区| 亚洲国产精品久久久久秋霞蜜臀| 午夜久久久久| 性欧美videos另类喷潮| 亚洲自拍偷拍一区| 欧美视频在线观看一区| 欧美日韩中文字幕综合视频| 在线精品亚洲| 亚洲影院在线| 国产三级精品三级| 欧美国产综合视频| 一区二区久久久久久| 在线播放视频一区| 午夜在线电影亚洲一区| 亚洲美女精品一区| 葵司免费一区二区三区四区五区| 亚洲免费观看视频| 国产一区二区三区在线观看网站| 久久免费午夜影院| 国产精品一国产精品k频道56| 国产精品jvid在线观看蜜臀| 激情成人综合| 亚洲电影第三页| 欧美精品久久久久久久| 欧美freesex8一10精品| 久久综合久久综合久久| 99精品视频免费全部在线| 欧美在线亚洲一区| 国产精品国产三级国产普通话蜜臀| 在线观看欧美精品| 亚洲伦理在线观看| 久久影院午夜片一区| 欧美福利视频在线观看| 99热这里只有精品8| 欧美日韩第一区| 久久九九有精品国产23| 久久国产精品电影| 欧美日韩国产免费| 国产欧美日韩不卡免费| 亚洲高清一二三区| 国产精品日韩一区| 久久久激情视频| 国产一区二区三区黄| 精品成人国产在线观看男人呻吟| 欧美一级午夜免费电影| 亚洲国产另类 国产精品国产免费| 久久精品主播| 亚洲国产另类久久精品| 久久只有精品| 国产欧美亚洲一区| 欧美日本在线视频| 欧美a级理论片| 亚洲欧美精品伊人久久| 久久理论片午夜琪琪电影网| 亚洲成在人线av| 国产精品美女久久久久久久| 免费中文字幕日韩欧美| 国产精品女人网站| 午夜精品免费视频| 亚洲精品日韩精品| 黄色亚洲免费| 国产精品一区二区在线观看不卡| 激情欧美一区二区三区在线观看| 亚洲午夜精品17c| 快射av在线播放一区| 黑人操亚洲美女惩罚| 亚洲国产成人精品女人久久久| 亚洲女性裸体视频| 亚洲精品一区二区三区在线观看| 亚洲高清资源| 免费视频一区二区三区在线观看| 欧美jizzhd精品欧美巨大免费| 99www免费人成精品| 国产欧美一区二区精品性| 久久久精品一区| 蜜桃精品久久久久久久免费影院| 韩国av一区二区三区在线观看| 欧美三级免费| 欧美一区2区视频在线观看| 欧美日韩高清一区| 欧美与黑人午夜性猛交久久久| 久久国产精品99久久久久久老狼| 国产精品黄页免费高清在线观看| 国产伦精品一区二区三| 一区二区三区国产在线观看| 久久精品国产77777蜜臀| 亚洲欧美成人网| 国产精品影音先锋| 免费久久久一本精品久久区| 国内自拍视频一区二区三区| 亚洲精品黄网在线观看| 久久久久久噜噜噜久久久精品| 亚洲免费精品| 日韩视频在线观看| 激情欧美一区| 久久久久久久999| 欧美日韩国产一区二区三区地区| 亚洲免费视频一区二区| 亚洲日本在线视频观看| 欧美噜噜久久久xxx| 亚洲自拍高清| 亚洲一本大道在线| 一区在线影院| 欧美日韩一区二区三区高清| 国产一级一区二区| 久久精品一区二区国产| 午夜精品www| 国产精品亚洲精品| 久久婷婷国产综合精品青草| 久久九九精品99国产精品| 99精品欧美一区二区三区| 在线欧美小视频| 久久综合网色—综合色88| 国产婷婷97碰碰久久人人蜜臀| 欧美福利视频在线观看| 美女视频网站黄色亚洲| 欧美精品一卡二卡| 欧美日韩美女一区二区| 欧美亚洲综合网| 久久精品国产亚洲aⅴ| 免费不卡视频|