完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
FPGA:xc6slx100csg484-3
问题:560Mhz SDR反序列化时的位错误 历史:我们使用斯巴达6用于3种产品。 (1000s工作没有任何问题,无论我们冷却它还是燃烧它) 反序列化时,最新产品有误码。 (带传感器和spartan6的相机) 原因:数据通道的眼睛之间存在太多的差异。 (时钟周期为1,78ns,眼睛为150ns) 示例:第一个数据通道在时间T上升或下降,第8个数据通道在时间T + 1.5ns上升或下降 有8个数据通道使用1个时钟序列化。 我们在图像中看到的结果:仅在1个数据通道上,我看到datashift为1,经过校准一段时间后,这将保持30-60个时钟周期并再次修复。(我每隔128个时钟周期校准一次。)所以我 看到图像中的线条纹。 因此数据错误(双或半:1位移位)仅在这些条带中的1个数据通道中持续30-60个时钟周期。 即使我进行了bitlip并检查并在开始时锁定了同步代码; 在100个时钟周期之后,它会移动并保持这个状态40个时钟周期并再次恢复正常。 我在用什么: Xapp1064.pdf, serdes_1_to_n_clk_pll_s16_diff serdes_1_to_n_data_s16_diff 什么模式:Diff相位检测器 质询 1-对于“差分相位检测器模式”,我们是否需要特定的输入时钟和数据关系。 我可以使用单个时钟对所有阶段的数据进行采样。 这不是“损耗差分相位检测和校准”的目的吗 2-为什么我有负时钟问题,只有1个数据通道有一段时间我怎么能防止这种情况。 (时钟周期为1,78ns,抖动为500ps) 非常专家的问题:) 1-当我在时钟数据路径(n输入,从属IODELAY2)上更改时钟模块slaveIDELAY_VALUE设置时,我能够看到另一个数据通道上的位错误。 因此,当我按下时钟时,我可以将问题推送到不同的数据通道进行反序列化。 这是解决这个问题的唯一方法吗? 我使用数字38来设置不是主设备而是奴隶; 错误消失了。 盲目实验有效, 2-您认为我应该在下面的代码中更改哪个IODELAY设置,以便对于该特定数据通道我没有负时钟边沿问题。 太多,环绕或保持极限,我们是否需要使用时钟主IODELAY的“半数变量”和时钟从属IODELAY的“固定”设置 3-我可以通过在数据vhdl文件上播放IDELAY值来推送一个数据通道上的时钟数据关系,但是仍然保持diff相位检测器模式吗? 时钟模块IODELAY MASTER(P) SERDES_MODE =>“MASTER”, IDELAY_TYPE =>“VARIABLE_FROM_HALF_MAX”, COUNTER_WRAPAROUND =>“STAY_AT_LIMIT”, 时钟模块IODELAY SLAVE(N) SERDES_MODE =>“SLAVE”, IDELAY_TYPE =>“已修复”, COUNTER_WRAPAROUND =>“STAY_AT_LIMIT”, 数据模块IODELAY MASTER(P) SERDES_MODE =>“MASTER”, IDELAY_TYPE =>“DIFF_PHASE_DETECTOR”, COUNTER_WRAPAROUND =>“WRAPAROUND”, 数据模块IODELAY SLAVE(N) SERDES_MODE =>“SLAVE”, IDELAY_TYPE =>“DIFF_PHASE_DETECTOR”, COUNTER_WRAPAROUND =>“WRAPAROUND” 以上来自于谷歌翻译 以下为原文 FPGA : xc6slx100csg484-3 Problem : bit errors at 560Mhz SDR deserialization History : We are using spartan 6 for 3 products. (1000s are working without any problem, whether we cool it or burn it) The latest product has bit errors when deserializing. (camera with sensor and spartan6) Reason: There is a too much spread between the eye of the data channels. (clock period 1,78ns, eye spread 1,5ns) Example: First data channel rises or falls at time T , 8th data channel rises or falls at time T+1.5ns There are 8 data channels that are serialized using 1 clock. What we see in the image: Only on 1 data channel, I see datashift by 1 , after a while from the calibration and this keeps for 30-60 clock cycles and gets fixed again.( I calibrate every 128 clock cycles.) So I see line stripes in the image. So the data is wrong (double or half : 1 bit shifted) only in 1 data channel in these stripes for 30-60 clock cycles. Even though I bitslip and check and get locked to the synch code at the beginning; after 100 clock cycles it shifts and keeps this condition for 40 clock cycles and gets normal again. What I am using: Xapp1064.pdf, serdes_1_to_n_clk_pll_s16_diff serdes_1_to_n_data_s16_diff What mode: Diff phase detector QUESTIONS 1- Do we require a specific relationship for incoming clock and data for ''diff phase detector mode''. Can I use single clock to sample data from all phases. Is not this the purpose of "lossles diff phase detection and calibration" 2- Why am I having negative clock problem, only on 1 data channel for a while how can I prevent this. (the clock period is 1,78ns , the jitter is 500ps) Extremely Expert Questions :) 1- When I change clock module slave IDELAY_VALUE setting on the clock datapath (n input, slave IODELAY2 ), I was able to see the bit errors on another data channel. So when I push the clock, I can push the problem to a different data channel to be deserialized. Is this the only method for me to solve this problem. I use a number 38 for tap setting on not master but slave; the errors are gone. A blind experiment works, 2- Which IODELAY setting do you think I should change in the below code so that for that specific data channel I do not have negative clock edge problem. Its too many, wraparound or stay at limit, do we need to use '' variable from half max'' for the clock master IODELAY and ''fixed'' setting for the clock slave IODELAY 3- Can I push the clock data relationship on one data channel, by playing with IDELAY value on the data vhdl file , but still keep diff phase detector mode? CLOCK MODULE IODELAY MASTER (P)SERDES_MODE => "MASTER", IDELAY_TYPE => "VARIABLE_FROM_HALF_MAX", COUNTER_WRAPAROUND => "STAY_AT_LIMIT",CLOCK MODULE IODELAY SLAVE (N)SERDES_MODE => "SLAVE", IDELAY_TYPE => "FIXED", COUNTER_WRAPAROUND => "STAY_AT_LIMIT",DATA MODULE IODELAY MASTER (P)SERDES_MODE => "MASTER", IDELAY_TYPE => "DIFF_PHASE_DETECTOR", COUNTER_WRAPAROUND => "WRAPAROUND",DATA MODULE IODELAY SLAVE (N)SERDES_MODE => "SLAVE", IDELAY_TYPE => "DIFF_PHASE_DETECTOR", COUNTER_WRAPAROUND => "WRAPAROUND" |
|
相关推荐
1个回答
|
|
以下文件可能有助于交叉检查和
调试 http://www.xilinx.com/support/documentation/user_guides/ug381.pdf http://www.xilinx.com/support/answers/41083.html http://www.xilinx.com/support/answers/38408.html 您指的是哪个版本的Xapp1064? Xapp1064参考设计的初始版本是v1.0 .XAPP的最新版本是v1.2。 _______________________________________________如果有助于解决您的查询,请将此帖子标记为“接受为解决方案”。 因此,它将有助于其他论坛用户直接参考答案。如果您认为该信息有用且面向答复,请给予此帖子称赞。 以上来自于谷歌翻译 以下为原文 The below documents may help cross check & debug http://www.xilinx.com/support/documentation/user_guides/ug381.pdf http://www.xilinx.com/support/answers/41083.html http://www.xilinx.com/support/answers/38408.html Which version of Xapp1064 are you referring? The initial version of the Xapp1064 reference design is v1.0.The newest revision of the XAPP is v1.2. ________________________________________________ Please mark this post as an "Accept as solution" in case if it helped to resolve your query. So that it will help to other forum users to directly refer to the answer. Give kudos to this post in case if you think the information is useful and reply oriented. |
|
|
|
只有小组成员才能发言,加入小组>>
2395 浏览 7 评论
2810 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2277 浏览 9 评论
3352 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2445 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
777浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
557浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
403浏览 1评论
1984浏览 0评论
702浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-3 03:44 , Processed in 2.142799 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号