工具/软件:Code Composer Studio
您好~
我正在尝试使用 hyplnk_evmc6678_C66BiosExampleProject 对 EVM1 (C6678)<-> EVM2 (C6678)进行通信测试。
我运行 hyplnk_evmc6678_C66BiosExampleProject。 EVM1和 EVM2中。
基本上、当在两个 EVM 上仅使用 core0运行示例时、它可以正常运行、没有任何问题。
通过超链接连接两个芯片、用于唤醒每个 DSP 中的所有内核。
我 想在一个芯片的内核之间使用 IPC、并在芯片之间使用超链接。
因此、我修改 了 hyplnk_evmc6678_C66BiosExampleProject。
1..cinit:在配置文件中,L2SRAM -> MSMCSRAM
2.要仅在 DNUM 为0时运行、请在 hyplnk_evmc6678_C66BiosExampeProject 中添加 main.c (在 EVM_init()中启用所有内核)和修改后的 main()-> hyplnk_main ()线程
案例1: EVM1[8core up]<->EVM2[8core up]
结果: “检测到致命错误”
只有当 EVM1和 EVM2内核都被使用时、才会在超链接测试期间发生"检测到致命错误"。
它基于基本示例、但我不知道要修改哪个部分、因此我联系您...
日志如下
----------------------------------------
[C66xx_0]即将进行系统设置(PLL、PSC 和 DDR)
电源域已启用。 您可能在没有重置设备的情况下重新运行(这是正常的)
已构造 SERDES 配置:PLL=0x00000228;RX=0x0046c495;TX=0x000ccf95
系统设置工作正常
即将设置 HyperLink 外设
=================================== 超链接测试端口0
================================================================================ 在初始化之前开始寄存器===========
修订版寄存器内容:
RAW = 0x4e901900
状态寄存器内容:
RAW = 0x00000004
链路状态寄存器内容:
RAW = 0x00000000
控制寄存器内容:
RAW = 0x00000000
控制寄存器内容:
RAW = 0x00000000
=================== 在初始化之前结束寄存器===========
等待另一侧升高(0)
SERDES_STS (32位)内容:0x03078d1b;LOCK = 1
等待另一侧升高(1)
=================== 初始化后开始寄存器===========
状态寄存器内容:
RAW = 0x04402005
链路状态寄存器内容:
RAW = 0xccf00000
控制寄存器内容:
RAW = 0x00006204
=================== 初始化后结束寄存器===========
等待5秒钟以检查链路稳定性
分析每个通道的连接
前体1分析:0、1、0、1、0、1、0、1、000
光标:19分析:1、0、1、0、1、0、1
链路看起来稳定
尝试读取远程寄存器
=================== 在初始化后开始远程寄存器===========
状态寄存器内容:
RAW = 0x0440200b
链路状态寄存器内容:
RAW = 0xfdf0bdf0
控制寄存器内容:
RAW = 0x00006204
=================== 在初始化后结束远程寄存器===========
外设设置工作正常
[hyplnk_main:735]条目...(DNUM:0)
版本号:0x02010008;字符串 HYPLNK LLD 修订版本:02.01.00.08:OCT 26 2020:13:53:37
即将读取/写入一次
即将读取/写入一次
检测到严重错误 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 致命错误
本地致命 ISR status.lError = 1.
本地致命 ISR status.rError = 1.
本地致命 ISR ECERRS.dblErrGet = 1.
----------------------------------------
CASE2: EVM1[core0 only up]<->EVM2[8core up]
结果:超链接测试成功。
我的目标是使超链接在案例1中正常工作。
但是、我无法理解为什么我设置使用所有内核的操作会产生问题。
使用超链接时、主/从配置是否存在错误? (例如超链接主模式。 正确吗?)
如果主/从配置是原因、我想知道如何将一个 EVM 设置为从模式。
附加修改后的代码。
1.仅限 core0 :
2. 8个内核上: