FPGA的PCB设计

一、FPGA的高速电路板设计

PCB板的设计规模增大,IO传输问题也就出现。为了兼容其他高速模块,必须对PCB的设计进行优化。

1️⃣电源滤波,降低系统噪声2️⃣匹配信号线3️⃣降低并行走线的噪扰4️⃣减小反弹效应5️⃣进行阻抗匹配

为了实现上述要求,可以采用的方法有:

(1)选择合适的材料

一般选用介电常数越小的材料,传输阻抗越小,传输损耗越小。Altera中给出了FR-4的高速报告,说明FR-4可以跑高速设计。但是,一般还是需要了解厂家的材料的信息,用于整个设计的阻抗计算。

(2)PCB上传输走线

有微带传输线布局(单一参考面)和带状传输线布局(双参考平面)两种,可以支持基本的设计。

(3)阻抗计算

在PCB板设计之初就做好阻抗的控制,保证后期有足够的时序余量。

(4)降低串扰和维持信号完整性的布线方法

1️⃣在允许范围内,提高线距

2️⃣临近地线,可以去耦合

3️⃣差分布线,可以提高信号完整性

4️⃣存在明显耦合,可以在不同层之间布设相互垂直的单端信号(这个目前不清楚咋做)

5️⃣减小并线长度,减少长耦合走线

二、FPGA的电源供电

(1)供电要求

1️⃣单调性:带电源爬升过程中单调非负斜率(下降则为非正),能够减小噪声。

2️⃣软启动:FPGA启动时需要特定的电流,不能爬升的太快,每一级的电源达到预定状态需要时间。

3️⃣最大最小爬升时间:最大爬升时间是保证不会久留于阈值电压附近,尽快达到逻辑电平。最小爬升时间保证不会出现浪涌电流状况。

4️⃣敏感模拟元件:需要稳定的电压,不能有太大的电压波动存在。FPGA上的PLL就需要单独的线性电压源供电。

(2)Altera的供电策略

1️⃣电源层尽量靠近FPGA,可以减少BGA过孔电感

2️⃣将Transceiver作为布局最高优先级(高速收发器含有内部调制器、电流足够低、必须分配收发器关键轨道最高优先级这三种情况除外)

3️⃣大电流电源轨道考虑:无高速收发器则大电流最高级,有则置于次优先级(核心电压则可以放于最远处)

4️⃣PLL电源及其他电源:PLL作为第三级考虑,其他电源按需分配。

三、退耦电容

(1)退耦电容的作用

利用电容的谐振频率的极小范围实现滤波,将噪声去除。

(2)计算电容值

实际电容的计算比较复杂,可以使用软件自动计算。

(3)电容的摆放

退耦电容最好的摆放就是尽可能的靠近电源或者地,保证最小的阻值和最小的感抗。

FPGA的PCB设计的更多相关文章

  1. 《FPGA全程进阶---实战演练》第三章之PCB设计之过孔

    在画电路板时,往往需要过孔来切换层之间的信号.在PCB设计时,过孔的选择有盲孔,埋孔,通孔.如图3.1所示.盲孔是在表面或者底面打通到内层面,但不打穿,埋孔是在内层面之间的孔,不在表面和底面漏出:通孔 ...

  2. PCB设计备忘录

    在PCB设计过程中,常常有很多细节只有在实践中才能体会到其重要性,本人记性不好,索性把相关的注意点记录下来,也顺便希望能够给读者朋友们一些帮助. 接插件以及连接器比较常用的针脚之间间距有2.54mm/ ...

  3. PCB设计资料:看到最后才知道是福利

    參考资料 通过以下的关键词直接从网络上Google或Baidu就能非常easy的找到以下的资料,这里仅仅是以參考文献的方式做一个整理以及简单的说明. 刘雅芳,张俊辉. 抗干扰角度分析六层板的布线技巧. ...

  4. 高速PCB设计注意事项

    和SERDES应用相关的高速系统PCB设计注意事项如下: (1)微带(Microstrip)和带状线(Stripline)布线. 微带线是用电介质分隔的参考平面(GND或Vcc)的外层信号层上的布线, ...

  5. 6层PCB设计技巧和步骤

    6层PCB设计技巧和步骤 一.原理图的编辑  6层板由于PCB板中可以有两层地,所以可以将模拟地和数字地分开.对于统一地还是分开地,涉及到电磁干扰中信号的最小回流路径问题,绘制完原理图,别忘检查错误和 ...

  6. PCB设计检查表

    PCB设计检查表 一.确保PCB网表与原理图描述的网表一致 二.布局大致完成后需检查 外形尺寸 确认外形图是最新的 确认外形图已考虑了禁止布线区.传送边.挡条边.拼板等问题 确认PCB 模板是最新的 ...

  7. [PCB设计] 1、硬件原理图设计规范(一)——基本原则

    1.1 目的 原理图设计是产品设计的理论基础,设计一份规范的原理图对设计PCB.跟机.做客户资料具有指导性意义,是做好一款产品的基础.原理图设计基本要求: 规范.清晰.准确.易读. 因此制定此< ...

  8. 高端PCB设计相关知识整理

    PCB的设计布局布线实际上是一门很复杂而且大部分靠经验来做的学问,很多东西也有点玄乎,但有很多经验性的结论和公式还是可以参考的 保证原创,一天不一定写的完 CH.1 更加严重的电磁干扰 首先基本上微电 ...

  9. FPGA异步时钟设计中的同步策略

    1 引言    基于FPGA的数字系统设计中大都推荐采用同步时序的设计,也就是单时钟系统.但是实际的工程中,纯粹单时钟系统设计的情况很少,特别是设计模块与外围芯片的通信中,跨时钟域的情况经常不可避免. ...

  10. Protel99se教程九:protel99se中PCB设计的高级应用

    在上一节我们PCB资源网的protel99se教程当中,我们给大家讲解了在protel99se进行原理图设计中的一些高级应用技巧,在这一节protel99se教程当中,我们将给大家讲解的是,在prot ...

随机推荐

  1. 【Unity3D】粒子系统ParticleSystem

    1 简介 ​ 拖尾(TrailRenderer).线段渲染器(LineRenderer).粒子系统(ParticleSystem)是 Unity3D 提供的三大特效,其中粒子系统的功能最为强大,特效也 ...

  2. java: -source 1.5 中不支持 diamond 运算符

    1.问题说明 平常在用idea编译spring boot多模块项目时,老是无端提示: Error:(107, 55) java: -source 1.5 中不支持 diamond 运算符 (请使用 - ...

  3. oracle exp/imp命令使用parfile实现参数文件调用

    优先使用数据泵(expdp/impdp)方式,更高效,问题少. 关于exp/imp工具的使用请参考我的另一篇文章: https://blog.csdn.net/IndexMan/article/det ...

  4. eclipse配置Maven本地仓库

    一.首先下载maven插件并配置maven的环境变量,可参考:http://jingyan.baidu.com/article/cb5d61050b8ee7005d2fe04e.html 二.打开ec ...

  5. SQLite 入门教程

    不是 MySQL 用不起,而是 SQLite 更有性价比,绝大多数的 Web 应用 SQLite 都可以满足. SQLite 是一个用 C 语言编写的开源.轻量级.快速.独立且高可靠性的 SQL 数据 ...

  6. python调用namp.py进行扫描,调用go编译的so文件

    #!/usr/bin/env python # -*- coding: utf-8 -*- import json import os import platform from ctypes impo ...

  7. java数组实现的超市管理系统(控制台)

    说明:使用数组存储数据,针对用户功能1:增加用户2:删除用户3:修改用户:针对商品功能:1.显示所有商品2.修改商品信息3.添加商品信息4.删除商品信息5.查询商品信息 效果展示 ========== ...

  8. 我的第一个项目(十三) :组件间传值的一些方案(vuex,eventbus,localStorage)

    好家伙,   先说一下我的需求,我要组件间传值 1.eventBus 前端兄弟组件传值eventbus无法使用 不报错也不触发,就很奇怪 //eventBus.js import Vue from & ...

  9. 数据库运维 | 携程分布式图数据库NebulaGraph运维治理实践

    作者简介:Patrick Yu,携程云原生研发专家,关注非关系型分布式数据存储及相关技术. 背景 随着互联网世界产生的数据越来越多,数据之间的联系越来越复杂层次越来越深,人们希望从这些纷乱复杂的数据中 ...

  10. 文心一言 VS 讯飞星火 VS chatgpt (207)-- 算法导论15.4 4题

    四.说明如何只使用表 c 中 2*min(m,n) 个表项及O(1)的额外空间来计算LCS的长度.然后说明如何只用 min(m,n) 个表项及O(1)的额外空间完成相同的工作.要写代码的时候,请用go ...