chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

先楫HPM6000系列雙核MCU怎么玩?

331062281 ? 來源:先楫半導體HPMicro ? 2023-05-10 14:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

多核的微控制器(MCU)向來是設計上的一大挑戰(zhàn),尤其是多核異構的設計。而MCU雙核作為其中的精簡版本,憑借其超強的處理性能和便捷開發(fā)的特性,很快受到業(yè)界的好評。先楫半導體先后推出了幾款高性能MCU雙核產(chǎn)品,集成 2 個 RISC-V 處理器,其中HPM6700系列兩個核的最高主頻都可以達到816MHz。本文通過對先楫HPM6000系列雙核的使用方法、工程編譯與調(diào)試、雙核通信方式和資源分配等內(nèi)容的介紹,全方位給大家介紹雙核的使用和操作,讓大家輕松玩轉(zhuǎn)雙核,完成更多的片上系統(tǒng)功能開發(fā)。

接下來,讓我們看一看HPM6000系列雙核MCU是如何玩轉(zhuǎn)起來的吧~

雙核簡介

Introduction

HPM6000系列的雙核配置,均集成 2 個 RISC-V 處理器,雙核采用主從結構。CPU0 和 CPU1 采用相同配置,如下:

● 支持相同指令集

● 相同容量的 L1 指令和數(shù)據(jù)緩存

– 32KB L1 I-Cache,4-way,128x 64B cache line per way

– 32KB L1 D-cache,4-way,128x 64B cache line per way

● 相同容量的指令和數(shù)據(jù)本地存儲器:256 KB ILM 和 256 KB DLM

CPU0 和 CPU1 采用相同的存儲器映射,以下為例外:

● CPU 自身的指令/數(shù)據(jù)本地存儲器 ILM / DLM 為私有;

● FGPIO 為私有

● 平臺中斷控制器 PLIC 為私有

● 軟件中斷控制器 PLICSW 為私有

● 機器定時器 MCHTMR 為私有

雙核的三種使用方法推薦

Recommendation

不論是在RAM中運行,還是片上Flash運行,雙核固件均是存儲在Flash上??蛻舾鶕?jù)應用場景,選擇在上電后將雙核各自的鏡像從Flash中裝載到RAM中執(zhí)行或者基于Flash片上執(zhí)行。

根據(jù)應用場景,選擇合適的運行方式,推薦以下幾種:

方案一:Core0 加載到RAM運行,Core1加載到RAM運行

RAM區(qū)域可以是各自的ILM,也可以片上的SRAM,或者是SDRAM。當然,裝載CODE的RAM區(qū)域各自都是獨立的。此方案應用與雙核固件均占用小,可完全裝載到RAM中運行。

固件存儲位置:Core0和Core1的固件均存放在Flash指定區(qū)域(Flash分區(qū)規(guī)劃)。上電后,BootRom 從指定Flash區(qū)域裝載Core0鏡像到指定RAM運行(type:debug/release),Core0運行后從指定Flash 區(qū)域裝載Core1鏡像到指定RAM,然后運行Core1。

方案二:Core0基于flash xip(flash片上執(zhí)行)運行,Core1加載到RAM運行

此方案應用與Core0核固件占用大, Core1核固件占用小。通常將Core0用來做應用復雜交互,Core1用來做高實時性,高性能的觸發(fā)邏輯。

固件存儲位置

1). Core0和Core1的固件各自存放在Flash的指定區(qū)域(Flash分區(qū)規(guī)劃)。

優(yōu)點:Core0和Core1可單獨OTA。

缺點:需要維護兩個固件BIN文件,并存放到各自的區(qū)域中。

2). Core1的固件以數(shù)組(只讀區(qū))鏡像的方式存儲在Core0的固件中,Core0固件存放在Flash指定區(qū)域;官方例程中使用此方案。

優(yōu)點: 只維護一個固件。

缺點:Core0和Core1不可單獨OTA。

方案三:Core0基于flash xip0(flash片上執(zhí)行)運行,Core1基于flash xip1(flash 片上執(zhí)行)運行

此方案應用與Core0核和Core1核固件均很大,雙核均無法滿足放到RAM中運行。

注意:由于雙核均基于flash片上執(zhí)行,如果使用同一個flash XPI,會出現(xiàn)并發(fā)訪問Flash的情況導致未知異常發(fā)生;如果強制順序訪問,訪問效率極低,嚴重拖垮CPU運行速率;故不建議兩個核使用同一個flash XPI片上執(zhí)行。建議使用XPI0和XPI1各自外掛一個FLASH,分別用于Core0 Flash xip0和Core1 Flash xip1。

固件存儲位置:Core0和Core1的固件存儲在各自外掛的Flash的指定區(qū)域中。

雙核工程編譯與調(diào)試

Compilation and Debugging

HPM雙核是集成了兩個RISC-V 處理器,是兩個完全獨立的CPU,故HPM雙核工程是Core0工程和Core1工程兩個獨立的工程。因此HPM雙核工程編譯,其實是兩個獨立的單核工程的編譯。用戶只需要建立core0和core1的各自工程編譯調(diào)試即可。

由于HPM-SDK例程中使用的是方案二,且Core1的固件以數(shù)組(只讀區(qū))鏡像的方式存儲在Core0的固件中,導致Core1工程為Core0工程的關聯(lián)工程。因此在構建工程時,必須先構建生成Core0工程,作為關聯(lián)工程Core1工程會自動生成。由于Core1的固件是Core0工程中的只讀數(shù)組,故必須先編譯Core1工程生成只讀數(shù)組鏡像后,再編譯Core0工程。

如下構建編譯調(diào)試雙核hello world工程:

A. 構建工程

先構建生成Core0工程:

由于Core0是flash片上執(zhí)行,故type選擇:flash_sdram_xip或flash_xip

6c8b5e54-eee5-11ed-90ce-dac502259ad0.png

作為關聯(lián)工程Core1工程會自動生成:

6c97e250-eee5-11ed-90ce-dac502259ad0.png

B. 編譯工程

打開各自的工程(Core0通過GUI工具直接點擊Open Project with IDE, Core1對應目錄下雙擊打開工程)。

6ca861b6-eee5-11ed-90ce-dac502259ad0.png

6cb7df9c-eee5-11ed-90ce-dac502259ad0.png

用SES編譯各自的工程即可。

6cc5a60e-eee5-11ed-90ce-dac502259ad0.png

6cd28874-eee5-11ed-90ce-dac502259ad0.png

C. 工程調(diào)試

一、雙核同時調(diào)試

基于OpenOCD調(diào)試(FT2232/DAP-LINK等)。

為了達到Core0和Core1同時調(diào)試,基于OpenOCD調(diào)試在HPM-SDK例程中,對Core1的Debug做了如下限制:

1)Core1不啟動GDB Server,連接Core0啟動的GDB Server。當然使用不同的port來區(qū)分是Core0(Port:3333)還是Core1(Port:3334)。

2)Reset 和 Stop時,直接hart停止運行。

如下圖:

6cdfb436-eee5-11ed-90ce-dac502259ad0.png

因此,調(diào)試HPM-SDK雙核例程,步驟如下:

步驟1:Core0的工程調(diào)試,和正常的單核調(diào)試相同,正常SES啟動debug即可。

6ced6694-eee5-11ed-90ce-dac502259ad0.png

步驟2:Core1的工程調(diào)試,由于上述限制(為了雙核同時調(diào)試),必須先將Core0的工程Debug運行,然后在啟動Core1的Debug仿真。

6cfed33e-eee5-11ed-90ce-dac502259ad0.png

可在Core0 SES終端看到Core1 GDB connect信息:

6d0ef660-eee5-11ed-90ce-dac502259ad0.png

基于Jlink 調(diào)試

基于Jlink調(diào)試,對Core0和Core1的Debug做如下修改:

1. Core0 修改Debug連接target為:J-Link

2. Core1修改Debug連接target為:J-Link

6d1ff10e-eee5-11ed-90ce-dac502259ad0.png

3. Core1修改Debug Device為:HPM6750xVMx_CPU1

6d2d1744-eee5-11ed-90ce-dac502259ad0.png

4. 由于SES修改Device為CPU1(上一步驟修改),聯(lián)動修改ISA為:rv32i,導致編譯等異常。故在Code Generation下改回ISA為:rv32imac。

6d3a5dc8-eee5-11ed-90ce-dac502259ad0.png

5. 通常初始化時鐘等外設在Core0中完成,故為了雙核能同時調(diào)試,需先運行Core0 Debug至完成時鐘等外設初始化后,方可Core1 Debug運行。

6d49f2ec-eee5-11ed-90ce-dac502259ad0.png

二、雙核單獨調(diào)試

基于 OpenOCD 調(diào)試

如果只用來單獨調(diào)試Core1(Core0的單獨調(diào)試不做任何修改即可),可修改Core1的Debug配置,如下:

Auto Start GDB Server: Yes

Reset and Stop Command: reset halt

6d57492e-eee5-11ed-90ce-dac502259ad0.png

修改后, 可直接啟動Core1 Debug運行。

注意:由于CPU0,CPU1主從架構,通常外設等時鐘初始化會在Core0中完成。如果是單獨調(diào)試Core1,為了確保程序能正常運行,需在Core1工程中初始化時鐘等外設。如下:

6d663d4e-eee5-11ed-90ce-dac502259ad0.png

基于 Jlink 調(diào)試

單獨調(diào)試Core1 (Core0的單獨調(diào)試不做任何修改即可),JLink修改同雙核JLink修改一致(可參考上方介紹的內(nèi)容)。

同樣為了確保Core1能正常運行,需在Core1工程中初始化時鐘等外設。

6d77e4cc-eee5-11ed-90ce-dac502259ad0.png

下一篇,我們將會給各位小伙伴們介紹雙核的通信方式、資源分配和雙核應用eRPC架構,敬請期待。

“先楫半導體”(HPMicro)是一家致力于高性能嵌入式解決方案的半導體公司,產(chǎn)品覆蓋微控制器、微處理器和周邊芯片,以及配套的開發(fā)工具和生態(tài)系統(tǒng)。公司成立于2020年6月,總部坐落于上海市張江高科技園區(qū),并在天津、深圳、蘇州和杭州均設立分公司。核心團隊來自世界知名半導體公司管理團隊,具有15年以上,超過20個SoC的豐富的研發(fā)及管理經(jīng)驗。

先楫半導體以產(chǎn)品質(zhì)量為本,所有產(chǎn)品均通過嚴格的可靠性測試。目前已經(jīng)量產(chǎn)的高性能通用MCU產(chǎn)品系列HPM6700/6400、HPM6300及HPM6200,性能領先國際同類產(chǎn)品,并完成AEC-Q100認證,全力服務中國工業(yè),汽車和能源市場。

審核編輯:湯梓紅

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

    關注

    48

    文章

    7932

    瀏覽量

    154022
  • 處理器
    +關注

    關注

    68

    文章

    19851

    瀏覽量

    234134
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17915

    瀏覽量

    362590
  • RISC-V
    +關注

    關注

    46

    文章

    2525

    瀏覽量

    48495
  • 先楫半導體
    +關注

    關注

    10

    文章

    250

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    半導體HPM6750EVKMINI評估板免費試用

    國產(chǎn)高性能MCU來啦,本次給大家?guī)?b class='flag-5'>先HPM6000系列旗艦產(chǎn)品HPM6750,它采用
    發(fā)表于 04-12 10:40

    半導體重磅推出HPM6300系列—— 高性能,低功耗,高性價比

    6700高性能的特點,在成本,功耗,DSP等各個方面做了進一步的優(yōu)化,并推出了QFP封裝,進一步擴大MCU產(chǎn)品在市場上的覆蓋范圍?!?b class='flag-5'>先
    發(fā)表于 05-07 17:16

    半導體HPM6700系列正式合入OpenHarmony社區(qū)主干

    RISC-V MCU HPM6000系列的旗艦產(chǎn)品,該產(chǎn)品填補了我國在高端工業(yè)級MCU領域的空白,為礦業(yè)、工業(yè)控制、汽車電子、物聯(lián)網(wǎng)、新能源和邊緣計算等應用提供了可靠保障。其采用
    發(fā)表于 11-11 10:03

    實現(xiàn)創(chuàng)新升級替代,半導體助力中國MCU “快道超車”

    更加智能、復雜的運算。MCU的主頻快速提升,從一兩百兆提升到800MHz及以上,甚至跨入GHz領域。的半導體的HPM6000 系列在40
    發(fā)表于 04-10 18:39

    請問HPM6000系列MCU如何使用硬件DSP單元?

    HPM6000系列MCU如何使用硬件DSP單元?
    發(fā)表于 05-26 06:18

    請問HPM6000系列MCU如何使用硬件浮點數(shù)單元?

    HPM6000系列MCU如何使用硬件浮點數(shù)單元?
    發(fā)表于 05-26 06:49

    HPM6000系列微控制器片上閃存使用指南

    HPM6000系列MCU片上Flash使用指南
    發(fā)表于 06-02 08:54

    半導體HPM6750EVKMINI開發(fā)板評測

    “2021年12月17日,首屆滴水湖中國RISC-V產(chǎn)業(yè)論壇在上海臨港舉行。會上,上海半導體科技有限公司CEO 曾勁濤介紹了公司HPM6000系列RISC-V通用
    的頭像 發(fā)表于 06-20 09:14 ?5225次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導體<b class='flag-5'>HPM</b>6750EVKMINI開發(fā)板評測

    如何玩轉(zhuǎn)HPM6000系列MCU?

    本文通過對HPM6000系列的使用方法、工程編譯與調(diào)試、
    發(fā)表于 05-10 14:25 ?1190次閱讀
    如何玩轉(zhuǎn)<b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b><b class='flag-5'>雙</b><b class='flag-5'>核</b><b class='flag-5'>MCU</b>?

    HPM6000系列MCU的通信方式和資源分配

    在《玩轉(zhuǎn)MCU(上)》文章里,我們給大家介紹了HPM6000
    的頭像 發(fā)表于 05-14 09:58 ?4386次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b><b class='flag-5'>MCU</b><b class='flag-5'>雙</b><b class='flag-5'>核</b>的通信方式和資源分配

    HPM6000系列微控制器 CMSIS DAP調(diào)試器使用指南

    在上海提供的HPM系列MCU評估套件上,多數(shù)集成了基于FTDI的FT2232芯片的板載調(diào)試器,方便了開發(fā)人員直接調(diào)試并評估
    的頭像 發(fā)表于 06-19 17:02 ?4834次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b>微控制器 CMSIS DAP調(diào)試器使用指南

    HPM6000系列 ADC 相關硬件設計教程

    本文將為大家展示國產(chǎn)芯片HPM6000系列ADC性能出色的測試結果并為您提供了與HPM6000系列微控制器的模數(shù)轉(zhuǎn)換器ADC相關的外部電路設計建議。在
    的頭像 發(fā)表于 07-22 11:18 ?1705次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b> ADC 相關硬件設計教程

    HPM6000系列微控制器的BOOT 模式的說明以及相應的外部電路設計建議

    1.簡介HPM6000系列MCU目前提供了不同的啟動方式,方便客戶在研發(fā)生產(chǎn)等不同階段使用。本文提供了HPM6000系列微控制器的BOOT模
    的頭像 發(fā)表于 07-21 15:15 ?2215次閱讀
    <b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b>微控制器的BOOT 模式的說明以及相應的外部電路設計建議

    玩轉(zhuǎn)MCU(上) HPM6000系列怎么?答案超乎你想象!

    產(chǎn)品,集成2個RISC-V處理器,其中HPM6700系列兩個的最高主頻都可以達到816MHz。本文通過對
    的頭像 發(fā)表于 05-12 10:08 ?3841次閱讀
    玩轉(zhuǎn)<b class='flag-5'>MCU</b><b class='flag-5'>雙</b><b class='flag-5'>核</b>(上) <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b><b class='flag-5'>雙</b><b class='flag-5'>核</b>怎么<b class='flag-5'>玩</b>?答案超乎你想象!

    玩轉(zhuǎn)HPM6000系列(下)

    在《玩轉(zhuǎn)MCU(上)》文章里,我們給大家介紹了HPM6000
    的頭像 發(fā)表于 05-15 10:22 ?1736次閱讀
    玩轉(zhuǎn)<b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>HPM6000</b><b class='flag-5'>系列</b><b class='flag-5'>雙</b><b class='flag-5'>核</b>(下)