gpt4 book ai didi

algorithm - MPC5748G如何使用多核?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:19:23 28 4
gpt4 key购买 nike

我正在尝试在 MPC5748G 中实现 LZMA 算法(压缩/解压缩算法),但是我需要一个关于如何使用多个内核的示例,因为有 2 个 160Mhz 内核

我正在使用 LZMA 来减少刷写时间,文件首先被压缩然后发送到 MPC ... 然后它应该解压缩文件并执行刷写操作。

算法需要在一个单独的核心上运行,因为另一个核心在做其他事情,包含很多任务。结果不是很好,解压时间太长。

正如@marcus 评论的那样:问题不在于编写 lzma 解码器,而是在不同的核心上运行它

使用其他核心的任何帮助都会非常有帮助。

最佳答案

Core_Boot(void) 怎么样?

/*******************************************************************************
Function Name : Core_Boot
Engineer : Lukas Zadrapa
Date : Apr-20-2016
Parameters : NONE
Modifies : NONE
Returns : NONE
Notes : Start e200z4b and e200z2 cores
Issues : NONE
*******************************************************************************/
void Core_Boot(void)
{
/* Enable e200z4b and e200z2 cores in RUN0-RUN3, DRUN and SAFE modes */
MC_ME.CCTL[2].R = 0x00FC; /* e200z4b is active */
MC_ME.CCTL[3].R = 0x00FC; /* e200z2 is active */

/* Set start address for e200z4b and e200z2 cores */
MC_ME.CADDR[2].R = E200Z4B_BOOT_ADDRESS | 1; /* e200z4b boot address + RMC bit */
MC_ME.CADDR[3].R = E200Z2_BOOT_ADDRESS | 1; /* e200z2 boot address + RMC bit */

/* Mode change - re-enter the DRUN mode to start cores */
MC_ME.MCTL.R = 0x30005AF0; /* Mode & Key */
MC_ME.MCTL.R = 0x3000A50F; /* Mode & Key inverted */

while(MC_ME.GS.B.S_MTRANS == 1); /* Wait for mode entry complete */
while(MC_ME.GS.B.S_CURRENT_MODE != 0x3); /* Check DRUN mode entered */
}//Core_Boot

您需要在核心之间交换数据吗?问候

关于algorithm - MPC5748G如何使用多核?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37646507/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com