在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

應用分享| HPM6000系列片上SRAM揭秘

先楫半導體HPMicro ? 2022-09-19 11:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

72cd000e-35f6-11ed-9ade-dac502259ad0.jpg

本期開發筆記由費神編寫主要會為大家介紹HPM6000系列的各類片上SRAM并結合Segger Embedded Studio的linker文件介紹,提供了如何使用這些SRAM的建議,趕快來了解吧~

簡介

在HPM6000系列微控制器上,集成了大容量的SRAM,可供用戶存放代碼,數據等,滿足各類應用的需要。其中片上SRAM有多種分類,包括RISC-V CPU的指令和數據本地存儲器ILM,DLM,通用內存AXI SRAM,AHB SRAM等,還包括AHB SRAM,APB SRAM等。這些SRAM的最高訪問頻率不同,數據保持的條件也不同,恰當地使用他們,可以極大的提升用戶應用的效率。

片上SRAM介紹

HPM6000系列高性能MCU均集成了大容量片上SRAM,總結如下:

72f63a8c-35f6-11ed-9ade-dac502259ad0.pngHPM6000系列片上SRAM總結2.1 RISC-V CPU的本地存儲器ILM和DLM
HPM6000系列高性能微控制器的RISC-V CPU都包含有指令和本地存儲器,分別稱為ILM(Instruction Local Memory,指令本地存儲器)和DLM(Data Local Memory,數據本地存儲器)。如下圖所示,RISC-V CPU的ILM和DLM各自對應了內存映射表(Memory Map)中的2塊地址映射區域。7309fce8-35f6-11ed-9ade-dac502259ad0.pngHPM6700系列ILM/DLM示意圖ILM的映射有:
ILM,以HPM6700系列為例,容量256 KB,地址范圍為0x00000000 ~ 0x0003FFFF。該地址區域只有RISC-V CPU可以通過自身的ILM接口訪問,RISC-V CPU從ILM取指時,可以實現零等待周期,即ILM的訪問時鐘頻率,與RISC-V CPU主頻一致,并且RISC-V CPU的一級高速指令緩存I-Cache-L1對ILM無效。CPUx_ILM_SLV,以HPM6700系列的CPU0 ILM為例,容量256 KB,地址范圍為0x01000000 ~ 0x0103FFFF。該地址區域也稱為ILM0鏡像,該地址區域可以供總線上所有的主設備訪問,如DMA等,包括RISC-V CPU自身,也可以通過CPUx_ILM_SLV訪問ILM。如圖所示,CPUx_ILM_SLV是AXI系統總線的從接口,其訪問時鐘頻率與總線時鐘頻率一致。RISC-V CPU訪問CPUx_ILM_SLV時,一級高速指令緩存I-Cache-L1是有效的。
DLM的映射有:DLM,以HPM6700系列為例,容量256 KB,地址范圍為0x00080000 ~ 0x000BFFFF。該地址區域只有RISC-V CPU可以通過自身的DLM接口訪問,RISC-V CPU從DLM讀寫數據時,可以實現零等待周期,即DLM的訪問時鐘頻率,與RISC-V CPU主頻一致,并且RISC-V CPU的一級高速指令緩存D-Cache-L1對DLM無效。CPUx_DLM_SLV,以HPM6700系列的CPU0 DLM為例,容量256 KB,地址范圍為0x01040000 ~ 0x0107FFFF。該地址區域也稱為ILM0鏡像,該地址區域可以供總線上所有的主設備訪問,如DMA等,包括RISC-V CPU自身,也可以通過CPUx_DLM_SLV訪問ILM。如圖所示,CPUx_DLM_SLV是AXI系統總線的從接口,其訪問時鐘頻率于總線時鐘頻率一致。RISC-V CPU訪問CPUx_DM_SLV時,一級高速指令緩存D-Cache-L1是有效的。

2.1.1HPM6700系列

HPM6700系列微控制器上,指令/數據本地存儲器的2塊地址映射xLM和CPUx_xLM_SLV雖然地址不同,但訪問的是同一塊物理內存,RISC-V CPU可以通過xLM訪問自身的指令/數據本地存儲器,而其他總線主設備,比如DMA,需要通過CPUx_xLM_SLV來訪問CPUx的指令/數據本地存儲器。注意,RISC-V CPU本身,也可以通過CPUx_xLM_SLV訪問自己的指令/數據本地存儲器。
HPM6700系列支持雙核RISC-V CPU,CPU從xLM地址映射總是訪問到自身指令/數據本地存儲器,而從CPUx_xLM_SLV可以訪問到自身或者另一個CPU的指令/數據本地存儲器。
以HPM6700系列RISC-V CPU0為例,從0x00000000和0x01000000讀取到的,是CPU0指令本地存儲器ILM0的首地址。從0x01180000讀到的,是CPU1指令本地存儲器ILM1的首地址。
以RISC-V CPU1為例,從0x00000000和0x01180000讀取到的,是CPU1指令本地存儲器ILM1的首地址。從0x01000000讀到的,是CPU0指令本地存儲器ILM0的首地址。7347acdc-35f6-11ed-9ade-dac502259ad0.png

2.1.2HPM6300系列

HPM6300系列為單核RISC-V CPU,RISC-V CPU和其他總線主設備都可以通過xLM地址映射訪問CPU的指令/數據本地存儲器,其中RISC-V CPU仍然可以通過自身的xLM接口對xLM實現零等待周期訪問,即xLM的讀寫時鐘頻率與CPU的時鐘同頻。而其他總線主設備,需要以AXI系統總線的時鐘頻率訪問xLM。

同時,xLM的鏡像,CPUx_xLM_SLV映射仍然有效,包括RISC-V CPU在內的所有總線主設備,訪問CPUx_xLM_SLV與訪問xLM效果相同,訪問的是同一塊物理內存。注意RISC-V CPU通過CPUx_xLM_SLV訪問自身的xLM時,會和其他總線主設備一樣,讀寫時鐘頻率與AXI系統總線時鐘頻率一致,不再支持零周期等待,但是CPU的高速一級緩存會生效。
比如,RISC-V CPU和DMA,從0x00000000讀取到的,是CPU0指令本地存儲器ILM0的首地址。從0x01000000讀取到的,也是CPU0指令本地存儲器ILM0的首地址。注意RISC-V CPU從0x01000000取值后,如果高速緩存打開,其數據會被存入緩存。

2.2AXI總線SRAM


HPM6000系列高性能MCU支持通用的片上SRAM,稱為AXI SRAM,可以用來存放數據或者代碼。

736aa188-35f6-11ed-9ade-dac502259ad0.pngHPM6700系列AXI?SRAM示意圖上圖以HPM6700系列MCU為例,展示了AXI SRAM在系統中的位置。顧名思義,AXI SRAM連接到AXI系統總線的從接口,它的讀寫時鐘頻率就是AXI系統總線的時鐘頻率。所有的AXI系統總線主設備都可以訪問AXI SRAM。
注意:系統內存映射表上,AXI SRAM的地址映射與RISC-V CPU的ILM/DLM鏡像映射CPUx_xLM_SLV在地址上是連續的。因此可以把AXI SRAM和RISC-V CPU的本地存儲器當作一塊聯系的大內存使用。詳情請參考后文的SRAM使用建議。

2.3AHB總線SRAM


HPM6000系列高性能MCU包含掛載在外設總線AHB的片上SRAM,稱為AHB SRAM,如下圖所示,AHB SRAM連接到AHB外設總線的從設備接口。
AHB SRAM的讀寫時鐘頻率為AHB外設總線的時鐘頻率。注意,包括RISC-V CPU在內的總線主設備需要通過AXI系統總線,來訪問AHB外設總線下的各個外設寄存器。而外設總線AHB上的主設備,比如HDMA,可以直接通過AHB總線訪問外設寄存器,以及AHB SRAM。因此AHB SRAM比其他類型的片上SRAM更適合用作寄存器和SRAM之間的數據搬運。基于同樣的理由,HDMA也比XDMA更適合用作AHB SRAM和寄存器之間的數據搬運。
因此,當使用HDMA用作通訊接口,如UART,SPI的數據收發時,推薦使用AHB SRAM作為數據的緩沖區。73a1dba8-35f6-11ed-9ade-dac502259ad0.pngHPM6700系列AHB?SRAM和APB?SRAM示意圖

2.4APB總線SRAM


HPM6000系列高性能MCU的部分型號支持APB SRAM。上圖以HPM6700系列MCU為例,展示了APB SRAM在系統中的位置。
APB SRAM位于電源管理域,由VPMC引腳供電。當MCU處于低功耗模式時,有可能通過關閉系統電源域的電源,使得VDD_SOC掉電。此時,APB SRAM可以作為片上的備份SRAM,保存必要的數據。
注意,對于不支持APB SRAM的型號,可以使用電源管理域通用寄存器PGPR,保存一定的備份數據。

在電池模式(VBAT Only Mode)下,VPMC也掉電,HPM6000系列MCU僅VBAT保持供電。此時,電池備份域通用寄存器BGPR,可以用來保存一定的備份數據。

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

    關注

    146

    文章

    17919

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    支持HPM6P00/HPM5E00系列!HPMicro Manufacturing Tool v0.6.0發布

    HPM6P00、HPM5E00系列SoC的燒寫及其它操作,新增HPM6E00、HPM5E00固件;新增verify-checksum及que
    的頭像 發表于 06-04 08:28 ?383次閱讀
    支持<b class='flag-5'>HPM</b>6P00/<b class='flag-5'>HPM</b>5E00<b class='flag-5'>系列</b>!HPMicro Manufacturing Tool v0.6.0發布

    【強勢新】HPM5E00:EtherCAT運動控制MCU,先楫半導體再拓工業總線產品新版圖

    。該系列是繼HPM6E00后的又一重磅布局,標志著先楫在EtherCAT工業通信領域的持續發力與技術深化。 HPM5E00系列 在延續HPM
    發表于 05-07 14:07 ?678次閱讀
    【強勢<b class='flag-5'>上</b>新】<b class='flag-5'>HPM</b>5E00:EtherCAT運動控制MCU,先楫半導體再拓工業總線產品新版圖

    【強勢新】HPM5E00:EtherCAT運動控制MCU,先楫半導體再拓工業總線產品新版圖

    HPM6E00后的又一重磅布局,標志著先楫在EtherCAT工業通信領域的持續發力與技術深化。HPM5E00系列在延續HPM6E00高算力基因的基礎
    的頭像 發表于 05-06 11:09 ?496次閱讀
    【強勢<b class='flag-5'>上</b>新】<b class='flag-5'>HPM</b>5E00:EtherCAT運動控制MCU,先楫半導體再拓工業總線產品新版圖

    淺談MCURAM

    MCURAM是微控制單元(MCU)中集成于芯片內部的隨機存取存儲器,主要用于程序運行時的數據存儲與高速讀寫操作。以下是其核心要點: 一、定義與分類 ?RAM是MCU內部存儲單元
    的頭像 發表于 04-30 14:47 ?367次閱讀

    重磅更新 | 先楫半導體HPM_SDK v1.9.0 發布

    版本更新概況[New]增加HPM6P00系列MCU以及hpm6p00evk支持[New]增加了開發板已知問題說明[Update]將全系列開發板VCore電壓調節至1.275V,
    的頭像 發表于 04-02 08:31 ?368次閱讀
    重磅更新 | 先楫半導體<b class='flag-5'>HPM</b>_SDK v1.9.0 發布

    hpm_apps v1.8.0上線:HPM6200四軸伺服驅控方案重磅發布!

    hpm_apps v1.8.0上線:HPM6200四軸伺服驅控方案重磅發布!
    的頭像 發表于 02-12 08:04 ?542次閱讀
    <b class='flag-5'>hpm</b>_apps v1.8.0上線:<b class='flag-5'>HPM</b>6200四軸伺服驅控方案重磅發布!

    開發者分享 | 適用于HPM的RustSBI實現

    HPMicro的MCU一直以高性能著稱,之前也一直有想在HPM的MCU運行Linux的想法。直到看見Linux6.10中支持了RISC-V架構在S-mode中運行nommu內核*,才下定決心開始在HPM6360
    的頭像 發表于 02-08 13:44 ?562次閱讀
    開發者分享 | 適用于<b class='flag-5'>HPM</b>的RustSBI實現

    基于HPM_SDK_ENV開發應用程序的升級處理

    基于HPM_SDK_ENV開發應用程序的方式HPM_SDK_ENV是先楫半導體MCU的Windows集成開發環境,其包含HPM_SDK,工具鏈,依賴工具(cmake,ninja,openocd等
    的頭像 發表于 02-08 13:38 ?970次閱讀
    基于<b class='flag-5'>HPM</b>_SDK_ENV開發應用程序的升級處理

    用femc操作sram,nce選一口氣出32次

    用femc操作sram,nce選一口氣出32次。 如下,在執行完value = *p;后選就會出32個波形。這樣一操作就是一塊地址,那么針對某一個地址如何操作才能相應只出一個選?
    發表于 11-29 09:31

    關于hpm6364的femc同時使用外接sdram和sram的問題

    femc連接32Mb的sdram,同時連接fpga,用sram方式與fpga通信。 配置IO口都配置了IOC_PAD_FUNC_CTL_ALT_SELECT_SET(12);當作femc接口
    發表于 11-20 14:45

    TMS320C6000 EMIF轉外部異步SRAM接口

    電子發燒友網站提供《TMS320C6000 EMIF轉外部異步SRAM接口.pdf》資料免費下載
    發表于 10-26 10:28 ?0次下載
    TMS320C<b class='flag-5'>6000</b> EMIF轉外部異步<b class='flag-5'>SRAM</b>接口

    66AK2Hx系統(SoC)器件系列的功耗摘要

    電子發燒友網站提供《66AK2Hx系統(SoC)器件系列的功耗摘要.pdf》資料免費下載
    發表于 10-10 09:11 ?0次下載
    66AK2Hx<b class='flag-5'>片</b><b class='flag-5'>上</b>系統(SoC)器件<b class='flag-5'>系列</b>的功耗摘要

    SDK里面是否能添加HPM5300系列芯片支持包?

    SDK里面是否能添加HPM5300系列芯片支持包?只發現板級支持包。
    發表于 09-27 10:01

    Keysight InfiniiVision 6000 X 系列示波器

    KeysightInfiniiVision6000X系列示波器深入探索,分析更多信號細節,直觀的觸摸屏用戶界面、語音控制和區域觸發,讓復雜的任務變得簡單無比。樹立示波器性價比新標桿
    的頭像 發表于 08-14 08:34 ?802次閱讀
    Keysight InfiniiVision <b class='flag-5'>6000</b> X <b class='flag-5'>系列</b>示波器

    支持HPM6E00!HPMicro Pintool Web v0.3.1正式上線!

    1、新增HPM6E00系列數據先楫發布了最新的HPM6E00系列芯片,Pintool也迅速支持了HPM6E00
    的頭像 發表于 07-05 08:18 ?1160次閱讀
    支持<b class='flag-5'>HPM</b>6E00!HPMicro Pintool Web v0.3.1正式上線!
    主站蜘蛛池模板: 亚洲乱码尤物193yw在线播放 | 五月天婷婷丁香中文在线观看 | 四虎影免看黄 | 精品美女在线观看 | 91极品女神私人尤物在线播放 | 天天成人综合网 | 午夜精品视频任你躁 | 亚洲国产精品久久久久婷婷老年 | 77米奇影院| 亚洲精品www | 99久久精品免费看国产免费 | 天天舔天天摸 | 一级毛片aaa片免费观看 | 欧美一区二区三区在线观看免费 | 男人女人真曰批视频播放 | 亚洲国产精品久久久久婷婷软件 | 天天操天天噜 | 国产情侣真实露脸在线最新 | 亚洲一级特黄特黄的大片 | 99pao在线视频精品免费 | 国产专区青青草原亚洲 | 天天夜夜爽 | 国产美女在线免费观看 | 免费免播放器在线视频观看 | 九月婷婷综合婷婷 | 日韩欧美中文字幕在线视频 | 激情婷婷网 | 欧美色图狠狠干 | 久久久久综合中文字幕 | 国产五月 | 色又色 | 精品色图 | 一区二区三区四区视频在线观看 | 天天夜天干天天爽 | 色综合美国色农夫网 | 韩国精品videosex性韩国 | 丁香花免费观看视频 | 天堂资源在线 | 午夜视频在线看 | 天天爱综合 | 在线最新版www资源网 |