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

ARTICLE DETAIL

資訊詳情

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

瑞薩RZ/N2L QSPI啟動(dòng)與參數(shù)存儲(chǔ)設(shè)計(jì)實(shí)戰(zhàn)解析

瑞薩RZ/N2L QSPI啟動(dòng)與參數(shù)存儲(chǔ)設(shè)計(jì)實(shí)戰(zhàn)解析 做嵌入式這么多年第一次認(rèn)真用瑞薩RZ/N2L做量產(chǎn)項(xiàng)目遇到的第一道坎就是啟動(dòng)方式。原先方案是SPI NOR存固件、I2C EEPROM存參數(shù)板子改版時(shí)客戶要求少放器件干脆把參數(shù)也塞進(jìn)同一顆QSPI Flash里。這個(gè)決定看起來省事實(shí)際做下來牽扯到啟動(dòng)模式配置、BootROM對(duì)Flash的初始化時(shí)序、RASC生成的驅(qū)動(dòng)代碼以及參數(shù)存儲(chǔ)的磨損均衡和掉電保護(hù)一環(huán)扣一環(huán)每一環(huán)都有值得記錄的坑。這篇文章就是這次實(shí)戰(zhàn)的完整記錄核心圍繞兩件事RZ/N2L怎么從QSPI Flash啟動(dòng)以及參數(shù)存儲(chǔ)怎么做才能扛得住長時(shí)間運(yùn)行。內(nèi)容包括硬件接法、RASC工程配置、Keil環(huán)境搭建、底層驅(qū)動(dòng)移植、參數(shù)區(qū)規(guī)劃和常見故障排查適合準(zhǔn)備用RZ/N2L做產(chǎn)品、或者想把代碼和參數(shù)統(tǒng)一放到外部Flash上的朋友。如果你用過瑞薩RA6M5或者熟悉e2 studio那套操作上手RZ/N2L會(huì)更輕松因?yàn)榕渲盟悸肥窍嗤ǖ牡讓蛹?xì)節(jié)差異不小建議還是從頭過一遍。1. 為什么我選了QSPI啟動(dòng)需求拆解與方案對(duì)比1.1 啟動(dòng)方式選型先把硬件資源算清楚RZ/N2L支持多種啟動(dòng)介質(zhì)包括QSPI Flash、SD卡、串行接口等。項(xiàng)目里選擇QSPI啟動(dòng)不是拍腦袋決定的主要從三個(gè)方面考量。第一是引腳開銷。RZ/N2L作為MPU級(jí)別的芯片功能外設(shè)多引腳本來就不寬裕。QSPI接口只需要SCLK、CS、IO0到IO3六根信號(hào)線就能接一顆大容量NOR Flash而并行NOR需要幾十根線在小型化板卡上完全不現(xiàn)實(shí)。第二是容量和成本。QSPI NOR Flash的單價(jià)和容量比EEPROM友好太多一顆16MB的W25Q128或者國產(chǎn)GD25Q128價(jià)格只有同容量并行Flash的零頭空間還綽綽有余。固件、文件系統(tǒng)、參數(shù)區(qū)可以全放進(jìn)去產(chǎn)品后續(xù)要加OTA升級(jí)也留得住空間。第三是XIP能力。QSPI控制器支持內(nèi)存映射模式Flash可以被映射到CPU的地址空間代碼可以直接在Flash上執(zhí)行不需要上電后先搬運(yùn)到SRAM再跑。這一點(diǎn)對(duì)啟動(dòng)速度幫助很大BootROM把QSPI初始化好之后CPU取指直接走內(nèi)存映射通道省掉了先加載后跳轉(zhuǎn)的那段等待。1.2 參數(shù)存儲(chǔ)選擇QSPI Flash到底合不合適很多人覺得參數(shù)存儲(chǔ)應(yīng)該老老實(shí)實(shí)用EEPROM擔(dān)心Flash磨損和掉電丟數(shù)據(jù)。這個(gè)顧慮在十年前有道理但放到現(xiàn)在的應(yīng)用場(chǎng)景只要設(shè)計(jì)合理QSPI NOR Flash做參數(shù)存儲(chǔ)完全夠用甚至更合適。NOR Flash的特點(diǎn)是按扇區(qū)擦除、按頁寫入擦除操作會(huì)把扇區(qū)全部置為0xFF寫入只能把1寫成0。這個(gè)特性決定了參數(shù)存儲(chǔ)不能像EEPROM那樣原地覆蓋必須做雙備份或者輪換寫入。但換個(gè)角度想正因?yàn)椴翆憜挝淮蠓炊浦闳ピO(shè)計(jì)合理的寫入策略最終的效果是數(shù)據(jù)可靠性比EEPROM方案更高因?yàn)槊恳环輸?shù)據(jù)都會(huì)被校驗(yàn)、被備份、被輪換。參數(shù)存儲(chǔ)對(duì)Flash的另一個(gè)要求是掉電保護(hù)。實(shí)際產(chǎn)品中參數(shù)寫入瞬間掉電是常態(tài)如果只寫一個(gè)區(qū)域斷電后數(shù)據(jù)可能半新半舊。QSPI方案配合雙Slot設(shè)計(jì)和CRC校驗(yàn)可以保證掉電后要么拿到舊數(shù)據(jù)要么拿到新數(shù)據(jù)不會(huì)出現(xiàn)中間態(tài)。2. 硬件設(shè)計(jì)與啟動(dòng)引腳配置先把底子打牢2.1 啟動(dòng)模式引腳和QSPI信號(hào)一個(gè)都不能接錯(cuò)RZ/N2L的啟動(dòng)介質(zhì)選擇由啟動(dòng)模式引腳的上下拉電平?jīng)Q定。具體是MD_BOOT還是其他命名一定要以芯片數(shù)據(jù)手冊(cè)和硬件設(shè)計(jì)手冊(cè)為準(zhǔn)原理圖階段就要和FAE確認(rèn)清楚。我這次就吃了個(gè)虧以為啟動(dòng)引腳默認(rèn)拉低就是QSPI啟動(dòng)結(jié)果打樣回來發(fā)現(xiàn)默認(rèn)電平對(duì)應(yīng)的是串行接口模式BootROM壓根沒去初始化QSPI調(diào)試器連上后CPU直接跑飛。啟動(dòng)模式引腳的電平需要在復(fù)位釋放前穩(wěn)定所以不要圖省事直接接固定電平最好預(yù)留0歐電阻或者跳線方便量產(chǎn)階段切換啟動(dòng)介質(zhì)。比如調(diào)試時(shí)用串行接口模式燒寫B(tài)ootloader測(cè)試完成后切回QSPI啟動(dòng)這個(gè)跳線能避免反復(fù)焊Flash。QSPI信號(hào)線的接法也要注意。WP和HOLD引腳在四線模式下會(huì)復(fù)用為IO2和IO3如果不用四線模式這兩個(gè)引腳絕對(duì)不能懸空。懸空狀態(tài)下Flash在復(fù)位或上電瞬間可能誤進(jìn)入HOLD狀態(tài)導(dǎo)致通信一直掛起。正確的做法是分別通過10K電阻上拉到VCC或下拉到GND具體選擇取決于Flash芯片手冊(cè)。2.2 信號(hào)完整性和電源處理高頻啟動(dòng)別翻車QSPI工作在幾十MHz到上百M(fèi)Hz信號(hào)完整性比SPI模式要求高。PCB上QSPI四根數(shù)據(jù)線盡量等長誤差控制在5mm以內(nèi)SCLK和數(shù)據(jù)線之間不要差太多否則高速讀時(shí)序會(huì)出現(xiàn)采樣點(diǎn)偏移。走線避免跨分割底層如果有完整地平面信號(hào)質(zhì)量會(huì)明顯好過跨區(qū)走線。電源方面Flash的VCC引腳要就近放一個(gè)0.1uF陶瓷電容如果板上有空間再并一個(gè)1uF電容。QSPI Flash對(duì)電源紋波不算特別敏感但如果Flash供電和主控?cái)?shù)字電源共用一條細(xì)線擦除瞬間的大電流沖擊可能引起波形毛刺嚴(yán)重時(shí)造成通信錯(cuò)誤。還有一個(gè)小細(xì)節(jié)RZ/N2L的QSPI控制器時(shí)鐘源來自內(nèi)部PLL還是外部晶振決定了啟動(dòng)時(shí)Flash最高能跑多快。BootROM初始化QSPI時(shí)用的是系統(tǒng)默認(rèn)時(shí)鐘如果你的外部Flash最高支持133MHz但BootROM階段只跑到幾十MHz這沒關(guān)系只要應(yīng)用代碼里重新初始化QSPI把它切換到高速模式即可。啟動(dòng)階段不用追求極限速度穩(wěn)定才是第一位的。3. RASCKeil環(huán)境搭建從配置到第一行代碼3.1 RASC創(chuàng)建工程先選對(duì)芯片型號(hào)和FSP版本瑞薩的圖形化配置工具RASCRenesas Advanced Smart Configurator是RZ/N2L開發(fā)的主入口和e2 studio里的配置界面是同一套東西。如果你是從RA6M5這類RA系列轉(zhuǎn)過來會(huì)發(fā)現(xiàn)操作方式很熟悉但RZ/N2L屬于RZ系列FSP套件版本和RA系列不完全一樣生成的代碼結(jié)構(gòu)也有差異。打開RASC后第一步是選擇具體芯片型號(hào)。RZ/N2L下面還有多個(gè)子型號(hào)區(qū)別主要在封裝、內(nèi)置SRAM大小、外設(shè)數(shù)量上。選錯(cuò)型號(hào)會(huì)導(dǎo)致引腳分配不對(duì)后期改起來非常痛苦。我建議在原理圖定稿后就把型號(hào)確認(rèn)好RASC建工程時(shí)直接鎖定。創(chuàng)建工程時(shí)還需要選目標(biāo)編譯器。RASC支持生成Keil、IAR、GCC等工具鏈的工程文件。我們用的是Keil MDK所以在RASC里選擇對(duì)應(yīng)的工具鏈生成后直接用MDK打開工程不需要手動(dòng)移植。FSP版本方面不要盲目追求最新版。有些新版本對(duì)老型號(hào)的支持存在回歸問題我踩過一次升級(jí)FSP后QSPI的片選時(shí)序配置項(xiàng)位置變了生成代碼和手冊(cè)對(duì)不上。穩(wěn)妥做法是選擇當(dāng)前型號(hào)的長期支持版本至少等一個(gè)版本發(fā)布三個(gè)月后再考慮升級(jí)。3.2 QSPI外設(shè)配置重點(diǎn)看時(shí)序參數(shù)在RASC的Stacks配置頁里添加QSPI驅(qū)動(dòng)配置界面會(huì)列出一堆選項(xiàng)包括Bus Width總線寬度、Command Sequence命令序列、時(shí)鐘分頻等。這些參數(shù)不是隨便填的要和實(shí)際Flash芯片的指令集對(duì)應(yīng)上。例如W25Q128JV的頁寫指令有0x02單線和0x32四線頁寫部分廠商是0x32擦除指令有扇區(qū)擦除0x20、塊擦除0xD8。RASC配置界面里會(huì)把對(duì)應(yīng)的操作類型列出你需要把Flash手冊(cè)上的指令碼填進(jìn)去。填錯(cuò)了不會(huì)立刻報(bào)錯(cuò)但讀寫數(shù)據(jù)會(huì)出現(xiàn)詭異性錯(cuò)誤。時(shí)鐘分頻配置要略留余量。如果Flash標(biāo)稱最高支持104MHzQSPI時(shí)鐘設(shè)置為80MHz到90MHz比較穩(wěn)妥這個(gè)頻率貼上限跑長時(shí)間工作加上溫度變化時(shí)序余量不足會(huì)導(dǎo)致偶發(fā)讀錯(cuò)。不要為了跑分好看把頻率拉到極限嵌入式產(chǎn)品穩(wěn)定壓倒一切。RASC生成代碼后QSPI驅(qū)動(dòng)的初始化、讀寫接口都會(huì)被封裝好實(shí)際使用時(shí)通常從R_QSPI_Open開始然后通過R_QSPI_Read、R_QSPI_Write、R_QSPI_Erase等接口操作Flash。具體函數(shù)名以生成代碼為準(zhǔn)但調(diào)用邏輯和標(biāo)準(zhǔn)FSP驅(qū)動(dòng)是一致的熟悉一家以后換型號(hào)很容易上手。3.3 Keil工程導(dǎo)入與下載算法配置RASC生成完工程用Keil MDK打開后第一個(gè)要處理的問題是下載算法。默認(rèn)工程里一般只包含片內(nèi)Flash的編程算法外部QSPI Flash不在其中直接點(diǎn)下載會(huì)提示找不到算法。Keil里為外部Flash添加下載算法有兩種方式。一種是選擇Keil安裝目錄下現(xiàn)成的Flash算法文件比如針對(duì)W25Q系列通常能找到對(duì)應(yīng)的.FLM文件另一種是通過調(diào)試器的QSPI Flash Loader實(shí)現(xiàn)J-Link的J-Flash軟件支持大多數(shù)常見QSPI Flash型號(hào)配置好之后可以在線燒寫。如果芯片的QSPI Flash型號(hào)比較冷門找不到現(xiàn)成下載算法還有一個(gè)通用辦法先用串行接口啟動(dòng)模式通過UART把一段一級(jí)Bootloader燒到片內(nèi)SRAM再由Bootloader通過QSPI驅(qū)動(dòng)把完整的Bootloader和應(yīng)用固件寫到外部Flash。這個(gè)流程雖然繞但在量產(chǎn)階段很實(shí)用尤其是調(diào)試器算法兼容性出問題時(shí)。下載算法配置好之后還有一個(gè)坑Keil的Flash Download選項(xiàng)里Programming Algorithm和RAM for Algorithm這兩組地址空間要和芯片的QSPI映射地址范圍匹配。RZ/N2L的QSPI內(nèi)存映射地址通常是0x80000000開頭的一段區(qū)間算法配置里的起始地址必須寫對(duì)這個(gè)值否則程序能下載但上電后無法從Flash啟動(dòng)。4. QSPI底層驅(qū)動(dòng)快速移植讀、寫、擦除完整實(shí)現(xiàn)4.1 QSPI控制器的工作方式先理解再動(dòng)手RZ/N2L的QSPI控制器支持兩種工作模式間接模式和內(nèi)存映射模式。間接模式適合指令發(fā)送、狀態(tài)讀取、小塊數(shù)據(jù)寫入內(nèi)存映射模式適合大塊數(shù)據(jù)讀取也就是XIP。理解這兩種模式的區(qū)別對(duì)接下來的代碼設(shè)計(jì)很重要。間接模式下代碼像操作普通外設(shè)一樣往控制器的傳輸寄存器里寫數(shù)據(jù)觸發(fā)QSPI控制器自動(dòng)產(chǎn)生SCLK時(shí)序。這種方式靈活可以發(fā)任意指令缺點(diǎn)是效率偏低每筆數(shù)據(jù)傳輸都要軟件參與。內(nèi)存映射模式下Flash被映射到CPU地址空間CPU直接讀地址就能拿到數(shù)據(jù)效率最高但不適合寫入操作因?yàn)閷懖僮餍枰暾牟翆懥鞒獭?shù)存儲(chǔ)的優(yōu)化思路就在這里讀取參數(shù)時(shí)走內(nèi)存映射模式直接以指針方式訪問寫入?yún)?shù)時(shí)切換到間接模式執(zhí)行擦除、寫使能、頁寫一系列命令。不少工程師忽略了這個(gè)區(qū)分全程用間接模式讀Flash導(dǎo)致系統(tǒng)啟動(dòng)時(shí)讀參數(shù)耗時(shí)幾十毫秒完全沒有發(fā)揮QSPI的性能優(yōu)勢(shì)。4.2 核心驅(qū)動(dòng)代碼忙檢測(cè)、頁寫、扇區(qū)擦除QSPI NOR Flash的操作基礎(chǔ)是命令序列。常見的命令包括寫使能0x06、讀狀態(tài)寄存器0x05、頁寫0x02、扇區(qū)擦除0x20、塊擦除0xD8、讀數(shù)據(jù)0x03單線高速讀0x0B。驅(qū)動(dòng)設(shè)計(jì)時(shí)把這些命令封裝成基礎(chǔ)函數(shù)上層按需組合。下面這段代碼是一個(gè)精簡的忙等待和頁寫實(shí)現(xiàn)基于瑞薩FSP生成代碼的基礎(chǔ)上做的簡化實(shí)際工程中要做超時(shí)保護(hù)/* 讀QSPI Flash狀態(tài)寄存器 */ static uint8_t qspi_read_status(void) { uint8_t status 0; uint8_t cmd 0x05; /* Read Status Register-1 */ R_QSPI_Command(cmd, 1, status, 1); return status; } /* 等待Flash空閑帶超時(shí) */ static int qspi_wait_busy(uint32_t timeout_ms) { uint32_t tick 0; while (tick timeout_ms) { if ((qspi_read_status() 0x01) 0) { return 0; } R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_MILLISECONDS); tick; } return -1; } /* 頁寫len為1~256字節(jié) */ static int qspi_page_program(uint32_t addr, const uint8_t *buf, uint16_t len) { uint8_t write_enable 0x06; R_QSPI_Command(write_enable, 1, NULL, 0); return R_QSPI_Write(addr, buf, len); } /* 扇區(qū)擦除4KB */ static int qspi_sector_erase(uint32_t addr) { uint8_t write_enable 0x06; uint8_t erase_cmd 0x20; R_QSPI_Command(write_enable, 1, NULL, 0); R_QSPI_Command(erase_cmd, 1, NULL, 0); return qspi_wait_busy(500); }頁寫有個(gè)容易被忽略的坑如果寫入數(shù)據(jù)跨過了256字節(jié)頁邊界Flash內(nèi)部會(huì)自動(dòng)回卷把后半段數(shù)據(jù)寫到頁首導(dǎo)致數(shù)據(jù)錯(cuò)亂。所以驅(qū)動(dòng)里一定要做長度和跨頁判斷超過頁邊界就拆分成多次寫入每次最多寫到本頁結(jié)尾。擦除等待時(shí)間也要給足。扇區(qū)擦除典型時(shí)間是50ms到400ms塊擦除更長。等待循環(huán)里如果超時(shí)閾值設(shè)置太短會(huì)誤報(bào)出錯(cuò)。我習(xí)慣把扇區(qū)擦除超時(shí)設(shè)置到500ms塊擦除設(shè)置到2s給芯片留足余量。4.3 讀性能優(yōu)化內(nèi)存映射模式一次搞定實(shí)際產(chǎn)品里參數(shù)結(jié)構(gòu)體可能包含幾十個(gè)字段分布在幾百字節(jié)范圍內(nèi)。如果用間接模式一條條讀每次都要拉起CS、發(fā)送命令效率非常低。正確做法是在系統(tǒng)初始化時(shí)把QSPI控制器切換到內(nèi)存映射模式然后直接用指針讀取#define QSPI_MAPPED_BASE 0x80000000UL #define PARAM_AREA_OFFSET 0x00100000UL const param_struct_t *param_ptr; param_ptr (const param_struct_t *)(QSPI_MAPPED_BASE PARAM_AREA_OFFSET); if (param_ptr-magic PARAM_MAGIC) { /* 參數(shù)有效直接使用 */ local_param *param_ptr; }這段代碼的執(zhí)行速度比間接模式快一個(gè)數(shù)量級(jí)讀取時(shí)不占用CPU等待時(shí)間。寫入時(shí)再切換回間接模式完成擦寫后重新切回內(nèi)存映射模式。需要注意的是切換操作要嚴(yán)格配對(duì)防止寫操作執(zhí)行到一半切模式導(dǎo)致總線異常。5. 參數(shù)存儲(chǔ)優(yōu)化實(shí)戰(zhàn)磨損均衡與掉電保護(hù)5.1 存儲(chǔ)區(qū)布局設(shè)計(jì)代碼和參數(shù)分家參數(shù)存儲(chǔ)設(shè)計(jì)的首要原則是參數(shù)區(qū)和代碼區(qū)必須物理隔離不能混在一起。否則一次參數(shù)擦除失誤可能把固件代碼一同抹掉產(chǎn)品直接變磚。我習(xí)慣把QSPI Flash分成四個(gè)區(qū)域一級(jí)Bootloader、應(yīng)用固件區(qū)、參數(shù)存儲(chǔ)區(qū)、日志區(qū)。典型布局參考如下區(qū)域起始地址大小用途Bootloader0x00000064KB啟動(dòng)加載、異常恢復(fù)應(yīng)用固件0x0100001MB主程序XIP運(yùn)行參數(shù)存儲(chǔ)0x200000256KB參數(shù)雙Slot輪換日志區(qū)0x240000剩余空間運(yùn)行日志、升級(jí)記錄參數(shù)區(qū)劃分256KB相對(duì)整個(gè)Flash容量不算大但用雙Slot輪換設(shè)計(jì)已經(jīng)非常寬裕。每個(gè)Slot對(duì)齊到扇區(qū)邊界方便獨(dú)立擦除。如果固件本身不足1MB可以把參數(shù)區(qū)擴(kuò)大存儲(chǔ)余量更充足。參數(shù)結(jié)構(gòu)體建議這樣定義typedef struct { uint32_t magic; /* 固定魔數(shù)識(shí)別參數(shù)有效性 */ uint32_t version; /* 參數(shù)版本號(hào) */ uint32_t sequence; /* 遞增序號(hào)區(qū)分新舊 */ uint32_t crc32; /* CRC校驗(yàn)值 */ uint8_t data[512]; /* 實(shí)際參數(shù)字段 */ } param_slot_t;magic用于快速判斷區(qū)域是否被寫過version支持不同版本固件之間參數(shù)格式升級(jí)sequence在雙Slot設(shè)計(jì)中區(qū)分新舊數(shù)據(jù)crc32確保數(shù)據(jù)完整性。這四樣缺一不可少了任何一個(gè)后續(xù)排查都會(huì)很痛苦。5.2 雙Slot輪換寫入掉電也不怕參數(shù)寫入最怕掉電。設(shè)想一下寫主Slot到一半斷電主Slot的數(shù)據(jù)既不是舊值也不是新值如果系統(tǒng)只認(rèn)主Slot這次斷電就造成參數(shù)損壞。雙Slot設(shè)計(jì)就是為了解決這個(gè)問題。寫入流程這樣設(shè)計(jì)讀取當(dāng)前有效Slot的sequence值記為old_seq。擦除空閑Slot把新參數(shù)和遞增后的sequence寫入該Slot。寫入完成后讀回校驗(yàn)CRC正確才認(rèn)為寫入成功。將另一個(gè)Slot標(biāo)記為無效把magic清掉。上電時(shí)掃描兩個(gè)Slot取magic有效且sequence較大的那個(gè)作為當(dāng)前參數(shù)。這里的關(guān)鍵在于任何時(shí)候至少保留一份完整有效的參數(shù)。寫入過程只動(dòng)空閑Slot老數(shù)據(jù)始終在另一個(gè)Slot里躺著就算寫一半掉電上電后仍能讀到完整舊數(shù)據(jù)。實(shí)現(xiàn)時(shí)用一段簡單的掃描函數(shù)static param_slot_t *find_valid_slot(void) { param_slot_t *slots[2]; int idx; slots[0] (param_slot_t *)(QSPI_MAPPED_BASE SLOT0_OFFSET); slots[1] (param_slot_t *)(QSPI_MAPPED_BASE SLOT1_OFFSET); /* 先判斷magic是否都有效 */ if (slots[0]-magic ! PARAM_MAGIC slots[1]-magic ! PARAM_MAGIC) { return NULL; /* 兩個(gè)槽都無效使用默認(rèn)參數(shù) */ } idx 0; if (slots[1]-magic PARAM_MAGIC) { if (slots[0]-magic ! PARAM_MAGIC || slots[1]-sequence slots[0]-sequence) { idx 1; } } if (crc32_check(slots[idx]) ! 0) { return NULL; /* CRC校驗(yàn)失敗用默認(rèn)參數(shù)并報(bào)警 */ } return slots[idx]; }這段邏輯還要配合CRC校驗(yàn)。CRC計(jì)算放在寫入之前讀回校驗(yàn)放在上電階段。不要省CRC魔數(shù)只能在某種程度上防止未擦除區(qū)域被誤讀但無法防止數(shù)據(jù)位翻轉(zhuǎn)或者部分寫失敗。CRC才是數(shù)據(jù)完整性的最終保障。5.3 磨損均衡計(jì)算Flash壽命到底夠不夠雙Slot方案解決了掉電保護(hù)問題但磨損均衡的效果取決于Slot數(shù)量和寫入頻率。這里做一個(gè)簡單計(jì)算把理論壽命算清楚。假設(shè)使用W25Q12816MB參數(shù)區(qū)256KB劃分為兩個(gè)Slot每個(gè)Slot占128KB一個(gè)Slot內(nèi)包含32個(gè)4KB扇區(qū)。每次參數(shù)更新寫一個(gè)扇區(qū)。Flash扇區(qū)擦寫壽命為10萬次。兩個(gè)Slot始終各有一個(gè)扇區(qū)在參與寫入磨損均衡后相當(dāng)于有64個(gè)扇區(qū)輪流被擦寫實(shí)際上每次寫一個(gè)扇區(qū)后下次會(huì)優(yōu)先選擇擦寫次數(shù)最少的扇區(qū)。那么使用壽命約為64個(gè)扇區(qū) × 100,000次 / 每天寫入次數(shù) 6,400,000 / 每天寫入次數(shù)如果設(shè)備每10分鐘寫一次參數(shù)一天144次壽命約為44444天超過120年。就算每秒鐘寫一次一天86400次壽命也有74天對(duì)于參數(shù)保存來說完全夠用。這個(gè)計(jì)算說明一個(gè)道理磨損均衡的效果取決于參與輪換的扇區(qū)數(shù)量。如果只用固定一個(gè)扇區(qū)擦寫10萬次壽命很快耗盡但只要把參與輪換的扇區(qū)數(shù)量做大壽命會(huì)線性增長。所以參數(shù)區(qū)不要?jiǎng)澐值脫笓杆阉讯嘟o幾個(gè)扇區(qū)產(chǎn)品生命周期內(nèi)的磨損問題基本不用再管。6. 啟動(dòng)與存儲(chǔ)故障排查我踩過的坑都在這里6.1 啟動(dòng)失敗反復(fù)重啟先查BootROM階段遇到上電后系統(tǒng)反復(fù)重啟或者完全沒有響應(yīng)按下面的順序排查。首先檢查啟動(dòng)模式引腳的最終電平是否和預(yù)期一致。用萬用表量一下復(fù)位釋放時(shí)的電平不要只看原理圖。我遇到過原理圖上標(biāo)示正確但PCB布線時(shí)通過一個(gè)串聯(lián)電阻接到了錯(cuò)誤電平的情況。其次確認(rèn)Flash芯片是否被BootROM正確識(shí)別。RZ/N2L的BootROM在執(zhí)行QSPI啟動(dòng)時(shí)會(huì)從Flash的起始位置讀取有效引導(dǎo)頭引導(dǎo)頭的結(jié)構(gòu)在芯片應(yīng)用手冊(cè)里有明確說明。如果引導(dǎo)頭內(nèi)容不對(duì)BootROM會(huì)靜默放棄之后的行為取決于其他啟動(dòng)源是否配置。第三步是檢查Flash里是否確實(shí)燒寫了Bootloader。用調(diào)試器讀出Flash起始地址的二進(jìn)制數(shù)據(jù)看是否有意料之外的全FF或者全00。全FF說明Flash沒燒進(jìn)去或者擦除后未編程全00說明寫操作異常通常與寫使能時(shí)序有關(guān)。6.2 參數(shù)偶發(fā)丟失CRC和掉電時(shí)序是重點(diǎn)參數(shù)偶發(fā)丟失是排查起來最頭疼的問題因?yàn)閱栴}不一定能穩(wěn)定復(fù)現(xiàn)。我遇到過的原因主要有三類。第一類是CRC校驗(yàn)邏輯漏了字節(jié)。曾經(jīng)有個(gè)同事把結(jié)構(gòu)體里padding區(qū)也算進(jìn)CRC結(jié)果不同編譯優(yōu)化級(jí)別下結(jié)構(gòu)體填充字節(jié)不同導(dǎo)致同一份參數(shù)在不同固件下校驗(yàn)結(jié)果不一致。解決方案是定義一個(gè)固定布局的參數(shù)結(jié)構(gòu)體顯式添加保留字節(jié)CRC只計(jì)算固定區(qū)域。第二類是掉電瞬間的Flash內(nèi)部狀態(tài)被破壞。QSPI Flash在寫入過程中掉電Flash內(nèi)部的高壓發(fā)生器可能處于中間狀態(tài)雖然雙Slot機(jī)制能保住有效數(shù)據(jù)但下次擦除這個(gè)損壞的Slot時(shí)如果寫入電壓不穩(wěn)定擦除時(shí)間會(huì)異常拉長。解決辦法是給Flash供電加一點(diǎn)儲(chǔ)能電容讓掉電后還能維持幾十毫秒供電把正在進(jìn)行的擦寫流程走完。第三類是WP引腳保護(hù)意外開啟。很多Flash有狀態(tài)寄存器保護(hù)位一旦設(shè)置扇區(qū)或塊無法擦除。如果代碼里沒有寫狀態(tài)寄存器的操作但有外部干擾觸發(fā)了保護(hù)后續(xù)寫操作會(huì)一直失敗。排查時(shí)可以讀取狀態(tài)寄存器檢查BP位是否被意外置位。6.3 擦寫卡死和讀取錯(cuò)亂信號(hào)問題和驅(qū)動(dòng)問題兩手抓擦寫卡死最直接的原因是等待超時(shí)邏輯沒有生效流程一直卡在忙輪詢里。排查時(shí)要確認(rèn)超時(shí)計(jì)數(shù)器是否運(yùn)行正常以及是否在中斷環(huán)境下調(diào)用了驅(qū)動(dòng)且沒有處理臨界區(qū)。讀取錯(cuò)亂常見于高速模式。把QSPI時(shí)鐘從100MHz降到50MHz后故障消失基本可以斷定是信號(hào)完整性問題。排查PCB布線、串聯(lián)電阻取值、Flash供電濾波逐步降低時(shí)鐘直到穩(wěn)定。有時(shí)候問題不在硬件而是四線模式下的IO2/IO3引腳的復(fù)用配置不完整導(dǎo)致寫命令發(fā)出時(shí)數(shù)據(jù)線狀態(tài)錯(cuò)誤?,F(xiàn)象可能原因排查方法上電不啟動(dòng)復(fù)位循環(huán)啟動(dòng)模式引腳電平錯(cuò)誤萬用表量復(fù)位釋放時(shí)引腳電平下載報(bào)錯(cuò)找不到Flash算法Keil缺少對(duì)應(yīng).FLM或地址配置不對(duì)核對(duì)QSPI映射地址替換下載算法參數(shù)偶爾全零或全FFCRC校驗(yàn)失誤或雙Slot邏輯缺陷檢查CRC計(jì)算范圍打印兩個(gè)Slot有效狀態(tài)擦除200ms后仍返回忙狀態(tài)寄存器保護(hù)位被置位讀取SR檢查BP位數(shù)據(jù)高速讀錯(cuò)低速正常信號(hào)完整性問題降低時(shí)鐘、檢查布線等長QSPI初始化后讀寫全失敗命令序列配置和Flash型號(hào)不匹配對(duì)照Flash手冊(cè)核對(duì)指令碼排查這類問題效率最高的手段是提前在代碼里埋好診斷信息。每步初始化、每次擦寫執(zhí)行、每個(gè)CRC校驗(yàn)都記錄狀態(tài)碼。產(chǎn)品量產(chǎn)后出問題沒有l(wèi)og根本無從下手。日志區(qū)劃分出來的空間不是擺設(shè)就算只是異常時(shí)寫一個(gè)16字節(jié)的錯(cuò)誤碼也比整片F(xiàn)lash拆下來讀數(shù)據(jù)要靠譜。從RASC配置到Keil調(diào)試從間接模式到內(nèi)存映射模式這套方案跑通之后RZ/N2L的QSPI啟動(dòng)和參數(shù)存儲(chǔ)就不再是風(fēng)險(xiǎn)點(diǎn)了。以后再做新項(xiàng)目如果還是RZ系列配外部Flash我大概率會(huì)直接復(fù)用這套框架——把雙Slot輪換邏輯做成獨(dú)立模塊底層驅(qū)動(dòng)換成對(duì)應(yīng)芯片的FSP接口上層業(yè)務(wù)邏輯幾乎不用改。有一點(diǎn)想額外提醒量產(chǎn)固件里的QSPI時(shí)鐘頻率、超時(shí)時(shí)間這類參數(shù)一定要留成宏定義別散落在代碼里。后期換Flash型號(hào)或者調(diào)整PCB布局只需要改一處配置重新編譯就能用省去大范圍排查的工夫。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
超碰97久| 亚洲97网站| 成人精品久久久午夜福利| 九九久久一区二区三区| 97人人干人人操| 91天天| 德国一二三不卡| 亚洲欧美精品福利在线| 国产日韩色综合| 青青草久久| 欧美大码在线视频| 日本精品第一视频在'| 国产精品粉嫩福利在线| 国产SV一线| 久久欧美1卡2卡3| 秋霞曰韩R级| 曰韩人妻中文字幕在线| 久久人妻| 日本在线观看网址| 久久国产乱子伦精品免费女,网站| 亚洲吊色| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 亚洲AV成人无码一区二区三区在线观看| 综合色区偷拍| 另类老少妇| 97超视频在线观看| 亚洲欲色9532548967一区| 免费的很黄很污的全部视频| 立川理惠被中出无码| 国产精品一二三| 不卡九肏| 久久嫩草国产成人一区| 欧美九九爱| 成人丁香五月| 黄片在线免费在线观看| 黄骗免费| 国产极品99热在线播放69| 国产福利一区二| 亚洲毛片基地专区| 久久久新亚洲AV| 青青久草| 69精品| 欧美日韩制服| 久久超碰com| 亚欧操逼片在线观看 | 啊啊啊啊啊舒服| 国产亚洲精品美女| 牛牛久久国产精品视频一二三| 91碰碰碰| 天天添天天干电影| 999久久久九| 欧美另类色图片| 强奸xx国产| 久草福利在线资源站| 欧美性爱系列| 五月丁香综合| 青青草吊丝| 75大香蕉| 久久亚洲天堂| 94色色电影网| 澳门黄片一香蕉视频| 爱妃国产亚洲视频中文字幕| 亚洲福利影院一区久久| 综合久久久久久久久91| 视频黄色国产一级| 色婷婷色99国产综合精品| 色九月婷婷| 日本曲间由美性生活片| 大香蕉啪啪啪啪在线| 伊人网在线视频| 久久久久78| 日韩精品人妻中文字幕不卡乱码| 天天射日日干| 亚洲国产一区二区日韩专区| 日本性爱少妇| 91丝袜美女| 亚洲欧洲无码97久久精品| 午夜精品久久999热蜜桃介男人用| 国产精品动态一区二区三区四四| 色天天野狼综合社区| 亚洲欧洲激情卡通另类文学四射小说网站 | 久久激情综合| www久久精品| 中文久久久| 免费精品国偷自产在线在线 | 全球成人中文在线| 国产十八禁视频| 欧美 亚洲| 亚洲一区日韩精品中文字幕 | 久久激情视频| 极品内射| 国产老女人久久毛| 97最新在线播放视频| a网站免费观看| 91暧暧| 九九九九九九九九九九九九九九九女| 亚洲欧美第一页| 天天搞在线综合网| 久久视网78| 欧美日韩欧美| 国产伦乱91| 青青草吊丝| 欧美亚洲丝袜人妻制服中文99| 操操逼视频| 天综合网| 啊啊啊想要| 日本高清一区二区在线| 亚洲国产精品久久久男人的天堂| 91熟女在线| 无套内射性感少妇视频| 国产久久一区二区| 亚洲三区视频| 亚洲综合伊人| 欧美第一页性| 东北女人性交| 日本午夜操逼| 夜夜国产一区| 亚洲男人综合| 亚洲国男人的天堂| 91女优在线观看 | 成人五月天色网| 97久久国产| 人妻人人做人人澡人人爽欧美一区| 亚洲麻豆精品二区三区| 日本二区不卡| 五月婷久久| 日韩毛片9| 国产日韩精品无码去免费专区国产| 嗯啊不要啊在线 | 91老司机视频| 天天色香欲综合网| 久久久久久九九九| 狠狠欧美| 香蕉视频欧美一卡二卡| 久草成人福利导航| 秋霞怕怕片| 精品国产肉丝袜在线拍国语| 欧美综合色| 国产精品成人蜜臀AV在线| a片亚洲一本通视频| 国产黄色剧情影片麻豆免费播放| www.操| 97超碰站| 91在线|亚| 91色插| 91狠狠综合久久久久久| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 999熟女精品| 日韩少妇一区二区三区| 丰满人妻一区二区三区四区| 国内精品不卡无毒99999| 大屁股人妻女教师撅着屁股| 青娱乐大香蕉| 成人福利视频网| 色欲久久99精品久久| 色色五月婷婷| 高清国产成人无码| 日韩精品影视| 欧美国产日韩清纯唯美| 精品无码一区二区三区色欲| 99www.bibizy香蕉资源国产一区二区三区高清| 东亚亚洲无码高清| 密臀在线一区尤物| 伊人亚洲综合| 女同亚洲欧美一二三区久久电影| 色综合V| 欧美性视频二区三区| 91精品丝袜久久久久久| 久久综合九色综合欧洲98| 天操老女人| 91精品国产麻豆国产自产在| 天天日天天操天天射河南省| 欧美在线 亚洲| 欧美日本一区二区a人| 欧美的精品的视频| 欧美日韩人妻婷婷一区| 五月天婷婷色| 久久,精品一二三| 色操逼网| 91伊人| 9 9无尺码天堂网| 婷婷五月天激情网| 大香蕉黄色一级片免费看| 9 1超碰九色| 96AV久久久| 人妻-91porn| 夜夜草我| 亚洲色宗合| 男人把坤坤插入女人的下体| 伊人大香蕉在线| 色综合色色| 大香蕉视频一二三区| 亚洲丝袜少妇在线| 欧美亚洲系列| 夜草欧美| 蜜桃久久久久久久久久久久| 欧美se亚洲| 丁香五月天视频| 强奸乱伦日韩AV| 亚洲欧美日韩免费观看| 91色夜| 校园春色综合色| 五月丁香六月婷综合成人综合| 精品人妻一区二区视频| 亚洲无码太久| 亚洲中文字幕熟女| 91欧美丨精品丨入口| 大香蕉日亚洲日本亚大| 亚洲中文日韩欧美大香蕉视频| 激情综合五月婷婷| 八人操人人摸人人看| 九九激情网| 亚洲国产成人精品无码专区| 91久久九九精品国产综合| 狠狠入| 久久久少妇诱惑精品视频| 久久鲁夜| 日韩丝袜高跟制服在线观看| 夜夜高潮夜夜爽| 啊啊啊啊嗯嗯嗯用力好爽| 精品久久人妻成人网| 午夜120视频在线观看| 91精品人妻偷情| 亚洲精品一二牛牛| 色哟哟AⅤ| 久久久久久久久999| 超碰在线一区二区三区| 人妻三级在线中文字幕| 日本性感人妻91| 欧美v日韩v亚洲v最新在线| 97狠狠| 亚洲视频精选| 亚洲一区日韩精品中文字幕 | 国产精品大屁股999| 夜夜操中文字幕| 青青草玖玖爱| 91精品国| 超碰免费97| 国产精品人妻无码久久久老鸭窝 | 久久美女国产| 日本91白丝| 欧美专区在线| 欧亚第一综合网| 伊人国产视频| 婷婷激情丁香| 欧美一级A一级a爱片久久| 久久永久无码人妻视频| 久草网站免费在线观看| 色婷五月天| 少妇一区二区三区在线观看| 亚洲性综合| 日曰骚久久精品| 精品九九| 激情五月天色色网| 九九久久精品| 欧美性视频二区三区| 青青草原成人| 后入综合久久| 午夜视频久久久久一区| 99久久99九九99九九九| 国产精品亚洲四五区在线观看| 99re热| 91成人18| 综合操逼| 久久久久日本视| 岛国不卡超碰护士AV在线播放| 黑白配性爱AV成| 亚洲 暴爽 AV人人爽日日碰| 99热99色| 吊色| 乳欲人妻办公室奶水| 久草免费福利在线播放| 亚洲色图超碰在线| 亚洲女人毛茸茸91| 欧美一区二区日韩三区| 91丨九色丨国产打屁股| 少妇激情AV| 天天噜| 亚洲精品中文字幕一区在线视频| 亚洲激情 欧美色图| 在线洲亚线| 激情五月天插| 久久一二三四五六七八九区区| 欧美天天综合在线| 久久精品国产亚洲AV高级北京| 按摩中文字幕| 手机在线大香蕉| 免费黄色A片| 日本99一区二区| 日本天天干天天操一区| 欧美十八禁在线看| 91天天综合在线| 久草国产在线视频| 免费成人在线熟妇网| 中国一级αV| 乱精品一区字幕二区| 日韩97精| 2021久久国产综合精品青草| 欧美日韩一干二干| 天天做天天爱夜夜爽毛片试看| 99色热| 大香蕉性欧美| 99爱爱| 91国产丝袜美女| 日韩无码黄色片| 九色 人妻 大香蕉| 丝袜人妻av一区二区| 久久99热这里只频精品6学生| 91美女国产在线| 国产成人欧美一区二区三区的国产| 日韩av熟女一区二区三区成人| 大香蕉线| 少妇超碰在线| 一起草高清无码| 天天干2019| 白丝一区| 97碰碰日本乱偷人妻中文的| 一本久道在线综合视频| 亚州熟妇精品| 欧美性爱视频免费一区一A | 337p大胆噜噜噜噜噜91Av| 超碰在线第一页| 精品一区二区人妖| 欧美 亚洲| 色婷婷小说| 91在线视频国产网站| 久jiu久神马影院| 国产高清成人免费视频| 亚洲 图片 综合91| 白天啪啪晚上啪啪视频| 日本国产二线女色| 欧美 亚洲 大香| 亚洲AV秘无码一区..| 91超碰碰在线| 99精品在线观看| 日本阿v天堂在线观看| 一区二区三区日韩欧美| 一级aaaaa欧美中文字幕录像片| 激情文学欧美| 无码精品久久久天天影视| 北野未奈加勒比av| 日韩免费人妻色情网站| 久久亚洲AV无码专区首页| 日日噜噜夜夜久久亚洲一区二区 | 欧美色视频在线| 国产精品国产| 韩日男人的天堂| 激情综合网五月婷婷五月天| 欧美成人精品一区| 91无码人妻| 国产99 中文字幕日韩小视频| 欲色综合| 中文欧丝袜诱惑| 九九色色| 手机在线人成免费视频| 中文字幕乱亚洲美女精品一区| 日本不卡二三区| 色色色色电影网| 欧美精品三级黄片| 狠狠亚洲| 日韩一999精品| 天天躁日日躁AAA片李宗瑞| 黄骗免费网站| 中出91视频| 亚洲精品1区| 精品女人999| 强奸乱伦AV网站| 东京热男人天堂| 国产女人9999| 久热久操| 91大学精品激情戏| 欧美成人黄网色网站| 国产精品永久免费10000| 久久精品店| 男人的天堂无码| 麻豆AV一区二区| 婷婷性爱| 日本人妻A片成人免费看片| 精品久久久久久AV无码| 天堂无码| 91网站18禁| 九九九偷拍| 男人天堂 天天射| 午夜精品99久久久久传媒| 久久亚洲av成人无码国产| 美国黄片aaa| 日本影视久久免费| 最新国产精品| 亚洲97成人在线观看| 欧洲亚洲少妇| 亚洲色图欧美色图另类图片| 国产精品网址| 麻豆久久一区二区三区| 97综合在线| 亚洲黑人在线| 日韩97超碰| 人人妻人人爽人人精品| 色九九九综合| 欧洲精品欧洲精品| 91挑色欧美| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 最新国产精品久久精品| 熟妇操花| 射 色综合| 嗯嗯嗯嗯啊啊啊好紧好大| 啊啊啊用力在线观看| 亚州色图第三区| 亚洲丝袜色| 日韩精品区二区三区不卡| 97人人干人人操| 色婷婷久久| 亚洲欧美精品91| 日韩女优在线| 成人五月香网在线| 色狠狠综合噜一二三区| 日夜干射色啊| 91精品操美女| 欧美高清第一页| 久久9久| 亚洲无码成人精品| 日本www操操操| 色情综合| 天天爽天天干| 亚洲天堂自拍| 粉嫩久久久极品| 久久久精品,3| 国产精品探花色| 免费A V在线播放| 天天综合网站| 色999人与兽| 无码久| 日本一二三免费久久| 屁股久久久久久久久久| 人妻一区二区三区视频| 成全在线观看免费观看| 综合五月天| 东北女人| 天天cao在线| 午夜.DJ高清在线观看免费7 | 亚州色国| 躁躁躁日日躁2020| 人人妻人人狠人人| 人妻在线臀日韩| 插入粉嫩少妇视频| 欧州一区二区三区四区| 免费A V在线| 大香蕉伊人网WWWn0n| 91美女高潮| 9I1性色影院| 精品国产无码中文| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 自拍视频大全亚洲专媒视频/一区二区三区 | 78超碰| 干干干天天| 这里有精品| 天天操人人操骚逼网站| 熟妇人妻丰满久久久久久久无码 | 黄呦呦在线| 成人久久久| 激情啪啪拍91| 99精品高潮| 26uuu最新| 伊人激情| 久久精品操| 日本日逼高清| 91伊人影视综合| 日骚逼视频| 日韩乱伦视频| 日本孕妇孕交| 亚洲少妇综合在线播放| 伦在线97| 秋霞久久亚洲精品成人| 亚洲精品国产av天美传媒| 农村女一级毛卡片| 美女刺激久久国产欧美| 欧美色91| 极品极品色影院| 天天操天天7| 奇米四色影视777久久久| 黑人中出21连凳花野真衣| 精品在线蜜臀| 日韩丝袜人妻AV| 国产成人五月天丁香花| 水野优香在线观看| 天天日天天看| 中文字幕五区| 欧美 精品国产制服第一页| 91久精品| 国产亚洲精品一区二区三区| 亚洲一区二区三区麻豆传媒| 岛国1区2区3区在线观看| 九久9热| 日韩性爱一级片| 偷拍亚洲高清图片| 97视频在线播放| 久久国产精品91| 神马九九| 欧美激情一区二区| 一级黄色性爱A级片| 九九九九一级| 人妻少妇色综合| 国产免费内射视频| 久久一区无码| 91在线秘 男同| 99爱爱| 亚洲小电影免费涩涩成人在线高清| 中文字幕88av在线| 大香网站| 亚洲97综| 一区,二区,三区视频| 日韩欧美中文| 国产福利合集| 日欧毛片久久| 亚洲一卡2卡3卡4卡乱码网站| #NAME?| 99久久com免费视频′| 亚洲春色一区二区三区| 天天日熟妇| 无码免费一区二区三区啪啪| 啪啪啪东京| 午夜九九| 婷婷色香| 亚洲精品日韩国产欧美| 欧美欧美啪啪视频| 精品白丝一区| 人人手机欧洲亚洲国产人妻| 收看日本人日bb| 久热精品在线| 欧美日韩资源在线| 欧美性爱十八禁| 国产精品免费久久久久久久久久| 新视频sss国产| 五月婷婷综合网| 17c嫩草51久久91嫩草| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 中文字幕天堂在线| 91高清日| 日韩精品高清资源在线 | 91激情国产| 欧美内射少妇| 97在线视频观看| 中文精品一区二去| 男人的天堂2019| 蜜桃臀一区二区三区久久| 一二三啪啪专区| 国产99 中文字幕日韩小视频| 欧美一二三级精品在线| 超碰九7| 91中出在线| 欧美暴力猛交| 冬京热男人的天堂| 综合久久99| 五月天黄色激情视频| 人妻一区二区三区视频| 女色综合| 97网色| 久肏视频字幕| 在线播放中文字幕| 99re在线视频国产| 97这里只精品| 精久久久91| www.夜夜操| 噜噜噜在线视频| 国产精品一区二区三| 97AV在线免费观看| 久久婷婷亚洲欧| 亚洲自拍欧美国产首页网曝 | 亚洲精品97p| 天美传媒精品一区二区三区| 97爱b| 999 久久久| 久草精品国产蜜臀| 一区二区三区无卡视频在线观看| 九九热超碰97亚洲最新香蕉| 四季AV综合网址| 精品免费1| 大香蕉 222| 人妻出轨一区二区三区| 蜜臀人妻少妇久久在线观看| 亚洲AO在线| 国产精品熟女九九九| 欧美性爱一区二区三区四区| 亚洲美女 晚间男人天堂| 日日A∨| 亚洲av热热色| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 91丝袜美女视频| 超碰97.com| 玖玖爱视频网站| 变态综合色| 亚洲欧美另类图片| 国产美女在线精品免费看| 一中国女人毛片水真多| a'v在线资源| 日韩福利综合一区| 人成午夜免费大片| 情侣开房子拍 日韩无码 女的很漂亮| 91逼逼女人91| 1区2区3区中文字幕日韩| 9999九九九久久久| 78操B| 日韩成人无码| 日韩图区 偷拍| 极品色www影院| 亚洲综合色男人网| 九九九九九九九九九五码| 欧洲亚洲综合| 亚洲欧美首页| 国产精品久久99日日| 国产一区二区精品久久99| 久久久久9999| 偷拍亚洲高清图片| 欧美综合色,www| 日韩操逼HD| 人妻碰碰碰碰碰碰| 9久9久| 国产女人和拘做爰视频 | 婷婷丁香成人| 亚洲成人精品久久久| 久久中久文96| 国产日韩无码一区二区三区久久区| 婷婷午夜成人色中色| 欧美日韩情色一区二区| 久久6热精品99视频| 日韩超碰97| 人人操人人搞人人草| 亚洲 图片 综合91| 亚洲色图加勒比| 欧美一级专区免费大片| 六月丁香婷| 亚洲有码视频二区| 久久久精品九| 亚洲中文字幕熟女少妇一区二区| 青青草国产亚洲精品久久| 欧美一区二区三区互相| 一区二区 韩日AV| 国产精品禁久久久精品| 特级毛片特黄久久免费看| 女人一区| 日韩极品无码B| 日本不卡卡一区| 国产精品福利视频| 天天摸,夜夜摸| 精品天堂| 色女女女导航| 日韩亚洲欧美中文字幕| 欧美黑人性猛交91| 夜夜爽夜夜操| 女人天堂AV五区在线| 91老熟女| 亚洲色图20p| 欧美偷拍区| 97精品国产手机| 欧美一级黄片视频在线| 久久成人午夜狠狠| 人人看人人摸人人色| 少妇熟女视频一区二区三区| 日韩AC| 91大香蕉伊人| 欧美1727免费观看视频| 又大又大又大又粗爽高潮观看| 超碰 97国产熟女| 久久精品国产精品一区| 久久久久久久久久久久黄色| 国产一区二区精品久久99| 亚洲欧美91√| 狠狠干综合| 国产强奸乱伦欧美| 蜜桃色院一区久久| 国产亚洲色婷婷久久99精品91葵花宝典| 伊人9| 综合色图区| 人妻一区二区三区视频| 激情黄色五月天| 国产成人+综合亚洲+天堂| 91另类| 精品999日本| 激情综合网五月婷婷| 国产精品96| 精品中文日韩字幕视频| 91狠狠综合久久久| 欧美极品美女aaaaaa级黄片| 在线情色电影 91大 | 欧美专区日本专区| 欧美中文综合| 丝袜美腿射精91| 婷婷五月天成人| 日韩无码操逼片| 国产精品日日摸天天碰| 东北女人的毛片| 亚洲免费看片| 国产性久久久| 欧洲久久一二线| 老鸭窝日丰县女人| 日韩一级二级在线| 天天天天操| 成人日韩3| 老熟女综合| 亚洲999综合| 裸体美女国产免费久久久网站| 日本成人A片免费看| 亚洲 欧美 色图| 91高潮喷水美女| 99久久这里只有精品| 精品国产乱码久久久久久口爆网站| 蜜桃久久一区二区| 国产91丝袜在线播放蜜月| 久久国产视频专区一二三| 女人爽到高潮潮喷18禁网站| 亚洲精品性爱片| 欧美日韩1234| 国产一线二线三线av| 97天天在线| 97色欧州| 69AV女优男人的天堂| 婷婷色色五月天| 日本性爱网址| 色翁荡息又大又硬又粗又爽| 精品99999| 日日摸日日碰夜夜爽视频| 伊人久久亚洲色欲综合网站| 国产精品午夜成人福利| 国产精品情侣啪啪| 亚洲精品男人的天堂| 在线强奷到舒服的无码视频| 老司机天天操| 日本黄色精品专区网站| 少妇一区二区三区| 69精品| 亚洲高清综合网| 国产精品日日摸天天碰| K8久久久久| 中文字幕午夜精品久久久| 欧美传媒一区| 91精品免费| 91丝袜美腿片| Julia Annxxxxx| 麻豆人妻偷人精品无码视频| a人片中文字幕一区二区| 性老妇一区二区三区| 极品少妇99| 乱老熟女一区二区三区| 无码视频一区二区| 九九国产| 中文字幕精品专区搜索结果91| 东京热大香焦| 天天性射网| 欧美日综合| 94色色电影网| 碰碰97| 伊人操你| 国产女乱淫真高清免费视频| 日韩在线观看字幕精品| 日本日皮视频逼| 色区久久| 美女露胸露尿口| 欧美精品 - 91爱爱| 91爱看| 欧美色图小说综合 | 欧洲色色| 中文字幕精品人妻丝袜| 久操在97| 2017,超碰| 亚洲伊人成综合成人网| 人人玩人人添人人澡免费| 人妻 中文 日韩| 日韩成人免费电影| 国产性感骚丝袜在线| 国产精品视频在线播放 | 乱伦Av网| 色99色| 欧美超碰96| 四虎在线观看网站| 一起草视频在线| 中文色综合| 欧美性爱伊人| 无码91| 超碰伊人在线| 精品人妻一区二区三区日产| 国产精品蜜臀久久久久无码AV| 天天做日日做天天欢。| 亚洲高潮少妇| 欧美 牲| 草草草视频| 99国产在线 精品 视频| 婷婷五月天色色| 青青草白白色| 国产9l 大屁股| 日韩精品在线视频在线观看| 五月天婷婷色| 操逼999| 欧美99999| 秋霞曰韩R级| 色五月69夫妻| 人人操人人摸超碰| 顶级丝袜熟女一区二区三区| 美女人妻色网站| 国产AV天美传媒一区二区三区 | 亚洲啪啪性视频| m欧洲一级午老| 亚洲欧美首页| 久久婷综合| 超碰日韩美妻| 亚洲无码国产探花在线观看| 超碰在线人妻| 啊啊啊啊啊好舒服视频| 精品国模无码| 欧美天天插| 久热伊人| 一区二区娱乐网站| 日韩八十路老熟女| ji熟女.com| 草b在线 | 天天精品| 91伊人久久在线| 欧美探花网| 精品人妻一区二区免费蜜桃| 96久久久久| 人人扣人人操| 日日玩天天干| 亚洲人妻中文高清| 麻豆国产第一| 九九精品99| 欧美天天综| 欧洲在线性爱视频| 九色 人妻 大香蕉| 欧亚日韩中文在线| 中文字幕五区| 无码78| 精品女人999| 黄页av| 亚洲婷婷五月天| 五月天伊人网| 先锋精品av色鲁| 日夜精品| 中文高清一区二区的| 精品传媒在线一区| 亚洲高潮少妇| 女同在线视频一区| 青春草莓视频在线观看网址| 在线αⅴ| 蜜桃视频一区二区三区在线观看| a片在线播放| 国产午夜视频| 人妻81p| 天天情欲宗合网| 黄片无码在线制服| 舔人妻中文免费视频| 女人爽到高潮潮喷18禁网站| 久久99干一本高清| 久久久激情| 日本色日夜干| 宗合情欲网| www.91逼逼.com| 四虎在线免费视频| 探花精品视频| 91丝袜美女视频| 超碰 另类 欧美 | 亚洲男人天堂视频| 九九精品热| 日产操逼| 99黄页网站| 中文字幕性感少妇av| 久9精品| 91日日| 欧美麻豆成人同性GⅤ在线| 精品久久97| 一个人在线看的黄色电影网站| 国产av激情无码久久天堂| 激情黄色五月天| 人妻AV在线| 欧美精品精品一区二区| 国产第11页| 人妻熟女一区在| 亚洲成人性爱网站在线播放| 亚洲少妇自拍中文字幕懂色| 97在线免费看| 欧美黄片欧美黄片xxx| 久久久久久久性爱| 日韩欧美天天爽爽爽天天爽爽| 综合色色网| 日韩精品在线放| 欧美综合亚洲| 免费久久9999| 99精品无码| 日韩人妻一二三区视频| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 精品国产乱码久久久久久久| 亚洲熟妇图片| 无套内射性感少妇视频| 91大神精品长腿在线观看网站| 久久9精品网站| 蜜伊人色综合97| 99久久99九九99九九九| www.91人妻.com| 国产伦精品| 天天情欲宗合网| 91色图片| 91 手机在线播放 绯色| 在线人人人人人人精品超| 中国熟女老妇仑乱一区二区三区| 97中文字幕一区| 亚洲AV不卡在线观看尤物| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 黄色视频特级毛片| 人人干黄色| 日本欧美中文字幕| 亚洲欧美洲综合| 色香网| 欧美日韩中国x| 日本东京热大香蕉a片| 久久久久久久九九九九九九| 五月丁香成人网| 男人的天堂欧美| 五月婷婷六月丁香| 亚洲欧美激情在线视频| 亚州操逼图| 精品成人亚洲午夜电影| 国产无码精品成人| 日韩亚洲欧美中文字幕| 97超碰9| 国产又粗又长又大的视频| WWW美腿丝袜香蕉中文| 做爱福利视频一区二区| 抽插爽| 色五月第四色| 欧美在线啊啊啊| 国产农村妇女精品一二区| 日韩欧美亚洲国产日韩| 欧州色图区| 旡码电影特区| 啊啊啊啊视频免费| 国产自产91区13区| 在线综合 亚洲 欧美中文字幕 | 亚洲天堂2020| 亚洲激情综合另类| 中日韓欧美高清| 伊人麻豆传媒| 91高潮| 亚洲一区二区在线观看91| 91老熟女| 精品亚洲成人免费在线| 国内亚洲高清无码| 欧美大香蕉久| 波多野42部无码喷潮在线观看| 91人妻最真实刺激绿帽| 国产51色综合久久免费| 一类无码操逼视频| 日韩黄片视频试看| 免费观看国产小粉嫩喷水精品午| 成人五级久久| 日本丝袜人妻内射| 91精品久久综合熟女| 久久婷婷五月| 岛国小电影| 一区二区蜜臀| 少妇久久久免费| 亚洲国产日韩精品久久久| 97资源久久| 伊人网免费视频| 亚洲无吗在线视频| 九色PORNY9l原创自拍| 五月天婷婷激情| 口爆综合网| 久久9精品视频| 国产丝袜美腿美女麻豆| 亚洲男人综合网| 大香蕉草草| 丰满美女一级毛片在线播放| 色yeye成人免费视频| 婷婷在线视频| 人人噜夜夜操| 天天躁日日躁狠狠狠躁| 免费AV中文网在线观看| 青青久久手机线视频| 五月婷婷激情| 久久鲁夜| 熟女少妇视频| 人人操人人操人人人操| 亚洲福利中文字幕在线| 蜜桃精品一区二区三区ww| 欧洲亚洲天堂精品| 另类欧美色| 国产一级高跟丝袜| 五月丁香啪啪啪| 91挑色欧美| 亚洲男人的天堂va亚洲男人社| 亚洲色图尤物视频| 97在线视频免费看| 久久国产99精品72福利| 操人无码| 精品人妻一区二区三区视频| 欧色网址| 久久精品中文字幕无码l| 91亚洲黑人| 搡老女人老91妇女熟女| 国产一区二区二区按摩精品啪视频| 亚洲黄色a级片| 天天操女人| 久久久久久99999国产精品| 亚洲午夜未满十八勿入网站日本又色又爽又黄 | 亚洲色婷婷久久91| 巨爆乳肉感一区二区三区竹菊影视 | 在线小视频| 欧美高清无码免费视频高清版| 日本三级R| 农村妇女精品一区二区| 蜜臀久久99精品久久久久久无删减| 亚洲精品一区二区三区在线播放 | 在线中文字幕| 天天摸,夜夜摸| 怡红院亚洲怡春院av| 久综合国内精品自在自线| 国产乱码久久| 久久蜜桃一区二区| 手机在线看片免费人成视频| 樱花草社区www中国| 99久久国产精品免费高潮| 婷婷五月天基地| 67914在线兔费成人视频| 国产成人亚洲精品无码古代早漏男| 九九久久一区二区三区| 亚洲国产精品无石码久久| 精品少妇一区二区三区在线视频| 97视频www| 性爱视频无打码在线观看| 国产有码一区| 91香蕉国产尤物视频| 免费观看欧美日韩操逼视频| 竹菊一区二区三区AV线| 精品人妻美妇91job| 国产人妻精品一区二区三区秋霞| 欧美精品成人在线播放| 欧天美中出| 97在线精品观看视频| 操逼精品视频| 国产在线激情视频| 欧美 日韩 另类 亚洲| 亚洲春色欧美激情自拍| 91新在线欧美| 都市久久精品激情亚洲| 夜夜福利| 可以免费观看的日韩av毛片| 99后入| 日韩成人大片一区二区| 精品国产乱码久久久久久免费| 免费一级毛片在线视频观看| 91精品久久久久久| 91丨九色丨国产打屁股| 欧洲精品二区| 91黑丝少妇| 亚洲性爱乱操x| 999 久久久| 国产懂色精品国产av| 99超碰网| 高潮内射在线| 亚洲 欧美 制服 另类 自拍| 日日嗨AV一区二区夜夜| 亚洲成?V人片在线观看福利| 欲香欲色综合天天伊人| 99999久久久久9国产精品| 自拍偷拍国产欧美日韩韩| 噜噜噜亚洲精品| 午夜精品视频777| 欧美天天射| 蜜臀久久久| 日本123区操B视频| 亚洲伊人成综合成人网| 东北女人| 91精品国产麻豆国产自产在| 国产久久久| 欧美日韩婷婷中文| 人成午夜免费大片| 蜜臀久久99精品久久久久| 少妇500双飞99| 欧美强奸乱| 网友自拍第一页| 人妻黑丝袜电影| 精品久久久久久亚洲| 日韩免费三级黄片电影| 黄站在线免费观看| 啊啊啊啊啊在线观看网址| 日日噜噜夜夜狠狠视频无| 竹菊一区二区三区AV线| 91国产丝袜足交精品视频| 97自拍一区| 国产又粗又长又爽又色| av激情亚洲五月天| daxiangjiao你懂的| 怡红院视频在线| 日va操| 亚洲综合另类| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 97超碰伊人| 欧美 综合| 99精品在线观看| 一区二区三区探花在线观看| 97色色色| 精品超碰色| 色 亚洲 91| 天天操av懂色| av资源在线观看少妇| 国产a片操逼| 日日超碰亚洲| 97在线免费公开视频| 97超碰巨乳| 性感女人网页在线观看视频| 强奸a片网| www.99中文字幕| 日韩av性爱在线播放| 久久久青青草| 少妇特黄一区二区三区| 久久久久9999妇女| 精品91摸| 天天日少妇逼AV| 高清在线偷拍自拍视频| 久久国产乱子伦精品免费女人| 国产精品免费久久久久久久久久| 蜜臀99久久精品久久久久久| 欧美天堂第二区| 久久曰曰| 中文字幕55555| 青青草原人妻| 九九热视频在线观看| 黄片在线免费在线观看| 精品亚洲国产成人精品| 日日操免费视频| 男女啪啪网站免费视频| 久久人| 欧美 亚洲 在线| 日韩欧美女求操每天更新| 久久久久久免费电影| 大香蕉伊然在亚洲91| 亚洲精品蜜桃久久久久久久| 亚州综合电影| 久久夜色一区二区| 69AV女优男人的天堂| 91精品成人www| 超碰爽人妻熟女Av| AV天堂丝袜| 国产夜夜艹| 5252色欧美在线| 亚洲影院小综合| 97综合国产精品高潮久久| 少妇一区二区三区在线观看| 91 丝袜在线| 欧亚不卡| 日本最新免费韩国1区2区视频播放| 久久做97| 蜜桃久久久久久久久久久久| 亚洲一区二区 麻豆传媒| 传媒免费一区二区三区| 色网综合网| 91色s| 人乳av| 殴美色网| 97色97干| 天天懆天天日| 日本色色色视频| www色色色com|