PCIE loopback介绍

Loopback简介


loopback状态的作用是测试,对loopback leader来说loopback的进入和退出可自定义实现。loopback leader是请求进入loopback的一方,loopback follower是环回数据的 一方。对loopback follower来说,当收到两个连续的loopback bit置1的TS1时进入loopback状态。

loopback详细介绍:

  • loopback可以在一条lane或者所有配置的lane上进行测试。(在gen4以前,loopback是在所有的lane上测试,在gen5及以上时,增加了Recovery.Equalization的流程)
  • 在gen5及以上才提出了“lane under test lane”的概念,loopback leader告知对端哪一条lane作为lane under test lane,状态机的跳转却决于lane under test lane,且只有lane under test lane才做EQ。
  • 进入loopback.active环回数据的时候,loopback follower简单地将loopback leader发来的数据回环回去不做修改,但可根据需求删减SKP。
  • 当loopback测试进入loopback.entry时,首先切速到对应的速度,对于gen6的loopback测试,需要先切速到gen5,进入Recovery.Equalization,在lane under test lane做完EQ,然后再次进入loopback.entry, 切速到gen6,接着进入Recovery.Equalization,做完gen6 EQ,跳转到loopback.entry->loopback.active->loopback.exit 。
  • 对于loopback follower来说,只是简单地将数据环回,因此不涉及scramble的操作。

loopback state

loopback issue

  1. loopback阶段可能会发modified compliance pattern,是由lead还是follower发出的?

ack:对于gen5以上的loopback测试提出了lane under test lane的概念,如果lead发送的TS中的Transmit Modified Compliance Pattern in Loopback bit 被设置为1,follower需要将自己的transmit_modified_compliance_pattern_in_loopback 变量设置为1。

  • 当transmit_modified_compliance_pattern_in_loopback = 1,则loopback follower从Recovery.Equalization状态进入Loopback.entry时需要在非lane under test lane发送modified compliance pattern,而对于loopback master来说,并不需要在非lane under test lane发送modified compliance pattern。
  • 当transmit_modified_compliance_pattern_in_loopback = 0,则loopback follower从Recovery.Equalization状态进入Loopback.entry时只会在lane under test lane环回loopback lead发送的数据,并且非lane under test lane需要处于TX EI状态。(并且在loopback阶段做EQ的时候,非lane under test lane必须处于TX EI)
  1. Loopback follower如何进入loopback以及如何退出loopback?

ack

  • enter loopback.entry: 当收到两个连续的loopback bit置1的TS1时进入loopback.entry。
  • exit loopback: 当任意lane收到4个连续的EIOS,退出到loopback.exit。(对于2.5 GT/s, 当任意lane收到一个EIOS或者EI is detected/inferred。)
  1. loopback follower对收到的数据如何处理?

ack: 只需要将接收到的数据简单环回,因此无论loopback lead是否对数据加扰,对于follower来说是不需要感知的,对于follower来说,基于始终补偿的需求,可以对SKP进行删减来满足时钟的要求。

  1. lane under test lane的提出?

ack: 在gen5及以上速率时,才提出了lane under test lane的概念,即在loopback阶段,只在选择的lane under test lane上做EQ以及进行数据的环回测试。

guest
0 评论
内联反馈
查看所有评论