《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 一種基于FPGA的低功耗高速解碼器設計
一種基于FPGA的低功耗高速解碼器設計
2018年電子技術應用第4期
周松江,李圣辰,劉 明
北京郵電大學 信息光子學與光通信研究院,北京100876
摘要: 針對傳統編解碼算法復雜度高、不易擴展等問題,對自編碼神經網絡前向傳播算法和結構進行了研究,提出了一種以自編碼神經網絡為編解碼算法,以FPGA為實現平臺的低功耗高速解碼器系統。該系統實現了字符的編解碼,同時可被應用于各種多媒體信息的編解碼。通過ModelSim仿真,Xilinx ISE實現后進行硬件實測,對計算精度、資源消耗、計算速度和功耗等進行分析。實驗測試結果表明,所設計的解碼器能夠正確完成數據解碼功能,算法簡潔高效,擴展能力強,系統具有低功耗、速度快等特點,可廣泛應用于各種低功耗、便攜式產品。
中圖分類號: TN791;TP183
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.173486
中文引用格式: 周松江,李圣辰,劉明. 一種基于FPGA的低功耗高速解碼器設計[J].電子技術應用,2018,44(4):27-32.
英文引用格式: Zhou Songjiang,Li Shengchen,Liu Ming. A low power and high speed decoder design based on FPGA[J]. Application of Electronic Technique,2018,44(4):27-32.
A low power and high speed decoder design based on FPGA
Zhou Songjiang,Li Shengchen,Liu Ming
Institute of Information Photonics and Optical Communications,Beijing University of Posts and Telecommunications,Beijing 100876
Abstract: In view of the complexity and inflexibility of the traditional encoding and decoding algorithms, this paper studies the forward propagation algorithm and structure of autoencoder neural networks. A low power consumption and high speed decoder system is proposed, using the autoencoder neural network as the codec algorithm with FPGA implementation. The system realizes the decoding of characters, and can be applied to the decoding of various multimedia information. Through ModelSim simulation and Xilinx ISE implementation, the hardware measurement are carried out, and the calculation accuracy, resource consumption, calculation speed and power consumption are analyzed. Experimental results show that the designed decoder can decode data correctly, the algorithm is efficient, scalable, the proposed system has the characteristics of low power consumption and high speed, and it can be widely used in a variety of low power, portable products.
Key words : FPGA;decoder;autoencoder neural network;hardware implementation;high speed and low power consumption

0 引言

    計算機處理多媒體或文字信息的基礎是對相關信息進行編碼和解碼,以利于信息的傳輸、顯示和保護[1]。面對巨大信息量的處理需求,快速高效的編解碼系統能夠有效提高信息處理能力。近年來,隨著神經網絡的發展和應用,利用神經網絡進行數學函數回歸的方案,為信息的編解碼提供了簡單有效的途徑[2]。自編碼神經網絡是一種無監督的人工神經網絡,其利用反向傳播算法訓練使得網絡的輸出值等于輸入值,從而為輸入數據學習到一種特征表示,廣泛應用于圖像壓縮和數據降維等領域[3-4]。自編碼神經網絡輸出等于輸入的特點適合用于數據編碼和解碼,相比于傳統的編解碼方法,如熵編碼[5],該算法更簡潔高效,結構可擴展,實用性更強[3]。

    而隨著編解碼器在一些低功耗、便攜式產品中的應用,高速、高精度和低功耗已經成為編解碼器的一種發展趨勢?,F場可編程門陣列(Field Programmable Gate Array,FPGA)是一種可編程邏輯器件,用戶可通過硬件描述語言完成硬件電路設計。FPGA內部集成了具有高性能的數字信號處理器和大量存儲資源,可以高效低成本地實現定點運算和數據存儲,因此目前FPGA是一種理想的編解碼器實現平臺[5-6]。FPGA中各個硬件模塊并行執行,可將計算量大的算法映射到FPGA中實現硬件加速。有學者嘗試采用FPGA作為神經網絡的實現平臺,并取得了優異的性能,尤以速度和功耗突出[7-8]。綜上所述,基于自編碼神經網絡,以FPGA為實現平臺的編解碼系統,具有靈活性高、高速、低功耗等特點,可廣泛應用于各種低功耗、便攜式應用中。

    本文通過分析自編碼神經網絡的結構和特點,提出了一種用于數據解碼的硬件實現架構。根據網絡計算過程中包含的運算和神經元間的并行性特點,結合FPGA高并行、低功耗和高速數據處理的優勢,將自編碼神經網絡的解碼部分映射到FPGA中。該架構具有速度快、功耗低等特點,除文中論述的文字信息解碼外,該架構具備擴展到圖像編解碼的可能性。

1 自編碼神經網絡

    人工神經網絡是基于生物神經網絡的基本原理,通過模擬人腦神經系統的結構和功能而建立的一個數學模型,該模型擁有以任意精度逼近一個離散值、實數值或者目標函數的功能[9-10]。自編碼神經網絡是一種無監督的人工神經網絡,其采用反向傳播算法,通過學習試圖使得網絡的輸出值等于輸入值,從而為輸入數據學習到一種特征表示[3-4]

    自編碼神經網絡模型是一種對稱結構,中間為隱含層,輸入輸出層神經元節點數相等且通過訓練使得網絡輸出值和輸入值相等。如圖1所示為自編碼神經網絡的結構圖,輸入層和輸出層含有m個神經元,隱含層含有n個神經元,輸入層和隱含層下方的“+1”是偏置節點。自編碼神經網絡的輸入層到隱含層構成編碼器,隱含層到輸出層構成解碼器,對自編碼神經網絡的訓練過程就是通過調整編碼器和解碼器中的權值和偏置,使其逼近一個恒等函數,從而使得網絡輸出值等于輸入值,這樣網絡隱含層的輸出數據為原始輸入數據的另一種特征表示,即該數據經過自編碼神經網絡的解碼器可以恢復原始的輸入數據[11]。

wdz2-t1.gif

    在本文中,利用自編碼神經網絡的編碼器對輸入數據進行編碼,所得到隱含層的輸出數據稱為原始數據的編碼;該編碼數據經過自編碼神經網絡的解碼器實現數據解碼,從而恢復原始輸入數據。下面參照圖1所示的自編碼神經網絡結構,介紹自編碼神經網絡的前向計算過程,首先計算隱含層n個神經元的輸出如式(1):

    wdz2-gs1.gif

    輸出層m個神經元的輸出如式(2):

wdz2-gs2.gif

    通過對網絡前向計算過程式(1)和式(2)的分析可以看出:自編碼神經網絡對信息的處理為從輸入層開始,經過隱含層直到輸出層輸出為止,每一層各個神經元之間的計算具有獨立性和并行性;式(1)和式(2)的計算包括乘加運算和激勵函數運算,且兩者按照順序依次進行。

2 FPGA設計方案

    本章對基于FPGA的硬件解碼系統的設計需求進行分析,介紹整個系統的硬件架構設計、系統工作原理,最后對設計中的網絡計算模塊進行詳細介紹。

2.1 系統分析

    本文在FPGA中設計實現圖1所示自編碼神經網絡的解碼器部分,從而實現數據解碼功能。在軟件端對自編碼神經網絡進行訓練,得到網絡模型后將對現今最通用的單字節編碼ASCII碼歸一化后的數據輸入至自編碼神經網絡的編碼器以獲得編碼數據,最后將編碼數據送至FPGA端實現數據解碼以恢復原始輸入的ASCII碼。

    通過對自編碼神經網絡前向計算的分析,其計算過程中包括乘加運算和激勵函數運算,網絡每層中各個神經元之間的計算具有獨立性和并行性。而對編碼數據進行解碼操作的過程中,要求所設計的硬件系統具有實時性特點。FPGA作為一個分布式并行處理系統,其內部包含大量邏輯單元和計算單元,且具有可編程、速度快、靈活性高、易配置、設計周期短等特點,因此本文選用FPGA作為所設計數據解碼器的硬件實現平臺。

    所設計的解碼器為圖1所示自編碼神經網絡的隱含層到輸出層部分,其所包含的權值參數有n×m個,偏置參數有m個,n和m分別表示網絡隱含層和輸出層神經元的個數。由于實現解碼功能僅需要網絡的前向計算,因此網絡的權值和偏置為固定值,所以在設計中可利用FPGA內部資源對網絡權值和偏置進行存儲并以固定值的形式參與網絡運算。

    解碼器一次完整的解碼過程可簡述為:輸入數據→解碼計算→輸出結果。在實際應用中往往包含有多組編碼數據,因此設計中將編碼數據存儲在外部存儲器中以供FPGA讀取。SD存儲卡是一種基于半導體快閃記憶器的新一代記憶設備,由于它具有體積小、數據傳輸快、可熱插拔等優良特性,被廣泛應用于便攜式設備中[13]。因此本設計選擇使用SD卡來存儲編碼數據。SD卡讀操作為每次讀取一個扇區的數據,而網絡計算模塊的輸入數據的個數與圖1所示隱含層神經元個數相同,兩個數據量并不匹配。另外,SD卡讀數據操作和網絡計算為異步關系,因此本設計中加入FIFO模塊,作為SD卡讀數據模塊和網絡計算模塊兩個異步模塊之間的數據緩存器,這樣的設計也易于擴展到其他不同神經元數量的網絡結構。

    另外,為了便于人為控制對多組編碼數據進行解碼,系統設計中利用按鍵來產生一次解碼操作的起始信號。本設計是以ASCII碼的編碼和解碼對系統進行測試,因此設計中采用專門顯示字母、數字和符號等的工業字符型液晶LCD1602顯示解碼結果。最后為了增加FPGA硬件系統穩定性,減少系統時鐘的抖動和傾斜,設計中增加混合模式時鐘管理器(MMCM),用于在與輸入時鐘信號有設定的相位和頻率關系的情況下,生成不同的時鐘信號,該信號用于各個模塊工作。

2.2 硬件系統架構

    基于上述分析,所設計FPGA硬件系統結構如圖2所示。系統外圍模塊包括存儲編碼數據的SD卡,產生差分時鐘信號的晶振,產生復位信號和控制系統工作的按鍵,和顯示網絡計算結果的LCD1602顯示器。FPGA內部包含三大模塊,分別是:數據加載模塊、數據處理模塊和混合模式時鐘管理器。

wdz2-t2.gif

    設計中利用SD卡來存儲編碼數據,對SD卡的操作采用簡單的命令/響應協議[13],全部命令由FPGA發起,SD卡接收到命令后返回響應數據。要讀取SD卡中的數據,需要首先完成SD卡的初始化,該系統按照功能分別設計SD卡初始化模塊和SD卡讀數據模塊,其符合FPGA模塊化的設計原則。FIFO模塊作為SD卡和網絡計算模塊之間的數據緩存器,同時又用于異步數據傳輸,因此在設計中采用獨立的讀時鐘和寫時鐘,以用于異步操作。

    按鍵檢測模塊不斷讀取外部按鍵輸出信號key_in的值,當檢測到按鍵按下時該模塊產生一個高脈沖信號,該信號將作為一次解碼操作的起始信號。網絡計算模塊按照神經網絡的計算方法對讀入的數據進行計算。顯示驅動模塊設計中采用有限狀態機的方式控制LCD1602的初始化和數據顯示操作,該模塊與網絡計算模塊之間有信號線連接,以實現將計算結果送至顯示驅動模塊,顯示驅動模塊控制LCD1602對計算結果進行顯示。

    在圖2所示的硬件架構圖中,混合模式時鐘管理器將外部時鐘分頻產生各個模塊工作所需要的時鐘信號,其通過兩個時鐘線分別與數據加載模塊和數據處理模塊連接,而數據加載模塊和數據處理模塊之間通過data_en、data和read_clk 3個信號連接。

2.3 系統工作原理

    FPGA的特點是可以實現并行操作,在圖2所示的系統架構圖中,數據加載模塊和數據處理模塊以并行異步的方式工作,下面對其工作原理分別介紹。

    數據加載模塊:系統上電后,數據加載模塊首先控制SD卡初始化模塊對SD卡進行初始化,其初始化操作包含有一系列的命令,在初始化完成后SD卡初始化模塊輸出初始化完成信號。由于SD卡中的編碼數據是在PC端以FAT32文件系統的形式寫入的,因此在對SD卡初始化完成后,數據加載模塊控制SD卡讀數據模塊讀取SD卡中的FAT32文件系統信息,獲取編碼數據的長度,即文件所包含的字節數,該數據將用于控制對編碼數據的讀取。最后,數據加載模塊不斷檢測FIFO中緩存數據的數量,當數據的數量不足設定值時便控制SD卡讀數據模塊將SD卡中的編碼數據讀入FIFO中進行緩存。

    數據處理模塊:當按鍵檢測模塊檢測到外部按鍵被按下時會產生一個高脈沖信號,然后數據處理模塊會通過data_en、data和read_clk 3個信號從FIFO中讀取數據到網絡計算模塊進行計算,然后通過顯示驅動模塊控制將計算結果顯示在外部的LCD1602上。數據加載模塊和數據處理模塊之間data_en、data和read_clk 3個信號的時序關系如圖3所示,當data_en為高電平時,代表FIFO中存在有效的數據可以讀取,此時每當read_clk信號的上升沿到達時,從data端口可以讀取一個數據。

wdz2-t3.gif

    如圖4所示為FPGA硬件系統工作流程圖,其中SD卡讀操作和網絡計算之間為異步關系,系統中所加入的FIFO模塊作為SD卡讀數據模塊和網絡計算模塊兩個異步模塊之間的數據緩存器。

wdz2-t4.gif

2.4 網絡計算模塊設計

    網絡計算模塊是本設計中的核心模塊,用于實現圖1中的解碼器,將編碼數據和解碼器部分的權值與偏置按式(2)進行乘加運算,并經過激勵函數得到輸出值。

    通過對網絡前向計算分析可知其包括乘加運算和激勵函數運算。由于本設計中自編碼神經網絡的輸入是對ASCII碼歸一化后的數據,即原ASCII碼值除以128后的值,因此在FPGA模塊中激勵函數的輸出值需要擴大128倍才是真正的ASCII碼值。由于128=27,在FPGA中乘操作可通過移位實現,因此對計算結果擴大128倍相當于將二進制格式的小數點右移7位。更進一步,直接截取小數點后7位即為計算結果擴大128倍后的ASCII碼值。因此在網絡計算模塊將計算分為3部分:乘加運算、激勵函數運算和截位運算,如圖5所示為一個輸出層神經元的計算結構示意圖,輸出層各個神經元按照圖5所示的計算結構以并行、獨立的方式進行計算。

wdz2-t5.gif

    模塊中的乘加運算是將編碼數據、解碼器部分權值和偏置按照式(2)中激勵函數內部的乘加運算規則進行計算。本設計輸出層神經元的激勵函數為hard_sigmoid函數[12],表達式為式(3):

     wdz2-gs3.gif

    根據定義,hard_sigmoid函數為分段函數,且各段均為線性關系,其非常便于在FPGA系統中實現,即利用條件判斷語句對輸入進行判斷并輸出不同的值,如圖6所示為hard_sigmoid函數硬件實現示意圖。

wdz2-t6.gif

3 系統測試分析

    為了測試所設計自編碼神經網絡在FPGA平臺上的實現,本文選擇的網絡結構為輸入層、輸出層含有4個神經元節點,隱含層含有8個神經元節點。所選擇的應用背景為對ASCII碼的編碼和解碼,其中軟件端完成對ASCII碼的編碼,所得到的編碼數據在FPGA端實現解碼。

    本實驗測試集由軟件生成,軟件環境下對ASCII碼中非控制字符(碼值為32~127,共96個)做歸一化處理,然后按照隨機組合的方式4個一組輸入至所設計的自編碼神經網絡并獲得隱含層的輸出,將該輸出作為FPGA的測試輸入數據保存在SD卡中。所選擇的FPGA硬件平臺是Xilinx VC707 FPGA開發板,系統開發環境為Xilinx ISE 14.7,仿真環境為ModelSim SE 10.1c,如圖7所示為硬件系統測試圖。

wdz2-t7.gif

    在圖7所示的硬件系統測試圖中,①為SD卡,②為LCD1602顯示屏,③為控制按鍵。系統上電后,通過控制按鍵的按下操作不斷從SD卡中讀取數據,經過網絡計算模塊計算后將結果顯示在LCD1602顯示屏上,每次顯示4個字符,如圖7中LCD1602顯示屏的第二行即為解碼后的4個數據,對應于圖1所示神經網絡的4個輸出。

3.1 網絡計算結果分析

    神經網絡經過訓練得到一組最優參數,包括網絡權值和偏置。為了在FPGA中實現所設計自編碼神經網絡的解碼器部分,需要獲取對ASCII碼編碼后的數據(神經網絡隱含層的輸出數據)和解碼器部分的網絡權值與偏置。另外由于FPGA僅能對二進制數據識別和計算,因此需要將上述數據轉換為二進制數據。

    在FPGA設計中,數據的表示方式與FPGA邏輯資源消耗直接相關的。數據表示位數越多,數據精度越高,邏輯資源的消耗也就越多,因此在FPGA設計中需要權衡FPGA資源消耗和數據精度之間的關系。結合本文的實際應用,同時為了更好地權衡FPGA設計中的精度、資源占用和功耗,本設計采用定點數表示上述數據。

    由于在FPGA設計中采用有限位定點數來表示數據時,對原數據進行定點量化的過程中會因為數據的截斷而產生誤差。根據網絡計算模塊的設計,其輸出為計算結果二進制小數點后7位,因此在設計中需要保證這7位數據正確,即與原始輸入數據相比,經過解碼后輸出結果的誤差需要小于2-7,即應小于7.812 5×10-3。本文利用MATLAB下的Fixed Point Toolbox對數據進行量化,然后分析本設計中數據不同的量化位數對計算結果誤差的影響,如圖8所示為定點數表示中小數點的位數和最大誤差之間的關系。

wdz2-t8.gif

    從圖8可以看出:

    (1)隨著定點數小數位數的增加,最大誤差值不斷降低,即數據精度越來越高;

    (2)定點數小數位變為12位之后,其最大誤差基本保持不變;

    (3)定點數小數位為9位時,其最大誤差與7.812 5×10-3基本一致;定點數小數位為10位時,其最大誤差已符合小于7.812 5×10-3的要求。

    基于圖8所示的分析結果,本文在對設計中的網絡權值、偏置和編碼數據進行定點數量化時,小數位均設計為10位。進一步通過對網絡的權值、偏置和編碼數據的大小范圍進行分析可以確定其整數位的位數,3種數據的二進制定點數格式如表1所示。

wdz2-b1.gif

    本設計在ModelSim環境下對網絡計算模塊進行仿真,并對模塊輸出的計算結果與軟件中的原始輸入數據進行分析比對,所測試數據中的絕對誤差最大值小于7.812 5×10-3,符合設計中的誤差要求。另外通過硬件實測,所有被編碼后的數據經過FPGA計算后均被正確解碼,并將結果顯示在LCD1602上,即所設計的FPGA硬件系統正確地完成了解碼功能,從而驗證了對所設計網絡計算模塊的誤差分析。

3.2 系統性能分析

    如表2所示為Xilinx ISE對系統工程綜合實現后列出的主要資源占用情況。可以看出,DSP資源占用較大,主要原因是網絡計算模塊中的乘加計算和激勵函數運算均含有定點數乘法和加法操作,因此會占用較多的DSP資源。另外,BRAM資源的占用主要來自于FIFO模塊的實現和網絡計算模塊中網絡權值與偏置的存儲。

wdz2-b2.gif

    如表3所示為FPGA硬件實現數據解碼的速度和軟件解碼速度的比較,軟件解碼是在MATLAB軟件中測試所得,CPU為Intel Core i7,主頻為2.5 GHz。FPGA硬件解碼速度是通過在FPGA中設置計數器,對從讀取解碼器輸入數據到最后輸出結果的時鐘進行計數,然后利用ChipScope工具查看計數值來計算工作時間。表3中的結果顯示,相比于CPU軟件解碼,本文所設計的FPGA硬件解碼器加速了7倍以上。

wdz2-b3.gif

    通過Xilinx ISE自帶的XPower工具可以得到FPGA的運行功耗大致為0.389 W,所設計系統的外圍設備中LCD1602功耗大致為0.693 W,其余外設的功耗可忽略不計,因此整個系統總功耗為1 W左右。而相比之下,Intel Core i7-6500U主頻為2.5 GHz的CPU的功耗可高達65 W,可見本系統功耗僅為通用CPU的1.5%,因此特別適合將本文所設計的基于FPGA的解碼器應用于低功耗便攜式設備中。

4 結論

    利用神經網絡所具有的輸入輸出之間的映射關系,可以簡單高效地實現數據編碼和解碼。本文根據自編碼神經網絡的結構和特點,將其用于編碼和解碼,并在FPGA中實現自編碼神經網絡的解碼器部分。通過對軟件算法的設計和網絡計算過程的分析,按照功能和需求對FPGA模塊進行設計。利用ModelSim軟件對所設計的各個FPGA模塊進行仿真驗證,利用Xilinx ISE對整個工程進行設計、綜合和實現,并將編程文件下載至Xilinx VC707 FPGA開發板中進行驗證,同時對FPGA系統的資源占用、計算速度和功耗進行評估。通過測試,對于在軟件中經過編碼的數據,在FPGA系統中可以正確解碼。同時相比于通用CPU,該系統計算過程加速了7倍以上,而運行功耗僅為CPU的1.5%,因此具有速度快、功耗低的特點,特別適合將其應用于實時性、低功耗便攜式設備中。

參考文獻

[1] 曹雪虹,張宗橙.信息論與編碼[M].北京:清華大學出版社,2016.

[2] 張定會,李敬紅,左小五.神經網絡編碼和解碼[C].全國青年通信學術會議.2002.

[3] 王雅思.深度學習中的自編碼器的表達能力研究[D].哈爾濱:哈爾濱工業大學,2014.

[4] 李時峰.基于自編碼神經網絡文本特征選擇的研究[D].天津:天津科技大學,2016.

[5] 白玉婷,張剛.AVS熵編碼的FPGA實現[J].軟件,2012,33(2):102-104,156.

[6] 陳章進,鐘國海,畢卓.一種基于低成本FPGA的高速8B/10B編解碼器設計[J].微計算機信息,2012,28(10):189-190,480.

[7] Li Huimin,Fan Xitian,Jiao Li,et al.A high performance FPGA-based accelerator for large-scale convolutional neural networks[C].Field Programmable Logic and Applications(FPL),2016 26th International Conference on.IEEE,2016:1-9.

[8] NURVITADHI E,VENKATESH G,SIM J,et al.Can FPGAs beat GPUs in accelerating next-generation deep neural networks?[C].Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays.ACM:5-14.

[9] CYBENKO G.Approximation by superpositions of a sigmoidal function[J].Mathematics of Control,Signals,and Systems(MCSS),1989,2(4):303-314.

[10] BENGIO Y.Learning deep architectures for AI[J].Foundations and trends? in Machine Learning,2009,2(1):1-127.

[11] 魯亞平.面向深度網絡的自編碼器研究[D].蘇州:蘇州大學,2016.

[12] Tensorflow.hard_sigmoid definition[EB/OL].[2017-07-26].https://www.tensorflow.org/api_docs/python/tf/contrib/keras/backend/hard_sigmoid.

[13] 張鋒,潘冀寧,朱振榮.基于SPI模式的Micro SD卡驅動設計與驗證[J].通訊世界,2017(12):3-4.



作者信息:

周松江,李圣辰,劉  明

(北京郵電大學 信息光子學與光通信研究院,北京100876)

此內容為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>
          亚洲私人影院| 欧美激情第一页xxx| 欧美精品色网| 亚洲一区欧美一区| 欧美一区激情视频在线观看| 免费欧美电影| 久久精品国产欧美亚洲人人爽| 亚洲视频1区2区| 欧美性jizz18性欧美| ●精品国产综合乱码久久久久| 国产日韩欧美综合一区| 亚洲午夜视频在线| 狠狠色综合色综合网络| 一区在线影院| 国产一区观看| 久久久99久久精品女同性| 亚洲黄色av一区| 国产精品日本欧美一区二区三区| 亚洲欧美日韩精品在线| 国产精品盗摄一区二区三区| 免费中文日韩| 欧美在线视频观看免费网站| 国产精品欧美日韩| 久久不见久久见免费视频1| 国产精品高潮呻吟久久av无限| 91久久嫩草影院一区二区| 极品裸体白嫩激情啪啪国产精品| 亚洲在线免费观看| 欧美精品在线免费观看| 欧美.日韩.国产.一区.二区| 久久9热精品视频| 国产精品视频大全| 亚洲精品国产拍免费91在线| 久久久久国色av免费观看性色| 亚洲第一搞黄网站| 久久成人这里只有精品| 国产精品一区免费视频| 欧美视频一区二区三区…| 午夜精品久久久久久久久| 国产曰批免费观看久久久| 欧美精品午夜视频| 韩国一区二区三区美女美女秀| 欧美日韩网站| 国内揄拍国内精品久久| 国产午夜精品在线| 91久久精品日日躁夜夜躁欧美| 久久久精品网| 欧美在线一二三四区| 最新中文字幕亚洲| 一区二区亚洲欧洲国产日韩| 日韩亚洲精品电影| 久久成人国产| 久久免费视频网站| 久久成人18免费网站| 亚洲夜间福利| 亚洲日本成人在线观看| 亚洲卡通欧美制服中文| 91久久在线视频| 亚洲看片网站| 国产精品久久激情| 国产精品高清网站| 国产目拍亚洲精品99久久精品| 99视频有精品| 欧美一区二区成人6969| 国产精品一香蕉国产线看观看| 在线观看91精品国产入口| 欧美96在线丨欧| 久久一区二区三区国产精品| 欧美亚洲第一页| 欧美一级黄色网| 久久天天躁夜夜躁狠狠躁2022| 亚洲精品日本| 一区二区激情小说| 亚洲福利在线观看| 欧美日韩亚洲免费| 欧美成人久久| 好吊色欧美一区二区三区视频| 亚洲欧美日韩一区二区| 欧美成人蜜桃| 久久久精品tv| 欧美成人免费视频| 欧美精品99| 国产综合视频在线观看| 久久综合成人精品亚洲另类欧美| 亚洲国产精品久久久久久女王| 免费人成精品欧美精品| 国产一区二区高清不卡| 韩国av一区二区三区在线观看| 免费久久99精品国产自| 亚洲人成亚洲人成在线观看图片| 欧美激情成人在线视频| 国产精品乱看| 久久亚洲综合色| 一区二区三区欧美成人| 久久精品91久久香蕉加勒比| 欧美日韩一区综合| 国产亚洲欧美激情| 久久精品国产77777蜜臀| 亚洲美女视频在线观看| 国产精品va在线| 欧美96在线丨欧| 国产精品系列在线播放| 一区二区三区日韩精品| 亚洲精品1区2区| 国内精品福利| 国内精品视频一区| 性欧美办公室18xxxxhd| 欧美日韩精品二区第二页| 亚洲精品婷婷| 欧美激情一区二区久久久| 国产精品v欧美精品∨日韩| 欧美日韩人人澡狠狠躁视频| 免费中文字幕日韩欧美| 欧美日韩裸体免费视频| 亚洲午夜国产一区99re久久| 一区二区三区日韩欧美| 日韩一级裸体免费视频| 狠狠入ady亚洲精品经典电影| 欧美天堂亚洲电影院在线播放| 久久久久久高潮国产精品视| 欧美精品一区二区三区在线看午夜| 日韩午夜高潮| 国产最新精品精品你懂的| 久久久精品999| 亚洲精品美女免费| 亚洲精品少妇网址| 国产网站欧美日韩免费精品在线观看| 亚洲婷婷综合久久一本伊一区| 欧美在线综合| 一区二区三区免费观看| 欧美www视频| 日韩一二三在线视频播| 久久久一二三| 一区二区三区波多野结衣在线观看| 国产欧美精品va在线观看| 女人天堂亚洲aⅴ在线观看| 亚洲人成在线观看| 国产乱理伦片在线观看夜一区| 欧美亚洲一区二区三区| 麻豆精品在线观看| 亚洲三级免费电影| 伊人男人综合视频网| 国产色综合天天综合网| 午夜在线电影亚洲一区| 国模一区二区三区| 久久久精品一品道一区| 欧美在线电影| 日韩视频―中文字幕| 欧美一区三区二区在线观看| 亚洲欧美日韩天堂一区二区| 欧美成人免费va影院高清| 欧美激情一区二区三区| 久久久久久久999精品视频| 在线视频观看日韩| 国产一区二区三区在线免费观看| 久久人人超碰| 国产精品视频一二三| 国产一本一道久久香蕉| 国产欧美短视频| 久久一区二区三区四区五区| 国产精品久久久久影院色老大| 国产精品国产福利国产秒拍| 欧美四级剧情无删版影片| 欧美性久久久| 欧美一区二区日韩一区二区| 国产美女精品人人做人人爽| 欧美日韩 国产精品| 久久精品系列| 亚洲网友自拍| 久久综合中文色婷婷| 久久久久久久91| 欧美另类亚洲| 欧美日韩国产精品成人| 亚洲一二三区精品| 欧美日韩国产系列| 国外成人在线视频| 国产精品人人做人人爽人人添| 久久久免费观看视频| 欧美国产高潮xxxx1819| 国产手机视频精品| 欧美日韩另类国产亚洲欧美一级| 欧美日韩成人网| 亚洲激情在线观看| 久久久噜噜噜久久中文字幕色伊伊| 欧美系列精品| 欧美中文字幕视频| 亚洲日本va在线观看| 亚洲日本精品国产第一区| 91久久精品国产91久久性色| 国产日韩欧美在线播放不卡| 欧美成人伊人久久综合网| 久久精品亚洲一区| 毛片一区二区| 国产三级精品在线不卡| 一区二区三区在线视频播放| 日韩视频精品| 国产精品欧美风情| 一区二区三区视频在线播放| 国产精品一区久久| 欧美aaaaaaaa牛牛影院| 欧美日韩在线三级| 欧美午夜电影完整版| 在线观看视频一区二区| 在线一区欧美| 激情懂色av一区av二区av| 欧美激情在线播放| 亚洲综合社区| 久久人人97超碰精品888| 亚洲欧洲日夜超级视频| 国产日韩高清一区二区三区在线| 欧美日韩一区二区三区在线看| 久久美女艺术照精彩视频福利播放| 羞羞答答国产精品www一本| 国产精品国内视频| 欧美成人一品| av成人手机在线| 欧美久久久久中文字幕| 久久一日本道色综合久久| 欧美在线视频一区二区三区| 欧美韩国日本综合| 欧美日韩人人澡狠狠躁视频| 香蕉亚洲视频| 最新中文字幕一区二区三区| 欧美人妖在线观看| 欧美精品久久久久久久久久| 欧美成人国产va精品日本一级| 国产欧美在线观看| 亚洲激情自拍| 亚洲国产精品视频| 亚洲黄色成人久久久| 欧美日韩国产在线一区| 欧美国产日韩一区| 久久久久99| 亚洲第一二三四五区| 国产日产欧产精品推荐色| 欧美日韩国产综合视频在线| 国产精品视频一区二区三区| 一本色道久久88综合日韩精品| 久久国内精品自在自线400部| 国产精品久久国产三级国电话系列| 妖精视频成人观看www| 国产精品99久久久久久久久久久久| 亚洲理论在线观看| 久久综合伊人77777尤物| 国产一区二区成人| 久久精品国产91精品亚洲| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲国产三级在线| 国产欧美精品一区二区三区介绍| 亚洲免费在线观看| 亚洲全部视频| 亚洲一区日韩在线| 久久国产免费| 国产精品成人在线| 亚洲精品国产欧美| 久久久人成影片一区二区三区观看| 亚洲影音先锋| 久久―日本道色综合久久| 欧美xxx成人| 欧美午夜片欧美片在线观看| 欧美一区二区三区婷婷月色| 欧美精品在线视频| 国产精品久久久久三级| 亚洲第一在线综合网站| 亚洲最新中文字幕| 亚洲国产精品99久久久久久久久| 欧美日韩在线观看一区二区| 日韩视频欧美视频| 夜夜狂射影院欧美极品| 久热爱精品视频线路一| 日韩视频免费观看高清在线视频| 欧美日韩午夜在线视频| 国产欧美日韩在线播放| 国产精品视频专区| 欧美成人黑人xx视频免费观看| 久久久久久久999| 久久综合久久久久88| 欧美刺激性大交免费视频| 狂野欧美激情性xxxx欧美| 欧美国产一区二区三区激情无套| 国产精品99久久久久久宅男| 午夜精品久久一牛影视| 国产欧美日韩伦理| 久久福利电影| 欧美电影免费观看| 亚洲肉体裸体xxxx137| 国产视频在线观看一区二区| 极品尤物一区二区三区| 黄色综合网站| 在线综合欧美| 黄色精品免费| 久久久高清一区二区三区| 亚洲美女av黄| 先锋影音国产精品| 国产一区三区三区| 欧美中文在线观看| 欧美精品免费在线观看| 久久激情婷婷| 国产日韩在线一区二区三区| 午夜精品一区二区在线观看| 国产精品美女久久久久久久| 国产欧美亚洲精品| 99精品99久久久久久宅男| 国产精品久久久久一区二区三区| 亚洲一本视频| 欧美片网站免费| 亚洲激情在线观看视频免费| 国产情侣久久| 国产精品日本欧美一区二区三区| 亚洲一区二区在线播放| 欧美日韩调教| 亚洲欧洲在线观看| 欧美精品麻豆| 久久精品欧洲| 亚洲三级色网| 在线精品视频在线观看高清| 国产一区二区三区电影在线观看| 国产麻豆午夜三级精品| 欧美成人免费网| 在线欧美一区| 免费不卡欧美自拍视频| 国产欧美日韩精品丝袜高跟鞋| 久久国产综合精品| 国产亚洲一区二区三区在线观看| 亚洲观看高清完整版在线观看| 激情视频亚洲| 亚洲国产一区二区三区青草影视| 美女网站在线免费欧美精品|