加入星計劃,您可以享受以下權益:

  • 創(chuàng)作內容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 一、準備工作
    • 二、開始測試
  • 推薦器件
  • 相關推薦
  • 電子產業(yè)圖譜
申請入駐 產業(yè)圖譜

eMMC啟動時間知多少?(RT1170篇)

05/15 11:50
1859
閱讀需 9 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是恩智浦i.MX RT1170 uSDHC eMMC啟動時間。

本篇是 i.MXRT1170 啟動時間評測第五彈,前四篇分別給大家評測了 Raw NAND 啟動時間(基于 MIMXRT1170-EVK_Rev.B)、Serial NOR 啟動時間(基于 MIMXRT1170-EVB_Rev.A2)、1bit SPI NOR 恢復啟動時間(基于 MIMXRT1170-EVK_Rev.C)、Serial NAND 啟動時間(基于 MIMXRT1170-EVKB_Rev.B)。

關于 i.MXRT 系列從 SD/eMMC 啟動使能方法,痞子衡寫過兩篇文章,分別是 《RT600從eMMC啟動》、《RT1050從SD啟動》,文章里的方法其實是通用整個 i.MXRT 系列的(僅一些細微差異)。最近痞子衡在支持一個 RT1170 客戶,他們使用了 eMMC 啟動,并且將板子寄給了痞子衡幫助調試問題,趁此機會,痞子衡就在客戶板卡上詳細測試一下 eMMC 啟動時間:

一、準備工作

1.1 知識儲備

除了依賴的底層數據傳輸接口外設類型不同之外,SD/eMMC 啟動流程和 Serial NAND/Raw NAND 啟動流程幾乎是一致的,因為存儲介質角度而言兩者都是 NAND,這里就不過多展開了,參考痞子衡前面測評文章 1.1 節(jié)。

不過這里需要特別注意的是,前面測評的啟動設備(串并行NOR/NAND)讀寫數據率性能接近于接口速率(當然 NAND 有額外 ECC 校驗時間),但是 SD/eMMC 因為涉及壞塊管理/磨損平衡處理等,設備內部處理會產生更多時間開銷,所以實際數據讀寫率跟數據接口速率之間存在一定差異,這個差異因廠商產品里的處理算法而異,需要翻看設備芯片數據手冊。

本次測試客戶板卡上用了一顆來自江波龍的兼容 eMMC5.1 標準的 8GB 容量芯片 FEMDME008G-A8A39,在其數據手冊上接口最高速率是 400MBps(HS400模式),但是實際數據讀寫率分別是 290MBps、115MBps。

eMMC 5.1 specification compatibility
- Backward compatible to eMMC 4.41/4.5/5.0

Bus mode
- Data bus width: 1 bit (default), 4 bits, 8 bits
- Data transfer rate: up to 400 MB/s (HS 400)
- MMC I/F Clock frequency: 0~ 200 MHz

1.2 時間界定

關于時間起點和終點,參考《FlexSPI NOR啟動時間》 里的1.2節(jié),雖然此次測試用得是客戶板卡,但是時間起點我們只需要選好 POR_B 測量點即可。

1.3 制作應用程序

關于應用程序制作,參考《Serial NAND啟動時間》 里的1.3節(jié)。其實 Non-XIP 程序制作一直有一個小限制,之前的測評文章里都沒有特別強調,前段時間痞子衡終于專門寫了篇文章 《Non-XIP App一般鏈接限制》,大家可以了解一下。

1.4 下載應用程序

應用程序的下載需借助痞子衡開發(fā)的 NXP-MCUBootUtility 工具。由于 8bit eMMC 僅 uSDHC2 支持,客戶一般都將 eMMC 掛在 uSDHC2 引腳上,工具下載配置 eMMC 的時候,主要保證 instance 正確即可,至于其他速度模式方面的選擇,僅跟程序下載速度有關,并不影響 eMMC 啟動時間。

對 eMMC 啟動時間產生影響得主要是 RT1170 芯片 fuse 里的如下配置,其中紅框選項是根據硬件情況必設的,籃圈選項是用戶可按自己要求選擇的(這里也是下一節(jié)測試啟動時間的影響因子)。紫框里決定了 BootROM 運行時的內核主頻,CM7 做主核時默認是 400MHz,可高配到 700MHz,這里我們不改 BootROM 默認內核頻率配置。

1.5 示波器抓取信號

一切準備就緒,可以用示波器抓 eMMC 啟動時間了。這次痞子衡偷了個懶,就測量兩路信號,一個通道監(jiān)測主芯片 POR 信號,另一個通道監(jiān)測 GPIO 信號(App 里會拉低這個 GPIO)。與以往不同的是,這次 GPIO 選得是復用 BOOT_CFG 功能的 pin,這個 pin 加了外部強上拉,下一節(jié)測試結果小節(jié)里會有額外有趣發(fā)現(xiàn)。

二、開始測試

在公布結果之前,痞子衡先帶大家分析一下示波器抓取的啟動時間波形,方便大家理解后續(xù)表格里的各項組成。POR 信號電壓上升時間比較緩慢,其供電來自于 VDD_1V8,我們時間起點暫取其標準有效值 70% - 1.2V 處。

此外我們可以看到 GPIO 在 POR 拉高之前早就被拉高,說明 GPIO 上電早于 POR,這樣的硬件設計是符合 i.MXRT 上電采樣時序規(guī)范的,痞子衡有一篇文章 《RT離線無法啟動,請先查看SRC_SBMRx寄存器》 就和這點有關。

2.1 不同App長度測試

首先做的是不同 App 類型及長度相關的測試,App 分為鏈接在 ITCM 和 SDRAM 兩種(后者需要使能 BootROM DCD 初始化)。此外由于 SDRAM 空間大,因此測試多種 App 長度。所有的測試均在同一種 Boot Config 配置下,即痞子衡 《NAND型啟動設備時可用兩級設計縮短啟動時間》 一文里的配置,這也是該客戶使用的啟動配置。

從測試結果來看,eMMC 啟動時間在 1MB 以內 App 情況下相差無幾,跟 App 長度不成明顯正比關系。即使是 4MB 以內,也是看不出明顯關系,但是以 4MB 為單位來看,倒是有一定正比關系。

2.2 不同速度模式測試

因為 4MB 在 SDRAM 執(zhí)行 App 有一定代表性,痞子衡就以這個為基礎測試了不同的 Boot Config 配置組合,在 BOOT_CFG1[0] 為 Fast Boot 情況下普遍無法啟動(可能需要更多展開配置)。在 BOOT_CFG1[0] 為 Regular Boot 情況下,High Speed 比 Normal Speed 快近一倍,8-Bit DDR 比 8-Bit SDR 也快近一倍。

至此,恩智浦i.MX RT1170 uSDHC eMMC啟動時間痞子衡便介紹完畢了,掌聲在哪里~~~

推薦器件

更多器件
器件型號 數量 器件廠商 器件描述 數據手冊 ECAD模型 風險等級 參考價格 更多信息
AFBR-5715APZ 1 Broadcom Limited Transceiver, 830nm Min, 860nm Max, 1250Mbps(Tx), LC Connector, Panel Mount, ROHS COMPLIANT
暫無數據 查看
PS2701-1-F3-A 1 NEC Electronics Group Transistor Output Optocoupler, 1-Element, 3750V Isolation, LEAD FREE, PLASTIC, SOP-4
$0.74 查看
SN74AVC32T245ZKER 1 Texas Instruments 32-Bit Dual-Supply Bus Transceiver with Configurable Voltage Translation and 3-State Outputs 96-LFBGA -40 to 85

ECAD模型

下載ECAD模型
$3.65 查看

相關推薦

電子產業(yè)圖譜

碩士畢業(yè)于蘇州大學電子信息學院,目前就職于恩智浦(NXP)半導體MCU系統(tǒng)部門,擔任嵌入式系統(tǒng)應用工程師。痞子衡會定期分享嵌入式相關文章