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

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

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

RA8x1系列MCU如何將通過FSP將代碼/數(shù)據(jù)放置到TCM中

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 2024-06-19 14:56 ? 次閱讀

TCM是什么?

隨著單片機MCU)在各種應用中的使用越來越廣泛,對其性能和響應速度的要求也越來越高。為了滿足這種需求,MCU的主時鐘頻率往往會不斷提高,以提升系統(tǒng)的處理能力和性能。然而,隨著主時鐘頻率的增加,訪問外部存儲器(如閃存、RAM)所需的訪問時間也要求相應減少,這可能會成為系統(tǒng)性能的瓶頸之一。在這種情況下,使用TCM(Tightly-Coupled Memory)成為了一種解決方案。

Tightly Coupled Memory(TCM)緊耦合內(nèi)存是通過專用的接口直接連接到處理器的存儲器區(qū)域,它提供單周期訪問,避免其他存儲器可能存在的仲裁延時和延遲。

RA8x1 Cortex-M85內(nèi)核有2種TCM類型:Instruction TCM (ITCM) 指令TCM和Data TCM (DTCM) 數(shù)據(jù)TCM。

RA8x1有64KB ITCM和64KB DTCM。

ECC保護(代碼生成和糾正邏輯)。

RA8x1支持ITCM和DTCM ECC功能,可以通過OFS2.INITECCEN設置來啟用和禁用。

57029e92-2df2-11ef-a4c8-92fbcf53809c.png

RA8x1 CPU方框圖

TCM具有以下優(yōu)點:

低延遲訪問:TCM與處理器核心之間的直接連接消除了訪問延遲,使得數(shù)據(jù)和指令能夠更快速地被處理器訪問,從而提高了系統(tǒng)的響應速度。

高帶寬:TCM通常具有更高的帶寬,可以支持處理器對數(shù)據(jù)和指令的高速讀寫,提升了系統(tǒng)的整體性能。

節(jié)省功耗:由于TCM與處理器核心直接連接,不需要通過總線進行數(shù)據(jù)傳輸,因此可以降低功耗。此外,由于訪問延遲較低,處理器可以更快地完成任務并進入休眠模式,進一步降低功耗。

提高實時性能:對于需要實時響應的應用程序,TCM的低延遲和高帶寬特性使得處理器能夠更快地訪問關(guān)鍵數(shù)據(jù)和指令,從而提高了系統(tǒng)的實時性能。

增強安全性:TCM可以用于存儲敏感數(shù)據(jù)和關(guān)鍵代碼,通過與處理器核心的緊密耦合,可以降低數(shù)據(jù)泄露和惡意攻擊的風險,提高系統(tǒng)的安全性。

減少對外部存儲器的依賴:TCM可以用于存儲頻繁訪問的數(shù)據(jù)和指令,減少了對外部存儲器的訪問次數(shù),降低了總體的訪問延遲和功耗。這對于一些資源有限的嵌入式系統(tǒng)尤為重要。

增強可靠性:TCM的直接連接和高速訪問特性可以提高系統(tǒng)的可靠性,減少因外部存儲器或總線故障而導致的系統(tǒng)性能下降或故障。

因此,TCM適用于許多不同的應用和場景,特別是對于需要高性能、低延遲和實時響應的應用,其優(yōu)勢更加突出。以下是一些適合使用TCM的應用和場景:

實時控制系統(tǒng):對于需要快速響應的實時控制系統(tǒng),如工業(yè)機器人、航空航天控制系統(tǒng)、醫(yī)療設備等,TCM可以提供所需的低延遲和高帶寬,確保系統(tǒng)能夠及時、準確地響應各種控制指令。

信號處理應用:TCM對于需要大量數(shù)據(jù)處理和信號處理的應用非常適用,例如無線通信系統(tǒng)、雷達系統(tǒng)、圖像處理系統(tǒng)等。通過將頻繁訪問的數(shù)據(jù)和指令存儲在TCM中,可以提高系統(tǒng)的處理速度和效率。

物聯(lián)網(wǎng)設備:隨著物聯(lián)網(wǎng)設備的普及,對于需要在資源有限的設備上實現(xiàn)高性能和實時響應的應用,TCM可以幫助提高系統(tǒng)的性能和能效,同時減少對外部存儲器和網(wǎng)絡帶寬的依賴。

高性能計算:在需要進行復雜計算和大規(guī)模數(shù)據(jù)處理的高性能計算應用中,TCM可以提供更快速和可靠的數(shù)據(jù)訪問,從而提高系統(tǒng)的計算性能和吞吐量。

RA8x1系列MCU如何將通過FSP將代碼/數(shù)據(jù)放置到TCM中?

瑞薩電子靈活配置軟件包(FSP)是用于嵌入式系統(tǒng)設計的高質(zhì)量增強型軟件包,支持瑞薩電子RA產(chǎn)品家族ARM微控制器,提供用戶友好的界面且可靈活擴展,確保從入門級到高性能的整個RA微控制器的軟件兼容性。FSP包括高性能、低內(nèi)存占用的業(yè)界一流的HAL驅(qū)動程序。還包含集成了Azure RTOSFreeRTOS的中間件協(xié)議棧,能夠簡化通信和安全等復雜模塊的實現(xiàn)。e2 studio IDE提供了對圖形化配置工具和智能代碼生成器的支持,從而使編程和調(diào)試變得更加輕松快捷。

瑞薩FSP鏈接腳本提供TCM內(nèi)存區(qū)域段定義

memory_region.ld中的內(nèi)存大小定義:

5724d9bc-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

內(nèi)存區(qū)域定義:

574a46a2-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

如下原型定義可用于將用戶代碼/數(shù)據(jù)放置到TCM中。在啟動過程中,.itcm_data和.dtcm_data區(qū)域?qū)⑼ㄟ^閃存中存儲的初始化代碼進行數(shù)據(jù)初始化。.dtcm_bss區(qū)域已初始化為零。

5774af28-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

FSP中的ITCM段定義:

57908bee-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

FSP中的DTCM段定義:

57c85bc8-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

TCM例子分析

下圖是一個RA8x1 MCU實際使用TCM的例子,它使用了ITCM和DTCM。圖片中的右邊為RA8x1 MCU的系統(tǒng)地址空間。

57f14fec-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

具體分析過程為:

1紫色的代碼“uint16_t i;”全局變量,它運行的時候,分配的地址是在從0x2200_0000開始的On-chip SRAM中。

2紅色的代碼“BSP_PLACE_IN_SECTION(“.dtcm_data”)uint8x16_t rega_8, regb_8, regc_8, regd_8;”,全局變量,但是由于這些變量前面添加了BSP_PLACE_IN_SECTION(“.dtcm_data”),這表示將這些變量放置到DTCM中,它運行的時候,分配的地址是在從0x2000_0000開始的DTCM中。

3青色的代碼“void hal_entry(void)”,它是函數(shù),運行的時候,分配的地址是在從0x0200_0000開始的On-chip flash中。

4深綠色的代碼“void helium_test(void)”,它是函數(shù),但是由于這些變量前面添加了BSP_PLACE_IN_SECTION(“.itcm_data”),這意味著,該代碼運行的時候,分配的地址是從0x0000_0000開始的ITCM中。

下圖是上面描述的代碼在e2 studio中使用了LLVM工具鏈編譯并仿真運行的截圖,可以發(fā)現(xiàn)右邊表達式窗口中的i,rega_8, regb_8, regc_8, regd_8,helium_test,hal_entry這些代碼或者變量的地址和剛剛分析的結(jié)果是相符的。

580d4986-2df2-11ef-a4c8-92fbcf53809c.png

點擊可查看大圖

需要技術(shù)支持?

如您在使用瑞薩MCU/MPU產(chǎn)品中有任何問題,進入瑞薩技術(shù)論壇尋找答案或獲取在線技術(shù)支持。

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

    關(guān)注

    68

    文章

    19044

    瀏覽量

    228489
  • 單片機
    +關(guān)注

    關(guān)注

    6026

    文章

    44456

    瀏覽量

    630999
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16804

    瀏覽量

    349383
  • TCM
    TCM
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

    12760

原文標題:RA8x1 TCM使用指南

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    請問STM8S如何將中斷代碼拷貝RAM運行?

    STMS在寫EEPROM時,中斷停掉,如何將中斷代碼拷貝RAM運行??? 求助各位大神?。?!
    發(fā)表于 05-17 07:37

    如何將ADC代碼轉(zhuǎn)換為電壓

    許多初步了解模數(shù)轉(zhuǎn)換器(ADC)的人想知道如何將ADC代碼轉(zhuǎn)換為電壓?;蛘?,他們的問題是針對特定應用,例如:如何將ADC代碼轉(zhuǎn)換回物理量,如電流、溫度、重量或壓力。在這個包含兩篇文章的
    發(fā)表于 07-23 04:45

    如何將存儲在變量數(shù)據(jù)傳輸?shù)紻AC?

    大家好,我知道通過DMA傳輸數(shù)據(jù)的概念。但我仍然困惑,如何將一個8數(shù)據(jù)傳送到DAC,例如:1。
    發(fā)表于 10-15 07:52

    如何將絲印放置底層

    在cadence17.2如何將頂層絲印放置到底層絲印,器件已經(jīng)放置到底層,但是絲印還是在頂層。
    發(fā)表于 09-28 11:51

    怎樣微型ROS移植機器人的RA MCU

    瑞薩電子公司與專門從事中間件解決方案的公司 eProsima 合作,微型 ROS 移植 RA 微控制器 (MCU) ,以便更輕松地開發(fā)
    發(fā)表于 02-11 06:19

    如何將X-CUBE-NFC5代碼集成平臺中?

    我手頭有一塊ST25R3911B-Disco(NFC板),我的平臺是STM32F767IGT6。我的問題是如何將 X-CUBE-NFC5 代碼集成到我現(xiàn)有的項目 (Keil uVision5)
    發(fā)表于 02-02 07:22

    如何在沒有任何額外代碼的情況下程序復制SRAM

    正確的,因為程序(從 SPI 閃存啟動)不知道如何在沒有任何額外代碼的情況下程序復制 SRAM 。那么選項“應用程序鏈接到 ram”
    發(fā)表于 03-14 12:11

    如何從SD啟動到I/D TCM

    通過寫入 FlexRAM 配置(在 startup_mimxrt1062.c )更改大小會導致問題,因為代碼是從 TCM 運行的。看起來 DCD(設備配置
    發(fā)表于 04-17 06:54

    數(shù)學原理:如何將ADC代碼轉(zhuǎn)換為電壓(第1篇)

    許多初步了解模數(shù)轉(zhuǎn)換器(ADC)的人想知道如何將ADC代碼轉(zhuǎn)換為電壓。或者,他們的問題是針對特定應用,例如:如何將ADC代碼轉(zhuǎn)換回物理量,如電流、溫度、重量或壓力。在這個包含兩篇文章的
    發(fā)表于 04-18 03:30 ?3826次閱讀

    如何將MCU應用到FPGA:關(guān)于FPGA(1

    最近,我接手一個項目,這個項目不僅要求我使用FPGA,而且還要求我使用功能更強大的ARM。這都是我從未接觸過的領(lǐng)域。在這個系列博客,我介紹我是如何將自己現(xiàn)有的
    發(fā)表于 05-08 15:41 ?3864次閱讀

    瑞薩micro-ROS移植RA MCU

    (適用于MCU的機器人操作系統(tǒng))的官方支持硬件平臺。瑞薩與micro-ROS框架的主要開發(fā)商eProsima攜手,micro-ROS移植RA M
    的頭像 發(fā)表于 09-24 16:22 ?2072次閱讀

    使用RA2E1 MCUFSP實現(xiàn)超低設計

      RA2E1 MCU 組評估套件 FPB-RA2E1實施各種連接器,允許訪問 RA2E1 MCU、板載 E2 仿真器、用戶開關(guān)、LED 上
    的頭像 發(fā)表于 04-25 10:10 ?2001次閱讀
    使用<b class='flag-5'>RA2E1</b> <b class='flag-5'>MCU</b>和<b class='flag-5'>FSP</b>實現(xiàn)超低設計

    RA MCU CANFD在FSP的配置詳解

    在瑞薩RA系列MCU產(chǎn)品,目前RA4E2、RA4T1RA
    的頭像 發(fā)表于 10-20 14:46 ?1189次閱讀
    <b class='flag-5'>RA</b> <b class='flag-5'>MCU</b> CANFD在<b class='flag-5'>FSP</b><b class='flag-5'>中</b>的配置詳解

    RA Overwrite模式在FSP的支持

    前面介紹了MCUboot的基礎(chǔ)知識,您可通過上方鏈接回顧,本章著重介紹其中的Overwrite模式,以及在FSP如何配置、如Flash怎樣劃分、安全校驗的方式等。本文以
    的頭像 發(fā)表于 06-13 10:52 ?428次閱讀
    <b class='flag-5'>RA</b> Overwrite模式在<b class='flag-5'>FSP</b><b class='flag-5'>中</b>的支持

    RA MCU CANFD在FSP的配置詳解

    RA MCU CANFD在FSP的配置詳解
    的頭像 發(fā)表于 06-19 08:06 ?361次閱讀
    <b class='flag-5'>RA</b> <b class='flag-5'>MCU</b> CANFD在<b class='flag-5'>FSP</b><b class='flag-5'>中</b>的配置詳解