0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解决FPGA一个解复用和时钟域转换问题

DIri_ALIFPGA 来源:互联网 作者:佚名 2018-04-08 08:46 次阅读


我知道,我对与电子有关的所有事情都很着迷,但不论从哪个角度看,今天的现场可编程门阵列(FPGA),都显得“鹤立鸡群”,真是非常棒的器件。如果在这个智能时代,在这个领域,想拥有一技之长的你还没有关注FPGA,那么世界将抛弃你,时代将抛弃你。本公众号作者ALIFPGA,多年FPGA开发经验,所有文章皆为多年学习和工作经验之总结。


Stratix IV GX内嵌SERDES结构如图所示

通道对齐(Channel Aligner)和速率匹配(Rate Matcher)。

Channel Aligner和Rate Matcher根据各种接口标准的物理编码子层(PCS,Phsical Coding Sub-layer)规定,将数据的所有通道对齐,并适配数据速率,同步编码状态机。常用的接口标准有GE、10GE和XAUI等,这部分电路结构示意图所示。

8B/10B解码。

8B/10B解码器在这里完成8B/10B解码的功能,将10bit数据转换为8bit源数据。

收端到逻辑资源的接口。

SERDES恢复出的数据进入FPGA有一个解复用和时钟域转换的问题,Stratix GX包含了专用电路可以完成8/10bit数据到8/10/20bit数据的Mux/Demux,另外SERDES收端到FPGA内部通用逻辑资源之间还有FIFO可以完成数据接口同步,其电路结构如图所示。

发送方向的结构相对简单多,只要按照收端数据流向反向追溯,就非常容易理解发端主要模块的功能与结构,发端主要包含以下功能模块。

(1)FPGA逻辑资料SERDES发端的接口电路。

从FPGA逻辑资源到发端内嵌8字节深的FIFO用以完成数据接口的同步,另外还有Mux/Demux电路,其结构与收端到FPGA逻辑资源接口电路相似。

(2)8B/10B编码。

将8bit源数据编码为10bit数据,减少连”0”或连”1”串。

(3)发端PLL。

发端PLL参数如图所示。

(4)并串转换电路(Serializer)。

其并串转换的顺序是低位(LSB)先出。

(5)输出缓冲。

其支持的I/O标准和可编程匹配阻抗特性与收端缓冲性能相似。值得一提的是,其Vod电压动态可编程范围为400Mv~1600mV,而且新器件的预加重范围提升为0%~140%(Vod为800mV条件下)。

值得强调的是,Altera Stratix GX的SERDES模块的可测试性非常好,提供丰富的环回模式,便于用户上板调试。Stratix GX的SERDES支持以下测试模式。

信道环回(Channel loopback):包括串行环回(Serial loopback)、反向链路串行环回(Reverse serial loopback )、并信环回(Parallerl loopback)和方向链路并行环回((Reverse parallel loopback)4种模式。

BIST(Built-In Self Test,内嵌式自测)产生与校验(BIST generator &verifier):包括BIST 8B并行环回、BIST并行环回和BIST串行环回3种模式。

PRBS产生与校验(BIST generator& verifier):包括PRBS并行环回和PRBS串行环回两种模


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21729

    浏览量

    603029
  • 解码器
    +关注

    关注

    9

    文章

    1143

    浏览量

    40721

原文标题:Stratix IV GX内嵌的SERDES(二)

文章出处:【微信号:ALIFPGA,微信公众号:FPGA极客空间】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA设计中解决跨时钟的三大方案

    时钟处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟间的数据,可以说是每个FPGA
    的头像 发表于 11-21 11:13 3866次阅读
    <b class='flag-5'>FPGA</b>设计中解决跨<b class='flag-5'>时钟</b><b class='flag-5'>域</b>的三大方案

    FPGA设计中有多个时钟时如何处理?

    FPGA设计中有多个时钟时如何处理?跨时钟的基本设计方法是:(1)对于单个信号,使用双D触发器在不同
    发表于 02-24 15:47

    FPGA设计实例】FPGA跨越多时钟

    跨越时钟FPGA设计中可以使用多个时钟。每个时钟形成
    发表于 03-19 15:16

    同步从时钟到另一个时钟的多位信号怎么实现?

    你好,我在Viv 2016.4上使用AC701板。我需要同步从时钟到另一个时钟
    发表于 08-17 07:48

    FPGA界最常用也最实用的3种跨时钟处理的方法

    时钟处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟间的数据,可以说是每个FPGA
    发表于 11-15 20:08 1.4w次阅读

    实时仿真系统信号复用/复用算法

    硬件在回路实时仿真是研究复杂机电系统过程中的重要环节,由于仿真通道数量有限,不能满足复杂机电系统大量信号的同步仿真需求。提出种信号复用
    发表于 02-04 10:12 0次下载
    实时仿真系统信号<b class='flag-5'>复用</b>/<b class='flag-5'>解</b><b class='flag-5'>复用</b>算法

    如何利用FPGA设计时钟的同步策略?

    基于FPGA的数字系统设计中大都推荐采用同步时序的设计,也就是单时钟系统。但是实际的工程中,纯粹单时钟系统设计的情况很少,特别是设计模块与外围芯片的通信中,跨时钟
    的头像 发表于 09-01 08:29 5549次阅读
    如何利用<b class='flag-5'>FPGA</b>设计<b class='flag-5'>一</b><b class='flag-5'>个</b>跨<b class='flag-5'>时钟</b><b class='flag-5'>域</b>的同步策略?

    关于FPGA中跨时钟的问题分析

    时钟问题(CDC,Clock Domain Crossing )是多时钟设计中的常见现象。在FPGA领域,互动的异步时钟
    发表于 08-19 14:52 3347次阅读

    揭秘FPGA时钟处理的三大方法

    时钟处理是 FPGA 设计中经常遇到的问题,而如何处理好跨时钟间的数据,可以说是每个 FPGA
    的头像 发表于 12-05 16:41 1644次阅读

    如何将种异步时钟转换成同步时钟

     本发明提供了种将异步时钟转换成同步时钟的方法,直接使用同步
    发表于 12-21 17:10 5次下载
    如何将<b class='flag-5'>一</b>种异步<b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>转换</b>成同步<b class='flag-5'>时钟</b><b class='flag-5'>域</b>

    FPGA中多时钟和异步信号处理的问题

    有趣的现象,众多数字设计特别是与FPGA设计相关的教科书都特别强调整个设计最好采用唯时钟
    的头像 发表于 09-23 16:39 3070次阅读

    FPGA时钟处理方法()

    时钟FPGA设计中最容易出错的设计模块,而且旦跨时钟出现问题,定位排查会非常困难,因为
    的头像 发表于 05-25 15:06 1986次阅读
    <b class='flag-5'>FPGA</b>跨<b class='flag-5'>时钟</b><b class='flag-5'>域</b>处理方法(<b class='flag-5'>一</b>)

    FPGA多bit跨时钟之格雷码()

    FPGA多bit跨时钟适合将计数器信号转换为格雷码。
    的头像 发表于 05-25 15:21 2752次阅读
    <b class='flag-5'>FPGA</b>多bit跨<b class='flag-5'>时钟</b><b class='flag-5'>域</b>之格雷码(<b class='flag-5'>一</b>)

    关于FPGA设计中多时钟和异步信号处理有关的问题

    有趣的现象,众多数字设计特别是与FPGA设计相关的教科书都特别强调整个设计最好采用唯时钟
    的头像 发表于 08-23 16:10 617次阅读

    fpga时钟通信时,慢时钟如何读取快时钟发送过来的数据?

    fpga时钟通信时,慢时钟如何读取快时钟发送过来的数据? 在FPGA设计中,通常需要跨
    的头像 发表于 10-18 15:23 1067次阅读