久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

FPGA上跑Linux:基于RISC-V軟核的輕量級(jí)系統(tǒng)與在線升級(jí)實(shí)踐

FPGA上跑Linux:基于RISC-V軟核的輕量級(jí)系統(tǒng)與在線升級(jí)實(shí)踐 FPGA上跑Linux當(dāng)年我第一次看到這個(gè)說(shuō)法時(shí)確實(shí)挺好奇的。等自己動(dòng)手折騰了快一個(gè)月才明白CPU核只是冰山一角真正花時(shí)間的地方全在總線、DDR、啟動(dòng)鏈路和系統(tǒng)裁剪上。這篇文章記錄一下我完成的一套方案一個(gè)核心代碼量?jī)H5000行左右的RISC-V軟核在FPGA上跑起輕量級(jí)Linux并在此基礎(chǔ)上做了現(xiàn)場(chǎng)可用的在線升級(jí)機(jī)制。如果你是FPGA工程師想往RISC-V和嵌入式Linux方向擴(kuò)展或者你本身是做嵌入式Linux的想搞明白FPGA側(cè)的門(mén)道這篇應(yīng)該都能幫上忙。我不會(huì)只貼“成功日志”更多是講清楚每一步為什么這么做、有哪些坑可以提前避開(kāi)。1. 為什么是RISC-V軟核選型與設(shè)計(jì)思路1.1 方案選型能跑Linux的軟核不是“隨便寫(xiě)個(gè)CPU”FPGA上做軟核CPU通常想到的是MicroBlaze或者NiosII。這兩個(gè)確實(shí)是成熟方案問(wèn)題是商業(yè)授權(quán)、封閉生態(tài)、定制成本都比較高。換成RISC-V之后開(kāi)源、指令集精簡(jiǎn)而且相關(guān)工具鏈已經(jīng)非常完整很適合自己做軟核。但“能在FPGA上跑Linux”有一個(gè)硬性門(mén)檻處理器必須帶MMU也就是內(nèi)存管理單元。沒(méi)有MMU的處理器Linux內(nèi)核根本不愿意配合因?yàn)樗倪M(jìn)程管理、虛擬內(nèi)存、fork、exec、用戶態(tài)與內(nèi)核態(tài)切換全都建立在頁(yè)表映射和地址保護(hù)之上。我之前用過(guò)PicoRV32這類(lèi)只有一兩千行代碼的小核跑裸機(jī)或者RTOS很輕松但要跑Linux就不行了——它壓根沒(méi)有S模式也沒(méi)有MMU硬上Linux只能跑uClinux很多應(yīng)用和驅(qū)動(dòng)都會(huì)出問(wèn)題。所以選型時(shí)我把重點(diǎn)放在“有MMU、有S特權(quán)級(jí)、有足夠穩(wěn)定的總線接口”這幾個(gè)條件上。最終采用的方案是圍繞VexRiscv框架擴(kuò)展出來(lái)的一個(gè)RV32軟核支持Sv32頁(yè)表、支持M/S/U三級(jí)特權(quán)模式核心RTL代碼量大概5000行。這個(gè)規(guī)模不算大但足夠把Linux內(nèi)核啟動(dòng)起來(lái)。有一點(diǎn)要提前說(shuō)清楚5000行指的是CPU核心也就是流水線、寄存器堆、MMU、中斷和總線接口這些關(guān)鍵部分整個(gè)SoC還包括DDR控制器、Flash控制器、UART等外設(shè)這些往往通過(guò)LiteX這類(lèi)框架自動(dòng)生成。不要指望一個(gè)文件就撐起整個(gè)系統(tǒng)。1.2 架構(gòu)拆解處理器內(nèi)部是怎么設(shè)計(jì)的這個(gè)軟核采用的是單發(fā)射、順序執(zhí)行的5級(jí)流水線結(jié)構(gòu)。對(duì)比那些支持亂序執(zhí)行、多發(fā)射的高性能核它的優(yōu)勢(shì)是時(shí)序容易收斂面積小邏輯簡(jiǎn)單出問(wèn)題好排查。在FPGA上流水線深度和分支預(yù)測(cè)策略都會(huì)直接影響最高時(shí)鐘頻率順序發(fā)射的代價(jià)是IPC低一點(diǎn)但換來(lái)的是更簡(jiǎn)單的實(shí)現(xiàn)和更穩(wěn)定的時(shí)序這個(gè)取舍對(duì)FPGA上的軟核來(lái)說(shuō)非常合理。為了跑Linux軟核必須包含三個(gè)關(guān)鍵機(jī)制特權(quán)級(jí)切換M模式運(yùn)行OpenSBI或BootROMS模式運(yùn)行Linux內(nèi)核U模式運(yùn)行用戶進(jìn)程。這樣內(nèi)核和用戶程序可以被硬件隔離。中斷和異常使用RISC-V標(biāo)準(zhǔn)的PLIC和CLINT中斷控制器提供外部中斷和定時(shí)器中斷。Linux的進(jìn)程調(diào)度依賴定時(shí)器中斷沒(méi)有這部分系統(tǒng)啟動(dòng)到一半就會(huì)卡住。MMU這個(gè)核實(shí)現(xiàn)了Sv32頁(yè)表格式能處理32位虛擬地址到物理地址的轉(zhuǎn)換。沒(méi)有它Linux就只能退化成uClinux方案。我實(shí)際跑起來(lái)的時(shí)鐘頻率在90MHz左右性能當(dāng)然比不上硬核CPU但跑輕量級(jí)Linux、跑基礎(chǔ)網(wǎng)絡(luò)服務(wù)、跑業(yè)務(wù)邏輯都?jí)蛴?。很多?yīng)用場(chǎng)景其實(shí)根本不缺那點(diǎn)性能缺的是能自由改代碼的CPU。1.3 為什么代碼量能控制在5000行左右“5000行Verilog跑Linux”聽(tīng)起來(lái)像魔術(shù)其實(shí)是設(shè)計(jì)上做了大量取舍。RISC-V指令集本身就是典型RISC設(shè)計(jì)指令數(shù)量少編碼規(guī)則整齊這是先天優(yōu)勢(shì)。其次這個(gè)核沒(méi)有做浮點(diǎn)單元浮點(diǎn)運(yùn)算交給軟件模擬硬要算浮點(diǎn)會(huì)慢但對(duì)輕量級(jí)Linux來(lái)說(shuō)完全可以接受。也沒(méi)有做復(fù)雜的亂序執(zhí)行和深度緩存cache用簡(jiǎn)單直連映射大小也就2KB到8KB夠用就行。最關(guān)鍵的一點(diǎn)是大量“處理器外圍”工作被外包給了Bus Matrix和現(xiàn)成IP。處理器只需要實(shí)現(xiàn)取指、譯碼、執(zhí)行、訪存、寫(xiě)回這幾個(gè)核心環(huán)節(jié)然后通過(guò)AXI接口掛到總線上剩下的DDR控制器、SPI Flash控制器、UART控制器都可以用現(xiàn)成方案。這樣核心代碼自然就壓到5000行左右不會(huì)膨脹成一個(gè)幾萬(wàn)行的怪物。2. 硬件平臺(tái)搭建從RTL到可運(yùn)行SoC2.1 FPGA板卡選型與存儲(chǔ)資源規(guī)劃跑Linux對(duì)資源的要求比裸機(jī)高不少首要瓶頸不是邏輯單元而是存儲(chǔ)。我用的是Artix-7級(jí)別的板卡帶有128MB DDR3和16MB SPI NOR Flash。35T這個(gè)量級(jí)的邏輯資源已經(jīng)足夠放軟核加各種外設(shè)LUT利用率一般也就60%左右布線壓力不大。如果板卡沒(méi)有DDR只在FPGA片上BRAM里跑Linux那會(huì)很痛苦。Linux內(nèi)核解壓后要占用內(nèi)存initramfs要解壓到內(nèi)存進(jìn)程棧、堆、頁(yè)表全都要內(nèi)存效應(yīng)期的片上BRAM只有1.8Mbit左右遠(yuǎn)遠(yuǎn)不夠。所以選板卡時(shí)必須確認(rèn)有DDR/SDRAM最好是DDR3容量至少64MB才比較好跑一個(gè)稍微完整的文件系統(tǒng)。Flash容量也要提前規(guī)劃。一個(gè)FPGA bitstream文件大約幾MBOpenSBI大約幾十到一百多KBLinux內(nèi)核壓縮鏡像幾MBrootfs取決于你放多少工具BusyBox initramfs可以壓到幾MB如果放完整工具鏈就會(huì)超過(guò)十幾MB。16MB Flash能裝但比較緊湊有條件建議直接上32MB或64MB給后續(xù)在線升級(jí)留出空間。2.2 外設(shè)與總線搭建CPU之外的另一半工作CPU核心本身不產(chǎn)生價(jià)值它必須能訪問(wèn)DDR、能從Flash啟動(dòng)、能和外界通信這就要靠總線把它們串起來(lái)。這個(gè)SoC采用AXI4總線作為主干CPU作為主設(shè)備DDR、Flash、UART、Timer、中斷控制器都掛在總線上作為從設(shè)備??偩€矩陣選擇了LiteX自動(dòng)生成省去了大量手寫(xiě)狀態(tài)機(jī)的工作。地址映射是整個(gè)系統(tǒng)最需要提前想清楚的事。我用的映射大約是外設(shè)地址范圍說(shuō)明DDR30x40000000 - 0x47FFFFFF主內(nèi)存Linux運(yùn)行于此SPI Flash0x20000000 - 0x20FFFFFF存放bitstream、固件、文件系統(tǒng)UART0xF0000000串口控制臺(tái)與升級(jí)通道CLINT/PLIC0xF0010000附近定時(shí)器與中斷控制器DDR控制器是系統(tǒng)里最大的坑。自己用Verilog寫(xiě)一個(gè)DDR3控制器從PHY層到Bank調(diào)度工作量不是一兩個(gè)月能穩(wěn)定收尾的。實(shí)際做法是使用現(xiàn)成方案比如Xilinx MIG IP或者LiteDRAM生成的可綜合控制器。這些方案經(jīng)過(guò)大量驗(yàn)證時(shí)序和訓(xùn)練邏輯相對(duì)可靠你只需要在約束文件里填對(duì)時(shí)鐘頻率、引腳位置和DDR型號(hào)即可。UART模塊在方案里相對(duì)簡(jiǎn)單但也不能掉以輕心。串口控制臺(tái)是聯(lián)調(diào)階段最核心的觀測(cè)手段如果UART都有問(wèn)題后面全盲調(diào)很難受。2.3 啟動(dòng)方式與Flash布局FPGA上電后首先加載的是bitstream。bitstream存在SPI Flash里FPGA廠商的配置引擎會(huì)自動(dòng)從Flash地址0讀取配置。配置完成后軟核CPU開(kāi)始復(fù)位取指。這時(shí)候就會(huì)出現(xiàn)一個(gè)關(guān)鍵問(wèn)題CPU從哪里開(kāi)始執(zhí)行第一條指令我是把OpenSBI放在Flash里的固定偏移CPU復(fù)位后通過(guò)BootROM把OpenSBI加載到內(nèi)存然后OpenSBI初始化S模式環(huán)境再跳轉(zhuǎn)到Linux內(nèi)核入口。Flash布局大致是這樣區(qū)域偏移內(nèi)容FPGA配置區(qū)0x00000000bitstreamOpenSBI區(qū)0x00500000左右引導(dǎo)固件內(nèi)核A區(qū)0x00600000左右Linux內(nèi)核鏡像DTB A區(qū)0x00A00000左右設(shè)備樹(shù)內(nèi)核B區(qū)0x00B00000備用內(nèi)核鏡像DTB B區(qū)0x00F00000備用設(shè)備樹(shù)rootfs區(qū)0x01000000BusyBox文件系統(tǒng)這個(gè)分區(qū)表在項(xiàng)目一開(kāi)始就要定好因?yàn)楹竺嬖诰€升級(jí)全靠它。我最初沒(méi)重視后面改分區(qū)偏移差點(diǎn)把整個(gè)系統(tǒng)又折騰了一遍。3. 輕量級(jí)Linux系統(tǒng)的構(gòu)建與啟動(dòng)3.1 軟件棧OpenSBI Linux內(nèi)核 initramfs跑Linux需要在FPGA里跑一套完整的軟件棧這里用的是OpenSBI、Linux內(nèi)核、BusyBox initramfs三件套。OpenSBI運(yùn)行在M模式下負(fù)責(zé)最底層的硬件初始化、中斷轉(zhuǎn)發(fā)和SBI調(diào)用服務(wù)相當(dāng)于RISC-V世界里的“固件”。OpenSBI跑完后會(huì)跳到S模式啟動(dòng)Linux內(nèi)核。選擇OpenSBI而不是傳統(tǒng)的BBL原因是它維護(hù)更活躍、功能更完整社區(qū)主流基本都轉(zhuǎn)向它了。Linux內(nèi)核直接使用主線內(nèi)核源碼配置成RISC-V架構(gòu)。我這里因?yàn)槭荝V32所以工具鏈前綴是riscv32-unknown-linux-gnu-如果是RV64則用riscv64-linux-gnu-。工具鏈可以直接下載預(yù)編譯版本也可以讓Buildroot自己編后者更省心。initramfs是最省事的根文件系統(tǒng)方案。它把BusyBox和必要的腳本打包進(jìn)一個(gè)cpio歸檔再和內(nèi)核一起編譯成鏡像。啟動(dòng)時(shí)內(nèi)核會(huì)把它解壓到內(nèi)存當(dāng)作根文件系統(tǒng)。好處是不用管SD卡、不用寫(xiě)Flash根文件系統(tǒng)驅(qū)動(dòng)非常適合軟核起步階段。用Buildroot構(gòu)建的過(guò)程很簡(jiǎn)單配置目標(biāo)架構(gòu)為RISC-V選擇BusyBox指定內(nèi)核源碼路徑和內(nèi)核defconfig然后build。一次構(gòu)建會(huì)同時(shí)生成工具鏈、內(nèi)核鏡像和rootfs歸檔省去很多手工步驟。3.2 內(nèi)核裁剪的關(guān)鍵配置Linux內(nèi)核默認(rèn)配置打開(kāi)的功能特別多覆蓋了各種硬件平臺(tái)在FPGA這種資源受限環(huán)境下必須裁剪。以下幾個(gè)配置我認(rèn)為非常關(guān)鍵CONFIG_MMUy CONFIG_SERIAL_8250y CONFIG_SERIAL_8250_CONSOLEy CONFIG_RD_GZIPy CONFIG_INITRAMFS_SOURCErootfs.cpio.gz CONFIG_CMDLINEconsolettyS0,115200 root/dev/ram0CONFIG_MMU必須開(kāi)啟沒(méi)有MMU就別想跑標(biāo)準(zhǔn)Linux。CONFIG_SERIAL_8250提供串口驅(qū)動(dòng)console輸出全靠它。CONFIG_INITRAMFS_SOURCE指向打包好的rootfs內(nèi)核會(huì)把它內(nèi)嵌進(jìn)鏡像。CONFIG_CMDLINE用于指定啟動(dòng)參數(shù)。如果設(shè)備樹(shù)里也有chosen/bootargs兩者可能會(huì)沖突調(diào)試時(shí)要留意必要時(shí)用CONFIG_CMDLINE_FORCE強(qiáng)制覆蓋設(shè)備樹(shù)里的參數(shù)。編譯前盡量關(guān)閉不用的驅(qū)動(dòng)大量的網(wǎng)絡(luò)協(xié)議、聲卡驅(qū)動(dòng)、USB主機(jī)驅(qū)動(dòng)、GPU驅(qū)動(dòng)等統(tǒng)統(tǒng)不要。裁剪不是靠猜而是先編一版查看鏡像大小再啟動(dòng)看內(nèi)核輸出的設(shè)備注冊(cè)信息把用不到的模塊關(guān)掉。這樣一輪輪下來(lái)內(nèi)核鏡像可以從幾MB壓到2-3MB甚至更小。3.3 啟動(dòng)流程與日志解析正常啟動(dòng)時(shí)串口應(yīng)該能看到這樣的輸出順序OpenSBI v1.2 ____ _____ ____ _____ / __ \ / ____| _ \_ _| ... [ 0.000000] Linux version 6.1.0-riscv [ 0.000000] Kernel command line: consolettyS0,115200 root/dev/ram0 ... [ 1.200000] Run /init as init process看到“Run /init as init process”意味著內(nèi)核已經(jīng)成功掛載rootfs并啟動(dòng)了用戶態(tài)第一個(gè)進(jìn)程。如果到這里接著出現(xiàn)BusyBox的啟動(dòng)日志和命令行提示符整條鏈路就通了。我踩過(guò)一次很典型的坑日志卡在內(nèi)核解壓完、剛跳轉(zhuǎn)到內(nèi)核入口就沒(méi)輸出。這種問(wèn)題通常不是內(nèi)核本身而是MMU初始化或內(nèi)存映射參數(shù)有問(wèn)題。定位方法是先把earlycon打開(kāi)讓它盡早輸出再就是檢查DDR地址是否和鏈接地址匹配。4. FPGA上的在線升級(jí)實(shí)現(xiàn)4.1 在線升級(jí)到底在更新什么既然系統(tǒng)能在現(xiàn)場(chǎng)跑起來(lái)那么“在線升級(jí)”這個(gè)概念就需要拆開(kāi)看。在FPGALinux這種組合里升級(jí)的對(duì)象至少分三層FPGA邏輯升級(jí)更新bitstream即CPU、總線、外設(shè)的硬件邏輯。固件升級(jí)更新OpenSBI、Linux內(nèi)核鏡像、設(shè)備樹(shù)DTB。應(yīng)用升級(jí)更新rootfs里的業(yè)務(wù)程序、配置腳本等。傳統(tǒng)做法是接JTAG線把電腦拿到設(shè)備旁邊燒Flash這在研發(fā)調(diào)試階段沒(méi)問(wèn)題但真正的工業(yè)現(xiàn)場(chǎng)不可能這么干。在線升級(jí)的意義在于系統(tǒng)運(yùn)行狀態(tài)下通過(guò)網(wǎng)絡(luò)或串口把新版本傳到設(shè)備由系統(tǒng)自身完成Flash更新然后重啟生效。需要注意在線升級(jí)不等于“熱切換”。Linux內(nèi)核本身不能在家里運(yùn)行、原地把自己替換成新內(nèi)核操作系統(tǒng)啟動(dòng)過(guò)程必須是完整重來(lái)一次。所以在線升級(jí)的本質(zhì)是“更新持久化鏡像 重啟加載新鏡像”。4.2 Flash分區(qū)設(shè)計(jì)與A/B備份策略在線升級(jí)里最怕的不是升級(jí)失敗而是升級(jí)失敗后沒(méi)有退路。為此我采用了A/B雙分區(qū)機(jī)制。所謂A/B就是把內(nèi)核和rootfs同時(shí)準(zhǔn)備兩份分別放在不同F(xiàn)lash區(qū)域。系統(tǒng)正常從A區(qū)啟動(dòng)升級(jí)時(shí)只寫(xiě)B(tài)區(qū)。寫(xiě)完B區(qū)后校驗(yàn)文件頭和數(shù)據(jù)校驗(yàn)和再修改啟動(dòng)標(biāo)記告訴引導(dǎo)程序下一次從B區(qū)啟動(dòng)。如果B區(qū)啟動(dòng)失敗引導(dǎo)程序自動(dòng)回退到A區(qū)。MTD分區(qū)用起來(lái)大概是這樣的概念mtdpartsspi0.0:1M(openSBI),4M(kernel_a),4M(kernel_b),1M(dtb_a),1M(dtb_b),8M(rootfs_a),8M(rootfs_b)Linux起來(lái)后用cat /proc/mtd查看實(shí)際分區(qū)# cat /proc/mtd dev: size erasesize name mtd0: 00100000 00010000 openSBI mtd1: 00400000 00010000 kernel_a mtd2: 00400000 00010000 kernel_b mtd3: 00100000 00010000 dtb_a mtd4: 00100000 00010000 dtb_b mtd5: 00800000 00010000 rootfs_a mtd6: 00800000 00010000 rootfs_bA/B分區(qū)會(huì)多占用一倍Flash容量這是最直接的代價(jià)。如果Flash實(shí)在緊張至少要對(duì)內(nèi)核分區(qū)做雙備份因?yàn)檫@是升級(jí)中最常改、最容易寫(xiě)壞的部分。OpenSBI和bitstream可以只保留一個(gè)黃金版本正常使用中很少更新。4.3 升級(jí)流程實(shí)戰(zhàn)串口、網(wǎng)絡(luò)與腳本當(dāng)前系統(tǒng)正常啟動(dòng)時(shí)在線升級(jí)最直接的做法就是在Linux里寫(xiě)Flash分區(qū)。假設(shè)備份內(nèi)核已經(jīng)通過(guò)scp或者串口傳到了/tmp/Image執(zhí)行flashcp -v /tmp/Image /dev/mtd2flashcp會(huì)先擦除mtd2分區(qū)再把數(shù)據(jù)寫(xiě)進(jìn)去比直接dd到/dev/mtd2更安全因?yàn)樗粫?huì)讓你誤擦超范圍。寫(xiě)完內(nèi)核后設(shè)備樹(shù)也要一起更新flashcp -v /tmp/system.dtb /dev/mtd4然后修改啟動(dòng)標(biāo)記讓引導(dǎo)程序下次從B區(qū)啟動(dòng)。如果是U-Boot可以用fw_setenvfw_setenv bootpart b sync reboot如果系統(tǒng)已經(jīng)完全起不來(lái)只能進(jìn)引導(dǎo)程序恢復(fù)那么串口就是最后一條命。在U-Boot或自研bootloader里用Ymodem協(xié)議接收文件再寫(xiě)入Flashloady 0x40000000 erase 0x0B000000 0x400000 cp.b 0x40000000 0x0B000000 0x400000這里的地址要格外小心一定是引導(dǎo)程序視角的Flash地址而不是Linux視角的地址?;煜刂肥俏以谡{(diào)試中犯過(guò)的錯(cuò)誤一次寫(xiě)錯(cuò)就可能導(dǎo)致系統(tǒng)無(wú)法啟動(dòng)。如果沒(méi)有把握先把舊的Flash內(nèi)容備份到內(nèi)存或者用md命令讀幾個(gè)字節(jié)確認(rèn)分區(qū)首部特征再動(dòng)手。整個(gè)升級(jí)過(guò)程最好腳本化腳本里強(qiáng)制做校驗(yàn)md5sum /tmp/Image md5sum /tmp/Image.remote # 不一致則退出沒(méi)有校驗(yàn)的升級(jí)腳本就是在拿現(xiàn)場(chǎng)設(shè)備做盲測(cè)。4.4 掉電保護(hù)與回滾機(jī)制在線升級(jí)最大的敵人是寫(xiě)著寫(xiě)著斷電。如果正在擦寫(xiě)Flash的過(guò)程中斷電該分區(qū)內(nèi)容既不是舊版本也不是新版本系統(tǒng)可能直接變磚。所以升級(jí)策略的底線是永遠(yuǎn)不要先擦當(dāng)前啟動(dòng)分區(qū)。先把新鏡像寫(xiě)到B區(qū)校驗(yàn)成功后再切換啟動(dòng)標(biāo)記。這樣就算升級(jí)過(guò)程斷電A區(qū)還是好的下次上電還是從A區(qū)啟動(dòng)。再搭配一個(gè)bootcount機(jī)制每次引導(dǎo)程序啟動(dòng)一個(gè)分區(qū)時(shí)在Flash里記錄啟動(dòng)次數(shù)加1。用戶程序正常運(yùn)行后通過(guò)命令把計(jì)數(shù)清零。如果新分區(qū)啟動(dòng)時(shí)反復(fù)重啟計(jì)數(shù)會(huì)持續(xù)累積達(dá)到閾值后引導(dǎo)程序自動(dòng)切換回舊分區(qū)。這是嵌入式領(lǐng)域通用的回滾方案。FPGA側(cè)還有個(gè)特殊的坑bitstream在Flash里如果被寫(xiě)壞FPGA會(huì)配置失敗整塊板子直接起不來(lái)。我的辦法是做一個(gè)極簡(jiǎn)的“golden”bitstream放在Flash最前面現(xiàn)場(chǎng)需要更新邏輯時(shí)只更新后面主bitstream區(qū)域如果主bitstream校驗(yàn)失敗FPGA硬件引擎會(huì)回退到golden配置。golden版本只做基礎(chǔ)功能保證系統(tǒng)能啟動(dòng)、能繼續(xù)做恢復(fù)操作這相當(dāng)于給硬件上了一道保險(xiǎn)。5. 踩坑實(shí)錄常見(jiàn)問(wèn)題與排查技巧5.1 串口完全沒(méi)有任何輸出遇到“上電后串口死寂”的情況第一反應(yīng)不要怪內(nèi)核先確認(rèn)硬件和RTL。按這個(gè)順序排查會(huì)更高效確認(rèn)時(shí)鐘和復(fù)位。用邏輯分析儀或ILA抓一下CPU時(shí)鐘是否在跑復(fù)位釋放時(shí)間是否正常。確認(rèn)UART波特率。串口終端必須和RTL里的波特率分頻一致。RTL里如果寫(xiě)成9600終端卻設(shè)成115200自然沒(méi)輸出。確認(rèn)UART引腳綁定。很多板卡USB轉(zhuǎn)串口芯片的TX/RX方向容易搞反或者共地沒(méi)接好。確認(rèn)內(nèi)核命令行真的傳到了。很多時(shí)候不是沒(méi)輸出而是consolettyS0,115200沒(méi)生效內(nèi)核輸出沒(méi)走串口。其中“硬件方向接反”這種低級(jí)錯(cuò)誤最容易讓人白折騰半天。遇到串口沒(méi)輸出我會(huì)先用萬(wàn)用表或者示波器看USB轉(zhuǎn)串口芯片的TX引腳確認(rèn)有沒(méi)有波形再考慮軟件問(wèn)題。5.2 內(nèi)核啟動(dòng)到一半卡住或重啟如果串口日志能打出來(lái)但卡在“Uncompressing Linux... done, booting the kernel”之后通常是MMU和內(nèi)存的問(wèn)題。這里有個(gè)典型的連鎖反應(yīng)MMU初始化時(shí)頁(yè)表設(shè)置不正確內(nèi)核第一條訪問(wèn)虛擬內(nèi)存的指令就觸發(fā)異常異常處理又沒(méi)準(zhǔn)備好于是掛死。我遇到過(guò)幾次這樣的卡頓最后定位都是DDR訓(xùn)練參數(shù)不匹配。解決思路是確認(rèn)DDR控制器的時(shí)序參數(shù)和真實(shí)內(nèi)存顆粒匹配特別是tRCD、tRP、tCL這些值。在OpenSBI里加一個(gè)簡(jiǎn)單的內(nèi)存讀寫(xiě)測(cè)試啟動(dòng)時(shí)就對(duì)DDR地址范圍做一遍踏步讀寫(xiě)提前暴露問(wèn)題。確認(rèn)內(nèi)核鏈接地址和DDR物理地址對(duì)應(yīng)。如果CPU從0x40000000取指內(nèi)核鏡像在編譯時(shí)也必須指定運(yùn)行地址在該區(qū)域兩者不一致時(shí)表現(xiàn)就是各種莫名卡死。5.3 Flash寫(xiě)入失敗或者升級(jí)后無(wú)法啟動(dòng)升級(jí)腳本執(zhí)行完文件也顯示寫(xiě)入成功重啟后系統(tǒng)卻起不來(lái)。這種情況大概率是分區(qū)偏移錯(cuò)了。Flash廠商的擦除塊大小不統(tǒng)一有的256KB有的64KB。如果分區(qū)定義和Flash實(shí)際擦除塊沒(méi)對(duì)齊寫(xiě)入時(shí)可能把別的分區(qū)擦掉。查看/proc/mtd里的erasesize再對(duì)一下分區(qū)偏移就能發(fā)現(xiàn)很多問(wèn)題。還有一次是升級(jí)后忘記sync。Linux有緩存機(jī)制flashcp寫(xiě)完后數(shù)據(jù)還在緩存立刻斷電可能丟失。升級(jí)腳本里必須加sync最好再延時(shí)等緩存落盤(pán)。這是在線升級(jí)最容易被忽略的細(xì)節(jié)。為了救磚我強(qiáng)烈建議在Flash最前面留一塊完全不被業(yè)務(wù)升級(jí)觸碰的“急救區(qū)”放一個(gè)能通過(guò)串口下載文件并寫(xiě)Flash的最小引導(dǎo)程序。配置好這個(gè)后再折騰在線升級(jí)心里會(huì)踏實(shí)很多——最壞情況下頂多回退或者串口重刷不需要開(kāi)蓋拆Flash用編程器。5.4 地址映射導(dǎo)致的“靈異現(xiàn)象”調(diào)試過(guò)程中我遇到過(guò)一個(gè)很隱蔽的現(xiàn)象內(nèi)核跑起來(lái)了命令行也能執(zhí)行但偶爾訪問(wèn)某個(gè)外設(shè)時(shí)系統(tǒng)重啟。后來(lái)發(fā)現(xiàn)是總線地址映射有重疊區(qū)CPU發(fā)出去的外設(shè)訪問(wèn)地址同時(shí)命中了Flash和UART兩個(gè)從設(shè)備??偩€仲裁器看到多個(gè)設(shè)備同時(shí)應(yīng)答直接掛死。這類(lèi)問(wèn)題排查起來(lái)非常煩因?yàn)楝F(xiàn)象隨機(jī)。建議在SoC搭建階段就要一份清晰的總線地址分配表檢查是否有重疊區(qū)域。另外在RTL里給總線加一個(gè)默認(rèn)slave一旦地址沒(méi)匹配到任何設(shè)備就返回一個(gè)錯(cuò)誤響應(yīng)而不是讓總線掛在未知狀態(tài)。這個(gè)默認(rèn)slave設(shè)計(jì)雖小卻能幫我省下大量的摸黑調(diào)試時(shí)間。最后再分享一個(gè)小技巧在線升級(jí)這套機(jī)制不要等整個(gè)系統(tǒng)全部調(diào)通了才做最好在第一次Linux能啟動(dòng)時(shí)就順手把Flash分區(qū)和升級(jí)腳本寫(xiě)好。早期分區(qū)改動(dòng)成本低等業(yè)務(wù)代碼和上層驅(qū)動(dòng)都依賴固定地址后再改分區(qū)才是真的傷筋動(dòng)骨。先把升級(jí)通道打通后面不管調(diào)內(nèi)核還是調(diào)應(yīng)用都能省很多事。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日骚逼视频| 精精夜夜| 亚洲一区在线观看欧洲| 天天干1区2区在线| 神马久久久久久伦理片| 天天影视激情欧美| 午夜a成v人电影| Aa东京男人的天堂| 激情图片亚洲色图| 色色五月婷婷| 日本一区二区做爱的视频| 亚洲欧洲激情卡通另类文学四射小说网站| 一起草在线视频| 亚洲97网站| 2025亚洲男人天堂| 午夜男人天堂| 热久久91婷婷| 啊啊啊啊一区| 天天天天干| 亚洲高清无码在线桃色| 中文人妻av高清一区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 日韩精品人妻系列无码天堂| 激情第四色| 操逼片中文| 亚洲在线网站| 欧美伊人久久综合网| 婷婷爽人人婷婷爽视频| 国产一区在线播放| 国产97亚洲| 好爽要喷了| 中文字幕av丝袜| 欧洲亚洲人妻无码中字久久三区四区 | 夜夜草网站| 能在线播放的国产三级| 十八禁的黄污污免费网站| 精品一级毛片在线观看| 国产日逼视频| 久干9操| 亚洲无码免费看| 久久五月天婷婷丁香中文字幕| 国产捆绑一区| 国产v片在线免费观看| 青娱乐啪啪视频| 人妻熟女一区二区三区视频| 亚洲成人ab| 啊啊啊好舒服视频| AAAA欧美日韩| 中文字幕av乱伦| 操碰91| 男人的天堂2019AV| 久久久久9| 国产小炒后入式| 国产在线精品电影观看| 久久成人东京热人妻| 亚洲影视高清第一页| 欧美久久人体| 日本一区二区中文字幕久久| 性暴力欧美猛交在线直播| 欧美色视频在线| 午夜无码精品免费看性色| 日本色色色色色视频| 激情专区综合| 亚洲精品国产AV天美传媒| 欧洲站一级二级三级h| 色噜噜人妻av中文字幕| 啊啊啊不要好疼视频| 91蜜臀在线久久久久| 日本丝袜美腿人妻九九| 99re在线视频| 少妇久久久久久| 欧美爱三级日韩久久| 亚洲图片激情综合另类| 日本女人操逼| 一牛一区二区三区久久| 久9精品| 性爱视频免费网址| 99色综合| 亚洲精品黑丝| 亚洲精品三区在线观看| 欧美日韩性感| 成人情色综合网| 天天干天天燥| 色九月综合| 亚洲精品国产熟女久久久| 人人妻人人玩人人澡人人爽| 免费精品人妻一区二区三| 亚洲精品丝袜-不卡成人免费…… 久久久久成人蜜桃精品 | 国产精品一区二区三区在线| 3d成人精品一区二区| 99热66| 亚洲欧美在线综合| 欧美一区二区三区互相| 婷婷丁香五月综合| 色色97爱| 国产精品久久久久久片| 97精品国产手机| 五月大香蕉| 天天天天天天天天综合| 久久性爱视频免费看| 99热超碰在线| 91美女视频。| 国产精品久久久久久久久AV大片| …中文字幕亚洲乱,97人妻无码费视…| 老熟女91| 婷婷色综合| 91精品婷婷国产综合久久| 不卡中文字幕aⅴ在线| 99人人干| 凌辱美少妇久久aV| 99色在线| 亚洲风情在线观看| 97中文字幕色| 日韩一级性爱无码| 久久久精久久久| 国产日韩久久| 亚洲情色一区综合| 国产一区二区三区久久久精品| 性感女人网页在线观看视频| 成人AV超碰免费在线| 亚洲综合小说另类图欧美视频激情小说色五月天 | 九九久久一区二区三区| 国产一国产一级毛片古装| 熟女乱伦二区| 在线欧美亚洲| 亚洲欧洲偷拍一区| 乱伦熟女专区| 九九热在线精品视频| 欧美中文字幕日韩在线| 五月天欧美色图| 久久精品国产96精品亚洲拳交 | 97人人操人人摸人人爱| 夜夜做夜夜爽精品视频| 精品一区二区亚洲国产| www欧美91| 婷婷激情四射| 亚洲春色欧美激情自拍| 91精品国久久久久久无码| 亚洲熟女性高潮久久久| 亚洲男人天堂手机版| 国产精品交换一区二区| 国产探花日韩援交| 友优传媒精品在线一区二区| 色av中文字| 日韩强奸av| 亚州色阁| 韩日精品四区| 中文字幕一二区二三区人妻专区| 国产精品久久久亚洲第一牛牛_在线观看 | 久久精品亚洲东京热色播| 久久黄片国产一区二区| 91亚.色| 五月婷婷深深爱| 熟妇xxxxx性春色| 东京热熟女亚洲视频网站| 亚洲欧美日韩夜夜| 天无日色综合| 日本色色的视频| 粉嫩av一区二区三区天美传媒 | 91国产操逼视频| 日韩精品怡红院| 午夜黄色免费在线观看| 天天影视色香欲综合网小说| 超碰到97情色| 青青草视频导航官网| 亚洲欧美一区二区三区一猛片| 欧美性爱超碰97| 欧美亚州综合图片| 国产久久一区二区| 精产国品一区二三产品| 欧亚综合一卡二卡中文字幕| 老熟女乱子伦中文字幕一区二区| 黄色大片视频在线免费看| 18禁久久| 五月开心久久AV官网| 嗯嗯啊在线视频| 岛国免费黄色网址| 日韩熟女三十乱伦| 精品九区| 一区二区三区四区理论片| 91丝袜美腿片| 99国产精品久久久久久久成人热| 国产精品大香蕉| 成人自拍三级在线观看| 日本阿v天堂在线观看| 欧美丰满少妇交换91欧美精品| 四虎AV无码| 久久人妻视频网| 60秒免费小视频| 久久久久久人妻| 国产人妻天天干精品| 激情熟女12P| 中文字幕精品探花视频| 蜜臀99久久精品久久久懂爱| 91精品国产91熟女| 国产97色在线| 久久精品国产亚洲av水密被窝| 午夜AV污污污| 久草老司机| 丝袜视频一区二区在线播放国产中文| 免費人妻夜夜爽天天爽爽一区| 超碰在线人妻| 丁香九月激情啪| 国产美女高潮叫床视频| 精品久久久久久亚洲| 日韩成人电影AV| 婷婷AV一区二区三区| 久久美女国产| 26uuu国产免费观看| 国产精品久久伊人| 91狠| 97亚洲性爱| WWW4虎| 91在线视频免费中出| 天天干天天操天天拍| 国产在线76页| 麻豆久久久久久久久丝袜| 啪啪视频mP4| 午夜精品久久久久久久99热影院| 中文久久96| av草草在线电影| 欧美线天码中字| 夫妻AV网站| 后入合集| 97色碰| 亚洲欧美国产va在线播放频| 中文字幕一区二区日韩网| 国产日韩精品人妻久久久久色欲网站| 在线国产探花| 久久精精区一区二区一蜜桃一区二区| 五十路熟女工口 | 中出在线视频| 91成人18| 乱伦AVxx| 欧美有码亚洲中文字幕一区二区三区四区| 日韩av熟女一区二区三区成人| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 欧美日韩一干二干| 久九9精品| 亚洲蜜臀精品视频久久| 国产探花日韩援交| 大香蕉啪啪啪| 日本一天色道久久久精品视频| 久久影视二区三区行押| 69视频入口| 欧美老妇曰批的视频| 中文字幕 国产 精品| 色av中文字| 亚洲高清男人天堂| 一级性爱视频免费观看 | 一级aaaaa欧美中文字幕录像片| 日日操丁香五月天| 亚洲中文字幕日产无码久久| 91N综合网| 不卡av免费在线网址| 国产亚洲精品农村妇女| 韩国一区二区精品亚洲| 综合一区二区影视| 一级成人性爱| 亚洲人妻一区二区三区| 操死我了啊啊啊| 91精品人| 九九久久99| 欧美日韩少妇色情| 中文字幕欧美日韩三级| 97婷婷色| 老熟妇一区二区三区| 亚洲熟伦熟妇AV无码春色| 丁香五月自拍| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 天天干,夜夜爽| 激情小说日韩无码| 九色 人妻 大香蕉| 婷婷激情四射| 91精品国产麻豆国产自产在| 91 国产丝袜在线播放-百度| 操逼操逼逼操操逼91| 无码人妻一区二区一牛影视| 精品无码少妇| 久久五月丁香| 亚洲性刺激| 五月天婷精品激情| 中文字幕精品三级久久久| 影音先锋少妇| www.acm成人黄色毛片| 国产网红精品| 高清肉丝中文无码| 蜜桃av综合网发布| 美女黄色91| 日韩成人大片在线观看| 少妇蹲下买菜露大唇0| 色婷婷激一区二区三区| 是还免费视频1727我| 91看黄片| 欧美国产一区二区三区麻豆传媒| 91精品微拍福利| 密臀AV在线| 综合激情二| 久久精品天美| 五月综合婷婷久久网站| 亚洲性刺激| 激情四射五月天| 亚洲男人天堂2017| 国产天美欧美| 日韩中文字幕国产| 99少妇| 欧美视频在线第3页| 亚洲91色| 超碰天天久久79| 久久透逼视频| 竹菊一区二区三区AV线| 水澄无码AV| 91精品人妻偷情| 刺激精品视频| 国产福利小视频高清在线观看| 亚洲AV不卡在线观看| 婷婷五月天久久久| 亚洲欧美色图| 日日日日做夜夜夜夜做无码97| a级理论午夜日本| 9久久精品| 国产大片精久久久久久| 一级久久久久久久久久久| 欧美日韩亚洲少妇寂寞影院正在播放 | 精品人妻一区二区三区在| 四虎影视在线| 国产精品自拍欧美在线| 97欧美综合| 天天碰操中国年青熟妇| 尤物一级在线免费观看| 91亚洲电影| 亚洲男人的天堂AV| 男人的天堂亚洲| 中国农村熟妇毛片视频| 免费男人的天堂| 欧美超碰96| 精品超碰国产| 狠狠操官网| 久操免费电影| 亚洲精品不卡一二三区| 大香蕉伊利av| 五月激情天| 人人看人人爰人人操| 91性情| 色欲色香天天天综合网www-亚洲综合国| 探花一区在线| 无码国产Av| 婷婷午夜清品久久久久久久性色视频观| 熟妇人妻一区二区| 欧美视频在线第3页| 黄色AAAAAAAAAAA大片| 999久久久国产精品| 欧美91丝袜| www四虎| 五月天激情婷婷| 69精品久久久久中文字幕| 中日韩一区二区三区欧美| av绯色| 亚洲AV无线| 欧美性特| 国产综合网站在线播放| 一级岛国大片| 欧美裸体美女日麻屄| 亚洲综人网| 综合久久99亚洲人妻中文在线| caorenqi shipin| 亚洲国产成人精品无码专区| 国产二区视频在线观看电影| 日韩熟女操逼| 国产午夜精品理论片一二三区区| 精品少妇999| 91中出视频| 久9久9久9久9久9久9| av一区二区三区四区五区久草臀| 麻豆性爱视频在线播放| 岛国小电影| 欧美亚州手机在线| 炮色五月| 2025亚洲男人天堂| 成人女人国产| 欧美爆操91| 在线观看十八禁| 猛交交| 久久久com| 真实高潮91| 欧美人妻精品| 青娱乐大香蕉| 亚洲图片 激情小说| 情色五月天网| 中文字幕精品亚洲熟女| 9.1小视频| 亚洲天天天| 青草一区二区| 亚洲色婷婷久久91| 中字幕人妻一区二区三区| 九九精品无码专区免费| 新久久AV| 日韩午夜啪啪视频| 天天看综合网| 精品然女一区二区| 人妻蜜桃臀| 亚洲图片91| 91视频精品| 人妻中文字幕精品无码| 中文字幕性感少妇av| 爱射综合| 精品久久在线区一区| 绯色AV粉色AV蜜臀AV| 国产精品午夜福利视频| 97在线视频免费看| 大屁股人妻女教师撅着屁股| av天堂手机版追回| 毛片视频白嫩| 色香91| 青青草久草| 一区二区三区黄色片a| 中文字幕亚韩| 欧美精品在线观看| 色综合1991| 九热中文字幕| 牛黄色久午久| 狠狠夜色午夜久久综合在线| julia国产在线| 亚洲密乳AV| 超碰人人干| 懂色AV中文| 97在线视频观看免费| 碰碰97| 久草免费在线一区二区| 亚洲情色一区三区| 久久国产成人精品国产成人亚洲| 国产精品久久久久久久黄无码| 99久久婷婷| 欧美亚洲厕所精品偷拍91| 亚洲无码一区成人免费午夜| 欧美大香蕉同搞| 欧美性猛交美女自慰91| 日韩欧美久久婷婷网站| 人妻一区视频| 九九热超碰97亚洲最新香蕉| 91一区二匹| 黄色高清无码无码破解免费暗网| 国产盗摄美女如厕大神作品在线观看| 在线中文字幕视频| 91精品久久久久久77777| 九九九久久久久| 日本不卡二区| 99爱精品| 91情色在线| 黄片免费看黄片免费看| 大香蕉琪琪日本女优不卡| 97超碰碰| 青青爽| 国产精品国产精品国产| 五月婷婷深深爱| 婷婷久久久精品| 欧美强奸乱能| 怡红院亚洲怡春院av| 久久精品毛片免费不卡| 丰满精品人妻少妇久久字幕| 青青青国产手线观看视频2| 色嘟嘟人妻天堂网| 亚洲天堂男人的天堂| 亚洲第一综合| 午夜αv| 91大胆欧美| 一本久道久久综合狠狠爱一密臀精| 日韩精品亚洲专区在线影视| 日韩国产九九精品一区二区三区毛片| 精品一区二区综合熟妇| 美女91av| 狼人久草| 五十路熟女人妻一区二区在线观看 | 人人摸人人添人人操| 日日骚精品视频| 国产操操日韩三级黄| 欧美大片一区二区三区| 日本操大逼| 伊人久久亚洲色欲综合网站| 69精品人人人人| 射久久| 嗯嗯啊啊亚欧精品| 这里只有精品视频在线观看麻豆| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 免费超碰97久久| 久久国内| 99热在线播放| 色色99| 极品尤物自安慰| 天天性射网| 一区二区 韩日AV| 亚洲中文字幕在线视频一区二区| 日韩图区| 可以免费观看的av| 9国产超碰| 国产精品乱码久久久久久| av资源在线播放天堂| 玖玖久久久| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 91精品久久久久久综合五月天| 久久久久久久唑| 中文字幕一二三区| 亚洲色诱惑| 亚洲97成人在线观看| 天美传媒av一区二区| 99热这里只有精品99| а√天堂资源官网在线资源| 日本五区不卡| 丝袜综合色图| 五月天偷拍| 国产乱色国产精品免费视| 亚洲影视第一页| 久久99国产综合精品女同| 久久一区二区高清免费| av天堂电影网| 一本一道久久综合久久| 九九拍拍精品视频在线播放 | 欧美日韩青操| 超碰爽人妻熟女Av| 亚洲中文字幕av| 1级黄色夫妻对换性交免费看| 日日干夜夜欢| 亚洲少妇激情视频| 欧亚洲精品有视频| 2020国产精品| 干干干天天| 日本精品五区| 亚洲欧美骚| 久久久内射良家| 一区二区三区四区五区高清无码永久视频 | 天综合中文| 麻豆啪啪啪视频| 亚洲精品白浆高清久久久久久| 亚洲综合在线91| 麻豆人妻偷人精品无码视频| 欧美中字二区| 少妇六月天| 欧美熟爽综合| 亚洲人成网www| 亚洲日韩成人性爱视频| av在线一区二区三区| 自拍偷拍第26| 高清无码久操视频| 思思热在线视频免费| 亚洲日韩美女丝袜美腿人妻视频| 亚州,欧美在线| 中国黄色特级精品一区二区三区片| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 久久五月份| 色色激情五月天| 国产大学生高潮在线播放| 曰韩精品视频一区二区| 一区二区三区亚洲| 日韩黄片视频试看| 眼镜人妻101.com| 亚欧免费观看视频| 国产丝袜美女在线一区| 国产成人亚洲精品无码最新在线| 久久超碰日韩精品| 蜜臀久久99精品久久久久久无删减 | 亚洲国产日韩精品久久久| 久久女女| 欧色网址| 免费精品无码一级毛片牛牛影视| 91久久青青草原精品| 东京热一区二区中文字幕| 碰碰97| 欧美v亚洲v综合v国产v妖精| 国产精品亚洲一级av第二区| 少妇人妻精品| 国产成人天堂| 精品少妇高潮久久| 日韩人妻丝袜中文字幕| 午夜小电影在线插入淫高潮| 久久性爱精品一区| 国产尤物AV尤物在线观看不卡| 久草免费福利在线播放| 秋霞曰韩R级| 激情五月综合网| 精品夜夜澡人妻无码| 国内精品不卡无毒99999| 刺激精品视频| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 美女啊啊啊啊pc| 中文字幕88av在线| 九九免费影片| 夜夜精品视频| 大香焦A片| 亚洲精品精品一区二区| 成人夜夜爽| 九九九九九九成人| 91制服丝袜| 大香蕉乱级| 青娱乐日韩无码| 欧美亚综合色图| 啊啊啊啊好大好硬啊啊啊啊啊| 欧美亚洲特P| 亚洲无码超碰免费| 狠狠色色| 麻豆 亚洲 97| 日韩欧美日韩| 在线观看黄色电话| 神马久久中文字幕| 夜夜爽夜夜操| 亚洲国产精品成人无码久久久 | 亚洲色人| 激情五月天丁香社区| 久久的网站啊啊啊啊啊| 日日骚av| 视频国产精品未满十八禁止在线观看| 国产丝袜视频| 成人开心网在线视频| 性久久久| 精品久久久久,69国产成人精| 热热色色综合| 欧美A片中文字幕| 蜜臀久久久久久999| 欧美最大综合网| 最新日日夜夜天天干干| 2020中文字幕| 日本二三四区| 97精品久久久久中文字幕| 啊啊啊啊好爽好舒服一区二区易域| 久久久久久久亚洲Av无码| 久久极品伊人| 一二三区精品视频| 精品人人插人人操| 日日日日做夜夜夜夜做无码97| 免费?级毛片无码?∨蜜芽试看| 看日韩美女二区三区免费操逼视频| 婷婷九月国产| 天堂中文日本在线观看| 免费超碰97久久| 乱伦a片视频| 丝袜综合| 91av一区二区在线观看| 欧美大香蕉97| 自拍偷拍草一草| 人人摸人人干| 性爱综合一区二区| 色婷婷综合久久中文字幕雪峰 | 91精品成人| 亚洲男人久久综合天堂| 男人干美女| 人人操 欧美| 爽爽爽免费视频| 99久久久无码精品国产人| 欧美精品偷拍| www.伪伪| 蜜桃臀AV在线| 色情婷婷| 亚洲中文字幕在现观看| 少妇毛片久久| AV天堂国产| 欧洲精品欧洲精品| 日韩午夜啪啪视频| 网友自拍第1页| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 久久久av爱| 日本不卡高清视频| 亚洲有薄码区久久在线一区| 久久99综合| 欧美激情综合| 欧美中文狠| 女人午夜视频777| 91高清欧美| 黄色大片一区二区密桃丝袜| 天天躁日日躁成人字幕aⅴ| 欧美综合网1| 色婷婷综合网| 日韩操p| 日韩一性一交一A片俄罗斯 | 亚洲精品视频二区| 国产精品一区av在线| 9997se| 亚洲日产专区| 久久黄色性爱视频| 日韩本不卡视频在线观看| 在线女人91| 精品国产乱码久久久久久口爆网站| 好一吊区二区| 人妻在线臀日韩| 看日韩操逼| 永久免费观看的毛片的网站| 九九av| 大香蕉123| 97人人夜夜精品视频| 精品超碰色| 蜜桃精久三区| 91婷婷| 91人妻最真实刺激绿帽| 国产又粗又长视频| 日韩中文字幕2020| 欧美激情总合网| 午夜福利视频在线一区| 高清国产精品福利网站| 熟女熟妇一区二区三区视频| 亚洲情色1区| 99色色网| 色哟哟511老熟女| 国产激情视频一区区三区| 久久偷偷色综合蜜桃| 久久久久久性爱片| 婷婷亚洲色| www.大香| 麻豆国产精品午夜视频| 人妻丝袜二区| 欧美国产操逼| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 97硬碰| 激情小说五月天| 国产树林里野战在线看| 国模私拍一区二区三区神乳| 超碰九7| 精品玖九九久| chaopen97久久| 国产熟女精品区| 日少妇亚洲版| 九久9热| 久无码| 亚洲 图片 综合91| 色色色热| 久热久| 国模精品娜娜一二三区| 岛国视频免费在线观看| 老司机天天操| 免费a级毛片av无码久久精品中文字幕| 亚洲不雅视频1区二区| 噜噜瑟| 熟女久久久| AV男人天堂网| 亚洲午夜蜜臀| 18禁中文字幕| 青娱乐福利99| 秋霞免费无码视频日韩A片| 久久久久九九九九| 人妻天天爽天天爽三区| 91丝袜在线观看| 激情小说亚洲色图| 亚洲欧洲成人在线电影| 欧美福利视频啊啊啊啊| 国内精品嫩模A∨私拍小视频| 中文字幕精品探花视频| 精品国产Av无码久久久伦古装| 嗯嗯啊啊操我| 欧州一区二区三区四区| 影音先锋每日最新资源在线观看| 高清无码久操视频| 亚洲精品三区在线观看| 欧美一级久久久久久久大片动画| 国产黄片在线免费观看| 免费黄色A片| 久久婷婷精品| 日本免费一区二| 亚洲成人精品久久久| 国产精品一区二区后入| 亚洲熟妇白浆无码AV| 狠狠色五月亚洲91| 国产日本一区二区三区蜜臀在线观看| 又大又大又大又粗爽高潮观看| 丰满人妻被猛烈进入中| 中文字幕亚洲永久精品| 中文字幕一区日韩精| 欧美日韩色图片| 丝袜性亚洲| 久久精品电影| 九九九九九九九九九国产精品| 放黄片放3级黄片没穿衣服| 懂色中文一区二区三区| 日韩精品永久在线观看| 密桃99999| 亚洲人妻熟妇三十三区| 久久久久久久久久久久欧美日| 少妇精品| 尤物视频一区| 色噜噜婷婷| 久久免费看高潮毛片韩国| 亚洲国产精品久久久久婷婷老年| 亚洲天天更新| 丰满人妻一区二区三区四区| 操操啪| 夜夜骑天天燥| 欧美日韩在线小说| 亚洲欧洲精品视频发布| 男人的天堂在线有码| 射丝袜大香蕉| 国产成人在线观看网址| 日韩精品视频在线观看一卡二卡| 按摩中文字幕| 中日韩久久久免费看| 亚洲码在线中文在线观看| 亚洲欧美日韩夜夜| 日日黄色三级网站| 97亚洲在线| 激情干在线| 麻豆性爱视频在线播放| 香蕉综合网| 国产成人bd在线观看| 蜜桃传媒一区二区亚洲| 中出20p| 1人人看人人摸人人操| 亚洲综合激情五月久久| 91n免费处女| 成人午夜高潮av猛片| 日韩中文字幕视频在线观看| 欧美精品第四五页中文字幕在线观看| 嗯嗯啊啊啊好爽| 狠狠色噜噜狠狠狠狠狠色综合久久 | 97爱b| 日韩综合无码一区久久92| 色婷婷亚洲婷婷| 大香蕉92| 乱论91| 男人的天堂VA在线| 欧美精品69性爱| 亚洲麻豆精品二区三区| 久久久精品,3| 国产成人自拍视频在线| 天堂中文日本在线观看| 九月AV| 亚洲一区二区三区春色| 中文高清一区二区的| 人妻少妇精品久久久久久| 午夜精品久久久久久久99蜜桃一| 中文字幕超碰CAO| 性暴力欧美猛交在线直播| 日韩影片中文字幕一区二区三区| 色逼综合| 日本三级韩国三级99| 人人妻人人爽一区二区三区| 色99视频| 精品久久久久综合无码| 久久人妻精品| 九九久久久| 日本免费中文一区二区三区四区 | 操逼操逼逼操操逼91| 九九九九精品一区| 亚洲第2页| 欧美日韩中国x| 欧美网站免费| 日日夜夜骑| 看日韩美女二区三区免费操逼视频 | 日韩激情无码影院| 91成人在线| 超碰成人公开| 国产超碰欧美| 一区二区三区四区色图| 亚洲婷婷丁香在线| 大香蕉在线视频重口味毛片在线| 亚洲h片在线免费观看| 操死我了嗯嗯嗯| 无色无码| 久操国产在线| 伊人大香蕉在线| 小视频国产| 国产热av| 丁香五月激情综合| 久久性爱视频99| 亚洲综合贴图91 | 91精品导航| 国产四虎在线| 国产曰批免费观看久久久| 午夜福利一区二区三区四区五区色婷婷| 亚洲最大无码中文字幕网站| 熟妇一区二区| 久久精品72| 大香蕉免费乱伦视频| 熟妇色99| 区二区亚洲婷| 99热18| 摸奶性爱视频网站在线免费播放| 加勒比人妻综合| 婷婷久久五月天| 高清国产无码av| 超碰在线1234区| 天天干2019| 久久精品国产亚洲AV高级北京| 国产精品久久久亚洲第一牛牛_在线观看 | 亚洲色欧| 岛国AV一区二区电影| 欧美熟妇亚洲版| 人妻99p| 日韩成人私密一级精品av| 国产99999久久精品| 一区二区三区在线资源| 国产精品干干干| 午夜一区| 目产99999久久999| 天堂伊人久久| 屁股久久久久久久久久| 91久久精品中文字幕| 久久伊人网视频一区二区三区| 久久精品六区| 无码精品久久| 中文高清一区二区的| 中文字幕精品三级久久久| 999精品国产高清一区二区| 国产亚洲 中文欧美久久| 死我十八禁| 日本操色导航| 综合九九| 凹凸视频在线观看伊人| 五十路熟女工口 | 老熟妇一区二区三区啪啪| 内射老妇BBWX0C0CK| 桃色六月天| 国产精品爱欲| 情色五月天网| 少妇干B| 在线播放中文字幕| 人成午夜免费大片| 久久精品超碰| 欧美淫穴| 国产无码久久高清| 10000部十八禁看电影| 伊人久久综合精品欧美| 欧亚日本情色| 五月丁香啪啪啪| 好爽视频在线观看视频 | 夜夜夜久久| 黄片免费视频2019| 97久久国产精品| 久久精品一区二区三区蜜桃臀| 欧美东京热精品A∨| 蜜桃久久一区| 九九九九九九成人| 91丨九色丨东北熟女| 91精品人妻偷情| 后入福利| 久草精品国产蜜臀| 成人av动漫在线观看| 人妻精品视频一区二区三区| 亚洲资源网| 东京太热久久久| 五月天玖玖资源站| 综合影院永久入口国产| 欧美黑人日韩少妇色情| 成人女人国产| 超碰79人人乐| 久久人妻视频网| 久久精品性| 被男人吃奶很爽的毛片| 色99久草| 997色在线| 青操影院| 九九九九九九视频| 婷婷色香| 色婷婷在线视频精品导航| 激情五月综合网| 99综合视频一体| 日本肉体xxxx裸交| 日韩欧美经典在线观看| 黄色小视频日本txt| 人人干黄色| 国产家庭乱伦性爱视频| 熟妇的味道HD中文字幕| 午夜福利一区二区影院| 偷拍偷窥与盗摄视频专区| 碰碰97| 精品九九| 翔田千里Av在线| 国产精品亚洲高清在线| 国产熟女完整版中字| 强奸乱伦Av网| 在线观看精品国产免费| 日韩AV一起草| 91爽啪| 天天看高清麻豆| 无码人妻系列少妇| 欧美91网| 无码78| 欧美Aⅴ| 桃色五月天| 91色综合激情| 老司机福利社视频在线观看| 激情小说激情视频| 成人AV超碰免费在线| 思思性爱| 欧美熟妇视频 | 在线a v| 日韩欧美女优电影| 日韩精品人妻中文字幕久久久| 少妇内射www在线观看视频| 尤物视频偷拍免费| 久久性爱视频免费看| 成人aⅴ一区二区三区| 色婷婷电影网| 久久久精| 日韩乱伦AⅤ| 亚洲精品一区二区三区新线路| 一二三四视频在线社区中文字幕| 易易A毛视频| 久久久久九九九| 人妻丝袜肏逼| 欧美视频一区二区在线| 男女啪啪啪18禁网站| 97视频在线播放| www.av家庭乱伦| 色99色| 超碰97.com| ?亚洲伊人伊成久久人综合网| 激情文学欧美| 国产九九九九九九九九| 超碰久超碰久| 国产精品自在线发布| 亚洲精品无码少妇久久| 国产白嫩精品久久| 精品97久久综合| 伊人网一本| 欧美第一页| 黄色AAAAA欧美| 2017人人操,人人摸| 麻豆黄四叶草网站| 妇女一区二区三区| 99色综合| 国产麻豆91欧美一区二区久久婷婷国产精品| 一级性爱视频免费在线| 91美腿丝袜在线观看| 99999久久精| 欧洲天天在线| 国产欧美日本亚洲精品| 蜜桃不卡一区二区| 国产亚洲精品av一区| 久超碰这里只有精品| 午夜色婷婷| 日语五十路和六十路亚洲国产精品| 91女网站| 人人看欧美性爱| 无码粉嫩白虎一线天b区| 青青草在线视频人人想人人上| 久久草草亚洲蜜桃臀| 九热超碰| 婷婷五月色| 人人人摸人人| 久久精品国产亚洲粉嫩| 日本少妇va7777| 国产精品久久久久久无码红治院| 色婷婷日韩精品一区二区三区| 青青草日逼视频| 国产精品久久久久久久毛片1| 国产91 丝袜在线播放 | 麻豆天美91| 性性久久| 一本一道人妻久久一区二区三区| 一区操逼日比视频| 国产深夜福利| 久操频道免费在线呗看| 日本黄色天堂| 后入 亚洲 美女 射| 亚洲国产高清福利视频| 欧 美 自 拍 偷 拍| 26UUU欧美日本| 国产精品久久泡妞网站| 精品妇操一区二区三区| 亚洲精品美女操逼| 俺去久久| 欧美性后入| 中文字幕片| 好吊妞转入那个网| 色情五月综合婷婷| 97福利视频| 国产自偷自拍一区| 丝袜熟女一区二区三区| 最新日产中文在线麻豆| 三级激情网站| 欧美精品一区二区少妇免费A片| www熟女乱伦com| 亚洲欧美国产中文视频| 三级日韩一区二区三区| 男人的天堂午夜av| 99在线无码精品秘 入口黑人| 欧美激情性爱视频网站| 黄片com.| 熟妇熟女亚洲天堂网| 天天淫人人妻日日色| 亚洲淫乱骚妇AV| 亚洲丝袜二区在线| 中文 人妻 制服| 国产美女自拍AV| 日本肉体xxxx裸交| 亚洲国产一区二区三区在线| 欧亚乱色熟一区二区三四区| 91欧美性| 亚洲成人激情小说视频| 无遮挡一级毛片视频免费的| 粉嫩不卡一区二区性爱| 国产少妇与亚洲av| 日韩图区| 欧美亚洲图片| 伊人五月天| 亚洲涩涩| www.91视频网| 精品一区二区综合熟妇| 久久久久久久久久久人妻| 91美女国产在线| 日韩特级毛片免费观看全集| 久色网| 天天碰久久入| 无码区蜜乳| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 欧洲特黄毛片免费看欧洲毛片| 美女97超碰| 欧美亚洲手机在线| av凤凰久久久| 免看60秒涩涩视频| 国产无马视频| 精品无码一二三四区| 国产日韩在线播放av| 成人网欧美风情| 亚洲天天综合| 大香蕉伊人网WWWn0n| 99久久无码| 国产视频一区二区在线| 97干在线| 1区2区3区中文字幕日韩| 韩美日操逼| 四虎国产成人精品免费一女五男| 亚洲成人激情小说视频| 顶级少妇BT天堂| 超碰人人操97碰| 青久操| 精品性爱一区二区| 嗯嗯不要视频| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 黑人精品久久97| 高跟丝袜AV专区国产| 巨乳特殊服务按摩| 操死我干死我| 一级日本牲交大片好爽在线看| 亚州男人的天堂| 少妇一线天久久久久久| 欧美欧美啪啪视频| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 亚洲一区二区三区中文字幕| 无码操逼天堂| julia在线观看久久| 精品区国产区一区二区三区| 一区二区三区高清 | 欧亚乱色熟女一区二区| 91色香| 91精品人妻五十路| 91天美传媒精品| 加勒比无码一区二区三区| 色在线亚洲视频www| 啊啊啊好舒服视频| 人妻熟女一区二区| 日日黄色三级网站| 影音先锋中文字幕日本好一区二区| 午夜性生活av免费在线看| 男女啊啊啊啊啊| 色噜噜日韩精品| 久久日本熟女精品一区| 青青操97| 9/A片| 美女露胸露奶头| 99热精品免费| 粉嫩在线一区二区懂色| 美女极品一区二区三区| 国产亚洲精品美女久久久| 欧美91精品国产自产|