亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于龍芯3A處理器的DeltaOS嵌入式系統(tǒng)移植

        2016-11-26 08:17:58羅一涵陳朔鷹趙建峰喬楊
        關(guān)鍵詞:設(shè)備系統(tǒng)

        羅一涵,陳朔鷹,趙建峰,喬楊

        (北京理工大學(xué) 計(jì)算機(jī)學(xué)院,北京 100081)

        基于龍芯3A處理器的DeltaOS嵌入式系統(tǒng)移植

        羅一涵,陳朔鷹,趙建峰,喬楊

        (北京理工大學(xué)計(jì)算機(jī)學(xué)院,北京100081)

        嵌入式系統(tǒng)移植是嵌入式開發(fā)中經(jīng)常遇到的問題。本文以龍芯3A處理器為載體,根據(jù)其通用異常處理機(jī)制和硬件資源配置,完成系統(tǒng)的啟動(dòng),并對串口驅(qū)動(dòng)進(jìn)行開發(fā)與配置,成功將實(shí)時(shí)嵌入式道系統(tǒng)(DeltaOS)移植到龍芯3A平臺(tái)上,為應(yīng)用程序和驅(qū)動(dòng)程序的開發(fā)提供了必要的基礎(chǔ)。

        龍芯3A;異常處理;實(shí)時(shí)嵌入式系統(tǒng);驅(qū)動(dòng)程序

        引 言

        道系統(tǒng)(Delta OS)是目前中國依靠自己技術(shù)和力量自主研發(fā)的實(shí)時(shí)操作系統(tǒng)之一,提供實(shí)時(shí)和嵌入式多任務(wù)的內(nèi)核,任務(wù)響應(yīng)快速、準(zhǔn)確,不隨任務(wù)負(fù)載大小改變,絕大部分代碼由C語言編寫,具有很好的移植性。目前,道系統(tǒng)已成功地應(yīng)用于消費(fèi)電子產(chǎn)品、通信產(chǎn)品、工業(yè)及軍用電子產(chǎn)品中。

        龍芯系列處理器是中國科學(xué)院計(jì)算所自主研發(fā)的國產(chǎn)處理器系列,龍芯3A是其新一代的64位多核高性能通用處理器,處理器采用RISC架構(gòu),兼容MIPS指令,原生四核設(shè)計(jì),內(nèi)含兩條HT PHY超傳輸總線,主頻1 GHz,晶體管數(shù)目4.25億個(gè),單顆龍芯3A的最大功耗為15 W[1]。

        本文闡述了龍芯3A平臺(tái)異常處理和中斷機(jī)制和系統(tǒng)啟動(dòng)流程,并完成了硬件設(shè)備驅(qū)動(dòng)程序的開發(fā)。

        1 道系統(tǒng)移植分析

        1.1 基于道系統(tǒng)的開發(fā)模型

        道操作系統(tǒng)主要由三部分組成:板級支持包(BSP)、系統(tǒng)內(nèi)核以及應(yīng)用組件模塊,其組成如圖1所示。

        圖1 道系統(tǒng)組成

        其中板級支持包(BSP)的下面就是支持操作系統(tǒng)的硬件平臺(tái)。板級支持包的作用是使嵌入式操作系統(tǒng)在各種不同的硬件環(huán)境下都能較好的工作,通過特定的上層接口與操作系統(tǒng)內(nèi)核進(jìn)行交互,向操作系統(tǒng)提供底層的硬件信息,并根據(jù)操作系統(tǒng)的要求完成對硬件的直接操作。這一層次的獨(dú)立性決定了該嵌入式操作系統(tǒng)的可移植性。由于這一層屏蔽了底層硬件的多樣性,操作系統(tǒng)內(nèi)核不再直接面對具體的硬件環(huán)境。

        BSP的作用主要包含兩部分:

        ①初始化。包括對系統(tǒng)資源的初始化,對目標(biāo)板硬件初始化(包括初始化各種控制器內(nèi)存資源和硬件設(shè)備),以及對CPU相關(guān)的初始化(主要初始化內(nèi)部寄存器、關(guān)閉中斷等)。

        ②硬件設(shè)備驅(qū)動(dòng)。對硬件設(shè)備初始化和管理設(shè)備是驅(qū)動(dòng)程序的主要作用,這里的驅(qū)動(dòng)有時(shí)鐘驅(qū)動(dòng)、串口驅(qū)動(dòng)、網(wǎng)絡(luò)驅(qū)動(dòng)和總線驅(qū)動(dòng)等。

        1.2 BSP開發(fā)流程

        BSP的開發(fā)過程分為以下幾個(gè)步驟。

        ①建立道系統(tǒng)集成開發(fā)環(huán)境Lambda Tools。Lambda Tools提供基本的編碼、調(diào)試、固化的集成開發(fā)環(huán)境。

        ②新建BSP項(xiàng)目,道系統(tǒng)集成開發(fā)環(huán)境已經(jīng)集成了BSP項(xiàng)目,實(shí)現(xiàn)了BSP操作所需的框架,因此該項(xiàng)目可降低開發(fā)BSP的難度,提高研發(fā)效率。由于開發(fā)一個(gè)全新的BSP耗時(shí)耗力,因而通常會(huì)選擇一個(gè)BSP模板,在此基礎(chǔ)上僅對需要修改的部分進(jìn)行修改,這樣可以大大縮短開發(fā)周期。

        ③配置系統(tǒng)引導(dǎo)程序,本次移植使用龍芯系列專用工具PMON進(jìn)行系統(tǒng)引導(dǎo)。

        ④配置DeltaOS的BSP。在BSP模板基礎(chǔ)上完成Boot的運(yùn)行,實(shí)現(xiàn)最基本的初始化。同時(shí)根據(jù)硬件特性修改相應(yīng)文件,確保系統(tǒng)啟動(dòng)和基本驅(qū)動(dòng)的正常運(yùn)行,最終生成映像文件。

        ⑤測試與驗(yàn)證。通過對各個(gè)模塊的測試實(shí)驗(yàn),驗(yàn)證移植是否成功。

        2 基于龍芯3A處理器的DeltaOS移植

        2.1 龍芯3A異常處理及中斷機(jī)制

        異常是硬件或軟件影響處理器正常執(zhí)行循序的方式,是實(shí)現(xiàn)多任務(wù)和硬件驅(qū)動(dòng)的基礎(chǔ)。龍芯3A處理器的通用異常處理又分為32種異常,比如:中斷、TLB修改、地址錯(cuò)誤等。當(dāng)觸發(fā)通用異常時(shí),異常處理函數(shù)讀取Cause寄存器ExcCode域的值,如果為0,則判斷異常為中斷產(chǎn)生,龍芯CPU核通過Cause寄存器接收中斷。Cause寄存器中有8個(gè)獨(dú)立的中斷位IP0~I(xiàn)P7,IP0和IP1表示軟件中斷,IP2~I(xiàn)P5表示外部中斷,IP6表示核間中斷,IP7表示時(shí)鐘中斷[2]。異常處理示意圖如圖2所示。

        當(dāng)觸發(fā)通用異常處理時(shí),進(jìn)入exc Norm Vec()函數(shù),此處需要完成龍芯對3A通用異常處理的工作。首先獲取Cause寄存器Excode域的值,然后根據(jù)Excode域的值判斷屬于哪種異常。若Excode域的值為0,則跳轉(zhuǎn)到中斷處理;若Excode為其他值,則跳轉(zhuǎn)到異常處理。把exc-Norm Vec()函數(shù)代碼拷貝到地址0x180,此地址是龍芯通用異常入口地址[3]。以下是exc Norm Vec()中關(guān)鍵代碼:

        圖2 異常處理示意圖

        當(dāng)異常為中斷時(shí),進(jìn)入中斷處理函數(shù)Handle_int(), Handle_int()函數(shù)會(huì)依次保存中斷現(xiàn)場,關(guān)閉中斷,調(diào)用plat _irq_dispatch()判斷中斷的類型,不同類型的中斷執(zhí)行不同do _IRQ()函數(shù),當(dāng)中斷處理完成后,進(jìn)入ret_from_irq()函數(shù)從中斷返回[4]。中斷路由示意圖如圖3所示。

        龍芯3A處理器中集成了4個(gè)處理器核,32位中斷源可以通過軟件配置選擇期望中斷的目標(biāo)處理器核。在hwconf.c文件中,有三個(gè)數(shù)組描述了具體設(shè)備的中斷要素,mipsSbIntCtlrInputs數(shù)組設(shè)定設(shè)備選用的引腳,mipsSbIntCtlr XBar數(shù)組設(shè)定設(shè)備使用相應(yīng)核的哪個(gè)中斷引腳,mipsSbIntCtlr CpuRoute數(shù)組設(shè)定設(shè)備中斷路由到哪個(gè)核上。在此次移植過程中,默認(rèn)將中斷路由到CORE0上。圖3的配置模塊配置的就是這些中斷路由到哪個(gè)CPU核的哪個(gè)IP位,這里IP位和實(shí)際的Cause寄存器偏移為2,比如路由到CORE0的IP0,實(shí)際上是CORE0的Cause寄存器的IP2[3]。

        圖3 中斷路由示意圖

        2.2 DeltaOS啟動(dòng)流程

        對于系統(tǒng)移植,熟悉系統(tǒng)的啟動(dòng)流程是非常重要的。在龍芯3A平臺(tái)移植過程中,使用龍芯平臺(tái)系列專用工具PMON做初始化引導(dǎo)。PMON主要包括硬件初始化、操作系統(tǒng)引導(dǎo)和硬件測試、程序調(diào)式等功能。它提供多種加載操作系統(tǒng)的方式,可以從優(yōu)盤、光盤、tftp服務(wù)器和硬盤等媒介加載;它提供對內(nèi)存、串口、顯示、網(wǎng)絡(luò)、硬盤等的基礎(chǔ)測試工具。在移植過程中,PMON的作用是完成硬件初始化,包括設(shè)置時(shí)鐘和堆棧以及分配存儲(chǔ)空間等,同時(shí)把二進(jìn)制的DeltaOS系統(tǒng)映像文件加載到內(nèi)存,之后程序跳轉(zhuǎn)到操作系統(tǒng)所加載的位置,開始啟動(dòng)過程。

        圖4為DeltaOS系統(tǒng)的啟動(dòng)流程:首先是sys Alib.s中的入口函數(shù)sysInit()。sysInit()函數(shù)是系統(tǒng)啟動(dòng)后第一個(gè)執(zhí)行的函數(shù),由匯編語言編寫,主要的工作包括初始化CPU,設(shè)置堆棧,禁止CPU的中斷等,然后跳轉(zhuǎn)到prj-Config.c中的usrInit()函數(shù)。

        以下是根據(jù)硬件平臺(tái)修改完成的關(guān)鍵代碼:

        圖4 DeltaOS啟動(dòng)流程

        usrInit()函數(shù)是操作系統(tǒng)啟動(dòng)時(shí)執(zhí)行的第一個(gè)C函數(shù),任務(wù)是對系統(tǒng)進(jìn)行最小初始化,包括對內(nèi)核數(shù)據(jù)結(jié)構(gòu)進(jìn)行初始化,硬件初始化,根據(jù)不同的CPU構(gòu)架,usrInit()函數(shù)可能對cache進(jìn)行初始化,中斷處理程序的初始化,中斷處理程序的掛接等。其中幾個(gè)重要的函數(shù)式:exc VecInit()初始化所有缺省中斷向量,sys HwInit()初始化目標(biāo)板中的相關(guān)硬件,usrkernelInit()配置系統(tǒng)內(nèi)核,其中主要是配置操作系統(tǒng)的必要組件,通常不需要修改。kernelInit()初始化并啟動(dòng)內(nèi)核,其中sys Hw Init()主要負(fù)責(zé)目標(biāo)機(jī)硬件部分的初始化工作,此時(shí)的初始化發(fā)生在系統(tǒng)內(nèi)核啟動(dòng)之前,中斷屏蔽,把硬件設(shè)備初始化到靜止?fàn)顟B(tài),屬于對設(shè)備的初級初始化。

        然后進(jìn)入usr Root()函數(shù),它的任務(wù)是初始化內(nèi)存池、系統(tǒng)時(shí)鐘、I/O系統(tǒng)和網(wǎng)絡(luò)、標(biāo)準(zhǔn)輸入輸出錯(cuò)等。其中, usr Root()調(diào)用的sys HwInit2()函數(shù)在系統(tǒng)內(nèi)核啟動(dòng)之后進(jìn)行,主要負(fù)責(zé)將中斷服務(wù)程序連接到相應(yīng)的中斷向量,并完成中斷使能,屬于對設(shè)備的高級初始化。

        在修改完BSP板級支持包后,通過Lambda Tools生成DeltaOS的映像文件,再通過網(wǎng)絡(luò)或串口的方式傳入目標(biāo)機(jī),使用PMON完成對操作系統(tǒng)的引導(dǎo)。

        2.3 配置驅(qū)動(dòng)程序

        在移植過程中,除了完成CPU和系統(tǒng)初始化外,另一個(gè)重要的工作是完成對設(shè)備驅(qū)動(dòng)的配置和開發(fā),首先介紹一下配置和管理驅(qū)動(dòng)程序的設(shè)備驅(qū)動(dòng)構(gòu)架VxBus,然后以配置串口驅(qū)動(dòng)為例進(jìn)行說明。

        VxBus是一套設(shè)備驅(qū)動(dòng)程序,它將各種不同功能設(shè)備集成到一個(gè)統(tǒng)一的程序中,采用模塊化設(shè)計(jì)思想降低驅(qū)動(dòng)對BSP的依賴度,提供了對設(shè)備驅(qū)動(dòng)的管理,使驅(qū)動(dòng)的配置和使用更加靈活和方便。驅(qū)動(dòng)配置流程如圖5所示。

        圖5 驅(qū)動(dòng)配置流程

        圖5是VxBus構(gòu)架下硬件驅(qū)動(dòng)程序的配置流程,主要分為三個(gè)階段:硬件發(fā)現(xiàn)階段、硬件驅(qū)動(dòng)注冊階段、驅(qū)動(dòng)初始化階段(驅(qū)動(dòng)初始化又分為兩個(gè)階段)。硬件發(fā)現(xiàn)階段硬件初始化函數(shù)sys HwInit()調(diào)用hardWareInter FaceInit()函數(shù)來初始化硬件內(nèi)存分配機(jī)制;在驅(qū)動(dòng)注冊階段,hardWareInter FaceInit()調(diào)用hard WareInter FaceBus-Init()函數(shù),hard WareInter FaceBusInit()函數(shù)再調(diào)用Vxb-DevRegister()函數(shù)完成驅(qū)動(dòng)注冊和激活;然后進(jìn)入驅(qū)動(dòng)初始化階段,初始化第一階段發(fā)生在內(nèi)核初始化之前,初始化第二階段發(fā)生在內(nèi)核初始化后。

        本文以串口驅(qū)動(dòng)為例,介紹在VxBus構(gòu)架下配置的過程。為了使系統(tǒng)認(rèn)識(shí)要添加的硬件設(shè)備,首先要向系統(tǒng)中添加設(shè)備信息。hwconf.c文件是VxBus構(gòu)架下負(fù)責(zé)配置驅(qū)動(dòng)的文件,文件中列出了所有添加過的硬件設(shè)備,包括其資源信息。添加的信息用兩個(gè)數(shù)據(jù)結(jié)構(gòu)來表示:一個(gè)是hcf Resource,另一個(gè)是hcf Device。前者是描述硬件的信息,后者是一個(gè)設(shè)備列表,包括設(shè)備名、設(shè)備號等。

        在向hwconf.c添加設(shè)備信息時(shí),首先在config.h中添加包含串口組件的信息:

        INCLUDE_SERIAL表示包含串口組件;NUM_TTY表示串口數(shù)量;CONSOLE_BAUD_RATE表示串口波特率;CONSOLE_TTY表示控制終端使用的通道號,一般定義為0[5]。

        然后向hwconf.c中加入描述串口的兩個(gè)數(shù)據(jù)結(jié)構(gòu):

        添加完設(shè)備信息后,系統(tǒng)已可以識(shí)別硬件設(shè)備,通過ns16550Dev Register()函數(shù)完成設(shè)備注冊及激活[6]。

        在完成設(shè)備注冊激活后,開始設(shè)備驅(qū)動(dòng)初始化過程,第一階段的初始化函數(shù)在sys HwInit()中進(jìn)行,此時(shí)內(nèi)核還未初始化。需要完成的工作有關(guān)閉中斷、串口寄存器的配置和設(shè)置串口通信參數(shù),這里設(shè)置串口波特率為115 200,數(shù)據(jù)位設(shè)置為8位,停止位為1位,無校驗(yàn),無流控。以下是部分代碼:

        第二階段初始化在sys HwInit2()中進(jìn)行,此時(shí)內(nèi)核已完成初始化,此時(shí)的工作是完成中斷服務(wù)程序與中斷向量的連接。通過intConnect()函數(shù)來實(shí)現(xiàn)。

        以上為串口驅(qū)動(dòng)在VxBus構(gòu)架下添加的過程,對于其他硬件設(shè)備驅(qū)動(dòng)可按相同的方法添加。

        結(jié) 語

        本文以龍芯3A-RS780E開發(fā)板為硬件平臺(tái),介紹對道操作系統(tǒng)移植所需的BSP的設(shè)計(jì)和實(shí)現(xiàn)。針對不同的CPU和主板,BSP的實(shí)現(xiàn)也不相同,需要根據(jù)硬件版的具體功能進(jìn)行設(shè)計(jì),但基本方法類似,本文對開發(fā)其他類型目標(biāo)板具有一定參考價(jià)值。

        [1]北京龍芯中科技術(shù)服務(wù)有限公司.LS3A-RS780開發(fā)板使用手冊,2010.

        [2]中國科學(xué)院計(jì)算技術(shù)研究所,龍芯中科技術(shù)有限公司.龍芯3A處理器用戶手冊,2014.

        [3]MIPS.MIPS Architecture For Programmers Volume III: The MIPS32 and micro MIPS32 Privileged Resource Architecture,Revision0.95,2001.

        [4]殷杰波.基于龍芯3A處理器的嵌入式操作系統(tǒng)BSP設(shè)計(jì)技術(shù)[J].測控技術(shù),2014,33(7):121-123.

        [5]楊曄,安軍社.Vx Works在龍芯處理器上的移植與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2010,26(35):31-33.

        [6]譚亮,李一平,任申真.基于VxBus模式的多串口卡驅(qū)動(dòng)程序的設(shè)計(jì)[J].測控技術(shù),2011,30(7):73-75.

        羅一涵、趙建峰、喬楊(碩士研究生),主要研究方向?yàn)榍度胧较到y(tǒng)與應(yīng)用;陳朔鷹(副教授),研究方向?yàn)橛?jì)算機(jī)操作系統(tǒng)、嵌入式系統(tǒng)應(yīng)用。

        69觀察法可有效提高光伏電池充電效率,并提供穩(wěn)定的輸出電壓,保證了光伏照明系統(tǒng)能夠高效穩(wěn)定地工作,達(dá)到了設(shè)計(jì)的預(yù)期。系統(tǒng)的電池容量檢測模塊中的過放保護(hù)保證了在電量過低或蓄電池端電壓過低時(shí)可以對蓄電池提供有效保護(hù)。針對在溫度變化劇烈的狀況下,獨(dú)立光伏公用照明系統(tǒng)加入了溫度補(bǔ)償功能,保證系統(tǒng)在復(fù)雜溫度情況下都能正常工作。

        [1]李春玲,石季英,武艷輝,等.模糊控制的擾動(dòng)觀察法在光伏MPPT中的應(yīng)用[J].電氣傳動(dòng),2013,43(2):62-64.

        [2]董婧.基于MPPT的光伏系統(tǒng)充電控制器的研究[D].西安:西安工業(yè)大學(xué),2014.

        [3]鄭詩程,劉偉,葛蘆生.具有TM PPT功能的太陽能光伏充電系統(tǒng)研究[J].電子測量與儀器學(xué)報(bào),2008,22(3):11-15.

        [4]李明楊.獨(dú)立光伏發(fā)電系統(tǒng)的控制策略及其應(yīng)用研究基于MPPT[D].長沙:中南大學(xué),2010.

        [5]曹旭陽.獨(dú)立光伏路燈系統(tǒng)MPPT控制器設(shè)計(jì)[D].青島:中國海洋大學(xué),2007.

        [6]楊自娟.基于模糊控制的太陽能MPPT充電控制器的研究與實(shí)現(xiàn)[D].廣州:華南理工大學(xué)電力學(xué)院,2010.

        [7]黃瑞,孫黎霞.基于占空比模糊控制的光伏發(fā)電系統(tǒng)MPPT技術(shù)[J].電子設(shè)計(jì)工程2013,21(7):101-104.

        [8]王海龍,王維俊,張國平,等.基于STM32F103芯片的光伏充電控制器設(shè)計(jì)[J].微電機(jī),2013,46(3):54-57.

        [9]歐陽名三.獨(dú)立光伏系統(tǒng)中蓄電池管理的研究[D].安徽:合肥工業(yè)大學(xué),2004.

        [10]王立志,宋偉,汪徳洋,等.STM32的風(fēng)光互補(bǔ)發(fā)電蓄電池充放電保護(hù)研究[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2016,16 (2):21-23.

        溫宗周(副教授)、費(fèi)騰蛟(碩士研究生):主要研究方向?yàn)榍度胧较到y(tǒng)應(yīng)用與開發(fā);段俊瑞(教授),主要研究方向?yàn)槠囯娮拥拈_發(fā)與應(yīng)用。

        Transplant of DeltaOS Embedded System Based on Loongson3A

        Luo Yihan,Chen Shuoying,Zhao Jianfeng,Qiao Yang

        (School of Computer Science&Technology,Beijing Institute of Technology,Beijing 100081,China)

        In the development of embedded system application,the transplantation is a frequently encountered problem.In the paper,taking the Loogson3A processor as the carrier,according to its exception handing mechanism and configuration of hardware resources,the design completes the startup of system,develops and configurates the driver of serial port.The embedded real-time system DeltaOS is transplanted on the Loogson3A successfully,which provides the necessary foundation for the application and other driver development.

        Loogson3A;exception handing;embedded real-time system;driver

        TP316

        A

        (責(zé)任編輯:楊迪娜2016-06-06)

        (責(zé)任編輯:楊迪娜2016-05-09)

        猜你喜歡
        設(shè)備系統(tǒng)
        諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        基于VB6.0+Access2010開發(fā)的設(shè)備管理信息系統(tǒng)
        基于MPU6050簡單控制設(shè)備
        電子制作(2018年11期)2018-08-04 03:26:08
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        500kV輸變電設(shè)備運(yùn)行維護(hù)探討
        一级黄片草逼免费视频| 236宅宅理论片免费| 国产欧美一区二区成人影院| 久久高潮少妇视频免费| 亚洲天堂av福利在线| 午夜男女很黄的视频| 久久免费看少妇高潮v片特黄| 亚洲 国产 韩国 欧美 在线| 久久99精品综合国产女同| 无码人妻精品一区二区三| 日本亚洲国产一区二区三区| 韩国无码精品人妻一区二| av在线免费观看男人天堂| 久久人人爽爽爽人久久久 | аⅴ天堂中文在线网| 亚洲老妇色熟女老太| 日韩中文字幕精品免费一区| 日本办公室三级在线观看| 日韩精品专区av无码| 激情亚洲一区国产精品| 亚洲免费不卡av网站| 伊人久久大香线蕉av色婷婷色| 成人国产精品一区二区视频| 综合精品欧美日韩国产在线| 国产三级精品三级在线| 好吊妞视频这里有精品| 狠狠色综合网站久久久久久久| 久久久久综合一本久道| 熟妇人妻精品一区二区视频免费的| 性无码专区无码| 一区一级三级在线观看| 国产一区二区三区porn| 精品亚洲成a人在线观看| 大伊香蕉在线精品视频75| 久久精品综合国产二区| 亚洲精选自偷拍一区二| 精品国产一区二区三区a| 久久久久久久极品内射| 欧美在线综合| 色婷婷久色国产成人免费| 麻豆蜜桃av蜜臀av色欲av|