《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于ADSP-BF561處理器的視頻編碼器平臺
基于ADSP-BF561處理器的視頻編碼器平臺
摘要: 硬件平臺1.1ADSP-BF561處理器Blackfin561是Blackfin系列中的一款高性能定點DSP視頻處理芯片。
Abstract:
Key words :

1 硬件平臺 
    1.1 ADSP-BF561" title="ADSP-BF561">ADSP-BF561處理器

    Blackfin561是Blackfin系列中的一款高性能定點DSP視頻處理芯片。其主頻最高可達(dá)750MHz,其內(nèi)核包含2個16位乘法器MAC、2個40位累加器ALU、4個8位視頻ALU,以及1個40位移位器。該芯片中的2套數(shù)據(jù)地址產(chǎn)生器(DAG)可為同時從存儲器存取雙操作數(shù)提供地址,每秒可處理1200M次乘加運算。芯片帶有專用的視頻信號處理指令以及100KB的片內(nèi)L1存儲器(16KB的指令Cache,16KB的指令SRAM,64KB的數(shù)據(jù)Cache/SRAM,4KB的臨時數(shù)據(jù)SRAM)、128KB的片內(nèi)L2存儲器SRAM,同時具有動態(tài)電源管理功能。此外,Blackfin處理器還包括豐富的外設(shè)接口,包括EBIU接口(4個128MBSDRAM接口,4個1MB異步存儲器接口)、3個定時/計數(shù)器、1個UART、1個SPI接口、2個同步串行接口和1路并行外設(shè)接口(支持ITU-656數(shù)據(jù)格式)等。Blackfin處理器在結(jié)構(gòu)上充分體現(xiàn)了對媒體應(yīng)用(特別是視頻應(yīng)用)算法的支持。

    1.2 基于ADSP-BF561的視頻編碼器平臺

    Blackfin561視頻編碼器的硬件結(jié)構(gòu)如圖1所示。該硬件平臺采用ADI公司的ADSP-BF561EZ-kitLite評估板。此評估板包括1塊ADSP-BF561處理器、32MBSDRAM和4MBFlash,板中的AD-V1836音頻編解碼器可外接4輸入/6輸出音頻接口,而ADV7183視頻解碼器和ADV7171視頻編碼器則可外接3輸入/3輸出視頻接口此外,該評估板還包括1個UART接口、1個USB調(diào)試接口和1個JTAG調(diào)試接口。在圖1中,攝像頭輸入的模擬視頻信號經(jīng)視頻芯片ADV7183A轉(zhuǎn)化為數(shù)字信號,此信號從Blackfin561的PPI1(并行外部接口)進(jìn)入Blackfin561芯片進(jìn)行壓縮,壓縮后的碼流則經(jīng)ADV7179轉(zhuǎn)換后從ADSP-BF561的PPI2口輸出。此系統(tǒng)可通過Flash加載程序,并支持串口及網(wǎng)絡(luò)傳輸。編碼過程中的原始圖像、參考幀等數(shù)據(jù)可存儲在SDRAM中。


2 H.264視頻壓縮編碼算法的主要特點

    視頻編解碼標(biāo)準(zhǔn)主要包括兩個系列:一個是MPEG系列,一個是H.26X系列。其中MPEG系列標(biāo)準(zhǔn)由ISO/IEC組織(國際標(biāo)準(zhǔn)化組織)制定,H.26X系列標(biāo)準(zhǔn)由ITU-T(國際電信聯(lián)盟)制定。I-TU-T標(biāo)準(zhǔn)包括H.261、H.262、H.263、H.264等,主要用于實時視頻通信,如電視會議等。

    H.264視頻壓縮算法采用與H.263和MPEG-4類似的、基于塊的混和編碼方法,它采用幀內(nèi)編碼(Intra)和幀間編碼(Inter)兩種編碼模式。與以往的編碼標(biāo)準(zhǔn)相比,為了提高編碼效率" title="編碼效率">編碼效率、壓縮比和圖像質(zhì)量,H.264采用了以下全新的編碼技術(shù):

    (1)H.264按功能將視頻編碼系統(tǒng)分為視頻編碼層(VCL,VideoCodingLayer)和網(wǎng)絡(luò)抽象層(NAL,NetworkAbstractionLayer)兩個層次。其中VCL用于完成對視頻序列的高效壓縮,NAL則用于規(guī)范視頻數(shù)據(jù)的格式,主要提供頭部信息以適合各種媒體的傳輸和存儲。

    (2)先進(jìn)的幀內(nèi)預(yù)測,它對含有較多空域細(xì)節(jié)信息的宏塊采用4×4預(yù)測,而對于較平坦的區(qū)域則采用16×16的預(yù)測模式,前者有9種預(yù)測方法,后者有4種預(yù)測方法。

    (3)幀間預(yù)測采用更多的塊劃分種類,標(biāo)準(zhǔn)中定義了7種不同尺寸和形狀的宏塊分割(16×16、16×8、8×16)和子宏塊分割(8×8、8×4、4×8、4×4)。由于采用更小的塊和自適應(yīng)編碼方式,故可使得預(yù)測殘差的數(shù)據(jù)量減少,從而進(jìn)一步降低了碼率。

    (4)可進(jìn)行高精度的、基于1/4像素精度的運動預(yù)測。

    (5)可進(jìn)行多參考幀預(yù)測。在幀間編碼時,最多可選5個不同的參考幀。

    (6)整數(shù)變換(DCT/IDCT)。對殘差圖像的4×4整數(shù)變換技術(shù),采用定點運算來代替以往DCT變換中的浮點運算" title="浮點運算">浮點運算。以降低編碼時間,同時也更適合到硬件平臺的移植。

(7)H.264/AVC支持兩種熵編碼方法,即CAVLC(基于上下文的自適應(yīng)可變長編碼)和CABAC(基于上下文的自適應(yīng)算術(shù)編碼)。其中CAVLC的抗差錯能力比較高,但編碼效率比CABAC低;而CABAC的編碼效率高,但需要的計算量和存儲容量更大。
    (8)采用新的環(huán)路濾波技術(shù)及熵編碼技術(shù)等。

    H.264的這些新技術(shù)使運動圖像壓縮技術(shù)向前邁進(jìn)了一大步,它具有優(yōu)于MPEG-4和H.263的壓縮性能,可應(yīng)用于因特網(wǎng)、數(shù)字視頻、DVD及電視廣播等高性能視頻壓縮領(lǐng)域。

3 H.264視頻編碼算法的實現(xiàn)

    將H.264在DSP進(jìn)行改進(jìn)要經(jīng)過以下3個步驟:PC機上的C算法優(yōu)化、從PC機到DSP的程序移植、在DSP平臺上的代碼優(yōu)化。

    3.1 PC機上的C算法優(yōu)化

    根據(jù)系統(tǒng)要求,本設(shè)計選擇了ITU的Jm8.5版本baselineprofile作為標(biāo)準(zhǔn)算法軟件。ITU的參考軟件JM是基于PC機設(shè)計的,故可取得較高的編碼效果。將視頻編解碼軟件移植到DSP時,應(yīng)考慮到DSP系統(tǒng)資源,主要應(yīng)考慮的因素是系統(tǒng)空間(包括程序空間和數(shù)據(jù)空間),所以,需要對原始的C代碼進(jìn)行評估,這就需要對所移植的代碼有所了解。圖2所示是H.264的算法結(jié)構(gòu)。

    了解了算法結(jié)構(gòu)以后,還需要確定在編碼算法的實現(xiàn)過程中,運算量較大且耗時較長的部分。VC6自帶的profile分析工具顯示:幀內(nèi)與幀間編碼部分占用了整體運行時間的60%以上。其中ME(MoveEstimation,運動估計)又占用了其中較多的時間。所以,移植與優(yōu)化的重點應(yīng)在運動估計部分,因此,應(yīng)當(dāng)對代碼結(jié)構(gòu)進(jìn)行調(diào)整。

(1)大幅刪減不必要的文件和函數(shù)

    由于選用了baseline和單一參考幀,因此,很多文件和函數(shù)都可以刪減,包括有關(guān)B幀、SI片、SP片和數(shù)據(jù)分割、分層編碼、權(quán)值預(yù)測模式、CABAC編碼模式等不支持特性的冗余程序代碼,同時包括rtp.c、sei.c、leaky_bucket.c、In-trafresh.c文件、相關(guān)的頭文件以及在global.h頭文件中相應(yīng)定義的全局變量和函數(shù),此外,還可以刪除top_pic、bottom_pic等與場有關(guān)的全局變量與局部變量、分層編碼、多slice分割以及FMO、與場編碼/幀場自適應(yīng)編碼/宏塊自適應(yīng)編碼有關(guān)的預(yù)測、參考幀排序、輸入輸出以及解碼器緩存操作等;也可以刪除隨機幀內(nèi)宏塊刷新模式和權(quán)值預(yù)測模式等相關(guān)的冗余代碼(如使編碼器采用NAL碼流而非RTP格式),同時刪除rtp.c;sei.c中包含一些輔助編碼信息(并不編入碼流中),如果不用,也可以刪除leaky_bucket.c用于計算泄漏緩存器的參數(shù)。

    (2)配置函數(shù)的改寫

    由于JM的系統(tǒng)參數(shù)配置是通過讀取encoder.cfg文件來實現(xiàn)的,故可將參數(shù)配置由讀取文件改為通過初始化集中賦值函數(shù)來實現(xiàn),這樣既減少了代碼量,又減少了對有限內(nèi)存空間的占用和讀取時間,提高了編碼器整體的編碼速度。例如:定義為int型的變量input->img_height就可直接改寫為input->img_height=288(CIF格式)。

    (3)去除冗余的打印信息

    為了調(diào)試與算法改進(jìn)的方便,JM保留了大量的打印信息。為了提高編碼速度,減少存儲空間消耗,這些信息完全可以刪掉,如大量的trace信息和編碼數(shù)據(jù)統(tǒng)計文件。如果lor.dat和stat.dat僅需在PC機上調(diào)試時使用,也沒必要移植到DSP平臺上,跟這部分相關(guān)的代碼完全可以去除。但是,調(diào)試時所需的基本信息(如碼率、信噪比、編碼序列等)則應(yīng)保留參考。

    通過調(diào)整可使得代碼的結(jié)構(gòu)、容量更加精簡,從而為接下來在DSP上的移植做好準(zhǔn)備。
3.2 從PC機到DSP的程序移植

    要將PC端精簡的程序移植到ADSP-BF561的開發(fā)環(huán)境VisualDSP下,以使其能夠初步運行,所需考慮的主要是語法規(guī)則和內(nèi)存分配等問題。(1)除去所有編譯環(huán)境不支持的函數(shù)


    主要是除去某些與時間相關(guān)的函數(shù)、將文件操作修改為讀取文件數(shù)據(jù)緩存的操作、刪除SNR信息收集等DSP平臺實現(xiàn)不需要的代碼。還要注意:函數(shù)的聲明、數(shù)據(jù)結(jié)構(gòu)的類型要符合DSP的C語言格式。

    (2)添加與硬件相關(guān)的代碼

    該代碼包括系統(tǒng)初始化、輸出模塊代碼、中斷服務(wù)程序和碼速率控制程序等。

    (3)配置LDF文件

    因為剛移植的代碼往往數(shù)據(jù)和程序都非常大,SRAM里面肯定是放不下的,這時鏈接就會有問題。剛開始的時候,最好把所有的程序和數(shù)據(jù)都放在SDRAM里,這樣鏈接就不會有問題了。Stack和heap情況類似,都先放到SDRAM。一般在開始時,往往需要的是一個可以正確運行的程序,而速度倒在其次。

    (4)Malloc問題的解決

    DSP下的開發(fā),malloc是一個需要解決的問題。如果動態(tài)申請內(nèi)存,就算可以運行,其結(jié)果往往也是不對的。所以,最好進(jìn)行靜態(tài)分配,可用數(shù)組的形式分配。

    移植完畢后,即可實現(xiàn)基于ADSP-BF561處理器的H_264編碼,此時如果速度達(dá)不到實時編碼的要求,還可以進(jìn)一步進(jìn)行優(yōu)化。

4 DSP平臺上的代碼優(yōu)化

    在VisualDSP開發(fā)環(huán)境下對代碼進(jìn)行優(yōu)化的主要方法有C語言級優(yōu)化和匯編級優(yōu)化。

    4.1 C語言級優(yōu)化

    通過VC6的profile分析工具發(fā)現(xiàn):移植與優(yōu)化的重點應(yīng)在運動估計部分。筆者通過比較各種算法后選擇了菱形(DS)搜索法。DS算法可采用兩種搜索模板,分別是有9個檢索點的大模板LD-SP(LargeDiamondSearchPattern)和有5個檢索點的小模板SDSP(SmallDiamondSearchPattern)。其菱形搜索示意圖如圖3所示。搜索時,先用大模板計算,當(dāng)最小塊誤差SAD點出現(xiàn)在中心點處時,再將大模板LDSP換為SDSP進(jìn)行匹配運算,這時,5個點中具有最小SAD者若為中心點,則該點即為最優(yōu)匹配點,然后結(jié)束搜索,否則將繼續(xù)以此點為搜索中心進(jìn)行SPSS搜索。   

    經(jīng)JM實驗證實,采用此種方法,可以節(jié)約大約10%的運行時間,且代碼量無太大增長。

    針對DSP的特點和相關(guān)的硬件指令,設(shè)計時可對代碼進(jìn)行如下優(yōu)化:

    ◇對程序結(jié)構(gòu)進(jìn)行調(diào)整。對不適合DSP執(zhí)行的語句進(jìn)行改寫,以提高代碼的并行性。

    ◇宏的使用。也就是將有些較短,執(zhí)行單一、調(diào)用次數(shù)多的函數(shù)改為宏。

    ◇循環(huán)優(yōu)化是將C語言中的for循環(huán)打開,排流水線,提高并行性。

    ◇計算表格化是將運行時計算的參數(shù)做成便于查找的表格常數(shù)數(shù)值,從而將運行計算轉(zhuǎn)化為編譯運算。如在量化和反量化程序中進(jìn)行移位位數(shù)的處理時,可先計算出所有可能的值,而后來的運算就可以通過查表得到數(shù)值。

    ◇浮點數(shù)定點化。因為Blackfin561并不支持浮點運算,但原始程序代碼卻是浮點運算的格式,所以必須改成定點運算,而其修改后的執(zhí)行速度也會加快很多。

    ◇盡量用邏輯運算代替乘除運算。由于乘除運算指令的執(zhí)行時間要遠(yuǎn)遠(yuǎn)大于邏輯移位指令,尤其是除法指令,故應(yīng)盡量用邏輯移位運算來代替乘除運算,以加快指令的運行速度。

    ◇盡量少進(jìn)行函數(shù)調(diào)用。對一些小的函數(shù),最好是用適當(dāng)?shù)膬?nèi)聯(lián)函數(shù)將其直接寫入主函數(shù)中進(jìn)行替代,而對于一些調(diào)用不多的函數(shù),也可以直接寫入主函數(shù)內(nèi),這樣可減少不必要的操作以提高速度。

    ◇減少判斷轉(zhuǎn)換。

    ◇盡量靜態(tài)分配內(nèi)存。

    ◇調(diào)用系統(tǒng)提供的豐富的內(nèi)聯(lián)函數(shù)。

    此外,為了充分發(fā)揮DSP的運算能力,還必須從它的硬件結(jié)構(gòu)出發(fā),最大限度地利用它的8個功能單元,使用軟件流水線盡量讓程序無沖突地并行執(zhí)行。也可將最耗時的函數(shù)抽取出來,用線性匯編改寫,從而最大限度的利用DSP的并行性。

 4.2 匯編級優(yōu)化

    匯編級優(yōu)化主要指如下幾點操作:

    (1)使用寄存器資源

    Blackfin561提供了8個32位數(shù)據(jù)寄存器以及一系列的地址寄存器。使用寄存器代替局部變量時,若局部變量用來保存中間結(jié)果,那么用寄存器代替局部變量可省掉很多訪問內(nèi)存的時間。

    (2)使用專用指令

    Blackfin561提供有求最大值、最小值、絕對值、CUP及大量視頻專用指令,應(yīng)可能用多位的指令來訪問少位的數(shù)據(jù)。通過使用這些指令能大大提高代碼的執(zhí)行速度。如用int型(32位)訪問2個short(16位)型數(shù)據(jù)時,可將其分別放在32位寄存器的高16位和低16位字段。這樣,數(shù)據(jù)讀取效率可以提高1倍,從而減少內(nèi)存訪問次數(shù)。

    (3)使用并行指令和向量指令

    ADSP-BF561中每條通用指令都可以和一條或兩條存儲器訪問指令并列執(zhí)行,這樣有利于ADSP-BF561的流水線滿負(fù)荷運行,更充分發(fā)揮ADSP-BF561的數(shù)據(jù)處理能力。

    (4)合理存放反復(fù)調(diào)用的程序段

    把被反復(fù)調(diào)用的程序段(如DCT變換和IDCT變換)放在片內(nèi)程序存儲區(qū)中,把頻繁用到的數(shù)據(jù)段(如編碼表)放在片內(nèi)數(shù)據(jù)存儲器中,而把不常用到的程序和數(shù)據(jù)段放在片外存儲器" title="片外存儲器">片外存儲器中,以避免對程序或數(shù)據(jù)進(jìn)行不必要的反復(fù)搬移。

    (5)合理使用內(nèi)外存儲器

    BF561片內(nèi)只有256KB的存儲空間,因此當(dāng)前幀、參考幀和當(dāng)前幀的重建幀都必須放至片外存儲器,壓縮碼流若被主機讀取,也可放至片外。其它數(shù)據(jù)如程序代碼、全局變量、VLC碼表、各編碼模塊產(chǎn)生的中間數(shù)據(jù)等均可放至片內(nèi)。

    (6)DMA的使用

    由于CPU訪問片外存儲器的速度通常要比訪問片內(nèi)慢幾十倍,片外數(shù)據(jù)的傳輸通常成為程序運行時的瓶頸,這樣,即使代碼效率很高,流水線也會因為等待數(shù)據(jù)而被嚴(yán)重阻塞。解決這一問題的有效方法是用DMA傳送數(shù)據(jù)。程序是逐個宏塊進(jìn)行編碼的,在編碼當(dāng)前宏塊的同時,先由DMA將下一個宏塊的數(shù)據(jù)、用到的參考幀數(shù)據(jù)由片外傳送至片內(nèi),當(dāng)前宏塊做完運動補償后,DMA又將重建后的宏塊由片內(nèi)傳送至片外。這樣CPU只對片內(nèi)數(shù)據(jù)進(jìn)行操作,從而使流水線可以順利進(jìn)行,而壓縮碼流按逐個碼字有時間間隔地寫入,可由CPU直接寫至片外。

5 結(jié)束語

    經(jīng)過用ADSP-BF561匯編語言改寫的對應(yīng)函數(shù)的優(yōu)化程序經(jīng)調(diào)試運行后,DCT,IDCT部分效率提高了大約15倍,去塊濾波部分效率提高了大約6~7倍。對于模塊中的其它部分函數(shù),也同樣取得了良好的優(yōu)化結(jié)果。說明其優(yōu)化工作確實達(dá)到了良好的效果。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美日韩在线不卡| 国产精品嫩草99av在线| 亚洲小视频在线观看| 亚洲精品一二三区| 久久精品亚洲精品| 久久精品国产96久久久香蕉| 性伦欧美刺激片在线观看| 亚洲一区日韩| 亚洲淫性视频| 亚洲欧美日韩精品在线| 亚洲一区在线观看视频 | 99热免费精品| 一本色道久久88亚洲综合88| 国产精品麻豆va在线播放 | 欧美体内谢she精2性欧美| 欧美日韩1区| 欧美日韩18| 欧美午夜激情在线| 国产精品高清一区二区三区| 国产精品久久77777| 欧美视频在线观看 亚洲欧| 欧美三级在线播放| 国产精品福利在线| 国产精品久久久久久久电影| 国产精品五区| 国产欧美精品一区aⅴ影院| 国产精品综合网站| 国产欧美在线视频| 国产视频精品va久久久久久| 国产一区二区三区久久久久久久久| 国内精品久久久| 在线观看中文字幕不卡| 亚洲国产女人aaa毛片在线| 91久久国产精品91久久性色| 亚洲精品免费网站| 一区二区动漫| 校园激情久久| 久久精品男女| 亚洲麻豆一区| 亚洲免费视频成人| 欧美在线亚洲在线| 老司机精品视频网站| 欧美国产激情| 欧美天堂在线观看| 国产麻豆精品theporn| 国内精品久久国产| 亚洲黑丝在线| 中文在线资源观看网站视频免费不卡| 亚洲欧美日韩在线不卡| 亚洲电影第1页| 一本久久综合亚洲鲁鲁| 午夜精品成人在线视频| 久久精品一区| 欧美人妖在线观看| 国产精品久久一卡二卡| 国产综合色一区二区三区| 亚洲国产第一| 亚洲一区在线免费| 久久国产精品久久久久久| 亚洲免费不卡| 欧美一二区视频| 男同欧美伦乱| 国产精品国产三级国产aⅴ浪潮| 国产午夜一区二区三区| 亚洲人体1000| 欧美一级久久久| 亚洲最黄网站| 久久精品国产清自在天天线| 欧美激情视频免费观看| 国产欧美精品国产国产专区| 亚洲国产精品成人综合色在线婷婷| 一区二区三区高清在线| 亚洲国产福利在线| 亚洲欧美日韩一区二区三区在线观看 | 亚洲欧美三级在线| 久久中文字幕一区| 欧美亚洲成人免费| 精品99一区二区| 一区二区三区欧美成人| 亚洲承认在线| 亚洲欧美日韩一区| 欧美极品在线观看| 国产一区二区高清不卡| 日韩视频一区二区在线观看| 欧美在线你懂的| 亚洲女同同性videoxma| 免费欧美在线视频| 欧美xart系列高清| 国产人成一区二区三区影院| 亚洲精品影院| 中文欧美字幕免费| 亚洲理论在线| 在线亚洲自拍| 欧美a级片一区| 精品999在线观看| 午夜性色一区二区三区免费视频| av成人福利| 女人香蕉久久**毛片精品| 国产欧美日韩三级| 亚洲大胆av| 久久成人精品| 欧美一级专区| 国产精品hd| 亚洲精品专区| 亚洲乱亚洲高清| 蜜桃久久av| 韩国精品主播一区二区在线观看| 亚洲一区二区欧美| 一区二区动漫| 欧美猛交免费看| 亚洲盗摄视频| 亚洲电影在线看| 久久女同精品一区二区| 国产日产欧美精品| 亚洲一区二区在| 亚洲女同同性videoxma| 久久久综合视频| 国产午夜精品一区二区三区视频| 亚洲女女女同性video| 亚洲在线观看免费视频| 欧美色另类天堂2015| 亚洲精品中文字幕在线| 99精品国产热久久91蜜凸| 欧美精品久久久久久久久久| 亚洲国产一区二区三区在线播| 亚洲国产专区校园欧美| 麻豆av一区二区三区久久| 原创国产精品91| 亚洲激情自拍| 欧美高清视频一区二区| 亚洲国产另类久久久精品极度| 亚洲欧洲一区二区在线播放| 欧美高清视频| 亚洲人成欧美中文字幕| av成人免费观看| 欧美日韩亚洲一区二区三区四区 | 久久成人18免费网站| 久久久久久久久久看片| 黑人巨大精品欧美一区二区| 亚洲高清不卡在线观看| 麻豆精品视频| 亚洲国产人成综合网站| 日韩一级视频免费观看在线| 欧美日韩激情小视频| 一本色道久久88精品综合| 亚洲欧美一区二区视频| 国产欧美精品xxxx另类| 久久黄色级2电影| 狼人天天伊人久久| 亚洲啪啪91| 亚洲一区二区三区中文字幕| 国产精品无码专区在线观看| 欧美一区二区观看视频| 美女脱光内衣内裤视频久久网站| 国产美女精品视频| 久久狠狠久久综合桃花| 欧美成人国产| 99re66热这里只有精品4| 亚洲欧美中文日韩v在线观看| 国产日韩欧美夫妻视频在线观看| 欧美在线看片a免费观看| 欧美成人一区二区三区片免费| 亚洲乱码日产精品bd| 亚洲欧美一区二区精品久久久| 国产欧美一区二区三区在线老狼| 亚洲大片av| 欧美日韩福利视频| 亚洲欧美在线免费观看| 久久女同互慰一区二区三区| 亚洲国产精品一区二区尤物区| 亚洲一级黄色av| 国产一区欧美| 亚洲美女在线观看| 国产精品青草久久| 亚洲国产成人精品视频| 欧美日韩另类在线| 午夜精品久久久久久久99水蜜桃| 蜜桃av一区二区三区| 在线亚洲高清视频| 久久综合九色99| 中文亚洲欧美| 噜噜噜噜噜久久久久久91| 亚洲最新在线| 久久久青草婷婷精品综合日韩| 亚洲美女视频在线观看| 久久久久久久久岛国免费| 亚洲理论电影网| 久久久久国内| 日韩一级大片在线| 久久人人爽人人| 这里只有精品在线播放| 老巨人导航500精品| 亚洲一区二区日本| 欧美精品三区| 久久精品国产99| 国产精品久久久久久超碰 | 午夜在线观看免费一区| 亚洲福利视频一区二区| 欧美一级在线视频| 亚洲人成人99网站|