FPGA千兆位收发器选择指南
选择合适的千兆位收发器(GT)是通信和实时处理领域尤其需要重点考虑的设计事项,但特定的市场领域可能会存在太多的标准、协议或使用模型。有时针对某一种应用就会涉及到好几种标准,为了选择最适合的千兆位收发器,必须对各种协议的最新发展情况了如指掌。
从无线通信到消费电子产品的众多不同市场领域都具有业界标准连接协议。了解高级协议及其与低层协议规范的关系并充分留意不同行业对PHY定义的情况,将有助于选择最好的LogiCORE IP高速串行收发器架构向导协议模板,进而实现我们的设计目标。首先来回顾一下这些相关协议。
OSI:连接协议模板
开放系统互连(OSI)是一种面向全球通信的ISO标准。该标准定义了一个分七层实施协议的框架。控制信息从某一站点的应用层开始向下逐层传递,直至最底层的物理层,随后通过通道传输到下一站点。而信息返回时经过各层的顺序则与之相反。
三个PHY子层
当前普遍使用的许多串行连接协议都在模仿OSI的分层模型。PHY层包括2??3个子层,分别为物理编码子层(PCS)、物理介质连接(PMA)子层和可选的物理介质相关子层(PMD)。图1以方框图的形式显示了各层之间的关系。
Virtex-5 RX物理子层PCS、PMA和PMD示例方框图

图1 Virtex-5 RX物理子层PCS、PMA和PMD示例方框图
数据包或数据在发送时以正向顺序传输,即从介质访问控制(MAC)层到PCS、PMA及PMD,而接收时的顺序则与之相反。
PHY使用方面的混乱状态
人们很容易将PHY误认为是硅芯片,而混淆其用途。PHY是一个包括子层的规范层。我们可用单一或多个器件实施设计人员通常称之为电子规范的PHY.对子层的使用主要取决于具体的细分市场和所用协议。
通信协议中的PHY层通常使用的是PCS、PMA和PMD子层。图2显示的是在局域网应用中使用赛灵思TEMAC (10M/100M/1G) LogiCORE的示例,其中千兆位以太网MAC接连与1000BASE-X PCS/PMA和激光收发器1000BASE-X PMD进行通信。此时,PHY同时实施在了FPGA和可选的光学收发器器件之中。
以太网通信应用中的PHY PCS、PMA和PMD层示例

图2以太网通信应用中的PHY PCS、PMA和PMD层示例
硬化或嵌入式IP考虑事项
赛灵思通常会在FPGA中直接集成PCI Express和千兆位以太网等常用的协议。这硬化版本可实施协议的部分或全部功能。在上述这两种情况中,LogiCORE封装作为LogiCORE产品的一部分实施MAC和物理层(PCS和PMA)。封装包含硬化模块并与高速串行收发器相连接。就TEMAC而言,硬化IP实施MAC和部分PCS以及PCI Express LogiCORE的事务处理和数据链路层。可用赛灵思的高速串行收发器向导来查看并修改GTP/GTX设置。
10Gb以太网——XAUI
10Gb以太网标准是一种IEEE规范,其定义的标称速率是千兆位以太网的10倍。物理层包含的一个接口可将MAC连接于PHY、PCS、PMA和PMD.至于赛灵思LogiCORE,10Gb媒体独立接口(XGMII)可连接至光学模块或10Gb以太网XAUI.PMA和PMD既可视为外部器件(如在光学收发器中),也可以视为XAUI的一部分(如在芯片间或背板应用中)。
通用分组无线接口v4.0
通用分组无线接口(CPRI)可用于无线电设备控制器或基站以及一个或多个无线电设备单元之间的连接。CPRI规范涵盖了OSI堆栈的第一层和第二层,物理层(第一层)定义了传统基站使用的电气接口以及支持远程无线电设备的基站光学接口。赛灵思CPRI LogiCORE在GT中实施PHY,在FPGA逻辑中实施数据链接(第二层)。
3G和6G OBSAI RP3-01
OBSAI RP3-01蜂窝式基站协议分为较低的物理层和较高的应用、传输和数据链路层。应用层可连接于基带或RF卡,而数据链路层可连接于物理层。赛灵思用FPGA中的收发器实施PHY,处理电气部分,并连接到外部光学收发器模块。
第一代和第二代PCI Express
PCI Express协议应用于物理层、数据链路层和事务处理层。由于这种标准非常通用,因此新兴串行协议往往寻求在电气规范方面与其兼容或类似,据此,ASSP和其他PHY器件厂商就能重用精心测试的IP产品了。赛灵思通过自身及其AllianceCORE合作伙伴在集成式硬IP模块和软IP中实施了第一代和第二代PCI Express协议。
串行RapidIO
虽然串行RapidIO协议与PCI Express一样也应用于三个层中,但却分别为物理层、逻辑层和传输层。由于RapidIO和XAUI的应用目标类似,串行RapidIO设计人员因而能重用其现有的XAUI电气设计方案。赛灵思GT向导可通过串行RapidIO模板支持串行RapidIO PHY.
三速SDI视频
三速SDI视频参考设计是基于SMPTE标准之上的。与高速串行收发器的物理连接是通过差动CML驱动外部线缆驱动器(用于传输)或外部适应性接收均衡器来实现的。各标准间常用的串行化协议非常具体,设计时采用的是FPGA结构。该协议需要较多的AC耦合电容进行大量的1和0运算。
赛灵思三模以太网
三模以太网MAC是赛灵思实施10/100/1Gb以太网协议的一种标准。赛灵思提供TEMAC LogiCORE(软IP)和用于集成模块的三模以太网封装(硬IP)。就软IP而言,1000BASE-X PCS/PMA或SGMII LogiCORE可实现无缝连接。SGMII是支持10/100/1G操作的串行连接标准。
TEMAC封装即硬TEMAC子块和GT I/O块中通常采用的HDL封装(1000BASE-X/SGMII已经集成于TEMAC)。具体实施细节请查阅以太网LogiCORE文档资料。
GT向导支持采用GigE (SGMII/1000Base-X)模板的三模以太网协议。
总而言之,业界标准协议日新月异,差不多每年都会出现一两种新标准。因此就这点而言,其术语和基础技术的复杂程度堪比税法。而对给定协议的物理层方案了解得越详细,就越易于确定所要使用的极佳高速串行收发器向导协议,从而为设计项目开创一个良好的局面。
FPGA千兆位收发器选择指南的更多相关文章
- 转: 如何选CDN:互联网大直播时代的CDN选择指南
from: http://www.chnvideo.com/blog-classic-cdn.html SRS 编码器 如何选CDN:互联网大直播时代的CDN选择指南 CDN是一个服务型的公司, ...
- 如何选CDN:互联网大直播时代的CDN选择指南
转: 如何选CDN:互联网大直播时代的CDN选择指南 from: http://www.chnvideo.com/blog-classic-cdn.html SRS 编码器 如何选CDN:互联网 ...
- FPGA千兆网UDP协议实现
接着上一篇百兆网接口的设计与使用,我们接着来进行FPGA百兆网UDP(User Datagram Protocol)协议的设计. 1)UDP简介 在此,参考博主夜雨翛然的博文“https://www. ...
- Office、VBA开发方案选择指南
最近很多朋友向我提出Office的开发方式方面的疑惑,主要是针对特定的系统和Office版本不知道选择哪一种编程语言.创建哪一种类型的项目. 事实确实如此,如果搞不清楚语言的特性和项目类型的特点,很可 ...
- 011 FPGA千兆网TCP通信【转载】
一.LWIP 首先通过上面的简单分析,我们应该很清楚一件事:TCP协议很复杂,光握手过程就需要"三次握手.四次挥手"的复杂过程,不是特别适合FPGA的纯逻辑实现,因为用FPGA实现 ...
- 010 FPGA千兆网UDP通信【转载】
一.以太网帧格式 图8‑12以太网帧格式 表8‑5以太网帧格式说明 类别 字节数 说明 前导码(Preamble) 8 连续 7 个 8'h55 加 1 个 8'hd5,表示一个帧的开始,用于双方设备 ...
- Linux 软件安装位置选择指南
Linux 软件安装 Linux 下安装软件不像 Windows 下安装这么简单,Windows 下会自动选择合适安装路径,而 Linux 下安装路径大部分完全由自己决定,我可以将软件安装到任意可 ...
- 如何为应用选择最佳的FPGA(下)
如何为应用选择最佳的FPGA(下) How to select an FPGA board? FPGA板的选择在很大程度上受FPGA本身的影响,也受整个板的特性和性能的影响.们已经在上面的章节中讨论了 ...
- 如何为应用选择最佳的FPGA(上)
如何为应用选择最佳的FPGA(上) How To Select The Best FPGA For Your Application 在项目规划阶段,为任何一个项目选择一个FPGA部件是最关键的决策之 ...
随机推荐
- 【2017下集美大学软工1412班_助教博客】团队编程2-需求分析&原型设计团队成绩公示
作业要求 团队作业2:需求分析&原型设计 团队评分结果 团队名称 作业标题 Total DY SM NABCD FG YX GF SP PHILOSOPHER 团队作业2--需求分析 5.5 ...
- Post-installation steps for Chromium | Fedora
Flash 插件安装 网址: https://fedora.pkgs.org/ 下载: chromium-pepper-flash-version.fc28.x86_64.rpm 安装后重启浏览器 解 ...
- iptables设置规则
iptables -A INPUT -s 127.0.0.1 -p tcp --dport 8080 -j ACCEPT 添加到最后一条iptables -I INPUT -p tcp --dpor ...
- python第三十课--异常(异常处理定义格式和常见类型)
演示: 1).异常处理的定义格式: 2).常见的运行时异常类型: try: print(10/0) num=int('132a') except Exception as e: print('出错了. ...
- WorldWind源码剖析系列:表面影像类SurfaceImage
表面影像类SurfaceImage描述星球类(如地球)表面纹理影像.该类的类图如下. 表面影像类SurfaceImage包含的主要的字段.属性和方法如下: string m_ImageFilePath ...
- SQL 登录名 用户 角色
参考博客:http://www.cnblogs.com/ChineseMoonGod/p/5860449.html,非常感谢博主的知识分享. 1.创建一个登录名,完全操作数据库权限,步骤为:创建登录名 ...
- Arduino入门笔记(4):用蜂鸣器演奏音乐并配有LED闪烁
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.本次实验所需器材 1.Arduino板 https://item.taoba ...
- ansible role 理解
1.roles意为角色,主要用于封装playbook实现复用性.在ansible中,roles通过文件的组织结构来展现.
- js倒计时,页面刷新时,不会从头计时
最近不忙,瞎鼓捣...哈哈 这里利用了H5的本地存储 localStorage,取秒数直接用了php的time()方法,就懒得用js取了. 把第一次访问页面时的时间存在客户端,然后再刷新的时候,比较用 ...
- 【H5】移动端页面根font-size设置
h5rem.js (配置写法①) (function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationc ...