女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

OTA的swap Bank AB升級方案

jf_EksNQtU6 ? 來源:ZOTECK ? 2023-08-19 14:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

“ 本文通過從芯片手冊,寄存器到代碼實(shí)現(xiàn)來梳理ota的bank AB升級方案, 舉例芯片 aurix Tc397”

01—內(nèi)存先行

首先要評估flash夠不夠,如果flash都不夠,就無從SWAP機(jī)制可談。

正常情況下,我們的芯片有6塊flash可以用。如下圖

3b666608-3dae-11ee-ac96-dac502259ad0.png

在激活OTA配置的時(shí)候,內(nèi)存映射發(fā)生了變化。如下圖

3baec92a-3dae-11ee-ac96-dac502259ad0.png

從這兩張圖可以看出來,如果打開OTA配置的話,我們實(shí)際上可以用的flash 只有7M. 當(dāng)然如果是別的芯片可用的flash會(huì)更少。這點(diǎn)是一開始就需要評估好的。否則芯片提供的機(jī)制無法滿足需求。

02—配置初始化流程

這里先放一張圖,芯片手冊提供的標(biāo)準(zhǔn)流程,后面會(huì)對每一個(gè)步驟進(jìn)行解析

3bdc01b0-3dae-11ee-ac96-dac502259ad0.png

03—運(yùn)行時(shí)流程

這里也先放一張圖,芯片手冊提供的標(biāo)準(zhǔn)流程,后面會(huì)對每一個(gè)步驟進(jìn)行解析

3c02d074-3dae-11ee-ac96-dac502259ad0.png

04—軟件實(shí)現(xiàn)

從這里開始我們要對第二三兩章的圖進(jìn)行一一實(shí)現(xiàn)。

一般來說是什么樣的流程呢,簡單的來說。下圖

3c31c08c-3dae-11ee-ac96-dac502259ad0.png

05—讀取當(dāng)前bank

當(dāng)配置完SOTA之后,下一次上電,MCU會(huì)做什么呢。會(huì)首先讀取UCB里面的SOTA配置信息。發(fā)現(xiàn)了SOTA被配置上了。則要做下面兩件事

因?yàn)榈刂分赜成淞耍L問路徑變了,什么意思呢?答:訪問自己的pflash路徑變了。直達(dá)的路線不給訪問了,都需要走上面的總線。所以讀寫自己pflash速度可能會(huì)變慢。

3c56bb1c-3dae-11ee-ac96-dac502259ad0.png

通過下面寄存器自動(dòng)寫入。

3c84c804-3dae-11ee-ac96-dac502259ad0.png

/** rief CPUx Flash Configuration Register 4 */
typedef struct _Ifx_CPU_FLASHCON4_Bits
{
    Ifx_Strict_32Bit DDIS:1;          /**< rief [0:0] Disable direct LPB access (rw) */
    Ifx_Strict_32Bit reserved_1:31;    /**< rief [31:1] internal Reserved */
} Ifx_CPU_FLASHCON4_Bits;

把當(dāng)前的bank信息寫入寄存器,沒錯(cuò)就是下面的寄存器。所以我們可以通過這個(gè)寄存器來獲取當(dāng)前所在的bank.

3ca21328-3dae-11ee-ac96-dac502259ad0.png

SCU_SWAPCTRL.B.ADDRCFG

到這里第一步讀取當(dāng)前的bank已經(jīng)清楚了,并且也清楚什么時(shí)候這個(gè)寄存器被賦值的。

下一步根據(jù)當(dāng)前的bank來選擇刷寫的地址。我們配置mcal的flashload都知道這個(gè)函數(shù)。

06—根據(jù)當(dāng)前bank來刷寫固件

FlsLoader_ReturnType FlsLoader_Write(const FlsLoader_AddressType TargetAddress,
                                     const FlsLoader_LengthType Length,
                                     const uint8* const SourceAddressPtr)

這里面其中一個(gè)形參就是mcu的具體地址。

在使用SOTA時(shí)候,這個(gè)地址是需要注意的。也就是最上面我們給出的兩張圖。如果你下一次需要運(yùn)行在BankB 那么這次刷寫的地址需要有個(gè)offset. 好吧,把上面圖復(fù)制下來仔細(xì)說一下。

3baec92a-3dae-11ee-ac96-dac502259ad0.png

就是這里當(dāng)我們下一次需要運(yùn)行在Bank B 我們的hex/s19文件本身的地址是不需要變化的。假設(shè)我們的hex地址開始是0x80001000 那么 這個(gè)就需要被刷寫到0x80601000這個(gè)地址。當(dāng)我們把地址明確了之后,就和普通的bootloader 刷寫程序一樣。等待刷寫流程走完后。到了我們下一步,配置SOTA 和 寫入 SOTA。這里為什么提了一下寫入呢。因?yàn)檫@個(gè)寫SOTA有點(diǎn)特殊,因?yàn)檫@個(gè)配置信息是存在UCB里面的UCB_SWAP_ORIG/COPY
。這個(gè)位置是可能會(huì)把板子搞壞的位置。

07—配置SOTA

最開始的流程圖在這里就用上了。我們這里先不考慮HSM的情況,這塊容易死機(jī)。

3cf6c594-3dae-11ee-ac96-dac502259ad0.png

首先根據(jù)這個(gè)圖,直到第一步是要擦除掉現(xiàn)在已經(jīng)有的UCB。除非是第一次。否則都需要先擦除一遍。

但是這里要先注意一下SOTA的狀態(tài),是否enable. 通過下面寄存器進(jìn)行配置。具體可以看一下手冊解釋。

3d2b4e5e-3dae-11ee-ac96-dac502259ad0.png

接上面,擦除方式呢?這里屬于Dflash的位置,用Dflash最原始的辦法就可以了。

擦除完之后就要根據(jù)當(dāng)前的bank來選擇寫入的配置字。其實(shí)就是寫入U(xiǎn)CB里面。和上面擦除一樣。這里屬于dflash, 寫的方式可以使用dmu.具體寫的內(nèi)容就是下面的兩個(gè)位置。根據(jù)上面的參數(shù)即可。

3d40a3bc-3dae-11ee-ac96-dac502259ad0.png

具體數(shù)值呢?就是上面提到的0xAA 或者是0x55。下面的confirm呢?這里是固定的數(shù)據(jù)。

3d608f60-3dae-11ee-ac96-dac502259ad0.png

到了這里就到了流程的尾部。

3d7d5884-3dae-11ee-ac96-dac502259ad0.png

系統(tǒng)reset, reset之后 啟動(dòng)過程芯片會(huì)自動(dòng)通過ucb的配置,來切換到另一個(gè)bank.

審核編輯:湯梓紅

聲明:本文內(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)注

    459

    文章

    52505

    瀏覽量

    440760
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1679

    瀏覽量

    151798
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    8

    文章

    3124

    瀏覽量

    75264
  • SWAP
    +關(guān)注

    關(guān)注

    0

    文章

    51

    瀏覽量

    13261
  • OTA
    OTA
    +關(guān)注

    關(guān)注

    7

    文章

    612

    瀏覽量

    36574

原文標(biāo)題:OTA-swap Bank AB

文章出處:【微信號:談思實(shí)驗(yàn)室,微信公眾號:談思實(shí)驗(yàn)室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    瑞薩電子MCU無感OTA升級功能介紹

    在工業(yè)控制、電機(jī)驅(qū)動(dòng)乃至物聯(lián)網(wǎng)邊緣節(jié)點(diǎn)中,固件在線升級OTA)已成為產(chǎn)品生命周期管理的標(biāo)配。然而傳統(tǒng)OTA往往伴隨停機(jī)、風(fēng)險(xiǎn)與低效。瑞薩電子MCU中的Dual?Bank閃存架構(gòu)為工程
    的頭像 發(fā)表于 05-15 14:36 ?708次閱讀
    瑞薩電子MCU無感<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>功能介紹

    STM32H743 FLASH SWAP實(shí)現(xiàn)IAP升級出錯(cuò)了怎么解決?

    行FLASH SWAP,然后看門狗重啟,結(jié)果升級后,程序無法啟動(dòng),同時(shí)也無法進(jìn)行仿真了,flash下載不了,到擦除的時(shí)候就出錯(cuò)了(timeout),跪求大佬能給分析一下!flash的過程如下://獲取程序內(nèi)存
    發(fā)表于 03-12 07:25

    OTA固件升級教程

    機(jī)智云的OTA服務(wù)主要提供以下功能:OTA通知服務(wù),即離線升級。當(dāng)設(shè)備的固件程序有新版本發(fā)布,OTA 通知服務(wù)會(huì)推送升級通知到設(shè)備。
    發(fā)表于 03-01 18:31

    嵌入式OTA升級實(shí)現(xiàn)原理是什么

    目錄一、簡介1.1 概念1.2 優(yōu)點(diǎn)1.3 實(shí)現(xiàn)原理二、MCU OTA升級2.1 制作升級包2.2 下載升級包2.3 驗(yàn)簽升級包2.4 更新
    發(fā)表于 12-14 07:24

    什么是在線OTA升級

    什么是在線OTA升級- OTA是Over-the-Air的簡寫,空中下載技術(shù)的意思。- OTA在線升級在日常消費(fèi)電子產(chǎn)品中很常見,比如手機(jī),
    發(fā)表于 12-22 07:44

    設(shè)備OTA空中升級原理是什么

    1.背景沒有完美的軟件,因?yàn)樵O(shè)計(jì)缺陷、業(yè)務(wù)需求更新,軟件始終都在不斷升級完善。新軟件如何替換正在運(yùn)行的舊軟件就是本文關(guān)注的重點(diǎn),尤其是針對電子產(chǎn)品,設(shè)備空中升級OTA,受限于硬件資源,需要選擇
    發(fā)表于 01-19 07:44

    OTA升級方法

    簡介OTA升級是嵌入式設(shè)備幾乎都有的一項(xiàng)功能。對于簡單的設(shè)備來說,例如單片機(jī)設(shè)備,OTA升級需要將新的固件刷寫到FLASH上即可;對于高級一點(diǎn)的Linux設(shè)備來說,更加復(fù)雜,首先需要對
    發(fā)表于 01-25 08:12

    如何升級OTA

    如何升級OTA
    發(fā)表于 02-14 06:27

    AB swap不支持啟用cache的應(yīng)用嗎?

    AB swap不支持啟用cache的應(yīng)用嗎?Hse切換分區(qū)函數(shù)(AB swap)時(shí),發(fā)現(xiàn)只要打開Dcache,接口函數(shù)就無法運(yùn)行。如果我關(guān)閉 Dcache,它將運(yùn)行
    發(fā)表于 03-20 06:20

    在線升級 | 物聯(lián)網(wǎng)中的OTA升級原理

    從最新的固件方式來看,可以分成以下幾類 0 1 OTA升級 1.1? 概念 OTA:Over-the-Air Technology,即空中下載技術(shù)。 OTA
    的頭像 發(fā)表于 02-03 02:40 ?1708次閱讀

    OTA是什么?OTA升級有何用?

    ota是什么?ota升級是什么意思?很多用智能手機(jī)的人應(yīng)該都會(huì)知道 ota是什么 ,而對于一些剛?cè)腴T的機(jī)友們,ROOT、刷機(jī)、越獄都比較熟悉,但OT
    的頭像 發(fā)表于 03-15 14:36 ?9678次閱讀

    在線升級 | 物聯(lián)網(wǎng)中的OTA升級原理

    從最新的固件方式來看,可以分成以下幾類01OTA升級1.1概念OTA:Over-the-AirTechnology,即空中下載技術(shù)。OTA升級
    的頭像 發(fā)表于 02-02 09:59 ?1897次閱讀
    在線<b class='flag-5'>升級</b> | 物聯(lián)網(wǎng)中的<b class='flag-5'>OTA</b><b class='flag-5'>升級</b>原理

    詳解藍(lán)牙空中升級(BLE OTA)原理與步驟

    如何實(shí)現(xiàn)BLE OTA?什么叫DFU?如何通過UART實(shí)現(xiàn)固件升級?又如何通過USB實(shí)現(xiàn)固件升級?怎么保證升級的安全性?什么叫雙區(qū)(dual ban
    的頭像 發(fā)表于 07-10 09:36 ?5922次閱讀
    詳解藍(lán)牙空中<b class='flag-5'>升級</b>(BLE <b class='flag-5'>OTA</b>)原理與步驟

    OTA軟件升級管理系統(tǒng)

    OTA(Over-the-Air Technology,空中下載技術(shù))是通過空中下載的方式對車輛中的軟件進(jìn)行遠(yuǎn)程升級。經(jīng)緯恒潤OTA軟件升級管理系統(tǒng)基于軟件架構(gòu)、應(yīng)用架構(gòu)、業(yè)務(wù)架構(gòu)和技
    的頭像 發(fā)表于 01-13 09:39 ?751次閱讀
    <b class='flag-5'>OTA</b>軟件<b class='flag-5'>升級</b>管理系統(tǒng)

    詳解藍(lán)牙空中升級(OTA)原理與步驟

    如何實(shí)現(xiàn)Bluetooth LE OTA?什么叫DFU?如何通過UART實(shí)現(xiàn)固件升級?又如何通過USB實(shí)現(xiàn)固件升級?怎么保證升級的安全性?什么叫雙區(qū)(dual
    的頭像 發(fā)表于 07-04 09:56 ?542次閱讀
    詳解藍(lán)牙空中<b class='flag-5'>升級</b>(<b class='flag-5'>OTA</b>)原理與步驟