電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 60|回復(fù): 0
收起左側(cè)

借助Serial Plot軟件觀測(cè)Flash頁編程執(zhí)行時(shí)間

[復(fù)制鏈接]

302

主題

307

帖子

1896

積分

三級(jí)會(huì)員

Rank: 3Rank: 3

積分
1896
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2021-11-1 23:14:00 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家介紹的是i.MXRT系列FlexSPI驅(qū)動(dòng)Flash頁編程執(zhí)行時(shí)間。
# k1 C2 \( Z7 i( ]! U' W4 e痞子衡之前寫過一篇文章 《串行NOR Flash的頁編程模式對(duì)于量產(chǎn)效率的影響》,簡(jiǎn)要分析了 NOR Flash 的 Page Program 命令不同模式對(duì)于整體量產(chǎn)時(shí)間的影響,文章僅從理論計(jì)算角度做了分析,假定了 Flash 中所有 Page 擦寫表現(xiàn)都是一致的,但是每個(gè) Page 的表現(xiàn)真的是完全一致嗎?今天我們從一個(gè)客戶問題出發(fā)來探討下這個(gè)話題:
- B! j% N. j, L2 D一、引入客戶問題最近有一個(gè) i.MXRT1170 客戶反饋,他們的應(yīng)用程序里 IAP 功能代碼對(duì)于 Flash 擦寫表現(xiàn)不穩(wěn)定。他們的 IAP 代碼就是移植的 \SDK_2.10.0_MIMXRT1170-EVK\boards\evkmimxrt1170\driver_examples\flexspi
* V' E/ z0 f7 l9 }6 j0 ?or\polling_transfer 例程,F(xiàn)lash 選用得跟官方 EVK 上一樣的型號(hào) IS25WP128-JBLE,測(cè)試代碼會(huì)把整個(gè) Flash 的 16MB 循環(huán)擦除寫入,反復(fù)進(jìn)行測(cè)試,在測(cè)試過程中發(fā)現(xiàn)的部分區(qū)域表現(xiàn)速度較慢,這個(gè)慢的定義是在部分 256 字節(jié)(一個(gè) Page)寫入時(shí),寫入 API 返回時(shí)間較長(zhǎng)(因?yàn)槭禽喸兡J剑欠祷貭顟B(tài)是正確的。
9 I: ^$ t% V$ ]1 U4 D由于客戶并沒有進(jìn)一步給出 Page 寫入快慢時(shí)間分別是多少,痞子衡只能先盲猜。既然寫入 API 返回狀態(tài)是正確的,那說明 FlexSPI 驅(qū)動(dòng)是能正常工作的,先排除板級(jí)硬件設(shè)計(jì)問題。那么只剩下兩種可能:一、FlexSPI 軟件驅(qū)動(dòng)執(zhí)行穩(wěn)定性問題;二、Flash 本身 Page 表現(xiàn)一致性問題。這兩個(gè)問題都可以通過觀察統(tǒng)計(jì)全部 Page 的寫入時(shí)間來進(jìn)一步確認(rèn)。對(duì)于第二個(gè)可能性,從 Flash 手冊(cè)里我們可以得知 Page 寫入命令的等待時(shí)間典型值是 0.2ms,最大值是 0.8ms,但這個(gè)表述并沒有明確這是針對(duì)不同 Flash 芯片而言,還是針對(duì)同一 Flash 內(nèi)不同 Page 而言。

發(fā)表回復(fù)

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表