设计一块FPGA电路板时应注意的点

2019-01-25 16:25:50 来源:elecfans
标签:

 

如果你在采用FPGA的电路板设计方面的经验很有限或根本没有,那么在新的项目中使用FPGA的前景就十分堪忧——特别是如果FPGA是一个有1000个引脚的大块头。继续阅读本文将有助于你的FPGA选型和设计过程,并且有助于你规避许多难题。

 

选取一家供应商

你面临的第一个问题当然是供应商和器件的选择。通常供应商决策倾向于你以前接触最多的那家——如果你是一位FPGA初学者当然另当别论了。或许这个决策早已由设计内部逻辑的工程师(也许就是你)依据熟悉的供应商或第三方IP及其成本完成了。

 

供应商的软件工具也会影响到上述决策。下载并使用这些软件工具,不需要硬件就能将设计带入仿真阶段。这也是判断需要多大规模的FPGA的一种方式,前提是你的内部逻辑设计基本做完了。

 

要想知道FPGA的水有多深,需要多逛逛各家供应商的网站。如果你想从这些网站提供的海量(而且并不总是想象中那么清晰的)信息中有所收获,必须确保你有一整天空闲的时间。Altera和赛灵思公司是在市场份额和前沿技术方面都遥遥领先的两家公司。它们的器件使用内部配置RAM,因此要求使用存放配置数据的外部ROM来“启动”器件(两家公司也都有些小的非易失性CPLD类产品)。值得考虑的其它供应商还有Microsemi/Actel、莱迪思和赛普拉斯。它们的器件功能包括非常低的静态功耗、用于“即时开机”启动的基于ROM的配置和模拟外设。

 

好了,至此供应商问题解决了。接下来是选取FPGA的系列和规模。供应商都会将它们的产品细分成多个系列,通常以低端、中端和高端性能(和规模)这样的模糊概念加以区分。片上RAM需要多大?要多少DSP/乘法模块,或千兆位收发器?你可能需要通读一遍数据手册,找出诸如最大时钟频率和I/O时延等参数来帮助你选择正确的系列。需要重申的是,拥有HDL代码是有很大帮助的,因为设计软件可以让你知道适合哪种器件,它们是否能够满足你的性能要求。

 

 

你的应用还可以从不改变PCB就能更新器件中受益。一些FPGA系列包含众多引脚兼容的器件,可以在需要时让你切换到更大(或更便宜和更小)的器件。只是要确保针对最少数量的引脚输出进行设计。

 

不要忘了考虑其它一些细节,比如如何为不同的供电电压和I/O标准划分I/O组、PLL要求以及DDR接口要求。

 

我们需要更多的功率!

通常很难计算一块电路板要求的最大电流。但FPGA电源设计相当有技巧。FPGA所需电流很大程度上取决于逻辑设计和时钟频率。同样一个器件在一个设计中可能只需0.5W,而在另一个设计中可能高达5W。

 

开发工具(或一个独立的程序或电子数据表)应该可以为给定设计提供功率预估值,但它们需要从你那儿得到许多附加信息,其中一些可能只是有根据的推测。如果有FPGA开发板,就应该有方法测量各种情况下的供电电流。一些开发板甚至内嵌电流计显示器!只是要确保增加足够多的余量来应对设计更改以及特殊工艺/温度要求。

 

下面是“难题”可能会出现的时候:

● 做热分析,并在必要时增加散热器。

● FPGA要求按顺序加电吗?(你的设计很容易出现5个或6个电源)

● 至少可能需要一个“安静的”电源,通常用于片上PLL。可以使用LDO加上一些无源滤波器件。千兆位收发器电源也能从低噪声中受益。

● 确保你理解FPGA在上电和初始化时在做什么事。许多器件在这个时候需要抽取很大的电流。

 

关于引脚及其它

接下来可以认真考虑引脚分配这件大事了。同样,如果你的逻辑设计已经达到可以被编译的阶段,就让设计软件来提供帮助吧,或至少在做电路板之前验证你分配的引脚是可行的。你当然已经处理过明显的资源,比如根据供电电压划分I/O组,确保诸如LVDS、SSTL或内部50Ω终端等“特殊”引脚设置兼容它们所在的组和供电电压。

 

但在许多器件中存在更深层次的微妙关系:在“不要在单端信号的2个IC绑定焊盘内放置差分对”,或“类似于参考电压的输入必须距离时钟信号至少3个焊盘远”等字里行间隐含着复杂的规则。这些规则很容易让人发疯。如果让人不堪忍受,就让设计软件为你指出违例吧。如果你不这样做,那么这些问题肯定会让你疲惫不堪。

 

接地反弹或并发开关噪声(SSN)是另外一个考虑因素。由于FPGA的应用方式太多,所以供应商经常为最好的场景设计电源分配方案。如果你的设计要充分发挥I/O功能,比方使用数量很多的快速同时开关输出,那么你可能需要“减少”实际可以使用的引脚数量。尽量减小驱动和压摆率设置通常是一个好主意。设计软件也可能帮助进行SSN分析。我认为减小SSN的一个技巧是将未用引脚连接到地,然后在设计文件中将它们设置为输出,驱动‘0’。这些引脚将被用作伪地引脚,虽然质量没有真实地好。

 

交付

现在是将凝聚了你心血的产品交付给PCB版图设计的时候了。这里我不想深入讨论PCB设计(可以参考下面给出的一些文章),但会指出针对FPGA设计需要考虑的一些事项。

 

堆叠设计对任何复杂的电路板来说都很重要,而在最复杂的电路板中通常都能找到FPGA的身影。随着500引脚芯片被认为是“中等规模”以及不断缩小的引脚间距,你可能需要十分留意走线逃逸图案、焊盘中的过孔、引脚区域内的去耦电容以及电源与地平面。一定要有创造性。必要时可以分割电源平面(当然要避免高速走线)。如果足够小心,一些电源连接(通常是局部的电源,如PLL电源)可以放在信号层上。将一些关键平面和信号放在最靠近FPGA的层。留意一些专门的版图建议,比如针对DRAM的一些建议。

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
高云半导体发布云源软件设计系统1.9.0版本

中国广州,2019年2月22日,广东高云半导体科技股份有限公司(以下简称“高云半导体”)今日发布云源软件设计系统1.9.0版本。

使用高速NOR闪存配置FPGA

NOR闪存已作为FPGA(现场可编程门列阵)的配置器件被广泛部署。其为FPGA带来的低延迟和高数据吞吐量特性使得FPGA在工业、通信和汽车ADAS(高级驾驶辅助系统)等应用中得到广泛采用。

要让RISC-V跑起来究竟需要多大的FPGA?
要让RISC-V跑起来究竟需要多大的FPGA?

这两年,众所周知的国际大环境、国内大环境、行业大环境的缘故,RISC-V被弄得就跟雷雷大师曾经的太极功夫一样超级热,上周在加州面见一曾负责RISC-V推广的大佬(老外),他表示很诧异这玩意儿在中国的发烧现象。

不管半导体行业是否景气,日子还是要过
不管半导体行业是否景气,日子还是要过

电源供应器厂台达电董事长海英俊表示,“大家都在讲景气,但是这太虚无缥缈了”,不管景气好坏,客户都还是必须用使用东西,还是会有刚性需求存在,重点是要把自己的东西做好。

适用于汽车电源能耗监测的、具有热插拔功能的控制器解决方案

如今的汽车正处于彻底变成电子系统的交界点,最大限度减少了机械系统的采用,正在成为人们生活中最大、最昂贵的“数字化工具”。由于可用性和环保原因,以及提高内燃型、混合动力型和全电动型汽车行车安全的需求,市场逐步减少了对汽油的依赖,这正是“数字化”转变的驱动力。

更多资讯
PLC的面向对象编程实现方式

面向对象编程是计算机高级语言的一种先进的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多优秀特点如“继承”,甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程的基本概念就是类和类的实例(即对象),我们只需要使用这种概念就可以了。

ASIC项目瀑布式开发流程详解

最近收拾书架,翻出一张多年以前的ASIC项目开发流程图,一起回顾一下。

智能门锁不安全?工程师自己造了一个AI人脸识别门锁
智能门锁不安全?工程师自己造了一个AI人脸识别门锁

展示了AI如何在Ultra96和Intel Movidius NCS以及Tensorflow Inception Facenet上运行。 该项目可以扩展到使用面部识别来解锁,记录进出情况,打开不同的灯光场景。

芯片厂商营收整体看衰赛灵思却逆势增长34%,凭什么
芯片厂商营收整体看衰赛灵思却逆势增长34%,凭什么

赛灵思可编程芯片产品市场的不断增长推动它的发展壮大,5G网络的推出也是它继续前行的助推器。

使用Vivado HLS在ZYNQ-7000上开发OPENCV的教程

OPENCV(Open Source Computer Vision)被广泛的使用在计算机视觉开发上。使用Vivado HLS视频库在zynq-7000全可编程soc上加速OPENCV 应用的开发,将大大提升我们的计算机视觉开发。

电路方案