NESU004 February   2023

 

  1.   摘要
  2.   註冊商標
  3. 1BSL 功能概覽
  4. 2詞彙
  5. 3BSL 架構
    1. 3.1 設計
      1. 3.1.1 逾時特性
        1. 3.1.1.1 介面自動偵測
        2. 3.1.1.2 命令接收
    2. 3.2 BSL 叫用
      1. 3.2.1 空裝置
      2. 3.2.2 應用程式請求
      3. 3.2.3 基於 GPIO 的叫用
      4. 3.2.4 偵錯信箱命令
      5. 3.2.5 其他
        1. 3.2.5.1 預開機應用程式驗證
    3. 3.3 記憶體
      1. 3.3.1 SRAM 記憶體使用量
    4. 3.4 BSL 配置
    5. 3.5 BSL 狀態
  6. 4開機載入程式協定
    1. 4.1 封包格式
    2. 4.2 UART 和 I2C BSL 協定
      1. 4.2.1 BSL 確認
      2. 4.2.2 周邊設備配置
        1. 4.2.2.1 UART
        2. 4.2.2.2 I2C
        3. 4.2.2.3 CRC
    3. 4.3 開機載入程式核心命令
      1. 4.3.1  通訊
      2. 4.3.2  取得裝置資訊
      3. 4.3.3  解鎖開機載入程式
      4. 4.3.4  程式資料
      5. 4.3.5  程式資料快速
      6. 4.3.6  讀回資料
      7. 4.3.7  快閃記憶體範圍清除
      8. 4.3.8  大量清除
      9. 4.3.9  原廠重設
      10. 4.3.10 獨立驗證
      11. 4.3.11 啓動應用程式
      12. 4.3.12 變更傳輸速率
    4. 4.4 BSL 核心回應
      1. 4.4.1 BSL 核心訊息
      2. 4.4.2 詳細錯誤
      3. 4.4.3 記憶體讀回
      4. 4.4.4 裝置資訊
      5. 4.4.5 獨立驗證
    5. 4.5 開機載入程式安全性
      1. 4.5.1 受密碼保護的命令
        1. 4.5.1.1 安全警示
      2. 4.5.2 BSL 輸入項
  7. 5使用開機載入程式的程式流範例
  8. 6二次開機載入程式
    1. 6.1 二次開機載入程式範例
  9. 7介面外掛程式
    1. 7.1 實作
      1. 7.1.1 初始化
      2. 7.1.2 接收
      3. 7.1.3 傳輸
      4. 7.1.4 反初始化
      5. 7.1.5 重要注意事項
    2. 7.2 Flash 外掛程式類型
    3. 7.3 覆寫現有介面
      1. 7.3.1 UART 介面 Flash 外掛程式範例
  10. 8參考
  11. 9修訂記錄

獨立驗證

架構

Header

長度

RSP

資料

CRC32

0x08

0x05

0x00

0x32

D1...D4

C1

C2

C3

C4

說明

此命令用於驗證儲存在指定記憶體範圍內的資料的 CRC。這可以更快地驗證已編程的資料。它要求資料大小至少爲 1kB。

主快閃記憶體 (應用程式記憶體)、非主快閃記憶體 (配置記憶體) 和 SRAM 記憶體允許 CRC 驗證。

註:

主機無法完全存取 SRAM 記憶體。如需詳細資訊,請參閱Topic Link Label3.3.1

受保護

地址

要驗證的記憶體區域的起始位址。A1...A4,其中 A1 是 32 位元位址中最小權重位元組。

資料

要驗證的資料大小 (以位元組爲單位),L1...L4 中 L1 是最小權重位元組。1kB <=大小 <= 64 KB。

命令傳回

BSL 確認和 BSL 核心回應了針對請求記憶體區域計算的 CRC 值。如需詳細資訊,請參閱Topic Link Label4.4.5

如果驗證命令的位址/長度無效,對應的錯誤將當作 BSL 確認後的訊息回應來傳送。請參閱Topic Link Label4.4.1

主機:80 09 00 26 00 00 00 20 00 04 00 00 A0 97 D5 2E

BSL: 00 08 02 00 3B 05 B7 F6 FE F2