【85】退出fundamental reset后20ms无法进入detect是否可以再次linkup

一、背景

    PCIe协议规定,在退出fundamental reset后,component必须在20ms进入LTSSM detect状态。

    那么如果EP在20ms以内没有进入detect状态,CPU或者Switch和EP的link状态能否正常到Linkup,或者说LTSSM能够到L0?

二、测试设备

    Intel 11th Gen Intel(R) Core(TM) i7-11700K、Broadcom Switch PEX87xx、PLDA inspector、Xilinx V13P开发板。

三、测试思路

  1. Intel CPU通过PCIe slot连接V13P开发板。拉低V13P开发板的reset信号,然后系统上电,查看CPU和V13P的link状态,拉高V13P开发板的reset信号,查看CPU和V13P的link状态。
  2. Intel CPU通过PCIe slot连接PLDA inspector,inspector连接V13P开发板。拉低V13P开发板的reset信号,然后系统上电,通过inspector查看inspector和V13P的link状态和LTSSM。拉高V13P开发板的reset信号,查看inspector和V13P的link状态和LTSSM。
  3. Intel CPU通过PCIe slot连接PEX87xx接口卡。拉低PEX87xx芯片的reset信号,然后系统上电,查看CPU和PEX87xx的link状态,拉低PEX87xx芯片的reset信号,查看CPU和PEX87xx的link状态。
  4. Intel CPU通过PCIe slot连接PLDA inspector,inspector连接PEX87xx接口卡。拉低PEX87xx芯片的reset信号,然后系统上电,通过inspector查看inspector和PEX87xx的link状态和LTSSM。拉高PEX87xx芯片的reset信号,查看inspector和PEX87xx的link状态和LTSSM。

四、测试结果

    1、Intel CPU通过PCIe slot连接V13P开发板。拉低V13P开发板的reset信号,然后系统上电,查看CPU和V13P的link状态(restv13pslot2.txt)。

----->由于V13P开发板被reset住,CPU和V13P的link是linkdown的,BIOS/OS没有枚举到V13P。

    拉高V13P开发板的reset信号,查看CPU和V13P的link状态。

----->CPU和V13P之间的link是linkup的(unrsetv13pslot2.txt)。

    我们通过sys文件系统手动rescan PCIe设备,可以把V13P扫描进入系统,并且V13P可以正常访问(unresetscanv13pslot2.txt)。

    2、Intel CPU通过PCIe slot连接PLDA inspector,inspector连接V13P开发板。拉低V13P开发板的reset信号,然后系统上电,通过inspector查看inspector和V13P的link状态和LTSSM。

----->由于V13P被reset住,inspector显示inspector连接V13P的downstream port的LTSSM是polling.compliance状态。

    因为没有协议分析仪,无法看到inspector和V13P发送的TS序列,从LTSSM的状态跳转情况推测V13P的reset仅仅是reset的controller,但是phy没有被reset住,也就说phy对地是50欧姆的而不是200K欧姆的高阻状态

    这样inspector的downstream port发起detect是可以detect到V13P。从而让inspector从detec状态进入polling状态,但是V13P的PCIe controller被reset住,导致inspector无法收到V13P发过来的TS序列,按照协议inspector就进入了polling.compliance。我们可以通过试验(4)来反推上面的推测是合理的。

注意detect是个DC common mode的电压

    拉高V13P开发板的reset信号,查看inspector和V13P的link状态和LTSSM。

----->由于V13P的reset被拉高,inspector的downstream port和V13P之间的LTSSM从polling.compliance跳转到L0,也就是说inspector的downstream port和V13P之间的link是linkup的。

    3、Intel CPU通过PCIe slot连接PEX87xx接口卡。拉低PEX87xx芯片的reset信号,然后系统上电,查看CPU和PEX87xx的link状态,拉低PEX87xx芯片的reset信号,查看CPU和PEX87xx的link状态。

----->由于PEX87xx芯片被reset住,CPU和PEX87xx芯片的link是linkdown的,BIOS/OS没有枚举到PEX87xx芯片(resetPEX87xxslot1Realtekslot2.txt)。

    拉高PEX87xx芯片的reset信号,查看CPU和PEX87xx芯片的link状态。

----->CPU和V13P之间的link是linkup的,这里因为不支持热插拔,所以0:1.0的桥后bus资源没有预留够,PEX87xx芯片加入系统后,导致PCIe tree乱了,PCIe tree不是本次测试的重点(unresetPEX87xxslot1Realtekslot2.txt)。

    4、Intel CPU通过PCIe slot连接PLDA inspector,inspector连接PEX87xx接口卡。拉低PEX87xx芯片的reset信号,然后系统上电,通过inspector查看inspector和PEX87xx的link状态和LTSSM。

----->由于PEX87xx芯片被reset住,inspector的downstream port和PEX87xx芯片的link是linkdown的,PEX87xx芯片的reset会把phy拉住,即PEX87xx的phy在高阻状态。所以,inspector的downstream port的LTSSM在detect.quiet状态

    这也从侧面证实了我们在试验(2)中的推论,V13P的reset只是拉低了PCIe controller而没有拉低phy

    拉高PEX87xx芯片的reset信号,查看inspector和PEX87xx的link状态和LTSSM。

----->PEX87xx芯片的reset信号被拉高,inspector和PEX87xx的link状态变成DL_active,LTSSM变成L0。

   

    2.5GT/s L0到8GT/s L0的跳转如下:

    2.5GT/s L0-->2.5GT/s Recovery.Rcvrlock-->2.5GT/s Recovery.RcvCfg-->2.5GT/s Recovery.Speed-->8GT/s Recovery.Speed-->8GT/s Recovery.Rcvrlock-->8GT/s Recovery.Equalization Phase 1-
->8GT/s Recovery.Equalization Phase 2-->8GT/s Recovery.Equalization Phase 3-->8GT/s Recovery.Rcvrlock-->8GT/s Recovery.RcvCfg-->8GT/s Recovery.Idle-->8GT/s L0

5、结论

    链路一端的设备从fundamental reset退出进入detect状态,链路另外一端的设备如果没有同时进入detect,intel 11代CPU可以正常和对端设备linkup。也就说如果EP设备初始化比较慢,不能和CPU同时进入detect状态(释放reset 20ms内),链路也可以正常linkup。

    风险点:如果CPU对应的RootPort不支持热插拔,RootPort的桥后PCIe相关资源(bus资源、memory资源、prefetchable memory资源)没有预留够,即使linkup成功,由于资源限制,EP设备一样无法正常扫描进入系统。也就是说这种情况下,物理层可以正常linkup,但是EP设备仍然无法使用。如果想临时规避,可以从root port端口(00:01.0)把所有设备都remove掉,然后再rescan回来,不过这样做后,root port后的memory地址(Memory behind bridge和Prefetchable memory behind bridge)可能变的比实际使用的要大,这个是linux资源预留算法的问题。
echo 1 >/sys/bus/pci/devices/0000\:00\:01.0/remove
echo 1 >/sys/bus/pci/rescan

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
xiv Preface shouldalsobeencouragedtodevelopproblems,whenappropriate, whichhavenicenumbersanddonotnecessarilyoveremphasizecom- plicatedmathematicalmanipulations. Additionally we have changed almost 40% of the Practice Prob- lems with the idea to better reflect more real component values and to help the student better understand the problem and have added 121 design a problemproblems. We have also changed and added a total of 357 end-of-chapter problems (this number contains the new design a problemproblems). This brings up a very important advantage to our textbook, we have a total of 2404 Examples, Practice Problems, Review Questions, and end-of-chapter problems! You may be wondering why we chose a photo of astronauts working in space on the Space Station for the cover. We actually chose it for several reasons. Obviously, it is very exciting; in fact, space represents the most exciting frontier for the entire world! In addition, much of the station itself consists of all kinds of circuits! One of the most signifi- cant circuits within the station is its power distribution system. It is a complete and self contained, modern power generation and distribution system. That is why NASA(especially NASA-Glenn) continues to be at the forefront of both theoretical as well as applied power system research and development. The technology that has gone into the devel- opment of space exploration continues to find itself impacting terres- trial technology in many important ways. For some of you, this will be an important career path. FEATURES New to This Edition Acourse in circuit analysis is perhaps the first exposure students have to electrical engineering. This is also a place where we can enhance some of the skills that they will later need as they learn how to design. In the fourth edition, we have included a very significant new feature to help students enhance skills that are an important part of the design process. We call this new feature, design a problem. We know it is not possible to fully develop a student’s design skills in a fundamental course like circuits. To fully develop design skills a student needs a design experience normally reserved for their senior year. This does not mean that some of those skills cannot be developed and exercised in a circuits course. The text already included open- ended questions that help students use creativity, which is an impor- tant part of learning how to design. We already have some questions that are open desired to add much more into our text in this important area and have developed an approach to do just that. When we develop problems for the student to solve our goal is that in solving the prob- lem the student learn more about the theory and the problem solving process. Why not have the students design problems like we do? That is exactly what we will do in each chapter. Within the normal problem set, we have a set of problems where we ask the student to design a problem. This will have two very important results. The first will be a better understanding of the basic theory and the second will be the enhancement of some of the student’s basic design skills. We are making effective use of the principle of learning by teach- ing. Essentially we all learn better when we teach a subject. Design- ing effective problems is a key part of the teaching process. Students ale29559_fm.qxd 08/08/2008 10:16 AM Page xiii

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linjiasen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值