Lattice ecp5 SerDes接收异常怎么解决?

2023-11-24 07:18

本文主要是介绍Lattice ecp5 SerDes接收异常怎么解决?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

完整版请点击https://hifpga.com/问题/36654

 

向博主本人提问FPGA相关问题

目前有个项目需要Lattice ecp5 (型号:LFE5UM-25-6MG285C)与 Xilinx k7之间通过两路SerDes进行通信,从ecp5发送到k7端是两路1.485G的SerDes信号,从k7端发送至ecp5端是一路SerDes信号(速率为0.7425G和1.485G都可以)。

k7端发送和接收都正常(SerDes自环验证也正常),ecp5端发送正常,但是接收会出现问题,如图1所示,接收通道ch0端数据经常会出现错误,正常情况下如图2所示。k7端SerDes发送代码及Tx波形如图3、图4所示。

01.png
02.png
03.png
04.png
检测了ecp5的SerDes自环(SerDes自发自收),发现也有上述类似问题,更改了pcs配置参数(加大了均衡、预加重、去加重等参数)仍然会收到错误信号,找了一块ecp3的板子,验证ecp3上SerDes自发自收正常,查找了两个工程中SerDes部分的差异,根据正常的ecp3的配置参数修改ecp5的配置,但是ecp5上SerDes接收端一直有上述问题。
后来想想感觉是不是ecp5上SerDes接收端有一路通道(ch1通道)直接悬空导致ch0通道数据会有影响,抓去了一下ch1通道的信号,如图5所示,发现ch1通道的CDR居然能锁住,然后将ecp5 ip核中的pcs配置通道由2通道改为1通道,发现1个通道情况下,SerDes在0.7425G和1.485G的速率下接收正常。
05.png
于是将ecp5上的SerDes拆为2个pcs核(一个pcs配置mode选择Tx and Rx,另一个pcs配置mode选择Tx only),编译时会报DCU数量超出范围的错误,查看了一下手册,ecp5 LFEUM-25只有1个DCU,如图6、图7所示。
06.png
07.png
现在ecp5上SerDes接收端Rx ch1悬空,图8为Reports上SerDes I/O分布,图9为ecp5原理图中SerDes部分。
08.png
09.png
现在感觉问题应该是ecp5 SerDes接收端2个通道都应该接收数据,或则接收端Rx只使用1路通道时,有哪个地方,没有正确的配置,ecp5 SerDes部分I/O好像无法自己约束(系统内部配置)。
目前没有办法解决,跪求各位大神解答

 

-----------------------------------------

如果回环都有问题一般是电源有问题。

  1. 在通道悬空状态下如果CDR可以锁住,这种情况下是无效的。
  2. ....
  3. ....

----------------------------

您好!谢谢您的解答。
对于第2点,我用的都是ecp5外部环回,包括ecp5自己的Tx与Rx通过外部信号线连接以及ecp5与k7连接,reveal也是代码从底层配置环回,抓取的外部环回的数据;
第3点,diamond用的一直是3.9.1.119版本(3.10没有安装),3.9版本好像不能分两次配置(DCU会报错);
对于第1点,CDR可以锁住,RX端也能用reveal抓取到数据,如上述图5最下面的数据所示,这样还是无效的么?
我现在的回环用1个通道没有问题,能正确接收数据,用两个通道(其中Rx1悬空)才会出现接收不正常的问题(如上面的描述)。
如果是电源有问题,那么只用一路通道时接收也应该会出现问题,但是一路通道接收正常(同一块板子,只是将pcs配置中2路通道改为1路通道即正常)

 

----------------------------------------------

不知道能不能和到你,我之前遇到过serders反复复位好多次才能锁住的问题,后来发现....

---------------

谢谢!我这边也遇见了这样的现象,3.10版本有点问题,我在3.10上面生成的PCS,用reveal抓不到波形,CDR失锁,同样的工程换到3.9上面CDR就正常,但是现象还是和上面的现象一样

----------------------------------------------

老铁,我的问题和你相反,我的是lattice发,xilinx收,xilinx总是收到乱码,是什么鬼呀?lattice和xilinx均测试自发自收没问题。。

----------------------------------------------

谢谢各位,项目解决了。为了确保项目进行,...

 

完整版请点击https://hifpga.com/问题/36654

这篇关于Lattice ecp5 SerDes接收异常怎么解决?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/421508

相关文章

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

Swagger在java中的运用及常见问题解决

《Swagger在java中的运用及常见问题解决》Swagger插件是一款深受Java开发者喜爱的工具,它在前后端分离的开发模式下发挥着重要作用,:本文主要介绍Swagger在java中的运用及常... 目录前言1. Swagger 的主要功能1.1 交互式 API 文档1.2 客户端 SDK 生成1.3

java连接opcua的常见问题及解决方法

《java连接opcua的常见问题及解决方法》本文将使用EclipseMilo作为示例库,演示如何在Java中使用匿名、用户名密码以及证书加密三种方式连接到OPCUA服务器,若需要使用其他SDK,原理... 目录一、前言二、准备工作三、匿名方式连接3.1 匿名方式简介3.2 示例代码四、用户名密码方式连接4

如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socket read timed out的问题

《如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socketreadtimedout的问题》:本文主要介绍解决Druid线程... 目录异常信息触发场景找到版本发布更新的说明从版本更新信息可以看到该默认逻辑已经去除总结异常信息触发场景复

IDEA中Maven Dependencies出现红色波浪线的原因及解决方法

《IDEA中MavenDependencies出现红色波浪线的原因及解决方法》在使用IntelliJIDEA开发Java项目时,尤其是基于Maven的项目,您可能会遇到MavenDependenci... 目录一、问题概述二、解决步骤2.1 检查 Maven 配置2.2 更新 Maven 项目2.3 清理本

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null

CentOS 7 YUM源配置错误的解决方法

《CentOS7YUM源配置错误的解决方法》在使用虚拟机安装CentOS7系统时,我们可能会遇到YUM源配置错误的问题,导致无法正常下载软件包,为了解决这个问题,我们可以替换YUM源... 目录一、备份原有的 YUM 源配置文件二、选择并配置新的 YUM 源三、清理旧的缓存并重建新的缓存四、验证 YUM 源

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

解决mysql插入数据锁等待超时报错:Lock wait timeout exceeded;try restarting transaction

《解决mysql插入数据锁等待超时报错:Lockwaittimeoutexceeded;tryrestartingtransaction》:本文主要介绍解决mysql插入数据锁等待超时报... 目录报错信息解决办法1、数据库中执行如下sql2、再到 INNODB_TRX 事务表中查看总结报错信息Lock

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno