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

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

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

ZYNQ學(xué)習(xí)要點(diǎn):雙核通信

454398 ? 來(lái)源:csdn ? 作者:crazyMadKing ? 2020-11-26 13:47 ? 次閱讀

今天,我們聊聊雙核通信。雙核通信的基礎(chǔ)是已經(jīng)建立好了雙核工程,且配置完成。兩個(gè)CPU之間傳遞數(shù)據(jù),采用了共享內(nèi)存,共享內(nèi)存設(shè)置在OCM(On Chip Memory)內(nèi)。

在沒(méi)有做其他設(shè)置的情況下,ZYNQ上電后地址空間分別如下圖所示:


OCM共256KB按照64KB分為4塊,其中前三塊在SDK中表述為RAM0占192KB處于地址空間的最開(kāi)頭和DDR共用地址空間,最后一塊64KB處于地址空間的最后。ZYNQ的DDR固定占地址空間的最開(kāi)頭1GB字節(jié)因而ZYNQ的DDR最大容量就只有1GB。

為了避開(kāi)OCM從上圖可知實(shí)際使用的DDR只有1023MB(最開(kāi)頭的1MB被保留避開(kāi)OCM的前三塊)。從0x40000000到0xDFFFFFFF的2GB空間留給了自定義IP或者其他IP的寄存器,從BSP的xparameters.h可以看出在PL部分添加的IP其基址都是從0x40000000開(kāi)始的,而ZYNQ自己的寄存器則從0xE0000000開(kāi)始編制,具體寄存器內(nèi)容請(qǐng)查閱UG585的附錄B Register Details。

其實(shí)Standalone作為基礎(chǔ)的BSP所作的工作都是在通過(guò)指針訪問(wèn)各個(gè)寄存器而已,在不考慮安全性的前提下可以完全不用BSP直接操作寄存器對(duì)ZYNQ進(jìn)行操作。
需要在SDK中進(jìn)行雙核通信的設(shè)置,主要是程序的設(shè)置。

1、CPU1需要被CPU0啟動(dòng)

CPU0的配置

設(shè)置共享內(nèi)存區(qū)域:

#define Send_CPU1_Status (*(volatile unsigned int *)(0xFFFF0000))

在主函數(shù)中添加:

Xil_SetTlbAttributes(0xFFFF0000,0x14de2);// CPU0中禁止OCM的Cache屬性

2、CPU1通信配置

CPU1的配置

設(shè)置共享內(nèi)存區(qū)域:

#define Send_CPU1_Status (*(volatile unsigned int *)(0xFFFF0000))

在主函數(shù)中添加:

Xil_SetTlbAttributes(0xFFFF0000,0x14de2);// CPU0中禁止OCM的Cache屬性

3. 設(shè)置完成

雙核之間通過(guò)對(duì)該內(nèi)存區(qū)域進(jìn)行讀寫(xiě)操作完成通信功能。

編輯:hfy


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

    關(guān)注

    68

    文章

    10781

    瀏覽量

    210517
  • Zynq
    +關(guān)注

    關(guān)注

    9

    文章

    607

    瀏覽量

    47084
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ZYNQ核心板學(xué)習(xí)筆記

    此款開(kāi)發(fā)板使用的是 Xilinx 公司的 Zynq7000 系列的芯片,型號(hào)為 XC7Z020-2CLG484I,484 個(gè)引腳的 FBGA 封裝。
    的頭像 發(fā)表于 10-24 18:08 ?174次閱讀
    <b class='flag-5'>ZYNQ</b>核心板<b class='flag-5'>學(xué)習(xí)</b>筆記

    dsp和單核dsp的區(qū)別

    DSP(Digital Signal Processor,數(shù)字信號(hào)處理器)與單核DSP在多個(gè)方面存在顯著差異,這些差異主要體現(xiàn)在處理能力、任務(wù)分配、資源利用以及適用場(chǎng)景等方面。 一、處理能力
    的頭像 發(fā)表于 09-24 16:14 ?310次閱讀

    正點(diǎn)原子ZYNQ7015開(kāi)發(fā)板!ZYNQ 7000系列、ARM、PCIe2.0、SFPX2,性能強(qiáng)悍,資料豐富!

    本帖最后由 jf_85110202 于 2024-9-14 10:33 編輯 正點(diǎn)原子ZYNQ7015開(kāi)發(fā)板!ZYNQ 7000系列、ARM、PCIe2.0、SFPX2,性能
    發(fā)表于 09-14 10:12

    TI基于ConcertoMCU的PRIME電力線通信數(shù)據(jù)集中器方案應(yīng)用說(shuō)明

    電子發(fā)燒友網(wǎng)站提供《TI基于ConcertoMCU的PRIME電力線通信數(shù)據(jù)集中器方案應(yīng)用說(shuō)明.pdf》資料免費(fèi)下載
    發(fā)表于 09-10 11:10 ?0次下載
    TI基于Concerto<b class='flag-5'>雙</b><b class='flag-5'>核</b>MCU的PRIME電力線<b class='flag-5'>通信</b>數(shù)據(jù)集中器方案應(yīng)用說(shuō)明

    [XILINX] 正點(diǎn)原子ZYNQ7035/7045/7100開(kāi)發(fā)板發(fā)布、ZYNQ 7000系列、ARM、PCIe2.0、SFPX2!

    正點(diǎn)原子FPGA新品ZYNQ7035/7045/7100開(kāi)發(fā)板,ZYNQ 7000系列、ARM、PCIe2.0、SFPX2! 正點(diǎn)原子Z100
    發(fā)表于 09-02 17:18

    FPGA的IP軟使用技巧

    的工作原理、使用方法和限制條件。 參數(shù)化配置 : 如果IP軟提供了參數(shù)化配置選項(xiàng),可以根據(jù)項(xiàng)目需求進(jìn)行配置。例如,對(duì)于RAM IP軟,可以選擇單端口RAM、簡(jiǎn)單端口RAM或真正
    發(fā)表于 05-27 16:13

    簡(jiǎn)談Xilinx Zynq-7000嵌入式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    的處理器可以分為軟和硬核處理器。 硬核處理器:早期Xilinx將IBM公司的PowerPC硬核集成在V5系列的FPGA中,后來(lái)將ARM公司的Cortex-A9硬核集成在ZYNQ
    發(fā)表于 05-08 16:23

    Xilinx ZYNQ 動(dòng)手實(shí)操演練

    。 ZYNQ=processor Zynq-7000嵌入式處理平臺(tái)系列的每款產(chǎn)品均采用帶有NEON及精度浮點(diǎn)引擎的ARMCortex
    發(fā)表于 05-03 19:28

    簡(jiǎn)談Xilinx Zynq-7000嵌入式系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    的PowerPC硬核集成在V5系列的FPGA中,后來(lái)將ARM公司的Cortex-A9硬核集成在ZYNQ 7000系列的SoC芯片中 軟處理器:對(duì)于一些對(duì)處理器性能要求不是很高的
    發(fā)表于 04-10 16:00

    STM32H747如何用JLINK調(diào)試?

    1.我之前是在STM32H747的官方開(kāi)發(fā)板discover上進(jìn)行調(diào)試,板子上自帶了STlink調(diào)試器,按照官方文檔配置可以進(jìn)行調(diào)試 2.目前自己設(shè)計(jì)的板子上是調(diào)試接口是SWD接口,手上只有
    發(fā)表于 03-28 08:58

    PSoC架構(gòu)中都可以訪問(wèn)全部外設(shè)嗎?

    你好!如標(biāo)題:PSoC 架構(gòu)中兩個(gè)內(nèi)核對(duì)芯片的全部外設(shè)都有直接訪問(wèn)能力嘛?如果都可以直接訪問(wèn),那IPC模塊的主要應(yīng)用場(chǎng)景是哪些呢?
    發(fā)表于 02-02 11:44

    AD9683的引腳如何與zynq 7015芯片中的JESD204 ip端口對(duì)應(yīng)相連?

    目前,我在設(shè)計(jì)中想使用ZYNQ 7015系列的FPGA,利用JESD204 IP接收A/D轉(zhuǎn)換器AD9683轉(zhuǎn)換完成后的數(shù)據(jù)。但是JESD204 IP的端口很多,我不知道應(yīng)該如何將AD9683
    發(fā)表于 12-15 07:14

    基于zynq7020器件來(lái)搭建Linux系統(tǒng)

    Zynq器件將arm和FPGA結(jié)合,利用了兩者各自的優(yōu)勢(shì),arm可以實(shí)現(xiàn)靈活的控制,而FPGA部分可以實(shí)現(xiàn)算法加速,這大大擴(kuò)展了zynq的應(yīng)用。比如深度學(xué)習(xí)加速,圖像處理等等。PL側(cè)表示FPGA的邏輯部分,PS側(cè)為arm端以及一
    發(fā)表于 11-09 11:28 ?2329次閱讀
    基于<b class='flag-5'>zynq</b>7020器件來(lái)搭建Linux系統(tǒng)

    多核異構(gòu)中A與M通信過(guò)程

    目前域控項(xiàng)目有的采用S32G這類(lèi)多核異構(gòu)的芯片,轉(zhuǎn)載一篇分析下多核異構(gòu)中A與M通信過(guò)程的文章。
    的頭像 發(fā)表于 10-31 11:09 ?1032次閱讀
    多核異構(gòu)中A<b class='flag-5'>核</b>與M<b class='flag-5'>核</b><b class='flag-5'>通信</b>過(guò)程

    鑒探測(cè)器的設(shè)計(jì)要點(diǎn)

    電子發(fā)燒友網(wǎng)站提供《鑒探測(cè)器的設(shè)計(jì)要點(diǎn).doc》資料免費(fèi)下載
    發(fā)表于 10-27 11:02 ?0次下載
    <b class='flag-5'>雙</b>鑒探測(cè)器的設(shè)計(jì)<b class='flag-5'>要點(diǎn)</b>