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

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

3天内不再提示

FPGA如何发出高速串行信号

FPGA技术江湖 来源:郝旭帅电子设计团队 2024-08-05 11:12 次阅读

欢迎各位朋友关注“郝旭帅电子设计团队”公众号,本公众号会定时更新相关技术类资料、软件等等,感兴趣的朋友可以浏览一下本公众号的其他“模块”,希望各位朋友都能在本公众号获得一些自己想要的“东西”。

本篇主要讨论FPGA如何发出高速串行信号

高速串行通信的“高速”一般比较高,基本至少都会上G。如果利用FPGA内部的LUT、触发器和普通IO是无法满足这样高的输入输出速率的。

例:假设线速度需要跑到1G,那么我们FPGA内部逻辑就需要跑到1GHz,才可以对外发出1G的bit流(即使采用DDR的方式发出,也需要内部500MHz)。这么高的频率,FPGA内部一般是无法达到的。

那么FPGA是如何实现这种高速输出和输入的呢?

FPGA内部除了LUT、触发器和IOB以外,厂商还在FPGA内部加入了很多可配置的硬核电路,高速收发器就是其中之一(并不是所有的FPGA都有)。

那么这个高速收发器的电路怎么理解呢?

可以先这么认为,对于输出来说它就是一个升频降位宽的电路。

dcdd74b0-4bac-11ef-b8af-92fbcf53809c.png

注:输出不一定有时钟输出

例:输入时钟125MHz,数据并行10bit;经过高速发送器后,可以变为输出速率为1.25GHz,数据为串行1bit;

此时FPGA内部只需要运行再一个相对较低的频率,进行并行处理数据即可。

对于输入来说它就是一个降频增位宽的电路。

dcfb1bc8-4bac-11ef-b8af-92fbcf53809c.png

注:输入不一定有时钟输入

例:输入时钟1.25GHz,数据串行1bit;经过高速接收器后,可以变为输入速率为125MHz,数据为并行10bit;

此时FPGA内部只需要运行再一个相对较低的频率,进行并行处理数据即可。

下面简单介绍一下FPGA内部的高速收发器(主要以Xilinx的A7 FPGA为例,其他的“大概”大同小异)。

FPGA内部的高速收发器一般称为GT(GT的意思是Gigabyte Transceiver),速度根据器件的不同能够支持的速率也不相同。在Xilinx 7系列的FPGA中,按支持的最高线速率排序,GTP是最低的,GTZ是最高的。GTP被用于A7系列,GTZ被用于少数V7系列。从K7到V7,最常见的是GTX和GTH。GTH的最高线速率比GTX稍微高一点点。

下图是Xilinx A7 FPGA内部的高速收发器(GTP)。

dd1da3dc-4bac-11ef-b8af-92fbcf53809c.png

GTP对外的管脚也不是普通的IO,必须得是专门的IO(单独的bank)。

下图为A7 FPGA 的支持GTP的bank(一般称为MGT:Multi-Gigabit Transceiver bank)。

dd305554-4bac-11ef-b8af-92fbcf53809c.png

上述的电路图中有四路收发器(一发一收称为1路收发器,收发都是差分信号)。四路收发器被称为一个 Quad GT。

dd53135a-4bac-11ef-b8af-92fbcf53809c.png

每一路的收发器的内部如下:

发送器:

dd884ffc-4bac-11ef-b8af-92fbcf53809c.png

接收器:

dda18c60-4bac-11ef-b8af-92fbcf53809c.png

在分析发送器和接收器之前,我们先了解几个名词。

PMA:

PMA是物理介质子层(Physical Medium Attachment),它负责管理电气、时钟和定时等物理层面的信号特性。PMA还处理高速数据传输所需的时序控制和信号重建,并确保信号能够正确地传输到远端接收器。

PCS:

PCS是物理编码子层(Physical Coding Sublayer),它处理数据信号的编码和解码,以及错误检测和校正。PCS负责将逻辑上的数据流转换为物理层面上的数字信号,并通过使用8b/10b编码或128b/130b编码等技术来确保数据传输的可靠性和正确性。

发送器和接收器都是由PCS和PMA组成。相对简化理解:PMA就是发送端并转串,就是接收端串转并。

那么此时我们就可以利用PMA来完成高速串行输入输出。那么PCS有什么作用呢?

在高速串行通信中,为了能够使信号完整的发送到发送方、能够使接收方可以进行CDR,需要对发送的数据进行编码(如果不明白可以查看本公众号文章“高速远距离通信之bit同步和字节同步”)。除了基本的编码外,我们还需要一些通信协议(PCIE、SATA等等)、多通道对齐等一些功能。此时PCS将可以为我们完成一部分。

在使用GT资源时,我们只需要将原码(可能附带一些协议规则)发送给PCS,PCS经过调整后,发送给PMA,PMA就会将数据发送到FPGA外部;外部高速信号进入PMA,PMA将数据交付给PCS,PCS经过调整交付为FPGA内部。此时就完成了高速数据的输入和输出的过程。

当然是用起来还是有一定的难度,后续慢慢的介绍相关内容。

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

    关注

    1620

    文章

    21497

    浏览量

    598710
  • 触发器
    +关注

    关注

    14

    文章

    1990

    浏览量

    60851
  • 串行信号
    +关注

    关注

    0

    文章

    26

    浏览量

    8470

原文标题:FPGA如何发出高速串行信号

文章出处:【微信号:HXSLH1010101010,微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于FPGA的通用高速串行互连协议设计

    基于FPGA的通用高速串行互连协议设计基于FPGA的通用高速串行互连协议设计
    发表于 08-11 15:46

    求助FPGA高速串行收发器,输出12.5Gbps的信号要用什么电平 ...

    求助FPGA高速串行收发器,输出12.5Gbps的信号要用什么电平输出28.5Gbps的信号要用什么电平?
    发表于 11-10 09:12

    基于DSP和FPGA高速串行通信系统设计

    基于DSP和FPGA高速串行通信系统设计
    发表于 03-16 15:47

    谁介绍一款FPGA串行高速2711串行接口芯片

    谁介绍一款FPGA串行高速2711串行接口芯片
    发表于 05-25 10:41

    轻松实现高速串行I/O (FPGA应用设计者指南)

    轻松实现高速串行I/OFPGA应用设计者指南输入/输出(I/O)在计算机和工业应用中一直扮演着关键角色。但是,随着信号处理越来越复杂,I/O通信会变得不可靠。在早期的并行I/O总线中,
    发表于 01-02 12:12

    基于FPGA串行接收模块的设计

    为了使计算机能够通过串口控制FPGA 的输出信号,笔者根据异步串行通信的原理,设计了简便易行的FPGA 串行通信接口系统,并应用VHDL 语
    发表于 09-24 15:52 18次下载

    高速FPGA系统的信号完整性测试和分析

    随着FPGA器件的速度和容量日益提高,各种高速的并行和串行接口都广泛应用在FPGA上,其中典型的高速串行
    发表于 01-02 11:12 30次下载

    基于FPGA高速串行传输接口研究与实现

    摘 要:介绍了FPGA最新一代器件Virtex25上的高速串行收发器RocketIO。基于ML505开发平台构建了一个高速串行数据传输系统,
    发表于 09-22 08:41 43次下载

    基于FPGA的通用高速串行互连协议设计

    基于FPGA的通用高速串行互连协议设计。
    发表于 05-11 09:46 18次下载

    通过FPGA实现多种主流高速串行交换模块研究设计

    随着FPGA应用范围的不断扩大以及对速度需求的不断提升,集成高速串行模块的FPGA已经应用于市场。以Xilinx的Virtex5系列为代表的集成GTPRocketIO模块的
    发表于 07-20 11:42 1597次阅读
    通过<b class='flag-5'>FPGA</b>实现多种主流<b class='flag-5'>高速</b><b class='flag-5'>串行</b>交换模块研究设计

    介绍使用IBERT调试FPGA芯片高速串行接口性能的步骤

    随着高速数字系统的发展,高速串行数据被广泛使用,内嵌高速串行接口的FPGA也得到大量应用,相应的
    发表于 07-10 10:11 5700次阅读
    介绍使用IBERT调试<b class='flag-5'>FPGA</b>芯片<b class='flag-5'>高速</b><b class='flag-5'>串行</b>接口性能的步骤

    如何设计实现Xilinx FPGA高速串行接口

    在数字系统互连设计中,高速串行/O技术取代传统的并行/O技术成为当前发展的趋势。与传统并行丨/技术相比,串行方案提供了更大的带宽、更远的距离、更低的成本和更高的扩展能力,克服了并行l/O设计存在的缺陷在实际设计应用中,采用现场可
    发表于 08-24 17:28 15次下载
    如何设计实现Xilinx <b class='flag-5'>FPGA</b><b class='flag-5'>高速</b><b class='flag-5'>串行</b>接口

    高速串行板(HSDB)/(HSC-ADC-FPGA)

    高速串行板(HSDB)/(HSC-ADC-FPGA)
    发表于 04-15 20:06 10次下载
    <b class='flag-5'>高速</b>反<b class='flag-5'>串行</b>板(HSDB)/(HSC-ADC-<b class='flag-5'>FPGA</b>)

    高速串行信号测试时注意事项有哪些

    随着信息技术的飞速发展,高速串行信号传输技术已成为现代通信领域的核心。然而,由于高速串行信号具有
    的头像 发表于 05-16 16:55 275次阅读

    深度解析高速串行信号的误码测试|线上讲堂

    2024年6月25日周二19:00-20:30中星联华科技将举办《深度解析高速串行信号的误码测试》“码”上行动系列线上讲堂。将深入讲解当前高速信号
    的头像 发表于 06-17 08:32 230次阅读
    深度解析<b class='flag-5'>高速</b><b class='flag-5'>串行</b><b class='flag-5'>信号</b>的误码测试|线上讲堂