0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

NOR閃存提升OTA固件升級能力

7vzo_Cyp ? 2019-07-02 15:33 ? 次閱讀


Cypress博客文章,原文作者Pritesh Mandaliya,略有刪改)

在這個(gè)世界上,既沒有完美到毫無缺點(diǎn)的東西,也沒有糟糕到毫無優(yōu)點(diǎn)的東西,凡事均有好壞兩個(gè)方面。

這句話同樣也適用于數(shù)量不斷增加的連接設(shè)備。誠然,“互聯(lián)”使這些設(shè)備更加容易受到攻擊,但我們認(rèn)為,這同樣也使它們有機(jī)會變得更加安全。

固件無線(FOTA)升級,可用于遠(yuǎn)程修復(fù)錯(cuò)誤并增強(qiáng)系統(tǒng)性能。對于偏遠(yuǎn)地區(qū)應(yīng)用或因本身性質(zhì)而需持續(xù)升級的應(yīng)用(包括無線基礎(chǔ)設(shè)施、智能工廠和車聯(lián)網(wǎng))而言,F(xiàn)OTA尤其有用。


但是,任務(wù)關(guān)鍵型系統(tǒng)在進(jìn)行FOTA升級時(shí)須格外謹(jǐn)慎,因?yàn)樗鼈冊谏夁^程中根本承受不起任何失敗。

對于這些系統(tǒng),進(jìn)程必須對通信錯(cuò)誤免疫,并且在升過程中,要盡量減少系統(tǒng)暫停。為了確??煽啃?,必須能夠在系統(tǒng)層面實(shí)現(xiàn)此功能,并且要求芯片具有強(qiáng)大的FOTA功能。

每臺設(shè)備都需要存儲器來保存軟件/固件代碼,而閃存通常是選擇的媒介。FOTA的主要目的,就是升級閃存中的代碼。當(dāng)前這一代主機(jī)設(shè)備,通常只使用內(nèi)部閃存或內(nèi)/外部閃存組合。

然而,隨著系統(tǒng)復(fù)雜度不斷增加,將閃存嵌入至微控制器變得愈發(fā)困難,而且很可能需要外部閃存及可進(jìn)行FOTA升級的主機(jī)。

當(dāng)前的FOTA升級方法包括以下幾類:


  • 無軟件/固件備份的FOTA升級:系統(tǒng)使用單個(gè)閃存器件存儲應(yīng)用軟件。如果只有一個(gè)閃存器件,則需要在升級過程中暫停該應(yīng)用。這樣的應(yīng)用通常擁有一個(gè)具備基本功能且內(nèi)存有限的主MCU

  • 通過軟件/固件備份進(jìn)行FOTA升級:高端MCU增添第二個(gè)閃存器件,以克服升級期間暫停應(yīng)用的需要。新增的閃存允許應(yīng)用在進(jìn)行升級時(shí)繼續(xù)運(yùn)行。

  • 使用“黃金”軟件/固件備份進(jìn)行FOTA升級:系統(tǒng)使用三個(gè)閃存器件。通常,一個(gè)分區(qū)(或Die)包含當(dāng)前軟件,第二個(gè)分區(qū)用于升級代碼,第三個(gè)分區(qū)用于存儲軟件的“黃金”副本——如果當(dāng)前及新軟件損壞,系統(tǒng)可以恢復(fù)至該副本。


NOR閃存更加適合FOTA



如今的NOR閃存器件可以實(shí)現(xiàn)更加可靠的FOTA升級,包括:


  • 同步讀/寫操作:最先進(jìn)的NOR閃存器件具有靈活的內(nèi)存庫(Bank)架構(gòu)(即一組扇區(qū)),可以從一個(gè)內(nèi)存庫連續(xù)讀取數(shù)據(jù),同時(shí)在另一個(gè)內(nèi)存庫執(zhí)行擦除/編程功能。這被稱為同步讀/寫操作,是FOTA升級過程的理想選擇。它允許主機(jī)系統(tǒng)在一個(gè)內(nèi)存庫中編程或擦除,然后立即從另一個(gè)內(nèi)存庫中同步讀取,從而提高系統(tǒng)整體性能。因此,它可以防止系統(tǒng)在等待編程或擦除操作時(shí)發(fā)生暫停。

  • 編程/擦除恢復(fù)/暫停:這是NOR閃存的另一個(gè)重要功能,可大大提高FOTA操作的可靠性。它允許系統(tǒng)中斷編程/擦除操作,以便從任何非編程/擦除暫停扇區(qū)讀取數(shù)據(jù),一旦讀取操作完成,則恢復(fù)編程/擦除操作。

  • 全局唯一標(biāo)識符(GUID)分區(qū)表:為將此方法用于NOR閃存器件,主機(jī)則需要對閃存進(jìn)行分區(qū)。閃存器件包含一個(gè)主分區(qū)表(若主分區(qū)損壞,則包含輔助分區(qū)表),用來描述如何劃分和移植內(nèi)存。其余扇區(qū)在兩個(gè)應(yīng)用之間進(jìn)行劃分。

  • 存儲和下載(SnD):使用這種方法,系統(tǒng)在通電后立即將NOR閃存數(shù)據(jù)復(fù)制到RAM器件。MCU將NOR閃存器件的數(shù)據(jù)復(fù)制并存儲到RAM設(shè)備后,從RAM器件讀取應(yīng)用軟件,并可以使用三種FOTA升級方法中的任意一種在閃存中執(zhí)行FOTA升級。


NOR閃存器件具備高性能和高密度、多晶粒封裝解決方案及同步操作等特點(diǎn),可實(shí)現(xiàn)穩(wěn)定、可靠的FOTA升級,同時(shí)節(jié)省主板空間并降低總成本。


- 相關(guān)閱讀推薦-



點(diǎn)擊“閱讀原文”,了解更多賽普拉斯信息



原文標(biāo)題:NOR閃存提升OTA固件升級能力

文章出處:【微信公眾號:Cypress賽普拉斯半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 賽普拉斯
    +關(guān)注

    關(guān)注

    28

    文章

    391

    瀏覽量

    87641
收藏 人收藏

    評論

    相關(guān)推薦

    NAND閃存NOR閃存有什么區(qū)別

    NAND閃存NOR閃存是兩種常見的閃存存儲器技術(shù),它們在多個(gè)方面存在顯著的差異。以下將從技術(shù)原理、結(jié)構(gòu)、性能特點(diǎn)、應(yīng)用場景以及發(fā)展趨勢等方面對兩者進(jìn)行詳細(xì)比較。
    的頭像 發(fā)表于 08-10 16:14 ?1903次閱讀

    S3N8R16工程代碼里面只要調(diào)用了wifi、藍(lán)牙、mqtt等相關(guān)接口,編譯出來的固件拿去ota升級升級不了,為什么?

    碰到個(gè)很奇怪的現(xiàn)象,我的工程代碼里面只要調(diào)用了wifi、藍(lán)牙、mqtt等相關(guān)接口,編譯出來的固件拿去ota升級升級不了,沒有調(diào)用就能正常升級
    發(fā)表于 07-19 07:31

    ESP8266 OTA升級失敗的原因?

    我正在使用自定義服務(wù)器來升級 esp8266。我可以從服務(wù)器下載圖像,但總是升級失敗。 我將以下.bin文件下載到閃存中(下載前,我擦除整個(gè)閃存): ------------ 2
    發(fā)表于 07-11 07:45

    ESP8266 OTA升級不成功的原因?

    我正在使用最新的 RTOS SDK 版本 1.5 ESP8266。我使用自定義服務(wù)器進(jìn)行OTA升級。 有時(shí) OTA 升級成功,有時(shí)即使閃爍了正確的圖像,
    發(fā)表于 07-10 06:14

    esp8285 1MB使用flash download tool刷固件時(shí)flash size選錯(cuò)了, OTA失敗能救不?

    那邊的設(shè)備固件, 請問這種情況, 除了讓客戶把設(shè)備寄回來之外, 還有沒有什么辦法能讓客戶那邊的設(shè)備, 通過OTA升級更新程序呢?
    發(fā)表于 07-09 07:31

    esp32c3同時(shí)打開BLE和WIFI的功能,固件都1MByte了,OTA時(shí)可以用差分升級嗎?

    如題,esp32c3同時(shí)打開BLE和WIFI的功能,固件都1MByte了,OTA時(shí)可以用差分升級嗎。 還有就是怎么優(yōu)化下固件大小?
    發(fā)表于 06-18 07:05

    esp32-s3 ota固件升級報(bào)錯(cuò)怎么解決?

    a new connection E (118466) HTTP_CLIENT: Connection failed, sock < 0 連上wifi后,通過ESP HTTPS OTA進(jìn)行固件升級報(bào)錯(cuò),希望能得到解決,感
    發(fā)表于 06-17 08:30

    請問esp32 ota升級如何獲取更新進(jìn)度?

    所用的是esp32-s2 idf:4.4調(diào)用esp_https_ota API進(jìn)行固件升級,想獲取更新進(jìn)度,但不知道怎么實(shí)現(xiàn),有人做過或者有思路指點(diǎn)一下嗎?
    發(fā)表于 06-14 07:20

    ESP32-C3藍(lán)牙固件升級速度低怎么提升?

    通過藍(lán)牙接收數(shù)據(jù),每幀128字節(jié),通過調(diào)用esp_ota_write寫入FLASH,整個(gè)固件760多K,發(fā)現(xiàn)整個(gè)過程耗時(shí)很久,有辦法提升嗎?
    發(fā)表于 06-14 07:05

    ESP-IDF4.4 OTA升級失敗的原因?

    ESP-IDF4.4 OTA 功能,在啟動(dòng)OTA功能后下載固件過程中出現(xiàn)wifi無Internet訪問,然后很快網(wǎng)絡(luò)恢復(fù),需要等待很久后OTA升級
    發(fā)表于 06-06 08:19

    ota固件升級成功后,重啟esp32-s3出現(xiàn)警告是怎么回事?

    ota固件升級成功后,重啟esp32-s3。 拋出了一個(gè)警告,如下:Code: Select all Warning: checksum mismatch between flashed
    發(fā)表于 06-06 07:09

    如何編譯OTA時(shí)的加密固件?

    使用的IDF為5.1.2,在新版OTA例程中,有個(gè)pre_encrypted_ota示例,是用來加密OTA固件的。我將他整合到了自己的工程中。 問題: 1.添加了加密組件之后,我再
    發(fā)表于 06-05 08:28

    ZDP1440系列小技巧—如何OTA差分升級顯示素材?

    ZDP1440是一款基于開源GUI引擎的圖像顯示專用驅(qū)動(dòng)芯片,支持U盤、SD卡本地升級UI固件,同時(shí)也支持通過UART/SPI方式進(jìn)行OTA升級,本文將介紹如何
    的頭像 發(fā)表于 05-06 14:01 ?791次閱讀
    ZDP1440系列小技巧—如何<b class='flag-5'>OTA</b>差分<b class='flag-5'>升級</b>顯示素材?

    CYUSB3KIT-003如何集成一個(gè)NOR閃存?

    我有一個(gè) CYUSB3KIT-003。 我需要集成一個(gè) NOR 閃存,我可以從中將固件讀取到 RAM,然后 NOR 閃存的一部分內(nèi)存應(yīng)該EV
    發(fā)表于 03-05 07:23

    ota升級是什么意思 ota升級有什么用

    OTA(Over-the-Air)升級是指通過無線網(wǎng)絡(luò),將軟件、固件或系統(tǒng)的新版本傳輸?shù)街С值脑O(shè)備上進(jìn)行更新和安裝的過程。這一技術(shù)廣泛應(yīng)用于手機(jī)、智能電視、汽車等各類智能設(shè)備中。本文將詳細(xì)介紹
    的頭像 發(fā)表于 02-02 10:25 ?5305次閱讀