日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

新唐M2L31 MCU集成ReRAM,存儲(chǔ)架構(gòu)變革與開(kāi)發(fā)實(shí)踐

新唐M2L31 MCU集成ReRAM,存儲(chǔ)架構(gòu)變革與開(kāi)發(fā)實(shí)踐 Nuvoton M2L31把ReRAM請(qǐng)進(jìn)MCU存儲(chǔ)這件事該換思路了做嵌入式這些年大家早就習(xí)慣了“MCU Flash SRAM”這套固定搭配代碼燒進(jìn)去、掉電不丟、跑起來(lái)夠快就完事了。但最近新唐Nuvoton推出的M2L31系列微控制器把ReRAM也就是憶阻器做成了片內(nèi)非易失性存儲(chǔ)這事值得好好聊聊。別一聽(tīng)“憶阻器”就覺(jué)得是實(shí)驗(yàn)室里的黑科技它現(xiàn)在已經(jīng)實(shí)打?qū)嵉剡M(jìn)到量產(chǎn)MCU里了。這篇博文就結(jié)合我實(shí)際調(diào)試低功耗Arm MCU的經(jīng)驗(yàn)把這個(gè)芯片背后的技術(shù)邏輯、開(kāi)發(fā)時(shí)要注意的細(xì)節(jié)以及整個(gè)行業(yè)存儲(chǔ)方案的走向一次講清楚。不管是做IoT終端、可穿戴設(shè)備還是工業(yè)傳感器這篇內(nèi)容都能幫你少走彎路。1. 內(nèi)容整體設(shè)計(jì)與思路拆解1.1 ReRAM到底是什么憑什么進(jìn)MCU先花點(diǎn)時(shí)間把ReRAM的原理講明白因?yàn)楹竺嫠嘘P(guān)于M2L31的開(kāi)發(fā)決策其實(shí)都繞不開(kāi)這個(gè)存儲(chǔ)單元的物理特性。ReRAM的全稱是Resistive Random-Access Memory中文叫阻變式存儲(chǔ)器。它的核心存儲(chǔ)單元是一個(gè)金屬-絕緣體-金屬的三層結(jié)構(gòu)中間的絕緣介質(zhì)材料常見(jiàn)的有HfO?、TaO?等在施加不同極性的電壓后會(huì)在高阻態(tài)和低阻態(tài)之間可逆切換。高阻態(tài)可以約定為邏輯“0”低阻態(tài)約定為邏輯“1”這樣就成了一個(gè)非易失存儲(chǔ)單元。這個(gè)機(jī)制在物理上叫“導(dǎo)電細(xì)絲的形成與斷裂”電場(chǎng)把氧空位排成一條細(xì)絲器件就導(dǎo)通反向電壓把細(xì)絲熔斷器件就恢復(fù)高阻。整個(gè)過(guò)程不需要像Flash那樣把電子注入浮柵或者從浮柵里拉出來(lái)所以ReRAM的寫(xiě)入速度天然就比Flash快好幾個(gè)數(shù)量級(jí)。那為什么現(xiàn)在才輪到它上MCU核心原因是Flash在先進(jìn)工藝節(jié)點(diǎn)下面臨的物理極限越來(lái)越難突破。大家都清楚Flash存儲(chǔ)陣列要占額外的光罩層工藝每往下走一代浮柵器件的電荷保持能力、耦合比、編程干擾這些問(wèn)題就越難平衡。MCU現(xiàn)在主流停留在40nm、55nm甚至更老的節(jié)點(diǎn)很大一部分原因就是“邏輯電路想升級(jí)工藝但Flash不答應(yīng)”。ReRAM的優(yōu)勢(shì)在于它的存儲(chǔ)單元和CMOS邏輯工藝兼容性非常好不需要額外的浮柵結(jié)構(gòu)理論上可以在更先進(jìn)的節(jié)點(diǎn)上和邏輯電路一起做出來(lái)。新唐把ReRAM做進(jìn)單片MCU里本質(zhì)上是在用這個(gè)技術(shù)特性換取更高的集成度、更快的寫(xiě)入速度和更低的工作電壓。另外要提一個(gè)很多人會(huì)忽略的指標(biāo)擦寫(xiě)粒度。Flash的最小擦除單位是一個(gè)扇區(qū)通常4KB你要改一個(gè)字節(jié)理論上要把整個(gè)扇區(qū)讀出來(lái)、擦掉、再寫(xiě)回去這個(gè)過(guò)程又慢又傷壽命。ReRAM沒(méi)有“擦除”這個(gè)前置動(dòng)作可以直接按字節(jié)或者按小頁(yè)覆寫(xiě)這對(duì)用MCU做數(shù)據(jù)記錄比如存?zhèn)鞲衅魅罩?、掉電保存參?shù)的場(chǎng)景來(lái)說(shuō)開(kāi)發(fā)體驗(yàn)是質(zhì)變級(jí)別的。1.2 為什么是新唐先量產(chǎn)M2L31的定位分析新唐這次把ReRAM MCU量產(chǎn)不是拍腦袋的決定。Nuvoton這幾年的產(chǎn)品線一直圍繞Arm Cortex-M系列深耕從M0、M4到M23、M33覆蓋了消費(fèi)電子到工業(yè)控制的大部分價(jià)位段。他們選擇在M2L31這個(gè)型號(hào)上首發(fā)ReRAM很顯然是經(jīng)過(guò)仔細(xì)考量的。從型號(hào)命名來(lái)看“M2”對(duì)應(yīng)Arm Cortex-M23內(nèi)核“L”代表低功耗Low Power“31”是產(chǎn)品序列號(hào)。M23核基于ARMv8-M架構(gòu)最大的特點(diǎn)是支持TrustZone安全擴(kuò)展同時(shí)把功耗控制做得非常細(xì)膩非常適合電池供電的IoT設(shè)備。新唐在一個(gè)“M23低功耗”的平臺(tái)上首發(fā)ReRAM邏輯上非常順低功耗設(shè)備對(duì)MCU的睡眠電流、喚醒時(shí)間、存儲(chǔ)寫(xiě)入功耗都有極致要求而ReRAM低電壓寫(xiě)入、無(wú)擦除延遲、掉電不丟的特性恰好能把這幾項(xiàng)全部拉滿。M2L31的具體配置從公開(kāi)資料來(lái)看它把ReRAM陣列直接集成在芯片內(nèi)部既當(dāng)程序存儲(chǔ)用也允許用戶把一部分容量劃成數(shù)據(jù)存儲(chǔ)區(qū)。這意味著以前“外掛EEPROM”或者“用Flash模擬EEPROM”的傳統(tǒng)做法在M2L31上可以直接砍掉一顆芯片就把主控和存儲(chǔ)都包圓了。對(duì)系統(tǒng)設(shè)計(jì)來(lái)說(shuō)BOM成本降低是其次布局面積縮小和故障點(diǎn)減少才是更實(shí)在的紅利。還有一個(gè)容易被忽視的定位考量可靠性。工業(yè)場(chǎng)景和車(chē)載場(chǎng)景對(duì)非易失存儲(chǔ)的寫(xiě)次數(shù)和極端溫度下的數(shù)據(jù)保持力有硬性要求傳統(tǒng)Flash在高溫下電荷泄漏是老大難問(wèn)題。ReRAM的導(dǎo)電細(xì)絲狀態(tài)和溫度的關(guān)系比浮柵電荷弱得多理論上在高溫環(huán)境下的數(shù)據(jù)保持力表現(xiàn)更好。新唐把首發(fā)型號(hào)定位在M23低功耗平臺(tái)說(shuō)明他們想先把“功耗”和“可靠性”這兩個(gè)標(biāo)簽打出去再往更高性能的M33/M55平臺(tái)擴(kuò)展。這個(gè)節(jié)奏和我接觸過(guò)的一些國(guó)產(chǎn)芯片廠商的做法很一致新技術(shù)先拿一個(gè)成熟內(nèi)核試水跑通供應(yīng)鏈和工具鏈再逐步鋪開(kāi)。1.3 用M2L31開(kāi)發(fā)的典型場(chǎng)景既然要聊實(shí)操就得先明確M2L31適合做什么。以我個(gè)人的理解它最典型的場(chǎng)景有這么幾類(lèi)第一類(lèi)是電池供電的低功耗傳感終端。比如智能門(mén)鎖、環(huán)境監(jiān)測(cè)節(jié)點(diǎn)、電子標(biāo)簽這類(lèi)設(shè)備MCU大部分時(shí)間在睡眠偶爾醒來(lái)讀一下傳感器、存一筆數(shù)據(jù)、發(fā)一條無(wú)線報(bào)文。這類(lèi)設(shè)備最怕的就是“存數(shù)據(jù)的時(shí)候要把Flash整個(gè)扇區(qū)擦掉”不僅慢而且瞬時(shí)電流大經(jīng)常把電源電壓拉出毛刺。ReRAM的可字節(jié)覆寫(xiě)特性以及寫(xiě)入時(shí)低功耗特性能讓數(shù)據(jù)記錄過(guò)程變得更平滑。第二類(lèi)是配置參數(shù)頻繁更新的設(shè)備。有些工業(yè)現(xiàn)場(chǎng)設(shè)備需要頻繁修改運(yùn)行參數(shù)如果用帶Flash的普通MCU寫(xiě)參數(shù)的時(shí)候得小心翼翼地做磨損均衡算法復(fù)雜還容易出bug。M2L31這種ReRAM方案寫(xiě)壽命遠(yuǎn)高于傳統(tǒng)EEPROM你可以把參數(shù)直接映射到固定地址每改一次直接覆寫(xiě)不用考慮擦除對(duì)壽命的影響代碼邏輯能簡(jiǎn)化一大截。第三類(lèi)是安全啟動(dòng)和密鑰存儲(chǔ)類(lèi)應(yīng)用。M23內(nèi)核帶TrustZone配合ReRAM的原生非易失特性可以把安全密鑰放在ReRAM的特定保護(hù)分區(qū)里。ReRAM的寫(xiě)入速度快也方便配合安全算法做臨時(shí)敏感數(shù)據(jù)的掉電保護(hù)。比如設(shè)備檢測(cè)到物理入侵要立刻擦除密鑰ReRAM的快速覆寫(xiě)能力能在極短時(shí)間內(nèi)完成銷(xiāo)毀動(dòng)作這是傳統(tǒng)Flash做不到的。2. 核心細(xì)節(jié)解析與實(shí)操要點(diǎn)2.1 存儲(chǔ)架構(gòu)變了代碼和數(shù)據(jù)的布局要重新想以前做MCU開(kāi)發(fā)代碼放在Flash里運(yùn)行時(shí)代碼可能拷貝到SRAM執(zhí)行尤其是做IAP升級(jí)或者低功耗模式的時(shí)候變量放SRAM配置數(shù)據(jù)模擬EEPROM放在Flash的某個(gè)扇區(qū)。到了M2L31上ReRAM既是程序存儲(chǔ)又是數(shù)據(jù)存儲(chǔ)但要注意它的存儲(chǔ)特性還是和Flash有區(qū)別的不能直接照搬以前的做法。第一個(gè)區(qū)別是寫(xiě)入壽命。ReRAM的耐久性雖然比Flash好很多但也不是無(wú)限次寫(xiě)入。你依然要有“分區(qū)域管理”的概念程序區(qū)寫(xiě)一次基本就不再動(dòng)了數(shù)據(jù)區(qū)才是頻繁擦寫(xiě)的地方所以要合理劃分ReRAM容量別把日志類(lèi)的頻繁寫(xiě)入操作和程序代碼放在同一個(gè)物理區(qū)域。好在M2L31的ReRAM陣列支持區(qū)域劃分具體容量邊界在開(kāi)發(fā)環(huán)境的頭文件里可以配置。我的建議是先把程序區(qū)留足剩下的空間再作為數(shù)據(jù)區(qū)數(shù)據(jù)區(qū)里再做環(huán)形緩沖而不是隨便找個(gè)地址就開(kāi)始寫(xiě)。第二個(gè)區(qū)別是寫(xiě)入速度。ReRAM的字節(jié)寫(xiě)時(shí)間遠(yuǎn)快于Flash扇區(qū)擦除編程的時(shí)間但快不代表你可以在中斷服務(wù)函數(shù)里直接寫(xiě)。因?yàn)镽eRAM寫(xiě)入過(guò)程還是需要一定的時(shí)序控制而且寫(xiě)入過(guò)程中如果被更高優(yōu)先級(jí)的中斷打斷可能會(huì)造成寫(xiě)時(shí)序異常最壞情況下會(huì)導(dǎo)致寫(xiě)入數(shù)據(jù)錯(cuò)誤。我見(jiàn)過(guò)不少同事第一次用新型非易失存儲(chǔ)時(shí)直接在ADC中斷里寫(xiě)日志結(jié)果偶發(fā)性數(shù)據(jù)錯(cuò)亂。正確的做法是把待寫(xiě)數(shù)據(jù)放到SRAM緩沖區(qū)在主循環(huán)或者專門(mén)的任務(wù)里統(tǒng)一寫(xiě)入寫(xiě)之前關(guān)閉可嵌套中斷或者用互斥信號(hào)量保護(hù)。第三個(gè)區(qū)別是電源電壓。ReRAM寫(xiě)入時(shí)需要的內(nèi)部電壓通常由電荷泵提供和Flash類(lèi)似但峰值電流可能不同。如果你的系統(tǒng)是電池供電而且電池電壓已經(jīng)比較低寫(xiě)ReRAM的瞬間壓降可能導(dǎo)致掉電復(fù)位。實(shí)測(cè)下來(lái)最好在電路板上預(yù)留一個(gè)足夠容量的儲(chǔ)能電容或者在軟件上做“電壓監(jiān)測(cè)-寫(xiě)操作”的聯(lián)動(dòng)電壓低于閾值時(shí)延遲寫(xiě)入或暫停寫(xiě)入等電壓恢復(fù)再繼續(xù)。這個(gè)思路在傳統(tǒng)Flash方案里也有但ReRAM寫(xiě)入電流的波形不同需要實(shí)測(cè)確認(rèn)。2.2 Cortex-M23內(nèi)核調(diào)試與SWD接口細(xì)節(jié)M2L31的內(nèi)核是Cortex-M23在調(diào)試上有一個(gè)重要特性它和M3/M4/M33的調(diào)試組件不完全一樣。M23是ARMv8-M基線版本調(diào)試接口雖然還是SWDSerial Wire Debug但調(diào)試寄存器的布局有些差異。J-Link、DAP-Link這些主流調(diào)試器的新版本固件都支持M23不過(guò)用老版本調(diào)試器時(shí)可能識(shí)別不到這是第一個(gè)坑。SWD接口接線方面M2L31同樣只需要SWDIO、SWCLK、GND這三根線再加上可選的SWO。SWO在M23上不一定支持標(biāo)準(zhǔn)跟蹤輸出如果你需要實(shí)時(shí)跟蹤日志建議先查一下M2L31參考手冊(cè)里SWO是否映射到了ITM引腳。以我的經(jīng)驗(yàn)很多低功耗MCU的SWO引腳是復(fù)用其他功能的出廠默認(rèn)并不一定開(kāi)啟如果你在調(diào)試器里發(fā)現(xiàn)SWO沒(méi)有任何輸出先別懷疑硬件去翻一下引腳復(fù)用寄存器的默認(rèn)配置。另外M23內(nèi)核支持調(diào)試認(rèn)證Debug Authentication簡(jiǎn)單說(shuō)就是可以對(duì)調(diào)試口進(jìn)行安全鎖定。如果你在開(kāi)發(fā)過(guò)程中把調(diào)試口鎖了然后忘了密碼那芯片就只能通過(guò)全擦除或者特定解鎖序列恢復(fù)這個(gè)操作會(huì)連程序區(qū)一起清空。實(shí)際操作中我的建議是在開(kāi)發(fā)初期先不要使能調(diào)試口保護(hù)等所有代碼功能都驗(yàn)證完最后再做安全配置。不然中途想調(diào)bug結(jié)果調(diào)試口打不開(kāi)心態(tài)容易崩。M23還有一個(gè)特性叫“Execution Memory Protection”簡(jiǎn)稱EMP。它可以讓代碼區(qū)只能執(zhí)行不能讀或者不能同時(shí)讀寫(xiě)。這個(gè)特性在防固件提取方面很強(qiáng)但如果你調(diào)試時(shí)發(fā)現(xiàn)數(shù)據(jù)讀出來(lái)全是0xFF可以考慮是不是EMP把讀訪問(wèn)擋掉了。排查思路是先把EMP配置全部關(guān)閉確認(rèn)功能正常再逐步加保護(hù)策略。2.3 ReRAM驅(qū)動(dòng)與初始化流程在M2L31上做底層驅(qū)動(dòng)和傳統(tǒng)Flash驅(qū)動(dòng)有些區(qū)別。芯片出廠時(shí)ReRAM陣列一般是未編程狀態(tài)第一次上電需要先確認(rèn)存儲(chǔ)映射是否正常。一般流程是這樣第一步配置時(shí)鐘。ReRAM控制器掛在哪個(gè)總線時(shí)鐘域、是否需要使能讀寫(xiě)時(shí)鐘要先查數(shù)據(jù)手冊(cè)。如果時(shí)鐘沒(méi)開(kāi)對(duì)ReRAM地址的訪問(wèn)會(huì)直接觸發(fā)總線錯(cuò)誤HardFault。我踩過(guò)的坑是用Keil調(diào)試時(shí)程序跑飛了單步跟進(jìn)去發(fā)現(xiàn)是時(shí)鐘樹(shù)里某一位被默認(rèn)配置成關(guān)閉ReRAM地址空間訪問(wèn)直接總線錯(cuò)誤。第二步使能ReRAM控制器。有些MCU的ReRAM控制器默認(rèn)是禁用狀態(tài)需要往控制寄存器寫(xiě)解鎖序列才能啟用。解鎖序列的目的是防止軟件誤操作意外改變存儲(chǔ)區(qū)域的映射或保護(hù)屬性。千萬(wàn)別小看這一步驟如果使能順序不對(duì)后面所有讀寫(xiě)操作行為都是未定義的。第三步設(shè)置等待狀態(tài)和讀電流/寫(xiě)電流參數(shù)。ReRAM在不同電壓和溫度條件下可能需要不同的讀參考電流和寫(xiě)脈沖寬度。這些參數(shù)一般由廠家的初始化庫(kù)幫你配好但如果你跑在低電壓模式下可能需要手動(dòng)調(diào)一下。廠家的應(yīng)用筆記通常會(huì)給出不同電壓區(qū)間的推薦配置值。實(shí)際測(cè)試時(shí)跑一遍全地址讀寫(xiě)校驗(yàn)同時(shí)把供電電壓從高到低掃一遍能有效發(fā)現(xiàn)參數(shù)配置是否留有裕量。第四步劃分用戶數(shù)據(jù)區(qū)。通過(guò)配置寄存器把ReRAM陣列的一部分劃成用戶數(shù)據(jù)區(qū)。這個(gè)配置通常是一次性的建議在量產(chǎn)燒錄階段就固化好。不同區(qū)域的讀保護(hù)、寫(xiě)保護(hù)級(jí)別也要在初始化階段設(shè)置完成。3. 實(shí)操過(guò)程與核心環(huán)節(jié)實(shí)現(xiàn)3.1 開(kāi)發(fā)環(huán)境搭建從Keil到命令行交叉編譯先用最熟悉的Keil MDK來(lái)說(shuō)。M2L31屬于新唐的Arm Cortex-M系列直接在Keil的Device Database里選型號(hào)然后選對(duì)應(yīng)的Flash Algorithm燒錄算法。如果Keil版本太舊新唐提供的Pack包可能裝不上建議先把MDK升級(jí)到5.37以上。裝好Pack之后創(chuàng)建一個(gè)新工程在Device選擇界面找到M2L31工程模板會(huì)自動(dòng)帶出正確的啟動(dòng)文件和分散加載文件sct文件。工程建好后有個(gè)重要配置Debug頁(yè)的Flash Download選項(xiàng)。因?yàn)镽eRAM的燒錄算法和Flash不一樣需要把新唐提供的M2L31燒錄算法后綴通常為.FLM添加到燒錄列表里。如果你發(fā)現(xiàn)下載程序時(shí)報(bào)錯(cuò)“No Flash Device”十有八九就是這個(gè)算法沒(méi)添加。另外燒錄算法里的編程時(shí)間參數(shù)ReRAM比Flash快不少你可以根據(jù)實(shí)際燒錄速度適當(dāng)調(diào)整不過(guò)保持默認(rèn)就行。也有不少朋友習(xí)慣命令行交叉編譯流程特別是要做自動(dòng)化構(gòu)建的。M2L31自然也可以用Arm GNU工具鏈arm-none-eabi-gcc來(lái)編譯。需要注意的是用GCC時(shí)鏈接腳本要手動(dòng)編寫(xiě)要針對(duì)M2L31的ReRAM起始地址和大小做匹配。以我用新唐MCU的經(jīng)驗(yàn)他們的BSP里通常會(huì)提供GCC版本的鏈接腳本示例文件。你自己寫(xiě)的時(shí)候要注意ReRAM的起始地址最好通過(guò)宏定義引用別寫(xiě)死因?yàn)椴煌吞?hào)芯片的ReRAM容量有區(qū)別。在Linux主機(jī)上做Arm交叉編譯時(shí)還要留意啟動(dòng)文件里的堆棧初始化。M23內(nèi)核上電后會(huì)從向量表偏移0處取棧頂指針MSP從偏移4處取復(fù)位向量。如果你的鏈接腳本把向量表放在ReRAM開(kāi)頭那么這兩個(gè)值必須正確。實(shí)際中遇到的情況是有人把向量表放到SRAM里然后忘了配置MPU允許SRAM執(zhí)行結(jié)果一上電就進(jìn)HardFault。排查這類(lèi)問(wèn)題最快的辦法是用調(diào)試器讀PC寄存器和SP寄存器的值如果PC的值落在SRAM區(qū)域而MPU不允許執(zhí)行直接就能判斷是向量表放置問(wèn)題。3.2 最小系統(tǒng)設(shè)計(jì)與電源樹(shù)評(píng)估M2L31的硬件設(shè)計(jì)第一優(yōu)先級(jí)是電源。芯片通常有多個(gè)電源域核心邏輯、IO、ReRAM控制器可能分別供電。ReRAM寫(xiě)入時(shí)內(nèi)部電荷泵會(huì)從主電源取電瞬時(shí)電流可能比Flash編程還平滑但還是要留意電源路徑上的阻抗。PCB設(shè)計(jì)時(shí)靠近芯片電源引腳放一個(gè)0.1μF的陶瓷電容外加一個(gè)1μF~10μF的體電容是穩(wěn)妥的做法。如果系統(tǒng)還有射頻模塊電源紋波控制要更嚴(yán)格建議用LDO單獨(dú)給MCU供電避免射頻PA的大電流波動(dòng)影響到ReRAM寫(xiě)入時(shí)序。復(fù)位電路也要單獨(dú)提一下。M2L31的復(fù)位引腳建議接一個(gè)100nF電容到地加快上電復(fù)位時(shí)間。如果你的系統(tǒng)有外部看門(mén)狗注意看門(mén)狗超時(shí)時(shí)間和ReRAM寫(xiě)入時(shí)間要匹配。萬(wàn)一看門(mén)狗復(fù)位發(fā)生在ReRAM寫(xiě)入過(guò)程中可能出現(xiàn)寫(xiě)入不完整的情況。軟件上可以做一個(gè)“寫(xiě)入完成標(biāo)志”每次寫(xiě)ReRAM前先把目標(biāo)寫(xiě)入緩沖區(qū)里的數(shù)據(jù)備好再開(kāi)始寫(xiě)寫(xiě)完后在另一個(gè)固定的非易失地址置一個(gè)完成標(biāo)志位。上電初始化時(shí)先檢查這個(gè)標(biāo)志如果發(fā)現(xiàn)上次寫(xiě)操作沒(méi)完成就回滾到備份數(shù)據(jù)。這類(lèi)“先寫(xiě)數(shù)據(jù)、后寫(xiě)標(biāo)志”的事務(wù)性設(shè)計(jì)在數(shù)據(jù)記錄類(lèi)產(chǎn)品里很有用。3.3 第一個(gè)工程亮燈、按鍵存儲(chǔ)與回讀紙上談兵半天回到實(shí)際動(dòng)手。我一般拿到新開(kāi)發(fā)板先跑一個(gè)最簡(jiǎn)單的工程確認(rèn)芯片能跑起來(lái)、燒錄沒(méi)問(wèn)題然后再逐步驗(yàn)證外設(shè)和存儲(chǔ)特性。在M2L31上我先配置一個(gè)GPIO口驅(qū)動(dòng)LED再配置一個(gè)按鍵輸入然后做一個(gè)很基礎(chǔ)的功能按鍵每按一次把一個(gè)遞增計(jì)數(shù)器寫(xiě)入ReRAM用戶數(shù)據(jù)區(qū)同時(shí)LED翻轉(zhuǎn)一次。下次上電時(shí)從ReRAM讀出這個(gè)計(jì)數(shù)器顯示在串口上。這看起來(lái)簡(jiǎn)單但驗(yàn)證了“寫(xiě)入、保存、回讀”整條鏈路是把存儲(chǔ)方案跑通的關(guān)鍵第一步。#include NuMicro.h #define APP_DATA_ADDR 0x00010000 // 假設(shè)用戶數(shù)據(jù)區(qū)起始地址 volatile uint32_t g_counter 0; void WriteCounterToReRAM(uint32_t val) { uint32_t u32Addr APP_DATA_ADDR; uint32_t u32Data val; /* 解鎖ReRAM控制器寄存器 */ SYS_UnlockReg(); /* 關(guān)閉數(shù)據(jù)區(qū)緩存確保讀回的是物理存儲(chǔ)數(shù)值 */ ReRAM_DisableCache(); /* 直接按32位寫(xiě)入ReRAM支持字節(jié)/半字/字覆寫(xiě) */ ReRAM_Write(u32Addr, (uint32_t)u32Data, 4); /* 讀取校驗(yàn) */ volatile uint32_t chk *(volatile uint32_t *)u32Addr; if (chk ! val) { /* 寫(xiě)入校驗(yàn)失敗處理異常 */ } /* 重新鎖定寄存器 */ SYS_LockReg(); } int32_t main(void) { /* 初始化系統(tǒng)時(shí)鐘、GPIO示范代碼略 */ /* 上電讀取計(jì)數(shù)器 */ g_counter *(volatile uint32_t *)APP_DATA_ADDR; while (1) { if (按鍵按下) { g_counter; WriteCounterToReRAM(g_counter); LED翻轉(zhuǎn); } } }代碼里的WriteCounterToReRAM函數(shù)有幾個(gè)細(xì)節(jié)一是SYS_UnlockReg和SYS_LockReg的配對(duì)使用新唐的MCU對(duì)關(guān)鍵寄存器有寫(xiě)保護(hù)這也是防止誤操作的手段二是寫(xiě)入后立刻回讀校驗(yàn)確認(rèn)寫(xiě)入成功。因?yàn)镽eRAM寫(xiě)入比Flash快你可以每次寫(xiě)完后都做一次回讀而不必?fù)?dān)心性能損耗太嚴(yán)重。這里我想強(qiáng)調(diào)一個(gè)ReRAM和Flash不一樣的地方不需要先擦除。如果用傳統(tǒng)Flash按鍵每按一次就寫(xiě)一個(gè)32位計(jì)數(shù)器你首先得判斷當(dāng)前扇區(qū)是否全為0xFF也就是已經(jīng)被擦除過(guò)不是的話得先把舊數(shù)據(jù)讀出來(lái)、擦除整個(gè)扇區(qū)、再寫(xiě)回去。在ReRAM上直接按固定地址寫(xiě)就行大大簡(jiǎn)化了代碼。這也是為什么說(shuō)“開(kāi)發(fā)體驗(yàn)是質(zhì)變級(jí)別”的邏輯上的收益是很直接的。3.4 數(shù)據(jù)日志區(qū)的環(huán)形緩沖實(shí)現(xiàn)單計(jì)數(shù)器只是驗(yàn)證功能真正實(shí)用的是數(shù)據(jù)日志。傳感器節(jié)點(diǎn)要定期存儲(chǔ)一批數(shù)據(jù)比如溫度、濕度、電壓等。如果每次都往同一個(gè)地址寫(xiě)即使ReRAM壽命再長(zhǎng)也沒(méi)必要把磨損集中在一小塊區(qū)域。我建議在ReRAM數(shù)據(jù)區(qū)里做一個(gè)環(huán)形緩沖池固定長(zhǎng)度、順序?qū)懭?、滿則覆蓋最舊的數(shù)據(jù)。具體做法是把數(shù)據(jù)區(qū)劃分為N個(gè)固定大小的槽位每個(gè)槽位大小按最長(zhǎng)的單條記錄設(shè)計(jì)再在頭部放一個(gè)索引區(qū)。每次寫(xiě)入時(shí)先讀索引區(qū)找到當(dāng)前寫(xiě)位置把數(shù)據(jù)寫(xiě)到對(duì)應(yīng)槽位然后更新索引。不需要像Flash那樣考慮“擦除對(duì)齊”因?yàn)镽eRAM可以先覆寫(xiě)。但是要注意索引區(qū)的更新也是寫(xiě)入操作如果寫(xiě)數(shù)據(jù)和寫(xiě)索引之間掉電可能出現(xiàn)數(shù)據(jù)不一致。改進(jìn)辦法是索引區(qū)用雙備份先寫(xiě)“準(zhǔn)備更新”標(biāo)志再更新索引最后清掉“準(zhǔn)備更新”標(biāo)志上電恢復(fù)時(shí)如果發(fā)現(xiàn)“準(zhǔn)備更新”標(biāo)志存在就知道上次更新被中斷可以回退到備份索引。我見(jiàn)過(guò)有人用ReRAM做得更絕把每次采集的數(shù)據(jù)直接追加在數(shù)據(jù)區(qū)后面用GCGarbage Collection方式定期整理相當(dāng)于把SSD那套FTL思想搬到MCU內(nèi)部。但M2L31的容量有限不建議做太復(fù)雜的FTL簡(jiǎn)單環(huán)形緩沖就夠了。重點(diǎn)還是讓寫(xiě)入操作盡可能均勻地分布在不同物理地址充分發(fā)揮ReRAM壽命優(yōu)勢(shì)。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄4.1 燒錄失敗或調(diào)試器無(wú)法識(shí)別這個(gè)問(wèn)題排在第一位。現(xiàn)象是J-Link/DAP-Link連接時(shí)能讀到內(nèi)核IDCODE但下載程序時(shí)報(bào)錯(cuò)或者干脆連接不上。原因無(wú)非幾種一是內(nèi)核電源沒(méi)上電二是SWDIO/SWCLK引腳被復(fù)用成GPIO且外部接了強(qiáng)下拉電阻三是調(diào)試口被安全鎖定。排查方法先量電源引腳電壓確認(rèn)供電正常再用調(diào)試器最低速度如100kHz連接排除信號(hào)質(zhì)量或線上干擾問(wèn)題如果引腳被復(fù)用先按住復(fù)位引腳同時(shí)點(diǎn)擊連接在復(fù)位釋放瞬間把調(diào)試器附著上去有些情況下能搶回控制權(quán)如果被安全鎖定只能走芯片的解鎖流程注意解鎖流程通常會(huì)把整個(gè)非易失存儲(chǔ)清空。所以開(kāi)發(fā)過(guò)程中我通常不開(kāi)調(diào)試口保護(hù)等最后測(cè)試安全功能時(shí)再開(kāi)。用Keil時(shí)我還遇到過(guò)一種情況連接調(diào)試器后調(diào)用Flash Download提示算法加載失敗。這種一般是FLM文件路徑出錯(cuò)或者設(shè)備數(shù)據(jù)庫(kù)文件損壞重裝新唐的Pack包基本上能解決。另外如果用戶通過(guò)命令行工具如pyOCD下載先確認(rèn)pyOCD的target列表里包含M2L31沒(méi)有的話要更新到最新版本。4.2 ReRAM寫(xiě)入后數(shù)據(jù)不對(duì)或丟失寫(xiě)入后數(shù)據(jù)不對(duì)分兩種情況一種是寫(xiě)入校驗(yàn)立即失敗一種是當(dāng)前正常但掉電后下次上電讀出來(lái)是錯(cuò)的。立即失敗可能的原因有寫(xiě)保護(hù)未關(guān)閉目標(biāo)地址不對(duì)超出用戶數(shù)據(jù)區(qū)范圍或者寫(xiě)電流參數(shù)設(shè)置太小??梢韵扔霉俜降臒浌ぞ呋蛘連SP里的測(cè)試?yán)虒?duì)目標(biāo)地址做一遍全0x55/0xAA交替寫(xiě)入測(cè)試確認(rèn)基礎(chǔ)功能沒(méi)問(wèn)題。如果全地址測(cè)試通過(guò)但用戶程序失敗重點(diǎn)檢查程序里是否誤配了ReRAM控制寄存器。掉電后丟失的問(wèn)題大概率是上電時(shí)序或者復(fù)位時(shí)序?qū)е聦?xiě)入中斷。用示波器抓一下VDD在寫(xiě)入期間的波形如果存在毛刺或跌落就要加強(qiáng)電源濾波。軟件上要給寫(xiě)入任務(wù)加事務(wù)標(biāo)志避免因復(fù)位導(dǎo)致半寫(xiě)狀態(tài)。另外ReRAM的數(shù)據(jù)保持力在高溫下會(huì)下降如果產(chǎn)品有高溫存儲(chǔ)要求建議做高溫老化數(shù)據(jù)保持測(cè)試不要只看常溫。4.3 低功耗模式下ReRAM訪問(wèn)異常低功耗是M2L31的大賣(mài)點(diǎn)之一但在低功耗模式下訪問(wèn)ReRAM要特別小心。芯片進(jìn)入深度睡眠后主時(shí)鐘可能關(guān)了ReRAM控制器的時(shí)鐘如果也被關(guān)了喚醒后直接讀ReRAM就會(huì)掛死。解決思路是在設(shè)計(jì)低功耗流程時(shí)把“讀ReRAM”放在喚醒后時(shí)鐘穩(wěn)定階段進(jìn)行或者把需要快速訪問(wèn)的數(shù)據(jù)提前拷到SRAM。另外M23內(nèi)核在低功耗模式下可能有不同的電源域配置如果某個(gè)電源域被關(guān)掉而ReRAM控制器依賴該電源域即使時(shí)鐘恢復(fù)控制器狀態(tài)也可能不正常。穩(wěn)妥做法是喚醒后重新初始化ReRAM控制器再執(zhí)行讀寫(xiě)操作。這個(gè)初始化流程很短不影響用戶體驗(yàn)但能避免很多偶發(fā)問(wèn)題。我在實(shí)際測(cè)試中就遇到過(guò)睡眠喚醒后第一次讀ReRAM返回全0重新初始化控制器后完全正常。4.4 快速排查速查表問(wèn)題現(xiàn)象可能原因排查與解決調(diào)試器連接不上/下載失敗電源異常、SWD被復(fù)用、調(diào)試鎖量電壓、低速連接、按住復(fù)位搶連、走解鎖流程程序運(yùn)行HardFaultReRAM時(shí)鐘未開(kāi)、MPU/EMP配置不當(dāng)檢查時(shí)鐘樹(shù)寄存器、暫時(shí)關(guān)閉MPU/EMP保護(hù)寫(xiě)入校驗(yàn)失敗寫(xiě)保護(hù)未關(guān)、地址越界、參數(shù)配置不當(dāng)解鎖寄存器、確認(rèn)地址范圍、參考AN重新配置掉電后數(shù)據(jù)丟失寫(xiě)入期間復(fù)位、電源毛刺用事務(wù)標(biāo)志、加強(qiáng)電源濾波、做寫(xiě)入完成標(biāo)志睡眠喚醒后讀數(shù)據(jù)異常ReRAM控制器電源/時(shí)鐘域異常喚醒后重新初始化ReRAM控制器高溫下數(shù)據(jù)變化數(shù)據(jù)保持力受溫度影響做高溫老化測(cè)試、檢查器件規(guī)格書(shū)的保持時(shí)間指標(biāo)4.5 現(xiàn)場(chǎng)經(jīng)驗(yàn)別忽略“寫(xiě)后即讀”的價(jià)值最后分享一個(gè)關(guān)于可靠性的建議。不管用Flash還是ReRAM數(shù)據(jù)寫(xiě)完之后立刻回讀驗(yàn)證都是我極力推薦的做法。M2L31的寫(xiě)入速度快每次寫(xiě)后回讀的開(kāi)銷(xiāo)不大但能及時(shí)發(fā)現(xiàn)很多問(wèn)題特別是當(dāng)你在不同溫度和電壓區(qū)間做測(cè)試時(shí)。回讀校驗(yàn)不需要做全數(shù)據(jù)比對(duì)簡(jiǎn)單讀回來(lái)比較關(guān)鍵字節(jié)就行。如果校驗(yàn)失敗可以做一次重寫(xiě)再失敗就報(bào)警。這個(gè)低成本的習(xí)慣能在產(chǎn)品處于開(kāi)發(fā)階段時(shí)救你很多次。5. 對(duì)ReRAM上MCU這件事的后續(xù)展望M2L31只是個(gè)開(kāi)始。新唐把ReRAM首先用在M23內(nèi)核的MCU上跑通了從晶圓制造、封裝測(cè)試到軟件開(kāi)發(fā)工具鏈的整個(gè)生態(tài)。接下來(lái)如果這項(xiàng)技術(shù)在市場(chǎng)上被驗(yàn)證可靠大概率會(huì)向更高性能的Cortex-M33/M55平臺(tái)延伸甚至可能在MCU里集成更大容量的ReRAM陣列直接對(duì)標(biāo)一些低容量Flash芯片。到那時(shí)候MCU的片上存儲(chǔ)體系會(huì)發(fā)生真正的范式轉(zhuǎn)變不再有“程序存儲(chǔ)”和“數(shù)據(jù)存儲(chǔ)”的物理差別而是一整塊可快速隨機(jī)寫(xiě)入的非易失存儲(chǔ)空間讓開(kāi)發(fā)者用更簡(jiǎn)單的方法實(shí)現(xiàn)更可靠的功能。從開(kāi)發(fā)者的角度我對(duì)這項(xiàng)技術(shù)最大的感受是存儲(chǔ)管理的復(fù)雜度降低了。用Flash做EEPROM模擬、磨損均衡、扇區(qū)管理這些歷史包袱以后可能會(huì)慢慢變成少數(shù)工程師才需要懂的底層知識(shí)大多數(shù)應(yīng)用開(kāi)發(fā)者只需要像操作SRAM一樣操作非易失存儲(chǔ)。這背后既有硬件物理特性的功勞也得益于像新唐這樣的廠商愿意在第一線推動(dòng)新技術(shù)量產(chǎn)落地。如果你手上有電池供電、頻繁記錄數(shù)據(jù)、或者對(duì)寫(xiě)入延遲敏感的項(xiàng)目M2L31值得認(rèn)真評(píng)估一下。把傳統(tǒng)MCU方案里那些為了“伺候”Flash而寫(xiě)的各種別扭代碼簡(jiǎn)化掉你會(huì)發(fā)現(xiàn)開(kāi)發(fā)節(jié)奏快很多產(chǎn)品的長(zhǎng)期可靠性也更有底氣。希望這篇內(nèi)容能讓你少踩一些調(diào)試上的坑后面有機(jī)會(huì)我也打算再寫(xiě)寫(xiě)M2L31在具體垂直場(chǎng)景比如智能門(mén)鎖、冷鏈記錄儀里的完整項(xiàng)目實(shí)踐。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美极品少妇| 天天爱综合网| 国产久久成人| 男女啊啊啊| av强奸乱轮| 久久久久网站-538在线视频-欧美永久乱码 | 高清国产精品无码| 欧姜老司机| 人人摸人人干| 夜夜嗨一区二区| 亚洲午夜精品久久久中文影院| 亚洲老熟妇xxx| 亚州男人天堂| 天天躁狠狠躁av| 久久婷婷五月综合| 自怕偷自怕亚洲精品| 骚日日av| av久日| 韩国一区二区精品亚洲| 国产精品日韩在线一区| 亚洲色宗合| 天欧美在线| 殴美综合色88| 九九久久一区二区三区| 激情丁香五月| 99久久久久| 亚洲中文字幕熟女少妇一区二区| 玖玖大干人妻| 久干9操| 加勒比99999| 91av熟女人妻| 午夜男女爽爽大片免费观看| 狼人狠干| 婷婷10月天青娱乐| 亚洲AV无码久久精品蜜桃小说| 成人性爱高清视频免费看| 中文字幕诱惑制服人妻丝袜美丝袜美 | 青青草原av| 白丝少妇一区二区| 人人综合| 国产四虎在线| 国产精品视频电影| 久久天天摸| 屌逼传媒| 网页导航五月天免费一二三区| A级毛片在线看免费| 精品176精品2| 91人人看| 欧美日韩精品国产91| 亚洲人在线成线成人| 深夜啪啪啪视频免费| 十八禁啪啦拍视频无遮挡| 欧美性爱无码一区二区三区| 欧美亚洲一级在线观看| 久九九九| 无码不卡亚洲成?人片| 超碰免费97| 伊人天天久久动态图| 91天天综合日韩欧美| 操淫穴亚洲五月丁香 | 成人资源中文字幕在线观看天天| 性爱精品一区| 日本九九九九| 欧美强奸乱能| 偷拍自拍在线视频观看| 激情五月天社区| 亚洲AV成人精品网站在AV| 欧美性爱一区二区三区| 好爽要喷了| 肉丝中文无码高清| 大香蕉淫人网| 人人看欧美性爱| 青青草中文字幕| 欧美刺激色黄片免费看| 女人的久久久| 18禁久极品美女久久哦哟呀!| 国产极品美女高潮无套在线观看| 久久极品一区二区| 亚洲AV不卡在线观看尤物| 成人熟女视频一区二区三区| 欧洲自拍色图gif在线| 无码WWW免费视频网站| 国产色图乱伦| 黄片免费久久久久久久| 欧美日韩国产高清在线一二三区| 亚洲色五月| 熟女乱伦二区| 先锋精品av色鲁| 一本道综合色图| 亚洲第一综合| 丝袜综合| 色路综合| wwwxxx日本爽| 色色色五月婷婷| 欧美se亚洲| 久久亚洲色图中文字幕| 97超碰超碰| 精品中文字幕第一页| 色5月婷婷| 嗯嗯啊啊用力视频免费| 少妇高潮九九九九| 国产精品亚洲天堂网址| 久久久久久性爱视频| 亚洲 欧美 综合 91| 狠狠操狠狠操操| 九九色逼| 欧美高潮| 国产久久久| 国产深喉视频一区二区| 韩日无码在线观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 人妻少妇精品久久久久久久| 色吧91| 被体育老师抱着c到高潮| 日韩丝袜人妻AV| 婷婷探花久久精品一区| 亲子敌伦对白在线播放| 久久久久久国产手机AV| 色第一页| 污污汅18禁网站在线永久免费观看| 大香樵伊人网| 亚洲九九九| 成人麻豆av电影网站| 97久久精品亚洲| www.男人天堂| 中文字幕丝袜人妻| 夜色综合| 大香交伊人网| 亚州综合色| 激情久久av一区av二区av| 久久爽爽精品| blacked精品一区国产| 亚州色站 日韩电影| 婷婷在线视频在线观看| 一道本东京热加勒比一区二区三区| 99日视频在线免费| 密桃99999| 天天综合网~91入口| 欧美成人A√在线一区二区| 青青草中文-久久青草精品一区二区三| 麻豆天美制片厂网站视频| 中文视频在线观看| 大香蕉久久| 欧美黑人与女人91| 色五月69夫妻| 欧美日韩色综合网| 男人天堂网手机版婷婷| 久久精品国产72国产精品福利| 九九热五区| 26uuu欧美日韩| 亚洲男人天堂2013| 99久在线精品99re8热| 国产不卡的视频 | 日本一线产区和二线产区伦理片| 91操人视频| 色一区二区三区综合| 免费在线观看AV无码网站| 九九九九九九九九九九九免费国产| 国产嫩草精品A88AV| 日本一二区免费| 亚洲欧美情色| 在线 欧美 亚洲| 99精品久久久久久久婷婷| 91精品成人| 亚洲欧美大香蕉| 成 人片 黄色大片| 无码九九| 一个人在线看的黄色电影网站| 精品国产Av无码久久久亚洲| 91精品国产一区三一| 人妻 丝袜美腿 中文字幕| 精品综合久久久久久97| 丁香六月综合激情| 蜜臀久久99'精品久久久| 2024黄色视频| 骚日日av| 黑人中出21连凳花野真衣| 日韩一区二区精彩视频| 日本一卡二区在线| 成熟熟女国产精品一区二区| 人妻啊啊人妻啊啊| 天天色天天干天天爱| 五月天精品| 躁躁日曰躁2020| 日本亚洲熟女视频| 欧美夜夜草视频| 国产精品97超碰| 在线啊啊啊啊| 亚洲AV无码翔田千里网站| 91青青在线| 久久久久密臀一区二区| 美女露胸露尿口| 五月丁香网站| 淮穴色AV| 黄色免费网| 丁香7月婷婷| 有码人妻系列| 大奶啊啊好爽 | 五月色网| 黄片不用下载在线观看| 久久精品日韩| 天天综合,91入口| 天天综合色电影| {男男暴菊gay无套网站| 九九九九一区| 亚洲国内精品成人不卡| 97香蕉人人乳| 欧美夜夜骑视频| 久热久一区二区三区| 五月丁香综合网| 333kkkk·亚洲com久久| 亚洲一本大道中文字幕无码在线| 91美女网站| 亚洲天堂女优在线| 欧美熟爽综合| 久久久久13| 成功精品影院| 射 色综合| 欧美国产日韩高清在线| 吻戏激情性巴克| 福利色色| 夜夜草网站| 91爆操视频| 五月天丁香婷婷综合网站| 中国操逼无码| 日本三级一区二区 在线| 老熟女网站| 欧洲精品一级二级精品综合视频综合| 日韩欧美资源| 99九九久久| 另类天堂| 丝袜六区| 欧在线一二区| 欧美色图另类图片| 福利视频合集| 在线观看一级α片刺激高潮视频| 五月天我淫我色av| 国产乱伦搜索结果91P| 久久久久幕乱码| 亚洲日韩久久精品一区| 国产suv一区二区三区6| 亚洲美女AV无码| 男女啊啊啊啊啊| 国产视频97| 天天爽天天操啊啊啊| 九九九九九精品| 搡老女人老91妇女熟女| 欧美日韩国产男人| 黑人性欧美| 久久精品国产97欧美精品亚洲 | 97超碰色屌| 青青草字幕AV| 亚洲图片小说欧洲| 一区二区无码视频| 国产在线综合福利网站| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 污电影在线观看| 久久久久久久久久久精| 欧美夜夜草视频| 色哟哟 日韩精品| 精品九九| 亚洲高清无码免费观看视频| 狠狠中文字幕| 天操天操夜操夜月操月年年操操| 91狠狠综合网| 国产亚州精品美女久久久免费| 综合激情五月丁香| 超碰碰激情97+久| 日本不卡高清免v欧美日韩在线观看| 北京美女一区二区| 日本精品五区| 亚洲情色欧美| 国产成年免费大片黄在线观看| 99e久久国产精品| 无码高清操逼| 人妻精品综合中文字幕在线 | 超碰美国| 亚洲1区2区三区高清中文字幕| 大香蕉伊人久久| 亚洲第一在线视频| 一直超碰| dy888午夜老子影视达达兔| 少妇3P性爱自拍| 日韩av不卡在线看| 强奸少妇AV导航网| 欧美一二级| 青草一区二区| 精品性爱一区二区| 黑人与人妻| 欧美日韩国产色图在线| 亚洲欧美国产va在线| 六月婷婷一区二区三区| 久热久| 在线毛片片免费观看| 国产精品com| 久久激情综合| 久久久久人妻二区精品叶可怜| 欧美日韩性爱操大逼| 国产辣妈在线视频福利| 亚洲人在线成线成人| 999久久久免费精品国产牛牛| 一级免费啪啪片| 啊啊啊啊啊啊啊好爽不要| 亚洲男人的天堂在线看| 国产美女自拍AV| 超碰久久性爱| 夜色91| 超碰成人免费| 97视频在线| 伊人色综合网| 亚洲人妻久久| 一二三啪啪专区| 国产精品色哟哟| 国产区日韩区在线观看| 少妇同性| 免费少妇一区二区| 亚洲精品 欧美精品| 午夜舔阴达高潮视频免费看| 日本东京热加勒比久久| 欧美成人国产精品| 久久久精品无码亚免费| 欧美激情精品久久久| 国产在线76页| 330dv亚洲成年视频网| 超碰97COm中文| AV 少妇 人妻 偷拍| 精品一二三区女同| 午夜男人av| 大吊色| 超碰色男人操熟女| 丝袜狂射91| 国产无马视频| 嗯嗯嗯嗯啊啊啊好紧好大| 思思久热在线精品66| 蜜桃视频精品一区二区三区| 国产精品久久久久久照片| 亚洲欧美日韩有码| 欧美大香蕉专区网| 999精品久久久久久久| 婷婷五月天伊人| 99久久婷婷丁香| 色偷综合| 国产曰批免费观看久久久| 一区在线国产播放| 91久久久久久久久久久| 少妇久久| 麻豆天美国美国产| 性色av大全| 台湾大香蕉99热| 久久亚洲AV无码专区首页| 天天综合站| 亚洲熟女av日韩熟女| 九九九九免费| 东北操逼| 亚洲αv一区二区三区| 久久香蕉国产线看观看亚洲女人 | 麻豆91熟妇人妻中文字幕茄子| 12一15性XXXX粉嫩国产| 天天插夜夜操| 抽查国产福利主播| 久久精品老司| 婷婷五月天在线观看| 成人五月天丁香激情综合| 天天操人人操骚逼网站| 草草影院最新网址| 日韩欧美性爱电影在线观看| 蜜臀中文无码午夜| 日韩久射综合| 亚洲春色一区二区三区| 狠狠2050在线观看| 欧美劲爆视频一区二区| 欧美gv在线观看| 久久视频,这里只有精品| 欧美在线91| 亚洲系列第一页| 超碰碰97资源站| 91精品人妻一区二区三区蜜桃| 淫妻综合网| 日韩AV无码网站| 亚洲交性| 91精品国| 超碰4A| SUV一区二区在线看| 翘臀vidoes| 操操操五月天婷婷丁香影院| 2017天天插| 超碰到97情色| 九九九九九九免费视频| 熟女高潮合集-永久久久-成人AV| 一区久久久二区| 约操熟妇| 国产99久久99热这里只有精品15 | 久久精品国产亚洲AV片多多| 国产女乱淫真高清免费视频| 91高清无码下载| 中文字幕五月婷婷免费| 日本性感人妻91| 白嫩少妇| 国产精品福利资源在线尤物| 偷拍综合网| 97美日韩视频| 先锋女优在线观看视频| 91 国产丝袜在线播放-百度| 啊嗯嗯啊好大好爽| 玖玖超碰熟| 色呦色呦色精品| 97频视在线| 成人在线午夜视频一区| x97av| 老熟女91av| 热天堂一区二区| 久久精品免费| 综合 青草 伊久久 影院 综合 | 99久久综合网| 9999久久久久| 九九探花视频在线观看| www久| 婷婷五月在线视频| 五月天丁香| 六月婷激情福利天堂69| yazhousetuoumei| 九九九九九九成人| 亚洲欧洲第二视频在线观看色图| 日韩精品系列| 91少妇人妻| 草草草视频在线免费看| 亚欧国产无码精品在线| 91超级碰碰| 超碰日本97美女人妻人人玩人人爱| 天天插天天操| 无码一区二区三区四区五区六区七区八区九区十区视频 | 国产高清亚洲日韩一区| 人人看人人爰人人操| 久久 国产 无码| 在线无码网站| 日本中文字幕在线电影| 97大色网| 自拍偷拍国产欧美日韩韩| 欧美区亚洲区偷拍区 | 国产亚洲性生活视频播放| 尤物av网站免费在线播放| 一区操逼日比视频| www.91色综合| 无毛精品| 日韩福利综合一区| 思思热在线| 久啪| 狠狠图片青青草| 丝袜美腿丝袜| 国产一区二区三区白丝| 任你草| 老鸭窝黄色视频网站| 91成人无码| 十八禁成人网站在线观看| 欧美性爱一内片一区二区三区| 超碰在线综合97| 中文字幕一区二区三区四区在线视频| 国产精品久久99日日| 免费一级毛片在线视频观看| 少妇的嫩逼图片| 午夜天堂精品久久久久91| 久久只有精品一区二区三区| 91操熟女视频| 国产大学生口爆吞精合集| 亚洲中文字幕乱码无码一区二区 | 天天草AV| 囯戸精品高潮呻吟旡码| 久久精品天美| 国产精品九九九| 亚洲中文字幕噜噜噜久久久| 老熟乱一区二区三区四区| 国产成人bd在线观看| 亚洲大色堂| 我要去看2个日本美女.com曹逼| 啪啪综合网| 97操碰| 国产高潮AA片免费看| 蜜桃午夜视频一区二区 | 午夜男人一级A片7777| 亚洲自拍欧美色综合| 久久久久久69国产一区二区| 午夜福利在线视频1000| 亚洲欧美在线观看无码| 人人喜人人妻| 日本一区二区不卡| 欧美一二三区四五区| 亚洲色欧美| 97硬碰| a片久久久久久久久久久久 | 亚洲人天堂| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 99re视频在线播放青草| 中字乱伦AV| 熟女一区二区三区四区| 亚洲自拍青操视频| 色婷婷影院| 天天激情干| 91在线免费精品视频| 国产一级舔足在线观看| 日韩少妇无吗| av橘色网站| 色狠狠 - 百度| 日韩电影在线观看网址| 亚洲综合113页| 99在线精品视频| 精品国产99| 丝袜美腿制服人妻二区中文字幕| 操婷婷逼| 成人在线日韩| AAAA级日本片免费视频| 蜜臀99999| 亚洲第一无码播放立川理惠| 欧美大战久久久伊人| 国产 v乱码一区二| 国产精品高清2021在线| 91热| 九九九只有精品| 韩日自拍| 男人的天堂三级| 精品无码久久久久| 亚洲 无码 有码 中文字幕| 亚洲情色视频| 97综合在线| 涩综合导航| 99精品无码| 亚洲综合另类| 啊啊啊啊在线播放| 亚洲情色图片区| 久久久久国产精品喷潮免费观看臀 | 国产 日韩 欧美高清| 国产后入式在线观看| 麻豆AV一区二区| 久久婷婷精品| 国产高清免费不卡av| 亚洲91色| 欧美视频一区二区三区| 九九九九精品一区| 超硑97精品| 2020中文字幕| 亚洲精品视频在线播放| 久久毛卡| 无码一区二区精品视频久久久春药| 欧美日韩不卡传媒| 美女黄码视频午夜| 99操| 亚洲中文字幕有码视频一区二区三区| 2018色综合天天操| 黄色免费网页无码| 一区二区影院| 岛国在线免费视频| 欧美18 在线观看| 天天噜| 日韩性爱免费观看视频| 97久久超碰亚洲| 亚洲s色图| 久久最新视频免费观看| 国产夫妻一区二区| 亚洲天堂另类小说男人| 亚洲色图大香| 久久五月份| 亚洲操逼网| 午夜丁香婷婷| 欧美很很操视频| 久久精品视频在线观看| 无码人妻毛片丰满熟妇精品区| 天天淫人人妻日日色| 2020中文字幕| 婷婷五月天av| 欧美专区在线| 九九热免费国产视频婷婷伊人五月| 色狠狠综合| 五月丁香大香蕉| 亚洲国产欧美中文永久| 日日干日日| 99性爱| 丰满人妻-区二区三区免费| 六月丁香网| 调教熟妇 久久久久久| 337p大胆噜噜噜噜噜91Av| 五月丁香婷婷综合| 九九这里只有精品| 中文乱码99| 精品69网| 成人夜夜| 久久久久久久久久久久色网| 超碰人妻久久| www.av家庭乱伦| 99这里只有精品国产| 中文字幕一二区二三区人妻专区| 亚洲欧美在线观看免费| 欧美v亚洲v日韩v最新在线二区| 婷婷五月天激情网| 伊人AAA| 鸥美精品一区二区久久婷婷| 亚洲综合图色在线| 大逼色网站| 91痴汉| 超碰在线91| 大屁股人妻女教师撅着屁股| 成人三一级一片aaa| 色情综合| 嗯~啊~快点 死我视频| 久久夜夜夜| 高清不卡 中文 人妻| 久久 精品| 日韩肏逼视频| 国产粉嫩出水在线播放| 另类图片五月| 日韩色图 一区二区| 91成人久久| 亚洲欧美色图片| 亚洲国产精品有声| 亚洲天堂,男人| 婷婷香网站| 男人的天堂VA| 啊啊啊啊啊操我视频| 精品中文字幕第一页| 欧美一区二区福利在线| 中文字幕精品免费一区二区| 激情国产乱伦Av| 日韩乱码Av| 好看的久久不射无码影视影院| 亚洲黄色电影| 日韩操呦呦影院在线观看| 精品一区二区三区18| 亚洲欧洲av影音| 亚洲激情AV| 在线黄色污污网站| 亚洲中文字幕精品一区| 一起草AV| 国产精品久久久久久久久久二区三区| 好爽视频在线观看视频| 大屁股xxxxx| 刺激精品视频| 色色色日本| 久久久久成人蜜桃精品| 欧美亚洲高清晰| 日日摸夜夜夜夜爽| 97超碰天天爱天天爱| 日韩情色一区二区| 日本午夜久久电影| 91色伦| 日本精品网站在线中文| 4141514逼喷水三级片| 在线视频资源| 熟女性视频| 尤物AV免费网站| 日本亚洲熟女视频| 热热色色综合| 免费在线观看国内色片网站网址| 欧美在线色| 成人无遮挡毛片免费看| 久久久久国产亚洲一区欧美色图日韩 | 欧美日韩国内不卡| 久久久一区二区| 天天躁日日躁xxxxx| 亚洲限制级| 伊人操你| 亚洲性少妇| 清纯唯美亚洲综合| 亭亭丁香激情| 九九热久久99精品re| 中文字幕少妇色| 亚洲无无码αⅴ每日更新| 亚洲色图欧美色图制服丝袜 | 三级三级三级日本99| 麻豆天天躁天天揉揉AV| 色墦五月丁香| 久久性爱视频99| 久久一区,青青青青草视频在线播放| 在线αⅴ| 亚洲、日韩、综合、另类| 人妻无一区二区三区| 久久精品视频在线观看| 久久久久久国产手机AV| 妇女一区二区三区| 大香蕉97久久| 伊人专区一区二区三区| 9999亚洲精品| 婷婷伊人网| 啊啊啊啊啊好多水| 78久久久| 国产精品一级片在线看| 变态综合色| 精品国产乱码久久久久久口爆网站 | 91碰碰| 人妻天天爽天天爽三区| 台湾大香蕉99热| 美女黄频a美女大全免费皮| 色狠狠一区二区三区香蕉| 五月天色图影视| 亚洲精品毛片在线观看| 精品无人区麻豆乱码1区2区图片 | 五月丁香色婷婷| 欧美性爱一区二区| 国产精品午夜福利视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 女同女同恋久久级三级| 一本色道久久综合熟妇| 成人夜夜爽| 日本人妻中文字幕精品| 亚洲精品乱码久久久久久蜜桃麻豆| 一本道综合色图| 熟妇xxxxx性春色| 超碰久草| 欧美猛交黑寡妇中文字幕| 欧美疯狂做爰xxxx| 色在线综合| 91美女精品| 欧美另类自拍| 五月婷婷激情| 国产精品无码久久久久2028| 国产熟妇 码视频户外直播 | 丁香五月综合| 人妻一区二区三区视频 | 中文字幕久久婷婷丁香五月天 | 四虎国产精品永久地址入口| 国产精品视屏| 国产精品97超碰| 一区二区 电影 亚洲| 黑人无码一区二区| 亚洲AV秘无码一区..| 亚精品无码毛片一区二区三区| 日韩在线76| 思思热免费视频观看| 五月天我淫我色av| 日韩啊V| 久久香蕉国产线看观看亚洲女人| 日本黄页视频在线观看| 色诱avtt| 91+欧美| 人人妻人人澡人人爽久久av| 日逼视频日本| 夜草网站| 精品欧美乱码久| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 麻豆国产视频精品观看| 91视频综合网| 美欧色综合| 大香蕉中文201| 抽插一区二区视频| 天天射夜夜| 91欧美另类| 东北女人| 欧美影音在线| 久久久久网站-538在线视频-欧美永久乱码 | 日韩人体偷拍| http://qxhbdz.com| 91麻豆天美国产欧美| 久久五月天婷婷| 99热久| 久久激情视频| 禁片 高清 在线观看视频网站| 高清国产成人无码| 中国乱伦一区二区| 日本韩欧美在线播放a| 夜间福利片1000无码| 中国国国产一级特黄毛片| 国产精品婬乱一级毛片彝族| 国产一级作爱毛片| av天堂手机版追回| 日本高清一区二区在线| 五月色网| 亚洲天堂综合AV| 精品久久一区二区三区四区五区| 久操B网| 美女啊啊啊啊pc| 鸥美精品一区二区久久婷婷| 国产日本熟女顶级一区二区三区视频| 成人网欧美风情| 情色五月天网| 蜜乳av一区二区三区四区不卡| 亚洲怡春院| 五月开心久久AV官网| 老色鬼成人精品视频下载大在线观看| yazhououmeizongya| 青草一区二区| 中文字幕一区二区三区四区在线视频| 午夜福利1区2区3区| 国产精品女久久久久av爽| 2024人人操人人摸| 午夜久久一区二区无码中出| 97色色色| 91青青在线| 中文久久| 亚洲九九九| 手机在线播放国产福利| 色玖玖| 97资源超碰| 色综合超碰超| 搡老女人老91妇女熟女| 久久九九综合| 九九干| 一起草av| 欧美久久毛片基地| 人妻少妇精品无码专区二区密桃| 欧美日韩1234| av天堂天堂av日韩| 狠狠操夜夜操蜜桃视频三区| 亚洲丝袜色图| juliaann欧美丝袜办公室| 国产成人欧美精品在线| 伊人女女资源在线观看| 久久超碰、| 中文精品少妇天堂| 国产精品白丝在线播放| 人妻-91porn| 欧美精品偷拍| 九九碰九九爱97超| 多乙久久久久久| 中文有码第五页| 丝袜视频网国产90| 中文字幕日韩精品久久| 嫩草影院在线观看精品| 任我爽视频在线观看| 亚洲图片视频小说| 园内精品自拍视频在线播放| 亚洲,欧美,春色,另类| 国产和美国毛片| 日韩激情电影中文字幕| 五月天偷拍| 青娱乐91| 日本人妻中文字幕精品| 日韩欧美成人大香蕉| 我中文字幕6区| …亚洲黄色厕厕女女在线播…| 天天做日日做| 久久av网| 男人天堂东京热| 激情五月天色色网| 亚洲诱惑天堂 | 久热大香蕉网站| 精品欧美老熟女一二区| 岛国成人av在线播放网址| 麻豆 亚洲 97| 婷婷色色五月天福利| 激情小说五月天| 熟女露脸激情自拍视频| 亚洲图片日本AⅤ欧美在线| 插入综合网| 欧美 亚洲精品首页| 五月激情视频| 综合大香蕉美。| 欧美成人AⅤ大片在线观看| 欲射影视| 人人操 欧美| 国色天香av| 98福利在线视频| 亚洲日韩美女中文字幕乱| 上床不卡网站| 美女熟妇色| 97超碰亚洲| 成人a v在线播放免费| 美国美女AV在线| 思思热国产高清| 欧美专区第一页| 呦呦一区| 亚洲激情av| 国产精品成人午夜福利| 六月婷婷激情| 男人天堂新| 97综合在线观看| 色综合一本| 青苹果影院男人的天堂| av网站在线观看了| 欧美在线色| 人人射人人操人人摸| 色与欲影视天天看综合网| 狼人久草| 久久久久亚洲| 国产玖玖| 国产强奸乱伦xd| 亚州色国| 亚洲五码一区二区三区| 国产伊人精品在线| 国产地址二三| 亚洲国产婷婷在线播放| 九九人妻| 嗯啊不要在线| 又大又大又大又粗爽高潮观看| 精品九九九九九九九| 一起草日韩| 久久久久幕乱码| 青青国产精品在线| 美女视频尤物网在线看| 国产中午字一暮区| 丰满少妇一区二区三区专区| 国产精品一区二区亚洲人成毛片| 青青伊人加勒比海| caoni国产亚洲av| 精品国产乱码久久久久久网站入口| 天美AV片| 国产精品激情久久久久久久| 丝袜AV一区二区三区| 青青草吊丝| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 久热最新在线杭州| 日本丝袜美腿人妻九九| 国产精品一区二区三区,亚洲综合| 日日躁夜夜躁狠狠躁超爽| 强上我不卡卡| 极品色www影院| 欧美一区二区三区互相| 欧美偷偷网| 澳门人妻久久| 色五月婷婷中文字幕| 日韩强奸av| 人妖欧美一区二区| 秋霞一区二区三区四区五区六区七区| 懂色AV蜜臀无码精品APP| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 啊啊啊啊一区| wwwcaobibi| 国产无码精品无码| 国产精品另类一区大香蕉| 国产精品不卡一区二区三区| 中文字幕成人| 国产精品亚洲一级av第二区| 国产在线播放成人免费| 干美女人妻| 韩国女主播青草在线| 乱人伦 国语对白:视频直接看| 久久无码成人| 蜜臀视频网站| 久久久专区| 草伊人高潮喷水超碰| 婷婷六月色| 91性高朝久久久久久久久| 欧美AB在线| 大香蕉手机在线| 青青伊人加勒比海| 91天堂视频| 97视频观看| 老司机老司机午夜影院| 高潮毛片无遮挡高清免费| 天天综合网网欲色| 人妻激情视频| 蜜区区视频79| 精品人妻视频一区二区在线播放 | 人人操人人93| 午夜精品久久久久久久久久久久久 | 97免费视频在线观看视频| 国产精品视频| 欧美日韩大陆黑人少妇99| 亚洲熟妇图片| 在线 制服丝袜中出 人妻| 自慰白浆在线观看| 亚洲中文国际强奸字幕| 综合免费无码中文| 人人看欧美性爱| 亚洲国产欧美一区二区潘金莲 | 久久性爱精品一区| 性久久久| 欧美日韩国产黄色片| 欧美一区二区三区四区综合| 超碰在线人妻中文字幕| 综合av社区| 欧美日韩啪啪电影| 免费AV中文网在线观看| 午夜视频久久久久一区| 啊啊好多水| 热久久99999| 日韩激情视频| 欧天美中出| 91美女国产在线| 国产欧美日产一区二区三区 - 国产欧美日 | 久久欧美1卡2卡3| 啊啊啊啊啊在线观看网址| a网站免费观看| 天天天天干| 天天欧美色| 一区二区 电影 亚洲| 一本大道综合伊人精品热热| 美日韩一二三区| 色网亚洲人| 性色综合网| 国产精品人妻无码久久久老鸭窝 | 精品国产一区二区三区四区在线看| 翔田千里爆乳巨臀无码| 免费的黄片有限公司| 超碰成人最新最好看| 大香蕉黄色一区| 99在线免费观看| 神马午夜久久久| 青青草中日韩在线| 欧美一二级| 香蕉99秘 一区精品蜜桃臀| 射久久| 无码 黑人一区二区三区| 3P乱轮视频| 久久综合婷婷| 久久超碰大香蕉| 黄久在线| 国产精品扒开腿做爽爽爽视频| 秋霞网—男女啪啪亚洲免费体验区| 国产欧美成人第一页在线观看| 在线强奷到舒服的无码视频| 爱爱动态120秒| 夜夜 中文视频rt| 99re在线精品78| 五月天伊人网| 久久五十路熟女人妻| 91久久精品蜜臀| 亚洲污污网站| 欧美 亚洲| 国产 v乱码一区二| 国产极品999| 精品人妻一区二区三区夜夜| 亚洲精品九九九九九九| 在线视频免费观看午夜| www九九热| 久久日本熟女精品一区| 国产搭汕a级片| 日本操逼视频导航| 视频在线观看一二三区| 久久女同性恋一二区| 青青草中文字幕| 加勒比在线视频一区二区三区| 欧洲中文字幕| 亚洲中文sv| 韩国一级婬片A片无码天美| 久久国产精品91| 久久久草草精品| 大香蕉78| 五月丁香影视| 操91| 在线看的av| 欧美综合骚| 97鸡把在线视频| 精品国产www久久| 麻豆黄四叶草网站| 操逼A∨| 深爱激情五月天| 亚洲91射| 成人日本视频人妻在线| 91性高| 欧美日韩国产另类综合| 观看免费区二区三区二| 午夜啊啊| 五月婷婷丁香六月| 欧美熟爽综合| 大香蕉中文201| 久久99午夜精品一区人妻| 97精品中文字幕| 一级日本牲交大片好爽在线看| 五月婷婷久久综合| 国产自啪精品视频网站黑丝| 在线观看无码三级少妇| 婷婷另类小说| 极品销魂美女一区二区| 黄片无码在线制服| 中文字幕精品三级久久久| 精品国产91av一区二区三区| 亚洲色香| 在线无码网站| 日本三级日本三级三级人妇四虎| 精品九九九| 久久天天性久久伊人| 五月丁香影视| 久久久久久免费电影| 九九精品无码专区免费| 老熟妇一区二区三区啪啪| 青草草免费网站av| 亚洲综合贴图91| 日韩精品中文字幕一 | 欧美狠狠干| 91亚洲黑人| 免费观看成人www精品视频| 999久久久久久久精| 91精品无码久久久久久久| 最新中文字幕av| 九月丁香综合网| 久久久亚洲精品中文字幕人妻| 色人久久| 久久这里只| 操久久久久久| 狠狠操使劲操| 91路www| 亚洲砖码砖专无区2023| 中欧人妻丝袜中文字幕 | 九九玖玖精品| 国产91美女视频| 天美麻豆精品视频99| 超碰在线人妻中文字幕| 久久人妻97久久久久久久| 久综合国内精品自在自线| av草草在线电影| 五月天激情婷婷| 国产成人无码a| 91在线一起| 92午夜免费福利视频| 丰满人妻一区二区三区色-百度| 九九九久千久久激情蜜桃在线看 | 日韩一级欧美一级在线观看| 国产深夜福利| 日本超碰97日韩精品人妻| 大香蕉啪啪啪| 韩日色费| 97色妞| 91oumei| 日本操逼视频不卡直接放| 婷婷久久久精品| 淫色网综合| 五月丁香六月婷综合成人综合| 日本精品五区| 人澡逼| 久久久啊啊| 中国东北熟女老太婆内谢| 蜜桃av色偷偷av老熟女| 97超碰免费人人性爱| 麻豆天美电影一区二区| 欧美成人四级在线播放| 玖玖爱影院| 91国产丝袜美女| 99999精品成人| 国产呦精品一区二区三区下载| 欧美色综合| 日本黄色精品| 美女AV一区二区| 天堂av2019| 日本在线播放不卡一区| 国内精品久久人妻性色av| 精品无码少妇| 玖玖爱伊人玖玖爱| 蜜臀精品1区2区| 久99久视频| 亚洲成aⅴ人片不卡无码| 亚洲色图 图片| 磁力99AV| 蜜臀国产AV中文字幕| 中日高清无码操逼视频| 久久国产性爱| 97精品一区| 激情看片网站| 欧美aa一级片| 日本人妻伦在线中文字幕| 久久亚洲日韩熟女精品| 免费超碰97久久| 啊啊啊啊在线观看网址| 观看免费区二区三区二| 91美女丝袜诱惑视频| 精品一区二区综合熟妇| 国产欧美在线观看免费观看| 亚洲人妻色图| 夜夜夜夜久久久久| 九九超碰综合网| 我想要啊 啊 啊| 色网综合网| 久久草视频污视频| 操b网站亚洲无码| 白丝少妇一区二区| 日韩天堂av电影在线观看| 天美传媒av 在线| 99亚洲精品| 天天干,夜夜爽| 丝袜大香蕉| 九九aV| 91超级碰| 91oumei| 97电影院超碰|