关于HyperLink编程的性能以及影响性能的参数详解

关于HyperLink编程的性能以及影响性能的参数详解,第1张

摘要

HyperLink为两个KeyStone架构DSP之间提供了一种高速,低延迟,引脚数量少的通信接口。HyperLink的用户手册已经详细的对其进行了描述。本文主要是为HyperLink的编程提供了一些额外的补充信息。

同时本文还讨论了HyperLink的性能,提供了在各种 *** 作条件下的性能测试数据。对影响HyperLink性能的一些参数进行了讨论。

文章的最后附上对应本文的应用代码

1、HyperLink介绍

HyperLink为两片DSP之间提供一种高速、低延迟,引脚数少的通信连接接口。

HyperLink的设计速度最高速率支持12.5Gbps,目前在大部分的KeyStone DSPs上,由于受限于SerDes和板级布线,速度接近为10Gbps.HyperLink是TI专有的外设接口。相对于用于高速Serdes接口的传统的8b10b编码方式,HyperLink减少了编码冗余,编码方式等效于8b9b.单片DSP为HyperLink提供4个SerDes通道,所以10Gbps的HyperLink理论吞吐率为10*4*(8/9)= 35.5Gbps= 4.44GB/s.

HyperLink使用了PCIE类似的内存映射机制,但它为多核DSP提供了一些更灵活的特性。本文将会使用几个范例来详细解释这一点。

本文还讨论了HyperLink的性能,提供了在各种 *** 作条件下的性能测试数据。对影响HyperLink性能的一些因素进行了讨论。

2、HyperLink配置

本节提供了一些配置HyperLink模块的补充信息。

2.1 Serdes配置

Serdes必须配置成期望的链接速度。图1表示了输入参考时钟和输出时钟之间的关系。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第2张

输入参考时钟建议限制在156.25MHz ~312.5MHz范围内。Serdes PLL的倍频系数必须合理配置生成的内部时钟(internal clock)限制在1.5625GHz ~ 3.125GHz范围内。

最后的链接速度由内部时钟(internal clock)驱动,通过link rate配置来得到。

2.2 HyperLink存储映射配置

HyperLink的存储映射非常的灵活。HyperLink的用户手册对此作了详细的描述。本节将用两个例子来详细的解释它。图2是第一个例子。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第3张

图2通过HyperLink窗口映射到远端不同类型的存储空间

在这个例子里面,DSP1的存储空间映射到了DSP0的存储空间窗口0x40000000~0x50000000DSP0可以访问DSP1的所有内存空间,包括LL2,SL2,DDR,就像访问自己的本地的存储空间一样。在DSP0上,所有的Master都可以通过以0x40000000起始的Outbound窗口地址来访问DSP1的存储空间,但是不同master事实上可能访问到DSP1上不同的存储空间。原因是HyperLink发送侧传输数据时,会将PrivID一起传输。接受侧通过PrivID值,可以建立不同的地址映射表

对DSP0与DSP1的内存映射关系总结在下表(表1)。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第4张

通过上表的配置,可知当DSP0的core 0/1访问0x40800000,它事实上访问了DSP1上的LL2地址空间。

当DSP0的core0访问0x4D000000,它事实上访问了DSP1上DDR的地址空间0x8C000000当DSP0的core1访问0x4D000000,它事实上访问了DSP1上DDR的地址空间0x8F000000与本文档对应的范例工程将HyperLink配置成上述的内存映射关系。下面是关键部分的配置代码。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第5张

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第6张

对于一些简单的应用,可能只是想访问远程DSP的DDR空间,那么下面的例子用于这种情况。存储映射关系如下图所示。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第7张

图3通过HyperLink窗口只映射到远端的DDR空间

这是最简单的例子,但是却可以访问远端DSP的大块存储空间。DSP0上的每个master(core或者其他外设)都可以可以访问DSP1上256MB DDR空间。下表描述了core0和core1的对remote DSP DDR存储映射。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第8张

3、HyperLink性能考虑

本节将让设计者对HyperLink访问远程存储空间的性能评估有基本的认识。同时提供了在不同的 *** 作条件下获得的性能测试数据。大部分测试是在最理想的测试条件进行,以评估可以获得的最大吞吐量。

本文所描述的绝大部分性能数据是在C6670EVM上获得。C6670 EVM上DDR配置成64bit位宽1333M,HyperLink速率配置成10Gbit.

一些影响HyperLink访问性能的因素在本节中将会被讨论到。

3.1通过HyperLink实现存储拷贝的性能

下表(表3)描述了使用HyperLink在LL2与远程大块线性存储空间进行数据传送测试获得的传输带宽。传输块的大小为64KB.带宽的计算是通过计算传输总的字节数除以传输所用的时间获得。

关于HyperLink编程的性能以及影响性能的参数详解,关于HyperLink编程的性能以及影响性能的参数详解,第9张

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2718416.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存