一种实现DisplayPort接口链路训练的方法

文档序号:10615850阅读:398来源:国知局
一种实现DisplayPort接口链路训练的方法
【专利摘要】本发明公开了一种实现DisplayPort接口链路训练的方法,包括:利用Zynq7000的硬核高速串行收发器实现数据通道物理层;利用Zynq7000的可编程逻辑设计第一IP软核,实现链路层;利用Zynq7000的可编程逻辑设计第二IP软核,实现辅助通信通道;将第一IP软核和第二IP软核通过AXI总线与Zynq7000自带的双核Cortex?A9嵌入式处理器连接,利用嵌入式处理器实现测试流程控制与结果评估。以软硬件协同的方式高效地实现了链路训练,既可以操控高速信号收发器又可以灵活处理业务流程,保证了物理链路的健壮性,提高DisplayPort接口在各种环境下的性能,并且控制了系统的整体成本。
【专利说明】
一种实现D i sp I ayPort接口链路训练的方法
技术领域
[000?]本发明涉及计算机硬件技术领域,特别涉及一种实现DisplayPort接口链路训练的方法。
【背景技术】
[0002]DisplayPort接口可以支持8K分辨率的视频传输,其带宽也达到了 5.4Gbps*4Lanes。不过鉴于实际的应用环境存在不可预见性,在视频数据传输之前需要进行链路的测试,保证其能够在预设置的带宽和线数下实现有效的传输。
[0003]发送端设备需要通过辅助传输通道通知接收端设备配置到哪种带宽和线数,然后进行相应的测试。若当前配置下测试失败,则要相应的降低带宽或者线数继续进行测试。这一过程称为链路训练,通常需要软件通过反复迭代以实现该功能。
[0004]由于链路训练过程中既涉及数据链路上的高速信号操作,又需要考虑每个测试环节的流程控制与各种测试的效果的评估,在此期间还要兼顾发送端和接收端设备协调通信,所以,需要一种既可以操控高速信号收发器又可以灵活的处理业务流程的实现链路训练的方法。

【发明内容】

[0005]为了解决上述问题,本发明提供了一种实现DisplayPort接口链路训练的方法,包括:
[0006]利用Zynq7000的硬核高速串行收发器,实现DisplayPort接口的数据通道物理层,所述物理层包括SblOb编码器、数据时钟锁相环和信道均衡器;
[0007]利用Zynq7000的可编程逻辑设计第一IP软核,实现DisplayPort接口的链路层,所述链路层包括测试模式生成器、数据帧封装器和缓存器;
[0008]利用Zynq7000的可编程逻辑设计第二 IP软核,实现DisplayPort接口的辅助通信通道,用于在发送端设备和接收端设备之间建立做测试模式及效果评估的通道;
[0009]将所述第一IP软核和所述第二IP软核通过AXI总线与Zynq7000自带的双核Cortex_A9嵌入式处理器连接,利用Zynq7000自带的双核Cortex_A9嵌入式处理器实现测试流程控制与结果评估。
[0010]其中,所述利用Zynq7000自带的双核Cortex-A9嵌入式处理器实现链路训练的控制与结果评估,具体包括:
[0011]链路训练的时钟恢复阶段,在Zynq7000自带的双核CorteX-A9嵌入式处理器控制下执行以下操作:
[0012]发送端设备通过DisplayPort接口的辅助通信通道向接收端设备发送第一训练准备命令,通知接收端设备开始进行链路训练的时钟恢复,等待接收端设备做好准备;
[0013]接收端设备做好准备之后,发送端设备的测试模式生成器生成第一测试模式数据,并以最高带宽和最高线数向接收端设备发送所述第一测试模式数据;
[0014]接收端设备使用本地的时钟和数据恢复电路对所述第一测试模式数据进行时钟恢复;若恢复失败,则降低带宽或线数的等级,重新向接收端设备发送所述第一测试模式数据;
[0015]若接收端设备使用本地的时钟和数据恢复电路从所述第一测试模式数据中成功恢复出有效时钟,则以当前的带宽和线数进入链路训练的信道均衡阶段;
[0016]若发送端设备以最低的带宽和线数向接收端设备发送所述第一测试模式数据,接收端设备仍然不能从所述第一测试模式数据中成功恢复出有效时钟,则认为当前链路存在问题,不进行视频数据传输。
[0017]其中,所述利用Zynq7000自带的双核Cortex_A9嵌入式处理器实现链路训练的控制与结果评估,还包括:
[0018]链路训练的信道均衡阶段,在Zynq7000自带的双核Cortex-A9嵌入式处理器控制下执行以下操作:
[0019]发送端设备通过DisplayPort接口的辅助通信通道向接收端设备发送第二训练准备命令,通知接收端设备开始进行链路训练的信道均衡,等待接收端设备做好准备;
[0020]接收端设备做好准备之后,发送端设备的测试模式生成器生成第二测试模式数据,并以时钟恢复阶段结束时的带宽和线数向接收端设备发送所述第二测试模式数据;若测试失败,接收端设备不能成功接收所述第二测试模式数据,则降低带宽或线数的等级,重新向接收端设备发送所述第二测试模式数据;
[0021 ]若测试成功,接收端设备成功接收所述第二测试模式数据,发送设备则以当前的带宽和线数向接收端设备发送视频数据。
[0022]若发送端设备以最低的带宽和线数向接收端设备发送所述第二测试模式数据,接收端设备仍然不能成功接收所述第二测试模式数据,则认为当前链路存在问题,不进行视频数据传输。
[0023]本发明实施例的有益效果是:以软硬件协同的方式高效地实现了DisplayPort接口的链路训练,既可以操控高速信号收发器又可以灵活处理业务流程,保证了物理链路的健壮性,提高DisplayPort接口在各种环境下的性能,并且控制了系统的整体成本。
【附图说明】
[0024]图1为本发明实施例提供的一种实现DisplayPort接口链路训练的方法的流程图;
[0025]图2为本发明优选实施例提供的一种实现DisplayPort接口链路训练的方法中时钟恢复阶段的流程图;
[0026]图3为本发明优选实施例提供的一种实现DisplayPort接口链路训练的方法中信道均衡阶段的流程图。
【具体实施方式】
[0027]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0028]图1为本发明实施例提供的一种实现DisplayPort接口链路训练的方法的流程图。如图1所示,本发明实施例提供的实现DisplayPort接口链路训练的方法包括:[OO29]步骤SI 10:利用Zynq7000的硬核高速串行收发器,实现DisplayPort接口的数据通道物理层。
[°03°] 步骤S120:利用Zynq7000的可编程逻辑设计第一 IP软核,实现DisplayPort接口的链路层。
[0031]步骤S130:利用Zynq7000的可编程逻辑设计第二 IP软核,实现DisplayPort接口的辅助通信通道。
[0032]步骤S140:将第一IP软核和第二IP软核通过AXI总线与Zynq7000自带的双核Cortex_A9嵌入式处理器连接,利用Zynq7000自带的双核Cortex_A9嵌入式处理器实现测试流程控制与结果评估。
[0033]Zynq7000是xilinx公司推出的可扩展处理平台,旨在为视频监视、汽车驾驶员辅助以及工厂自动化等高端嵌入式应用提供所需的处理与计算性能水平,得到了工具和IP提供商生态系统的支持,将完整的Cortex-AQe处理器片上系统与28nm低功耗可编程逻辑紧密集成在一起,可以帮助系统架构师和嵌入式软件开发人员扩展、定制、优化系统,并实现系统级的差异化。
[0034]Zynq-7000的可编程逻辑基于xilinx7系列FPGA架构来设计,可确保28nm系列器件的IP核、工具和性能100%兼容,利用可编程逻辑强大的并行处理能力,不仅可以解决多种不同信号处理应用中的大量数据处理问题,而且还能通过实施更多外设来扩展处理系统的特性。系统和可编程逻辑之间的高带宽AXI互联能以极低的功耗支持千兆位级数据传输,从而解决了控制、数据、I/O和存储器之间的常见性能瓶颈问题。
[0035]本方案采用xilinx的zynq7000平台,以软硬件协同的方式实现DisplayPort接口的链路训练,可以保证物理链路的健壮性,提高DisplayPort在各种环境下的性能,同时又可以提升开发效率并降低生产成本。
[0036]从功能角度可以将DisplayPort接口分为物理层与链路层两大部分,首先在步骤SllO中实现DisplayPort接口的数据通道物理层,使用Zynq7000平台中集成的硬核高速串行收发器实现物理层中的SblOb编码器、数据时钟锁相环和信道均衡器等功能,该硬核高速串行收发器是采用了电流型逻辑电路、时钟数据回复、SblOb线路编码和预加重等技术的硬核模块,可极大地减小时钟扭曲、信号衰减和线路噪声对接收性能的影响,从而提到传输速率,最尚可达I OGbps以上。
[0037]接下来在步骤S120中,利用Zynq7000中的可编程逻辑实现DisplayPort接口的链路层,Zynq-7000的可编程逻辑基于xi I inx7系列FPGA架构,可确兼容28nm系列器件的IP核、工具和性能。利用Zynq7000的可编程逻辑设计一个IP软核来实现链路层,链路层中的各功能模块可以通过使用现有的IP软核的来实现,从而避免重复劳动、减轻工作负担,当然也可以重新设计。例如对于链路层中的数据帧封装器和缓存器等,已经有成熟的IP软核可以利用,因此可以直接使用这些IP软核,再加以配置即可。链路层中的测试模式生成器可以利用可编程逻辑来设计,从而生成特定格式的测试模式数据。
[0038]DisplayPort接口包含了主链路、辅助传输通道以及即插即用检测通道。在进行链路训练时,发送端设备需要通过辅助传输通道通知接收端设备配置到哪种带宽和线数,然后进行相应的测试,因此在步骤S130中利用Zynq7000的可编程逻辑设计另一个IP软核,利用该IP软核实现DisplayPort接口的辅助通信通道。在发送端设备和接收端设备之间建立做测试模式及效果评估的通道。
[0039]实现了DisplayPort接口的物理层、链路层以及辅助传输通道之后,即可开始进行链路训练,在步骤S140中将用于实现链路层的IP软核、用于实现辅助传输通道的IP软核分别通过AXI总线与Zynq7000自带的双核Cortex_A9嵌入式处理器连接,使得IP软核的控制寄存器映射到Cortex-A9处理器的地址空间上,使软件对于IP软核的控制可以通过地址访问来实现。利用CorteX-A9处理器实现链路训练的测试流程控制与结果评估。发送端设备与接收端设备中DisplayPort接口的硬件设计架构一致,都是通过步骤S110、S120、S130来实现的,一个DisplayPort接口作为发送端还是作为接收端是由Cortex_A9处理器来控制的,并且Cortex-AQ处理器还控制链路训练的整个测试流程并且判断链路是否可以进行视频数据的传输、应当以哪一种带宽和线数进行传输。
[0040]图2为本发明优选实施例提供的一种实现DisplayPort接口链路训练的方法中时钟恢复阶段的流程图。如图2所示,链路训练的时钟恢复阶段,在Cortex-A9处理器控制下,发送端设备通过辅助通信通道向接收端设备发送TPl命令,通知接收端设备开始进行链路训练的时钟恢复,等待接收端设备做好准备。
[0041]接收端设备做好准备之后,Cortex-AQ处理器控制发送端设备的测试模式生成器生成TestPatternl,并以最高带宽和最高线数向接收端设备发送Te s tPat tern I,TestPatternl可以定义为连续的“0101”数据。
[0042]接收端设备使用本地的时钟和数据恢复电路对TestPatternl进行时钟恢复;若恢复失败,则降低带宽或线数的等级,重新向接收端设备发送TestPatternl。
[0043]若接收端设备使用本地的时钟和数据恢复电路从TestPatternl中成功恢复出有效时钟,则以当前的带宽和线数进入链路训练的信道均衡阶段;若发送端设备以最低的带宽和线数向接收端设备发送TestPatternl,接收端设备仍然不能从TestPatternl中成功恢复出有效时钟,则认为当前链路存在问题,不进行视频数据传输。
[0044]图3为本发明优选实施例提供的一种实现DisplayPort接口链路训练的方法中信道均衡阶段的流程图。如图3所示,
[0045]链路训练的信道均衡阶段,Cortex_A9处理器控制发送端设备通过DisplayPort接口的辅助通信通道向接收端设备发送TP2命令,通知接收端设备开始进行链路训练的信道均衡,等待接收端设备做好准备。
[0046]接收端设备做好准备之后,Cortex-AQ处理器控制发送端设备的测试模式生成器生成Tes tPattern2,并以时钟恢复阶段结束时的带宽和线数向接收端设备发送TestPattern20
[0047]若测试失败,接收端设备不能成功接收TestPattern2,则降低带宽或线数的等级,重新向接收端设备发送TestPattern2。
[0048]若测试成功,接收端设备成功接收TeStPattern2,则链路训练成功结束,发送设备则以当前的带宽和线数向接收端设备发送视频数据。
[0049]若发送端设备以最低的带宽和线数向接收端设备发送TestPattern2,接收端设备仍然不能成功接收TestPattern2,则认为当前链路存在问题,不进行视频数据传输。
[0050]在Cortex-AQ处理器控制的控制下,可以高效率、高精度地进行链路训练,既保证了链路训练过程中数据的高速发送与接收,又兼顾了发送端设备和接收端设备之间的协调通信,还可以对测试的效果做出有效的评估。同时,通过zynq7000平台软硬件协同的方式实现DisplayPort接口的链路训练,控制了系统的整体成本。
[0051 ]综上所述,本发明提供的一种实现DisplayPort接口链路训练的方法,与现有技术相比,具有以下有益效果:
[0052]利用Zynq7000的硬核高速串行收发器实现物理层,利用可编程逻辑实现链路层和辅助通信通道,利用Zynq7000自带的Cortex-AQ处理器实现链路训练测试流程控制与结果评估,以软硬件协同的方式高效地实现了DisplayPort接口的链路训练,既可以操控高速信号收发器又可以灵活处理业务流程,保证了物理链路的健壮性,提高DisplayPort接口在各种环境下的性能,并且控制了系统的整体成本。
[0053]以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
【主权项】
1.一种实现DisplayPort接口链路训练的方法,其特征在于,所述方法包括: 利用Zynq7000的硬核高速串行收发器,实现DisplayPort接口的数据通道物理层,所述物理层包括SblOb编码器、数据时钟锁相环和信道均衡器; 利用Zynq7000的可编程逻辑设计第一 IP软核,实现DispIayPort接口的链路层,所述链路层包括测试模式生成器、数据帧封装器和缓存器; 利用Zynq7000的可编程逻辑设计第二 IP软核,实现DisplayPort接口的辅助通信通道,用于在发送端设备和接收端设备之间建立做测试模式及效果评估的通道; 将所述第一 IP软核和所述第二 IP软核通过AXI总线与Zynq7000自带的双核Cortex-A9嵌入式处理器连接,利用Zynq7000自带的双核CorteX-A9嵌入式处理器实现测试流程控制与结果评估。2.如权利要求1所述的实现DisplayPort接口链路训练的方法,其特征在于,所述利用Zynq7000自带的双核Cortex_A9嵌入式处理器实现链路训练的控制与结果评估,具体包括: 链路训练的时钟恢复阶段,在Zynq7000自带的双核Cortex-A9嵌入式处理器控制下执行以下操作: 发送端设备通过DisplayPort接口的辅助通信通道向接收端设备发送第一训练准备命令,通知接收端设备开始进行链路训练的时钟恢复,等待接收端设备做好准备; 接收端设备做好准备之后,发送端设备的测试模式生成器生成第一测试模式数据,并以最高带宽和最高线数向接收端设备发送所述第一测试模式数据; 接收端设备使用本地的时钟和数据恢复电路对所述第一测试模式数据进行时钟恢复;若恢复失败,则降低带宽或线数的等级,重新向接收端设备发送所述第一测试模式数据;若接收端设备使用本地的时钟和数据恢复电路从所述第一测试模式数据中成功恢复出有效时钟,则以当前的带宽和线数进入链路训练的信道均衡阶段; 若发送端设备以最低的带宽和线数向接收端设备发送所述第一测试模式数据,接收端设备仍然不能从所述第一测试模式数据中成功恢复出有效时钟,则认为当前链路存在问题,不进行视频数据传输。3.如权利要求2所述的实现DisplayPort接口链路训练的方法,其特征在于,所述利用Zynq7000自带的双核Cortex_A9嵌入式处理器实现链路训练的控制与结果评估,还包括: 链路训练的信道均衡阶段,在Zynq7000自带的双核Cortex_A9嵌入式处理器控制下执行以下操作: 发送端设备通过DisplayPort接口的辅助通信通道向接收端设备发送第二训练准备命令,通知接收端设备开始进行链路训练的信道均衡,等待接收端设备做好准备; 接收端设备做好准备之后,发送端设备的测试模式生成器生成第二测试模式数据,并以时钟恢复阶段结束时的带宽和线数向接收端设备发送所述第二测试模式数据;若测试失败,接收端设备不能成功接收所述第二测试模式数据,则降低带宽或线数的等级,重新向接收端设备发送所述第二测试模式数据; 若测试成功,接收端设备成功接收所述第二测试模式数据,发送设备则以当前的带宽和线数向接收端设备发送视频数据。 若发送端设备以最低的带宽和线数向接收端设备发送所述第二测试模式数据,接收端设备仍然不能成功接收所述第二测试模式数据,则认为当前链路存在问题,不进行视频数据传输。
【文档编号】H04L7/033GK105978750SQ201610270837
【公开日】2016年9月28日
【申请日】2016年4月27日
【发明人】舒玉龙
【申请人】北京小鸟看看科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1