• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于ARM CortexTM-M4的MQX-RTOS啟動(dòng)流程剖析*

    2015-12-23 08:49:55張建王宜懷
    自動(dòng)化與信息工程 2015年4期
    關(guān)鍵詞:堆棧指針內(nèi)核

    張建 王宜懷

    ?

    基于ARM CortexTM-M4的MQX-RTOS啟動(dòng)流程剖析*

    張建1,2王宜懷1,2

    (1.蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 2.軟件新技術(shù)與產(chǎn)業(yè)化協(xié)同創(chuàng)新中心)

    結(jié)合ARM Cortex-M4的地址映射、工程鏈接文件intflash.ld分析Kinetis MK60DN512ZVLQ10芯片的地址空間的分配情況,剖析芯片從加電復(fù)位跳轉(zhuǎn)到駐留在ROM開始地址的中斷向量表處執(zhí)行,依次完成系統(tǒng)堆棧指針、進(jìn)程堆棧指針、切換堆棧指針等設(shè)置,最后調(diào)用MQX初始化函數(shù)完成MQX-RTOS的啟動(dòng),在對(duì)啟動(dòng)過(guò)程的代碼進(jìn)行合理裁剪的基礎(chǔ)上,給出較詳細(xì)的注釋,為研究其他RTOS的啟動(dòng)提供一定的借鑒。

    MQX系統(tǒng);RTOS;ARM Cortex-M4芯片;啟動(dòng)流程

    0 引言

    MQX(message queue executive)是一種廣泛應(yīng)用于工業(yè)控制、醫(yī)療電子、家用電器等領(lǐng)域的嵌入式實(shí)時(shí)操作系統(tǒng)(embedded real time operation system,RTOS),相對(duì)其他的嵌入式實(shí)時(shí)操作系統(tǒng),其內(nèi)核精簡(jiǎn)、實(shí)時(shí)性較高,具有技術(shù)支持、開發(fā)工具成熟、外設(shè)驅(qū)動(dòng)豐富等特點(diǎn)而備受開發(fā)人員歡迎。RTOS的啟動(dòng)過(guò)程具有復(fù)雜性高和啟動(dòng)時(shí)間短的特點(diǎn),深入剖析MQX-RTOS的啟動(dòng)流程,對(duì)提高軟件開發(fā)、編寫高效的軟件代碼有很大的幫助[1]。

    以蘇州大學(xué)飛思卡爾嵌入式實(shí)驗(yàn)中心發(fā)布的AMQXFW工程框架,結(jié)合ARM Cortex-M4的地址映射、工程鏈接文件intflash.ld分析Kinetis MK60DN512ZVLQ10芯片地址空間的分配情況[2]。剖析芯片從加電復(fù)位跳轉(zhuǎn)到駐留在ROM開始地址(地址為0x0000_0000)的中斷向量表處執(zhí)行,依次設(shè)置系統(tǒng)堆棧指針、進(jìn)程堆棧指針、切換堆棧指針、關(guān)看門狗、端口時(shí)鐘門控、系統(tǒng)時(shí)鐘、初始化全局變量,調(diào)用MQX初始化函數(shù)完成MQX-RTOS啟動(dòng)的復(fù)雜過(guò)程,對(duì)啟動(dòng)過(guò)程的代碼進(jìn)行合理的裁剪并給出剖析的注釋,可深入理解MQX-RTOS的啟動(dòng)過(guò)程[3]。

    1 存儲(chǔ)器空間地址映射

    存儲(chǔ)器空間地址映像是芯片的“地圖”,規(guī)定了芯片上所有設(shè)備的地址范圍,不同芯片組的存儲(chǔ)器空間地址映像也不相同。ARM Cortex-M4的K60系列的存儲(chǔ)器空間地址映像對(duì)照如表1所示,MK60DN512ZVLQ10芯片沒(méi)有FlexNVM和FlexRAM,其存儲(chǔ)器空間地址映像對(duì)照如表2所示。

    表1 K60系列芯片的存儲(chǔ)器空間地址映像

    表2 MK60DN512ZVLQ10芯片的存儲(chǔ)器空間地址映像

    ARM Cortex-M4的K60系列ROM地址范圍為0x0000_0000~0x0FFF_FFFF,共計(jì)256MB的ROM區(qū)域,該區(qū)域主要存放中斷向量表、操作系統(tǒng)代碼和常量等內(nèi)容。Kinetis MK60DN512ZVLQ10芯片只配置512 kB的Flash,其地址只使用了起始的512 kB地址空間,即0x0000_0000~0x0008_0000,該區(qū)域主要存放中斷向量表、Flash模塊配置信息、MQX-RTOS操作系統(tǒng)代碼和常量等內(nèi)容。K60系列的RAM地址范圍為0x1800_0000~0x200F_FFFF,共計(jì)129 MB的RAM區(qū)域,主要存放運(yùn)行時(shí)的中斷向量表、支持操作系統(tǒng)運(yùn)行的代碼、常變量、靜態(tài)變量、全局變量和堆棧等內(nèi)容。Kinetis MK60DN512ZVLQ10芯片只配置了128 kB的SRAM,其地址只使用了SRAM_L末尾的64 kB和SRAM_U起始的64 kB空間,地址范圍為0x1FFF_0000~0x0x2000_FFFF[4]。

    Flash和SRAM存儲(chǔ)空間的分配,在AMQXFW工程的鏈接文件intflash.ld中定義如下:

    MEMORY

    {

    /* 異常中斷向量表 */

    vectorrom (RX): ORIGIN = 0x00000000, LENGTH = 0x00000400

    /* Flash模塊配置 */

    cfmprotrom (R): ORIGIN = 0x00000400, LENGTH = 0x00000020

    /* 代碼和常量 */

    rom (RX): ORIGIN = 0x00000420, LENGTH = 0x0007FBE0

    /* SRAM */

    ram (RW): ORIGIN = 0x1FFF0000, LENGTH = 0x00020000

    /* 內(nèi)核數(shù)據(jù)區(qū)結(jié)束處 */

    end_of_kd (RW): ORIGIN = 0x2000FFF0, LENGTH = 0x00000000

    /* 啟動(dòng)堆棧 */

    bstack (RW): ORIGIN = 0x2000FA00, LENGTH = 0x00000200

    /* 啟動(dòng)堆棧結(jié)束處 */

    end_bstack (RW): ORIGIN = 0x2000FC00, LENGTH = 0x00000000

    }

    由intflash.ld文件的定義,MK60DN512ZVLQ10的ROM、RAM的地址映射分別如圖1和圖2所示;512 kB的ROM主要分為1 kB的中斷向量表+32 B的Flash配置+(511 kB-32 B)的代碼和常量區(qū),其中1 kB的中斷向量共包含256個(gè)中斷項(xiàng),每個(gè)中斷占4個(gè)字節(jié)[5]。

    圖1 MK60DN512ZVLQ10 ROM地址空間映射

    圖2 MK60DN512ZVLQ10 RAM地址空間映射

    128 kB的RAM由編譯器根據(jù)MQX系統(tǒng)預(yù)定義的常量進(jìn)行有條件地編譯使用。一般來(lái)說(shuō),RAM主要有中斷向量表、數(shù)據(jù)段、BSS段和內(nèi)核數(shù)據(jù)等,其中內(nèi)核數(shù)據(jù)區(qū)約從0x1FFF_0330開始,到0x2000_ FFFF結(jié)束,約為127 kB,不同的工程編譯出來(lái)的內(nèi)核數(shù)據(jù)區(qū)大小也不盡相同。

    MK60DN512ZVLQ10芯片的啟動(dòng)可分為芯片啟動(dòng)和MQX-RTOS系統(tǒng)啟動(dòng)2個(gè)階段,啟動(dòng)流程如圖3所示。

    2 芯片啟動(dòng)階段

    MK60DN512ZVLQ10芯片加電復(fù)位跳轉(zhuǎn)到駐留在ROM開始地址的中斷向量表處執(zhí)行,依次設(shè)置系統(tǒng)堆棧指針、進(jìn)程堆棧指針、切換堆棧指針、關(guān)看門狗、端口時(shí)鐘門控、系統(tǒng)時(shí)鐘、初始化全局變量[6]。

    圖3 MQX-RTOS啟動(dòng)流程

    2.1引導(dǎo)

    芯片上電,ARM Cortex-M4處理器架構(gòu)的芯片將寄存器清0,同時(shí)自動(dòng)執(zhí)行0x0000_0000地址處的指令。對(duì)存儲(chǔ)映射區(qū)域進(jìn)行解析,位于0x0000_0000為ROM區(qū)域的中斷向量表內(nèi)容。引導(dǎo)程序從中斷向量表中取第一個(gè)表項(xiàng)(地址為:0x0000_0000)的內(nèi)容作為系統(tǒng)棧指針,即主堆棧指針(main stack pointer,MSP);從中斷向量表中取第二個(gè)表項(xiàng)(地址為:0x0000_0004)的內(nèi)容作為系統(tǒng)啟動(dòng)函數(shù)的地址,并放入程序計(jì)數(shù)器(Program Counter,PC)中,接著進(jìn)入執(zhí)行PC指向處的指令,進(jìn)入__boot函數(shù)的執(zhí)行。ROM起始的1 kB放置的256個(gè)中斷,每個(gè)中斷占4個(gè)字節(jié),以下代碼為前2個(gè)中斷[7]。

    /* 第1個(gè)中斷項(xiàng)

    * 中斷系統(tǒng)棧指針,值在intflash.ld文件中定義,其值和end_bstack相同

    * end_bstack=0x2000_FC00*/

    (vector_entry)__BOOT_STACK_ADDRESS,

    /* 第2個(gè)中斷項(xiàng)

    * 啟動(dòng)函數(shù)指針宏定義為__boot

    * __boot為boot.s中的標(biāo)號(hào) */

    BOOT_START,

    ...

    2.2__boot啟動(dòng)

    __boot啟動(dòng)代碼在boot.s文件中,采用匯編語(yǔ)言編寫加快啟動(dòng)速度。__boot主要設(shè)置了啟動(dòng)過(guò)程中禁中斷、切換堆棧,并跳轉(zhuǎn)到startup.c的__thumb_startup處運(yùn)行。__boot代碼如下。

    __boot:

    // 禁中斷清除掛起標(biāo)志

    ldr r0, =NVIC_ICER0

    ldr r1, =NVIC_ICPR0

    ldr r2, =0xFFFFFFFF

    mov r3, #8

    // 循環(huán)設(shè)置8個(gè)禁中斷清除掛起標(biāo)志寄存器

    _boot_loop:

    cbz r3, _boot_loop_end

    str r2, [r0], #4 /* NVIC_ICERx - 清除IRQ使能 */

    str r2, [r1], #4 /* NVIC_ICPRx - 清除掛起IRQ標(biāo)志 */

    sub r3, r3, #1

    b _boot_loop

    _boot_loop_end:

    // 用主堆棧指針值設(shè)置進(jìn)程堆棧指針的值

    mrs r0, MSP

    msr PSP, r0

    // 切換到PSP CONTROL[1]為1使用PSP 為0使用MSP

    mrs r0, CONTROL

    orr r0, r0, #2

    msr CONTROL, r0

    isb #15

    // 跳轉(zhuǎn)到startup.c的__thumb_startup處執(zhí)行

    .extern __thumb_startup

    b __thumb_startup

    2.3__thumb_startup函數(shù)

    __thumb_startup函數(shù)在startup.c文件中,主要完成看門狗、端口時(shí)鐘門控、系統(tǒng)時(shí)鐘等設(shè)置,初始化全局變量,調(diào)用main函數(shù),進(jìn)入main函數(shù)運(yùn)行。__thumb_startup函數(shù)代碼如下:

    //設(shè)置看門狗

    wdog_disable1();

    //設(shè)置端口時(shí)鐘門控

    gpio_io_init();

    //初始化全局變量

    zero_fill_bss();

    //拷貝ROM至RAM,本文件中SUPPORT_ROM_TO_RAM定義為1

    #if SUPPORT_ROM_TO_RAM

    if (__S_romp != 0L)/* __S_romp 在intflash.ld中定義 */

    __copy_rom_sections_to_ram();

    #endif

    //設(shè)置系統(tǒng)時(shí)鐘

    SystemClockSetup(ClockSource_EX50M,CoreClock_96M);

    //進(jìn)入主程序Main

    exit(main(0, argv));

    3 MQX-RTOS系統(tǒng)啟動(dòng)階段

    MQX-RTOS系統(tǒng)啟動(dòng)階段主要是通過(guò)main函數(shù)調(diào)用_mqx函數(shù)完成MQX-RTOS系統(tǒng)的啟動(dòng)。

    3.1 main函數(shù)

    main函數(shù)在main.c文件中,主要根據(jù)定義的MQX初始化常量調(diào)用_mqx函數(shù)完成MQX-RTOS系統(tǒng)的啟動(dòng)。main函數(shù)代碼如下:

    //MQX初始化結(jié)構(gòu)體常量MQX_init_struct,在mqx_init.c文件中賦值

    extern const MQX_INITIALIZATION_STRUCT MQX_init_struct;

    //調(diào)用_mqx,啟動(dòng)MQX-RTOS系統(tǒng)

    _mqx( (MQX_INITIALIZATION_STRUCT_PTR) &MQX_init_struct );[8]

    3.2_mqx函數(shù)

    _mqx函數(shù)主要完成MQX-RTOS系統(tǒng)的啟動(dòng),具體步驟如下:

    1) 初始化內(nèi)核數(shù)據(jù)區(qū)

    內(nèi)核數(shù)據(jù)區(qū)是負(fù)責(zé)記錄MQX系統(tǒng)運(yùn)行狀態(tài)及資源使用情況的存儲(chǔ)區(qū),在開始正常工作之前,要為內(nèi)核數(shù)據(jù)區(qū)指定合適的初始值。

    初始化內(nèi)核數(shù)據(jù)區(qū)依次執(zhí)行:創(chuàng)建內(nèi)核數(shù)據(jù)區(qū)訪問(wèn)指針→填充內(nèi)核數(shù)據(jù)區(qū)→啟動(dòng)對(duì)中斷的支持→創(chuàng)建系統(tǒng)空閑任務(wù)?!鷦?chuàng)建就緒任務(wù)隊(duì)列數(shù)組→創(chuàng)建任務(wù)操作信號(hào)量。

    2) 初始化外設(shè)

    MQX操作系統(tǒng)的運(yùn)行需要硬件平臺(tái)的支持,因此在系統(tǒng)啟動(dòng)過(guò)程中,需對(duì)硬件平臺(tái)進(jìn)行初始化設(shè)定。

    初始化外設(shè)依次執(zhí)行:初始化MQX中斷系統(tǒng)→初始化系統(tǒng)時(shí)間滴答→初始化IO子系統(tǒng)。

    3) 調(diào)度系統(tǒng)初始化與啟動(dòng)

    啟動(dòng)調(diào)度系統(tǒng)是MQX啟動(dòng)過(guò)程的最后一個(gè)環(huán)節(jié),成功啟動(dòng)調(diào)度系統(tǒng)后,整個(gè)系統(tǒng)中包含的應(yīng)用任務(wù)將在調(diào)度系統(tǒng)的管理下有序地運(yùn)行。

    調(diào)度系統(tǒng)初始化與啟動(dòng)依次執(zhí)行:設(shè)置缺省使用的時(shí)間片→創(chuàng)建并啟動(dòng)空閑任務(wù)→創(chuàng)建自啟動(dòng)應(yīng)用任務(wù)→啟動(dòng)調(diào)度系統(tǒng)。

    啟動(dòng)調(diào)度系統(tǒng)成功后,標(biāo)志著RTOS系統(tǒng)成功啟動(dòng),用戶開發(fā)的程序可通過(guò)調(diào)度系統(tǒng)來(lái)運(yùn)行。

    4 結(jié)語(yǔ)

    MQX-RTOS系統(tǒng)啟動(dòng)過(guò)程包括芯片啟動(dòng)和MQX系統(tǒng)啟動(dòng)2個(gè)階段。MQX-RTOS系統(tǒng)成功啟動(dòng)調(diào)度系統(tǒng)后,由調(diào)度系統(tǒng)合理有序地調(diào)度各個(gè)任務(wù)、中斷運(yùn)行。本文主要結(jié)合蘇州大學(xué)飛思卡爾嵌入式實(shí)驗(yàn)中心發(fā)布的AMQXFW工程框架進(jìn)行深入剖析,對(duì)主要的啟動(dòng)代碼進(jìn)行分析,為從事RTOS系統(tǒng)的啟動(dòng)研究提供了研究基礎(chǔ),同時(shí)為基于MQX系統(tǒng)應(yīng)用程序開發(fā)提供一定的借鑒。

    參考文獻(xiàn)

    [1] 王宜懷,朱仕浪,姚望舒.嵌入式實(shí)時(shí)操作系統(tǒng)MQX應(yīng)用開發(fā)技術(shù)—ARM Cortex-M微處理器[M].北京:電子工業(yè)出版社,2014.

    [2] 朱仕浪,王宜懷,馮德旺.MQX實(shí)時(shí)操作系統(tǒng)構(gòu)件化工程框架研究[J].武漢理工大學(xué)學(xué)報(bào),2013,35(10):135-140.

    [3] 蔣建武,王宜懷.基于ARM Cortex-M4的MQX中斷機(jī)制深度剖析[J].電子技術(shù)與軟件工程,2014(22):214-217,233.

    [4] Freescale. MQX User Guide Rev.12[M]. 2014.

    [5] 王宜懷,吳瑾,蔣銀珍.嵌入式系統(tǒng)原理與實(shí)踐——ARM Cortex-M4 Kinetis微控制器[M].北京:電子工業(yè)出版社, 2012.3.

    [6] Freescale.K60 Sub-Family Reference Manual Rev.6[M]. 2011.

    [7] Freescale. Freescale MQX RTOS Reference Manual Rev.16 [M]. 2014.

    [8] Freescale. Cortex-MTM System Design Kit Technical Reference Manual Revision r0p0[M]. 2011.

    [9] Giovani Gracioli, Sebastian Fischmeister. Tracing and recording interrupts in embedded software[J]. Journal of Systems Architecture,2012,58(9): 372-385.

    [10] 董榮勝,古天龍.計(jì)算機(jī)科學(xué)與技術(shù)方法論[M].北京:人民郵電出版社,2002.

    [11] Enkhbaatar Tumenjargal, Luubaatar Badarch, Hyeokjae Kwon, et al. Embedded software and hardware implementation system for a human machine interface based on ISOAgLib[J]. Journal of Zhejiang University-Science C (Computers & Electronics), 2013,14(3):155-166.

    The Analysis of Starting Process of MQX-RTOS Based on ARM CortexTM-M4

    Zhang Jian1,2Wang Yihuai1,2

    (1.School of Computer Science & Technology, Soochow University, Suzhou 2.Collaborative Innovation Center of Novel Software Technology and Industrialization)

    Based on ARM Cortex-M4’s address mapping and the project link file “intflash.ld”, this paper analyzes the address space distribution statement of Kinetis MK60DN512ZVLQ10 chip, and the starting process of the chip, which first jumps to the interrupt vector table at the beginning of the ROM address after power on reset, and then sets the system stack pointer, process stack pointer, switches stack pointer, and finally calls the MQX initialization function to complete the MQX-RTOS starting process. In the basis of reasonable tailoring the start-up code, this paper gives more detailed annotations, which provide certain reference for the further study of other RTOS.

    MQX System; RTOS; ARM Cortex-M4 Chip; Booting Process

    張建,男,1980年生,講師/碩士,主要研究方向:MIS系統(tǒng)開發(fā)、嵌入式系統(tǒng)應(yīng)用。E-mail: zhangjian2012@suda.edu.cn

    王宜懷(通信作者),男,1962年生,教授/博士、博導(dǎo),主要研究方向:嵌入式系統(tǒng)、傳感網(wǎng)與智能控制技術(shù)。E-mail: Yihuaiw@suda.edu.cn

    國(guó)家自然科學(xué)基金資助項(xiàng)目(61070169:無(wú)線網(wǎng)傳感器網(wǎng)絡(luò)中緊急事件信息發(fā)布的可靠性研究)

    猜你喜歡
    堆棧指針內(nèi)核
    萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
    強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    偷指針的人
    基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
    Linux內(nèi)核mmap保護(hù)機(jī)制研究
    嵌入式軟件堆棧溢出的動(dòng)態(tài)檢測(cè)方案設(shè)計(jì)*
    為什么表的指針都按照順時(shí)針?lè)较蜣D(zhuǎn)動(dòng)
    基于堆棧自編碼降維的武器裝備體系效能預(yù)測(cè)
    基于改進(jìn)Hough變換和BP網(wǎng)絡(luò)的指針儀表識(shí)別
    ARM Cortex—MO/MO+單片機(jī)的指針變量替換方法
    日本av手机在线免费观看| 精品人妻一区二区三区麻豆| 国产人妻一区二区三区在| 国产片特级美女逼逼视频| 国产成人影院久久av| 岛国在线免费视频观看| 一区福利在线观看| 国产亚洲5aaaaa淫片| 午夜福利高清视频| av福利片在线观看| 国产午夜精品论理片| av专区在线播放| 不卡视频在线观看欧美| 日本-黄色视频高清免费观看| 蜜臀久久99精品久久宅男| 亚洲综合色惰| 美女大奶头视频| 久久99蜜桃精品久久| 2022亚洲国产成人精品| 久久热精品热| 大型黄色视频在线免费观看| 男的添女的下面高潮视频| 99久久久亚洲精品蜜臀av| 国产精品久久久久久久电影| 大香蕉久久网| 日本熟妇午夜| 欧美变态另类bdsm刘玥| 最近最新中文字幕大全电影3| 国产一级毛片在线| 国产黄色视频一区二区在线观看 | 亚洲欧洲日产国产| 国产一区二区激情短视频| 亚洲精品色激情综合| 97超视频在线观看视频| 国产高清激情床上av| 日韩欧美一区二区三区在线观看| 久久人人精品亚洲av| 精品一区二区三区人妻视频| 在线a可以看的网站| 白带黄色成豆腐渣| 精品少妇黑人巨大在线播放 | 日韩在线高清观看一区二区三区| 国产午夜精品一二区理论片| 国产成人a区在线观看| av在线老鸭窝| 国产高清三级在线| 亚洲三级黄色毛片| 国产精品人妻久久久久久| 亚洲成av人片在线播放无| 在线国产一区二区在线| 日本熟妇午夜| 夫妻性生交免费视频一级片| 网址你懂的国产日韩在线| 久久久久久久久久久免费av| 九草在线视频观看| 久久久久久久久久成人| 91精品一卡2卡3卡4卡| 久久久欧美国产精品| 中文资源天堂在线| 国产精品99久久久久久久久| 亚洲无线观看免费| 少妇高潮的动态图| 99久久九九国产精品国产免费| 看十八女毛片水多多多| 黄色一级大片看看| 三级经典国产精品| 国产午夜福利久久久久久| 亚洲成人久久性| 99久久久亚洲精品蜜臀av| 亚洲精品日韩在线中文字幕 | 欧美成人一区二区免费高清观看| 国产高清有码在线观看视频| 亚洲五月天丁香| av卡一久久| 好男人视频免费观看在线| 男人和女人高潮做爰伦理| 麻豆乱淫一区二区| 亚洲天堂国产精品一区在线| 免费人成在线观看视频色| 欧美人与善性xxx| 一个人看的www免费观看视频| 成人亚洲欧美一区二区av| 全区人妻精品视频| 欧美一区二区精品小视频在线| 国产精品无大码| 国产精品av视频在线免费观看| 久久久久久久久久黄片| 国产精品爽爽va在线观看网站| 日本av手机在线免费观看| 岛国在线免费视频观看| 五月玫瑰六月丁香| 国产一区亚洲一区在线观看| av天堂在线播放| 中文欧美无线码| 久久精品夜夜夜夜夜久久蜜豆| 丰满人妻一区二区三区视频av| 一边亲一边摸免费视频| 成年女人永久免费观看视频| 最近中文字幕高清免费大全6| 能在线免费看毛片的网站| 精品一区二区三区视频在线| 国产中年淑女户外野战色| 一级av片app| 尤物成人国产欧美一区二区三区| 亚洲av成人精品一区久久| 亚洲人成网站在线观看播放| 国产免费男女视频| 日本熟妇午夜| 精品不卡国产一区二区三区| 中文字幕av成人在线电影| 亚洲精品成人久久久久久| 久久这里只有精品中国| 亚洲国产欧美在线一区| 嫩草影院精品99| 亚洲欧美日韩卡通动漫| 99久国产av精品国产电影| 99热这里只有是精品在线观看| 国产91av在线免费观看| 中文字幕人妻熟人妻熟丝袜美| 午夜精品一区二区三区免费看| 免费av观看视频| 伦精品一区二区三区| 免费av不卡在线播放| ponron亚洲| 色噜噜av男人的天堂激情| 亚洲自偷自拍三级| 搡老妇女老女人老熟妇| 精品欧美国产一区二区三| 婷婷色av中文字幕| 国内久久婷婷六月综合欲色啪| 久久久a久久爽久久v久久| 国产免费男女视频| 小说图片视频综合网站| 日日啪夜夜撸| 免费电影在线观看免费观看| 舔av片在线| 欧美成人a在线观看| 在现免费观看毛片| 一级黄片播放器| 国产单亲对白刺激| 国产精品永久免费网站| 麻豆一二三区av精品| 99久久九九国产精品国产免费| 成人毛片60女人毛片免费| 村上凉子中文字幕在线| 热99在线观看视频| 狠狠狠狠99中文字幕| 97热精品久久久久久| 国产精品久久久久久精品电影小说 | 日日干狠狠操夜夜爽| 国产成人影院久久av| 非洲黑人性xxxx精品又粗又长| 久久草成人影院| 日韩欧美国产在线观看| 亚洲精华国产精华液的使用体验 | 午夜亚洲福利在线播放| 真实男女啪啪啪动态图| 人人妻人人看人人澡| 国产精品.久久久| 亚洲一区二区三区色噜噜| av国产免费在线观看| 一边亲一边摸免费视频| 男女视频在线观看网站免费| 简卡轻食公司| 九九爱精品视频在线观看| 波多野结衣巨乳人妻| 三级经典国产精品| 国产极品天堂在线| 久久久久久伊人网av| 最近视频中文字幕2019在线8| 日本爱情动作片www.在线观看| 简卡轻食公司| 老师上课跳d突然被开到最大视频| 亚洲人成网站在线观看播放| 天天躁夜夜躁狠狠久久av| 波多野结衣高清作品| 欧美色视频一区免费| 欧美极品一区二区三区四区| 美女被艹到高潮喷水动态| 网址你懂的国产日韩在线| 日韩精品青青久久久久久| 菩萨蛮人人尽说江南好唐韦庄 | 此物有八面人人有两片| 免费不卡的大黄色大毛片视频在线观看 | 一进一出抽搐动态| 亚洲av电影不卡..在线观看| 日韩欧美在线乱码| 人体艺术视频欧美日本| 2022亚洲国产成人精品| 村上凉子中文字幕在线| АⅤ资源中文在线天堂| 99riav亚洲国产免费| 久久草成人影院| 欧美变态另类bdsm刘玥| 久久精品91蜜桃| 国产精品无大码| 有码 亚洲区| 国国产精品蜜臀av免费| 99九九线精品视频在线观看视频| 国产精品嫩草影院av在线观看| av女优亚洲男人天堂| 国产 一区 欧美 日韩| 国产精品乱码一区二三区的特点| 天天躁夜夜躁狠狠久久av| 亚洲综合色惰| 狠狠狠狠99中文字幕| 秋霞在线观看毛片| 老师上课跳d突然被开到最大视频| 久久久久免费精品人妻一区二区| 日本黄大片高清| www.色视频.com| 亚洲av一区综合| 51国产日韩欧美| 国产色婷婷99| 99久久九九国产精品国产免费| 国产亚洲5aaaaa淫片| 久久精品影院6| 欧美xxxx黑人xx丫x性爽| 国产精品蜜桃在线观看 | 蜜臀久久99精品久久宅男| 五月玫瑰六月丁香| 中国美女看黄片| 啦啦啦啦在线视频资源| 国产精品野战在线观看| 99视频精品全部免费 在线| 成人三级黄色视频| 有码 亚洲区| 亚洲av免费高清在线观看| 中文字幕制服av| 色5月婷婷丁香| 亚洲精品乱码久久久久久按摩| 国产高清视频在线观看网站| 亚洲五月天丁香| 亚洲欧美精品综合久久99| 久久久久免费精品人妻一区二区| 91午夜精品亚洲一区二区三区| 国产男人的电影天堂91| 亚洲aⅴ乱码一区二区在线播放| 美女 人体艺术 gogo| 欧美最黄视频在线播放免费| 九九在线视频观看精品| 国产不卡一卡二| 亚洲av第一区精品v没综合| 最近的中文字幕免费完整| 天堂网av新在线| 人体艺术视频欧美日本| 国产精品av视频在线免费观看| 青青草视频在线视频观看| 久久久久性生活片| 国产精品野战在线观看| 国产三级在线视频| 成人特级av手机在线观看| 麻豆国产av国片精品| 国产在线精品亚洲第一网站| 婷婷亚洲欧美| 久久这里只有精品中国| 日本一二三区视频观看| 99热精品在线国产| 亚洲精品自拍成人| 丰满乱子伦码专区| 久久久国产成人免费| 日本一本二区三区精品| 国产亚洲精品久久久久久毛片| 91aial.com中文字幕在线观看| 亚洲av一区综合| 麻豆乱淫一区二区| 赤兔流量卡办理| 波多野结衣高清无吗| 精品久久国产蜜桃| 简卡轻食公司| 国产在线男女| 国产精品综合久久久久久久免费| 国产精品一区二区三区四区久久| 一级毛片电影观看 | 国产一区二区在线观看日韩| 91在线精品国自产拍蜜月| 国产v大片淫在线免费观看| 天天一区二区日本电影三级| 久久人人精品亚洲av| 欧美性猛交黑人性爽| 最近2019中文字幕mv第一页| 赤兔流量卡办理| 此物有八面人人有两片| 男女边吃奶边做爰视频| 最近的中文字幕免费完整| 少妇的逼水好多| 国产av在哪里看| 激情 狠狠 欧美| a级毛色黄片| 久久鲁丝午夜福利片| 亚洲成人精品中文字幕电影| 亚洲av第一区精品v没综合| 成人鲁丝片一二三区免费| 不卡视频在线观看欧美| 精华霜和精华液先用哪个| 最近中文字幕高清免费大全6| 极品教师在线视频| 免费看光身美女| 26uuu在线亚洲综合色| 69av精品久久久久久| 久久草成人影院| 国内精品一区二区在线观看| 婷婷色综合大香蕉| 免费搜索国产男女视频| 成熟少妇高潮喷水视频| 国产精品.久久久| 国产精品一及| 国产亚洲av嫩草精品影院| 久久久久久久亚洲中文字幕| 亚洲中文字幕一区二区三区有码在线看| 亚洲欧美精品专区久久| a级毛片免费高清观看在线播放| 99热6这里只有精品| 青春草视频在线免费观看| 欧美日韩综合久久久久久| www.色视频.com| 久久午夜亚洲精品久久| 联通29元200g的流量卡| 麻豆久久精品国产亚洲av| 国产一区二区激情短视频| 成人av在线播放网站| 人人妻人人看人人澡| 国产 一区精品| 日本爱情动作片www.在线观看| 欧洲精品卡2卡3卡4卡5卡区| 少妇熟女aⅴ在线视频| 26uuu在线亚洲综合色| 日韩成人av中文字幕在线观看| 中出人妻视频一区二区| 天天一区二区日本电影三级| 久久亚洲精品不卡| 国产成人影院久久av| 国产伦精品一区二区三区四那| 2022亚洲国产成人精品| 亚洲av熟女| 国产在线精品亚洲第一网站| 成人毛片a级毛片在线播放| 亚洲欧洲日产国产| 国产亚洲欧美98| 欧美激情国产日韩精品一区| 日本色播在线视频| 好男人视频免费观看在线| 老女人水多毛片| 欧美一区二区精品小视频在线| 99九九线精品视频在线观看视频| 国产一级毛片在线| 国产黄片美女视频| 色吧在线观看| 国产真实乱freesex| 18+在线观看网站| 日日啪夜夜撸| 超碰av人人做人人爽久久| 亚洲国产精品国产精品| 精品一区二区三区人妻视频| 久久久精品94久久精品| 成人鲁丝片一二三区免费| 国产白丝娇喘喷水9色精品| 国产av不卡久久| 男人和女人高潮做爰伦理| 免费黄网站久久成人精品| 深爱激情五月婷婷| 亚洲成人精品中文字幕电影| 欧美日韩一区二区视频在线观看视频在线 | 国产大屁股一区二区在线视频| 小说图片视频综合网站| 深夜精品福利| 精品无人区乱码1区二区| 九草在线视频观看| 国产高清视频在线观看网站| 韩国av在线不卡| 看免费成人av毛片| 我的女老师完整版在线观看| 久久久国产成人免费| 国产伦一二天堂av在线观看| 看非洲黑人一级黄片| 一本一本综合久久| 欧美高清成人免费视频www| 五月伊人婷婷丁香| 久久久久九九精品影院| 欧美潮喷喷水| 少妇人妻一区二区三区视频| 日韩高清综合在线| 国产精品野战在线观看| 欧美日韩在线观看h| 美女cb高潮喷水在线观看| 国产精品不卡视频一区二区| 少妇人妻一区二区三区视频| 欧美xxxx黑人xx丫x性爽| 成人欧美大片| 看非洲黑人一级黄片| 一本一本综合久久| 中国美白少妇内射xxxbb| 亚洲成人精品中文字幕电影| 91在线精品国自产拍蜜月| 国产在视频线在精品| 91久久精品电影网| 观看美女的网站| 久久久a久久爽久久v久久| 日韩精品青青久久久久久| 日日干狠狠操夜夜爽| 久久人妻av系列| 日本五十路高清| 97热精品久久久久久| 国产亚洲精品av在线| www.色视频.com| 亚洲成人久久爱视频| 少妇熟女aⅴ在线视频| 久久中文看片网| 精品人妻熟女av久视频| 欧美不卡视频在线免费观看| 日韩欧美三级三区| 久久99热6这里只有精品| 高清午夜精品一区二区三区 | 亚洲在线自拍视频| 2021天堂中文幕一二区在线观| 亚洲五月天丁香| 丝袜喷水一区| 日本与韩国留学比较| 精品久久久久久久末码| 日韩一区二区视频免费看| 亚洲欧美日韩无卡精品| 国产精华一区二区三区| 日韩成人伦理影院| 国产蜜桃级精品一区二区三区| 成人av在线播放网站| 欧美不卡视频在线免费观看| 成年女人永久免费观看视频| 成人亚洲精品av一区二区| 欧美一区二区精品小视频在线| 六月丁香七月| 国产精品不卡视频一区二区| 国产私拍福利视频在线观看| 三级毛片av免费| 插逼视频在线观看| 久久综合国产亚洲精品| 国产又黄又爽又无遮挡在线| 久久人人精品亚洲av| 国产老妇伦熟女老妇高清| 欧美不卡视频在线免费观看| 丰满乱子伦码专区| 在线播放国产精品三级| 最好的美女福利视频网| 最后的刺客免费高清国语| 特级一级黄色大片| 深夜精品福利| 成熟少妇高潮喷水视频| 国产爱豆传媒在线观看| 亚洲婷婷狠狠爱综合网| 91精品一卡2卡3卡4卡| 亚洲一级一片aⅴ在线观看| 蜜桃亚洲精品一区二区三区| 成人毛片60女人毛片免费| 免费人成视频x8x8入口观看| 啦啦啦观看免费观看视频高清| 欧美色欧美亚洲另类二区| 成年女人永久免费观看视频| 亚洲不卡免费看| 你懂的网址亚洲精品在线观看 | 变态另类丝袜制服| 晚上一个人看的免费电影| 精品人妻偷拍中文字幕| 日韩高清综合在线| 国内精品一区二区在线观看| 精品久久国产蜜桃| 亚洲国产精品国产精品| 国产精品无大码| 最近2019中文字幕mv第一页| 成人特级黄色片久久久久久久| 久久6这里有精品| 免费人成在线观看视频色| 亚洲国产精品sss在线观看| 国产成人aa在线观看| 欧美日韩一区二区视频在线观看视频在线 | 久久精品91蜜桃| 日日摸夜夜添夜夜爱| 麻豆一二三区av精品| av免费在线看不卡| 精品久久久久久成人av| 日本五十路高清| 国产片特级美女逼逼视频| 婷婷亚洲欧美| 超碰av人人做人人爽久久| 啦啦啦韩国在线观看视频| 国产成人91sexporn| 中文字幕免费在线视频6| 少妇人妻一区二区三区视频| 国产精品美女特级片免费视频播放器| 亚洲国产高清在线一区二区三| 亚洲欧美日韩卡通动漫| 亚洲国产日韩欧美精品在线观看| 亚洲国产欧美在线一区| 国产v大片淫在线免费观看| 亚洲精品亚洲一区二区| 欧美色视频一区免费| 小说图片视频综合网站| 69人妻影院| 欧美日韩国产亚洲二区| 九色成人免费人妻av| 国产av一区在线观看免费| 3wmmmm亚洲av在线观看| 麻豆av噜噜一区二区三区| 成人特级黄色片久久久久久久| 嫩草影院新地址| 亚洲国产日韩欧美精品在线观看| 少妇的逼好多水| 99热这里只有是精品50| 国产精品一及| 尤物成人国产欧美一区二区三区| 少妇被粗大猛烈的视频| 少妇熟女欧美另类| 国产女主播在线喷水免费视频网站 | 中文字幕人妻熟人妻熟丝袜美| 成人三级黄色视频| 美女高潮的动态| 免费看a级黄色片| 国产精品一二三区在线看| 波多野结衣高清无吗| 国产精品美女特级片免费视频播放器| 国产免费一级a男人的天堂| 18禁裸乳无遮挡免费网站照片| 欧美最新免费一区二区三区| av视频在线观看入口| 久久久欧美国产精品| 国国产精品蜜臀av免费| 美女被艹到高潮喷水动态| 美女国产视频在线观看| 99久久成人亚洲精品观看| 久久99热这里只有精品18| 亚洲久久久久久中文字幕| 深夜a级毛片| 99热这里只有是精品在线观看| 在线观看av片永久免费下载| 久久午夜亚洲精品久久| 免费观看在线日韩| 毛片女人毛片| 人体艺术视频欧美日本| 日韩欧美精品免费久久| 波野结衣二区三区在线| 五月玫瑰六月丁香| 久久久久久久亚洲中文字幕| 免费av毛片视频| 国产在视频线在精品| 久久精品国产清高在天天线| 老师上课跳d突然被开到最大视频| 国产老妇女一区| 卡戴珊不雅视频在线播放| 三级经典国产精品| 欧美激情在线99| 岛国毛片在线播放| 国产高清有码在线观看视频| 小蜜桃在线观看免费完整版高清| 一边亲一边摸免费视频| 国产色婷婷99| 国产一区二区在线av高清观看| av专区在线播放| 一级毛片电影观看 | 国产麻豆成人av免费视频| 91午夜精品亚洲一区二区三区| 国产美女午夜福利| 午夜福利高清视频| 国产真实乱freesex| 22中文网久久字幕| 成人性生交大片免费视频hd| 悠悠久久av| 久久精品夜色国产| 日本五十路高清| 直男gayav资源| 男人舔奶头视频| 少妇人妻精品综合一区二区 | 久久精品综合一区二区三区| 国产 一区 欧美 日韩| 麻豆国产97在线/欧美| 日韩在线高清观看一区二区三区| 精品免费久久久久久久清纯| av天堂中文字幕网| 午夜亚洲福利在线播放| 天天躁日日操中文字幕| 久久精品国产鲁丝片午夜精品| 国产精品久久久久久精品电影| 天堂影院成人在线观看| 久久中文看片网| 精品久久久久久久人妻蜜臀av| 一夜夜www| 日本黄色视频三级网站网址| 久久人人爽人人片av| 少妇被粗大猛烈的视频| 精品久久久久久久久久免费视频| 狂野欧美激情性xxxx在线观看| 久久久久免费精品人妻一区二区| av视频在线观看入口| 成人一区二区视频在线观看| 国产亚洲91精品色在线| 看片在线看免费视频| 亚洲aⅴ乱码一区二区在线播放| 永久网站在线| 国产麻豆成人av免费视频| 国产精品福利在线免费观看| 成人亚洲精品av一区二区| 男人舔女人下体高潮全视频| 亚洲第一电影网av| 一边亲一边摸免费视频| 免费看光身美女| 美女cb高潮喷水在线观看| 2021天堂中文幕一二区在线观| 一本精品99久久精品77| 床上黄色一级片| 久久久久国产网址| 1024手机看黄色片| 日韩中字成人| 国产成人a区在线观看| av在线天堂中文字幕| 久久久久国产网址| 亚洲最大成人手机在线| 亚洲国产精品sss在线观看| 欧美一级a爱片免费观看看|