This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RTOS:具有 Mistral RTM BOC 修订版 D 的 EVMK2H 和 EVMC6657带有问题(不起作用)的 tirtos 超链接示例

Guru**** 666030 points
Other Parts Discussed in Thread: CCSTUDIO, TMS320C6657, SYSBIOS, 66AK2H12, HL5CABLE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/793607/rtos-evmk2h-with-mistral-rtm-boc-rev-d-and-evmc6657-hyperlink-example-for-tirtos-with-problem-not-working

主题中讨论的其他器件:CCStudioTMS320C6657TCI6636K2HSYSBIOS66AK2H12HL5CABLE

工具/软件:TI-RTOS

您好!

   我们将使用您的 ti-RTOS 超链接示例(无 xDMA 或中断配置)、在某些硬件配置中、我们使用 K2H (使用 RTM BOC 的 EMV 板)和几个 C6657 (仅对 EVM 板进行测试的 HL C6657 HL 连接):

1) 1)内部环路中的 K2H 和 C6657正常工作

2) 2) C6657<->C6657的工作原理  

3) K2H <-> C6657两个 K2H 端口上都不工作(0/1)

当尝试读取远程寄存器时、测试将停止。

我已经测试了一些软件配置:

1) 1) 1通道@ 3.125Gb/s

2) 2) 4条通道@ 6.25Gb/s

3)调试/发布版本

在 K2H 侧、我可以看到以下行为:

版本号:0x02010008;字符串 HYPLNK LLD 修订版本:02.01.00.08:10月 6日2018:02:57:41
即将进行系统设置(PLL、PSC 和 DDR)
已构造 SERDES 配置:PLL=0x00000228;RX=0x0046c495;TX=0x000ccf95
系统设置工作正常
即将设置 HyperLink 外设
=================================== 超链接测试端口0
================================================================================ 在初始化之前开始寄存器===========
修订版寄存器内容:
 RAW   = 0x4e902101
状态寄存器内容:
 RAW       = 0x00003004
链路状态寄存器内容:
 RAW      = 0x00000000
控制寄存器内容:
 RAW            = 0x00000000
控制寄存器内容:
 RAW       = 0x00000000
=================== 在初始化之前结束寄存器===========
HyperLink Serdes Common Init Complete

而在 C6657侧:

版本号:0x02010006;字符串 HYPLNK LLD 修订版本:02.01.00.06:2017年3月28日:14:26:56
即将进行系统设置(PLL、PSC 和 DDR)
已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5
系统设置工作正常
即将设置 HyperLink 外设
=================================== 超链接测试端口0
================================================================================ 在初始化之前开始寄存器===========
修订版寄存器内容:
 RAW   = 0x4e901900
状态寄存器内容:
 RAW       = 0x00000004
链路状态寄存器内容:
 RAW      = 0x00000000
控制寄存器内容:
 RAW            = 0x00000000
控制寄存器内容:
 RAW       = 0x00000000
=================== 在初始化之前结束寄存器===========
等待另一侧升高(0)       
SERDES_STS (32位)内容:0x03060c19;LOCK = 1
等待另一侧升高(      1)
等待另一侧升高(      2)
等待另一侧出现      (3)
等待另一侧出现      (4)
等待另一侧出现      (5)

SerDes 配置问题、不是吗?

#define hyplnk_example_port         0
#define hyplnk_example_REFCLK_use_PLATCFG
#define hyplnk_example_allow_1_lane
#define hyplnk_example_SERRATE_03p125
#define hyplnk_example_ASYNC_Clocks
#define hyplnk_example_EQ_analysis
#define hyplnk_example_test_cpu_token_exchange

在其他版本(我的代码)中、我更改了一些内容、通道正常工作、但当代码到达读取远程寄存器时、DSP0 (CC6657)将崩溃。

在 K2H 侧:

00:00:20 00:00:20 hyplnkMemoryMapped.c@735:   版本号:0x02010008;字符串 HYPLNK LLD 修订版本:02.01.00.08:OCT 6
2018:02:57:41
00:00:20 00:00:00 hyplnkMemoryMapped.c@746:    即将进行系统设置(PLL、PSC 和 DDR)
00:00:20 00:00:00 hyplnkLLDIFace.c@1036:       构建的 SERDES 配置:PLL=0x00000228;RX=0x0046c495;TX=0x000ccf95
00:00:20 00:00:00 hyplnkMemoryMapped.c@753:    系统设置正常
00:00:20 00:00:00 hyplnkMemoryMapped.c@761:    即将设置超链接外设
00:00:20 00:00:00 hyplnkLLDIFace.c@1605:       ===================
00:00:20 00:00:00 hyplnkLLDIFace.c@1606:       超链接测试端口0
00:00:20 00:00:00 hyplnkLLDIFace.c@1607:       ===========================
00:00:20 00:00:00 hyplnkLLDIFace.c@1619:       === 在初始化之前开始寄存器===========
00:00:20 00:00:00 hyplnkLLDIFace.c@607:修订版寄存器内容: RAW   = 0x4e902101
00:00:20 00:00:00 hyplnkLLDIFace.c@656:状态寄存器内容: RAW       = 0x00003004
00:00:20 00:00:00 hyplnkLLDIFace.c@699:链路状态寄存器内容: RAW      = 0x00000000
00:00:20 00:00:00 hyplnkLLDIFace.c@730:控制寄存器内容: RAW            = 0x00000000
00:00:20 00:00:00 hyplnkLLDIFace.c@752:控制寄存器内容: RAW       = 0x00000000
00:00:20 00:00:00 hyplnkLLDIFace.c@1625:       =========== 在初始化之前结束寄存器===========
00:00:20 00:00:00 hyplnkLLDIFace.c@534:超链接 Serdes Common Init Complete
00:00:21 00:00:01 hyplnkLLDIFace.c@560:HyperLink 串行器/解串器通道0初始化完成
00:00:21 00:00:00 hyplnkLLDIFace.c@1836:       === 初始化后开始寄存器===========
00:00:21 00:00:00 hyplnkLLDIFace.c@656:状态寄存器内容: RAW       = 0x04400005
00:00:21 00:00:00 hyplnkLLDIFace.c@699:链路状态寄存器内容: RAW      = 0xccf00cf0
00:00:21 00:00:00 hyplnkLLDIFace.c@730:控制寄存器内容: RAW            = 0x00004000
00:00:21 00:00:00 hyplnkLLDIFace.c@1840:       =========== 初始化后结束寄存器===========
00:00:21 00:00:00 hyplnkMemoryMapped.c@768:    外设设置工作正常
00:00:21 00:00:00 hyplnkLLDIFace.c@1899:       等待5秒以检查链路稳定性
00:00:26 00:00:05 hyplnkLLDIFace.c@1911:       分析每个通道的连接
00:00:26 00:00:00 hyplnkLLDIFace.c@1138:       前体1.
00:00:26 00:00:00 hyplnkLLDIFace.c@1163:
00:00:26 00:00:00 hyplnkLLDIFace.c@1142:       后标:19
00:00:26 00:00:00 hyplnkLLDIFace.c@1163:
00:00:26 00:00:00 hyplnkLLDIFace.c@1915:       链路看起来稳定
00:00:26 00:00:00 hyplnkLLDIFace.c@1917:       即将尝试读取远程寄存器

C6657端:

00:00:08 00:00:08 hyplnkMemoryMapped.c@718:    版本号:0x02010006;字符串 HYPLNK LLD 修订版本:02.01.00.06:2017年3月28日:146
00:00:08 00:00:00 hyplnkMemoryMapped.c@728:    即将进行系统设置(PLL、PSC 和 DDR)
00:00:08 00:00:00 hyplnkLLDIFace.c@971:构造的 SERDES 配置:PLL=0x00000064;RX=0x0046c495;TX=0x000cc795
00:00:08 00:00:00 hyplnkMemoryMapped.c@735:    系统设置工作正常
00:00:08 00:00:00 hyplnkMemoryMapped.c@744:    即将设置 HyperLink 外设
00:00:08 00:00:00 hyplnkLLDIFace.c@1176:       ===========================
00:00:08 00:00:00 hyplnkLLDIFace.c@1177:       超链接测试端口0
00:00:08 00:00:00 hyplnkLLDIFace.c@1178:       ===========================
00:00:08 00:00:00 hyplnkLLDIFace.c@1190:       === 在初始化之前开始寄存器===========
00:00:08 00:00:00 hyplnkLLDIFace.c@597:修订版寄存器内容: RAW   = 0x4e901900
00:00:08 00:00:00 hyplnkLLDIFace.c@646:状态寄存器内容: RAW       = 0x00000004
00:00:08 00:00:00 hyplnkLLDIFace.c@689:链路状态寄存器内容: RAW      = 0x00000000
00:00:08 00:00:00 hyplnkLLDIFace.c@720:控制寄存器内容: RAW            = 0x00000000
00:00:08 00:00:00 hyplnkLLDIFace.c@742:控制寄存器内容: RAW       = 0x00000000
00:00:08 00:00:00 hyplnkLLDIFace.c@1196:       === 在初始化之前结束寄存器===========
00:00:08 00:00:00 hyplnkLLDIFace.c@831:SerDes_STS (32位)内容:0x05001429;LOCK = 1
00:00:08 00:00:00 hyplnkLLDIFace.c@781:VUsr_CFGPLL 超链接 SerDes PLL 配置:0x00000064
00:00:08 00:00:00 hyplnkLLDIFace.c@782:VUsr_CFGRX0超链接串行器/解串器接收配置0:0x0046c495
00:00:08 00:00:00 hyplnkLLDIFace.c@783:VUsr_CFGTX0超链接串行器/解串器发送配置0:0x000cc795
00:00:08 00:00:00 hyplnkLLDIFace.c@784:VUsr_CFGRX1超链接串行器/解串器接收配置1:0x0046c495
00:00:08 00:00:00 hyplnkLLDIFace.c@785:VUsr_CFGTX1超链接串行器/解串器发送配置1:0x000cc795
00:00:08 00:00:00 hyplnkLLDIFace.c@786:VUsr_CFGRX2超链接 SerDes 接收配置2:0x0046c495
00:00:08 00:00:00 hyplnkLLDIFace.c@787:VUsr_CFGTX2超链接串行器/解串器发送配置2:0x000cc795
00:00:08 00:00:00 hyplnkLLDIFace.c@788:VUsr_CFGRX3超链接串行器/解串器接收配置3:0x0046c495
00:00:08 00:00:00 hyplnkLLDIFace.c@789:VUsr_CFGTX3超链接串行器/解串器发送配置3:0x000cc795
00:00:08 00:00:00 hyplnkLLDIFace.c@799:芯片版本内容:0x0000b97a
00:00:08 00:00:00 hyplnkLLDIFace.c@801:通道电源管理控制内容:0x07070004
00:00:08 00:00:00 hyplnkLLDIFace.c@803:串行器/解串器控制和状态1内容:0xff0000
00:00:08 00:00:00 hyplnkLLDIFace.c@805:串行器/解串器控制和状态2内容:0x00000000
00:00:08 00:00:00 hyplnkLLDIFace.c@807:串行器/解串器控制和状态3内容:0x00000000
00:00:08 00:00:00 hyplnkLLDIFace.c@809:串行器/解串器控制和状态4内容:0x00000000
00:00:08 00:00:00 hyplnkLLDIFace.c@811:链接状态内容:0xccf00cf0
00:00:08 00:00:00 hyplnkLLDIFace.c@1404:       =========== 初始化后开始寄存器===========
00:00:08 00:00:00 hyplnkLLDIFace.c@646:状态寄存器内容: RAW       = 0x04400005
00:00:08 00:00:00 hyplnkLLDIFace.c@689:链路状态寄存器内容: RAW      = 0xccf00cf0
00:00:08 00:00:00 hyplnkLLDIFace.c@720:控制寄存器内容: RAW            = 0x00004000
00:00:08 00:00:00 hyplnkLLDIFace.c@1408:       === 初始化后结束寄存器===========
00:00:08 00:00:00 hyplnkLLDIFace.c@1409:       等待5秒以检查链路稳定性
00:00:13 00:00:05 hyplnkLLDIFace.c@1425:       链路看起来稳定
00:00:13 00:00:00 hyplnkLLDIFace.c@1426:       即将尝试读取远程寄存器

请帮帮我们。

此致、

Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我使用 SDK 05.02.00.10

    BR

    Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Dario、

    确保严格遵循 Processor SDK RTOS 用户指南中的建议:
    对于2个电路板:通过检查 pdk_install_DIR/packages/ti/drv/hyplnk/example/hyplnkLLDCfg.h、确保两个电路板的配置相互匹配:

    hyplnk_example_port -> K2H/K2K/K2E 要使用的端口
    hyplnk_example_allow_x_lanes -> 0、1或4个通道
    hyplnk_example_SERRATE_xxpxxx -> SerDes 速率设置

    在两个电路板上加载相同的示例。 它是完全对称的。 无需特殊配置即可区分 A 侧和 B 侧。每侧应生成与以下类似的输出。

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Yordan、您好!

      我昨天(和明天)花了很大一部分时间尝试对 C6657和 K2H 使用相同的 CCS&PDK 版本、但无法在 H2K 环境中构建 C6657应用、 然后、我尝试将相对较旧的软件包(几年前已安装)用于 CC6657:

    CrossCompiler 工具 TI 8.1.0 (CCStudio 6.1.3.00034)
    BIOS_6_46_01_38
    pdk_c665x_2_0_4
    xdctools_3_32_00_06_core

    对于 K2H、以下版本:

    CrossCompiler 工具 TI 8.2.4 (CCStudio 8.2.0.00007)
    BIOS_6_73_00_12
    pdk_k2hk _4_0_11
    xdctools_3_50_08_24_core

    仅使用 SYS/BIOS 和 PDK。

    Hlink 演示是 pdk_k2hk_4_0_11中的演示、我已经配置了4条3.125Gb/s 信道的无 xDMA 和无 ISR 演示

    我还添加了一个定制软件平台、以打印特定于 DSP&PDK 版本的 UART。

    我使用了存储在闪存(NOR)中的 C6657版本、使用 IBL (作为 NOR 引导加载程序)、使用的源文件为:

    hyplnk.cmd
    hyplnk_device.c
    hyplnkExample.c
    hyplnkLLDCfg.h
    hyplnkLLDIFace.c
    hyplnkLLDIFace.h
    hyplnkPlatCfg.h
    hyplnkResource.c
    hyplnkResource.h
    memoryMappedExample.cfg

    只有 hyplnk_device.c 不同、因为在 K2H 上、我们有几个 HL 通道、另一个在其他电路板中。

    存储在几个 C6657 EVM 板中的演示可正常工作、但在混合连接(C6657和 K2H)上无法正常工作(正如我在前一个 TT 中报告的那样)。

    C6657:

    IBL 版本:1.0.17+
    IBL:从 NOR 引导

    外部 DDR 初始化状态:40000004
    外部 DDR 初始化良好状态= 0x1
    评估软件版本0.1.1内部版本18 CPU 频率1000 MHz DSP 的内核1、共2个
    DSP 硬件修订版0 DSP 名称"TMS320C6657"电路板名称"TMDXEVM6657L"版本号:0x02010006;字符串 HYPLNK LLD 修订版:02.01.00.06:2017年3月28日:14:26:03
    即将进行系统设置(PLL、PSC 和 DDR)
    已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5
    系统设置工作正常
    即将设置 HyperLink 外设
    =================================== 超链接测试端口0
    ================================================================================ 在初始化之前开始寄存器===========
    修订版寄存器内容:
     RAW   = 0x4e901900
    状态寄存器内容:
     RAW       = 0x00000004
    链路状态寄存器内容:
     RAW      = 0x00000000
    控制寄存器内容:
     RAW            = 0x00000000
    控制寄存器内容:
     RAW       = 0x00000000
    =================== 在初始化之前结束寄存器===========
    等待另一侧升高(0)       
    SERDES_STS (32位)内容:0x03460f1f;LOCK = 1
    等待另一侧升高(      1)
    等待另一侧升高(      2)
    等待另一侧出现      (3)

    K2H:

    评估软件版本0.1.1内部版本18 CPU 频率983 MHz DSP 的内核1、共8个
    DSP 硬件修订版0 DSP 名称"TCI6636K2H"电路板名称"TMDXEVM6636K2H"版本号:0x02010008;字符串 HYPLNK LLD 修订版:02.01.00.08:OCT 6 2018:02:57:41
    即将进行系统设置(PLL、PSC 和 DDR)
    已构造 SERDES 配置:PLL=0x00000228;RX=0x0046c495;TX=0x000ccf95
    系统设置工作正常
    即将设置 HyperLink 外设
    =================================== 超链接测试端口0
    ================================================================================ 在初始化之前开始寄存器===========
    修订版寄存器内容:
     RAW   = 0x4e902101
    状态寄存器内容:
     RAW       = 0x00003004
    链路状态寄存器内容:
     RAW      = 0x00000000
    控制寄存器内容:
     RAW            = 0x00000000
    控制寄存器内容:
     RAW       = 0x00000000
    =================== 在初始化之前结束寄存器===========
    HyperLink 串行器/解串器通用初始化完成  --> 阻止

    cfg 文件为:


    VAR 内存         = xdc.useModule('xdc.runtime.Memory');
    VAR BIOS              = xdc.useModule('ti.sysbios.BIOS');
    VAR 任务               = xdc.useModule('ti.sysbios.knl.Task');
    var hlink = xdc.useModule('ti.drv.hyplnk.Settings');
    VAR devType ="c6657";//或"K2H"
    hlink.deviceType = devType;
    VAR_l = xdc.useModule('ti.csl.Settings');
    Csl.deviceType = devType;
    Csl.useCSLIntcLib = true;
    Program.sectMap[".text"] ="MSMCSRAM";
    Program.sectMap[".const"]="MSMCSRAM";
    Program.sectMap[".init_array"]="L2SRAM";
    Program.sectMap[".csl_vect"]="L2SRAM";
    program.stack = 1024*4 + 0x400;
    Program.sectMap[".bss:hyplnkData"]= new Program.SectionSpec ();
    Program.sectMap[".bss:hyplnkData"].loadAddress=0x830000;
    Program.sectMap[".bss:testData"]="L2SRAM";
    Program.sectMap[".bss:QMSSData"]= new Program.SectionSpec ();
    Program.sectMap[".bss:QMSSData"].loadAddress=0x850000;
    Program.sectMap[".bss:packetData"]= new Program.SectionSpec ();
    Program.sectMap[".bss:packetData"].loadAddress=0x870000;


    Program.sectMap["platform_lib"]        ="L2SRAM";
    Program.sectMap["systemHeap"] ="L2SRAM";

    VAR HeapMem               = xdc.useModule('ti.sysbios.heaps.HeapMem');
    var heapMemParams         = new HeapMem.Params();
    heapMemParams.size        = 0x3D000;
    heapMemParams.sectionName ="systemHeap (系统堆)";
    program.global.heap0      = HeapMem.create (heapMemParams);
    Memory.defaultHeapInstance = Program.global.heap0;

    所有其他.c 和.h 文件(在 Hyperlink 演示代码中)在两种配置中都是相同的。

    此致、

    Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../HL_5F00_K2H_5F00_C6657.zip
    有用于测试的 CCS 工程。

    BR

    Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Dario、

    我的一侧没有 C6657 EVM、因此我无法测试它。 不确定是否已验证此类连接 C6657至 K2H、但它应类似于 C6678至 K2H (如 Processor SDK RTOS 用户指南: software-dl.ti.com/.../index_device_drv.html 中所示)。

    [引用]但无法在 H2K 环境中构建 C6657应用程序

    据我所知、C6657 DSP 和 K2H DSP 内核包之间存在一些差异、因此这是可以预料的。

    我可以建议尝试使用最新的 TMS320C6657处理器 SDK RTOS 来构建 C6657 Hyplnk 示例、并使用66AK2H12处理器 SDK RTOS 来构建 K2H hplnk 示例并在电路板上运行这些示例。 有关 CCS 调试会话的指导、请参阅以下主题:
    e2e.ti.com/.../365824
    e2e.ti.com/.../587549

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Yordan、您好!

     首先、感谢您的支持。

    我使用几个外部 XDS100_V3 (因为当我尝试使用 Linux 主机更新 XDS100_V1时、它们会断开)
    我使用经过调整以识别其序列号的仿真器配置文件。
    当我使用几块 C6657电路板时、我使用在 NOR 中写入应用程序、以避免在配置文件中重新配置 SN。
    但这并不是一个大问题、因为这种配置(几个 EVM c6657)可以正常工作。

    由于我已经为旧工程安装了新的 PDK 版本、因此我在 c6657上没有使用新的 PDK 版本。
    如果您只有 C6678、我认为它可以用于测试、因为我认为问题出在 K2H 侧。

    我还在 Mistral 请求了位支持、以确保在测试中使用 K2H/RTMBOC。

    此致、
    Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    [引用]我使用几个外部 XDS100_V3 (因为当我尝试使用 Linux 主机更新 XDS100_V1时、它们会损坏)
    我使用经过调整的仿真器配置文件来识别其序列号。

    您是否意味着 K2H EVM 的板载 XDS 仿真器无法正常工作?

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    很抱歉、我的错误是 XDS200插件无法正常工作(更新过程错误)、我的 XDS100V3最快速地尊重板载仿真器、然后我使用外部仿真器。

    BR、
    Dario
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    K2H、C6657回送模式工作正常是一件很好的事情。 C6657至 C6657也起了作用。 您是否有2个 K2H EVM 和2个 BOC 卡来验证 K2H 至 K2H 是否也正常工作?

    故障可以是硬件或软件。 对于软件、典型的原因是数据速率不匹配。 对于 C6657、C6678或 K2H、超链接 IP 是相同的。 C6657和 C6678具有相同的串行器/解串器、但 K2H 串行器/解串器不同。 我们运行的 K2H 和 C66x 之间的典型测试是3.125Gbps 或6.25Gbps、x4通道。 过去、我们验证了 C6678和 K2H 之间的超链接、我们有这种产品的定制产品。 超链接示例代码已有几年未更改、因此在不同侧使用不同的 CCS/SysBIOS/PRSDK 版本无关紧要。

    在尝试访问远程侧之前、需要检查的一个重要事项是查看寄存器偏移量0x58、如果您使用 x4通道、并且通道未反相、则应为0xFDF0BDF0。 如果此状态不正确(例如、链接状态寄存器内容:RAW = 0xccf00cf0)、远程访问将锁定整个系统。

    对于 C6657 EVM、超链接参考时钟为250MHz。 我运行了示例以检查 PLL 设置:

    当3.125Gbps 时:已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5
    通过对其进行解码:请参阅超链接用户指南:3.4超链接串行器/解串器配置和状态寄存器
    MPY 为12.5、RX 和 TX 为四分之一速率、对我来说是正确的。 (250 * 12.5 * 1 = 3.125)

    当6.25Gbps 时:已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c495;TX=0x000cc315
    MPY 仍然为12.5、RX 和 TX 为半速率、这对我来说是正确的。 (250 * 12.5 * 2 = 6.25)

    为什么在日志中:
    已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c495;TX=0x000cc795
    已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5

    您的设置与原始代码不同?

    在 K2H 侧、我查看了代码:
    #elif defed hyplnk_example_SERRATE_06p250
    linkRate = CSL_SERDES_LINK_RATE_6p25G;
    通道速率= CSL_SERDES_RAIN_FULL_RATE;
    #elif defed hyplnk_example_SERRATE_03p125
    linkRate = CSL_SERDES_LINK_RATE_6p25G;
    通道速率= CSL_SERDES_RAIN_HALF_RATE;

    没错。

    我的建议是:
    1) 1)如果您有两个 K2H+BOC、请验证超链接是否能够排除硬件问题
    2) 2)对于 K2H --- C6657,请尝试以3.125Gbps x 4作为起点。 只需使用标准超链接测试示例、但更改 hyplnkLLDCfg.h:

    #define hyplnk_example_REFCLK_use_PLATCFG

    /*********
    *选择内部环回或使用 SERDES 连接
    (小部分 /
    ////////////////////// #define hyplnk_example_loopback

    /*********
    *选择允许的通道数
    (小部分 /
    //#define hyplnk_example_allow_0_landes
    //#define hyplnk_example_allow_1_lane
    #define hyplnk_example_allow_4_lanes

    /*********
    *选择串行速率
    (小部分 /
    //#define hyplnk_example_SERRATE_01p250
    #define hyplnk_example_SERRATE_03p125
    //#define hyplnk_example_SERRATE_06p250
    //#define hyplnk_example_SERRATE_07p500
    //#define hyplnk_example_SERRATE_10p000
    //#define hyplnk_example_SERRATE_12p500

    然后向我发送两侧的 CCS 控制台日志。 您还可以使用 CCS JTAG 检查超链接偏移量0x58值。 3.2.18链接状态寄存器(基址+ 0x58)。

    您可以在代码中设置一个断点(以避免读取远程侧并锁定)、并使用 CCS 存储器保存将超链接寄存器从偏移量0x0转储到0x7c (注意、只需打开一个适用于上述寄存器范围的较小 CCS 存储器窗口。 打开一个较大的交叉点0x80将读取到远程端、如果没有真正出现超链接、则可以锁定系统)。

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

    我在几天前再次使用我的 zipfile (保存在上一个线程上)复制了相同的测试。
    我已捕获以下信息和日志:

    配置:

    #define hyplnk_example_REFCLK_use_PLATCFG
    #define hyplnk_example_allow_4_lanes
    #define hyplnk_example_SERRATE_03p125
    #define hyplnk_example_ASYNC_Clocks
    #define hyplnk_example_EQ_analysis
    //#define hyplnk_example_loopback
    //#define enableEDMA
    //#define infrastructDMA (定义基础设施 DMA)
    //#define hyplnk_example_error_interrupt



    a)首次测试:C6657 <--> C6657

    C6657 (core0) XDS100_V3 (调试)
    评估软件版本0.1.1内部版本18 CPU 频率1000 MHz DSP 的内核1、共2个
    DSP 硬件版本0 DSP 名称"TMS320C6657"板名称"TMDXEVM6657L"
    版本号:0x02010006;字符串 HYPLNK LLD 修订版本:02.01.00.06:2017年3月28日:14:26:03
    即将进行系统设置(PLL、PSC 和 DDR)
    已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5
    系统设置工作正常

    ===使用 CPU 传输的超链接结果===
    在7115M 个周期内通过65536个令牌往返(通过 hyplnk 读取+写入)
    每次往返大约108571个周期
    ===这不是优化的示例===
    检查统计信息
    超链接 LLD 示例已成功完成!


    C6657 (core0)(NOR)
    评估软件版本0.1.1内部版本18 CPU 频率1000 MHz DSP 的内核1、共2个
    DSP 硬件版本0 DSP 名称"TMS320C6657"板名称"TMDXEVM6657L"
    版本号:0x02010006;字符串 HYPLNK LLD 修订版本:02.01.00.06:2017年3月28日:14:26:03
    即将进行系统设置(PLL、PSC 和 DDR)
    已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5
    系统设置工作正常
    (笑声)
    ===使用 CPU 传输的超链接结果===
    在7115M 个周期内通过65536个令牌往返(通过 hyplnk 读取+写入)
    每次往返大约108571个周期
    ===这不是优化的示例===
    检查统计信息
    超链接 LLD 示例已成功完成!



    b)第二项测试:K2H (core0)<->C6657 (core0)(相同配置)

    K2H:
    评估软件版本0.1.1内部版本18 CPU 频率983 MHz DSP 的内核1、共8个
    DSP 硬件版本0 DSP 名称"TCI6636K2H"电路板名称"TMDXEVM6636K2H"
    版本号:0x02010008;字符串 HYPLNK LLD 修订版本:02.01.00.08:1
    即将进行系统设置(PLL、PSC 和 DDR)
    已构造 SERDES 配置:PLL=0x00000228;RX=0x0046c495;TX=0x000ccf95
    系统设置工作正常
    即将设置 HyperLink 外设
    =================================== 超链接测试端口0
    ================================================================================ 在初始化之前开始寄存器===========
    修订版寄存器内容:
     RAW   = 0x4e902101
    状态寄存器内容:
     RAW       = 0x00003004
    链路状态寄存器内容:
     RAW      = 0x00000000
    控制寄存器内容:
     RAW            = 0x00000000
    控制寄存器内容:
     RAW       = 0x00000000
    =================== 在初始化之前结束寄存器===========
    HyperLink Serdes Common Init Complete <--在此处被阻止。


    我想展示此段代码(在 K2H 侧):

       printf ("Hyperlink Serdes Common Init Completed\n");<--完成
       serdes_lane_enable_params.iteration_mode = CSL_SERDES_RANE_ENABLE_RANE_INIT;
       for (i=0;i< SerDes_lane 启用参数.num_lams;i++)
       {
           SerDes_lane enable_params.lane 掩码= 1<<i;
           Lane_retval = CSL_SerdesLaneEnable (&SerDes_lane enable_params); <--在这里被阻止。
           如果(lane_retval!= 0) <--未到达这里
           {
               printf ("无效的 Serdes 通道启用 Init %d\n"、lane_retval);
               EXIT (0);
           }
           printf (“超链接串行器/解串器通道%d Init complete\n, i);<--下一次打印应该是这样的
       }


    无限循环位于此处(CSL_serdes2.h):

    静态内联空 CSL_SerdesWaitForSigGet (uint32_t base_addr、uint32_t lannel_num)

       uint32_t retval = 0;
       while (retval!= 1)
       {
           RetVal =(CSL_SERDES_STATUS) CSL_FEXTR (*(volatile UINT32_t *) <--在这里循环。
                     (base_addr + 0x1ff4)、(0 + lane _num)、(0 + lane num));
       }





    在 C6657 NOR 上:
    评估软件版本0.1.1内部版本18 CPU 频率1000 MHz DSP 的内核1、共2个
    DSP 硬件版本0 DSP 名称"TMS320C6657"板名称"TMDXEVM6657L"
    版本号:0x02010006;字符串 HYPLNK LLD 修订版本:02.01.00.06:2017年3月28日:14:26:03
    即将进行系统设置(PLL、PSC 和 DDR)
    已构造 SERDES 配置:PLL=0x00000064;RX=0x0046c4a5;TX=0x000ccfa5
    系统设置工作正常
    即将设置 HyperLink 外设
    =================================== 超链接测试端口0
    ================================================================================ 在初始化之前开始寄存器===========
    修订版寄存器内容:
     RAW   = 0x4e901900
    状态寄存器内容:
     RAW       = 0x00000004
    链路状态寄存器内容:
     RAW      = 0x00000000
    控制寄存器内容:
     RAW            = 0x00000000
    控制寄存器内容:
     RAW       = 0x00000000
    =================== 在初始化之前结束寄存器===========
    等待另一侧升高(0)       
    SerDes_STS (32位)内容:0x03460f1b;LOCK = 1
    等待另一侧升高(      1)
    等待另一侧升高(      2)
    等待另一侧出现      (3)

    等待另一侧升高(    202)
    等待另一侧升高(    203)
    等待另一侧出现(    204)


    我可以为您提供转储寄存器、但在无限循环到达后有问题、而不是像您一样
    之前曾建议发送任何数据(我认为串行器/解串器配置不是很好)。





    我希望您能帮助我们解决这个问题。

    我只有一个 RTM/BOC 板,现在我尝试在 K2H 板上的两个内核上运行两个演示(几乎;-)):
     1) 1)第一个立即在 HL1上启动演示
     2) 第二个命令在命令下(通过命令行)使用 HL0 (引导系统后)
           开始第二个演示。
     3) 3)电缆使用端口0和端口1连接器、如外部环路测试配置中所示。

    此测试尚未完成(打印输出有问题)、第一次运行似乎成功完成
    (HL 连接器上的通道是否以不同的方式映射 C6657?
    我不知道、Mistral 没有响应我的请求)。

    此致、

    Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    C6657端3.125Gbps x 4看起来正确。 在 K2H 上、您的代码片段解释了这个问题。 C6657端启用超链接后、应在 K2H 串行器/解串器级别检测到信号并锁定 PLL。 但这种情况从未发生、串行器/解串器初始化一直在那里等待。 超链接电缆应该正常。 但我不知道 RTM BOC 是否仍然有效。

    当串行器/解串器卡住时、K2H 侧没有进一步的超链接初始化、您可以看到寄存器0x4显示位0 = 1、即超链接接口处于复位状态。

    如果您尝试了 K2H 端的超链接端口0和端口1、并且看到相同的 Serdes 代码卡住。 您可以查看超链接 Serdes 寄存器:

    端口0、基址:0x 0231 A000
    端口1、基址:0x 0231 C000

    查看偏移(请参阅 www.ti.com/.../spruho3a.pdf 表16-2。 PHY-A 4通道子系统的存储器映射)
    0x1FE0 LANE1CTL_STS 通道1控制和状态部分17.4.1
    0x1FE4 LANE2CTL_STS 通道2控制和状态部分17.4.1
    0x1FE8 LANE3CTL_STS 通道3控制和状态部分17.4.1
    0x1FEC LANE4CTL_STS 通道4控制和状态部分17.4.1
    0x1FF4 PLL_CTRL PLL 控制部分17.4.2

    进行解码。 这可能会让您了解哪个车道(或所有车道)存在问题。

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    您是否有机会缩小 Serdes 问题的范围?

    此致、Eric
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Eric:

        两天前、我已经检查了 K2H&RTMBOC 上外部环路(使用 HL5CABLE)中的两个 HL 通道
    运行良好(两个不同的 DSP 内核、具有相同的 HL 应用"定制"演示)、但上的应用相同
    K2H&C C6657配置在远程寄存器访问时不通过。

    对于此测试、我使用了自定义演示、 进行了以下更改:

    1)它配置特定通道(因为原始演示已对 HL 通道 HL0/PORT0进行硬编码)、
    2) 2)我已经做了一些更改、以支持多次测试、而无需重新引导系统。

    在启动时、我的"自定义"演示配置 HL1 (core1)、并在运行时对 core0上运行的相同降级应用程序进行配置
    通过命令行使用/配置 HL0完成系统引导。

    我的"自定义"演示在 K2H (core0)上配置 HL0、在 C6657 (core0)上运行的同一演示未到达
    读取/写入远程寄存器(SerDes 似乎运行良好)、两个内核都处于"挂起"状态

    按照我的定制演示中使用的 HL 模块进行操作。

    e2e.ti.com/.../hlPart.zip


    C6657上的序列日志:


    提示:> hlStartTest 0
    00:00:53 00:00:53 HyperLinkMain.c@218: 配置 HL0进行环路测试
    提示:>
    00:00:53 00:00:00 hyplnkMemoryMapped.c@735:    版本号:0x02010006;字符串 HYPLNK LLD 修订版本:02.01.00.06:2017年3月28日:146
    00:00:53 00:00:00 hyplnkMemoryMapped.c@746:    即将进行系统设置(PLL、PSC 和 DDR)
    00:00:53 00:00:00 hyplnkLLDIFace.c@1037:       构建的 SERDES 配置:PLL=0x00000250;RX=0x0046c495;TX=0x000ccf95
    00:00:53 00:00:00 hyplnkMemoryMapped.c@753:    系统设置正常
    00:00:53 00:00:00 hyplnkMemoryMapped.c@761:    即将设置超链接外设
    00:00:53 00:00:00 hyplnkLLDIFace.c@1607:       ===========================
    00:00:53 00:00:00 hyplnkLLDIFace.c@1608:       超链接测试端口0
    00:00:53 00:00:00 hyplnkLLDIFace.c@1609:       ===================
    00:00:53 00:00:00 hyplnkLLDIFace.c@1621:       === 在初始化之前开始寄存器===========
    00:00:53 00:00:00 hyplnkLLDIFace.c@606:修订版寄存器内容: RAW   = 0x4e901900
    00:00:53 00:00:00 hyplnkLLDIFace.c@655:状态寄存器内容: RAW       = 0x00000004
    00:00:53 00:00:00 hyplnkLLDIFace.c@698:链路状态寄存器内容: RAW      = 0x00000000
    00:00:53 00:00:00 hyplnkLLDIFace.c@729:控制寄存器内容: RAW            = 0x00000000
    00:00:53 00:00:00 hyplnkLLDIFace.c@751:控制寄存器内容: RAW       = 0x00000000
    00:00:53 00:00:00 hyplnkLLDIFace.c@1627:       =========== 在初始化之前结束寄存器===========
    00:00:54 00:00:01 hyplnkLLDIFace.c@1817:       等待另一侧出现(      0)
    00:00:54 00:00:00 hyplnkLLDIFace.c@840:SerDes_STS (32位)内容:0x03070c19;LOCK = 1
    00:00:54 00:00:00 hyplnkLLDIFace.c@790:VUsr_CFGPLL 超链接串行器/解串器 PLL 配置:0x00000250
    00:00:54 00:00:00 hyplnkLLDIFace.c@791:VUsr_CFGRX0超链接串行器/解串器接收配置0:0x0046c495
    00:00:54 00:00:00 hyplnkLLDIFace.c@792:VUsr_CFGTX0超链接串行器/解串器发送配置0:0x000ccf95
    00:00:54 00:00:00 hyplnkLLDIFace.c@793:VUsr_CFGRX1超链接 SerDes 接收配置1:0x0046c495
    00:00:54 00:00:00 hyplnkLLDIFace.c@794:VUsr_CFGTX1超链接串行器/解串器发送配置1:0x000ccf95
    00:00:54 00:00:00 hyplnkLLDIFace.c@795:VUsr_CFGRX2超链接 SerDes 接收配置2:0x0046c495
    00:00:54 00:00:00 hyplnkLLDIFace.c@796:VUsr_CFGTX2超链接串行器/解串器发送配置2:0x000ccf95
    00:00:54 00:00:00 hyplnkLLDIFace.c@797:VUsr_CFGRX3超链接串行器/解串器接收配置3:0x0046c495
    00:00:54 00:00:00 hyplnkLLDIFace.c@798:VUsr_CFGTX3超链接串行器/解串器发送配置3:0x000ccf95
    00:00:54 00:00:00 hyplnkLLDIFace.c@808:芯片版本内容:0x0000b97a
    00:00:54 00:00:00 hyplnkLLDIFace.c@810:通道电源管理控制内容:0x07070004
    00:00:54 00:00:00 hyplnkLLDIFace.c@812:串行器/解串器控制和状态1内容:0xff0000
    00:00:54 00:00:00 hyplnkLLDIFace.c@814:串行器/解串器控制和状态2内容:0x00000000
    00:00:54 00:00:00 hyplnkLLDIFace.c@816:串行器/解串器控制和状态3内容:0x00000000
    00:00:54 00:00:00 hyplnkLLDIFace.c@818:串行器/解串器控制和状态4内容:0x00000000
    00:00:54 00:00:00 hyplnkLLDIFace.c@820:链路状态内容:0x00000000
    00:00:55 00:00:01 hyplnkLLDIFace.c@1817:       等待另一侧出现(      1)
    00:00:56 00:00:01 hyplnkLLDIFace.c@1817:       等待另一侧出现(      2)
    00:00:57 00:00:01 hyplnkLLDIFace.c@1817:       等待另一侧出现(      3)
    00:00:58 00:00:01 hyplnkLLDIFace.c@840:SerDes_STS (32位)内容:0x01020409;LOCK = 1
    00:00:58 00:00:00 hyplnkLLDIFace.c@790:VUsr_CFGPLL 超链接串行器/解串器 PLL 配置:0x00000250
    00:00:58 00:00:00 hyplnkLLDIFace.c@791:VUsr_CFGRX0超链接串行器/解串器接收配置0:0x0046c495
    00:00:58 00:00:00 hyplnkLLDIFace.c@792:VUsr_CFGTX0超链接串行器/解串器发送配置0:0x000ccf95
    00:00:58 00:00:00 hyplnkLLDIFace.c@793:VUsr_CFGRX1超链接串行器/解串器接收配置1:0x0046c495
    00:00:58 00:00:00 hyplnkLLDIFace.c@794:VUsr_CFGTX1超链接串行器/解串器发送配置1:0x000ccf95
    00:00:58 00:00:00 hyplnkLLDIFace.c@795:VUsr_CFGRX2超链接 SerDes 接收配置2:0x0046c495
    00:00:58 00:00:00 hyplnkLLDIFace.c@796:VUsr_CFGTX2超链接串行器/解串器发送配置2:0x000ccf95
    00:00:58 00:00:00 hyplnkLLDIFace.c@797:VUsr_CFGRX3超链接串行器/解串器接收配置3:0x0046c495
    00:00:58 00:00:00 hyplnkLLDIFace.c@798:VUsr_CFGTX3超链接串行器/解串器发送配置3:0x000ccf95
    00:00:58 00:00:00 hyplnkLLDIFace.c@808:芯片版本内容:0x0000b97a
    00:00:58 00:00:00 hyplnkLLDIFace.c@810:通道电源管理控制内容:0x07070004
    00:00:58 00:00:00 hyplnkLLDIFace.c@812:串行器/解串器控制和状态1内容:0xff0000
    00:00:58 00:00:00 hyplnkLLDIFace.c@814:串行器/解串器控制和状态2内容:0x00000000
    00:00:58 00:00:00 hyplnkLLDIFace.c@816:串行器/解串器控制和状态3内容:0x00000000
    00:00:58 00:00:00 hyplnkLLDIFace.c@818:串行器/解串器控制和状态4内容:0x00000000
    00:00:58 00:00:00 hyplnkLLDIFace.c@820:链路状态内容:0xccf00cff
    00:00:58 00:00:00 hyplnkLLDIFace.c@1838:       === 初始化后开始寄存器===========
    00:00:58 00:00:00 hyplnkLLDIFace.c@655:状态寄存器内容: RAW       = 0x04400005
    00:00:58 00:00:00 hyplnkLLDIFace.c@698:链路状态寄存器内容: RAW      = 0xccf00cff
    00:00:58 00:00:00 hyplnkLLDIFace.c@729:控制寄存器内容: RAW            = 0x00004000
    00:00:58 00:00:00 hyplnkLLDIFace.c@1842:       === 初始化后结束寄存器===========
    00:00:58 00:00:00 hyplnkMemoryMapped.c@768:    外设设置工作正常
    00:00:58 00:00:00 hyplnkLLDIFace.c@1912:       等待5秒以检查链路稳定性
    00:01:03 00:00:05 hyplnkLLDIFace.c@1928:       链路看起来稳定
    00:01:03 00:00:00 hyplnkLLDIFace.c@1930:       即将尝试读取远程寄存器<<<此处阻止

    K2H 上的序列日志:

    提示:> hlStartTest 0
    00:00:45 00:00:45 HyperLinkMain.c@218: 配置 HL0进行环路测试

    提示:> 00:00:45 00:00:00 hyplnkMemoryMapped.c@735:   版本号:0x02010008;字符串 HYPLNK LLD 修订版本:02.01.00.08:OCT 6
    2018:02:57:41
    00:00:45 00:00:00 hyplnkMemoryMapped.c@746:    即将进行系统设置(PLL、PSC 和 DDR)
    00:00:45 00:00:00 hyplnkLLDIFace.c@1037:       构建的 SERDES 配置:PLL=0x00000228;RX=0x0046c495;TX=0x000ccf95
    00:00:45 00:00:00 hyplnkMemoryMapped.c@753:    系统设置正常
    00:00:45 00:00:00 hyplnkMemoryMapped.c@761:    即将设置超链接外设
    00:00:45 00:00:00 hyplnkLLDIFace.c@1607:       ===========================
    00:00:45 00:00:00 hyplnkLLDIFace.c@1608:       超链接测试端口0
    00:00:45 00:00:00 hyplnkLLDIFace.c@1609:       ===================
    00:00:45 00:00:00 hyplnkLLDIFace.c@1621:       === 在初始化之前开始寄存器===========
    00:00:45 00:00:00 hyplnkLLDIFace.c@606:修订版寄存器内容: RAW   = 0x4e902101
    00:00:45 00:00:00 hyplnkLLDIFace.c@655:状态寄存器内容: RAW       = 0x00003004
    00:00:45 00:00:00 hyplnkLLDIFace.c@698:链路状态寄存器内容: RAW      = 0x00000000
    00:00:45 00:00:00 hyplnkLLDIFace.c@729:控制寄存器内容: RAW            = 0x00000000
    00:00:45 00:00:00 hyplnkLLDIFace.c@751:控制寄存器内容: RAW       = 0x00000000
    00:00:45 00:00:00 hyplnkLLDIFace.c@1627:       =========== 在初始化之前结束寄存器===========
    00:00:45 00:00:00 hyplnkLLDIFace.c@533:Hyperlink Serdes Common Init Complete
    00:00:45 00:00:00 hyplnkLLDIFace.c@559:超链接 Serdes Lane 0 Init 完成
    00:00:45 00:00:00 hyplnkLLDIFace.c@559:超链接 Serdes Lane 1 Init 完成
    00:00:45 00:00:00 hyplnkLLDIFace.c@559:超链接 Serdes Lane 2 Init 完成
    00:00:45 00:00:00 hyplnkLLDIFace.c@559:超链接 Serdes Lane 3 Init 完成
    00:00:45 00:00:00 hyplnkLLDIFace.c@1838:       === 初始化后开始寄存器===========
    00:00:45 00:00:00 hyplnkLLDIFace.c@655:状态寄存器内容: RAW       = 0x04400005
    00:00:45 00:00:00 hyplnkLLDIFace.c@698:链路状态寄存器内容: RAW      = 0xccf00cff
    00:00:45 00:00:00 hyplnkLLDIFace.c@729:控制寄存器内容: RAW            = 0x00004000
    00:00:45 00:00:00 hyplnkLLDIFace.c@1842:       =========== 初始化后结束寄存器===========
    00:00:45 00:00:00 hyplnkMemoryMapped.c@768:    外设设置工作正常
    00:00:45 00:00:00 hyplnkLLDIFace.c@1912:       等待5秒以检查链路稳定性
    00:00:49 00:00:04 hyplnkLLDIFace.c@1928:       链路看起来稳定
    00:00:49 00:00:00 hyplnkLLDIFace.c@1930:       即将尝试读取远程寄存器<<<此处阻止

    调试暂停后、CCStudio 8 (K2H)上会出现以下弹出窗口:

    调试暂停后,CCStudio 6 (C6657)上会出现以下弹出窗口:

    以下函数是名为(K2H 侧)的最新演示应用函数:

    void hyplnkExampleCheckOneStat (int hlPort、hyplnkLocation_e 位置、
                                  const char *名称、int noWarn)

     int                      pass = 1;
     Hyplnk_Handle            handle =空;
     hyplnkRegisters_t        寄存器;
     hyplnkStatusReg_t        status;
     hyplnkECCErrrersRer_t     ECCErrrors;
     const char              * locStr;
     静态 uint32_t          lastRemoteCor = 0、lastLocalCor = 0;
     uint32_t                * lastCor;

     memset (regs、0、sizeof (regs));
     REGS.ECCErors =和 ECCErrrrors;
     regs.status   =状态(&S);

     if (location = hyplnk_location_local)
     {
       locStr ="本地";
       lastCor = lastLocalCor;
     }
     其他
     {
       locStr ="远程";
       lastCor = lastRemoteCor (&L);
     }

     if (Hyplnk_open (HLPort、Handle)!= hyplnk_RET_OK)
     {
       DBG_printf ("打开失败");

       return;/* exit (1);*/
     }

     if (Hyplnk_readRegs (handle、location、&regs)!= hyplnk_RET_OK) <<<此处是最后一个被调用的应用程序函数。

    句柄= 0x21400000
    位置= hyplnk_location_remote

    下一个(以及被调用的最新函数)似乎是:

    静态 hyplnkRet_e hyplnk_read_status_reg
    (
     CSL_VusrRegs     *baseAddr,
     hyplnkStatusReg_t *注册
    )

     uint32_t val = reg->raw = baseAddr->STS;

     hyplnk_getbits (val、CSL_VUsr_STS_SWIDTHIN、              reg->swidthin);<<<此处是崩溃前最后调用的行函数。

    由于 CCS 尝试打开(不成功) ARM/cortex 版本、而不是 DSP 版本(正确的版本)、因此我已强制选择所选文件:

    按照 Histral 的答案进行操作。


    //////////////////////////// Mistral 应答开始////////////////////////////

    您好 Dario、

    超链接接口应与 TI EVM-K2H 评估板配合使用。 我们已经测试了之间的超链接接口
    使用下面的电缆。 配置不需要跳线/电阻器设置。

    https://www.ti.com/store/ti/en/p/product/?p=HL5CABLE 

    有关更多详细信息、请参阅附件和以下链接。

    http://software-dl.ti.com/processor-sw/esd/PROCESSOR-SDK-RTOS-K2HK/latest/index_FDS.html 

    需任何澄清、请随时写信至 evmsupport@mistralsolutions.com。  谢谢

    此致、

    Shruti

    Mistral 支持

    //////////////////////////// Mistral 应答结束//////////////////////////

    此致、

    Dario

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、

       我找到了问题。 几次前、我已经更改了 REF_CLK (对于 C6657)、之后我忘记了这个错误的值被更改。
    现在、具有 C6657&K2H 的 HL 通道可以工作(限制在3.125G/4Lanes、6.250不能工作、我很快就会搜索这个问题)。
    您可以关闭此 TT。

    我对这个问题非常抱歉。

    此致、

    Dario

    #Elif defined (_C6657_Atrenta_DSP1_H_)|| Defined (SOC_C6657)
     /* c6657 */
     #define hyplnk_example_intc_output      (0 + 20 * DNUM)
     #define hyplnk_example_COREPAC_INT_INPUT_CSL_GEM_INTC0_OUT_0_PLUS_20_MUL_N
     #define hyplnk_example_COREPAC_VEC      CSL_INTC_VECTID_4
    //#define hyplnk_example_NUM_cores        2.
    //#define hyplnk_example_cpu_speed_MHz    800
    #define hyplnk_example_HYPLNK_REF_kHz   250000<<正确的行
    //#define hyplnk_example_NUM_cores        1.
    #define hyplnk_example_cpu_speed_MHz    1000
    //#define hyplnk_example_HYPLNK_REF_kHz   156250 <<<错误行