FPGA之道(10)布线资源与接口资源
文章目录
- 布线资源
- 接口资源
- 专用高速接口资源
布线资源
FPGA中的布局布线资源主要包括三部分:CB、SB和行列连线。布线资源的目的是为了能够让位于不同位置的逻辑资源块、时钟处理单元、BLOCK RAM、DSP和接口模块等资源能够相互通信,从而协调合作,完成所需功能。FPGA中的布线资源,就好比绘制PCB板时的连线资源一样,虽然器件A和器件B的位置和连接关系没有任何改变,但很可能因为周边电路的布局、布线的一些变化,使得前后两次A、B之间的连线形态发生很大的变化。因此,与采用固定长度的金属线将所有宏单元连接在一起的CPLD不同,FPGA中任意两点之间的线延迟是无法预测的,必须等到布局、布线完成之后才能确定。这也是为什么在FPGA的开发中,时序约束和时序分析这两样工作是必不可少的。
接口资源
接口资源是FPGA芯片的门户,它决定了FPGA芯片与外界交互的能力,因此接口资源是FPGA必须具备的一种资源。按照功能来划分,FPGA的外围接口有负责供电的,有负责接地的,有负责芯片配置的,有负责用户IO的,等等。而这其中最重要的就是负责用户IO的接口资源,按其承载信号的类型又可以细分为用户时钟管脚(一般仅指输入)和用户数据IO。一般来说,用户时钟管脚兼具用户数据IO的功能,但绝大多数数据IO不能兼具用户时钟管脚的特性。区分用户时钟IO和数据IO的关键,就是看其是否有直接连接到时钟网络资源的通路。如果有直接连接到全局时钟网络资源的通路,那么这是一个全局时钟管脚;如果有直接连接到区域时钟网络资源的通路,那么这是一个区域时钟管脚;如果有直接连接到IO时钟网络资源的通路,那么这是一个IO时钟管脚。 当然,做为FPGA芯片制作厂商,它会提供详细的管脚属性资料供大家区分这些管脚,从而达到正确、恰当使用的目的。
针对用户IO资源,Xilinx公司的IOB(Input Output Block)以及Altera公司的IOE(Input Output Element)是其中的代表。用户IO资源最基本的功能就是必须支持单端或差分的输入、输出、双向以及三态模式,因此用户IO的基本原理图如下:
其中,PAD代表FPGA芯片的金属管脚。
除此以外,当传输速度较高时,从用户IO资源到内部逻辑资源块之间的延迟就会显得不可忽略,因此,为了配合较高速度的接口传输,用户IO资源中必须集成一些专有的寄存器和精确的延迟调整功能,来完成较高速度的SDR或者DDR的输入、输出功能。例如,集成了相关功能模块的用户IO资源类似下图:
为了进一步提升接口传输的性能,增加用户使用的便利性,各大FPGA厂商又在用户IO资源中集成了名为SERDES的串并转换器,其中用于输入的叫做ISERDES,用于输出的叫OSERDES。相比于SDR、DDR的模式,SERDES能够做到1:6甚至更高的串并转换比率。下图就是SERDES的工作原理,大家可以参考理解。
最后,用户IO资源还必须支持LVTTL、LVCMOS、LVDS等多种数字电平,有的用户IO资源甚至内部嵌入了用于高频匹配的电阻,这样在电路板布线时,可以省去一些板载的匹配电阻。
专用高速接口资源
为了适应目前越来越高的串行通信速率要求,各大FPGA厂商也早已开始在自己的FPGA产品中嵌入专门的硬件资源用于超高速的串行通信。例如Altera公司的Rocket IO资源和Xilinx公司的Transceiver资源。目前来说,这两种专有的硬件资源都已经能够支持最高达28Gb/s的串行通信速率。
FPGA之道(10)布线资源与接口资源相关推荐
- FPGA之道——数字系统之间的接口电平标准
文章目录 前言 双阈值标准 TTL LVTTL LVTTL3V3 LVTTL2V5 CMOS LVCOMS LVCOMS3V3 LVCOMS2V5 LVCOMS1V8 LVCOMS1V5 LVCOMS ...
- FPGA之道(58)关于外界接口的编程思路
文章目录 前言 关于外界接口的编程思路 按传递方向分类 输入接口 输出接口 双向接口 原理简介 工作模式 主从模式 对等模式 简单示例 按电气特性分类 单端接口 差分接口 无线接口 按功能特性分类 时 ...
- FPGA之道(3)数字系统之间的接口电平标准
文章目录 前言 双阈值标准 TTL LVTTL LVTTL3V3 LVTTL2V5 CMOS LVCOMS LVCOMS3V3 LVCOMS2V5 LVCOMS1V8 LVCOMS1V5 LVCOMS ...
- FPGA之道(49)DCM与PLL
文章目录 前言 DCM与PLL PLL模块基本端口简介 时钟输入.输出端口 时钟反馈端口 PLL锁定指示端口 PLL复位端口 PLL配置端口 DCM模块基本端口简介 时钟输入端口 时钟输出端口分类 时 ...
- FPGA之道(47)时钟及时钟域
文章目录 前言 时钟及时钟域 时钟,时序逻辑的心跳 时钟信号基本特征 时钟信号基本特征参数介绍 如何区分时钟和数据 时钟信号的分类 按来源分 外部时钟 再生时钟 门控时钟 行波时钟 按波形分 连续时钟 ...
- FPGA之道(51)数据的存储
文章目录 前言 数据的存储 为什么需要数据存储 数据存储的载体 FPGA芯片内部的载体 触发器 查找表 块存储 FPGA芯片外部的资源 数据存储的形式.实现及应用场合 寄存器 特征简介 实现载体 应用 ...
- FPGA之道(81)静态时序分析(七)根据时序报告修改设计(基于ISE的UCF文件语法)
文章目录 前言 根据时序报告修改设计 时序分析报告示例 待分析设计 时序约束文件 时序报告简介 报告综述 内部时钟报告 输入接口报告 输出接口报告 输出数据延迟报告 输出时钟延迟报告 同步输出综合报告 ...
- FPGA之道(79)静态时序分析(五)外部接口的相关时序分析
文章目录 前言 外部接口相关时序分析 功能仿真对接口分析的帮助 纯输入接口 纯时钟输入接口 纯同步输入接口 纯异步输入接口 同步输入异步采集 纯输出接口 纯时钟输出接口 纯同步输出接口 纯异步输出接口 ...
- FPGA之道(70)提高设计的综合性能(二)提高设计的自测性
文章目录 前言 提高设计的自测性 增加测试管脚 状态寄存器集 虚拟示波器 ChipScope&SignalTap 自己编写VirtualScope 编写激励发生测试模块 前言 本文节选自< ...
最新文章
- 面试:说说参数验证 @Validated 和 @Valid 的区别?
- EASCII码对照表(建议收藏)
- FPGA Verilog实现一个脉冲波形变换
- 导出参考文献是ciw格式_使用 EndNote 9 引用参考文献
- 1-VVI-材料设计之-TabLayout上标签
- Centos 5.8 搭建ntp服务器
- java后端路由中转
- 账号注册邮箱激活设计
- 标准为先、产业当道,这次大会“探云”深刻……
- codeblocks下载-安装和使用
- 利用matlab导入或读取数据至Excel(COM方法和xlswrite,xlsread方法)
- oracle fnd global,Oracle EBS fnd_request.submit_request 与 Fnd_concurrent.wait_for_ruqest
- 国产恒辉数据库CS端管理工具
- android实现多任务多线程支持断点下载的下载软件
- W3C标准英文文献翻译方案
- matplotlib基础知识(图形绘制坐标轴、标签、刻度字体设置图例脊柱移动风格样式多图布局双轴显示)(1)
- unity3d 动态合批设置_Unity动态合批(Dynamic Batching)与静态合批(Static Batching)
- 人工智能企业全球一百强,中国6家上榜,5家在北京
- 何钦铭版C语言第3章答案,何钦铭版c语言第3章答案(17页)-原创力文档
- Nwafu-OJ-1431 Problem b C语言实习题五——6.用指针实现子字符串提取
热门文章
- 设计模式之三 装饰模式
- 为运维人员插上腾飞更远的翅膀!
- php lumen auth,学习 Lumen 用户认证 (一)
- linux 将当前时间往后调整2分钟_自动调整linux系统时间和时区与Internet时间同步...
- 如何写sybase sql脚本文件_写一个删除lock文件的skill脚本
- cad怎么卸载干净_百度软件中心助手怎么样干净卸载
- java length 使用方法 例题_java.util.BitSet.length()方法实例
- 影响线型缩聚物分子量的因素_【CRPS】通过硼烷引发剂实现氧气引发的超高分子量聚合物的可控合成...
- aspx 追加html标签,ASP.NET动态增加HTML元素的方法实例小结
- 铅笔芯为什么点不着?