欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

PIC32MZ上使用MR25H40CDF MRAM實(shí)現(xiàn)高頻可靠數(shù)據(jù)記錄

PIC32MZ上使用MR25H40CDF MRAM實(shí)現(xiàn)高頻可靠數(shù)據(jù)記錄 這幾年做工業(yè)嵌入式只要涉及參數(shù)掉電保存、運(yùn)行日志、故障記錄的活兒我基本默認(rèn)用 MR25H40CDF 這顆 SPI 接口的 MRAM 來(lái)做存儲(chǔ)單元主控端則是 Microchip 的 PIC32MZ1024EFK144。這個(gè)組合最打動(dòng)我的地方不是某一個(gè)指標(biāo)有多夸張而是整個(gè)存儲(chǔ)邏輯被大幅簡(jiǎn)化不用管理擦除、不用操心寫壽命、寫一半掉電也不會(huì)把整片數(shù)據(jù)搞壞。這篇文章我就把選型理由、硬件連接、驅(qū)動(dòng)實(shí)現(xiàn)、數(shù)據(jù)布局和踩坑經(jīng)驗(yàn)完整梳理一遍給正在評(píng)估 MRAM 方案、或者準(zhǔn)備在 PIC32MZ 上做數(shù)據(jù)記錄功能的工程師一個(gè)能直接參考的落地路徑。先說(shuō)結(jié)論MR25H40CDF 本質(zhì)是一顆 4Mbit 串行 MRAM用起來(lái)卻像一顆永不磨損、不用擦除的 SPI FlashPIC32MZ1024EFK144 則是 Microchip 32 位 MCU 家族里性能和資源都比較從容的一顆主頻、RAM、SPI、DMA 都足夠把這顆 MRAM 喂飽。兩者搭配后工業(yè)應(yīng)用里最頭疼的頻繁小數(shù)據(jù)寫入掉電瞬間的狀態(tài)保存日志記錄都能用一套干凈利落的代碼解決。下面從為什么換、怎么選、怎么連、怎么驅(qū)動(dòng)、怎么布局一層層講透。1. 工業(yè)存儲(chǔ)的痛點(diǎn)為什么我越來(lái)越不想用 NOR Flash1.1 NOR Flash 的三個(gè)原罪擦除、壽命、掉電在工業(yè)設(shè)備里最經(jīng)典的存儲(chǔ)方案是 SPI NOR Flash便宜、容量大、生態(tài)成熟但它天生有幾個(gè)和工業(yè)二字不太對(duì)付的毛病。第一是擦除。NOR Flash 的寫入必須基于先擦后寫擦除單位是 4KB 扇區(qū)甚至更大擦除一次要幾毫秒到幾十毫秒。如果只是改一個(gè) 4 字節(jié)的運(yùn)行計(jì)數(shù)值你也得先把整個(gè)扇區(qū)讀出來(lái)、擦掉、再寫回去代碼復(fù)雜時(shí)間也難看。第二是壽命。NOR Flash 通常標(biāo)稱 10 萬(wàn)次擦寫這對(duì)存一次固件沒(méi)什么問(wèn)題但對(duì)每秒記錄一條運(yùn)行數(shù)據(jù)的場(chǎng)景就是災(zāi)難。100000 次看著很多換算成高頻日志可能幾個(gè)月就耗盡就算做磨損均衡也只是把一個(gè)扇區(qū)的壽命分?jǐn)偟蕉鄠€(gè)扇區(qū)總寫入量上限仍在。第三是掉電。Flash 擦寫過(guò)程本身不是原子的寫到一半斷電輕則這個(gè)扇區(qū)數(shù)據(jù)作廢重則把引導(dǎo)區(qū)搞壞設(shè)備直接變磚。工業(yè)現(xiàn)場(chǎng)最不缺的就是莫名其妙的大電流沖擊和瞬間掉電這三個(gè)問(wèn)題每一個(gè)都?jí)蚰汩_(kāi)一輪評(píng)審會(huì)。我見(jiàn)過(guò)不少項(xiàng)目為了繞開(kāi)這些問(wèn)題在 Flash 外層套了文件系統(tǒng)、磨損均衡、掉電保護(hù)三板斧最終還是因?yàn)槟骋蝗f(wàn)次掉電測(cè)試?yán)锏呐及l(fā)損壞而推倒重來(lái)。所以一旦場(chǎng)景從存固件變成高頻記錄業(yè)務(wù)數(shù)據(jù)我就會(huì)認(rèn)真考慮換存儲(chǔ)介質(zhì)。1.2 MRAM 解決了什么以及它換回了什么代價(jià)MRAM 的存儲(chǔ)單元基于磁性隧道結(jié)靠磁化方向保持?jǐn)?shù)據(jù)不是靠電荷所以它天然具備幾個(gè)非常反 Flash的特性寫入前不需要擦除、寫入過(guò)程幾乎沒(méi)有延遲、寫壽命標(biāo)稱在 10 的 14 次方量級(jí)、數(shù)據(jù)保持 20 年以上。換句話說(shuō)MRAM 把 Flash 的三個(gè)原罪一次性全解決了。在實(shí)際工程里這意味著什么你不再需要維護(hù)擦除隊(duì)列不需要做磨損均衡不害怕頻繁采樣記錄掉電保護(hù)的壓力也小了很多。MR25H40CDF 的寫操作可以發(fā)生在任意字節(jié)地址上單次事務(wù)寫幾十字節(jié)和寫幾百字節(jié)的代碼路徑完全一樣這對(duì)嵌入式工程師來(lái)說(shuō)是一種極大的心智減負(fù)。代價(jià)也很現(xiàn)實(shí)容量小、單位比特成本高。4Mbit 也就是 512KB和動(dòng)不動(dòng) 16MB 的 SPI Flash 沒(méi)法比。所以 MRAM 的定位不是替代大容量 Flash而是承擔(dān)需要頻繁、可靠寫入且容量需求不大的關(guān)鍵數(shù)據(jù)區(qū)。把固件放在 Flash 里把運(yùn)行日志、參數(shù)、標(biāo)定值、掉電狀態(tài)放在 MRAM 里是工業(yè)項(xiàng)目里很常見(jiàn)的分工。1.3 一個(gè)簡(jiǎn)單的選型對(duì)照EEPROM / FRAM / MRAM / SRAM電池很多朋友會(huì)問(wèn)EEPROM 和 FRAM 不也能做這個(gè)事嗎確實(shí)能但落在具體規(guī)格上有明顯差異。特性NOR FlashEEPROMFRAMMRAM寫入前擦除需要不需要不需要不需要寫壽命約10萬(wàn)次約100萬(wàn)次10^10~10^1310^14量級(jí)單字節(jié)寫速度慢且擦除更慢毫秒級(jí)接近SRAM速度無(wú)寫等待掉電寫中斷風(fēng)險(xiǎn)高頁(yè)損壞低字節(jié)級(jí)低低原子性更好單位容量大小中中成本低高較高較高EEPROM 的問(wèn)題是寫太慢且容量迷你FRAM 速度很好但容量和供貨渠道常讓人頭疼帶電池的 SRAM 雖然讀寫都快但電池壽命和售后是永遠(yuǎn)逃不掉的隱患。相比之下MRAM 在工業(yè)溫度范圍 高寫壽命 字節(jié)級(jí)隨機(jī)寫 不用刷電池這個(gè)交集里幾乎沒(méi)有競(jìng)爭(zhēng)對(duì)手。我當(dāng)時(shí)選 MR25H40CDF 還有一個(gè)很務(wù)實(shí)的理由它和 SPI Flash 指令集高度相似驅(qū)動(dòng)遷移成本極低這一點(diǎn)下面細(xì)說(shuō)。2. 選型拆解MR25H40CDF 和 PIC32MZ1024EFK144 各自的分量2.1 MR25H40CDF 的關(guān)鍵參數(shù)和封裝MR25H40CDF 是 Everspin 的 MR25H40 系列成員容量 4Mbit即 512KB按字節(jié)編址需要 24 位地址。接口是標(biāo)準(zhǔn)四線 SPI支持 SPI Mode 0 和 Mode 3供電 3.3V數(shù)據(jù)手冊(cè)標(biāo)稱 SPI 時(shí)鐘最高 40MHz。封裝常見(jiàn)的是 8 引腳 DFN 這類小貼片封裝工業(yè)級(jí)溫度范圍可以做到 -40°C 到 85°C 甚至更寬這對(duì)現(xiàn)場(chǎng)設(shè)備非常重要。它最核心的指令集和普通 SPI NOR Flash 幾乎同構(gòu)WREN 寫使能、RDSR 讀狀態(tài)寄存器、WRSR 寫狀態(tài)寄存器、READ 讀數(shù)據(jù)、WRITE 寫數(shù)據(jù)。但它沒(méi)有 Flash 那些擦除扇區(qū)讀 ID/Jedec ID在存儲(chǔ)流程里的硬約束也沒(méi)有 WIP 忙等待的必要。MR25H40CDF 的寫入是即時(shí)完成的發(fā)完寫命令和數(shù)據(jù)CS 拉高數(shù)據(jù)就落進(jìn)存儲(chǔ)陣列了。一顆 4Mbit 的容量聽(tīng)著不大但作為工業(yè)控制卡上的關(guān)鍵數(shù)據(jù)保險(xiǎn)柜綽綽有余。一次存 64 字節(jié)的實(shí)時(shí)運(yùn)行記錄可以存八千多頁(yè)就算每頁(yè)帶 CRC 和序號(hào)也能存大幾千次完整狀態(tài)快照完全覆蓋絕大多數(shù)工業(yè)應(yīng)用。2.2 PIC32MZ1024EFK144 在存儲(chǔ)任務(wù)里的角色PIC32MZ1024EFK144 是 Microchip PIC32MZ EF 系列的一員MIPS microAptiv UC 內(nèi)核主頻 200MHz片上有 1MB Flash 和 512KB RAM144 引腳封裝帶 FPU 和多種通信外設(shè)。做數(shù)據(jù)存儲(chǔ)這種活它看起來(lái)有點(diǎn)殺雞用牛刀但它真正值錢的是三樣?xùn)|西充足的 RAM 可以做雙緩沖和業(yè)務(wù)緩存多個(gè) SPI 控制器可以把存儲(chǔ)總線和調(diào)試串口完全隔離DMA 引擎可以替 CPU 把數(shù)據(jù)搬運(yùn)和校驗(yàn)全部接管。另一個(gè)重要點(diǎn)是它的工具鏈。PIC32MZ 能用 MPLAB Harmony v3 的 PLIB 層直接操作 SPI 和 DMA生成的代碼框架清晰也很容易嵌入自己的存儲(chǔ)驅(qū)動(dòng)。工業(yè)項(xiàng)目最怕一個(gè)人寫的代碼只有一個(gè)人能維護(hù)PIC32MZ 在這個(gè)層面的工程優(yōu)勢(shì)比某些裸寄存器風(fēng)格的 MCU 明顯很多。2.3 這對(duì)組合為什么合拍簡(jiǎn)單說(shuō)就是兼容性帶來(lái)的低風(fēng)險(xiǎn)。MR25H40CDF 的 SPI 時(shí)序和普通 SPI Flash 接近現(xiàn)有 Flash 驅(qū)動(dòng)的骨架可以直接改PIC32MZ 的多 SPI 主控和 DMA 又能把 MRAM 的性能真正發(fā)揮出來(lái)。再加上兩者都有完善的工業(yè)級(jí)溫度規(guī)格和長(zhǎng)供貨周期在設(shè)備研發(fā)和生產(chǎn)兩端都少了很多不確定性。我最看重的一點(diǎn)是這對(duì)組合的可預(yù)測(cè)性很高。Flash 類的驅(qū)動(dòng)在掉電場(chǎng)景下總有一些隱藏分支比如擦除到一半斷電后狀態(tài)寄存器不可信、壞塊標(biāo)記要維護(hù)等等。MRAM 把這些隱藏分支幾乎全部消滅了配合 PIC32MZ 穩(wěn)定的電源系統(tǒng)和外部電壓監(jiān)控整個(gè)存儲(chǔ)模塊的行為可以做到非常線性。對(duì)做產(chǎn)品的人來(lái)說(shuō)邏輯越線性越容易通過(guò)認(rèn)證和可靠性測(cè)試。3. 硬件設(shè)計(jì)與連接別讓小封裝和四線 SPI 騙了3.1 SPI 連線與 WP、HOLD 引腳的處理MR25H40CDF 的連接相當(dāng)簡(jiǎn)單SCK、SI、SO、CS 四根線接 PIC32MZ 的任意一組 SPI 主控另外還有兩個(gè)功能引腳 WP 和 HOLD。很多人第一次畫板子會(huì)忽略這兩個(gè)引腳結(jié)果就是數(shù)據(jù)偶爾錯(cuò)亂、調(diào)試半天找不到原因。WP 是寫保護(hù)輸入。如果不用硬件寫保護(hù)就要把它接 VDD而不是懸空。懸空的 CMOS 輸入在工業(yè)現(xiàn)場(chǎng)的 EMI 環(huán)境下可能被耦合出隨機(jī)電平一旦 WP 被拉低后面所有寫命令都會(huì)被拒掉。HOLD 引腳的作用是暫停 SPI 通信如果不用也需要通過(guò)一個(gè)上拉電阻接到 VDD建議用 10k 電阻而不是直連方便將來(lái)調(diào)試時(shí)手動(dòng)控制。PIC32MZ 這邊CS 用一個(gè)普通 GPIO 控制即可不要和 SPI 模塊的自動(dòng)片選混用存儲(chǔ)驅(qū)動(dòng)的每一次命令事務(wù)都需要精確控制 CS 拉高拉低的時(shí)機(jī)。3.2 電源、去耦和 PCB 布局的實(shí)操細(xì)節(jié)MR25H40CDF 工作在 3.3V它的電源質(zhì)量直接影響數(shù)據(jù)可靠性。一個(gè) SPI 器件的功耗本身不大但在 40MHz 時(shí)鐘下翻轉(zhuǎn)時(shí)電流變化集中在納秒級(jí)所以引腳附近的去耦電容必須到位。我的習(xí)慣是芯片 VDD 引腳旁邊放一顆 100nF 的 X7R 陶瓷電容再在板級(jí)電源入口放一顆 4.7uF 左右的鉭電容吸收低頻波動(dòng)PIC32MZ 的同一路 3.3V 也按官方手冊(cè)配足去耦。PCB 布局上SPI 四根線要盡量短最好走同一層、不打亂穿越避免形成大的回路面積。CS 線雖然沒(méi)有時(shí)鐘那么敏感但它控制著整個(gè)事務(wù)的邊界被干擾導(dǎo)致半途 CS 抖動(dòng)會(huì)讓驅(qū)動(dòng)狀態(tài)機(jī)徹底錯(cuò)亂。工業(yè)現(xiàn)場(chǎng)還建議在器件對(duì)外連接器附近加 ESD 防護(hù)尤其當(dāng)存儲(chǔ)卡座或采樣線纜靠近強(qiáng)干擾源時(shí)一顆幾毛錢的 TVS 能幫你少處理無(wú)數(shù)售后單。3.3 多片 MRAM 共總線的擴(kuò)展方式如果 512KB 不夠用可以并排掛兩片甚至四片 MR25H40CDF。SPI 本身支持多從設(shè)備共享 SCK、SI、SO核心就是每片獨(dú)立的 CS。PIC32MZ 的 GPIO 足夠直接從不同引腳引出多路 CS 即可。這里有個(gè)注意點(diǎn)總線上的器件越多SO 引腳的容性負(fù)載越大40MHz 時(shí)的邊沿會(huì)變緩。實(shí)測(cè)中掛兩片通常沒(méi)問(wèn)題掛四片時(shí)建議把 SPI 時(shí)鐘降到 20MHz或者用更強(qiáng)的 GPIO 驅(qū)動(dòng)能力。另一個(gè)建議是給每片 MRAM 分配獨(dú)立的邏輯地址空間驅(qū)動(dòng)層把物理片選 片內(nèi)地址封裝成一個(gè)統(tǒng)一的讀寫接口上層業(yè)務(wù)就不會(huì)被硬件擴(kuò)展影響。4. 驅(qū)動(dòng)實(shí)現(xiàn)SPI 命令、讀寫流程和完整代碼4.1 主控側(cè) SPI 配置與初始化的先后順序PIC32MZ 的 SPI 初始化在 Harmony 里通常由 MCC 自動(dòng)生成但有幾個(gè)參數(shù)必須手工確認(rèn)模式選 Mode 0CPOL0, CPHA0數(shù)據(jù)位寬 8 位主模式時(shí)鐘分頻從慢到快。我習(xí)慣先把 SPI 時(shí)鐘調(diào)到 10MHz 左右做完整性測(cè)試確認(rèn)讀寫的每個(gè)字節(jié)都穩(wěn)定后再提到 20MHz、40MHz。初始化順序也有講究先初始化 GPIO確保 CS 引腳默認(rèn)輸出高電平再初始化 SPI 模塊最后才對(duì) MRAM 做握手操作比如讀狀態(tài)寄存器確認(rèn)能正常應(yīng)答。這個(gè)順序能避免上電瞬間 CS 不確定導(dǎo)致 MRAM 誤進(jìn)入某個(gè)命令狀態(tài)雖然 MRAM 沒(méi)有 Flash 那些擦除狀態(tài)但養(yǎng)成這個(gè)習(xí)慣能省很多排查時(shí)間。4.2 核心命令集合WREN / RDSR / READ / WRITEMR25H40CDF 的命令并不復(fù)雜工程上常用這幾條WREN 0x06置位寫使能鎖存器任何一次寫事務(wù)之前都要發(fā)。WRDI 0x04清除寫使能鎖存器用得不多但可以用來(lái)防止誤寫。RDSR 0x05讀狀態(tài)寄存器可以確認(rèn) WEL 位是否置位。READ 0x03普通讀發(fā) 24 位地址后連續(xù)讀出數(shù)據(jù)。WRITE 0x02普通寫發(fā) 24 位地址后連續(xù)寫入數(shù)據(jù)。和 Flash 驅(qū)動(dòng)不一樣的地方是不需要擦除命令不需要輪詢 WIP也不需要處理頁(yè)編程邊界。MRAM 雖然也建議單次事務(wù)不超過(guò) 256 字節(jié)作為通用安全上限但它沒(méi)有必須按頁(yè)對(duì)齊這種約束任意地址落筆都合法。4.3 寫流程為什么必須CS 拉高再拉低最容易踩的坑就是把 WREN 和 WRITE 連在同一個(gè) CS 事務(wù)里。很多 SPI 存儲(chǔ)器的規(guī)則是WREN 命令結(jié)束后 CS 必須拉高命令才被鎖存生效緊接著下一個(gè)事務(wù) CS 再拉低發(fā) WRITE。如果 WREN 發(fā)完 CS 不拉高直接發(fā) WRITE寫使能根本沒(méi)有置位寫命令會(huì)被靜默忽略。這個(gè)CS 低-高-低的節(jié)奏是整套驅(qū)動(dòng)里最重要的時(shí)序細(xì)節(jié)。我在代碼里專門寫了mram_write_enable函數(shù)內(nèi)部就是 CS 拉低、發(fā) 0x06、CS 拉高和后續(xù)寫數(shù)據(jù)的事務(wù)完全分開(kāi)。這看起來(lái)多了一個(gè) CS 翻轉(zhuǎn)的微小開(kāi)銷但換來(lái)的確定性和標(biāo)準(zhǔn)化非常值尤其當(dāng)代碼要移植到其他平臺(tái)時(shí)這種時(shí)序列不會(huì)被另一種芯片的時(shí)序兼容性坑掉。4.4 一個(gè)可直接移植的 MRAM 驅(qū)動(dòng)示例下面這段 C 代碼是我在項(xiàng)目里的驅(qū)動(dòng)骨架去掉具體板級(jí)依賴后大約就是這個(gè)樣子。spi_exchange你可以對(duì)齊到 Harmony PLIB 的 SPI1_Exchange8bit 或自己的寄存器讀寫CS_LAT換成實(shí)際的 GPIO 控制宏。#include mram.h #define MRAM_SIZE (512 * 1024) static void mram_cs_low(void) { CS_LAT 0; } static void mram_cs_high(void) { CS_LAT 1; } static uint8_t mram_spi_byte(uint8_t tx) { return spi_exchange(tx); } uint8_t mram_read_status(void) { uint8_t st; mram_cs_low(); mram_spi_byte(0x05); st mram_spi_byte(0x00); mram_cs_high(); return st; } static void mram_write_enable(void) { mram_cs_low(); mram_spi_byte(0x06); mram_cs_high(); } int mram_write_bytes(uint32_t addr, const uint8_t *buf, uint32_t len) { if (addr len MRAM_SIZE) { return -1; } mram_write_enable(); mram_cs_low(); mram_spi_byte(0x02); /* WRITE */ mram_spi_byte((addr 16) 0xFF); mram_spi_byte((addr 8) 0xFF); mram_spi_byte(addr 0xFF); for (uint32_t i 0; i len; i) { mram_spi_byte(buf[i]); } mram_cs_high(); return 0; } int mram_read_bytes(uint32_t addr, uint8_t *buf, uint32_t len) { if (addr len MRAM_SIZE) { return -1; } mram_cs_low(); mram_spi_byte(0x03); /* READ */ mram_spi_byte((addr 16) 0xFF); mram_spi_byte((addr 8) 0xFF); mram_spi_byte(addr 0xFF); for (uint32_t i 0; i len; i) { buf[i] mram_spi_byte(0x00); } mram_cs_high(); return 0; }寫驅(qū)動(dòng)的流程就是這樣清晰。注意每次寫事務(wù)前調(diào)用mram_write_enable讀事務(wù)則不需要。如果你希望通過(guò)讀狀態(tài)寄存器確認(rèn) WEL 已置位再做寫可以在mram_write_enable后加一句檢查犧牲一點(diǎn)速度換取更強(qiáng)的自診斷能力我在正式產(chǎn)品里通常都會(huì)加。4.5 用 DMA 把吞吐量再提一檔如果數(shù)據(jù)量不止幾十字節(jié)而是幾百字節(jié)甚至上千字節(jié)的連續(xù)記錄讓 CPU 一個(gè)字節(jié)一個(gè)字節(jié)塞 SPI 發(fā)送寄存器就太浪費(fèi)了。PIC32MZ 的 SPI 模塊可以配 DMA做法是CPU 先手動(dòng)發(fā)命令和地址然后把數(shù)據(jù)階段的傳輸交給 DMA 通道DMA 收到 SPI 發(fā)送完成的中斷后再把 CS 拉高。這里有一個(gè)緩存一致性的問(wèn)題要提醒PIC32MZ 有 L1 數(shù)據(jù)緩存如果 DMA 源緩沖區(qū)在緩存區(qū)域里且剛才 CPU 更新過(guò)數(shù)據(jù)要確保數(shù)據(jù)真的落回 SRAM 再啟動(dòng) DMA。Harmony 生成的代碼通常會(huì)幫你做 cache maintenance但如果你是自己寫寄存器配置 DMA一定記得處理這一環(huán)我在初期就被這個(gè)坑折磨過(guò)——DMA 搬的全是過(guò)期數(shù)據(jù)看起來(lái)像 MRAM 寫入不穩(wěn)定其實(shí)是緩存沒(méi)刷。DMA 的收益非常直觀同樣是 256 字節(jié)的寫CPU 輪詢方式下每字節(jié)要等發(fā)送完成標(biāo)志整體耗時(shí)可能到 100μs 級(jí)別DMA 方式下 CPU 只需要初始化事務(wù)和收尾中斷吞吐量能逼近 SPI 總線的理論極限。后面的實(shí)測(cè)數(shù)據(jù)就是基于 DMA 方式。5. 工業(yè)場(chǎng)景的數(shù)據(jù)布局與掉電可靠性設(shè)計(jì)5.1 典型的工業(yè)數(shù)據(jù)存儲(chǔ)形態(tài)MRAM 在工業(yè)設(shè)備里最常見(jiàn)的幾類用途一是運(yùn)行日志比如變頻器記錄每一條報(bào)警和故障代碼二是參數(shù)集伺服驅(qū)動(dòng)器在調(diào)試階段頻繁修改增益、速度環(huán)參數(shù)又希望掉電不丟三是計(jì)量數(shù)據(jù)電表、水表要定時(shí)累積能量值寫操作雖小但極其頻繁四是標(biāo)定數(shù)據(jù)傳感器出廠前會(huì)反復(fù)寫校準(zhǔn)系數(shù)產(chǎn)線上一天就要寫幾千次。這些場(chǎng)景的共同特點(diǎn)是單次數(shù)據(jù)量不大、寫入頻率不低、數(shù)據(jù)價(jià)值很高。它們和放固件放大文件的需求是兩回事所以 MRAM 的 512KB 反而是優(yōu)點(diǎn)容量邊界明確數(shù)據(jù)布局簡(jiǎn)單不會(huì)出現(xiàn)我到底該把日志放在哪個(gè)文件系統(tǒng)塊的糾結(jié)。5.2 環(huán)形記錄緩沖區(qū)的簡(jiǎn)化實(shí)現(xiàn)實(shí)現(xiàn)一個(gè)環(huán)形日志緩沖區(qū)Flash 方案要先規(guī)劃多個(gè)扇區(qū)、維護(hù)磨損均衡、處理扇區(qū)擦除失敗MRAM 方案則簡(jiǎn)單到直接在固定地址區(qū)間里滾。我常用的做法是把 4Mbit 劃成三個(gè)區(qū)頭部區(qū)存當(dāng)前寫指針、寫序號(hào)、緩沖區(qū)有效標(biāo)志用固定地址。數(shù)據(jù)區(qū)按固定長(zhǎng)度記錄循環(huán)寫入每條記錄帶 CRC。備用區(qū)留給將來(lái)擴(kuò)展或者放第二份關(guān)鍵參數(shù)鏡像。寫指針每次更新都是對(duì)小字段的寫操作MRAM 可以承受不需要任何特殊處理。讀取時(shí)從指針位置向前或者向后遍歷記錄校驗(yàn) CRC 后決定數(shù)據(jù)是否有效。相比 Flash 要在新扇區(qū)里找空閑塊、刪舊記錄這個(gè)邏輯能少寫一兩百行代碼。5.3 掉電安全CRC、序號(hào)、雙份鏡像MRAM 的單字節(jié)寫入是原子的這個(gè)特性讓掉電保護(hù)簡(jiǎn)單了一大截。但原子不等于業(yè)務(wù)數(shù)據(jù)完整你寫入一條多字節(jié)記錄時(shí)如果掉電恰好發(fā)生在字節(jié)與字節(jié)之間這條記錄可能只有前半部分。所以工程上仍然需要記錄級(jí)保護(hù)。我的標(biāo)準(zhǔn)做法是給每條記錄定義統(tǒng)一幀格式開(kāi)頭 2 字節(jié)魔數(shù)、4 字節(jié)序號(hào)、2 字節(jié)長(zhǎng)度、數(shù)據(jù)載荷、末尾 4 字節(jié) CRC32。讀的時(shí)候先看魔數(shù)再看長(zhǎng)度再看 CRC三者都對(duì)才認(rèn)為記錄有效。因?yàn)?MRAM 沒(méi)有整頁(yè)擦掉的風(fēng)險(xiǎn)最多就是一條半截記錄不會(huì)波及旁邊的數(shù)據(jù)。更關(guān)鍵的狀態(tài)參數(shù)比如設(shè)備標(biāo)定值和運(yùn)行小時(shí)數(shù)我會(huì)用雙份鏡像存儲(chǔ)。寫 A 份成功后再寫 B 份上電時(shí)優(yōu)先取 B 份B 校驗(yàn)失敗回退 A 份。這套機(jī)制在 Flash 上要專門處理擦除和寫入的交錯(cuò)時(shí)序在 MRAM 上就是兩次普通寫操作三行代碼的事。如果你外接了 PIC32MZ 的電壓監(jiān)控管腳還可以在檢測(cè)到掉電瞬間只保存十幾個(gè)關(guān)鍵字節(jié)到 MRAM這套組合實(shí)測(cè)下來(lái)非常穩(wěn)。5.4 實(shí)測(cè)性能參考40MHz SPI 下能跑多快算一筆賬SPI 總線 40MHz 換算成吞吐量是 5MB/s。MR25H40CDF 沒(méi)有擦除和頁(yè)編程等待數(shù)據(jù)傳輸基本等于總線速度本身。一個(gè) 260 字節(jié)的事務(wù)3 字節(jié)地址 命令 256 字節(jié)數(shù)據(jù)在 40MHz 下理論耗時(shí)只有 52μs 左右加上 CS 翻轉(zhuǎn)和驅(qū)動(dòng)開(kāi)銷實(shí)測(cè)一個(gè) 256 字節(jié)寫事務(wù)通常能壓在 60μs 內(nèi)。相比之下NOR Flash 寫一個(gè) 256 字節(jié)頁(yè)就算不算擦除本身也要幾百微秒擦除更是毫秒級(jí)。整片 512KB 全部寫入理論時(shí)間是 512KB 除以 5MB/s也就是約 0.1 秒這在工業(yè)產(chǎn)品里已經(jīng)非常激進(jìn)。實(shí)際項(xiàng)目里沒(méi)人天天整片重寫但關(guān)鍵數(shù)據(jù)保存可以做到微秒級(jí)完成這個(gè)特性讓很多以前不敢做的功能變得可能比如 1kHz 采樣率下持續(xù)記錄觸發(fā)前 100ms 的完整波形這個(gè)需求 Flash 基本無(wú)解MRAM 加 DMA 卻剛好能跑起來(lái)。6. 實(shí)操踩坑記錄與排查速查表6.1 八個(gè)常見(jiàn)癥狀和對(duì)應(yīng)的排查方向癥狀可能原因排查與解決寫入后讀回全是 0xFF沒(méi)發(fā) WREN或 CS 時(shí)序不對(duì)檢查寫使能流程確認(rèn) WREN 和 WRITE 之間 CS 有拉高數(shù)據(jù)隨機(jī)錯(cuò)位SPI 模式不對(duì)確認(rèn)主控配的是 Mode 0 或 Mode 3偶發(fā)多一個(gè)字節(jié)或少一個(gè)字節(jié)時(shí)鐘太快或走線過(guò)長(zhǎng)降到 20MHz縮短 SPI 走線只有第一字節(jié)正確DMA 沒(méi)刷緩存檢查 PIC32MZ 數(shù)據(jù)緩存一致性維護(hù)寫入被靜默忽略WP 引腳被拉低確認(rèn) WP 接 VDD不要懸空讀數(shù)據(jù)有時(shí)變化HOLD 引腳受干擾HOLD 加 10k 上拉到 VDD掉電后 CRC 老報(bào)錯(cuò)記錄幀格式不完整加魔數(shù)和 CRC采用雙份鏡像外部干擾后通信假死CS 受噪聲導(dǎo)致?tīng)顟B(tài)機(jī)錯(cuò)亂加 ESD/TVSCS 線盡量短這些癥狀我?guī)缀醵家灰徊冗^(guò)。最隱蔽的其實(shí)是SPI 模式對(duì)調(diào)MRAM 支持 Mode 0 和 Mode 3但你的 PIC32MZ 配置工具可能生成默認(rèn)的 Mode 0如果時(shí)鐘極性恰好和你抽樣時(shí)刻錯(cuò)開(kāi)數(shù)據(jù)看起來(lái)就是能通但經(jīng)常錯(cuò)。先用低速、單字節(jié)反復(fù)對(duì)比寫入讀出值能最快鎖定這類問(wèn)題。6.2 關(guān)于無(wú)限壽命的冷靜看法MR25H40CDF 標(biāo)稱寫壽命 10 的 14 次方工程上確實(shí)可以當(dāng)成用不完。但我從來(lái)不會(huì)因此省掉 CRC 和合理的數(shù)據(jù)布局原因很簡(jiǎn)單存儲(chǔ)介質(zhì)不會(huì)寫壞不代表你的代碼不會(huì)寫錯(cuò)也不代表外部干擾不會(huì)造成位翻轉(zhuǎn)。工業(yè)現(xiàn)場(chǎng)的高低溫、強(qiáng)電磁干擾、電源紋波都會(huì)對(duì)任何半導(dǎo)體存儲(chǔ)器造成影響。MRAM 的抗輻射和抗磁性干擾能力已經(jīng)遠(yuǎn)超 Flash但設(shè)計(jì)上還是應(yīng)該給關(guān)鍵數(shù)據(jù)加校驗(yàn)、給冗余留空間。把 MRAM 的壽命優(yōu)勢(shì)看成少了一層后顧之憂而不是可以放棄防御性設(shè)計(jì)這個(gè)心態(tài)能讓你的產(chǎn)品質(zhì)量拉開(kāi)差距。6.3 遷移與復(fù)用老 Flash 驅(qū)動(dòng)怎么改造成 MRAM 驅(qū)動(dòng)如果你手里已經(jīng)有一套成熟的 SPI Flash 驅(qū)動(dòng)遷移到 MR25H40CDF 的成本比想象中低。大致做三件事把擦除函數(shù)全部刪掉新的寫入流程去掉先擦后寫分支把寫完成后輪詢 WIP 的等待邏輯刪掉因?yàn)?MRAM 沒(méi)有寫延遲確保每次寫事務(wù)前都有獨(dú)立的 WREN。做完全套真機(jī)測(cè)試把原來(lái)跑 Flash 的掉電測(cè)試腳本原樣跑一遍 MRAM你會(huì)發(fā)現(xiàn)既有測(cè)試用例幾乎不需要改動(dòng)因?yàn)閷?duì)上層業(yè)務(wù)來(lái)說(shuō)讀寫接口語(yǔ)義完全一致。這種遷移路徑友好是我最終敢在項(xiàng)目里啟用新存儲(chǔ)顆粒的重要原因。即使將來(lái)某天供應(yīng)鏈要求換另一家 MRAM 或者換更大容量 SPI MRAM驅(qū)動(dòng)層的改動(dòng)也被限制在一個(gè)很薄的適配層里整個(gè)存儲(chǔ)架構(gòu)不會(huì)因?yàn)樾酒瑩Q型而推倒重來(lái)。最后聊一下我個(gè)人的體會(huì)。做工業(yè)嵌入式的數(shù)據(jù)存儲(chǔ)真正貴的不是那幾分錢一顆的存儲(chǔ)芯片而是每次掉電、每次高溫、每次現(xiàn)場(chǎng)復(fù)位之后數(shù)據(jù)還在不在、對(duì)不對(duì)。把 MRAM 放在最關(guān)鍵的那幾百 KB 空間里配合 PIC32MZ 的外設(shè)資源是我這幾年用下來(lái)最省心的一套組合。它沒(méi)有 Flash 那份復(fù)雜但便宜的誘惑也沒(méi)有電池 SRAM 那種遲早要還的售后債它就是安安靜靜地把每次寫入落到存儲(chǔ)單元里。如果你正在為一個(gè)頻繁寫、必須穩(wěn)的場(chǎng)景頭疼建議找一顆 MR25H40CDF 的樣片照著上面的連接和驅(qū)動(dòng)在 PIC32MZ 開(kāi)發(fā)板上跑一輪你大概率也會(huì)想把項(xiàng)目里那些日志重災(zāi)區(qū)從 Flash 遷過(guò)來(lái)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月丁香久久网| 五月婷婷开心五月| 操你av| 少妇性按摩无码中文A片| 久8色色| 天天综合久久| 五月婷婷黄网站大全| 另类激情五月| 日本色图综合| 成人AV中文字幕| 五月天婷婷青青| 亚洲99在线| 亚洲精品字幕在线观看| 99综合视频| 91色情播放| 99亚洲精品视频在线观看| 激情婷婷99| 狠狠干综合| 久婷五月| 丁香五月人妻| 婷婷久久丁香五月| 99乱视频| 色欲天天综合网| 曰日爽日日操| 五月激情久久综合网| 久婷婷五月激情| av无码电影| 影音先锋 萱萱| 久久怡红院| 婷婷俺去也| 丁香六月天婷婷色| 五月停停大香蕉| 91大神操美女| 无码人妻激情| 精品婷婷| 欧美日韩成人| 丁香五月激动深爱欧美| 婷婷五月综合国产精品| 182.t午在线观看| 婷婷色综合| 久久东京热婷婷五月| 思思热久久爱| 日日爽日日爽| 天天在线XXX| 性天天中文网| 五月婷婷亚洲色视频| 丁香成人综合| 婷婷丁香成人五月天| 日韩色情亚洲五月天婷婷| wuyuedingxiang99| 我爱va亚洲va52| 六月五月丁香五月欧美| 五月丁香WWW| 久久xx| 9久久久久久久久久久| 亚洲色区17| 婷色天堂| 一级黄色操B| 婷婷中文综合网| 午夜亚洲AV日韩无码| 这里有精品| 中文字幕在线日亚洲9| 天天色99| 丁香五月 综合| 丁香五月婷婷动漫视频| 日韩操逼小电影| 婷婷五月天日日日干干干| 五月丁香少妇A| 丁香五月图片| 99免费热视频| 久热99| 婷婷婷婷婷婷婷五月丁香| 亚洲色综合| 五月丁香在线观看| www,黄色在线,con| 色婷婷AV在线| 小视频aaa久久久| 精品人妻久久久| 五月丁香六月婷婷久久久综合| 五月天婷婷色小说| 激情五月色婷婷| 99性视频| 熟女国产在线一区二区三区四区| 丁香色六月婷婷| 五月丁香怕怕综合| 色情五月综合婷婷| 色啪网| 第九色区AV在线| 99热狠狠操| 九九色精品| 精品99久久久久成人网站免费| 婷婷丁香六月天| 99精品国产在热久久| 亚洲a片免费观看| 五月丁香网站| 亚洲一区二区无码蜜乳av| 免费精品99| 可以看的av网站| 人人爽网| 思恩热国产视频右线观看| 日韩av大全| 婷婷丁香五月色| 99爱这里只有精品免费视频| 国内裸舞二区| 欧美操综合| 六月婷婷激情图片| 第四色首页| 久久只有18视频| 人碰人人人玩91| 亚洲AV网站在线观看| 五月丁香色婷婷婷基地| 五夜丁香| 综合九九中文字幕| 操啊操av| 中文成人在线| 99久热在线精品| 九九视频精品在线免费| 丁香六月五月天| 亚洲av另类在线观看| 99啪啪视频| 五月之婷婷| www.色99| 婷婷精品免费久久| 久久狠狠干| 97人人干视频| 天天天天天操| 午夜少妇在线观看视频| 亭亭玉立国色天香| 99综合免费视频| 一区操| 六月激情久久婷婷| 五月丁香婷婷综合网| 色婷婷丁香社综合| 亚洲热综合| 中国无码av| 国产 码在线成人网站| www色中色综合| 北京熟妇搡BBBB搡BBBB| caopeng超碰| 五月丁香婷婷五月| 免费人人操| 青草热视频这里只有精品| 99碰碰| 熟女91九色| 欧美婷婷五月天综合| 天天色天天操天天射| 五月天综合久久丁香91| 婷婷午夜精品久久久| 人人操91色| 欧洲激情五月天| 五月婷婷开心网| 伊人碰碰碰| 97人凄人人操人人爽| av超碰在线| 色亚洲色宗合| 激情综合视频| 亚洲五月停停| 九九精品在线视频观看| 99爱精品| 亚洲小视频| 色色欧美。| 激情纯色婷婷五月天在线不卡视频| 色婷婷久久综合| 激情婷婷久久| 精品国产va久久久久| 中文字幕 码精品视频网站| 超碰在线精品| 91久久久久久久| 婷婷五月激情的图片| 日本丁香五月| 夜夜做天天爽| 亚洲国产色婷婷| 丁香色婷婷五月天| 涩五月婷婷| 婷婷丁香五月综合| 日本va欧美va欧美va| 99re资源在线视频导航| 9色在线视频| 五月停停999| 91人妻人人做人碰人人爽九色| 人妻精品在线| 欧美S码亚洲码精品M码| 婷婷亚洲五月| 人妻系列久久久久久久久久久| 色99视频| 激情五月天在线视频| 777久久久| 国产精品视频免费看| 久99久在线| 天天影院色| 天天做综合| 一本色综合色| www.色综合| 国产99热在线看| 日韩成人精品中文字幕| 色色欧美。| 天天色色天天| 亚洲色色图片| 婷婷丁香亚洲色综合91| 少妇性BBB搡BBB爽爽爽视頻| 激情AV在线| 婷婷激情伍月网| 91色综合久久| 婷婷导航| aa久久| 天天干夜夜b| 久久婷婷六月综合综合| 欧美 日韩 人妻 高清 中文| 激情床戏| 九九亚洲视频| 欧美日韩大黄| 激情深爱五月婷婷| 五月狠狠| 极品少妇婷婷五月| 中文字幕无码AV| 色婷婷88| 成人va在线播放| 思思热国产视频| 91a片爽| 色狠狠色| 一区二区乱码视频| 日日干天天爽| 五月丁香狠狠| 中文不卡一二三区| 99视频精品视频| 在线观看亚洲AV| 精品香蕉99久久久久网站 | 五月婷婷综合色啪首页| 欧洲色| 成人精品亚洲性爱| 九九激情视频| 狠狠激情五月天| 思思久ren热| 婷婷伊人75| 中字幕视频在线永久在线观看免费| 五月婷婷六月丁香五月| 开心激情网在线| 色婷婷基地在线| 97色图片中文字幕视频在线观看| 超碰A V在线| 丁香五月综合| 99国产精品久久久久久久久久久| 午夜一区| 亚洲精品白浆高清久久久久久| 五月丁香啪啪综合| 超碰人人操| 26uuu欧美日本| 亚洲丁香五月深爱五月| AV 3P| 久这里只有精品99| 天堂婷婷五月在线| 国产日批视频| 99.色| 99热在线里有精品| 天天干-天天日| 亚洲五月天第一综合干| 九九热这里精品| 韩日在线熟女| 我爱宗和色| 激情网五夜婷婷| 婷婷大香蕉| 五月丁香久久网| 婷婷色婷婷| 色色色色色色色色色色色色色色,网站| 丁香五月大片| 日本激情五月天‘| 激情五月天社区| 五月丁香色综合| 激情网婷婷五月天| 色色色99| 亚洲亚洲人成综合网络| 超碰熟女农村在线69| 97丨九色丨国产丨PORNY| 极品人妻VIDEOSSS人妻| 丁香婷婷五月激情四射网| 变态 另类 在线| 色六月 婷婷| www.玖玖九| 午夜AV网| Av九九| 热99国产精品| 日韩久久这里只有精品| 国产这里只有精品| 五月丁香综合啪啪| 影院久久久| 婷婷五月天久久综合88| 天天色天天爽| 五月天久久网站| 丁香五月av| 色丁香五月天| 岛国在线观看91| 色婷婷精品视频在线播放| www.com.色色| 99激| 日91高清无玛| 欧美色综合天天久久综合精品| 国产五月视频| 91丨九色丨熟女|新版| 伊人网欧美在线男人天堂五月丁香| 色五月婷婷五月丁香五月激情五月视频| 五月丁香六月日逼| 成人一级片| www.婷婷| 99热这里是精品| 色99免费视频中文| 99re在线视频| 五月丁香激情婷婷综合| 91狠狠综合久久| AA片在线观看视频在线播放| 五月婷婷六月丁香玖玖玫瑰91| 五月婷婷黄色| 五月激情婷婷女| 色婷婷888| 国产做A爰片毛片A片美国| 亚洲人成播放网站| 亚洲久久婷婷丁香五月天| 丁香五月天堂网| 九九视频在线观看视频6 | 操逼视频网址| 五月丁香久久综合精品| 强伦轩人妻一区二区电影| 激情综合色婷婷啪啪五月天| 欧美婷婷六月丁香综合色| 婷婷丁香五月天亚洲| 五月婷婷影院| 91色干| 另类图片 五月激情| 超碰9| www.91AV.com| 日本熟女内射| 这里只有精品96| 99热超碰在线| 九九re精品视频在线观看 | 婷婷综合激情五月综合| 激情小说婷婷| 欧美日韩99| 五月婷婷综合在线视频小说| 91久女| 久这里只有精品| 久操激情| Www99热| 色五月丁香伊人五月| 日本熟妇乱妇熟色A片蜜桃| 色婷婷电影网| 99热免费在线| 色 免费网站视频| 91综合色| 九九AV在线| 丁香六月久久| 九九色院| 婷婷涩涩五月天| 另类图片五月天激情| 99热这里只是精品| 九九精品9| 婷婷综合成人五月天| 国产一级片| 色色五月婷| 五月丁香色| 97视频.干com| 婷婷五月成人| 草美女在线观看视频在线播放| 91久久1118| 婷婷五月精品中文字幕| 亚洲在线操| 亚洲AV网站在线观看| 激情綜合網址| 亭亭五月丁香综合欧美| 九九香蕉网| 久久网站观看免费欧洲国产| 五月婷婷综合激情小说| 天天骑天天操| 日本91在线| 天天干天天干天天干天天干天| 色婷婷av在线| 香蕉AV福利精品导航| 99热这里只有精品手机在线观看| 无码日本精品XXXXXXXXX| 激情com| 欧美成人精品三区综合A片| 夜夜爽天天| 日本欧美成人片AAAA| 国产热精品| 九九色黄色| 激情五月婷婷综合| 操操操操操操婷婷五月天| 91色婷婷综合久久中文字幕二区| 色五月天成人在线| 九9九9无码| 成人电影在线免费试看| 五月天婷婷在线观看精品男人| 婷婷丁香社区| 精品色色| 日操五月婷| 黄色高清无码| 五月天社区| 五月六月丁香婷婷在线观看| 婷婷久久在线| 婷婷五月天小说| 婷婷五月综合啪| 91婷婷在线观看| 五月婷久久| 色 丁香婷婷| 99国产97在线,| 激情久久肏屄视频| 日韩综合大黄| 久久精品婷婷| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 精品欧美一区二区三区久久久| 思思热在线视频99| 香蕉综合在线| 黄色aa观看aaguochan| 九九精品综合| 天天舔天天摸视频| 五月总合激情网| 亚州男人天堂婷婷五月| 五月综合色| 思思热再线视频| 五月丁香婷婷综合视频| 婷婷五月天免费99| 99色亚洲| 久热99热| 色综合色色| 热的国产,热的综合,热的有码| 色婷大香蕉| 色色国产| 婷婷五月天久久| 婷婷五月另类网站| 99久久综合精品五月天| 亚洲五月丁香综合网| 中文字幕高清av| 99热精品免费| 二色AV| 久久44| 第五色婷婷| 九九热在线视频观看| 99re这里只有精品国产99| 97婷婷在线视频| 人妻熟女一区二区AV| www,久久久| 在线观看中文字幕| 婷婷色av| 亚洲小视频| 琪琪理论片| 9 1超碰九色| 免费操超碰| 男女啪啪做爰高潮无遮挡| 亚洲综合激情五月久久| 久99久在线| 丁香六月综合激情| 狠狠操狠狠操AV| 欧美婷婷五月天综合| 激情深爱婷婷网| 久久99网站| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 久热网站| 99精色| 激情久久综合网| WWW丁香五月| 激情网第九色| 婷婷丁香五月天婷婷| 日韩超碰在线| 国产操碰| 色色色777| 婷婷五月天成人网| 极品色丁香| 婷婷丁香五月亚洲欧美| 色六月天天激情综合网| 5月丁香婷婷| 狠狠搞综合色| 天天色综合综合| 亚洲婷婷五月天激情综合| 婷婷五月天激情在线观看 | 大色鬼综合| 嫩草AV久久伊人妇女超级A| 麻豆AV一区二区三区| 东京热免费视频| 99欧美| 噼里啪啦在线观看免费完整版视频| 97av在线视频| 伊人婷婷99热精品| 久久丁香九| 99热99思午夜精品| 玖玖无码中文| 久久五月天合网| 狠狠另类视频| 天天五月天综合网址| 欧洲色| 99re视频在线播放| 五月婷婷六月天| 在线视频区| 爱iii做iiii日日| www.99免费视频| 国产五月天婷婷| 婷婷久久久| 99热6这里之有精品| 色9色| www激情婷婷com| 中文字幕丰满人妻无码专区| 另类小说色婷婷| 搡BBBB搡BBB搡五十| 1024人妻无码中文字幕| 六月丁香综合| 五月天激情中文字幕| 天天久| 婷婷六月激情| 9热久久在线| 伊人网大香| 五月天成人伊人| www.五月.com| 另类天堂| 偷拍91九色| 激情婷婷丁香五月天小说| 色宗合久久五月婷婷| 五月婷婷成人| 国产偷人爽久久久久久老妇APP| 激情婷婷黄色五月| 久久五月人人摸| 色婷婷社区| 日韩无码色色| 97五月综合网| 99热这里只有精品2016| 国产67194| 久久久久久久久久久久久久久久一道本| 婷婷五月天综合AV| 日本ww亚洲| 久久久www| 偷拍99在线视频观看| 婷婷丁香五月亚洲欧美| 99久在线精品99re5热视频| 开心五月深爱五月| 久久99婷婷| 五月婷婷狠狠干| 五月天色综合| 2017狠狠干| 久久九九在线视频| 高清无码网址| 全亚洲最大的婷婷五月天网站COM| 欧美色五月天| 91干婷婷| 人妻久久久久久久久妻久久久久| 色五月天在线观看| 中美日韩成人在线| 五月天激情小说网| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 99热这里只有精品9| 成人人操| 天天色色天天| 五月天婷婷激情六月久久| 日本a片网址| 色五月婷婷综合| www.玖玖婷婷在线| 激情五月丁香六月婷婷| 色无婷婷| 天天综合永久| 丁香五月婷中字在线| 婷婷丁香色五月天久久88| 美女网黄| 在线观看的av| 五月丁香综合| 婷婷五月69| 色色色国产| 99ri在线播放| 五月激情婷婷综合| 久久久久婷婷| 亚洲操操操| 久久婷婷五月综合伊人| 色综合激情| 影音先锋一区| 人人摸人人搞| 丁香五月婷婷啪| 开心激情婷婷| 丁香五月天在线直播观看| 丁香五月电影| 色婷婷a三区麻| 九九色婷婷五月天| 五月婷婷说| www.久操| 天堂网啪啪| 欧洲一区二区| 伊人五月综合网| 激情五月深爱五月观看| 极品人妻VIDEOSSS人妻| 色婷婷五月天小说网| 蜜乳久AV| 天天激情欧美美女| 亚洲无码播放| 无码少妇高潮喷水A片免费| 日韩AAA| 熟女强人妻一区二区三区四区无| 五月天久久综合婷婷丁香| 欧美激情 日韩无码 婷婷 五月天| 激情五月丁香五月| www.henhenl| 99这里只有精品视频| WWW夜夜| 色婷婷很很丝袜| 少妇激情五月天| 久久久久8888| 国外亚洲成AV人片在线观看| 懂色AⅤ| 9福利性视频欧美| 亚洲永久四色| 狠狠干五码| 9久久久| 五月天色区| 99re26视频| 久久影视婷婷五月| 亚洲综合五月天婷婷丁香| 五月婷婷综合色拍| 丁香五月激情网| 久久曰曰| 久久久噜噜噜久久人妻| 嫩草AV久久伊人妇女超级A| 日韩色色色色| 亚洲第一黄网| 婷婷五月天美女视频| 4438激情网| 免费看欧美成人A片无码| 欧美va欧美va差| 伊人久久99| 五月丁香六月片| 久久大香蕉同僚| 天天操天天操综合| 五月婷婷色情| 色黄啪啪| 免费无码毛片一区二区A片| 色五月婷婷色五月婷婷色五月婷婷| 久久九色| 99日在线观看视频| 99re6在线视频精品免费| 99视频| 五月色情婷婷开心五月色情| 欧美日本国产欧美日本韩国99| 久久久天堂国产精品女人| 99碰网站| 色中色综合| 激情欧美婷五月| 香蕉操亚洲| 另类国产欧美视频| 中文字幕 中文字幕明步| 丁香六月激情| www激情| 五六月丁香激情视频| 国产亚洲在线观看| 玖玖婷婷五月| 91热手机在线| 婷婷九九色| 免费看欧美成人A片无码| 五月婷婷三级| 色婷婷六月天| 五月激情婷婷在线| 99热只有精| 丁香六月激情综合网| 这里只有精品免费在线视频| www.久久爱.com| 爱狠射| 五月丁香亭亭激情操逼网| 丁香六月综合| 天天插天天爽| av人人干| 婷婷五月天伊人| 色婷婷操逼| 五月天婷婷基地综合网| 99热碰碰| 亚洲黄色精品| 色99在线视频| 婷婷99中文字幕| 日韩av在线免费观看| 五月天婷婷乱论小说| 五月花丁香婷婷| 五月四色婷婷| 五月天激情小说婷婷基地| 五月天婷婷青青| 亚洲第精品| 无码中文一区二区三区| 六月丁香婷婷尤物| site:feetmall.com| 思思99热这里只有精品6| 狠狠干激情五月| 亚洲五月丁| 四色女婷婷| 婷婷五月天com| 色五月成人在线| 伊人久久丁香婷婷六月五月综合| 五月丁香基地| 丁香婷婷基地| 天堂中文国产| 99视频| 99视频| 日日夜夜九九| 久久婷婷丁香五月宗合| 在线成人网站| 丁香五月婷婷成人色区| 99热这里只有免费| 丁香五月天婷婷中文字幕| 成人短视频在线免费观看| 五月婷婷av| 久久激情视频| 婷婷五月综合中文字幕| 91疯狂操操操操| 亚洲思思热久| 亚洲、热| av在线观看网站| 日本欧美成人片AAAA| 久久精品99国产精品日本| 综合久久激情久久| 亚洲AV免费国产电影| 五月丁香激情四射综合| 婷婷色天香| 五月婷婷婷婷| www.99热| 久热在线观看视频9| 五月丁香婷婷色色色| 色情五月丁香婷婷网| 日本成人小说婷婷六月| 婷婷综合精品| 国产精品成人AV在线观看春天| wwww.9免费视频| 九月婷婷久久| 五月天色婷婷网| 亚洲超碰在线| 九月停停| 五月婷婷偷| 亚洲久久激情| 51精品国自产在线| 久久与婷婷| 伊人丁香花综合影院| 夜色综合网| 色五月激情五月| www.9797国产| 国产精品久久久60086| 永久免费视频| 玖玖@三月天天丁香婷婷| 91九色首页| 另类激情五月天| 婷婷五月天伊人| 国产色香蕉精品五夜婷| 91操色| 大香蕉网站,大香蕉综合| 亚洲三级无码| 99开心五月五月丁香激情| 五月丁香免费看| 国产精品久久久久久久久久久久| 日韩超碰在线| 色色网站在线| 婷婷丁香九色| 就99这里只有精品| 色婷婷久久久| 9超碰在线| 久久网思思| 狠狠色婷婷777| 先锋资源91| 开心激情网五月| 人妻熟女一区二区AV| 色综合婷婷| 免费看成人747474九号视频在线观看| 综合久久五| 五月婷成人网| 99成人| 9l视频自拍9l九色成人| 激情 婷婷| txt五月激情四射网综合俺也来了| 插插干干干色| 色婷婷丁香五月| 色很很96| 色婷婷成人| 一本大道伊人AV久久综合| WWW色五月天| 亚洲av成人在线| 日韩色色一区| 五月丁香六月婷婷色日| 日日操夜夜操中国无码| 丁香婷在线| 青青草青青草五月天| 激情五月天综合图片小说网站| 六月激情婷婷| 五月丁香六月色婷婷综合五月天| 久久色情| 99热精品在线| www.夜夜操.com| 欧美日韩成人在线| 天天弄天天操| WWW.激情| 欧美成人一区二区三区在线视频| 日本色婷婷综合| 狠狠精品干练久久久无码中文字幕| 青青热视频| 五月丁香影视| 99re在线观看视频| 色五月激情五月| 五月天自拍视频| 婷婷五月天99综合网站| 色婷婷六月天在线| 丁香五月天堂网AV| 婷婷月综合| 日本在线视频www色| 99久在线精品99re8| 激情5月舔| 亚洲成av人影院| 狠狠久综合| 日韩欧美婷婷丁| 欧美狠狠色| 九九久久99| 亚洲中文字幕在线观看| 久久久久久五月天| 一区三区视频有限公司| 爱操人妻| 开心婷婷五月天电影院| 美女被操一区二区| 少妇搡BBBB搡BBB搡毛茸茸 | www.henhenl| 97碰在线视频| 色色综合视频| 欧美视频五区| 狠狠综合| 亚洲色模骚货| 丁香婷婷五月激情| 大地9中文在线观看免费高清| 综合色综合| av在线免费网站 | 日本综合99| 五月天激情四射网站| 99在线精品视频观看免费下载| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 丁香六月色婷婷| 丁香婷婷性爱| 久久综合五月天激情小说网站 | 色99热| 久草婷婷| 丁香六月婷婷久久综合| 人人爱干人人爱草| 五月婷av| 国产激情综合| 天天爽天天摸天天爱| 国产人妻操逼| 婷婷五月中文在线视频| 午夜丁香婷婷| 亚洲视频另类| 天天插天天爽| www色五月| 另类图片五月天婷婷| 99久免费视频| 亚洲精品国产A久久久久久| 日日噜噜夜夜狠狠久久丁香五月| 玖玖在线资源视频| 久久视频婷婷| 婷婷五月花.97| 色5月婷婷| 91成人性爱视频| 色婷婷五月天激情久久| 色人久夂| 9|在线观看视频| 99色综合| 色啪综合| 久久这里有精品| 色五月婷婷激情五月| 丁香大香蕉| 99热亚洲综合| 五月婷婷很很色| 99热思思| 久激情网| 深爱激情五月天| 色久综合天天做视频| 婷婷丁香色五月天久久88| 91碰超| 久久全色| 欧美天堂婷婷日韩| 噼里啪啦完整版中文在线观看| 伊人激情啪啪| 超碰爱爱爱| 五月丁香综合激情网| 婷婷五月天免费| 五月婷婷丁香| 婷婷久久五月| 激情综合网五月| 看片视频在线免费日产在线看| 亚洲色欲AAAAAA| 激情网站综合五月天| 五月丁香六月在线欧美| 久久人人九九| www.99精品视频| 久草网大香视频| 九色激情| 亚洲123区高清入口| 丁香久久在线| 超碰在线免费观看日韩| 精品亚洲国产成AV人片传媒| 超碰av在线| 婷婷九月色| 色99视频| 免费视频无码| 国产精产国品一二三在观看| 被强行糟蹋的女人A片| 国产毛片精品一区二区色欲黄A片| 五月丁香综合在线| 日本狠狠干| 婷婷导航| 国产欧美日韩综合精品一区二区| 99re6在线视频精品免费| 人人操AV| 综合天堂AV久久久久久久| 中文字幕日本最新乱码视频| 综合AV网| 九九九AAA热视频| 婷婷新网址| 久久综合色情网站| 五月婷婷六月丁香综合| 丁香五月大香蕉| 樱花99视频| 99色1| 四色AVwww| 丁XX 成人| 综合色99| 午夜少妇在线观看视频| 第四色婷婷五月| 五月天激情美女久久| 婷婷五月天啪啪| 婷婷激情综合| 丁香六月啪啪| 五月天综合在线| 中文AV网站| 天天肏高清在线| 五月丁香婷婷网网网网| 色五月 激情婷婷 综合五月天| 欧美综合五月丁香六月婷| 亚洲免费婷婷| 91色在线/日韩| 午夜天堂一区人妻| 东北熟女高潮99综合99| 六月撸婷婷| 思思久ren热| 2025天天操| 9色在线视频| 中字幕视频在线永久在线观看免费 | 欧美日韩91| 天堂二区| 色六月婷婷| 狠狠干2007| 日日爽日日| 激情五月天电影| 视频一区二区在线| 女同激情久久av久久| 婷婷五月天 偷拍| 日韩aaa| 97人妻碰碰中文无码久热丝袜| 久热99视频在线观看| 色五月色图| 六月丁香射婷婷欧美色图片| 99热免费看| 天天日综合| 99在线视频喷水| 丁香五月花婷婷开心| 俺也高清无码高清视频| 五月激情影视| 狠狠色九月| 99热国产在| 丁香婷婷91在线观看视频| 亚洲婷婷五月天| 日韩在线99| 国产精品婷婷午夜在线观看| 九九aV| 大香蕉太香蕉视频97| 激情五月开心五月在线视频| 天天天综合网| 国产婷婷色综合AV蜜臀AV| 日日操夜夜操无码免费| 青青草视频福利| 激情小说视频图片| www.激情com| 九九九成人在线视频| 日韩啪啪视频| 成人在线视频男人的天堂4399| 天天舔天天摸天天射| 超碰在线免费| 在线91日韩| 欧美熟女乱又伦| 亚洲精品午夜国产va久久成人| 久久99jiu9| 综合网激情五月天| 久热这里只有| 大香蕉99热| 久久久久er热| 秋霞少妇AV网站| 欧美成人无码高清一区二区三区| www.9797国产| 一级性爱大片| 这里只有精彩视| 亚洲欧洲中文日韩久久AV乱码| 91人妻PORNY九色大屁股| 亚洲另类日本| 好大好粗嗯啊-一级黄色大片免费观看-成人AV| 久久久久亚洲A∨成人乱码电影| 无码人妻激情| 大伊香蕉玖玖爱| 天天操天天曰| 中文字幕av久久爽| 青青草原精品久久| 综合天堂AV久久久久久久| 色五月成人婷婷| 99热精品在线播放| 成人在线网址| 亚洲激情AV| 色五月综合网| 伊人久久艹| 99久在线精品| 久婷| 婷婷色色网| 99久久婷婷国产综合| 婷婷六月色开| 成人午夜无码视频| 97天堂| WWW.天天日| 五月天桃色深爱网| 丁香婷婷精品视频| 色五月综合网| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 五月天激情四射| 欧美性丁香色色五月天干干| 、激情六月天| 另类视频在线| 五月天婷婷开心| 九九色婷| 夜夜操天天干| 大香蕉人在线65| 在线另类视频| 亚洲色五月| 欧洲色| 开心五月婷婷在线| 国产免费av网站| 激情深爱五月天| 婷婷五月天激情综合| 五月丁香六月在线| 婷婷五月免费观看| www.99.色| 婷婷五月天激情开心网| 97婷婷狠狠| www超碰| 六月婷婷激情小说网| 欧美碰碰碰| 亚洲操逼片| 99亚洲综合| 九九久久9 9在线观看| 深爱五月激情| 91精品婷婷国产综合久久| 99热66| 六月天丁婷婷| 国产精品色婷婷久久久精品| www.色99| 婷婷色五月天综合网| 亚洲国产网站| 一起草性爱不卡视频| 色插综合网| 亚洲国产网站| 五月婷婷丁香五月| 欧美激情2025| 五月婷婷影| 欧美私人家庭影院| 99热久| 成久综合视频| 丁香深五月婷婷| 另类专区在线| 嫩BBB槡BBBB搡BBBB视频| av最新在线| 五月天精品| 99热精品中文字幕| 99视频超级精品| www久久久久久久| 色五月婷婷丁香五月| 人妻尝试久久久久久久久久久久| 九九久久高清| 99热在线观看| 五月天婷综合| 婷婷丁香基地在线| 成人电影在线免费试看| 国产精品成人AV在线观看春天| 99热精品在线观看| 美女婷婷六月色| 啪色综合| 人人摸人人操人人爱| 97资源碰碰| 国产精品热搜丁香五月婷婷| 九九国产视频| 久久婷婷东京热大香樵| AA片在线观看视频在线播放| 丁香六月综合激情| 丁香五月网| 色五月综合网| 久久五月情| 久久久av久av久片一区二区| 婷婷伊人中文字幕| 丁香婷婷五月| 五月丁香啪啪啪啪| 五月婷婷色| 色婷婷AV久久久久久久| 日韩一66精品| 五月丁香婷婷色色| 超碰伊人碰婷婷五月| 超碰成人公开| 久久这里只有精品热在99| www.狠狠操| 久久激情五月网| 99er6| 天天骑日日爽| 久久综合无| 人妻操日日| 99热在线观看成人| 另类少妇人与禽zOZZ0性伦| 久久色婷婷| 操97免费超级视频 | 国产精品视频免费看| 四色AVwww| 五月丁香六月停停| 丁香五月婷婷姐| 人妻狠狠操| 色婷婷久久综合| 日本久久人| 人人操91色| 婷婷五月丁香激情图片| 综合在线观看99| 久久五月婷6 9| 天天日天天插| 国产激情综合五月久久| 激情五月天综合| 五月香婷婷| 婷婷五月色| 欧美一级色| 一起草av| 久色视频| 俺去也婷婷| 五月花婷婷| 婷婷伊人綜合中文字幕小说| 五月天婷婷久久视频| 思思久久精品| 久久99网| 99热精品在线在线| 99这里有精品视频| 激情五月婷婷综合| 婷婷五月花| 99视频| 精品日本视频444| 婷婷丁香91综合| 五月四色激情| Av在线不卡一区| 久久婷婷电影| 色婷婷影| 色婷婷操逼| 在线观看熟女少妇| 天天日天天摸天天| 色欲AV导航| 丝袜熟女一区二区三区| 色99最新网址| 激情五月瑟瑟| 五月天婷婷激情在线色图| 人妻视频在线| 99热91| 月月AV| 99热久草| 免费视频无码| 激情综合网五月天| 免费视频WWW在线观看网站| 日韩在线视频9色| 九月大香蕉| 99ri精品| 青青热久久综合| 99色最新在线视频网站| www.99热| 99热这里| 激情综合网激情五月婷婷| 色原狠狠综合| 欧洲毛片基地c区| 六月婷伊人| 天天日本夜夜谢| 色五月综合激情| 丁香五月五月婷婷欧美大香蕉| 色色色1网址| 五月色网| 先锋av性爱成人电影| 亚洲色频| 99自拍视频在线| 婷婷五月丁香99| 婷婷黄色| 色综合综合色| 色婷婷伊人| ..真实国产乱子伦对白在线_欧| 婷婷五月天天激情| 99在线精品观看99| 亚洲婷婷成人五月天| 99日本黄站| 无码 av电影| 激情99| 婷婷五月天视频在线观看| 五月天婷婷AV| 日本强伦片中文字幕免费看| 伊人网啪啪| 五月天激情在线视频| 婷婷久月| 一级片操逼视频| 久久婷婷色色| 天天五月情| 婷婷五月天成人| 狠狠综合区| 中文字幕簧片| 婷婷色丁香五月| 久久九九激情五月天 | 色综合天天天天做夜夜| 中文av网| 99免费在线视频| 日逼免费视频 | 天天做天天爱| 99在线精品免费视频| 五月婷精品| 日韩在线婷婷五月天综合| 色播五月婷婷| 婷婷丁香花五月天| 九九视频这里只有精彩| 99精品在线播放| 亚洲情色一区| 色色色色色色色色色色色色色色,网站| AV性爱在线| 操日视频| 五月花激情| 亚洲免费综合一区| 婷婷五月激情热播| 婷婷情色五月天| 去色色五月天| 这里只有精品在线播放| 色婷婷久久| 超碰成人在线观看| 成人va视频| 热久免费视频9| 色婷激情网| 婷婷五月色| 99视频内射三四| 久久五月激情综合| 九九久久免费视频44| 婷婷五月天美女视频| 成人国产欧美大片一区| 久久99这里只有精品| 五月丁香婷中文| 婷婷激情六月综合| 俺去也婷婷| 激情综合网站| 天天舔天天操| 亚洲成人av在线观看| 成人色色视频| 综合久久狠狠| 色色色色色色97| 欧洲MV日韩MV国产| 欧美性爱特黄一级aaaassss| 91丨九色丨熟女高潮| se99高清无码| 天天日天天色| 五月天婷婷色在线视频免费观看| 色五月天丁香| 丁香六月婷婷开心| www久久久| 九九av| 日本久久天堂| 狠狠婷婷爱| AA片在线观看视频在线播放| 热的国产,热的综合,热的有码| 丁香五月成人| 五月停停直播| AⅤ网站在线看| 女人天堂 AV| 久re热视频|