新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > FPGA系统设计实战经验分享FPGA系统设计实战经验分享

FPGA系统设计实战经验分享FPGA系统设计实战经验分享

作者:时间:2011-02-28来源:网络收藏
这个帖子主要和大家介绍一些我们在硬件系统设计过程中遇到的问题和解决的方法。也欢迎大家一起参与讨论。主要涉及以下几个方面:
1。芯片的选型包括芯片的选型原则,外围芯片,比如存储器,电源,接口芯片等等选择的依据。我们会给大家推荐一些性能好,价格便宜而且好买到的芯片,节省你查询芯片的时间。
2。原理图设计技巧包括如果兼容不同型号的,保证系统设计的升级空间等。
3。PCB的设计基本原则对于一般的FPGA系统,只要保证这些基本原则,不必学习那些复杂的仿真软件和高速PCB设计知识,一样可以设计出稳定可靠的硬件电路板。
4。电路调试技巧如何调试一块刚刚焊接好的电路板,特别是对于第一次调试电路板的朋友一定会有所帮助的。
===========第一部分:关于芯片选型的建议===========
在网上经常看到朋友问类似的问题,比如选Altera还是Xilinx芯片,选择Altera公司的什么型号芯片,电源芯片选什么,SRAM选那个公司的等类似的关于芯片选型的问题。
在这里就给大家介绍一些关于芯片选择的一些基本原则和建议,也欢迎大家参与讨论!。

一。FPGA芯片的选择依据
1。选择FPGA芯片厂商。这一点比较容易,可以根据以往的经验实际条件,比如公司一直用那个公司的产品,或者实验室的师兄们都用那个公司的产品多一些等等。如果自己对那个公司的产品比较熟悉,还是不要轻易更换。因为学习软件和了解芯片结构还是需要一些时间的,而且也会引入一些设计风险。人一般会有惯性的思维的,往往会把一些经验带到新的项目中,而实际上不同厂商的芯片在设计细节方面还是有些不同的,对这个公司的芯片适合,不一定对另外公司的芯片适合。
如果是在新产品设计的适合选择FPGA芯片厂商,那么可以参考以下的几个原则:
A. 如果需要尽快上市,抢占市场,一般选择开发简单的Altera或者Xilinx产品;
B.如果产品已经稳定,需要提高保密性能和稳定性能,可以考虑Lattice,QuickLogic或者Actel公司的反融丝类型或者Flash类型的FPGA;
C. 如果需要很强的抗干扰性能,工作环境十分恶劣,如果航空航天,一般选Actel公司的产品。几个厂商的FPGA简介: Altera的芯片在国内的高校用的比较多,就像在高校里面用VHDL的人比较多一样。Altera的芯片产品比较全,目前主要的就是 Flex10K系列,ACEX1k系列,Cyclone系列等应用的比较广泛,Stratix系列一般在通信等高端领域应用比较多一些。 Flex10K是比较老的系列了,价格也很高,是5V的器件,主要应用在5V的信号环境,抗干扰性能好一些,但是功耗和体积都比较大,规模也有限制。 ACEX1K是一个比较成功的系列,兼容5V和3.3V,如果系统是 3.3V是5V的混合信号系统,而且中5V信号比较多,建议采用ACEX1K系列,价格也不错。只是最大的规模是10万门,升级空间小。 Cyclone系列目前Altera公司成本最低的FPGA,但是只能支持3.3V,不兼容5V信号。如果系统中只有3.3V或者5V信号不多,那么还是推荐您选择cyclone系列的 FPGA。Xilinx的公司的产品更多的被企业采用。相对于altera,Xilinx的历史更悠久一些,客户更多。Xilinx公司对芯片提供的参考设计较Altera公司提供的涉及的领域更宽,品种更多。免费使用的核也更多一些。 Xilinx的高端FPGA在市场上占有一定的优势,如VirtexII系列就是非常成功的。 Actel公司的FPGA以反融丝类型的为主,应用与一些特定的领域; QuickLogic公司的C也是以反融丝为主推,一般用于产品的加密,目前还很难******。其出品的集成了PCI硬核的FPGA是比较有特色的产品,较FPGA+PCI接口芯片的方案成本更低,较FPGA实现PCI软核的方案稳定性更好。 Lattice公司目前也开始推广低成本的应用的FPGA产品,在本论坛的Lattice版面有更详细的介绍。
2. 选择FPGA型号 首先选择好了某个系列的FPGA,接下来就要选择一个具体的型号了。需要考虑的因素主要有以下几点:A. 封装主要在于选择管脚的数目,如果管脚够用,尽量选择表贴封装,如TQFP或者QFP的。不推荐选择BGA的原因是:1) 会带来的焊接成本提高;2) 增加了布线难度,可能不得不增加PCB的层数;3) 降低了测试性,增加了测试成本。 当然,如果项目需要,必须选择BGA封装的,那么尽量选择管脚间距大一些的,比如1mm或者0.8mm。例如,对于Cyclone系列的FPGA,EP1C12就有F324和Q240两种封装,前者是BGA的,后者是PQFP的。如果150个用户IO对您的设计已经足够了,那么最好选择后者,两层板就可以做下来,而F324封装的最少要4层板才行。B. 资源一般在设计的开始阶段,无法估计规模大小。所有一般需要根据经验来选择。一般都要选择你确定的封装里面规模最大的型号。一般来说,相同的封装会有不同的容量,比如Cyclone系列的PQFP240封装,就有1C6和1C12两个型号,资源相差一倍以上。那么实验阶段就可以先用1c12做实验,将来再改用 1c6的,PCB不用重新设计。资源包括了逻辑资源(如LE或者Slice)和存储资源(如M4K或BlockRAM)。选择芯片的时候不仅要考虑逻辑资源够用,还要保证存储资源够用。假如您的设计用了1000个LE,200Kbit的存储器,如果从逻辑资源考虑,EP1C6就足够了,有接近6000个LE,但是M4K的容量确不能满足要求。如果不想更改设计,您就必须选择EP1C12了。C. 升级性为了以后增加功能或者升级性能,您的FPGA设计好后,必须有一定的升级空间。比如您目前的设计用了70%的芯片资源,那么您就必须考虑是否能够满足将来的需要了。(Xilinx和Altera的FPGA产品都是基于SRAM的,上电后需要外部cpu或者储存器进行配置才能工作。配置过程中,如果出现干扰,就会产生配置错误。而Actel公司的反融丝型FPGA与ASIC一样,是固化在芯片内部的,上电就开始工作的,所以说更抗干扰性能更强一些。但是只能烧写一次,开发起来成本比较高,周期也长一些。必须充分仿真,否则差一点点就要费一个片子啊。可以采用Altera的芯片做原型的验证和样机。经过测试,如果不能满足要求,在更换Actel的芯片,这样可以保证逻辑部分是没有问题的。Altera的芯片目前也采用了一些措施,比如差错重新配置等,也可以用外部的cpu来配置FPGA,上电后对fpga进行简单的测试,如果有问题,再重新配置。如果逻辑规模不大,可以采用MAXII系列的C,由于采用了Flash结构,不需要外部配置,可靠性要高很多。)

二。FPGA主要的外设芯片选择 RedLogic根据以往的经验,推荐您一些芯片,供您参考。其他应用的芯片,您可以到我们的网站上咨询。1. 电源芯片如果电流较小,可以选用AS1117系列, 表贴型封装;如果电流较大,可以选用AS28xx系列, 表贴型封装;2. 存储芯片尽量选择升级空间大,管脚兼容的系列;SDRAM一般选择SAMSUNG的K4S系列,或者现代的HY57V系列;ASRAM一般选择ISSI的61LV系列;NOR FLASH一般选择AMD的29LV系列或者SST的芯片;NANDFLASH一般选择SAMSUNG的K9S系列;
linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭